.back{margin-bottom:2rem;font-size:.8rem}h1{font-size:1.75rem;font-weight:500;letter-spacing:-.02em;margin-bottom:.5rem}.lede{color:var(--mute);margin-bottom:1.5rem;max-width:60ch;line-height:1.65}.lede em{font-style:italic}.lede code{font-family:var(--mono);background:color-mix(in oklab,var(--ink) 8%,transparent);padding:.05em .3em;border-radius:3px;font-size:.92em}.how-to{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .75rem;margin-bottom:.85rem;font-size:.72rem;text-transform:lowercase;letter-spacing:.04em}.inline-cmd{font-family:var(--mono);color:var(--ink);background:color-mix(in oklab,var(--ink) 8%,transparent);padding:.25rem .55rem;border-radius:4px;text-transform:none;font-size:.75rem;user-select:all}:global([data-theme=ascii]) .inline-cmd{border-radius:0}.input-row{display:flex;align-items:center;flex-wrap:wrap;gap:.85rem;margin-bottom:.6rem;font-size:.75rem}.file-pick{display:inline-flex;align-items:center;gap:.5rem;border:1px dashed var(--rule);padding:.5rem .85rem;border-radius:6px;cursor:pointer;text-transform:lowercase;letter-spacing:.04em;font-size:.72rem}.file-pick:hover{border-color:var(--ink);color:var(--ink)}.file-pick input{display:none}:global([data-theme=ascii]) .file-pick{border-radius:0}.or{font-size:.7rem}textarea{width:100%;background:var(--bg);color:var(--ink);border:1px solid var(--rule);border-radius:6px;padding:.85rem 1rem;font-family:var(--mono);font-size:.78rem;line-height:1.55;outline:none;resize:vertical;min-height:7rem}textarea:focus{border-color:var(--ink)}:global([data-theme=ascii]) textarea{border-radius:0}.row{margin-top:.85rem;margin-bottom:2rem;display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.btn{background:none;border:1px solid var(--rule);color:var(--ink);padding:.55rem 1rem;border-radius:999px;font-family:var(--mono);font-size:.85rem;cursor:pointer;transition:background .15s ease,border-color .15s ease}.btn:hover{border-color:var(--ink)}.btn.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn.primary:hover{opacity:.85}.btn.ghost{color:var(--mute)}:global([data-theme=ascii]) .btn{border-radius:0}.status{font-size:.75rem;margin-left:auto}.result[hidden]{display:none}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin-bottom:1.5rem}.kpi{border:1px solid var(--rule);border-radius:6px;padding:.65rem .85rem;display:flex;flex-direction:column;gap:.15rem;background:color-mix(in oklab,var(--ink) 2%,transparent)}:global([data-theme=ascii]) .kpi{border-radius:0;border-style:dashed}.kpi-label{font-size:.65rem;text-transform:lowercase;letter-spacing:.06em}.kpi-val{font-size:1.05rem;color:var(--ink);font-variant-numeric:tabular-nums}.vsm{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1rem}@media(max-width:720px){.vsm{grid-template-columns:1fr 1fr}}.stage{border:1px solid var(--rule);border-radius:6px;padding:.75rem .65rem;display:flex;flex-direction:column;gap:.5rem;background:var(--bg);position:relative;min-height:240px}:global([data-theme=ascii]) .stage{border-radius:0;border-style:dashed}.stage-head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px dashed var(--rule);padding-bottom:.4rem}.stage-name{font-family:var(--mono);font-size:.78rem;text-transform:lowercase;letter-spacing:.04em;color:var(--ink)}.stage-count{font-family:var(--mono);font-size:.7rem;color:var(--mute);font-variant-numeric:tabular-nums}.stage-meta{font-family:var(--mono);font-size:.62rem;color:var(--mute);text-transform:lowercase;letter-spacing:.04em}.bubbles{display:flex;flex-wrap:wrap;gap:4px;align-content:flex-start;flex:1}.bubble{width:12px;height:12px;border-radius:50%;background:var(--ink);opacity:.55;cursor:default;transition:opacity .12s ease,transform .12s ease;position:relative}.bubble:hover{opacity:1;transform:scale(1.4);z-index:5}.bubble.bot{background:var(--ink);outline:2px solid var(--ink);outline-offset:1px;opacity:.95}:global([data-theme=ascii]) .bubble{border-radius:0;width:10px;height:10px}.bubble.bot:after{content:"!";position:absolute;inset:0;color:var(--bg);font-family:var(--mono);font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center}.stage-arrow{position:absolute;right:-.45rem;top:50%;transform:translateY(-50%);color:var(--mute);font-family:var(--mono);font-size:.85rem;background:var(--bg);padding:0 2px;z-index:2}.stage:last-child .stage-arrow{display:none}@media(max-width:720px){.stage-arrow{display:none}}.bub-tip{position:absolute;z-index:20;background:var(--bg);border:1px solid var(--ink);color:var(--ink);padding:.4rem .55rem;font-family:var(--mono);font-size:.68rem;border-radius:4px;pointer-events:none;white-space:nowrap;transform:translate(-50%,calc(-100% - 8px));left:50%;top:0;box-shadow:0 6px 16px -8px #0000004d}:global([data-theme=ascii]) .bub-tip{border-radius:0}.legend{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;font-size:.7rem;text-transform:lowercase;letter-spacing:.04em;margin-bottom:.5rem}.legend span{display:inline-flex;align-items:center;gap:.35rem}.legend .dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--ink);opacity:.55}.legend .dot-bot{outline:2px solid var(--ink);outline-offset:1px;opacity:.95}:global([data-theme=ascii]) .legend .dot{border-radius:0}.legend .arrow{color:var(--mute);font-family:var(--mono)}.how{margin-top:2rem;padding-top:1rem;border-top:1px dashed var(--rule);font-size:.85rem}.how summary{cursor:pointer;font-size:.8rem}.how ul{margin-top:.75rem;padding-left:1.5rem;line-height:1.7}.how strong{font-weight:600;color:var(--ink)}.how p{margin-top:.75rem;max-width:60ch;line-height:1.65}
