.arch{gap:var(--s-5);display:grid}.arch-summary{color:var(--text-2);max-width:75ch}.arch-grid{gap:var(--s-4);grid-template-columns:minmax(0,1fr) 270px;display:grid}.arch-canvas{border:1px solid var(--line);border-radius:var(--radius-l);background:linear-gradient(var(--line) 1px, transparent 1px) 0 0 / 100% 32px, linear-gradient(90deg, var(--line) 1px, transparent 1px) 0 0 / 32px 100%, var(--bg-raise);background-blend-mode:normal;min-height:600px;position:relative;overflow:hidden}.arch-layers{grid-template-columns:repeat(var(--cols), 1fr);pointer-events:none;display:grid;position:absolute;inset:0}.arch-layers span{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--faint);text-align:center;border-right:1px dashed var(--line);padding:12px;font-size:.62rem}.arch-layers span:last-child{border-right:0}.arch-lines{width:100%;height:calc(100% - 40px);position:absolute;inset:40px 0 0}.arch-lines path{fill:none;stroke:var(--line-strong);stroke-width:1.2px;transition:stroke var(--dur), stroke-width var(--dur)}.arch-lines path.on{stroke:var(--accent);stroke-width:2px;stroke-dasharray:6 5;animation:1.2s linear infinite dash}@keyframes dash{to{stroke-dashoffset:-22px}}.arch-nodes{list-style:none;position:absolute;inset:40px 0 0}.arch-layer-group{display:contents}.arch-layer-group>ul{list-style:none;display:contents}.arch-layer-label{display:none}.arch-node-wrap{z-index:1;width:min(19%,176px);position:absolute;transform:translate(-50%,-50%)}.arch-node{text-align:left;border:1px solid var(--line-2);background:var(--surface);width:100%;box-shadow:var(--shadow-1);transition:border-color var(--dur), background var(--dur), transform var(--dur) var(--ease), opacity var(--dur);border-radius:10px;gap:2px;padding:9px 11px;display:grid;position:relative}.arch-node:after{content:"";background:var(--verified);border-radius:50%;width:6px;height:6px;position:absolute;top:9px;right:9px}.arch-node[data-status=experimental]:after{background:var(--hypothetical)}.arch-node[data-status=planned]:after{border:1px solid var(--planned);background:0 0}.arch-node[data-status=beta]:after{background:var(--teal)}.arch-node:hover{border-color:var(--line-strong);transform:translateY(-1px)}.arch-node.near{border-color:var(--accent-line)}.arch-node.sel{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);background:#0f201a}.arch-node-label{padding-right:10px;font-size:.8rem;font-weight:600;line-height:1.25}.arch-node-tech{font-family:var(--font-mono);color:var(--muted);font-size:.6rem;line-height:1.3}.arch-detail{padding:var(--s-5);border:1px solid var(--line);border-radius:var(--radius-l);background:var(--surface);align-content:start;gap:10px;display:grid}.arch-detail-k{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint);font-size:.64rem}.arch-detail h3{font-size:var(--step-1)}.arch-status{font-size:var(--step--1);color:var(--text-2);align-items:center;gap:8px;display:flex}.arch-body{color:var(--text-2);font-size:var(--step--1)}.arch-rel{font-size:var(--step--1);color:var(--muted)}.arch-rel b{color:var(--text-2);margin-right:4px;font-weight:560}@media (width<=1000px){.arch-grid{grid-template-columns:1fr}.arch-canvas{background:var(--bg-raise);min-height:0;padding:var(--s-4)}.arch-layers,.arch-lines{display:none}.arch-nodes{gap:var(--s-4);display:grid;position:static}.arch-layer-group{gap:8px;display:grid}.arch-layer-group>ul{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.arch-layer-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--faint);font-size:.62rem;display:block}.arch-node-wrap{width:auto;position:static;transform:none}.arch-detail{box-shadow:var(--shadow-pop);position:sticky;bottom:76px}}.crumbs[data-astro-cid-62l5nnng]{font-size:var(--step--1);color:var(--muted);margin-bottom:var(--s-6);gap:8px;display:flex}.crumbs[data-astro-cid-62l5nnng] a[data-astro-cid-62l5nnng]{color:var(--text-2);text-decoration:none}.proj-head[data-astro-cid-62l5nnng]{gap:var(--s-8);margin-bottom:var(--s-8);grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr);align-items:start;display:grid}.proj-head-copy[data-astro-cid-62l5nnng]{gap:var(--s-5);display:grid}.head-meta[data-astro-cid-62l5nnng]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.spec[data-astro-cid-62l5nnng]{padding:var(--s-2) var(--s-5)}.spec[data-astro-cid-62l5nnng] div[data-astro-cid-62l5nnng]{padding:var(--s-4) 0;border-bottom:1px solid var(--line);gap:6px;display:grid}.spec[data-astro-cid-62l5nnng] div[data-astro-cid-62l5nnng]:last-child{border-bottom:0}.spec[data-astro-cid-62l5nnng] dt[data-astro-cid-62l5nnng]{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);font-size:.66rem}.spec[data-astro-cid-62l5nnng] dd[data-astro-cid-62l5nnng]{font-size:var(--step--1);color:var(--text-2);margin:0}.confid[data-astro-cid-62l5nnng]{padding:var(--s-4) var(--s-5);color:var(--text-2);font-size:var(--step--1);margin-bottom:var(--s-8);align-items:flex-start;gap:14px;display:flex}.shots[data-astro-cid-62l5nnng]{gap:var(--s-6);margin:var(--s-8) 0 var(--s-16);grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;display:grid}.shots[data-astro-cid-62l5nnng] figure[data-astro-cid-62l5nnng]{gap:12px;margin:0;display:grid}.shots[data-astro-cid-62l5nnng] .phone-frame[data-astro-cid-62l5nnng]{max-width:300px;margin:0 auto}.shots[data-astro-cid-62l5nnng] figcaption[data-astro-cid-62l5nnng]{text-align:center}.proj-body[data-astro-cid-62l5nnng]{gap:var(--s-12);grid-template-columns:190px minmax(0,1fr);display:grid}.toc[data-astro-cid-62l5nnng]{top:calc(var(--top-h) + 24px);align-self:start;position:sticky}.toc-h[data-astro-cid-62l5nnng]{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:10px;font-size:.66rem}.toc[data-astro-cid-62l5nnng] ol[data-astro-cid-62l5nnng]{gap:2px;list-style:none;display:grid}.toc[data-astro-cid-62l5nnng] a[data-astro-cid-62l5nnng]{color:var(--muted);font-size:var(--step--1);padding:5px 0;text-decoration:none;display:block}.toc[data-astro-cid-62l5nnng] a[data-astro-cid-62l5nnng]:hover{color:var(--text)}.proj-article[data-astro-cid-62l5nnng]{gap:var(--s-16);min-width:0;display:grid}.proj-article[data-astro-cid-62l5nnng] h2[data-astro-cid-62l5nnng]{font-size:var(--step-2);margin-bottom:var(--s-5)}.hint[data-astro-cid-62l5nnng]{margin:calc(var(--s-3) * -1) 0 var(--s-5)}.two[data-astro-cid-62l5nnng]{gap:var(--s-8);grid-template-columns:1fr 1fr;display:grid}.moves[data-astro-cid-62l5nnng]{gap:var(--s-3);grid-template-columns:1fr 1fr;list-style:none;display:grid}.moves[data-astro-cid-62l5nnng] li[data-astro-cid-62l5nnng]{padding:var(--s-5);align-content:start;gap:6px;display:grid}.move-n[data-astro-cid-62l5nnng]{font-family:var(--font-mono);color:var(--accent);font-size:.72rem}.pairs[data-astro-cid-62l5nnng]{border-top:1px solid var(--line);display:grid}.pairs[data-astro-cid-62l5nnng] div[data-astro-cid-62l5nnng]{gap:var(--s-5);padding:var(--s-5) 0;border-bottom:1px solid var(--line);grid-template-columns:240px 1fr;display:grid}.pairs[data-astro-cid-62l5nnng] dt[data-astro-cid-62l5nnng]{font-weight:600}.pairs[data-astro-cid-62l5nnng] dd[data-astro-cid-62l5nnng]{color:var(--text-2);margin:0}.caps[data-astro-cid-62l5nnng]{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.cap-col[data-astro-cid-62l5nnng]{padding:var(--s-5)}.cap-h[data-astro-cid-62l5nnng]{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:12px;font-size:.7rem;display:flex}.cap-col[data-astro-cid-62l5nnng] ul[data-astro-cid-62l5nnng]{font-size:var(--step--1);color:var(--text-2);gap:8px;list-style:none;display:grid}.big[data-astro-cid-62l5nnng] li[data-astro-cid-62l5nnng]{font-size:var(--step-1)}.cases[data-astro-cid-62l5nnng]{gap:var(--s-3);margin-top:var(--s-6);display:grid}.case-link[data-astro-cid-62l5nnng]{padding:var(--s-5);gap:6px;display:grid}.next[data-astro-cid-62l5nnng]{padding:var(--s-5);gap:4px;display:grid}@media (width<=1000px){.proj-head[data-astro-cid-62l5nnng],.proj-body[data-astro-cid-62l5nnng]{grid-template-columns:1fr}.toc[data-astro-cid-62l5nnng]{display:none}}@media (width<=760px){.two[data-astro-cid-62l5nnng],.moves[data-astro-cid-62l5nnng]{grid-template-columns:1fr}.pairs[data-astro-cid-62l5nnng] div[data-astro-cid-62l5nnng]{grid-template-columns:1fr;gap:4px}.shots[data-astro-cid-62l5nnng]{scroll-snap-type:x mandatory;grid-template-columns:repeat(3,72%);padding-bottom:8px;overflow-x:auto}.shots[data-astro-cid-62l5nnng] li[data-astro-cid-62l5nnng]{scroll-snap-align:center}}
