.mermaid-container.mermaid-preset-archify{--hagilight-mermaid-archify-canvas:#f8fafc;--hagilight-mermaid-archify-node:#fff;--hagilight-mermaid-archify-core:#cffafe;--hagilight-mermaid-archify-group:#f1f5f9;--hagilight-mermaid-archify-ink:#0f172a;--hagilight-mermaid-archify-line:#475569;--hagilight-mermaid-archify-accent:#0891b2;--hagilight-mermaid-archify-border:#cbd5e1;--hagilight-mermaid-archify-shadow:#0f172a1a;border:1px solid var(--hagilight-mermaid-archify-border,#cbd5e1);background:var(--hagilight-mermaid-archify-canvas,#f8fafc);border-radius:14px}.mermaid-container.mermaid-preset-archify[data-mermaid-mode=dark]{--hagilight-mermaid-archify-canvas:#020617;--hagilight-mermaid-archify-node:#0f172a;--hagilight-mermaid-archify-core:#083344;--hagilight-mermaid-archify-group:#0f172a;--hagilight-mermaid-archify-ink:#f8fafc;--hagilight-mermaid-archify-line:#22d3ee;--hagilight-mermaid-archify-accent:#22d3ee;--hagilight-mermaid-archify-border:#1e293b;--hagilight-mermaid-archify-shadow:#00000047}.mermaid-container[data-mermaid-preset=archify][data-mermaid-mode]{--hagilight-mermaid-trace-down:var(--hagilight-mermaid-mm-down,var(--hagilight-mermaid-archify-accent,#0891b2));--hagilight-mermaid-trace-up:var(--hagilight-mermaid-mm-up,#b45309);overflow:visible}.mermaid-container[data-mermaid-preset=archify][data-mermaid-mode=dark]{--hagilight-mermaid-trace-up:var(--hagilight-mermaid-mm-up,#fbbf24)}.mermaid-container.mermaid-preset-archify .mermaid-diagram-container svg{background:var(--hagilight-mermaid-archify-canvas,#f8fafc);color:var(--hagilight-mermaid-archify-ink,#0f172a)}.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-node rect,.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-node polygon,.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-node circle,.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-node ellipse{stroke-width:1.4px;fill:var(--hagilight-mermaid-archify-node,#fff)!important;stroke:var(--hagilight-mermaid-archify-accent,#0891b2)!important}.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-node-core rect,.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-node-core polygon,.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-node-core circle,.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-node-core ellipse{fill:var(--hagilight-mermaid-archify-core,#cffafe)!important;stroke:var(--hagilight-mermaid-archify-accent,#0891b2)!important}.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-subgraph rect{stroke-width:1.25px;fill:var(--hagilight-mermaid-archify-group,#f1f5f9)!important;stroke:var(--hagilight-mermaid-archify-border,#cbd5e1)!important}.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-edge path,.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-edge line{stroke:var(--hagilight-mermaid-archify-line,#475569)!important}.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-edge.arrowheadPath{fill:var(--hagilight-mermaid-archify-accent,#0891b2)!important;stroke:var(--hagilight-mermaid-archify-accent,#0891b2)!important}.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-edge-label rect{fill:var(--hagilight-mermaid-archify-canvas,#f8fafc)!important;stroke:var(--hagilight-mermaid-archify-border,#cbd5e1)!important}.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-label{stroke:none;fill:var(--hagilight-mermaid-archify-ink,#0f172a)!important;color:var(--hagilight-mermaid-archify-ink,#0f172a)!important}.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg foreignObject,.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg foreignObject div,.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg foreignObject span{color:var(--hagilight-mermaid-archify-ink,#0f172a)!important}.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-node-core .mermaid-label{fill:var(--hagilight-mermaid-archify-ink,#0f172a)!important;color:var(--hagilight-mermaid-archify-ink,#0f172a)!important}.mermaid-container.mermaid-preset-archify .mermaid-enhanced-svg .mermaid-node-core{filter:drop-shadow(0 2px 4px var(--hagilight-mermaid-archify-shadow,#0f172a1a))}:root{--page-bg:#f6f7f9;--page-ink:#17212b;--page-muted:#5b6776;--page-line:#dfe3e8;--page-tile:#fff;--page-accent:#2563eb;--page-ring:color-mix(in srgb, var(--page-accent) 55%, transparent);--ease-out:cubic-bezier(.16, 1, .3, 1)}html[data-theme=dark]{--page-bg:#0d131d;--page-ink:#f1f5f9;--page-muted:#9aa7b8;--page-line:#263244;--page-tile:#131b28;--page-accent:#60a5fa}@media (prefers-color-scheme:dark){html:not([data-theme]){--page-bg:#0d131d;--page-ink:#f1f5f9;--page-muted:#9aa7b8;--page-line:#263244;--page-tile:#131b28;--page-accent:#60a5fa}}*{box-sizing:border-box}body{background:var(--page-bg);color:var(--page-ink);margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5}::selection{background:color-mix(in srgb, var(--page-accent) 28%, transparent)}main{max-width:1560px;margin:0 auto;padding:1.5rem 1rem 3rem}@media (width>=720px){main{padding:2.5rem 2rem 4rem}}header.intro{gap:1.25rem;margin-bottom:1.75rem;display:grid}h1{letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(1.75rem,1.2rem + 2vw,2.75rem);font-weight:650;line-height:1.1}.intro p{max-width:68ch;color:var(--page-muted);text-wrap:pretty;margin:.5rem 0 0}.intro code,.tile code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}.controls{flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;display:flex}fieldset{border:1px solid var(--page-line);background:var(--page-tile);border-radius:10px;align-items:center;gap:.25rem;margin:0;padding:.1875rem;display:flex}legend{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.seg{display:inline-flex;position:relative}.seg input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.seg span{color:var(--page-muted);border-radius:7px;padding:.3125rem .875rem;font-size:.875rem;transition:background-color .18s,color .18s}.seg input:hover+span{color:var(--page-ink)}.seg input:checked+span{background:color-mix(in srgb, var(--page-accent) 14%, transparent);color:var(--page-ink);font-weight:600}.seg input:focus-visible+span{outline:2px solid var(--page-accent);outline-offset:1px}.tip{color:var(--page-muted);margin:0;font-size:.875rem}.grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,28rem),1fr));grid-auto-rows:auto;grid-auto-flow:dense;align-items:start;gap:1rem;display:grid}.tile{border:1px solid var(--page-line);background:var(--page-tile);cursor:zoom-in;min-width:0;min-height:0;transition:border-color .22s var(--ease-out), box-shadow .22s var(--ease-out), translate .22s var(--ease-out);border-radius:14px;flex-direction:column;display:flex;position:relative}.tile:hover{border-color:color-mix(in srgb, var(--page-accent) 45%, var(--page-line));box-shadow:0 10px 28px -14px color-mix(in srgb, var(--page-ink) 35%, transparent);translate:0 -2px}.tile:focus-within{border-color:var(--page-accent)}.tile h2{flex-wrap:wrap;align-items:baseline;gap:0 .5rem;margin:0;padding:.75rem 1rem 0;font-size:.9375rem;font-weight:600;line-height:1.3;display:flex}.tile h2 code{color:var(--page-muted);font-weight:400}.stage{flex:none;min-height:0;padding:0 .5rem .5rem}.stage>[data-mermaid-mounted]{height:100%}.stage>pre{height:100%;color:var(--page-muted);margin:0;padding:.5rem;font-size:.75rem;overflow:hidden}@media (width>=720px){.tile-wide{grid-column:span 2}}@media (pointer:coarse){.tip{display:none}}@media (prefers-reduced-motion:reduce){.tile{transition:border-color .16s}.tile:hover{translate:none}}
