:root,[data-theme=light]{--bg:#f6f2ea;--bg-soft:#efe9dd;--panel:#fdfbf6;--panel-2:#f4efe6;--ink:#24262c;--ink-strong:#17181c;--muted:#79736a;--faint:#a39c90;--line:rgba(36,38,44,.13);--line-strong:rgba(36,38,44,.24);--accent:#b5532c;--accent-ink:#9c431f;--accent-soft:rgba(181,83,44,.09);--accent-line:rgba(181,83,44,.35);--ok:#3f7d54;--warn:#a06a1f;--danger:#a13a2c;--edge:#a89f92;--canvas-dot:rgba(36,38,44,.1);--shadow:0 1px 2px rgba(30,25,15,.05),0 8px 28px rgba(30,25,15,.06);--status-built:#3f7d54;--status-building:#a06a1f;--status-designed:#b5532c;--status-idea:#8a8378}[data-theme=dark]{--bg:#0a0b0e;--bg-soft:#0e0f13;--panel:#131418;--panel-2:#191a20;--ink:#f0ede5;--ink-strong:#faf8f2;--muted:#9b9a9f;--faint:#66686f;--line:hsla(0,0%,100%,.11);--line-strong:hsla(0,0%,100%,.22);--accent:#e0824f;--accent-ink:#eda172;--accent-soft:rgba(224,130,79,.1);--accent-line:rgba(224,130,79,.4);--ok:#7bc493;--warn:#dcb15f;--danger:#e07a68;--edge:#52555d;--canvas-dot:hsla(0,0%,100%,.07);--shadow:0 1px 2px rgba(0,0,0,.4),0 10px 30px rgba(0,0,0,.35);--status-built:#7bc493;--status-building:#dcb15f;--status-designed:#e0824f;--status-idea:#8b8d95}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--accent-ink);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{color:var(--ink-strong);line-height:1.2}::selection{background:var(--accent-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.gnode:focus-visible rect.box{stroke-width:2.5;stroke-opacity:1}.wordmark{font-weight:600;letter-spacing:.22em;font-size:13px;text-transform:uppercase}.wordmark small{display:block;letter-spacing:.3em;font-size:8px;color:var(--accent);font-weight:700;margin-top:3px}.starmark{flex:0 0 auto}.shell{display:grid;grid-template-columns:232px 1fr;min-height:100dvh}.sidebar{border-right:1px solid var(--line);padding:20px 14px;position:-webkit-sticky;position:sticky;height:100dvh;display:flex;flex-direction:column;gap:4px;background:var(--bg)}.sidebar .brandrow{display:flex;align-items:center;padding:4px 8px 18px}.navsec{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin:16px 8px 6px}.navlink{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;font-size:13px;border:1px solid transparent}.navlink:hover{background:var(--panel-2);text-decoration:none;color:var(--ink)}.navlink.active{background:var(--accent-soft);border-color:var(--accent-line);font-weight:600}.navlink .cnt{margin-left:auto;font-size:10px;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sidefoot{margin-top:auto;padding:12px 8px 4px;color:var(--faint);font-size:11px;line-height:1.6;border-top:1px solid var(--line)}.main{min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:14px;padding:12px 22px;border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:30}.topbar form.search{flex:1 1;max-width:460px}.topbar input[type=search]{width:100%;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px 13px;outline:none;color:var(--ink)}.topbar input[type=search]:focus{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}.topbtns{margin-left:auto;display:flex;align-items:center;gap:8px}.iconbtn{position:relative;width:34px;height:34px;display:grid;place-items:center;border-radius:9px;border:1px solid var(--line);background:var(--panel);cursor:pointer;color:var(--muted)}.iconbtn:hover{border-color:var(--line-strong);color:var(--ink);text-decoration:none}.iconbtn .badge{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--accent);color:#fff;font-size:9px;font-weight:700;display:grid;place-items:center}.avatar{border:1px solid var(--line)}.content{padding:26px 26px 60px;max-width:1400px;width:100%;margin:0 auto}.pagehead{margin-bottom:20px}.pagehead h1{margin:0 0 4px;font:600 24px/1.2 Georgia,Times New Roman,serif}.pagehead .sub{color:var(--muted);font-size:13px}.eyebrow{color:var(--accent);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin-bottom:8px}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:var(--shadow)}.card h3{margin:0 0 4px;font-size:15px}.card .sum{color:var(--muted);font-size:12.5px}.cardgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));grid-gap:14px;gap:14px}a.card{display:block;color:inherit}a.card:hover{text-decoration:none}.two-col{display:grid;grid-template-columns:1fr 320px;grid-gap:20px;gap:20px;align-items:start}@media (max-width:980px){.two-col{grid-template-columns:1fr}}.chip{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:10px;font-weight:700;text-transform:uppercase;border:1px solid}.chip.built{color:var(--status-built);border-color:color-mix(in srgb,var(--status-built) 45%,transparent);background:color-mix(in srgb,var(--status-built) 9%,transparent)}.chip.building{color:var(--status-building);border-color:color-mix(in srgb,var(--status-building) 45%,transparent);background:color-mix(in srgb,var(--status-building) 9%,transparent)}.chip.designed{color:var(--status-designed);border-color:color-mix(in srgb,var(--status-designed) 45%,transparent);background:color-mix(in srgb,var(--status-designed) 9%,transparent)}.chip.idea{color:var(--status-idea);border-color:color-mix(in srgb,var(--status-idea) 50%,transparent);background:color-mix(in srgb,var(--status-idea) 10%,transparent)}.chip.sev-high{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,transparent);background:color-mix(in srgb,var(--danger) 9%,transparent)}.chip.sev-medium{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 45%,transparent);background:color-mix(in srgb,var(--warn) 9%,transparent)}.chip.neutral,.chip.sev-low{color:var(--muted);border-color:var(--line-strong);background:var(--panel-2)}.chip.ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 45%,transparent);background:color-mix(in srgb,var(--ok) 9%,transparent)}.btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:10px;cursor:pointer;border:1px solid var(--line);background:var(--panel);color:var(--ink);font-size:13px}.btn:hover{border-color:var(--line-strong);text-decoration:none}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn.primary:hover{filter:brightness(1.06)}.btn.small{padding:4px 9px;font-size:12px;border-radius:8px}.btn.danger{color:var(--danger)}.btn.ghost{border-color:transparent;background:transparent;color:var(--muted)}.btn.ghost:hover{color:var(--ink);background:var(--panel-2);border-color:transparent}input[type=month],input[type=text],select,textarea{width:100%;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px 12px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent-line)}textarea{resize:vertical;min-height:70px}.formrow{display:flex;gap:8px;align-items:flex-start;margin-top:10px}label.lab{display:block;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:12px 0 4px}.rowlist{display:flex;flex-direction:column}.rowitem{display:flex;gap:12px;align-items:baseline;padding:11px 2px;border-bottom:1px solid var(--line)}.rowitem:last-child{border-bottom:0}.rowitem .when{margin-left:auto;color:var(--faint);font-size:11px;white-space:nowrap}.mutetext{color:var(--muted);font-size:12.5px}.fainttext{color:var(--faint);font-size:11.5px}.divider{border:0;border-top:1px solid var(--line);margin:18px 0}.graphwrap{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--bg-soft)}.graphcanvas{flex:1 1;min-height:0;background-image:radial-gradient(circle at 1px 1px,var(--canvas-dot) 1px,transparent 0);background-size:24px 24px}.graphcanvas svg{display:block;width:100%;cursor:-webkit-grab;cursor:grab;touch-action:none}.graphcanvas svg.grabbing{cursor:-webkit-grabbing;cursor:grabbing}.gnode{cursor:pointer}.gnode rect.box{fill:var(--panel);stroke:var(--node-color);stroke-opacity:.55;stroke-width:1;transition:all .2s ease}.gnode rect.bar{fill:var(--node-color)}.gnode text.t{fill:var(--ink-strong);font-size:12px;pointer-events:none}.gnode text.m{fill:var(--faint);font-size:9px;letter-spacing:.03em;pointer-events:none}.gnode circle.raisedot{fill:var(--danger)}.gnode rect.statuschip{stroke:none}.gnode:hover rect.box{stroke-opacity:1}.gedge{fill:none;stroke:var(--edge);stroke-width:1.2;opacity:.45;transition:opacity .2s,stroke .2s;vector-effect:non-scaling-stroke}.gelabel{fill:var(--faint);font-size:8px;paint-order:stroke;stroke:var(--bg-soft);stroke-width:3px;stroke-linejoin:round}.gzone rect{fill:transparent;stroke:var(--line);stroke-dasharray:5 5}.gzone text{fill:var(--faint);font-size:10px;letter-spacing:.14em;font-weight:700}.graphcanvas.focused .gedge:not(.on),.graphcanvas.focused .gelabel:not(.on),.graphcanvas.focused .gnode:not(.on):not(.nb){opacity:.09}.graphcanvas.focused .gnode.on rect.box{stroke-width:2.5;stroke-opacity:1;filter:drop-shadow(0 0 10px var(--node-color));fill:color-mix(in srgb,var(--node-color) 10%,var(--panel))}.graphcanvas.focused .gnode.nb rect.box{stroke-width:1.8;stroke-opacity:1;filter:drop-shadow(0 0 5px color-mix(in srgb,var(--node-color) 55%,transparent))}.graphcanvas.focused .gedge.on{opacity:1;stroke:var(--accent);stroke-width:2.1}.graphcanvas.focused .gelabel.on{opacity:1;fill:var(--accent-ink)}.gedge.hid,.gelabel.hid,.gnode.hid{display:none}.gcontrols{position:absolute;left:12px;bottom:12px;display:flex;align-items:center;gap:4px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:4px;z-index:5}.gcontrols button{width:30px;height:28px;border:0;border-radius:7px;background:transparent;cursor:pointer;color:var(--muted)}.gcontrols button:hover{background:var(--panel-2);color:var(--ink)}.gcontrols .zl{width:44px;text-align:center;font-size:10px;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.glayers{display:flex;flex-wrap:wrap;gap:5px;padding:10px 12px;border-bottom:1px solid var(--line)}.glayer,.glayers{background:var(--panel)}.glayer{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:999px;cursor:pointer;border:1px solid var(--line);font-size:10.5px;color:var(--muted)}.glayer .dot{width:7px;height:7px;border-radius:3px}.glayer.off{opacity:.4}.inspector{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px}.inspector h2{margin:4px 0 6px;font:600 19px/1.2 Georgia,serif}.inspector .kind{font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.conn{display:grid;grid-template-columns:18px 1fr;grid-gap:7px;gap:7px;align-items:start;width:100%;padding:8px;margin-top:6px;border:1px solid var(--line);border-radius:9px;cursor:pointer;text-align:left;font-size:11.5px;color:var(--ink)}.conn:hover{border-color:var(--accent-line)}.conn .arrow{color:var(--accent)}.conn small{display:block;color:var(--faint);margin-top:2px;font-size:9.5px}.graphfallback{display:none}@media (max-width:900px){.graphwrap,.inspector.desktop-only{display:none}.graphfallback{display:block}}.boardhead{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:10px}.boardhead h2{margin:0;font:600 18px Georgia,serif}.progressbar{position:relative;display:flex;height:22px;border-radius:999px;overflow:visible;border:1px solid var(--line);background:var(--panel);margin:10px 0 4px}.pseg{position:relative;height:100%}.pseg:first-of-type{border-top-left-radius:999px;border-bottom-left-radius:999px;overflow:hidden}.pseg:last-of-type{border-top-right-radius:999px;border-bottom-right-radius:999px;overflow:hidden;border-right:0}.pseg .fillbg{position:absolute;inset:0;opacity:.16}.pseg .fill{position:absolute;left:0;top:0;bottom:0}.pseg:not(:last-of-type){border-right:1px solid var(--bg)}.ptip{position:absolute;top:calc(100% + 8px);left:0;z-index:20;min-width:260px;background:var(--panel);border:1px solid var(--line-strong);border-radius:12px;padding:12px 14px;box-shadow:var(--shadow);display:none}.progressbar:focus-visible .ptip,.progressbar:focus-within .ptip,.progressbar:hover .ptip{display:block}.ptip .trow{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:12px}.ptip .sw{width:10px;height:10px;border-radius:3px;flex:0 0 auto}.ptip .tnum{margin-left:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted)}.clcard{background:var(--panel);border:1px solid var(--line);border-radius:14px;margin-bottom:14px;overflow:hidden}.clhead{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line)}.clhead .sw{width:11px;height:11px;border-radius:4px}.clhead h3{margin:0;font-size:14px;flex:1 1}.clitem{display:flex;align-items:center;gap:11px;padding:9px 16px;border-bottom:1px solid var(--line)}.clitem:last-child{border-bottom:0}.clitem.done .ttl{color:var(--faint);text-decoration:line-through}.clitem .meta{margin-left:auto;display:flex;align-items:center;gap:8px;color:var(--faint);font-size:10.5px;white-space:nowrap}.checkbox{width:18px;height:18px;border-radius:6px;border:1.5px solid var(--line-strong);background:var(--panel);cursor:pointer;display:grid;place-items:center;color:transparent;flex:0 0 auto;padding:0}.checkbox.on{background:var(--accent);border-color:var(--accent);color:#fff}.checkbox:disabled{opacity:.45;cursor:not-allowed}.pendingwrap{min-height:100dvh;display:grid;place-items:center;padding:24px}.modalback{position:fixed;inset:0;background:rgba(10,8,5,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;z-index:100;padding:20px}.modal{border:1px solid var(--line-strong);border-radius:16px;padding:26px;max-width:480px;box-shadow:var(--shadow)}.tabrow{display:flex;gap:6px;border-bottom:1px solid var(--line);margin-bottom:16px}.tabrow a{padding:8px 13px;color:var(--muted);font-size:13px;border-bottom:2px solid transparent;margin-bottom:-1px}.tabrow a:hover{text-decoration:none;color:var(--ink)}.tabrow a.active{color:var(--accent-ink);border-bottom-color:var(--accent);font-weight:600}table.tbl{width:100%;border-collapse:collapse;font-size:12.5px}table.tbl th{text-align:left;color:var(--faint);font-size:10px;text-transform:uppercase;letter-spacing:.1em;padding:8px 10px}table.tbl td,table.tbl th{border-bottom:1px solid var(--line)}table.tbl td{padding:9px 10px;vertical-align:top}.present-body{max-width:860px;margin:0 auto;padding:40px 24px 100px}.shell:has(.present-body) .mobilenav,.shell:has(.present-body) .sidebar,.shell:has(.present-body) .topbar{display:none}.shell:has(.present-body){grid-template-columns:1fr}.shell:has(.present-body) .content{padding-top:0;max-width:none}.present-body .sect{margin-top:54px}.mobilenav{display:none}@media (max-width:900px){.shell{grid-template-columns:1fr}.sidebar{display:none}.content{padding:18px 14px 100px}.mobilenav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}.mobilenav a{flex:1 1;text-align:center;padding:8px 2px;color:var(--muted);font-size:10px;display:flex;flex-direction:column;gap:3px;align-items:center}.mobilenav a.active{color:var(--accent-ink);font-weight:700}.mobilenav a:hover{text-decoration:none}.two-col{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}:root,[data-theme=light]{--bg:#ede8e1;--bg-soft:#e5ded5;--panel:hsla(38,40%,96%,.92);--panel-2:hsla(34,26%,89%,.88);--ink:#29272a;--ink-strong:#111218;--muted:#6f6a6c;--faint:#6a635d;--line:rgba(44,38,40,.12);--line-strong:rgba(44,38,40,.22);--accent:#d76350;--accent-ink:#b74738;--accent-soft:rgba(215,99,80,.1);--accent-line:rgba(215,99,80,.38);--ok:#47896a;--warn:#b57c40;--danger:#d05555;--edge:#979097;--canvas-dot:rgba(60,50,54,.1);--shadow:0 12px 36px rgba(28,20,22,.08);--status-built:#47896a;--status-building:#c38a48;--status-designed:#cc668e;--status-idea:#77747d}[data-theme=dark]{--bg:#080d14;--bg-soft:#0a1119;--panel:rgba(13,19,27,.9);--panel-2:rgba(20,27,37,.88);--ink:#d8d5d4;--ink-strong:#f5eee9;--muted:#8e9097;--faint:#7b828e;--line:hsla(23,34%,85%,.1);--line-strong:hsla(23,34%,85%,.2);--accent:#f27b67;--accent-ink:#ffad91;--accent-soft:hsla(9,84%,68%,.11);--accent-line:hsla(9,84%,68%,.42);--ok:#72c99d;--warn:#e0a05c;--danger:#ef6d70;--edge:#56606d;--canvas-dot:rgba(219,225,234,.075);--shadow:0 22px 55px rgba(0,0,0,.32);--status-built:#72c99d;--status-building:#e2a45f;--status-designed:#df82aa;--status-idea:#858b96}html{background:#030609}body{min-height:100dvh;background:radial-gradient(circle at 86% -10%,rgba(164,57,82,.12),transparent 29rem),#030609;font-size:12.5px;letter-spacing:.005em;transition:background-color .34s ease,color .22s ease}[data-theme=light] body{background:radial-gradient(circle at 86% -10%,rgba(216,143,170,.12),transparent 29rem),#e8e8ea}.shell{position:relative;isolation:isolate;grid-template-columns:194px minmax(0,1fr);min-height:calc(100dvh - 20px);margin:10px;overflow:clip;background:transparent;border:1px solid var(--line-strong);border-radius:7px;box-shadow:0 28px 80px rgba(0,0,0,.28)}.shell:after,.shell:before{content:"";position:absolute;inset:0;z-index:0;background-size:cover;background-position:0 100%;background-attachment:fixed;pointer-events:none;transition:opacity .32s cubic-bezier(.4,0,.2,1),filter .32s cubic-bezier(.4,0,.2,1)}.shell:before{background-image:linear-gradient(90deg,rgba(5,9,14,0),rgba(5,9,14,.08) 30%,rgba(5,9,14,.52) 66%,rgba(5,9,14,.84)),url(/codex-background.png);opacity:1;filter:brightness(1.16) saturate(1.12)}.shell:after{background-image:linear-gradient(90deg,hsla(0,0%,100%,.01),hsla(0,0%,97%,.22) 32%,hsla(0,0%,97%,.7) 68%,hsla(0,0%,97%,.9)),url(/codex-background-light.png);opacity:0}[data-theme=light] .shell:before{opacity:0;filter:brightness(1.12)}[data-theme=light] .shell:after{opacity:1}.theme-transitioning .card,.theme-transitioning .glayers,.theme-transitioning .graphmodule-head,.theme-transitioning .graphwrap,.theme-transitioning .inspector,.theme-transitioning .metriccard,.theme-transitioning .mobilenav,.theme-transitioning .progressmodule,.theme-transitioning .sidebar,.theme-transitioning .topbar{transition:background-color .32s ease,background .32s ease,border-color .24s ease,color .2s ease,box-shadow .32s ease}.main{position:relative;z-index:1;isolation:isolate}.main:before{content:none}.sidebar{z-index:2;top:0;height:calc(100dvh - 20px);padding:15px 10px 12px;gap:0;background:linear-gradient(90deg,color-mix(in srgb,var(--bg) 82%,transparent),color-mix(in srgb,var(--bg) 92%,transparent));border-right-color:var(--line);-webkit-backdrop-filter:blur(14px) saturate(1.08);backdrop-filter:blur(14px) saturate(1.08)}[data-theme=light] .sidebar{background:linear-gradient(90deg,hsla(36,33%,97%,.9),hsla(36,33%,97%,.96))}.sidebar .brandrow{padding:3px 8px 16px;gap:11px}.wordmark{font-size:14px;font-weight:500;letter-spacing:.48em;color:var(--ink-strong)}.wordmark small{margin-top:2px;font-size:7px;letter-spacing:.58em;color:var(--accent-ink)}.starmark{color:var(--accent);filter:drop-shadow(0 0 10px color-mix(in srgb,var(--accent) 35%,transparent))}.navgroup{display:contents}.navsec{margin:14px 9px 5px;font-size:7.5px;letter-spacing:.2em;color:var(--faint)}.navlink{min-height:32px;margin:1px 0;padding:6px 9px;gap:9px;border-radius:7px;font-size:10.5px;color:var(--muted)}.navlink .navicon{opacity:.8;flex:0 0 auto}.navlink:hover{background:color-mix(in srgb,var(--panel-2) 72%,transparent);color:var(--ink-strong)}.navlink.active{position:relative;background:linear-gradient(90deg,var(--accent-soft),color-mix(in srgb,var(--panel-2) 80%,transparent));color:var(--accent-ink);border-color:color-mix(in srgb,var(--accent-line) 45%,var(--line));font-weight:550}.navlink.active:before{content:"";position:absolute;left:-1px;top:9px;bottom:9px;width:2px;border-radius:2px;background:var(--accent);box-shadow:0 0 10px var(--accent)}.navlink .cnt{font-size:8px;padding:1px 5px;border:1px solid var(--line);border-radius:8px}.sidefoot{margin:auto 0 0;padding:13px 8px 2px;border-color:var(--line)}.sideprofile{display:grid;grid-template-columns:32px 1fr;grid-gap:9px;gap:9px;align-items:center;min-width:0}.sideprofile strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:10.5px;font-weight:600}.sideprofile small{display:block;color:var(--faint);font-size:9px;margin-top:1px}.avatar{width:32px;height:32px}.avatar-fallback{background:var(--accent-soft);color:var(--accent-ink);font:500 14px Georgia,serif}.syncstate{display:flex;align-items:center;gap:6px;margin-top:13px;padding-top:10px;border-top:1px solid var(--line);color:var(--faint);font-size:9px;letter-spacing:.04em}.syncstate span{width:5px;height:5px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px var(--ok)}.topbar{min-height:54px;padding:9px 19px;background:color-mix(in srgb,var(--bg) 54%,transparent);border-bottom-color:var(--line);-webkit-backdrop-filter:blur(13px) saturate(1.08);backdrop-filter:blur(13px) saturate(1.08)}[data-theme=light] .topbar{background:hsla(40,23%,97%,.72)}.topbar form.search{max-width:360px;position:relative}.demo-search,.topbar .search{min-width:0}.topbar input[type=search]{height:34px;padding:8px 42px 8px 35px;border-radius:7px;background:color-mix(in srgb,var(--panel) 68%,transparent);font-size:10.5px}.searchicon{left:11px;z-index:1;height:15px}.searchicon,.searchkey{position:absolute;top:50%;transform:translateY(-50%);color:var(--faint)}.searchkey{right:8px;border:1px solid var(--line);border-radius:4px;padding:1px 4px;font-size:8px}.topbtns{gap:6px}.iconbtn{width:32px;height:32px;border-radius:7px;background:transparent;border-color:transparent}.iconbtn:hover{background:var(--panel-2);border-color:var(--line)}.theme-toggle{position:relative;overflow:hidden}.theme-toggle svg{position:absolute;transition:opacity .2s ease,transform .28s cubic-bezier(.2,.8,.2,1)}.theme-toggle .theme-sun{opacity:0;transform:rotate(-35deg) scale(.72)}.theme-toggle .theme-moon,[data-theme=dark] .theme-toggle .theme-sun{opacity:1;transform:rotate(0) scale(1)}[data-theme=dark] .theme-toggle .theme-moon{opacity:0;transform:rotate(35deg) scale(.72)}.livepulse{display:inline-flex;align-items:center;gap:6px;margin-right:5px;color:var(--faint);font-size:9px;text-transform:uppercase;letter-spacing:.12em}.live-dot,.livepulse i{width:5px;height:5px;display:inline-block;border-radius:50%;background:var(--ok);box-shadow:0 0 8px var(--ok)}.content{max-width:1580px;padding:20px 22px 64px}.pagehead{margin-bottom:24px;max-width:800px}.pagehead h1{font:400 30px/1.12 Georgia,Times New Roman,serif;letter-spacing:-.025em}.pagehead .sub{max-width:690px;margin-top:7px;font-size:12px;line-height:1.7}.eyebrow,.module-kicker{color:var(--faint);font-size:8px;font-weight:650;letter-spacing:.2em;text-transform:uppercase}.eyebrow{margin-bottom:9px}.card,.clcard,.inspector{background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 86%,transparent),color-mix(in srgb,var(--panel-2) 62%,transparent));border-color:var(--line);border-radius:8px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px) saturate(1.06);backdrop-filter:blur(12px) saturate(1.06)}.card{padding:17px}.card h3{font-size:13px;font-weight:600}.card .sum{font-size:11.5px;line-height:1.65}.cardgrid{gap:10px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}a.card{position:relative;overflow:hidden}a.card:after{content:"↗";position:absolute;right:15px;top:15px;color:var(--faint);font-size:11px}a.card:hover{transform:translateY(-1px);border-color:var(--accent-line)}.two-col{grid-template-columns:minmax(0,1fr) 292px;gap:10px}.btn{border-radius:6px;padding:7px 12px;background:var(--panel-2);font-size:10.5px}.btn.primary{background:linear-gradient(135deg,#e76f59,#c84f69);box-shadow:0 6px 18px rgba(197,71,91,.2)}.btn.small{padding:5px 9px;border-radius:5px;font-size:9.5px}input[type=month],input[type=text],select,textarea{border-radius:6px;background:var(--panel-2);font-size:11px}.chip{padding:2px 7px;border-radius:4px;font-size:8px;letter-spacing:.08em}.rowitem{padding:10px 2px;font-size:11px}.rowitem .when{font-size:9px}.mutetext{font-size:11.5px;line-height:1.65}.fainttext{font-size:10px}.overview-hero{position:relative;display:grid;grid-template-columns:minmax(245px,.76fr) minmax(540px,1.55fr);align-items:end;grid-gap:26px;gap:26px;min-height:158px;margin:-20px -22px 20px;padding:26px 22px 18px;overflow:hidden;border-bottom:1px solid var(--line)}.overview-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 28% 5%,hsla(7,76%,63%,.08),transparent 28%),linear-gradient(180deg,transparent,color-mix(in srgb,var(--bg) 25%,transparent));pointer-events:none}.hero-copy,.metricgrid{position:relative;z-index:1}.hero-copy:before{content:"";position:absolute;inset:-18px -30px -14px -22px;z-index:-1;background:radial-gradient(120% 120% at 0 50%,color-mix(in srgb,var(--bg) 88%,transparent) 0,color-mix(in srgb,var(--bg) 62%,transparent) 55%,transparent 100%);border-radius:20px;pointer-events:none}.hero-copy h1{margin:0;color:var(--ink-strong);font:400 clamp(28px,2.6vw,38px)/1.02 Georgia,Times New Roman,serif;letter-spacing:-.045em}.hero-copy h1 span{display:block;color:var(--muted);font-size:.58em;letter-spacing:-.01em;margin-bottom:5px}.hero-copy p{color:var(--muted);font-size:11px;margin:12px 0 0}.hero-mark{position:absolute;left:33%;bottom:-55px;width:260px;height:260px;background:radial-gradient(circle,hsla(5,83%,66%,.11),transparent 62%)}.metricgrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:9px;gap:9px}.metriccard{position:relative;min-height:92px;padding:11px 12px 9px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 76%,transparent),color-mix(in srgb,var(--panel-2) 52%,transparent));-webkit-backdrop-filter:blur(11px) saturate(1.05);backdrop-filter:blur(11px) saturate(1.05)}.metriclabel{display:flex;align-items:center;justify-content:space-between;color:var(--faint);font-size:8px;text-transform:uppercase;letter-spacing:.13em}.metrictrend{font-size:7px;text-transform:none;letter-spacing:.02em;color:var(--ok)}.metrictrend.warn{color:var(--warn)}.metriccard>strong{display:block;margin-top:6px;color:var(--ink-strong);font:400 22px/1 Georgia,Times New Roman,serif}.metriccard>span:not(.metrictrend){display:block;margin-top:5px;color:var(--faint);font-size:8.5px}.sparkline{position:absolute;right:10px;bottom:9px;left:52%;height:24px;display:flex;align-items:flex-end;gap:2px;opacity:.7}.sparkline i{flex:1 1;border-top:1px solid;transform:skewY(-12deg)}.sparkline i:first-child{height:18%}.sparkline i:nth-child(2){height:38%}.sparkline i:nth-child(3){height:31%}.sparkline i:nth-child(4){height:57%}.sparkline i:nth-child(5){height:49%}.sparkline i:nth-child(6){height:76%}.sparkline i:nth-child(7){height:68%}.sparkline i:nth-child(8){height:94%}.sparkline.copper{color:var(--accent)}.sparkline.mint{color:var(--ok)}.sparkline.pink{color:#d86aa3}.section-label-row{display:flex;align-items:center;justify-content:space-between;margin:0 1px 8px}.section-label-row .eyebrow{margin:0}.textlink{color:var(--faint);font-size:9px}.textlink:hover{color:var(--accent-ink);text-decoration:none}.textlink span{color:var(--accent-ink);margin-left:4px}.graphwrap{border-radius:8px;border-color:var(--line);background:rgba(5,10,16,.68);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(11px) saturate(1.08);backdrop-filter:blur(11px) saturate(1.08)}[data-theme=light] .graphwrap{background:hsla(40,18%,97%,.72)}.overview-page .graphcanvas svg{height:clamp(390px,44vh,460px)}.graphmodule-head{min-height:54px;padding:11px 13px;display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel) 78%,transparent)}.cardhead h2,.graphmodule-head h2,.module-title-row h2{margin:3px 0 0;color:var(--ink-strong);font-size:12px;line-height:1.2;font-weight:600;letter-spacing:.01em}.graphmodule-meta{display:flex;align-items:center;gap:13px;color:var(--faint);font-size:8px;white-space:nowrap}.graphmodule-meta>span{display:flex;align-items:center;gap:5px}.glayers{padding:8px 11px;gap:4px;background:color-mix(in srgb,var(--panel) 55%,transparent)}.glayer{padding:3px 7px;border-radius:4px;background:transparent;font-size:8.5px}.glayer .dot{width:5px;height:5px;border-radius:50%;box-shadow:0 0 6px currentColor}.graphcanvas{background-image:radial-gradient(circle at 1px 1px,var(--canvas-dot) .8px,transparent 0),radial-gradient(circle at 50% 50%,rgba(210,76,119,.08),transparent 44%);background-size:22px 22px,100% 100%}.gnode rect.box{fill:color-mix(in srgb,var(--panel) 91%,transparent);stroke-opacity:.62;rx:6px}.gnode text.t{font-size:11px;font-weight:600}.gnode text.m{font-size:8px}.gzone rect{stroke-opacity:.6}.gzone text{font-size:8px}.gedge{opacity:.34}.gcontrols{left:10px;bottom:10px;padding:3px;border-radius:6px;background:color-mix(in srgb,var(--panel) 88%,transparent)}.gcontrols button{width:27px;height:25px;border-radius:4px;font-size:10px}.gcontrols .zl,.graphhint{font-size:8px}.graphhint{position:absolute;right:11px;bottom:11px;color:var(--faint);pointer-events:none}.inspector{border-radius:8px;padding:15px;box-shadow:var(--shadow)}.inspector h2{font:400 19px/1.15 Georgia,serif}.conn{border-radius:5px;background:var(--panel-2);font-size:10px}.progressmodule{margin-top:11px;padding:15px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 91%,transparent),color-mix(in srgb,var(--panel-2) 62%,transparent));box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.cardhead,.module-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.completion{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:9px}.completion i{width:5px;height:5px;border-radius:50%;background:var(--ok);box-shadow:0 0 7px var(--ok)}.statusrail{display:flex;width:100%;height:3px;margin:15px 0 13px;overflow:hidden;border-radius:2px;background:var(--panel-2)}.statusrail span{height:100%}.statusrail .built{background:var(--status-built)}.statusrail .building{background:var(--status-building)}.statusrail .designed{background:var(--status-designed)}.statusrail .idea{background:var(--status-idea)}.statusgrid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:7px;gap:7px}.statusstat{padding:11px;text-align:center;border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--panel-2) 70%,transparent)}.statusstat strong{display:block;font:400 20px/1 Georgia,serif;color:var(--ink-strong)}.statusstat span{display:block;margin-top:6px;color:var(--faint);font-size:8px}.statusstat.built strong{color:var(--status-built)}.statusstat.building strong{color:var(--status-building)}.statusstat.designed strong{color:var(--status-designed)}.statusstat.idea strong{color:var(--status-idea)}.dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-gap:10px;gap:10px;margin-top:10px}.cardhead{padding-bottom:10px;border-bottom:1px solid var(--line)}.activityrow,.attentionrow{display:flex;align-items:center;gap:10px;min-height:48px;padding:8px 1px;border-bottom:1px solid var(--line)}.activityrow:last-child,.attentionrow:last-child{border-bottom:0}.activityicon{width:22px;height:22px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--accent-line);border-radius:50%;color:var(--accent-ink);background:var(--accent-soft);font-size:9px}.activitycopy,.attentionrow>span:nth-child(2){min-width:0;display:block;flex:1 1}.activitycopy strong,.attentionrow strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:10px;font-weight:550;text-transform:capitalize}.activitycopy small,.attentionrow small{display:block;margin-top:3px;color:var(--faint);font-size:8.5px}.activityrow .when,.attentionrow .when{color:var(--faint);font-size:8px;white-space:nowrap}.attentiondot{width:6px;height:6px;border-radius:50%;background:var(--warn);box-shadow:0 0 7px currentColor}.attentiondot.high{background:var(--danger)}.attentiondot.access,.attentiondot.medium{background:var(--warn)}.attentiondot.low{background:var(--faint)}.compact-grid{margin-top:10px}.clhead{background:var(--panel-2);padding:11px 14px}.clitem{padding:9px 14px;font-size:11px}.checkbox{border-radius:4px}.tabrow a,table.tbl{font-size:10.5px}table.tbl th{font-size:8px}.modal{border-radius:8px;background:var(--panel)}.pendingwrap{position:relative;background:var(--bg) url(/codex-background.png) left bottom /cover no-repeat fixed}.pendingwrap:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,13,20,.58),rgba(8,13,20,.96))}.pendingwrap>*{position:relative;z-index:1}@media (max-width:1120px){.overview-hero{grid-template-columns:1fr;align-items:start}.hero-copy{max-width:470px}.two-col{grid-template-columns:1fr 250px}}@media (max-width:900px){body{background:var(--bg)}.shell{display:block;min-height:100dvh;margin:0;border:0;border-radius:0}.sidebar{display:none}.topbar{min-height:56px;padding:9px 14px}.topbar form.search{max-width:none;min-width:0}.topbar{gap:8px}.livepulse,.searchkey,.topbtns form{display:none}.content{padding:18px 12px 92px}.overview-hero{min-height:0;margin:-18px -12px 18px;padding:27px 15px 18px;gap:24px}.metricgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.metriccard{min-height:94px;padding:10px 9px}.metriccard>strong{font-size:19px}.metriclabel{font-size:7px}.metrictrend,.sparkline{display:none}.two-col{grid-template-columns:1fr}.inspector.desktop-only{display:none}.graphwrap{display:flex}.graphfallback,.graphhint,.graphmodule-meta span:not(:first-child){display:none}.glayers{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.glayer{white-space:nowrap}.graphcanvas svg,.overview-page .graphcanvas svg{min-height:430px;height:52vh;max-height:560px}.dashboard-grid{grid-template-columns:1fr}.mobilenav{padding:5px 3px calc(5px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg) 93%,transparent)}.mobilenav a{font-size:8px;gap:2px}.mobilenav .navicon{width:16px;height:16px}}@media (prefers-reduced-motion:reduce){.shell:after,.shell:before,.theme-toggle svg{transition:none!important}}@media (max-width:560px){.hero-copy h1{font-size:31px}.metricgrid{grid-template-columns:repeat(2,1fr)}.metriccard:nth-child(3){grid-column:1/-1;min-height:75px}.statusgrid{gap:5px}.statusstat{padding:9px 4px}.statusstat strong{font-size:17px}.graphmodule-head{align-items:flex-start}.graphmodule-meta{padding-top:3px}.pagehead h1{font-size:26px}.formrow{flex-wrap:wrap}table.tbl{display:block;overflow-x:auto}}.demo-navicon{width:17px;text-align:center;color:currentColor;font-size:14px;line-height:1;opacity:.85}.demo-search{flex:1 1;max-width:360px;position:relative}.demo-search input{width:100%;height:34px;padding:8px 42px 8px 35px;border:1px solid var(--line);border-radius:7px;background:color-mix(in srgb,var(--panel) 68%,transparent);color:var(--ink);font-size:10.5px;outline:none}.demo-pill{display:inline-flex;align-items:center;gap:6px;margin-right:5px;padding:4px 7px;border:1px solid var(--accent-line);border-radius:5px;background:var(--accent-soft);color:var(--accent-ink);font-size:8px;letter-spacing:.1em;text-transform:uppercase}.demo-pill i{width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 7px var(--accent)}.demo-caption{color:var(--faint);font-size:8px;letter-spacing:.08em;text-transform:uppercase}.demo-shell .iconbtn{-webkit-appearance:none;-moz-appearance:none;appearance:none}.demo-shell .main:before{opacity:.27}@media (max-width:900px){.demo-search{max-width:none}.demo-pill{display:none}}.spine-module{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--panel) 74%,transparent);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px) saturate(1.08);backdrop-filter:blur(12px) saturate(1.08)}.spine-module-head{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 14px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel) 82%,transparent)}.spine-module-head h2{margin:3px 0 0;color:var(--ink-strong);font-size:12px;line-height:1.2}.spine-layout{display:grid;grid-template-columns:266px minmax(0,1fr);min-height:574px}.spine-context{position:relative;z-index:3;min-width:0;padding:28px 22px 22px;border-right:1px solid var(--line);background:linear-gradient(155deg,color-mix(in srgb,var(--panel) 88%,transparent),color-mix(in srgb,var(--panel-2) 64%,transparent));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.spine-identity strong{display:block;color:var(--ink-strong);font-size:17px;font-weight:560;letter-spacing:.32em}.spine-identity>span{display:block;margin-top:10px;color:var(--accent-ink);font-size:8px;font-weight:650;line-height:1.75;letter-spacing:.16em;text-transform:uppercase}.spine-context-label{margin-top:30px;color:var(--faint);font-size:7.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.spine-context-list{display:grid;grid-gap:0;gap:0;margin-top:8px}.spine-context-list span{position:relative;padding:8px 0 8px 14px;border-bottom:1px solid var(--line);color:var(--muted);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase}.spine-context-list span:before{content:"";position:absolute;left:0;top:50%;width:5px;height:1px;background:var(--accent)}.spine-status-card{position:absolute;left:18px;right:18px;bottom:20px;padding:13px;border:1px solid var(--line-strong);border-radius:6px;background:color-mix(in srgb,var(--panel) 78%,transparent);box-shadow:0 16px 34px rgba(0,0,0,.12)}.spine-status-title{margin-bottom:8px;color:var(--ink-strong);font-size:8px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.spine-status-card>div:not(.spine-status-title){display:flex;justify-content:space-between;gap:10px;padding:4px 0;color:var(--faint);font-size:7.5px;letter-spacing:.08em;text-transform:uppercase}.spine-status-card strong{color:var(--ink);font-size:8px;font-weight:600}.spine-status-card strong.nominal{color:var(--ok)}.spine-status-card p{display:flex;align-items:center;gap:7px;margin:10px -2px -2px;padding-top:9px;border-top:1px solid var(--line);color:var(--ok);font-size:7.5px;font-weight:650;letter-spacing:.12em;text-transform:uppercase}.spine-status-card p i{width:5px;height:5px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px var(--ok)}.spine-field{position:relative;min-width:0;background:rgba(5,10,16,.38)}[data-theme=light] .spine-field{background:hsla(0,0%,100%,.34)}.spine-filters{min-height:43px;display:flex;align-items:center;gap:4px;overflow-x:auto;padding:7px 11px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel) 72%,transparent);scrollbar-width:none}.spine-filters button{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:4px 7px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--muted);font-size:8px;cursor:pointer}.spine-filters button:hover{border-color:var(--line-strong);color:var(--ink)}.spine-filters button.off{opacity:.35}.spine-filters button i{width:5px;height:5px;border-radius:50%;box-shadow:0 0 6px currentColor}.spine-scroll{max-height:530px;overflow-y:auto;overflow-x:hidden;outline:none;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}.spine-scroll:focus-visible{outline:1px solid var(--accent-line);outline-offset:-1px;border-radius:0}.spine-track{--spine-x:72px;position:relative;min-height:100%;padding:18px 28px 84px 0}.spine-track:before{content:"";position:absolute;left:var(--spine-x);top:48px;bottom:42px;width:1px;background:linear-gradient(180deg,var(--accent),color-mix(in srgb,var(--accent) 32%,var(--line)) 28%,var(--line-strong) 76%,transparent);box-shadow:0 0 10px color-mix(in srgb,var(--accent) 28%,transparent)}.spine-root{position:relative;height:90px}.spine-node-icon,.spine-root-icon{position:absolute;left:var(--spine-x);top:16px;z-index:3;width:32px;height:32px;display:grid;place-items:center;transform:translateX(-50%);border:1px solid var(--accent-line);border-radius:50%;background:color-mix(in srgb,var(--panel) 90%,transparent);color:var(--accent-ink);box-shadow:0 0 0 5px color-mix(in srgb,var(--bg) 72%,transparent),0 0 20px color-mix(in srgb,var(--accent) 28%,transparent)}.spine-root-ghost{position:absolute;left:var(--spine-x);top:32px;width:66px;height:66px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 22%,transparent),transparent 68%);pointer-events:none}.spine-connector,.spine-root:after{content:"";position:absolute;left:var(--spine-x);top:32px;width:54px;height:1px;background:linear-gradient(90deg,var(--accent-line),var(--line-strong))}.spine-root strong{position:absolute;left:126px;top:20px;color:var(--ink-strong);font-size:9px;font-weight:700;letter-spacing:.18em}.spine-root small{position:absolute;left:126px;top:38px;color:var(--faint);font-size:7.5px}.spine-row{position:relative;min-height:82px;transition:opacity .18s ease}.spine-row.dimmed{opacity:.16}.spine-row.related{opacity:.78}.spine-node-icon{top:18px;border-color:color-mix(in srgb,var(--spine-node-color) 52%,var(--line));color:var(--spine-node-color);cursor:pointer;font-size:12px}.spine-row.active .spine-node-icon{border-color:var(--spine-node-color);box-shadow:0 0 0 5px color-mix(in srgb,var(--bg) 72%,transparent),0 0 22px color-mix(in srgb,var(--spine-node-color) 48%,transparent)}.spine-connector{top:34px;width:54px;background:linear-gradient(90deg,color-mix(in srgb,var(--spine-node-color) 62%,transparent),var(--line-strong))}.spine-dot{position:absolute;z-index:2;left:var(--spine-x);top:-9px;width:3px;height:3px;transform:translateX(-50%);border-radius:50%;background:var(--faint);opacity:.55}.spine-node-card{position:relative;width:calc(100% - 126px);min-height:58px;margin-left:126px;padding:10px 12px;display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--line);border-left:2px solid color-mix(in srgb,var(--spine-node-color) 72%,var(--line));border-radius:6px;background:color-mix(in srgb,var(--panel) 76%,transparent);color:var(--ink);cursor:pointer}.spine-node-card:hover,.spine-row.active .spine-node-card{border-color:color-mix(in srgb,var(--spine-node-color) 55%,var(--line));background:color-mix(in srgb,var(--panel) 91%,transparent)}.spine-node-copy{min-width:0;flex:1 1}.spine-node-copy strong{color:var(--ink-strong);font-size:10.5px;font-weight:600}.spine-node-copy small,.spine-node-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spine-node-copy small{margin-top:4px;color:var(--faint);font-size:7.5px}.spine-node-card .chip{flex:0 0 auto}.spine-raise{min-width:16px;height:16px;display:grid;place-items:center;border-radius:50%;background:var(--danger);color:#fff;font-size:7px;font-style:normal}.spine-detail{width:calc(100% - 126px);margin:6px 0 18px 126px;padding:12px;border:1px solid var(--line);border-radius:6px;background:color-mix(in srgb,var(--panel-2) 78%,transparent)}.spine-detail>p{margin:0 0 9px;color:var(--muted);font-size:9.5px;line-height:1.6}.spine-connections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:5px;gap:5px;margin-bottom:9px}.spine-connections button{padding:6px 7px;text-align:left;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--ink);font-size:8px;cursor:pointer}.spine-connections button small{display:block;margin:2px 0 0 11px;color:var(--faint);font-size:7px}.spine-scroll-hint{position:absolute;right:12px;bottom:8px;z-index:4;padding:3px 6px;border-radius:3px;background:color-mix(in srgb,var(--panel) 78%,transparent);color:var(--faint);font-size:7px}@media (max-width:900px){.spine-module-head{padding:10px 12px}.spine-module-head .graphmodule-meta span:not(:first-child){display:none}.spine-layout{grid-template-columns:1fr;min-height:0}.spine-context{padding:20px 15px 16px;border-right:0;border-bottom:1px solid var(--line)}.spine-identity strong{font-size:15px}.spine-context-label{margin-top:19px}.spine-context-list{grid-template-columns:repeat(2,minmax(0,1fr))}.spine-context-list span:nth-child(odd){border-right:1px solid var(--line)}.spine-context-list span:nth-child(2n){padding-left:24px}.spine-context-list span:nth-child(2n):before{left:10px}.spine-status-card{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:0 12px;gap:0 12px;margin-top:16px}.spine-status-card p,.spine-status-title{grid-column:1/-1}.spine-scroll{max-height:none;overflow:visible}.spine-track{--spine-x:34px;padding-right:10px}.spine-dot{display:none}.spine-connector,.spine-root:after{width:38px}.spine-root small,.spine-root strong{left:88px}.spine-detail,.spine-node-card{width:calc(100% - 88px);margin-left:88px}.spine-node-card{padding:9px}.spine-node-card .chip{display:none}.spine-connections{grid-template-columns:1fr}.spine-scroll-hint{display:none}}@media (max-width:430px){.spine-filters{padding-right:26px}.spine-track{--spine-x:28px}.spine-node-icon,.spine-root-icon{width:29px;height:29px}.spine-connector,.spine-root:after{width:31px}.spine-root small,.spine-root strong{left:74px}.spine-detail,.spine-node-card{width:calc(100% - 74px);margin-left:74px}}:root,body{font-size:15px}.sidebar .navlink{font-size:14.5px;padding:9px 12px}.sidebar .navsec{font-size:11px;letter-spacing:.16em;margin-top:16px}.content{font-size:15px}.avatarbtn{display:inline-flex;border-radius:50%;overflow:hidden;border:1px solid var(--line)}.avatar{width:30px;height:30px;border-radius:50%;object-fit:cover;display:block}.avatar-fallback{display:grid;place-items:center;background:var(--accent);color:#fff;font-size:13px;font-weight:600}.presencerow{display:flex;align-items:center;gap:-6px;margin-right:4px}.pavatar{width:24px;height:24px;border-radius:50%;object-fit:cover;border:2px solid var(--panel);margin-left:-7px}.pavatar.pfall{display:grid;place-items:center;background:var(--panel-2);font-weight:600}.pavatar.pfall,.pmore{color:var(--muted);font-size:11px}.pmore{margin-left:4px}.pdot{width:7px;height:7px;border-radius:50%;background:#3f7d54;margin-left:6px}.boardgrid{display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-gap:16px;gap:16px}@media (max-width:1100px){.boardgrid{grid-template-columns:1fr}}.boardcard{border-color:color-mix(in srgb,var(--accent) 28%,var(--line))}.emergencybar{display:grid;grid-gap:10px;gap:10px;margin-bottom:18px}.emcard{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;background:color-mix(in srgb,#8c3b2e 9%,var(--panel));border:1px solid color-mix(in srgb,#8c3b2e 34%,transparent)}.emname{font-weight:700}.emreason{font-size:13px;color:var(--muted)}.empulse{width:10px;height:10px;border-radius:50%;background:#c0392b;animation:empulse 1.4s ease-in-out infinite;flex:0 0 auto}@keyframes empulse{0%,to{opacity:1;box-shadow:0 0 0 0 rgba(192,57,43,.5)}50%{opacity:.55;box-shadow:0 0 0 7px rgba(192,57,43,0)}}.gnode.em .box{stroke:#c0392b;stroke-width:2;animation:emblink 1.5s ease-in-out infinite}@keyframes emblink{0%,to{opacity:1}50%{opacity:.45}}.flagdot{color:#a06a1f}.flagdotc{fill:#d59b3a}.flagform{display:flex;gap:8px;margin:10px 0}.flagform input[type=text]{flex:1 1;font-size:13px}.emset summary{cursor:pointer;font-size:12px;margin:6px 0}.inspectorlist{border-top:1px solid var(--line);padding-top:10px;margin-top:10px}.lab2{text-transform:uppercase;letter-spacing:.12em;font-weight:700;margin-bottom:4px}.tagfilter{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:16px}.tagchip{display:inline-block;font-size:11.5px;padding:3px 10px;border-radius:999px;border:1px solid var(--line);color:var(--muted);text-decoration:none}.tagchip.on{font-weight:600}.tagchip.t-proposed.on{background:color-mix(in srgb,#a06a1f 14%,transparent);color:#a06a1f;border-color:color-mix(in srgb,#a06a1f 40%,transparent)}.tagchip.t-final.on{background:color-mix(in srgb,#3f7d54 14%,transparent);color:#3f7d54;border-color:color-mix(in srgb,#3f7d54 40%,transparent)}.tagchip.t-cant_decide.on{background:color-mix(in srgb,#8a8378 16%,transparent);color:#6f6a61;border-color:color-mix(in srgb,#8a8378 40%,transparent)}.tagchip.t-needs_meeting.on{background:color-mix(in srgb,#7c5cbf 14%,transparent);color:#7c5cbf;border-color:color-mix(in srgb,#7c5cbf 40%,transparent)}.tagchip.t-request_remove.on{background:color-mix(in srgb,#8c3b2e 12%,transparent);color:#8c3b2e;border-color:color-mix(in srgb,#8c3b2e 38%,transparent)}.thoughtmark{margin-top:8px;font-size:12px;color:var(--accent-ink,var(--accent))}.backlink{display:inline-block;margin-bottom:10px;font-size:13px;color:var(--muted);text-decoration:none}.backlink:hover{color:var(--accent)}.assignchip{font-size:11.5px;color:var(--muted);margin-left:8px}.uprog{height:4px;background:var(--panel-2);border-radius:3px;margin-top:8px;overflow:hidden}.uprog span{display:block;height:100%;background:var(--accent);transition:width .2s ease}.subtabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px;border-bottom:1px solid var(--line)}.subtabs a{padding:8px 13px;font-size:13.5px;text-decoration:none;color:var(--muted);border-bottom:2px solid transparent}.subtabs a.active{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}.colgrid{display:flex;gap:14px;overflow-x:auto;padding-bottom:12px;align-items:flex-start}.colcard{flex:0 0 240px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px}.colcard h4{margin:0 0 8px;font-size:13px;letter-spacing:.06em;text-transform:uppercase}.colnode{border:1px solid var(--line);border-radius:8px;padding:8px 10px;margin-bottom:7px;background:var(--panel-2);font-size:13px}.colnode .cn-t{font-weight:600}.colnode .cn-m{font-size:11px;color:var(--faint)}.erdcanvas{position:relative;height:620px;overflow:auto;border:1px solid var(--line);border-radius:12px;background:var(--bg-soft)}.erdtable{position:absolute;width:210px;background:var(--panel);border:1px solid var(--line);border-radius:9px;font-size:11.5px;cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.erdtable.dragging{cursor:-webkit-grabbing;cursor:grabbing;box-shadow:0 10px 26px rgba(0,0,0,.18);z-index:5}.erdtable h5{margin:0;padding:6px 9px;border-bottom:1px solid var(--line);font-size:11.5px;letter-spacing:.05em}.erdtable .f{display:flex;justify-content:space-between;padding:2px 9px;color:var(--muted)}.erdtable .f b{font-weight:600;color:var(--ink)}.votebar{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.votecount{font-size:12px;color:var(--muted)}@media (max-width:900px){.mobilenav a{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10.5px}.mobilenav .mnic{display:block}.mobilenav .centerbtn .mnic{background:var(--accent);color:#fff;border-radius:50%;padding:7px;display:grid;place-items:center;margin-top:-14px;box-shadow:0 4px 12px rgba(0,0,0,.16)}.boardgrid{grid-template-columns:1fr}}.pinerr{margin-top:12px;font-size:13px;color:#8c3b2e;background:color-mix(in srgb,#8c3b2e 8%,transparent);border:1px solid color-mix(in srgb,#8c3b2e 26%,transparent);border-radius:8px;padding:8px 11px}.avatarpick{width:92px;height:92px;border-radius:50%;border:1px dashed var(--line);background:var(--panel-2);cursor:pointer;display:grid;place-items:center;overflow:hidden;font-size:26px;color:var(--faint);padding:0}.avatarpick img{width:100%;height:100%;object-fit:cover}.stattiles{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;margin-top:14px}@media (max-width:700px){.stattiles{grid-template-columns:repeat(2,1fr)}}.stattile{border:1px solid var(--line);border-radius:12px;padding:16px 14px;text-align:center;background:color-mix(in srgb,var(--panel) 80%,transparent)}.stattile .n{font:300 30px/1 Georgia,serif;letter-spacing:.01em}.stattile .l{margin-top:6px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.stattile.built{border-color:color-mix(in srgb,var(--status-built) 34%,transparent)}.stattile.built .n{color:var(--status-built)}.stattile.building{border-color:color-mix(in srgb,var(--status-building) 34%,transparent)}.stattile.building .n{color:var(--status-building)}.stattile.designed{border-color:color-mix(in srgb,var(--status-designed) 34%,transparent)}.stattile.designed .n{color:var(--status-designed)}.stattile.idea{border-color:color-mix(in srgb,var(--status-idea) 26%,transparent)}.stattile.idea .n{color:var(--status-idea)}.overallbar{height:5px;border-radius:4px;background:var(--panel-2);overflow:hidden;margin-top:10px}.overallbar span{display:block;height:100%;background:linear-gradient(90deg,var(--status-built),var(--status-building),var(--status-designed),var(--accent))}.overallhead{display:flex;align-items:baseline;gap:10px}.overallhead .pct{margin-left:auto;font-size:12.5px;color:var(--muted)}.colcard.dragging{opacity:.55;outline:1px dashed var(--accent-line)}.colcard h4{-webkit-user-select:none;-moz-user-select:none;user-select:none}.colnode{position:relative;transition:transform .12s ease,box-shadow .15s ease,opacity .15s ease}.colnode:active{cursor:-webkit-grabbing;cursor:grabbing}.cn-actions{display:flex;gap:5px;margin-top:7px}.dropzone{margin-top:6px;padding:9px;border:1px dashed var(--line);border-radius:8px;text-align:center;font-size:11px;color:var(--faint)}.colgrid.connecting .colnode{opacity:.35}.colgrid.connecting .colnode.glimmer{opacity:1;cursor:pointer;animation:glimmer 1.25s ease-in-out infinite;border-color:var(--accent-line)}.colgrid.connecting .colnode.glimmer:hover{transform:translateY(-2px);box-shadow:0 0 0 1px var(--accent),0 8px 22px -10px var(--glow,rgba(0,0,0,.5))}.colgrid.connecting .colnode.source{opacity:1;border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.colgrid.connecting .colnode.linked{opacity:.2}@keyframes glimmer{0%,to{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 0,transparent)}50%{box-shadow:0 0 14px -2px color-mix(in srgb,var(--accent) 55%,transparent)}}.connectbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:11px 14px;margin-bottom:12px;border-radius:11px;background:color-mix(in srgb,var(--accent) 9%,var(--panel));border:1px solid var(--accent-line)}@media (prefers-reduced-motion:reduce){.colgrid.connecting .colnode.glimmer{animation:none;box-shadow:0 0 0 1px var(--accent)}}.skel-wrap{padding:4px 0}.skel{border-radius:8px;background:linear-gradient(90deg,var(--panel-2) 25%,color-mix(in srgb,var(--panel-2) 55%,var(--panel)) 37%,var(--panel-2) 63%);background-size:400% 100%;animation:skelshimmer 1.4s ease-in-out infinite}.skel-eyebrow{width:120px;height:11px;margin-bottom:14px}.skel-title{width:min(420px,60%);height:30px;margin-bottom:12px}.skel-sub{width:min(560px,80%);height:13px;margin-bottom:26px}.skel-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-gap:16px;gap:16px}.skel-card{height:210px}@media (max-width:1100px){.skel-grid{grid-template-columns:1fr}.skel-card{height:150px}}@keyframes skelshimmer{0%{background-position:100% 50%}to{background-position:0 50%}}@media (prefers-reduced-motion:reduce){.skel{animation:none}}.btn.small,.checkbox,.iconbtn,.mobilenav a,.tagchip{position:relative}.btn.small:after,.checkbox:after,.iconbtn:after{content:"";position:absolute;left:50%;top:50%;width:max(100%,44px);height:max(100%,44px);transform:translate(-50%,-50%)}@media (hover:none){.btn.small{padding:9px 12px;font-size:12px}.checkbox{width:24px;height:24px}.clitem{padding:12px 4px;gap:12px}.clitem .meta{gap:10px}.mobilenav a{padding:10px 2px;min-height:48px;justify-content:center}.rowitem{padding:11px 0}}@media (max-width:900px){.boardcard,.overallhead,.pagehead{position:relative;z-index:1}.pagehead:before{content:"";position:absolute;inset:-14px -16px -10px -16px;z-index:-1;background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 92%,transparent),color-mix(in srgb,var(--bg) 78%,transparent));border-radius:14px}[data-theme=dark] .shell:before,[data-theme=light] .shell:after{opacity:.38}}.progressbar{cursor:pointer}@media (hover:none){.progressbar.open .ptip,.progressbar:focus-visible .ptip{opacity:1;visibility:visible;transform:none}}.skiplink{position:absolute;left:8px;top:-60px;z-index:100;background:var(--accent);color:#fff;padding:10px 16px;border-radius:0 0 10px 10px;font-size:13px;text-decoration:none;transition:top .15s ease}.skiplink:focus{top:0}main.content:focus{outline:none}[tabindex]:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.undobar{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:60;display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:999px;background:var(--panel);border:1px solid var(--line-strong);box-shadow:var(--shadow);font-size:13px}@media (max-width:900px){.undobar{bottom:calc(74px + env(safe-area-inset-bottom))}}.btn.is-pending{opacity:.7;cursor:progress}button[aria-busy=true]{position:relative}