@import"https://fonts.googleapis.com/css2?family=Barlow:wght@300;400;500&family=Barlow+Condensed:wght@400;500;600&display=swap";:root{--bg: oklch(.155 .012 250);--bg-2: oklch(.18 .013 250);--surface: oklch(.215 .014 250);--surface-2: oklch(.245 .015 250);--surface-3: oklch(.285 .016 250);--border: oklch(.305 .018 250);--border-2: oklch(.395 .022 250);--border-strong:oklch(.52 .025 250);--text: oklch(.965 .005 250);--text-2: oklch(.76 .012 250);--text-3: oklch(.58 .015 250);--text-4: oklch(.45 .018 250);--cat-op: oklch(.78 .13 75);--cat-info: oklch(.78 .13 200);--cat-tech: oklch(.72 .14 260);--cat-gov: oklch(.72 .16 25);--pii: oklch(.72 .2 310);--manual: oklch(.78 .18 60);--risk: oklch(.66 .22 25);--sor: oklch(.75 .18 230);--unknown: oklch(.62 .015 250);--accent: oklch(.76 .13 200);--font-sans: "Geist", "Geist Sans", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "IBM Plex Mono", ui-monospace, monospace;--r-1: 4px;--r-2: 6px;--r-3: 8px;--r-4: 12px;--r-5: 16px;--canvas-grid-opacity: .5}html,body,#app,#root{margin:0;padding:0;width:100%;height:100%;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:14px;line-height:1.4;letter-spacing:-.005em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}button{font-family:inherit;color:inherit}::selection{background:color-mix(in oklch,var(--accent) 35%,transparent)}.scrollbox{scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}.scrollbox::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:4px}.app{display:grid;grid-template-columns:1fr;grid-template-rows:52px 1fr;width:100%;height:100%;overflow:hidden;background:var(--bg)}.topbar{grid-column:1;display:flex;align-items:center;gap:16px;padding:0 16px;border-bottom:1px solid var(--border);background:linear-gradient(to bottom,var(--bg-2),var(--bg));z-index:10}.brand{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--text);text-transform:uppercase}.brand-mark{width:22px;height:22px;border-radius:5px;background:radial-gradient(circle at 30% 30%,var(--accent) 0%,transparent 50%),linear-gradient(135deg,#2a5397,#1a538c,#00547f,#00536f,#005162);background:radial-gradient(circle at 30% 30%,var(--accent) 0%,transparent 50%),linear-gradient(135deg,#2a5397,#1a538c,color(xyz 0.07 0.078 0.221),color(xyz 0.059 0.073 0.185),color(xyz 0.049 0.068 0.154));position:relative;box-shadow:0 0 0 1px color-mix(in oklch,var(--accent) 40%,transparent),0 0 12px -2px color-mix(in oklch,var(--accent) 50%,transparent)}.topbar-divider{width:1px;height:18px;background:var(--border)}.topbar-meta{display:flex;align-items:baseline;gap:10px;min-width:0}.topbar-meta .name{font-size:13px;font-weight:500;color:var(--text);letter-spacing:-.01em;text-decoration:none;transition:color .12s ease}a.name:hover{color:var(--accent)}.tb-back{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-3);cursor:pointer;text-decoration:none;transition:background .12s ease,border-color .12s ease,color .12s ease;flex-shrink:0}.tb-back:hover{background:var(--surface-2);border-color:var(--border-2);color:var(--text)}.topbar-meta .domain{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);padding:2px 6px;border-radius:3px;border:1px solid var(--border);background:var(--surface)}.topbar-spacer{flex:1}.topbar-actions{display:flex;align-items:center;gap:6px}.tb-btn{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-2);font-size:12px;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.tb-btn:hover{background:var(--surface-2);border-color:var(--border-2);color:var(--text)}.tb-btn.is-active{background:color-mix(in oklch,var(--accent) 14%,var(--surface));border-color:color-mix(in oklch,var(--accent) 40%,var(--border));color:var(--text)}.tb-btn.icon-only{width:30px;padding:0;justify-content:center}.tb-stat{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);padding:0 6px}.tb-stat strong{color:var(--text-2);font-weight:500}.control-stack{position:absolute;top:68px;left:16px;display:flex;gap:6px;z-index:7}.ctrl-group{position:relative}.ctrl-trigger{display:inline-flex;align-items:center;gap:8px;padding:7px 10px 7px 12px;background:color-mix(in oklch,oklch(.26 .018 270) 46%,transparent);backdrop-filter:blur(28px) saturate(160%);-webkit-backdrop-filter:blur(28px) saturate(160%);border:1px solid color-mix(in oklch,oklch(.55 .025 270) 28%,transparent);color:var(--text);border-radius:8px;font:500 12.5px/1 var(--font-sans);letter-spacing:-.005em;cursor:pointer;box-shadow:0 1px #ffffff0d inset,0 8px 24px -12px #000;transition:background .18s ease,border-color .18s ease,color .18s ease}.ctrl-trigger:hover{background:color-mix(in oklch,oklch(.3 .02 270) 58%,transparent);border-color:color-mix(in oklch,oklch(.55 .025 270) 40%,transparent)}.ctrl-trigger.is-open{background:color-mix(in oklch,oklch(.32 .022 270) 62%,transparent);border-color:color-mix(in oklch,var(--accent) 45%,transparent);color:var(--text)}.ctrl-trigger .tc-label{font-weight:500}.ctrl-trigger .tc-sum{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);padding-left:8px;border-left:1px solid color-mix(in oklch,var(--border-2) 40%,transparent)}.ctrl-trigger.is-open .tc-sum{color:color-mix(in oklch,var(--accent) 70%,var(--text-2))}.ctrl-trigger .tc-chev{color:var(--text-3);display:inline-flex;transition:transform .24s ease}.ctrl-trigger.is-open .tc-chev{transform:rotate(180deg);color:var(--text-2)}.ctrl-panel{position:absolute;top:calc(100% + 8px);left:0;border-radius:14px;background:color-mix(in oklch,oklch(.26 .018 270) 46%,transparent);backdrop-filter:blur(28px) saturate(160%);-webkit-backdrop-filter:blur(28px) saturate(160%);border:1px solid color-mix(in oklch,oklch(.55 .025 270) 35%,transparent);box-shadow:0 1px #ffffff0f inset,0 30px 80px -30px #000,0 8px 24px -12px #000;overflow:hidden;display:flex;flex-direction:column;opacity:0;transform:translateY(-10px);pointer-events:none;transition:transform .48s cubic-bezier(.16,.84,.26,1),opacity .32s cubic-bezier(.4,0,.6,1);z-index:7}.ctrl-panel.is-open{opacity:1;transform:translateY(0);pointer-events:auto}.ctrl-panel-head{padding:14px 16px 10px;border-bottom:1px solid color-mix(in oklch,var(--border-2) 30%,transparent);display:flex;flex-direction:column;gap:2px;position:relative}.ctrl-kicker{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.ctrl-title{font-size:13px;font-weight:500;color:var(--text);letter-spacing:-.01em}.ctrl-clear{position:absolute;right:12px;top:12px;background:transparent;border:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);cursor:pointer;padding:4px 6px;border-radius:4px}.ctrl-clear:hover{background:color-mix(in oklch,oklch(1 0 0) 6%,transparent);color:var(--text)}.ctrl-panel-desc{padding:8px 16px 12px;font-size:12px;color:var(--text-2);line-height:1.45;border-bottom:1px solid color-mix(in oklch,var(--border-2) 24%,transparent)}.ctrl-subhead{padding:12px 16px 6px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.ctrl-list{display:flex;flex-direction:column;padding:6px;gap:1px}.ctrl-item{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:center;padding:8px 10px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text);font:inherit;font-size:12.5px;text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease;--item-accent: var(--accent)}.ctrl-item:hover{background:color-mix(in oklch,oklch(1 0 0) 5%,transparent)}.ctrl-item.is-active{background:color-mix(in oklch,var(--item-accent) 14%,transparent);border-color:color-mix(in oklch,var(--item-accent) 40%,transparent)}.ctrl-item-dot{width:8px;height:8px;border-radius:50%;background:var(--border-2);margin-left:7px;transition:background .14s ease,box-shadow .14s ease}.ctrl-item.is-active .ctrl-item-dot{background:var(--item-accent);box-shadow:0 0 12px -2px var(--item-accent)}.ctrl-item-body{display:flex;flex-direction:column;gap:2px;min-width:0}.ctrl-item-title{font-size:13px;font-weight:500;color:var(--text);letter-spacing:-.01em;line-height:1.2}.ctrl-item-sub{font-size:11px;color:var(--text-3);line-height:1.3}.ctrl-toggle{width:20px;height:12px;border-radius:8px;background:var(--surface-3);border:1px solid var(--border-2);position:relative;margin-left:1px;transition:background .14s ease,border-color .14s ease}.ctrl-toggle-fill{position:absolute;top:1px;left:1px;width:8px;height:8px;border-radius:50%;background:var(--text-3);transition:transform .24s cubic-bezier(.4,0,.25,1),background .14s ease}.ctrl-item.is-active .ctrl-toggle{background:color-mix(in oklch,var(--item-accent) 65%,transparent);border-color:color-mix(in oklch,var(--item-accent) 70%,transparent)}.ctrl-item.is-active .ctrl-toggle-fill{background:var(--text);transform:translate(8px);box-shadow:0 0 8px -2px var(--item-accent)}.ctrl-transport{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;gap:12px}.ctrl-controls{display:flex;gap:4px}.ctrl-controls .tbtn{width:30px;height:30px;border-radius:7px;border:1px solid color-mix(in oklch,var(--border-2) 50%,transparent);background:color-mix(in oklch,oklch(.32 .02 270) 50%,transparent);color:var(--text-2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .14s ease,color .14s ease,border-color .14s ease}.ctrl-controls .tbtn:hover{background:color-mix(in oklch,oklch(.36 .022 270) 60%,transparent);color:var(--text)}.ctrl-controls .tbtn.play{background:color-mix(in oklch,var(--accent) 24%,transparent);border-color:color-mix(in oklch,var(--accent) 50%,transparent);color:var(--text)}.ctrl-controls .tbtn.play.is-playing{background:color-mix(in oklch,var(--accent) 40%,transparent);border-color:var(--accent);box-shadow:0 0 18px -6px var(--accent)}.ctrl-step{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--text-3);white-space:nowrap}.ctrl-step strong{color:var(--text);font-weight:500}.ctrl-progress{margin:0 16px 14px;height:3px;background:var(--surface-3);border-radius:2px;overflow:hidden;position:relative}.ctrl-progress-bar{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,color-mix(in oklch,var(--accent) 80%,transparent),var(--accent));box-shadow:0 0 12px -2px var(--accent);border-radius:2px;transition:width .24s ease}.canvas-wrap{grid-row:2;grid-column:1;position:relative;overflow:hidden;background:var(--bg);isolation:isolate}.canvas-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(1200px 800px at 30% 20%,color-mix(in oklch,var(--cat-tech) 6%,transparent),transparent 60%),radial-gradient(900px 600px at 70% 80%,color-mix(in oklch,var(--cat-info) 5%,transparent),transparent 60%),var(--bg);pointer-events:none}.canvas-grid{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:var(--canvas-grid-opacity);background-image:radial-gradient(circle,oklch(.35 .012 250) 1px,transparent 1.5px);background-size:26px 26px;mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 40%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 40%,transparent 100%)}.viewport{position:absolute;top:0;right:0;bottom:0;left:0;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.viewport.is-panning{cursor:grabbing}.stage{position:absolute;top:0;left:0;transform-origin:0 0;will-change:transform}.canvas-corner{position:absolute;display:flex;gap:6px;z-index:5}.canvas-corner.tl{top:12px;left:12px;flex-direction:column;align-items:flex-start}.canvas-corner.tr{top:12px;right:12px;transition:right .88s cubic-bezier(.16,.84,.26,1)}.app.has-inspector .canvas-corner.tr{right:460px!important}.canvas-edit-btn{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:7px;border:1px solid color-mix(in oklch,oklch(.55 .025 270) 28%,transparent);background:color-mix(in oklch,oklch(.26 .018 270) 50%,transparent);backdrop-filter:blur(28px) saturate(160%);-webkit-backdrop-filter:blur(28px) saturate(160%);color:var(--text-2);font:500 12px/1 var(--font-sans);letter-spacing:.02em;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease;text-transform:uppercase;letter-spacing:.06em;box-shadow:0 4px 14px -6px #0006}.canvas-edit-btn:hover{background:color-mix(in oklch,oklch(.3 .022 270) 65%,transparent);color:var(--text);border-color:color-mix(in oklch,oklch(.55 .025 270) 45%,transparent)}.canvas-edit-btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.canvas-edit-btn.is-on{background:color-mix(in oklch,var(--accent) 20%,oklch(.26 .018 270) 50%);border-color:color-mix(in oklch,var(--accent) 55%,transparent);color:var(--text);box-shadow:0 0 0 1px color-mix(in oklch,var(--accent) 30%,transparent),0 4px 14px -6px color-mix(in oklch,var(--accent) 40%,transparent)}.canvas-corner.br{bottom:16px;right:16px;flex-direction:column;align-items:flex-end;transition:right .88s cubic-bezier(.16,.84,.26,1)}.app.has-inspector .canvas-corner.br{right:460px}.canvas-corner.tl{display:none}.transport{display:none!important}.canvas-corner.bl{bottom:16px;left:16px}.zoom-cluster{display:flex;align-items:center;gap:1px;background:color-mix(in oklch,var(--surface) 70%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:7px;padding:2px;box-shadow:0 4px 14px -8px #000}.zoom-cluster button{width:26px;height:26px;background:transparent;border:0;color:var(--text-2);border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center}.zoom-cluster button:hover{background:var(--surface-2);color:var(--text)}.zoom-cluster .level{font-family:var(--font-mono);font-size:10.5px;padding:0 8px;color:var(--text-2);letter-spacing:.04em}.canvas-statusbar{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);padding:6px 10px;background:color-mix(in oklch,var(--surface) 70%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:7px}.canvas-statusbar .dot{width:6px;height:6px;border-radius:50%;background:var(--cat-info);box-shadow:0 0 8px var(--cat-info)}.view-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:color-mix(in oklch,var(--surface) 70%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:999px;font-size:12px;color:var(--text)}.view-pill .what{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.overlay-summary{display:flex;gap:6px;align-items:center}.overlay-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:500;background:var(--surface);border:1px solid var(--border)}.overlay-chip .blob{width:8px;height:8px;border-radius:50%;box-shadow:0 0 8px currentColor}.overlay-chip[data-id=pii]{color:var(--pii);background:color-mix(in oklch,var(--pii) 14%,var(--surface));border-color:color-mix(in oklch,var(--pii) 35%,var(--border))}.overlay-chip[data-id=manual_process]{color:var(--manual);background:color-mix(in oklch,var(--manual) 14%,var(--surface));border-color:color-mix(in oklch,var(--manual) 35%,var(--border))}.overlay-chip[data-id=high_risk]{color:var(--risk);background:color-mix(in oklch,var(--risk) 14%,var(--surface));border-color:color-mix(in oklch,var(--risk) 35%,var(--border))}.overlay-chip[data-id=system_of_record]{color:var(--sor);background:color-mix(in oklch,var(--sor) 14%,var(--surface));border-color:color-mix(in oklch,var(--sor) 35%,var(--border))}.overlay-chip[data-id=unknowns]{color:var(--text-2);background:var(--surface)}.node{position:absolute;--cat: var(--cat-tech);--node-w: 188px;width:var(--node-w);color:var(--text);cursor:pointer;transition:opacity .2s ease,transform .2s ease,filter .2s ease}.node[data-cat=operational]{--cat: var(--cat-op)}.node[data-cat=information]{--cat: var(--cat-info)}.node[data-cat=technical]{--cat: var(--cat-tech)}.node[data-cat=governance]{--cat: var(--cat-gov)}.node-card{position:relative;display:grid;grid-template-columns:32px 1fr auto;gap:8px;align-items:center;padding:8px 10px 8px 8px;background:linear-gradient(180deg,color-mix(in oklch,var(--cat) 8%,var(--surface)),color-mix(in oklch,var(--cat) 3%,var(--surface)));border:1px solid color-mix(in oklch,var(--cat) 25%,var(--border));border-radius:9px;box-shadow:0 1px color-mix(in oklch,var(--cat) 20%,transparent) inset,0 8px 24px -16px #000;overflow:hidden}.node-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--cat),color-mix(in oklch,var(--cat) 60%,transparent));box-shadow:0 0 12px -2px var(--cat)}.node-icon{width:28px;height:28px;border-radius:6px;background:color-mix(in oklch,var(--cat) 18%,var(--surface-2));border:1px solid color-mix(in oklch,var(--cat) 30%,var(--border));display:flex;align-items:center;justify-content:center;color:var(--cat);flex-shrink:0}.node-body{min-width:0}.node-label{font-size:12.5px;font-weight:500;letter-spacing:-.01em;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.node-type{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:color-mix(in oklch,var(--cat) 70%,var(--text-3));margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-badges{display:flex;flex-direction:column;gap:3px;align-items:flex-end;flex-shrink:0}.badge{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;padding:2px 5px;border-radius:3px;background:var(--surface-3);color:var(--text-3);line-height:1;border:1px solid var(--border)}.badge[data-kind=pii]{background:color-mix(in oklch,var(--pii) 16%,var(--surface));color:var(--pii);border-color:color-mix(in oklch,var(--pii) 30%,var(--border))}.badge[data-kind=manual]{background:color-mix(in oklch,var(--manual) 16%,var(--surface));color:var(--manual);border-color:color-mix(in oklch,var(--manual) 30%,var(--border))}.badge[data-kind=risk]{background:color-mix(in oklch,var(--risk) 16%,var(--surface));color:var(--risk);border-color:color-mix(in oklch,var(--risk) 30%,var(--border))}.badge[data-kind=sor]{background:color-mix(in oklch,var(--sor) 16%,var(--surface));color:var(--sor);border-color:color-mix(in oklch,var(--sor) 30%,var(--border))}.badge[data-kind=unknown]{background:var(--surface-2);color:var(--text-3);border-style:dashed}.node:hover .node-card{border-color:color-mix(in oklch,var(--cat) 60%,var(--border));box-shadow:0 1px color-mix(in oklch,var(--cat) 25%,transparent) inset,0 0 0 1px color-mix(in oklch,var(--cat) 35%,transparent),0 8px 28px -12px color-mix(in oklch,var(--cat) 50%,transparent)}.node.is-selected .node-card{border-color:var(--cat);box-shadow:0 1px color-mix(in oklch,var(--cat) 35%,transparent) inset,0 0 0 1px var(--cat),0 0 28px -6px var(--cat)}.node.is-dimmed{opacity:.22;filter:saturate(.6)}.node.is-highlight .node-card{border-color:color-mix(in oklch,var(--accent-overlay, var(--cat)) 70%,var(--border));box-shadow:0 1px color-mix(in oklch,var(--accent-overlay, var(--cat)) 30%,transparent) inset,0 0 0 1px color-mix(in oklch,var(--accent-overlay, var(--cat)) 45%,transparent),0 0 36px -8px var(--accent-overlay, var(--cat))}.node.is-replay-active .node-card{animation:replayPulse 1.2s ease-in-out infinite}@keyframes replayPulse{0%,to{box-shadow:0 0 0 1px var(--cat),0 0 22px -8px var(--cat)}50%{box-shadow:0 0 0 2px var(--cat),0 0 48px -4px var(--cat)}}.node.has-questions .node-card:after{content:"?";position:absolute;top:-6px;right:-6px;width:16px;height:16px;border-radius:50%;background:var(--surface-2);border:1px dashed var(--border-2);color:var(--text-3);font-family:var(--font-mono);font-size:10px;display:flex;align-items:center;justify-content:center;line-height:1}.node.overlay-unknowns .node-card{border-style:dashed}.edge-layer{position:absolute;top:0;left:0;pointer-events:none;overflow:visible}.edge-path{fill:none;stroke:#464e57;stroke-width:1.4;transition:stroke .2s ease,stroke-width .2s ease,opacity .2s ease,filter .2s ease}.edge-path.is-manual{stroke-dasharray:4 3}.edge-path.is-batch{stroke-dasharray:1 4;stroke-linecap:round}.edge-shimmer{fill:none;stroke:color-mix(in oklch,var(--accent) 60%,transparent);stroke-width:1.4;stroke-dasharray:4 60;stroke-linecap:round;opacity:.55;pointer-events:none;animation:shimmer 5s linear infinite}@keyframes shimmer{0%{stroke-dashoffset:64}to{stroke-dashoffset:0}}.edge-arrow{fill:#6a737c;transition:fill .2s ease,opacity .2s ease,filter .2s ease}.edge-hit{fill:none;stroke:transparent;stroke-width:16;cursor:pointer;pointer-events:stroke}.edge-group:hover:not(.is-selected):not(.is-out-of-view) .edge-path{stroke:color-mix(in oklch,var(--accent) 70%,oklch(.55 .025 250));stroke-width:2.8;filter:drop-shadow(0 0 5px color-mix(in oklch,var(--accent) 55%,transparent))}.edge-group:hover:not(.is-selected):not(.is-out-of-view) .edge-arrow{fill:color-mix(in oklch,var(--accent) 80%,white);filter:drop-shadow(0 0 3px color-mix(in oklch,var(--accent) 60%,transparent))}.edge-group.is-highlight:hover .edge-path{filter:drop-shadow(0 0 10px var(--edge-overlay, var(--accent)));stroke-width:3}.edge-group.is-selected .edge-path{stroke:var(--accent);stroke-width:2.2}.edge-group.is-selected .edge-arrow{fill:var(--accent)}.edge-group.is-selected .edge-shimmer{opacity:1;stroke-width:2.2}.edge-group.is-related .edge-path{stroke:color-mix(in oklch,var(--accent) 60%,oklch(.42 .018 250))}.edge-group.is-dimmed .edge-path,.edge-group.is-dimmed .edge-shimmer,.edge-group.is-dimmed .edge-arrow{opacity:.18}.edge-group.is-highlight .edge-path{stroke:var(--edge-overlay, var(--accent));stroke-width:2;filter:drop-shadow(0 0 6px var(--edge-overlay, var(--accent)))}.edge-group.is-highlight .edge-arrow{fill:var(--edge-overlay, var(--accent))}.edge-group.is-highlight .edge-shimmer{stroke:var(--edge-overlay, var(--accent));opacity:.9}.edge-group.is-replay-active .edge-path{stroke:var(--accent);stroke-width:2;filter:drop-shadow(0 0 8px var(--accent))}.replay-packet{fill:var(--accent);filter:drop-shadow(0 0 6px var(--accent))}.edge-label{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;fill:var(--text-3);paint-order:stroke;stroke:var(--bg);stroke-width:4;pointer-events:none;-webkit-user-select:none;user-select:none}.edge-type-chip-bg{fill:var(--surface);stroke:var(--border);stroke-width:1}.edge-type-chip-text{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.08em;text-transform:uppercase;fill:var(--text-3);pointer-events:none}.edge-group.is-selected .edge-type-chip-bg,.edge-group.is-highlight .edge-type-chip-bg{fill:color-mix(in oklch,var(--accent) 20%,var(--surface));stroke:color-mix(in oklch,var(--accent) 50%,var(--border))}.inspector{position:absolute;top:68px;right:16px;bottom:16px;width:420px;border-radius:14px;--inspector-tint: oklch(.55 .025 270);background:linear-gradient(to right,color-mix(in oklch,var(--inspector-tint) 18%,transparent),transparent 28%,transparent 100%),color-mix(in oklch,oklch(.26 .018 270) 46%,transparent);backdrop-filter:blur(28px) saturate(160%);-webkit-backdrop-filter:blur(28px) saturate(160%);border:1px solid color-mix(in oklch,oklch(.55 .025 270) 35%,transparent);border-left:1px solid color-mix(in oklch,var(--inspector-tint) 50%,transparent);box-shadow:inset 1px 0 color-mix(in oklch,var(--inspector-tint) 30%,transparent),inset 16px 0 32px -20px color-mix(in oklch,var(--inspector-tint) 50%,transparent),0 1px #ffffff0f inset,0 30px 80px -30px #000,0 8px 24px -12px #000;display:flex;flex-direction:column;overflow:hidden;z-index:8;transform:translate(calc(100% + 28px));opacity:0;transition:transform .88s cubic-bezier(.16,.84,.26,1),opacity .54s cubic-bezier(.4,0,.6,1),background .6s ease,border-color .6s ease,box-shadow .6s ease;pointer-events:none}.inspector.is-open{transform:translate(0);opacity:1;pointer-events:auto}.inspector-head{padding:14px 16px 12px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.inspector-head .breadcrumb{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.inspector-head .breadcrumb .cat-blob{width:8px;height:8px;border-radius:2px;background:var(--cat, var(--cat-tech));box-shadow:0 0 8px var(--cat, var(--cat-tech))}.inspector-head .actions{display:flex;gap:4px;margin-left:auto}.icon-btn{width:24px;height:24px;border-radius:4px;border:1px solid var(--border);background:var(--surface);color:var(--text-3);display:flex;align-items:center;justify-content:center;cursor:pointer}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.inspector-head .title-row{display:flex;align-items:flex-start;gap:12px}.inspector-head .title-icon{width:36px;height:36px;border-radius:8px;background:color-mix(in oklch,var(--cat, var(--cat-tech)) 18%,var(--surface-2));border:1px solid color-mix(in oklch,var(--cat, var(--cat-tech)) 30%,var(--border));color:var(--cat, var(--cat-tech));display:flex;align-items:center;justify-content:center;flex-shrink:0}.inspector-head .title{font-size:18px;font-weight:500;letter-spacing:-.015em;color:var(--text);line-height:1.2}.inspector-head .subtitle{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);margin-top:4px}.inspector-head .pillrow{display:flex;flex-wrap:wrap;gap:4px}.inspector-body{flex:1;overflow-y:auto;padding:4px 0 24px}.section{border-bottom:1px solid var(--border);padding:14px 16px 16px}.section-title{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);margin:0 0 10px;display:flex;align-items:center;gap:6px}.section-title .count{font-family:var(--font-mono);font-size:10px;color:var(--text-4);padding:0 4px;border-radius:3px;background:var(--surface);border:1px solid var(--border)}.section p{margin:0 0 6px;color:var(--text-2);font-size:13px;line-height:1.5}.kv{display:grid;grid-template-columns:116px 1fr;gap:6px 10px;font-size:12.5px}.kv dt{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);align-self:center}.kv dd{margin:0;color:var(--text);word-break:break-word}.confidence{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2)}.confidence .bars{display:flex;gap:2px}.confidence .bars span{width:4px;height:10px;background:var(--border-2);border-radius:1px}.confidence.high .bars span:nth-child(1),.confidence.high .bars span:nth-child(2),.confidence.high .bars span:nth-child(3){background:#55c975;box-shadow:0 0 6px -2px #55c975}.confidence.medium .bars span:nth-child(1),.confidence.medium .bars span:nth-child(2){background:var(--manual);box-shadow:0 0 6px -2px var(--manual)}.confidence.low .bars span:nth-child(1){background:var(--risk);box-shadow:0 0 6px -2px var(--risk)}.risk-strip{display:flex;gap:1px}.risk-strip span{flex:1;height:4px;background:var(--border-2)}.risk-strip[data-level=low] span:nth-child(1){background:#55c975}.risk-strip[data-level=medium] span:nth-child(1),.risk-strip[data-level=medium] span:nth-child(2){background:var(--manual)}.risk-strip[data-level=high] span{background:var(--risk)}.tag{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:10.5px;padding:3px 6px;border-radius:4px;background:var(--surface);color:var(--text-2);border:1px solid var(--border)}.tag.pii{background:color-mix(in oklch,var(--pii) 14%,var(--surface));color:var(--pii);border-color:color-mix(in oklch,var(--pii) 30%,var(--border))}.tag.manual{background:color-mix(in oklch,var(--manual) 14%,var(--surface));color:var(--manual);border-color:color-mix(in oklch,var(--manual) 30%,var(--border))}.tag.risk{background:color-mix(in oklch,var(--risk) 14%,var(--surface));color:var(--risk);border-color:color-mix(in oklch,var(--risk) 30%,var(--border))}.tag.sor{background:color-mix(in oklch,var(--sor) 14%,var(--surface));color:var(--sor);border-color:color-mix(in oklch,var(--sor) 30%,var(--border))}.questions-list,.related-list,.evidence-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.q-item{display:flex;gap:8px;padding:8px 10px;background:color-mix(in oklch,var(--manual) 8%,var(--surface));border:1px solid color-mix(in oklch,var(--manual) 22%,var(--border));border-radius:6px;font-size:12.5px;color:var(--text);line-height:1.4}.q-item:before{content:"?";font-family:var(--font-mono);flex-shrink:0;width:18px;height:18px;border-radius:4px;background:color-mix(in oklch,var(--manual) 20%,var(--surface-2));color:var(--manual);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600}.rel-item{display:grid;grid-template-columns:24px 1fr auto;gap:8px;align-items:center;padding:7px 9px;border-radius:6px;background:var(--surface);border:1px solid var(--border);cursor:pointer;transition:background .12s ease,border-color .12s ease}.rel-item:hover{background:var(--surface-2);border-color:var(--border-2)}.rel-item .ic{width:20px;height:20px;border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--rel-cat, var(--cat-tech));background:color-mix(in oklch,var(--rel-cat, var(--cat-tech)) 16%,var(--surface-2))}.rel-item .lbl{font-size:12.5px;color:var(--text)}.rel-item .role{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.rel-item.is-out-of-view{opacity:.45;cursor:not-allowed;background:color-mix(in oklch,var(--surface) 50%,transparent);border-style:dashed}.rel-item.is-out-of-view:hover{background:color-mix(in oklch,var(--surface) 50%,transparent);border-color:var(--border)}.rel-item.is-out-of-view .role{color:var(--text-4);font-style:italic}.ev-item{padding:9px 11px;border-radius:6px;background:var(--surface);border:1px solid var(--border);font-size:12px;color:var(--text-2)}.ev-item .ev-head{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);margin-bottom:4px}.ev-item .ev-title{color:var(--text);font-weight:500;font-family:var(--font-sans);letter-spacing:-.01em;font-size:13px;text-transform:none}.ev-item .ev-excerpt{color:var(--text-2);margin-top:6px;font-style:italic;border-left:2px solid var(--border-2);padding-left:8px}.inspector-empty{padding:32px 18px;text-align:left;display:flex;flex-direction:column;gap:16px}.inspector-empty .hint{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.inspector-empty h2{font-size:19px;margin:0;letter-spacing:-.015em;font-weight:500}.inspector-empty .stats{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stat-card{padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:7px}.stat-card .v{font-family:var(--font-mono);font-size:20px;font-weight:500;color:var(--text);letter-spacing:-.02em}.stat-card .k{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin-top:2px}.legend{display:flex;flex-direction:column;gap:6px}.legend-row{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-2)}.legend-row .swatch{width:14px;height:14px;border-radius:3px;background:var(--c);box-shadow:0 0 8px -2px var(--c)}.legend-row .lab{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.transport{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:8px 10px 8px 14px;background:color-mix(in oklch,var(--bg-2) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--border-2);border-radius:10px;box-shadow:0 16px 48px -16px #000,0 2px #ffffff0a inset;z-index:6;min-width:540px}.transport .scenario{display:flex;align-items:center;gap:10px;padding-right:10px;border-right:1px solid var(--border)}.transport .scenario .lbl{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.transport .scenario .nm{font-size:13px;font-weight:500;color:var(--text);letter-spacing:-.01em}.transport .scenario select{background:transparent;border:0;color:var(--text);font:inherit;font-size:13px;font-weight:500;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:14px;background-image:linear-gradient(45deg,transparent 50%,var(--text-3) 50%),linear-gradient(135deg,var(--text-3) 50%,transparent 50%);background-position:calc(100% - 8px) 50%,calc(100% - 4px) 50%;background-size:4px 4px;background-repeat:no-repeat}.transport .controls{display:flex;gap:4px}.transport .tbtn{width:30px;height:30px;border-radius:7px;border:1px solid var(--border);background:var(--surface);color:var(--text-2);display:flex;align-items:center;justify-content:center;cursor:pointer}.transport .tbtn:hover{background:var(--surface-2);color:var(--text)}.transport .tbtn.play{background:color-mix(in oklch,var(--accent) 20%,var(--surface));border-color:color-mix(in oklch,var(--accent) 45%,var(--border));color:var(--text)}.transport .tbtn.play.is-playing{background:color-mix(in oklch,var(--accent) 36%,var(--surface));border-color:var(--accent);box-shadow:0 0 18px -6px var(--accent)}.transport .timeline{flex:1;display:flex;align-items:center;gap:10px;padding:0 8px}.transport .progress{flex:1;position:relative;height:4px;background:var(--surface-3);border-radius:2px;overflow:hidden;cursor:pointer}.transport .progress .bar{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,color-mix(in oklch,var(--accent) 80%,transparent),var(--accent));box-shadow:0 0 12px -2px var(--accent);border-radius:2px;transition:width .2s ease}.transport .progress .ticks{position:absolute;top:0;right:0;bottom:0;left:0;display:flex}.transport .progress .tick{flex:1;border-right:1px solid var(--bg-2)}.transport .progress .tick:last-child{border-right:0}.transport .step{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;color:var(--text-3);white-space:nowrap;min-width:50px;text-align:right}.transport .step strong{color:var(--text);font-weight:500}.row{display:flex;align-items:center;gap:6px}.lane-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.lane-group{position:absolute;left:-240px;right:-240px;display:flex;align-items:flex-start;padding-left:16px;transition:opacity .32s ease}.lane-group.is-odd{background:color-mix(in oklch,oklch(1 0 0) 1.6%,transparent)}.lane-group.is-even{background:transparent}.lane-group:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent 0%,color-mix(in oklch,oklch(.55 .025 270) 26%,transparent) 8%,color-mix(in oklch,oklch(.55 .025 270) 26%,transparent) 92%,transparent 100%)}.lane-group:first-child:before{background:none}.lane-group-label{position:sticky;left:16px;top:12px;display:flex;flex-direction:column;gap:3px;padding:8px 12px;width:200px;max-width:200px;box-sizing:border-box;border-radius:6px;background:color-mix(in oklch,var(--bg-2) 80%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid color-mix(in oklch,var(--border) 60%,transparent);border-left:2px solid color-mix(in oklch,var(--accent) 40%,var(--border-2));z-index:1;white-space:nowrap;overflow:hidden}.lgl-meta{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-4)}.lgl-name{font-size:13px;font-weight:500;color:color-mix(in oklch,var(--text) 80%,transparent);letter-spacing:-.01em}.lane-internal-divider{position:absolute;left:0;right:0;height:0;border-top:1px dashed color-mix(in oklch,var(--border-2) 50%,transparent);pointer-events:none}.app.is-migrating .lane-group{opacity:0}.canvas-noise{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;pointer-events:none;opacity:.14;mix-blend-mode:screen;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' seed='3'/><feColorMatrix values='0 0 0 0 0.8  0 0 0 0 0.85  0 0 0 0 1  0 0 0 0.55 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");background-size:240px 240px;animation:noiseDrift 26s linear infinite}@keyframes noiseDrift{0%{background-position:0px 0px}to{background-position:-240px -240px}}.canvas-topo{position:absolute;top:-8%;right:-8%;bottom:-8%;left:-8%;pointer-events:none;opacity:.55;mix-blend-mode:screen;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='1200' height='1200'><defs><filter id='t' x='0' y='0' width='100%25' height='100%25'><feTurbulence type='fractalNoise' baseFrequency='0.0045' numOctaves='3' seed='8'/><feColorMatrix values='0 0 0 0 0.55  0 0 0 0 0.66  0 0 0 0 0.92  0 0 0 240 -116' result='band'/><feMorphology operator='erode' radius='0.6' in='band' result='inner'/><feComposite in='band' in2='inner' operator='out' result='line'/><feColorMatrix in='line' values='0 0 0 0 0.62  0 0 0 0 0.72  0 0 0 0 0.95  0 0 0 0.32 0'/></filter></defs><rect width='100%25' height='100%25' filter='url(%23t)'/></svg>");background-size:1100px 1100px;background-repeat:repeat;animation:topoDrift 90s linear infinite}@keyframes topoDrift{0%{background-position:0px 0px}to{background-position:-1100px -550px}}.node-card{--mx: 50%;--my: -20%;background-image:radial-gradient(circle 80px at var(--mx) var(--my),color-mix(in oklch,white 14%,transparent),transparent 70%)}.node-card:after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in oklch,white 18%,transparent),transparent);pointer-events:none}.node{transition:left .54s cubic-bezier(.16,.84,.26,1),top .54s cubic-bezier(.16,.84,.26,1),opacity .26s ease,transform .6s cubic-bezier(.22,.8,.32,1),filter .24s ease}.node.is-dimmed{filter:blur(2px) saturate(.5);opacity:.32}.edge-group{transition:opacity .26s ease,filter .24s ease}.edge-group.is-dimmed{filter:blur(1.4px) saturate(.5)}.edge-group.is-migrating{opacity:.12;pointer-events:none}.edge-group.is-hidden{display:none}.signal-particle{fill:color-mix(in oklch,var(--accent) 90%,white);filter:drop-shadow(0 0 5px color-mix(in oklch,var(--accent) 80%,transparent)) drop-shadow(0 0 1px white);pointer-events:none}.signal-particle.manual{fill:var(--manual);filter:drop-shadow(0 0 5px color-mix(in oklch,var(--manual) 80%,transparent)) drop-shadow(0 0 1px white)}.signal-particle.batch{fill:var(--cat-info);filter:drop-shadow(0 0 5px color-mix(in oklch,var(--cat-info) 80%,transparent))}.edge-group.is-highlight .signal-particle{fill:var(--edge-overlay, var(--accent));filter:drop-shadow(0 0 8px var(--edge-overlay, var(--accent)))}.stage.is-genesis .node{opacity:0;transform:translateY(8px) scale(.96);animation:genesisNode 1.1s cubic-bezier(.16,.84,.26,1) forwards;animation-delay:var(--genesis-delay, 0ms)}@keyframes genesisNode{to{opacity:1;transform:translateY(0) scale(1)}}.stage.is-genesis .edge-path,.stage.is-genesis .edge-arrow,.stage.is-genesis .edge-type-chip-bg,.stage.is-genesis .edge-type-chip-text{opacity:0;animation:genesisEdgeReveal .72s ease forwards;animation-delay:var(--genesis-delay, 0ms)}.stage.is-genesis .edge-path{stroke-dasharray:2000;stroke-dashoffset:2000;animation:genesisEdgeReveal 80ms ease 0ms forwards,genesisEdgeDraw 1.7s cubic-bezier(.4,0,.2,1) var(--genesis-delay, 0ms) forwards}@keyframes genesisEdgeDraw{0%{stroke-dashoffset:2000;opacity:.9}to{stroke-dashoffset:0;opacity:1}}@keyframes genesisEdgeReveal{to{opacity:1}}.stage.is-genesis .signal-particle{opacity:0}.scanner-sweep{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:4;--scan-color: var(--accent)}.scanner-sweep .scan-line{position:absolute;left:0;right:0;top:-10%;height:220px;background:linear-gradient(180deg,transparent,color-mix(in oklch,var(--scan-color) 14%,transparent) 60%,color-mix(in oklch,var(--scan-color) 32%,transparent) 96%,color-mix(in oklch,var(--scan-color) 65%,transparent) 100%);border-bottom:1px solid color-mix(in oklch,var(--scan-color) 90%,transparent);filter:blur(.5px);box-shadow:0 0 36px color-mix(in oklch,var(--scan-color) 50%,transparent),0 0 2px color-mix(in oklch,var(--scan-color) 90%,transparent);animation:scanSweep 1.1s cubic-bezier(.4,0,.2,1) forwards}@keyframes scanSweep{0%{top:-10%;opacity:0}10%{opacity:1}90%{opacity:1}to{top:105%;opacity:0}}.node.is-out-of-view{pointer-events:none;opacity:0}.node.is-out-of-view[data-cat=operational]{transform:translateY(-160px) scale(.92)}.node.is-out-of-view[data-cat=information]{transform:translate(160px) scale(.92)}.node.is-out-of-view[data-cat=technical]{transform:translate(-160px) scale(.92)}.node.is-out-of-view[data-cat=governance]{transform:translateY(160px) scale(.92)}.edge-group.is-out-of-view{opacity:0;transition:opacity .48s ease}.export-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:color-mix(in oklch,var(--bg) 70%,transparent);backdrop-filter:blur(10px) saturate(120%);-webkit-backdrop-filter:blur(10px) saturate(120%);display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .24s cubic-bezier(.4,0,.6,1)}.export-overlay.is-open{opacity:1;pointer-events:auto}.export-modal{position:relative;width:min(640px,100%);max-height:calc(100vh - 48px);overflow-y:auto;border-radius:16px;background:radial-gradient(900px 320px at 50% -120px,color-mix(in oklch,var(--accent) 14%,transparent),transparent 70%),color-mix(in oklch,oklch(.24 .018 270) 88%,transparent);backdrop-filter:blur(40px) saturate(170%);-webkit-backdrop-filter:blur(40px) saturate(170%);border:1px solid color-mix(in oklch,oklch(.55 .025 270) 38%,transparent);box-shadow:0 1px #ffffff12 inset,0 40px 100px -30px #000,0 8px 24px -12px #000;padding:26px 26px 20px;transform:translateY(12px) scale(.985);opacity:0;transition:transform .36s cubic-bezier(.16,.84,.26,1),opacity .28s cubic-bezier(.4,0,.6,1)}.export-overlay.is-open .export-modal{transform:translateY(0) scale(1);opacity:1}.export-head{position:relative;padding-right:36px;margin-bottom:22px}.export-kicker{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:color-mix(in oklch,var(--accent) 70%,var(--text-3));margin-bottom:8px}.export-title{font-size:22px;font-weight:500;letter-spacing:-.02em;color:var(--text);margin:0 0 6px;line-height:1.15}.export-sub{font-size:13px;color:var(--text-2);line-height:1.5;margin:0;max-width:56ch}.export-close{position:absolute;top:-4px;right:-4px;width:30px;height:30px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-3);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.export-close:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-2)}.export-primary-wrap{margin-bottom:22px}.export-primary{display:grid;grid-template-columns:44px 1fr 40px;gap:16px;align-items:center;width:100%;padding:16px 18px;border-radius:12px;text-align:left;cursor:pointer;color:var(--text);background:linear-gradient(180deg,color-mix(in oklch,var(--accent) 22%,var(--surface)),color-mix(in oklch,var(--accent) 10%,var(--surface)));border:1px solid color-mix(in oklch,var(--accent) 45%,var(--border));box-shadow:0 1px color-mix(in oklch,white 14%,transparent) inset,0 0 0 1px color-mix(in oklch,var(--accent) 18%,transparent),0 14px 40px -16px color-mix(in oklch,var(--accent) 60%,transparent);font:inherit;transition:transform .16s ease,box-shadow .2s ease,border-color .16s ease,background .2s ease}.export-primary:hover{transform:translateY(-1px);border-color:color-mix(in oklch,var(--accent) 70%,var(--border));box-shadow:0 1px color-mix(in oklch,white 18%,transparent) inset,0 0 0 1px color-mix(in oklch,var(--accent) 28%,transparent),0 22px 56px -16px color-mix(in oklch,var(--accent) 75%,transparent)}.export-primary:active{transform:translateY(0)}.export-primary .ep-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:color-mix(in oklch,var(--accent) 28%,var(--surface-2));color:var(--accent);border:1px solid color-mix(in oklch,var(--accent) 50%,var(--border-2));box-shadow:0 0 16px -4px color-mix(in oklch,var(--accent) 60%,transparent)}.export-primary .ep-body{min-width:0;display:flex;flex-direction:column;gap:3px}.export-primary .ep-row{display:flex;align-items:center;gap:8px}.export-primary .ep-title{font-size:15px;font-weight:500;letter-spacing:-.01em;color:var(--text)}.export-primary .ep-pill{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;padding:2px 6px;border-radius:3px;background:color-mix(in oklch,var(--accent) 22%,var(--surface-2));color:color-mix(in oklch,var(--accent) 90%,white);border:1px solid color-mix(in oklch,var(--accent) 55%,var(--border-2))}.export-primary .ep-desc{font-size:12.5px;color:var(--text-2);line-height:1.4}.export-primary .ep-action{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:color-mix(in oklch,var(--accent) 90%,white);background:color-mix(in oklch,var(--accent) 24%,var(--surface-2));border:1px solid color-mix(in oklch,var(--accent) 50%,var(--border-2));transition:transform .2s cubic-bezier(.4,0,.2,1)}.export-primary:hover .ep-action{transform:translateY(2px)}.export-subhead{display:flex;align-items:center;gap:12px;margin:0 0 12px;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}.export-subhead-rule{flex:1;height:1px;background:linear-gradient(to right,color-mix(in oklch,var(--border-2) 50%,transparent),transparent)}.export-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;margin-bottom:18px}.export-card{position:relative;display:flex;flex-direction:column;gap:6px;padding:12px 12px 14px;border-radius:10px;text-align:left;background:color-mix(in oklch,var(--surface) 55%,transparent);border:1px dashed color-mix(in oklch,var(--border-2) 55%,transparent);color:var(--text-3);font:inherit;cursor:not-allowed;transition:background .16s ease,border-color .16s ease;min-height:92px}.export-card.is-disabled{opacity:.72}.export-card:hover.is-disabled{background:color-mix(in oklch,var(--surface) 70%,transparent);border-color:color-mix(in oklch,var(--border-2) 70%,transparent)}.export-card .ec-icon{width:26px;height:26px;border-radius:6px;display:flex;align-items:center;justify-content:center;background:var(--surface-2);border:1px solid var(--border);color:var(--text-2);margin-bottom:2px}.export-card .ec-title{font-size:13px;font-weight:500;color:var(--text-2);letter-spacing:-.01em}.export-card .ec-desc{font-size:11.5px;color:var(--text-3);line-height:1.35}.export-card .ec-tag{position:absolute;top:10px;right:10px;font-family:var(--font-mono);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);padding:2px 5px;border-radius:3px;background:var(--surface-2);border:1px solid var(--border)}.export-foot{display:flex;align-items:center;justify-content:space-between;padding-top:14px;border-top:1px solid color-mix(in oklch,var(--border-2) 30%,transparent);font-size:11.5px;color:var(--text-3)}.export-foot-meta strong{color:var(--text-2);font-weight:500;font-family:var(--font-mono)}.export-kbd{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-4);padding:3px 7px;border-radius:4px;border:1px solid var(--border);background:var(--surface)}.export-modal{scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}.export-modal::-webkit-scrollbar{width:8px}.export-modal::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:4px}.export-modal::-webkit-scrollbar-track{background:transparent}.export-primary-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}@media(max-width:560px){.export-primary-pair{grid-template-columns:1fr}}.export-pcard{position:relative;display:grid;grid-template-rows:auto auto 1fr auto;gap:6px;text-align:left;padding:16px 16px 14px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-lg, 8px);cursor:pointer;transition:transform .16s ease,box-shadow .2s ease,border-color .16s ease,background .2s ease}.export-pcard:hover:not(:disabled){transform:translateY(-1px);border-color:color-mix(in oklch,var(--accent) 60%,var(--border));background:color-mix(in oklch,var(--accent) 5%,var(--surface));box-shadow:0 2px #0000000a,0 18px 38px -16px color-mix(in oklch,var(--accent) 50%,transparent)}.export-pcard:disabled{cursor:default;opacity:.55}.export-pcard.is-primary{border-color:color-mix(in oklch,var(--accent) 50%,var(--border));box-shadow:inset 0 0 0 1px color-mix(in oklch,var(--accent) 40%,transparent)}.export-pcard .epc-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:color-mix(in oklch,var(--accent) 12%,var(--surface));color:var(--text-2);border:1px solid color-mix(in oklch,var(--accent) 25%,var(--border))}.export-pcard.is-primary .epc-icon{color:var(--accent);background:color-mix(in oklch,var(--accent) 16%,var(--surface));border-color:color-mix(in oklch,var(--accent) 55%,var(--border))}.export-pcard .epc-title{font-size:13.5px;font-weight:600;letter-spacing:-.01em;margin-top:4px;color:var(--text)}.export-pcard .epc-desc{font-size:11.5px;color:var(--text-3);line-height:1.45;max-width:32ch}.export-pcard .epc-cta{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-2)}.export-pcard.is-primary .epc-cta{color:var(--accent)}.export-pcard.is-busy .epc-cta{color:var(--text-3)}.export-options{display:flex;flex-direction:column;gap:10px;padding:14px;margin-bottom:14px;background:color-mix(in oklch,var(--surface) 60%,var(--bg, transparent));border:1px solid var(--border);border-radius:var(--radius, 6px)}.eopt-row{display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:12px;min-height:26px}.eopt-lbl{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-3)}.eopt-seg{display:inline-flex;flex-wrap:wrap;gap:4px}.eopt-pill{font-size:11px;letter-spacing:.02em;color:var(--text-2);background:transparent;border:1px solid var(--border);padding:4px 9px;border-radius:4px;cursor:pointer;transition:color .12s,background .12s,border-color .12s}.eopt-pill:hover{color:var(--text);border-color:var(--border-2)}.eopt-pill.is-on{color:var(--accent);border-color:color-mix(in oklch,var(--accent) 55%,var(--border));background:color-mix(in oklch,var(--accent) 8%,transparent)}.eopt-help{grid-column:2 / 4;grid-row:2;font-size:10.5px;color:var(--text-3);margin-top:-4px;line-height:1.4}@media(max-width:520px){.eopt-row{grid-template-columns:1fr;gap:6px}.eopt-help{grid-column:1;grid-row:auto}}.eopt-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);background:transparent;border-radius:999px;padding:3px 10px 3px 3px;cursor:pointer;font-size:11px;color:var(--text-2);transition:color .12s,border-color .12s,background .12s}.eopt-toggle .eot-knob{width:16px;height:16px;border-radius:50%;background:var(--text-3);display:inline-block;transition:background .16s}.eopt-toggle.is-on{color:var(--accent);border-color:color-mix(in oklch,var(--accent) 55%,var(--border));background:color-mix(in oklch,var(--accent) 8%,transparent)}.eopt-toggle.is-on .eot-knob{background:var(--accent)}.eopt-toggle .eot-text{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase}.export-status{display:flex;align-items:center;padding:8px 12px;margin-bottom:12px;border-radius:4px;font-size:12px;border:1px solid var(--border)}.export-status .es-msg{display:inline-flex;align-items:center;gap:8px}.export-status .es-meta{color:var(--text-3);font-family:var(--font-mono);font-size:11px;letter-spacing:.01em}.export-status.is-busy{color:var(--text-2);background:color-mix(in oklch,var(--text) 4%,transparent)}.export-status.is-ok{color:var(--validated, var(--text));background:color-mix(in oklch,var(--validated, var(--accent)) 8%,transparent);border-color:color-mix(in oklch,var(--validated, var(--accent)) 40%,var(--border))}.export-status.is-error{color:#b54545;background:color-mix(in oklch,#b54545 8%,transparent);border-color:color-mix(in oklch,#b54545 40%,var(--border))}.es-spinner{width:12px;height:12px;border:1.5px solid color-mix(in oklch,var(--text-2) 40%,transparent);border-top-color:var(--text);border-radius:50%;animation:es-spin .8s linear infinite}@keyframes es-spin{to{transform:rotate(360deg)}}.export-soon{display:flex;align-items:center;gap:14px;padding:10px 0;margin-bottom:4px;border-top:1px solid var(--border)}.export-soon-lbl{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-3)}.export-soon-row{display:inline-flex;flex-wrap:wrap;gap:6px}.export-soon-chip{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);border:1px solid var(--border);padding:3px 9px;border-radius:3px}.settings-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:radial-gradient(1100px 600px at 30% -10%,color-mix(in oklch,var(--cat-tech) 8%,transparent),transparent 60%),radial-gradient(900px 500px at 80% 110%,color-mix(in oklch,var(--cat-info) 6%,transparent),transparent 60%),var(--bg);display:flex;flex-direction:column;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .28s cubic-bezier(.4,0,.6,1),transform .38s cubic-bezier(.16,.84,.26,1)}.settings-page.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.settings-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 32px 18px;border-bottom:1px solid var(--border);background:linear-gradient(to bottom,color-mix(in oklch,var(--bg-2) 80%,transparent),transparent)}.settings-header-left{display:flex;flex-direction:column;gap:4px;min-width:0}.settings-kicker{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:color-mix(in oklch,var(--accent) 70%,var(--text-3))}.settings-title{margin:0;font-size:22px;font-weight:500;letter-spacing:-.02em;color:var(--text);line-height:1.15}.settings-close{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px 0 12px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-2);font:inherit;font-size:12.5px;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.settings-close:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-2)}.settings-close span{font-weight:500;letter-spacing:-.005em}.settings-body{flex:1;display:grid;grid-template-columns:240px 1fr;min-height:0}.settings-nav{border-right:1px solid var(--border);padding:22px 14px;overflow-y:auto;display:flex;flex-direction:column;gap:22px}.settings-nav-group{display:flex;flex-direction:column;gap:2px}.settings-nav-kicker{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-4);padding:0 10px 6px}.settings-nav-item{display:flex;align-items:center;padding:8px 10px;font:inherit;font-size:13px;text-align:left;color:var(--text-2);background:transparent;border:1px solid transparent;border-radius:7px;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.settings-nav-item:hover{background:color-mix(in oklch,oklch(1 0 0) 5%,transparent);color:var(--text)}.settings-nav-item.is-active{background:color-mix(in oklch,var(--accent) 14%,var(--surface));border-color:color-mix(in oklch,var(--accent) 40%,var(--border));color:var(--text)}.settings-main{overflow-y:auto;padding:28px 36px 60px;scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}.settings-main::-webkit-scrollbar{width:8px}.settings-main::-webkit-scrollbar-thumb{background:color-mix(in oklch,var(--border-2) 70%,transparent);border-radius:4px}.settings-main::-webkit-scrollbar-thumb:hover{background:var(--border-2)}.settings-main::-webkit-scrollbar-track{background:transparent}.settings-section-head{margin-bottom:22px;display:flex;flex-direction:column;gap:6px}.settings-section-head h2{margin:0;font-size:18px;font-weight:500;letter-spacing:-.015em;color:var(--text)}.settings-section-head p{margin:0;font-size:13px;color:var(--text-2);line-height:1.5;max-width:64ch}.settings-placeholder{border:1px dashed color-mix(in oklch,var(--border-2) 60%,transparent);border-radius:12px;padding:14px;background:color-mix(in oklch,var(--surface) 40%,transparent)}.sp-grid{display:grid;grid-template-columns:1fr;gap:8px}.sp-row{display:grid;grid-template-columns:28px 1fr auto;gap:14px;align-items:center;padding:12px 14px;background:var(--surface);border:1px solid var(--border);border-radius:9px}.sp-swatch{width:22px;height:22px;border-radius:5px;background:linear-gradient(135deg,var(--cat-tech),var(--cat-info));box-shadow:0 0 12px -4px var(--cat-info)}.sp-row:nth-child(1) .sp-swatch{background:var(--cat-op);box-shadow:0 0 12px -4px var(--cat-op)}.sp-row:nth-child(2) .sp-swatch{background:var(--cat-info);box-shadow:0 0 12px -4px var(--cat-info)}.sp-row:nth-child(3) .sp-swatch{background:var(--cat-tech);box-shadow:0 0 12px -4px var(--cat-tech)}.sp-row:nth-child(4) .sp-swatch{background:var(--cat-gov);box-shadow:0 0 12px -4px var(--cat-gov)}.sp-meta{display:flex;flex-direction:column;gap:2px}.sp-name{font-size:13px;font-weight:500;color:var(--text);letter-spacing:-.01em}.sp-sub{font-size:11.5px;color:var(--text-3)}.sp-stub{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-4);padding:5px 9px;border-radius:5px;background:var(--surface-2);border:1px dashed var(--border-2)}.settings-footer-note{margin-top:28px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--text-3);padding:12px 14px;border-radius:8px;background:color-mix(in oklch,var(--surface) 50%,transparent);border:1px dashed color-mix(in oklch,var(--border-2) 40%,transparent)}.edt{display:inline-block;max-width:100%;padding:2px 6px;margin:-2px -6px;border-radius:4px;color:inherit;font:inherit;cursor:text;border:1px solid transparent;background:transparent;transition:background .1s ease,border-color .1s ease,box-shadow .1s ease;vertical-align:baseline;text-align:left;word-break:break-word;line-height:inherit}.edt:not(.edt-edit):hover{background:color-mix(in oklch,var(--inspector-tint, var(--text)) 8%,transparent);box-shadow:inset 0 -1px color-mix(in oklch,var(--inspector-tint, var(--text-3)) 50%,transparent)}.edt:not(.edt-edit):focus-visible{outline:none;background:color-mix(in oklch,var(--inspector-tint, var(--text)) 8%,transparent);border-color:color-mix(in oklch,var(--inspector-tint, var(--text-2)) 50%,transparent)}.edt.edt-empty{color:var(--text-4);font-style:italic;box-shadow:inset 0 -1px color-mix(in oklch,var(--text-3) 30%,transparent)}.edt.edt-empty:hover{color:var(--text-3);font-style:normal}.edt.edt-mono{font-family:var(--font-mono);font-size:11.5px}.edt.edt-title{font-size:inherit;font-weight:inherit;letter-spacing:inherit;display:block}input.edt-edit,textarea.edt-edit{display:block;width:100%;background:color-mix(in oklch,var(--bg) 60%,transparent);border:1px solid color-mix(in oklch,var(--inspector-tint, var(--accent)) 65%,var(--border-2));box-shadow:0 0 0 3px color-mix(in oklch,var(--inspector-tint, var(--accent)) 18%,transparent);color:var(--text);font:inherit;padding:4px 6px;margin:-4px -6px;border-radius:4px;outline:none;resize:none;font-family:inherit}textarea.edt-edit{line-height:1.45;min-height:56px}.section .edt.edt-multi{display:block;margin:0 -6px;font-size:13px;color:var(--text-2);line-height:1.5;min-height:1em}.bool-toggle{display:inline-flex;border-radius:5px;overflow:hidden;border:1px solid var(--border);background:var(--surface);height:22px}.bool-opt{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-3);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;padding:0 9px;cursor:pointer;transition:background .12s ease,color .12s ease}.bool-opt:hover{color:var(--text);background:color-mix(in oklch,var(--inspector-tint, var(--text)) 8%,transparent)}.bool-opt.is-on{background:color-mix(in oklch,var(--inspector-tint, var(--accent)) 22%,var(--surface));color:var(--text)}.bool-toggle.unset .bool-opt{color:var(--text-4)}.segmented{display:inline-flex;border-radius:5px;overflow:hidden;border:1px solid var(--border);background:var(--surface);height:22px}.segmented .seg{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-3);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;padding:0 9px;min-width:36px;cursor:pointer;transition:background .12s ease,color .12s ease;border-right:1px solid var(--border)}.segmented .seg:last-child{border-right:none}.segmented .seg:hover{color:var(--text);background:color-mix(in oklch,var(--inspector-tint, var(--text)) 7%,transparent)}.segmented.seg-risk .seg.is-on:nth-child(1){background:color-mix(in oklch,oklch(.75 .16 150) 22%,var(--surface));color:#86e79c}.segmented.seg-risk .seg.is-on:nth-child(2){background:color-mix(in oklch,var(--manual) 22%,var(--surface));color:var(--manual)}.segmented.seg-risk .seg.is-on:nth-child(3){background:color-mix(in oklch,var(--risk) 22%,var(--surface));color:var(--risk)}.segmented.seg-confidence .seg.is-on:nth-child(1){background:color-mix(in oklch,var(--risk) 18%,var(--surface));color:var(--risk)}.segmented.seg-confidence .seg.is-on:nth-child(2){background:color-mix(in oklch,var(--manual) 18%,var(--surface));color:var(--manual)}.segmented.seg-confidence .seg.is-on:nth-child(3){background:color-mix(in oklch,oklch(.75 .16 150) 22%,var(--surface));color:#86e79c}.enum-pop{position:relative;display:inline-block;max-width:100%}.enum-trigger{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.enum-trigger .enum-val{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.enum-trigger .enum-caret{font-size:9px;color:var(--text-4);margin-left:2px}.enum-trigger:hover .enum-caret{color:var(--text-2)}.enum-menu{position:absolute;top:calc(100% + 4px);left:-6px;z-index:50;min-width:160px;max-height:280px;overflow-y:auto;background:color-mix(in oklch,var(--surface-2) 92%,var(--bg-2));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-2);border-radius:6px;box-shadow:0 12px 32px -8px #00000080;padding:4px;display:flex;flex-direction:column;gap:1px}.enum-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-2);font:inherit;font-size:12px;text-align:left;padding:6px 8px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;text-transform:capitalize}.enum-item:hover{background:color-mix(in oklch,var(--inspector-tint, var(--accent)) 18%,var(--surface));color:var(--text)}.enum-item.is-current{color:var(--text);background:color-mix(in oklch,var(--inspector-tint, var(--accent)) 10%,transparent)}.enum-item.is-current:after{content:"✓";color:color-mix(in oklch,var(--inspector-tint, var(--accent)) 80%,var(--text));font-size:11px}.enum-item.enum-clear{color:var(--text-3);border-top:1px solid var(--border);margin-top:2px;padding-top:8px;font-style:italic;text-transform:none}.enum-item.enum-clear:hover{color:var(--risk);background:color-mix(in oklch,var(--risk) 10%,transparent)}.add-field{margin-top:10px;position:relative}.add-field-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px dashed var(--border-2);color:var(--text-3);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;padding:5px 9px;border-radius:4px;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.add-field-btn:hover{background:color-mix(in oklch,var(--inspector-tint, var(--accent)) 10%,var(--surface));border-color:color-mix(in oklch,var(--inspector-tint, var(--accent)) 50%,var(--border-2));color:var(--text);border-style:solid}.add-field-menu{left:0;min-width:200px;text-transform:none}.add-field-menu .enum-item{text-transform:none}.add-field-hint{font-family:var(--font-mono);font-size:9.5px;color:var(--text-4);letter-spacing:.04em}.section-empty{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;color:var(--text-4);font-style:italic}.section-note{margin-top:8px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.04em;color:var(--text-4);font-style:italic}.q-editor{display:flex;flex-direction:column;gap:6px}.q-item-edit{position:relative;align-items:flex-start;padding-right:28px}.q-item-edit .edt{flex:1;font-size:12.5px;color:var(--text);line-height:1.4}.q-item-edit .edt.edt-multi{display:block}.q-item-edit textarea.edt-edit{background:color-mix(in oklch,var(--bg) 60%,transparent);min-height:32px}.q-remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-4);font-size:16px;line-height:1;cursor:pointer;position:absolute;top:6px;right:6px;width:18px;height:18px;border-radius:3px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.q-item-edit:hover .q-remove,.q-remove:focus{opacity:1}.q-remove:hover{background:color-mix(in oklch,var(--risk) 16%,transparent);color:var(--risk)}.add-row{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px dashed var(--border-2);color:var(--text-3);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;padding:6px 10px;border-radius:4px;cursor:pointer;align-self:flex-start;transition:background .12s ease,color .12s ease,border-color .12s ease}.add-row:hover{background:color-mix(in oklch,var(--inspector-tint, var(--accent)) 10%,var(--surface));border-color:color-mix(in oklch,var(--inspector-tint, var(--accent)) 50%,var(--border-2));color:var(--text);border-style:solid}.kv dd{display:flex;align-items:center;min-height:22px}.kv dd .edt.edt-multi{display:block}.inspector-head .title .edt.edt-title{font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;padding:2px 6px;margin:-2px -6px}.inspector-head .title input.edt-edit{font-size:18px;font-weight:500;letter-spacing:-.01em}.risk-strip-wrap{display:inline-flex;align-items:center;gap:8px}.risk-strip-wrap .risk-strip{display:inline-flex;width:60px}.settings-card{border:1px solid var(--border);border-radius:12px;background:color-mix(in oklch,var(--surface) 60%,transparent);padding:4px 0}.cp-grid{display:flex;flex-direction:column}.cp-cat-row{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid color-mix(in oklch,var(--border) 60%,transparent)}.cp-cat-row:last-child{border-bottom:none}.cp-current-swatch{width:22px;height:22px;border-radius:6px;border:1px solid color-mix(in oklch,oklch(1 0 0) 12%,transparent);transition:background .18s ease,box-shadow .18s ease}.cp-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.cp-name{font-size:13px;font-weight:500;color:var(--text);letter-spacing:-.01em}.cp-sub{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.cp-row{display:inline-flex;align-items:center;gap:6px;padding:4px;border-radius:8px;background:color-mix(in oklch,var(--bg) 50%,transparent);border:1px solid var(--border)}.cp-swatch{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid color-mix(in oklch,oklch(1 0 0) 10%,transparent);width:22px;height:22px;border-radius:5px;padding:0;cursor:pointer;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease;position:relative}.cp-swatch:hover{transform:scale(1.08);border-color:color-mix(in oklch,oklch(1 0 0) 35%,transparent)}.cp-swatch.is-on{border-color:var(--text);box-shadow:0 0 0 2px var(--bg-2),0 0 0 4px var(--text),0 0 12px -2px currentColor;transform:scale(1.1)}.cp-swatch.is-on:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:50%;background:radial-gradient(circle,var(--text) 0%,var(--text) 35%,transparent 38%);mix-blend-mode:screen;pointer-events:none}.cp-divider{width:1px;height:18px;background:var(--border-2);margin:0 2px}.cp-custom{position:relative;display:inline-flex;align-items:center;height:22px;cursor:pointer}.cp-native{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;cursor:pointer;pointer-events:auto}.cp-custom-face{display:inline-flex;align-items:center;gap:6px;padding:0 8px 0 4px;height:22px;border-radius:5px;border:1px solid var(--border-2);background:var(--surface-2);color:var(--text-2);font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;text-transform:uppercase;transition:background .12s ease,color .12s ease}.cp-custom:hover .cp-custom-face{background:var(--surface-3);color:var(--text)}.cp-custom-grad{width:14px;height:14px;border-radius:3px;background:conic-gradient(from 0deg,#ff8fb4,#ff9785 8.33%,#ff9a68 12.5%,#ff9b56 14.58%,#ff9b4b,#ff9c3f 16.67%,#deb115,#a9c719 33.33%,#a2c932,#9bca42 35.42%,#8bcd5b 37.5%,#63d380 41.67%,#45d590 43.75%,#30d698 44.79%,#1fd79c 45.31%,#12d79e,#01d7a0,#00d7a2,#01d7a4 46.36%,#00d6a8 46.88%,#00d5af 47.92%,#01d4bb 50%,#01cee7 58.33%,#0ec9ff 62.5%,#4dc5ff 64.59%,#5ac3ff,#65c1ff 66.67%,#67c1ff,#68c1ff 67.19%,#6dc0ff 67.71%,#75beff 68.75%,#83bbff 70.83%,#9cb4ff 75%,#c4a3ff,#ee90e6,#ff8fb4);background:conic-gradient(from 0deg,color(xyz 0.637 0.433 0.475),color(xyz 0.592 0.444 0.239) 8.33%,color(xyz 0.574 0.448 0.144) 12.5%,color(xyz 0.566 0.449 0.102) 14.58%,color(xyz 0.562 0.45 0.082),color(xyz 0.559 0.451 0.063) 16.67%,#deb115,#a9c719 33.33%,#a2c932,#9bca42 35.42%,#8bcd5b 37.5%,#63d380 41.67%,#45d590 43.75%,#30d698 44.79%,#1fd79c,color(xyz 0.306 0.512 0.413),color(xyz 0.304 0.513 0.43),color(xyz 0.302 0.513 0.447) 46.88%,color(xyz 0.299 0.514 0.483) 47.92%,color(xyz 0.294 0.517 0.559) 50%,color(xyz 0.354 0.502 0.887) 58.33%,color(xyz 0.389 0.494 1.08) 62.5%,color(xyz 0.408 0.489 1.184),color(xyz 0.428 0.484 1.294) 66.67%,color(xyz 0.432 0.483 1.292),color(xyz 0.437 0.482 1.29) 67.71%,color(xyz 0.446 0.479 1.286) 68.75%,color(xyz 0.464 0.474 1.277) 70.83%,color(xyz 0.501 0.464 1.26) 75%,color(xyz 0.581 0.443 1.226),#ee90e6,color(xyz 0.637 0.433 0.475));border:1px solid color-mix(in oklch,oklch(1 0 0) 14%,transparent)}.cp-reset{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-2);background:var(--surface);color:var(--text-3);width:22px;height:22px;border-radius:5px;font-size:12px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .12s ease,color .12s ease,border-color .12s ease;margin-left:4px}.cp-reset:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-strong)}.cp-footer{padding:12px 18px;border-top:1px solid color-mix(in oklch,var(--border) 60%,transparent);display:flex;justify-content:flex-end}.cp-reset-all{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid var(--border-2);color:var(--text-3);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;padding:6px 10px;border-radius:5px;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.cp-reset-all:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-strong)}.inspector-head .actions .mode-toggle{display:inline-flex;border-radius:5px;overflow:hidden;border:1px solid var(--border);background:var(--surface);height:22px;margin-right:2px}.mode-opt{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-3);font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;padding:0 10px;cursor:pointer;transition:background .12s ease,color .12s ease}.mode-opt+.mode-opt{border-left:1px solid var(--border)}.mode-opt:hover{color:var(--text);background:color-mix(in oklch,var(--inspector-tint, var(--text)) 8%,transparent)}.mode-opt.is-on{background:color-mix(in oklch,var(--inspector-tint, var(--accent)) 22%,var(--surface));color:var(--text)}.node.is-draggable .node-card{cursor:grab}.node.is-draggable:active .node-card{cursor:grabbing}.node.is-dragging{transition:none!important;z-index:50;cursor:grabbing}.node.is-dragging .node-card{cursor:grabbing;border-color:var(--cat);box-shadow:0 0 0 1px var(--cat),0 0 0 4px color-mix(in oklch,var(--cat) 22%,transparent),0 18px 40px -12px #0009;transform:scale(1.04)}.stage.layout-edit .lane-group{outline:1px dashed color-mix(in oklch,var(--text-3) 22%,transparent);outline-offset:-1px}.stage.layout-edit.is-dragging-node .lane-group{outline-color:color-mix(in oklch,var(--text-2) 30%,transparent);background:color-mix(in oklch,var(--text) 1.5%,transparent)}.drop-target{position:absolute;border-radius:8px;border:1.5px dashed color-mix(in oklch,var(--accent) 60%,transparent);background:color-mix(in oklch,var(--accent) 8%,transparent);pointer-events:none;transition:left .12s ease,top .12s ease;z-index:5;box-shadow:0 0 0 4px color-mix(in oklch,var(--accent) 10%,transparent)}.drop-target.is-blocked{border-color:color-mix(in oklch,var(--risk) 70%,transparent);background:color-mix(in oklch,var(--risk) 10%,transparent);box-shadow:0 0 0 4px color-mix(in oklch,var(--risk) 14%,transparent)}.drop-target-label{position:absolute;left:50%;bottom:calc(100% + 6px);transform:translate(-50%);font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);background:color-mix(in oklch,var(--bg-2) 90%,transparent);border:1px solid color-mix(in oklch,var(--accent) 40%,var(--border));padding:3px 7px;border-radius:4px;white-space:nowrap;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.drop-target.is-blocked .drop-target-label{color:var(--risk);border-color:color-mix(in oklch,var(--risk) 50%,var(--border))}.cp-conflict{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--manual);margin-top:3px;display:flex;align-items:center;gap:6px}.cp-conflict:before{content:"⚠";font-size:11px;color:var(--manual)}.cp-cat-row.has-conflict .cp-current-swatch{box-shadow:0 0 0 1.5px color-mix(in oklch,var(--manual) 55%,transparent),0 0 14px -4px var(--manual)!important}.cp-cat-row{grid-template-columns:28px 1fr auto 28px}.cp-name-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cp-name.cp-name-edit{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text);font:inherit;font-size:13px;font-weight:500;letter-spacing:-.01em;padding:2px 6px;margin:-2px -6px;border-radius:4px;cursor:text;text-align:left;transition:background .1s ease,box-shadow .1s ease}.cp-name.cp-name-edit:hover{background:color-mix(in oklch,var(--text) 8%,transparent);box-shadow:inset 0 -1px color-mix(in oklch,var(--text-3) 50%,transparent)}.cp-name-input{background:color-mix(in oklch,var(--bg) 60%,transparent);border:1px solid color-mix(in oklch,var(--accent) 65%,var(--border-2));box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 18%,transparent);color:var(--text);font-size:13px;font-weight:500;letter-spacing:-.01em;padding:4px 6px;margin:-4px -6px;border-radius:4px;outline:none}.cp-usage{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.cp-builtin{font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);background:color-mix(in oklch,var(--text-3) 14%,transparent);border:1px solid color-mix(in oklch,var(--text-3) 22%,var(--border));padding:2px 6px;border-radius:3px}.cp-delete{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-4);width:24px;height:24px;border-radius:5px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s ease,color .12s ease}.cp-delete:hover{background:color-mix(in oklch,var(--risk) 16%,transparent);color:var(--risk)}.cp-delete.is-disabled,.cp-delete:disabled{cursor:not-allowed;opacity:.3;pointer-events:auto}.cp-delete.is-disabled:hover{background:transparent;color:var(--text-4)}.cp-add-row{padding:12px 18px;border-top:1px solid color-mix(in oklch,var(--border) 60%,transparent);display:flex;justify-content:flex-start}.cp-add-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px dashed var(--border-2);color:var(--text-3);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;padding:7px 12px;border-radius:5px;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease,border-style .12s ease}.cp-add-btn:hover{background:color-mix(in oklch,var(--accent) 12%,var(--surface));border-color:color-mix(in oklch,var(--accent) 50%,var(--border-2));border-style:solid;color:var(--text)}.nt-grid{display:flex;flex-direction:column}.nt-row{display:grid;grid-template-columns:36px 1fr 28px;align-items:center;gap:14px;padding:12px 18px;border-bottom:1px solid color-mix(in oklch,var(--border) 60%,transparent)}.nt-row:last-child{border-bottom:none}.nt-icon-cell{position:relative}.nt-icon-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:32px;height:32px;border-radius:7px;background:color-mix(in oklch,var(--surface-2) 60%,transparent);border:1px solid var(--border-2);color:var(--text-2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.nt-icon-btn:hover{background:color-mix(in oklch,var(--accent) 12%,var(--surface-2));border-color:color-mix(in oklch,var(--accent) 50%,var(--border-2));color:var(--text)}.nt-icon-picker{position:absolute;top:calc(100% + 6px);left:0;z-index:60;width:270px;max-height:240px;overflow-y:auto;padding:8px;background:color-mix(in oklch,var(--surface-2) 92%,var(--bg-2));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-2);border-radius:8px;box-shadow:0 12px 32px -8px #00000080;display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.nt-icon-opt{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;color:var(--text-3);width:30px;height:30px;border-radius:5px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.nt-icon-opt:hover{background:color-mix(in oklch,var(--text) 8%,transparent);color:var(--text)}.nt-icon-opt.is-on{background:color-mix(in oklch,var(--accent) 22%,var(--surface));border-color:color-mix(in oklch,var(--accent) 60%,var(--border-2));color:var(--text)}.nt-id{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--text-4);margin-top:2px}.cp-delete-spacer{width:28px;height:1px}.inspector-head .breadcrumb .enum-trigger .enum-val{max-width:none;overflow:visible;text-overflow:clip}.inspector-head .breadcrumb .enum-pop{max-width:100%}.enum-item[style*=--opt-color]:hover{background:color-mix(in oklch,var(--opt-color) 22%,var(--surface));color:var(--text)}.enum-item[style*=--opt-color].is-current{background:color-mix(in oklch,var(--opt-color) 14%,transparent);color:var(--text)}.enum-item[style*=--opt-color].is-current:after{color:color-mix(in oklch,var(--opt-color) 85%,var(--text))}.enum-item[style*=--opt-color]{position:relative;padding-left:22px}.enum-item[style*=--opt-color]:before{content:"";position:absolute;left:8px;top:50%;transform:translateY(-50%);width:8px;height:8px;border-radius:2px;background:var(--opt-color);box-shadow:0 0 6px -1px var(--opt-color)}.empty-slot-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:3}.empty-slot{position:absolute;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:color-mix(in oklch,var(--accent) 4%,transparent);border:1.5px dashed color-mix(in oklch,var(--accent) 28%,transparent);border-radius:10px;padding:0;cursor:pointer;pointer-events:auto;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease;display:grid;place-items:center;animation:empty-slot-fade-in .32s cubic-bezier(.4,0,.2,1) both}@keyframes empty-slot-fade-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.empty-slot:hover{background:color-mix(in oklch,var(--accent) 12%,transparent);border-color:color-mix(in oklch,var(--accent) 70%,transparent);border-style:solid;box-shadow:0 0 0 4px color-mix(in oklch,var(--accent) 10%,transparent)}.empty-slot-inner{display:flex;flex-direction:column;align-items:center;gap:4px;opacity:.35;transition:opacity .14s ease;color:color-mix(in oklch,var(--accent) 80%,var(--text));pointer-events:none}.empty-slot:hover .empty-slot-inner{opacity:1}.empty-slot-plus{font-size:22px;font-weight:300;line-height:1;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:color-mix(in oklch,var(--accent) 14%,var(--surface));border:1px solid color-mix(in oklch,var(--accent) 35%,var(--border));transition:background .14s ease,border-color .14s ease}.empty-slot:hover .empty-slot-plus{background:color-mix(in oklch,var(--accent) 26%,var(--surface));border-color:color-mix(in oklch,var(--accent) 55%,var(--border))}.empty-slot-label{font-size:11.5px;font-weight:500;letter-spacing:.02em;margin-top:2px}.empty-slot-meta{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;color:var(--text-3);text-transform:uppercase}.add-node-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in oklch,black 60%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:grid;place-items:start center;padding:64px 16px 32px;overflow-y:auto;z-index:100;opacity:0;pointer-events:none;transition:opacity .22s cubic-bezier(.4,0,.6,1);scrollbar-width:thin;scrollbar-color:color-mix(in oklch,white 22%,transparent) transparent}.add-node-overlay::-webkit-scrollbar{width:10px}.add-node-overlay::-webkit-scrollbar-track{background:transparent}.add-node-overlay::-webkit-scrollbar-thumb{background:color-mix(in oklch,white 18%,transparent);border-radius:5px;border:2px solid transparent;background-clip:padding-box}.add-node-overlay::-webkit-scrollbar-thumb:hover{background:color-mix(in oklch,white 30%,transparent);background-clip:padding-box;border:2px solid transparent}.add-node-overlay.is-open{opacity:1;pointer-events:auto}.add-node-modal{position:relative;width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 96px);display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,#13161e,#0d0f16);border:1px solid color-mix(in oklch,oklch(.55 .025 270) 35%,transparent);border-radius:14px;box-shadow:0 1px #ffffff0f inset,0 30px 80px -30px #000,0 8px 24px -8px #000;transform:translateY(12px) scale(.98);opacity:0;transition:transform .28s cubic-bezier(.4,0,.2,1),opacity .28s cubic-bezier(.4,0,.6,1)}.add-node-overlay.is-open .add-node-modal{transform:translateY(0) scale(1);opacity:1}.anm-head{position:relative;padding:20px 24px 18px;border-bottom:1px solid var(--border)}.anm-eyebrow{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}.anm-title{font-size:19px;font-weight:500;letter-spacing:-.015em;color:var(--text);margin-bottom:6px}.anm-meta{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;color:var(--text-3);text-transform:uppercase}.anm-dot{width:3px;height:3px;border-radius:50%;background:var(--text-4)}.anm-close{position:absolute;top:16px;right:16px;width:28px;height:28px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-3);cursor:pointer;font-size:12px;display:grid;place-items:center;transition:all .12s ease}.anm-close:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-2)}.anm-body{padding:28px 24px;min-height:200px;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:color-mix(in oklch,white 22%,transparent) transparent}.anm-body::-webkit-scrollbar{width:10px}.anm-body::-webkit-scrollbar-track{background:transparent}.anm-body::-webkit-scrollbar-thumb{background:color-mix(in oklch,white 18%,transparent);border-radius:5px;border:2px solid transparent;background-clip:padding-box}.anm-body::-webkit-scrollbar-thumb:hover{background:color-mix(in oklch,white 30%,transparent);background-clip:padding-box}.anm-head,.anm-stepper,.anm-foot{flex-shrink:0}.anm-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px 0;gap:10px;border:1px dashed var(--border-2);border-radius:10px;background:color-mix(in oklch,var(--bg) 50%,transparent)}.anm-placeholder-ic{width:44px;height:44px;border-radius:50%;background:color-mix(in oklch,var(--accent) 14%,var(--surface));border:1px solid color-mix(in oklch,var(--accent) 35%,var(--border));color:var(--accent);display:grid;place-items:center;font-size:24px;font-weight:300}.anm-placeholder-text{font-size:13.5px;color:var(--text-2)}.anm-placeholder-sub{font-family:var(--font-mono);font-size:11px;color:var(--text-4);letter-spacing:.02em}.anm-foot{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border)}.anm-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:32px;padding:0 14px;border-radius:7px;border:1px solid var(--border);background:var(--surface);color:var(--text-2);font-size:12.5px;font-weight:500;cursor:pointer;transition:all .12s ease}.anm-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:var(--border-2)}.anm-btn-primary{background:color-mix(in oklch,var(--accent) 22%,var(--surface));border-color:color-mix(in oklch,var(--accent) 50%,var(--border-2));color:var(--text)}.anm-btn-primary:hover:not(:disabled){background:color-mix(in oklch,var(--accent) 30%,var(--surface));border-color:color-mix(in oklch,var(--accent) 60%,var(--border-2))}.anm-btn:disabled{opacity:.45;cursor:not-allowed}.anm-wizard{width:min(720px,calc(100vw - 32px))}.anm-wizard .anm-head{padding-bottom:14px}.anm-wizard .anm-body{padding:20px 24px 24px}.anm-stepper{display:flex;align-items:center;gap:0;padding:12px 24px 16px;border-bottom:1px solid var(--border);background:color-mix(in oklch,var(--bg) 30%,transparent)}.anm-step{display:flex;align-items:center;gap:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:4px 0;color:var(--text-4);font-family:inherit;font-size:11.5px;cursor:pointer;transition:color .14s ease}.anm-step:hover{color:var(--text-2)}.anm-step-mark{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:1.5px solid var(--border-2);font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);transition:all .14s ease;flex-shrink:0}.anm-step-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase}.anm-step-current .anm-step-mark{background:color-mix(in oklch,var(--accent) 30%,var(--surface));border-color:var(--accent);color:var(--text);box-shadow:0 0 0 4px color-mix(in oklch,var(--accent) 14%,transparent)}.anm-step-current{color:var(--text)}.anm-step-done .anm-step-mark{background:color-mix(in oklch,oklch(.78 .16 150) 22%,var(--surface));border-color:color-mix(in oklch,oklch(.78 .16 150) 60%,var(--border-2));color:#5fd37f}.anm-step-done{color:var(--text-2)}.anm-rail{flex:1;height:1.5px;background:var(--border);margin:0 12px}.anm-rail.is-done{background:color-mix(in oklch,oklch(.78 .16 150) 50%,var(--border-2))}.anm-form{display:flex;flex-direction:column;gap:16px}.anm-form-indent{padding-left:0;margin-top:4px}.anm-field{display:flex;flex-direction:column;gap:6px}.anm-field-label{font-size:12px;font-weight:500;color:var(--text-2);display:flex;align-items:center;gap:4px}.anm-req{color:var(--err);font-size:11px}.anm-field-hint{font-size:11px;color:var(--text-4);font-family:var(--font-mono);letter-spacing:.02em}.anm-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:36px;padding:0 12px;border-radius:7px;border:1px solid var(--border-2);background:color-mix(in oklch,var(--bg) 50%,var(--surface));color:var(--text);font-size:13px;font-family:inherit;outline:none;transition:border-color .12s ease,box-shadow .12s ease}.anm-input:focus{border-color:color-mix(in oklch,var(--accent) 65%,var(--border-2));box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 18%,transparent)}.anm-input-sm{height:30px;font-size:12px;padding:0 10px}.anm-textarea{height:auto;padding:10px 12px;resize:vertical;min-height:56px;line-height:1.4}.anm-select{background-image:linear-gradient(45deg,transparent 50%,var(--text-3) 50%),linear-gradient(135deg,var(--text-3) 50%,transparent 50%);background-position:calc(100% - 16px) 14px,calc(100% - 11px) 14px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:28px}.anm-section{display:flex;flex-direction:column;gap:8px}.anm-section-head{display:flex;align-items:baseline;gap:10px;font-size:12px;font-weight:500;color:var(--text-2);padding-top:8px;border-top:1px solid color-mix(in oklch,var(--border) 60%,transparent)}.anm-section-sub{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-4)}.anm-disclosure{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:6px 0;font-family:inherit;font-size:12px;font-weight:500;color:var(--text-3);cursor:pointer;display:flex;align-items:center;gap:6px;text-align:left;width:100%}.anm-disclosure:hover{color:var(--text)}.anm-chev{color:var(--text-4);font-size:9px;width:12px;display:inline-grid;place-items:center}.anm-picker{position:relative}.anm-picker-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:36px;padding:0 12px;border-radius:7px;border:1px solid var(--border-2);background:color-mix(in oklch,var(--bg) 50%,var(--surface));color:var(--text);font-size:13px;font-family:inherit;cursor:pointer;display:flex;align-items:center;gap:8px;text-align:left;transition:border-color .12s ease,box-shadow .12s ease}.anm-picker-trigger:hover{border-color:var(--text-3)}.anm-picker-trigger.is-open{border-color:color-mix(in oklch,var(--accent) 65%,var(--border-2));box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 18%,transparent)}.anm-picker-val{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.anm-picker-ph{color:var(--text-4)}.anm-picker-chev{font-size:10px;color:var(--text-4)}.anm-picker-pop{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:10;background:#13161e;border:1px solid color-mix(in oklch,oklch(.55 .025 270) 35%,transparent);border-radius:8px;padding:6px;display:flex;flex-direction:column;gap:4px;box-shadow:0 10px 30px -10px #000;max-height:280px}.anm-picker-pop-tall{max-height:360px}.anm-picker-search{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:30px;padding:0 10px;border-radius:6px;border:1px solid var(--border);background:color-mix(in oklch,var(--bg) 60%,transparent);color:var(--text);font-size:12px;font-family:inherit;outline:none}.anm-picker-search:focus{border-color:color-mix(in oklch,var(--accent) 50%,var(--border-2))}.anm-picker-hint{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-4);padding:0 6px}.anm-picker-list{display:flex;flex-direction:column;gap:1px;overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}.anm-picker-list::-webkit-scrollbar{width:8px}.anm-picker-list::-webkit-scrollbar-track{background:transparent}.anm-picker-list::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:4px;border:2px solid transparent;background-clip:padding-box}.anm-picker-list::-webkit-scrollbar-thumb:hover{background:var(--text-3);background-clip:padding-box;border:2px solid transparent}.anm-picker-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:7px 10px;border-radius:5px;text-align:left;cursor:pointer;color:var(--text-2);font-size:12.5px;font-family:inherit;display:flex;align-items:baseline;gap:10px;transition:background .1s ease,color .1s ease}.anm-picker-item:hover{background:color-mix(in oklch,var(--accent) 14%,var(--surface));color:var(--text)}.anm-picker-item.is-current{background:color-mix(in oklch,var(--accent) 10%,transparent);color:var(--text)}.anm-picker-item-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.anm-picker-item-id{font-family:var(--font-mono);font-size:10.5px;color:var(--text-4);letter-spacing:.02em}.anm-picker-empty{padding:16px;text-align:center;font-family:var(--font-mono);font-size:11px;color:var(--text-4);letter-spacing:.04em}.anm-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px}.anm-cat-opt{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:8px;height:36px;padding:0 12px;border-radius:7px;border:1px solid var(--border-2);background:var(--surface);color:var(--text-2);font-size:12.5px;font-family:inherit;cursor:pointer;transition:all .12s ease}.anm-cat-opt:hover{background:var(--surface-2);border-color:var(--text-3);color:var(--text)}.anm-cat-opt.is-on{background:color-mix(in oklch,var(--cat, var(--accent)) 14%,var(--surface));border-color:color-mix(in oklch,var(--cat, var(--accent)) 55%,var(--border-2));color:var(--text);box-shadow:0 0 0 3px color-mix(in oklch,var(--cat, var(--accent)) 12%,transparent)}.anm-cat-pip{width:10px;height:10px;border-radius:2px;background:var(--cat, var(--text-3));box-shadow:0 0 8px color-mix(in oklch,var(--cat, transparent) 50%,transparent)}.anm-cat-label{flex:1}.anm-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.anm-meta-field{display:flex;flex-direction:column;gap:4px;padding:8px 10px;border-radius:7px;border:1px solid color-mix(in oklch,var(--border) 50%,transparent);background:color-mix(in oklch,var(--bg) 30%,transparent);transition:border-color .12s ease,background .12s ease}.anm-meta-field.is-set{border-color:color-mix(in oklch,var(--accent) 35%,var(--border-2));background:color-mix(in oklch,var(--accent) 5%,var(--surface))}.anm-meta-head{display:flex;align-items:center;justify-content:space-between}.anm-meta-label{font-size:11.5px;color:var(--text-3);font-weight:500}.anm-meta-clear{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-4);cursor:pointer;font-size:11px;padding:0}.anm-meta-clear:hover{color:var(--err)}.anm-meta-field input{background:color-mix(in oklch,var(--bg) 50%,var(--surface))}.anm-seg{display:flex;gap:0;border-radius:6px;border:1px solid var(--border);background:var(--surface);overflow:hidden}.anm-seg-opt{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;height:28px;padding:0 8px;background:transparent;border:none;border-right:1px solid var(--border);color:var(--text-3);font-size:11px;font-family:inherit;cursor:pointer;text-transform:capitalize;transition:background .1s ease,color .1s ease}.anm-seg-opt:last-child{border-right:none}.anm-seg-opt:hover{color:var(--text);background:color-mix(in oklch,var(--surface-2) 80%,transparent)}.anm-seg-opt.is-on{background:color-mix(in oklch,var(--accent) 22%,var(--surface));color:var(--text)}.anm-custom-meta{display:flex;flex-direction:column;gap:4px;margin-top:4px}.anm-custom-row{display:grid;grid-template-columns:1fr 1fr auto;gap:6px}.anm-icon-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:30px;height:30px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-3);cursor:pointer;display:grid;place-items:center;font-size:11px;transition:all .12s ease}.anm-icon-btn:hover:not(:disabled){background:color-mix(in oklch,var(--err) 12%,var(--surface));border-color:color-mix(in oklch,var(--err) 40%,var(--border));color:var(--err)}.anm-icon-btn:disabled{opacity:.35;cursor:not-allowed}.anm-add-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;align-self:flex-start;height:30px;padding:0 12px;border-radius:6px;border:1px dashed var(--border-2);background:transparent;color:var(--text-3);font-size:12px;font-family:inherit;cursor:pointer;transition:all .12s ease}.anm-add-btn:hover{background:color-mix(in oklch,var(--accent) 8%,var(--surface));border-color:color-mix(in oklch,var(--accent) 50%,var(--border-2));border-style:solid;color:var(--text)}.anm-recap{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;background:color-mix(in oklch,var(--cat, var(--accent)) 8%,var(--surface));border:1px solid color-mix(in oklch,var(--cat, var(--accent)) 35%,var(--border-2))}.anm-recap-pip{width:12px;height:12px;border-radius:3px;background:var(--cat, var(--accent));box-shadow:0 0 10px color-mix(in oklch,var(--cat, var(--accent)) 60%,transparent)}.anm-recap-body{flex:1;min-width:0}.anm-recap-label{font-size:14px;font-weight:500;color:var(--text);letter-spacing:-.01em}.anm-recap-meta{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);margin-top:2px}.anm-recap-tag{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:color-mix(in oklch,var(--cat, var(--accent)) 80%,var(--text));padding:3px 8px;border-radius:3px;border:1px solid color-mix(in oklch,var(--cat, var(--accent)) 40%,var(--border));background:color-mix(in oklch,var(--cat, var(--accent)) 12%,transparent)}.anm-conn-list{display:flex;flex-direction:column;gap:10px}.anm-conn-row{display:flex;flex-direction:column;gap:12px;padding:14px 16px;border-radius:8px;background:color-mix(in oklch,var(--bg) 30%,transparent);border:1px solid color-mix(in oklch,var(--border) 60%,transparent);position:relative}.anm-conn-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}@media(max-width:540px){.anm-conn-grid-2{grid-template-columns:1fr}}.anm-conn-field{display:flex;flex-direction:column;gap:6px;min-width:0}.anm-mini-label{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-4)}.anm-conn-rm{position:absolute;top:8px;right:8px}.anm-direction{display:flex;border-radius:6px;border:1px solid var(--border);background:var(--surface);overflow:hidden;height:36px}.anm-dir-opt{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;min-width:0;background:transparent;border:none;border-right:1px solid var(--border);color:var(--text-3);font-size:11.5px;font-family:inherit;letter-spacing:.02em;cursor:pointer;padding:0 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-flex;align-items:center;justify-content:center;gap:4px;transition:background .1s ease,color .1s ease}.anm-dir-opt:last-child{border-right:none}.anm-dir-opt:hover{color:var(--text);background:color-mix(in oklch,var(--surface-2) 80%,transparent)}.anm-dir-opt.is-on{background:color-mix(in oklch,var(--accent) 22%,var(--surface));color:var(--text)}.anm-foot-spacer{flex:1}.anm-toast{position:absolute;bottom:70px;left:24px;right:24px;padding:12px 14px;border-radius:8px;background:color-mix(in oklch,oklch(.78 .16 150) 18%,var(--surface));border:1px solid color-mix(in oklch,oklch(.78 .16 150) 50%,var(--border));color:var(--text);font-size:12.5px;box-shadow:0 8px 24px -8px #000;animation:anm-toast-in .2s ease both}@keyframes anm-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.et-row{grid-template-columns:36px 1fr 28px}.et-glyph{width:32px;height:32px;border-radius:7px;background:color-mix(in oklch,var(--surface-2) 60%,transparent);border:1px solid var(--border-2);color:var(--text-3);display:flex;align-items:center;justify-content:center}.vw-list{display:flex;flex-direction:column;gap:14px;margin-bottom:16px}.vw-row{padding:18px 20px 20px;background:color-mix(in oklch,var(--surface) 60%,transparent);border:1px solid color-mix(in oklch,var(--border) 70%,transparent);border-radius:10px;display:flex;flex-direction:column;gap:14px}.vw-head{display:flex;align-items:center;gap:12px}.vw-name{font-size:15px;font-weight:500;color:var(--text);letter-spacing:-.01em}.vw-id{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--text-4);flex:1;min-width:0}.vw-locked{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:5px;border:1px solid var(--border);background:color-mix(in oklch,var(--surface) 60%,transparent);color:var(--text-4);font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;-webkit-user-select:none;user-select:none}.vw-desc-edit{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px dashed transparent;border-radius:6px;padding:6px 8px;margin:-6px -8px;text-align:left;font:inherit;font-size:13px;color:var(--text-2);line-height:1.5;cursor:pointer;transition:background .12s ease,border-color .12s ease;width:100%}.vw-desc-edit:hover{background:color-mix(in oklch,var(--text) 4%,transparent);border-color:color-mix(in oklch,var(--border) 80%,transparent)}.vw-desc-edit.is-empty{color:var(--text-4);font-style:italic}.vw-desc-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;padding:8px 10px;border-radius:6px;background:color-mix(in oklch,var(--bg) 60%,var(--surface));border:1px solid color-mix(in oklch,var(--accent) 45%,var(--border-2));color:var(--text);font:inherit;font-size:13px;line-height:1.5;resize:vertical;min-height:50px}.vw-desc-input:focus{outline:none;box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 18%,transparent)}.tpl{display:flex;flex-direction:column;gap:8px}.tpl-head{display:flex;align-items:center;gap:10px}.tpl-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-weight:500}.tpl-count{font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;color:var(--text-4)}.tpl-actions{margin-left:auto;display:flex;gap:4px}.tpl-mini{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid var(--border);color:var(--text-3);font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:4px;cursor:pointer;transition:all .12s ease}.tpl-mini:hover{background:color-mix(in oklch,var(--accent) 14%,var(--surface));border-color:color-mix(in oklch,var(--accent) 50%,var(--border));color:var(--text)}.tpl-pills{display:flex;flex-wrap:wrap;gap:6px}.tpl-empty{font-family:var(--font-mono);font-size:11px;color:var(--text-4);padding:10px 4px}.tpl-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:8px;background:color-mix(in oklch,var(--bg) 60%,transparent);border:1px solid var(--border);color:var(--text-3);font:inherit;font-size:12px;padding:5px 12px 5px 10px;border-radius:99px;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.tpl-pill:hover{background:color-mix(in oklch,var(--accent) 10%,var(--surface));border-color:color-mix(in oklch,var(--accent) 40%,var(--border));color:var(--text)}.tpl-pip{width:8px;height:8px;border-radius:50%;background:transparent;border:1.5px solid var(--text-4);flex-shrink:0;transition:background .12s ease,border-color .12s ease}.tpl-pill.is-on{background:color-mix(in oklch,var(--accent) 18%,var(--surface));border-color:color-mix(in oklch,var(--accent) 60%,var(--border-2));color:var(--text)}.tpl-pill.is-on .tpl-pip{background:var(--accent);border-color:var(--accent);box-shadow:0 0 6px -1px color-mix(in oklch,var(--accent) 60%,transparent)}.tpl-pill-label{font-weight:500}.tpl-pill-ct{font-family:var(--font-mono);font-size:10px;color:var(--text-4);letter-spacing:.04em}.tpl-pill.is-on .tpl-pill-ct{color:color-mix(in oklch,var(--text) 65%,var(--accent))}.ln-match{background:color-mix(in oklch,var(--bg) 40%,transparent);border:1px solid var(--border);border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.ln-match-head{display:flex;align-items:baseline;gap:10px}.ln-match-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-weight:500}.ln-match-sub{font-family:var(--font-mono);font-size:10px;letter-spacing:.02em;color:var(--text-4);font-style:italic}.ln-match-rows{display:flex;flex-direction:column;gap:4px}.ln-match-row{display:flex;align-items:baseline;gap:10px;font-family:var(--font-mono);font-size:12px;color:var(--text-2)}.ln-match-key{color:var(--text)}.ln-match-op{color:var(--text-4)}.ln-match-val{color:var(--accent)}.ln-match-empty{font-family:var(--font-mono);font-size:11px;color:var(--text-4);font-style:italic}.ln-match-edit .ln-match-rows{gap:8px}.ln-cond-row{display:grid;grid-template-columns:minmax(160px,1fr) auto minmax(0,1.4fr) auto;align-items:center;gap:10px;padding:6px 8px;background:color-mix(in oklch,var(--surface) 40%,transparent);border:1px solid var(--border);border-radius:8px}.ln-cond-field{display:flex;align-items:center;gap:6px;min-width:0}.ln-cond-field .sol-dropdown{flex:1;min-width:0}.ln-cond-scope{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-4);padding:2px 5px;border-radius:3px;border:1px solid var(--border);background:color-mix(in oklch,var(--bg) 40%,transparent)}.ln-cond-unknown{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:#ee8266;padding:2px 5px;border-radius:3px;border:1px solid color-mix(in oklch,oklch(.72 .14 35) 40%,var(--border));background:color-mix(in oklch,oklch(.72 .14 35) 10%,transparent)}.ln-cond-op{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;color:var(--text-4);text-transform:lowercase}.ln-cond-val{min-width:0}.ln-cond-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:28px;padding:0 10px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-family:inherit;font-size:12.5px}.ln-cond-input:focus{outline:none;border-color:color-mix(in oklch,var(--accent) 55%,var(--border-2))}.ln-cond-segments{display:inline-flex;border:1px solid var(--border);border-radius:6px;overflow:hidden;background:var(--surface)}.ln-cond-seg{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:5px 12px;font:inherit;font-size:11.5px;color:var(--text-3);cursor:pointer;transition:background .12s ease,color .12s ease;border-right:1px solid var(--border)}.ln-cond-seg:last-child{border-right:none}.ln-cond-seg:hover{color:var(--text);background:color-mix(in oklch,var(--surface-2) 80%,transparent)}.ln-cond-seg.is-on{color:var(--text);background:color-mix(in oklch,var(--accent) 25%,var(--surface))}.ln-cond-chips{display:flex;flex-wrap:wrap;gap:4px}.ln-cond-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:24px;padding:0 9px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text-3);font:inherit;font-size:11.5px;cursor:pointer;transition:all .12s ease}.ln-cond-chip:hover{color:var(--text);border-color:var(--border-2)}.ln-cond-chip.is-on{color:var(--text);background:color-mix(in oklch,var(--accent) 22%,var(--surface));border-color:color-mix(in oklch,var(--accent) 50%,var(--border-2))}.ln-cond-remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:22px;height:22px;border-radius:5px;border:1px solid transparent;background:transparent;color:var(--text-4);cursor:pointer;display:grid;place-items:center;transition:all .12s ease}.ln-cond-remove:hover{color:var(--text);border-color:var(--border-2);background:color-mix(in oklch,var(--surface-2) 50%,transparent)}.ln-cond-add{-webkit-appearance:none;-moz-appearance:none;appearance:none;align-self:flex-start;margin-top:4px;display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px 0 9px;border-radius:6px;border:1px dashed var(--border-2);background:transparent;color:var(--text-3);font:inherit;font-size:12px;cursor:pointer;transition:all .12s ease}.ln-cond-add:hover:not(:disabled){color:var(--text);border-color:color-mix(in oklch,var(--accent) 55%,var(--border-2));background:color-mix(in oklch,var(--accent) 10%,transparent)}.ln-cond-add:disabled{opacity:.45;cursor:not-allowed}.ln-cond-add-plus{width:16px;height:16px;display:grid;place-items:center;border-radius:3px;font-size:13px;color:var(--text-4)}.settings-coming-soon{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 32px;border:1px dashed color-mix(in oklch,var(--border-2) 70%,transparent);border-radius:10px;background:color-mix(in oklch,var(--surface) 30%,transparent);text-align:center;gap:14px}.settings-coming-soon .sc-glyph{width:56px;height:56px;border-radius:50%;background:color-mix(in oklch,var(--accent) 14%,var(--surface));border:1px solid color-mix(in oklch,var(--accent) 30%,var(--border));color:var(--accent);display:grid;place-items:center}.settings-coming-soon .sc-title{font-size:15px;font-weight:500;color:var(--text);letter-spacing:-.01em}.settings-coming-soon .sc-body{color:var(--text-3);font-size:13px;line-height:1.6;max-width:56ch;margin:0}:root{--bg: var(--sol-bg);--bg-2: var(--sol-ground);--surface: var(--sol-surface);--surface-2: var(--sol-surface-2);--surface-3: var(--sol-surface-2);--border: var(--sol-hairline);--border-2: var(--sol-hairline-strong);--border-strong:var(--sol-hairline-strong);--text: var(--sol-text);--text-2: var(--sol-text-2);--text-3: var(--sol-text-3);--text-4: var(--sol-text-disabled);--cat-op: oklch(.78 .06 75);--cat-info: oklch(.74 .06 220);--cat-tech: oklch(.74 .06 280);--cat-gov: oklch(.74 .06 30);--pii: var(--sol-pii);--manual: var(--sol-manual);--risk: var(--sol-risk);--sor: var(--sol-systems);--unknown: var(--sol-text-disabled);--accent: var(--sol-accent);--font-sans: var(--font-body);--font-mono: "JetBrains Mono", ui-monospace, monospace;--canvas-grid-opacity: .4}::selection{background:color-mix(in oklch,var(--sol-accent) 25%,transparent);color:var(--sol-text)}.brand{font-family:Barlow Condensed,sans-serif;font-weight:500;font-size:14px;letter-spacing:.18em;text-transform:uppercase;color:var(--text);gap:12px}.brand-mark{background:none!important;box-shadow:none!important;border-radius:0!important;width:auto!important;height:auto!important;color:var(--accent);display:inline-flex;align-items:center;justify-content:center}.brand-mark .refraction{transform-origin:26px 26px;animation:solstein-refraction 120s linear infinite}.brand-mark .glow{animation:solstein-glow 8s ease-in-out infinite}*:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.topbar,.crumb,.user-chip{font-family:var(--font-sans)}.crumb{font-family:Barlow Condensed,sans-serif;font-weight:500;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-3)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.sol-readonly-banner{display:none;position:fixed;top:0;left:0;right:0;align-items:center;gap:14px;padding:10px 18px 10px 22px;z-index:200;background:var(--surface, oklch(.18 .012 270));border-bottom:1px solid var(--border, rgba(255,255,255,.08));border-left:2px solid var(--manual);font-family:var(--font-display, "Barlow", system-ui, sans-serif);font-size:12px;color:var(--text, white);letter-spacing:.02em;box-shadow:0 6px 24px -8px #0006}body[data-readonly] .sol-readonly-banner{display:flex}body[data-readonly=archived] .sol-readonly-banner{border-left-color:var(--manual, oklch(.7 .13 60))}body[data-readonly=viewer] .sol-readonly-banner{border-left-color:var(--accent, oklch(.7 .13 60))}.sol-readonly-banner .sb-eyebrow{font-family:var(--font-display, "Barlow", system-ui, sans-serif);font-weight:500;font-size:10px;letter-spacing:.25em;text-transform:uppercase;padding-right:12px;border-right:1px solid var(--border, rgba(255,255,255,.12))}body[data-readonly=archived] .sol-readonly-banner .sb-eyebrow{color:var(--manual)}body[data-readonly=viewer] .sol-readonly-banner .sb-eyebrow{color:var(--accent)}.sol-readonly-banner .sb-copy{color:var(--text-2, rgba(255,255,255,.7));flex:1}.sol-readonly-banner .sb-copy strong{color:var(--text, white);font-weight:500}.sol-readonly-banner .sb-back{font-family:var(--font-display, "Barlow", system-ui, sans-serif);font-weight:500;font-size:10px;letter-spacing:.2em;text-transform:uppercase;padding:6px 12px;border:1px solid var(--border-2, rgba(255,255,255,.2));background:transparent;color:var(--text, white);cursor:pointer;text-decoration:none;border-radius:2px;transition:border-color .12s ease,color .12s ease}.sol-readonly-banner .sb-back:hover{border-color:var(--accent);color:var(--accent)}body[data-readonly] .app{padding-top:44px}body[data-readonly] .topbar-actions .tb-btn[title=Settings],body[data-readonly] .canvas-edit-btn,body[data-readonly] .canvas-corner.br,body[data-readonly] .inspector-head .mode-toggle,body[data-readonly] .inspector .add-field-btn,body[data-readonly] .inspector .add-row,body[data-readonly] .add-field-btn{display:none!important}body[data-readonly] .inspector .edt{pointer-events:none!important;cursor:default!important}body[data-readonly] .inspector .edt:after{display:none!important}body[data-readonly] .inspector .bool-opt,body[data-readonly] .inspector .seg,body[data-readonly] .inspector .enum-trigger,body[data-readonly] .inspector .icon-btn{pointer-events:none!important;opacity:.6}.sol-readonly-toggle{position:fixed;left:16px;bottom:16px;z-index:300;display:flex;align-items:center;gap:0;border:1px solid var(--border, rgba(255,255,255,.12));background:var(--surface, oklch(.18 .012 270));border-radius:4px;overflow:hidden;font-family:var(--font-display, "Barlow", system-ui, sans-serif);font-size:10px;letter-spacing:.18em;text-transform:uppercase;box-shadow:0 6px 18px -6px #0009}.sol-readonly-toggle .sr-lbl{padding:7px 10px 7px 12px;color:var(--text-3, rgba(255,255,255,.5));border-right:1px solid var(--border, rgba(255,255,255,.12))}.sol-readonly-toggle button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:7px 11px;color:var(--text-2, rgba(255,255,255,.75));font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;border-right:1px solid var(--border, rgba(255,255,255,.08));transition:background .12s ease,color .12s ease}.sol-readonly-toggle button:last-child{border-right:0}.sol-readonly-toggle button:hover{color:var(--text);background:var(--surface-2, rgba(255,255,255,.04))}.sol-readonly-toggle button.is-on{color:var(--text);background:var(--accent-10, oklch(.7 .13 60 / .16))}:root{--sol-bg: #0F1115;--sol-ground: #0A0C0F;--sol-surface: #16191F;--sol-surface-2: #1B1F26;--sol-accent: #E8C97A;--sol-accent-55: rgba(232, 201, 122, .55);--sol-accent-40: rgba(232, 201, 122, .4);--sol-accent-25: rgba(232, 201, 122, .25);--sol-accent-10: rgba(232, 201, 122, .1);--sol-text: #F0EDE8;--sol-text-2: rgba(240, 237, 232, .55);--sol-text-3: rgba(240, 237, 232, .3);--sol-text-disabled: rgba(240, 237, 232, .18);--sol-hairline: rgba(255, 255, 255, .07);--sol-hairline-strong: rgba(255, 255, 255, .12);--sol-paper: #F4F2EE;--sol-ink: #1A1C1F;--sol-paper-hairline: rgba(26, 28, 31, .1);--sol-pii: #9B8FC4;--sol-manual: #D8A24A;--sol-risk: #C66B5E;--sol-systems: #6B8CB0;--sol-validated: #7FA67F;--sol-unknown: #6E7178;--sol-pattern-pii: 2px dotted var(--sol-pii);--sol-pattern-manual: 2px dashed var(--sol-manual);--sol-pattern-risk: 2px double var(--sol-risk);--sol-pattern-systems: 1.5px solid var(--sol-systems);--sol-pattern-validated: 1.5px solid var(--sol-validated);--sol-pattern-unknown: 1.5px solid var(--sol-unknown);--font-display: "Barlow Condensed", sans-serif;--font-body: "Barlow", sans-serif;--fs-display: 56px;--fs-h1: 36px;--fs-h2: 24px;--fs-h3: 18px;--fs-body: 15px;--fs-small: 13px;--fs-caption: 11px;--fs-eyebrow: 11px;--track-eyebrow: .25em;--track-display: .12em;--track-wordmark: .18em;--track-label: .2em;--lh-tight: 1.1;--lh-snug: 1.3;--lh-body: 1.7;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--space-10: 128px;--radius: 2px;--hairline-w: 1px;--transition: .3s ease;--transition-fast: .15s ease;--transition-ambient-glow: 8s;--transition-ambient-refraction: 120s}*:focus{outline:none}*:focus-visible{outline:1px solid var(--sol-accent);outline-offset:2px;border-radius:var(--radius)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}html,body{background:var(--sol-bg);color:var(--sol-text);font-family:var(--font-body);font-weight:400;font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}:root{--bg: var(--sol-bg);--bg-2: var(--sol-surface);--surface: var(--sol-surface);--surface-2: var(--sol-surface-2);--surface-3: #20242C;--border: rgba(255, 255, 255, .07);--border-2: rgba(255, 255, 255, .12);--border-strong:rgba(255, 255, 255, .18);--text: var(--sol-text);--text-2: var(--sol-text-2);--text-3: var(--sol-text-3);--text-4: var(--sol-text-disabled);--accent: var(--sol-accent);--cat-op: oklch(.78 .06 75);--cat-info: oklch(.74 .06 220);--cat-tech: oklch(.74 .06 280);--cat-gov: oklch(.74 .06 30);--pii: var(--sol-pii);--manual: var(--sol-manual);--risk: var(--sol-risk);--sor: var(--sol-systems);--unknown: var(--sol-unknown);--ok: var(--sol-validated);--warn: var(--sol-manual);--err: var(--sol-risk);--font-sans: var(--font-body);--font-mono: var(--font-display);--font-code: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--sol-bg);color:var(--sol-text);font-family:var(--font-body);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}body{min-height:100vh}a{color:inherit;text-decoration:none}button{font-family:inherit;color:inherit;cursor:pointer}input,textarea,select{font-family:inherit;color:inherit}::selection{background:var(--sol-accent-25);color:var(--sol-text)}.topbar{display:flex;align-items:center;gap:28px;min-height:64px;padding:12px 32px;border-bottom:1px solid var(--sol-hairline);background:var(--sol-bg);flex-wrap:wrap}.brand{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-weight:500;font-size:15px;letter-spacing:.18em;text-transform:uppercase;color:var(--sol-text);flex-shrink:0}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--sol-accent);background:none;box-shadow:none}.brand-mark svg{display:block}.topbar-divider{width:1px;height:20px;background:var(--sol-hairline-strong);flex-shrink:0}.topbar-spacer{flex:1;min-width:16px}.crumb{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0;font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-3);line-height:1.4}.crumb a:hover{color:var(--sol-text)}.crumb .sep{color:var(--sol-text-disabled)}.crumb .now{color:var(--sol-text-2)}.crumb a,.crumb .now{transition:color var(--transition)}.user-chip{display:flex;align-items:center;gap:10px;padding:6px 12px 6px 6px;border-radius:var(--radius);border:1px solid var(--sol-hairline);background:transparent;font-size:12px;color:var(--sol-text-2)}.user-chip .avatar{width:24px;height:24px;border-radius:50%;background:var(--sol-surface-2);border:1px solid var(--sol-hairline-strong);display:grid;place-items:center;font-family:var(--font-display);font-size:10px;font-weight:500;letter-spacing:.1em;color:var(--sol-text)}.user-menu{position:relative}.user-menu .user-chip{cursor:pointer;font-family:inherit;letter-spacing:inherit;text-transform:none;outline:none;transition:border-color var(--transition),background var(--transition)}.user-menu .user-chip:focus-visible{outline:none;border-color:var(--sol-accent)}.user-menu .user-chip:hover,.user-menu.is-open .user-chip{border-color:var(--sol-hairline-strong);background:var(--sol-surface)}.user-menu .user-chip .caret{width:12px;height:12px;margin-left:4px;color:var(--sol-text-3);transition:transform var(--transition),color var(--transition)}.user-menu.is-open .user-chip .caret{transform:rotate(180deg);color:var(--sol-accent)}.user-menu-pop{position:absolute;top:calc(100% + 8px);right:0;min-width:280px;background:var(--sol-bg);border:1px solid var(--sol-hairline-strong);border-radius:var(--radius);box-shadow:0 16px 48px -8px #0009,0 2px 12px #0000004d;padding:6px;z-index:200;opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .14s ease,transform .14s ease}.user-menu.is-open .user-menu-pop{opacity:1;transform:translateY(0);pointer-events:auto}.um-identity{display:flex;align-items:center;gap:12px;padding:12px 12px 14px;border-bottom:1px solid var(--sol-hairline);margin-bottom:6px}.um-identity .avatar{width:36px;height:36px;border-radius:50%;background:var(--sol-surface-2);border:1px solid var(--sol-hairline-strong);display:grid;place-items:center;font-family:var(--font-display);font-size:12px;font-weight:500;letter-spacing:.1em;color:var(--sol-text);flex-shrink:0}.um-identity .who{min-width:0}.um-identity .name{font-size:13px;color:var(--sol-text);font-weight:500;line-height:1.3}.um-identity .email{font-size:11px;color:var(--sol-text-3);font-weight:300;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.um-section{padding:8px 12px 4px;font-family:var(--font-display);font-size:9px;font-weight:500;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent-55)}.um-item{display:flex;align-items:center;width:100%;padding:8px 12px;background:transparent;border:0;border-radius:calc(var(--radius) - 2px);font:inherit;font-size:13px;color:var(--sol-text-2);text-align:left;text-decoration:none;cursor:pointer;transition:background var(--transition),color var(--transition)}.um-item:hover,.um-item:focus-visible{background:var(--sol-surface-2);color:var(--sol-text);outline:none}.um-item:focus-visible{box-shadow:inset 2px 0 0 var(--sol-accent)}.um-item.is-danger{color:var(--sol-text-2)}.um-item.is-danger:hover,.um-item.is-danger:focus-visible{color:var(--sol-risk);background:var(--sol-surface-2)}.um-divider{height:1px;background:var(--sol-hairline);margin:6px 0}.page{max-width:1280px;margin:0 auto;padding:48px 32px 96px}.page-narrow{max-width:720px}.kicker{font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent-55);margin-bottom:14px}.page-title{font-family:var(--font-display);font-weight:500;font-size:36px;letter-spacing:.06em;text-transform:uppercase;line-height:1.15;color:var(--sol-text);margin:0 0 8px}.page-sub{color:var(--sol-text-2);font-size:15px;font-weight:300;line-height:1.7;margin:0 0 36px;max-width:64ch}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:40px;padding:0 18px;border-radius:var(--radius);border:1px solid var(--sol-hairline-strong);background:transparent;color:var(--sol-text);font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:border-color var(--transition),color var(--transition),background var(--transition)}.btn:hover{border-color:var(--sol-accent-40)}.btn:disabled{opacity:.35;cursor:not-allowed;border-color:var(--sol-hairline)}.btn:disabled.btn-primary:before{box-shadow:none}.btn-primary{border-color:var(--sol-accent-40);color:var(--sol-text);background:transparent}.btn-primary:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--sol-accent);box-shadow:0 0 8px var(--sol-accent-40)}.btn-primary:hover{border-color:var(--sol-accent);background:var(--sol-accent-10);box-shadow:none}.btn-ghost{border-color:transparent;color:var(--sol-text-2)}.btn-ghost:hover{color:var(--sol-text);border-color:var(--sol-hairline)}.btn-sm{height:30px;padding:0 12px;font-size:10px}.back-link{display:inline-flex;align-items:center;gap:8px;background:none;border:none;padding:6px 0;color:var(--sol-text-3);font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;margin-bottom:var(--space-5);transition:color var(--transition)}.back-link:hover{color:var(--sol-text)}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:22px}.field-label{font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-2);display:flex;align-items:center;gap:8px}.field-label .req{color:var(--sol-accent);font-size:12px;letter-spacing:0}.field-hint{font-size:12px;color:var(--sol-text-3);margin-top:2px;font-weight:300}.input,.textarea,.select{height:40px;padding:0 14px;background:transparent;border:1px solid var(--sol-hairline-strong);border-radius:var(--radius);color:var(--sol-text);font-size:14px;font-family:var(--font-body);outline:none;transition:border-color var(--transition),background var(--transition)}.textarea{height:auto;padding:12px 14px;min-height:120px;resize:vertical;line-height:1.6}.input:focus,.textarea:focus,.select:focus{border-color:var(--sol-accent);background:var(--sol-surface)}.input::placeholder,.textarea::placeholder{color:var(--sol-text-disabled)}.card{background:var(--sol-surface);border:1px solid var(--sol-hairline);border-radius:var(--radius);padding:24px 26px}.card-title{font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent-55);margin:0 0 16px}.proj-card{display:block;padding:26px 28px 22px;border-radius:var(--radius);border:1px solid var(--sol-hairline);background:var(--sol-surface);text-align:left;width:100%;cursor:pointer;transition:border-color var(--transition),background var(--transition);position:relative;overflow:hidden}.proj-card:hover{border-color:var(--sol-accent-40);background:var(--sol-surface-2)}.proj-card .pc-name{font-family:var(--font-display);font-weight:500;font-size:17px;letter-spacing:.04em;text-transform:uppercase;color:var(--sol-text);margin:0 0 14px;line-height:1.3;padding-right:80px;overflow-wrap:anywhere}.proj-card .pc-client{font-size:13px;color:var(--sol-text-2);font-weight:300;margin:0 0 24px;line-height:1.5}.proj-card .pc-meta{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-weight:500;font-size:10px;color:var(--sol-text-3);letter-spacing:.2em;text-transform:uppercase}.proj-card .pc-meta .dot{width:2px;height:2px;border-radius:50%;background:var(--sol-text-disabled)}.proj-card .pc-domain{color:var(--sol-accent-55)}.proj-card .pc-graphs{color:var(--sol-text-2)}.proj-card .pc-stack{position:absolute;top:22px;right:22px;display:flex}.proj-card .pc-stack .swatch{width:14px;height:14px;border-radius:var(--radius);border:1px solid var(--sol-surface);margin-left:-4px}.proj-card .pc-stack .swatch:first-child{margin-left:0}.add-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:26px 28px;border-radius:var(--radius);border:1px dashed var(--sol-hairline-strong);background:transparent;color:var(--sol-text-3);cursor:pointer;transition:border-color var(--transition),color var(--transition),background var(--transition);min-height:178px;text-align:left}.add-card:hover{background:var(--sol-surface);border-color:var(--sol-accent-40);border-style:solid;color:var(--sol-text)}.add-card .plus{width:28px;height:28px;border-radius:var(--radius);display:grid;place-items:center;background:transparent;color:var(--sol-accent);border:1px solid var(--sol-accent-40);font-size:16px;font-weight:400;line-height:1}.add-card .label{font-family:var(--font-display);font-weight:500;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--sol-text)}.add-card .sub{font-family:var(--font-display);font-weight:500;font-size:10px;color:var(--sol-text-3);letter-spacing:.2em;text-transform:uppercase}.add-card>*+*{margin-top:4px}.add-card .plus+.label{margin-top:16px}.tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius);background:transparent;border:1px solid var(--sol-hairline-strong);font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-2)}.tag .swatch{width:6px;height:6px;border-radius:50%}.tag.op{color:var(--cat-op)}.tag.info{color:var(--cat-info)}.tag.tech{color:var(--cat-tech)}.tag.gov{color:var(--cat-gov)}.tag .count{color:var(--sol-text-3);margin-left:2px;letter-spacing:.1em}.banner{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:var(--radius);border:1px solid var(--sol-hairline);background:var(--sol-surface);font-size:14px;line-height:1.55;color:var(--sol-text-2)}.banner .ic{flex-shrink:0;font-family:var(--font-display);font-weight:500;font-size:12px;width:18px;text-align:center}.banner.ok{border-left:2px solid var(--sol-validated)}.banner.ok .ic{color:var(--sol-validated)}.banner.warn{border-left:2px dashed var(--sol-manual)}.banner.warn .ic{color:var(--sol-manual)}.banner.err{border-left:2px double var(--sol-risk)}.banner.err .ic{color:var(--sol-risk)}.banner.info{border-left:2px solid var(--sol-accent)}.banner.info .ic{color:var(--sol-accent)}.banner .body{color:var(--sol-text-2)}.banner .body strong{color:var(--sol-text);font-weight:500}.scrollbox{scrollbar-width:thin;scrollbar-color:var(--sol-hairline-strong) transparent}.scrollbox::-webkit-scrollbar{width:8px;height:8px}.scrollbox::-webkit-scrollbar-thumb{background:var(--sol-hairline-strong);border-radius:var(--radius)}.scrollbox::-webkit-scrollbar-thumb:hover{background:var(--sol-text-disabled)}.scrollbox::-webkit-scrollbar-track{background:transparent}.sol-mark{display:inline-block;color:var(--sol-accent);flex-shrink:0}.sol-mark svg{display:block}.sol-mark--ambient .refraction{transform-origin:26px 26px;animation:solstein-refraction var(--transition-ambient-refraction) linear infinite}.sol-mark--ambient .glow{animation:solstein-glow var(--transition-ambient-glow) ease-in-out infinite}@keyframes solstein-refraction{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes solstein-glow{0%,to{opacity:.2}50%{opacity:.42}}.sol-dropdown{position:relative;display:block;width:100%}.sol-dropdown-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;height:40px;padding:0 14px;background:transparent;border:1px solid var(--sol-hairline-strong);border-radius:var(--radius);color:var(--sol-text);font-family:var(--font-body);font-size:14px;text-align:left;cursor:pointer;outline:none;transition:border-color var(--transition),background var(--transition)}.sol-dropdown-trigger:hover{border-color:var(--sol-text-3)}.sol-dropdown-trigger:focus-visible,.sol-dropdown.is-open .sol-dropdown-trigger{border-color:var(--sol-accent);background:var(--sol-surface);outline:none}.sol-dropdown-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sol-dropdown-chev{width:12px;height:12px;color:var(--sol-text-3);flex-shrink:0;transition:transform var(--transition),color var(--transition)}.sol-dropdown.is-open .sol-dropdown-chev{transform:rotate(180deg);color:var(--sol-accent)}.sol-dropdown-list{position:absolute;z-index:250;top:calc(100% + 4px);left:0;right:0;margin:0;padding:4px 0;list-style:none;background:var(--sol-bg);border:1px solid var(--sol-hairline-strong);border-radius:var(--radius);box-shadow:0 16px 48px -8px #0009,0 2px 12px #0000004d;max-height:240px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--sol-hairline-strong) transparent;display:none}.sol-dropdown.is-open>.sol-dropdown-list{display:block}.sol-dropdown-list::-webkit-scrollbar{width:6px}.sol-dropdown-list::-webkit-scrollbar-thumb{background:var(--sol-hairline-strong);border-radius:3px}.sol-dropdown-list.is-above{top:auto;bottom:calc(100% + 4px)}.sol-dropdown-list>li[role=option]{display:flex;align-items:center;gap:10px;padding:9px 14px 9px 22px;font-family:var(--font-body);font-size:14px;color:var(--sol-text);cursor:pointer;position:relative;border-bottom:1px solid var(--sol-hairline);transition:background var(--transition),color var(--transition)}.sol-dropdown-list>li[role=option]:last-child{border-bottom:0}.sol-dropdown-list>li[role=option]:hover,.sol-dropdown-list>li[role=option].is-active{background:var(--sol-surface-2)}.sol-dropdown-list>li[role=option].is-active{box-shadow:inset 2px 0 0 var(--sol-accent)}.sol-dropdown-list>li[role=option][aria-selected=true]:before{content:"";position:absolute;left:10px;top:50%;width:4px;height:4px;margin-top:-2px;border-radius:50%;background:var(--sol-accent);box-shadow:0 0 6px var(--sol-accent-40)}.sol-dropdown-list>li[role=option][aria-selected=true]{color:var(--sol-text)}.sol-dropdown-list>li[role=option][aria-disabled=true]{color:var(--sol-text-disabled);cursor:not-allowed}.sol-dropdown-list .opt-meta{margin-left:auto;font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-3);padding-left:10px}.sol-dropdown-list .opt-pip{width:8px;height:8px;border-radius:50%;flex-shrink:0}.sol-dropdown--sm .sol-dropdown-trigger{height:34px;padding:0 12px;font-size:13px}.sol-dropdown--sm .sol-dropdown-list>li[role=option]{padding:8px 12px 8px 22px;font-size:13px}.sol-dropdown--sm .sol-dropdown-list{max-height:200px}.empty-block{text-align:center;width:100%;max-width:360px;margin:0 auto}.empty-block .e-glyph{color:var(--sol-accent);width:40px;height:40px;margin:0 auto 18px;opacity:.9;display:block}.empty-block .e-rule{width:80px;height:1px;background:var(--sol-accent-40);margin:0 auto 18px}.empty-block .e-eyebrow{font-family:var(--font-display);font-size:11px;font-weight:500;letter-spacing:.25em;color:var(--sol-accent-55);text-transform:uppercase;margin-bottom:12px}.empty-block .e-lede{font-family:var(--font-display);font-weight:500;font-size:22px;letter-spacing:.04em;color:var(--sol-text);margin:0 0 12px;line-height:1.2}.empty-block .e-help{color:var(--sol-text-2);font-size:14px;line-height:1.6;margin:0 0 24px}.empty-block .e-actions{display:flex;gap:12px;justify-content:center;align-items:center}.empty-block .e-primary{font-family:var(--font-display);font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;padding:12px 22px;border:1px solid var(--sol-accent);color:var(--sol-accent);background:transparent;text-decoration:none!important;border-radius:var(--radius);transition:background var(--transition-fast),color var(--transition-fast);cursor:pointer;white-space:nowrap;display:inline-block;line-height:1}.empty-block .e-primary:hover,.empty-block .e-primary:focus-visible{background:var(--sol-accent-10);color:var(--sol-text)}.empty-hero{display:flex;align-items:center;justify-content:center;min-height:360px;padding:48px 32px;border:1px solid var(--sol-hairline);background:var(--sol-surface)}.empty-inline{text-align:center;padding:36px 24px 30px;border-top:1px solid var(--sol-hairline)}.empty-inline .e-glyph{width:24px;height:24px;color:var(--sol-text-3);margin:0 auto 12px;display:block}.empty-inline .e-lede{font-family:var(--font-display);font-weight:500;font-size:14px;letter-spacing:.04em;color:var(--sol-text);margin:0 0 6px}.empty-inline .e-help{font-size:12.5px;color:var(--sol-text-2);line-height:1.5;max-width:48ch;margin:0 auto 14px}.empty-inline .e-link-row{display:inline-flex;gap:16px;align-items:center}.empty-inline .e-link{font-family:var(--font-display);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-accent);text-decoration:none!important;border:0;border-bottom:1px solid var(--sol-accent-40);padding:0 0 2px;background:transparent;cursor:pointer;white-space:nowrap;transition:color var(--transition-fast),border-color var(--transition-fast)}.empty-inline .e-link:hover,.empty-inline .e-link:focus-visible{color:var(--sol-text);border-bottom-color:var(--sol-accent)}.empty-inline .e-link.is-muted{color:var(--sol-text-3);border-bottom-color:var(--sol-hairline)}.empty-inline .e-link.is-muted:hover{color:var(--sol-text-2);border-bottom-color:var(--sol-hairline-strong)}@media(max-width:768px){.page{padding:28px 18px 64px}.page-title{font-size:28px;line-height:1.2}.topbar{flex-wrap:wrap;gap:14px 18px;padding:12px 18px;min-height:0}.topbar .crumb{width:100%;order:3}.topbar-spacer{flex:1}.topbar-divider{display:none}.back-link{font-size:10px;padding:4px 8px}.user-menu .user-chip{padding:4px 10px 4px 4px;font-size:12px}.user-menu-pop{position:fixed;top:auto;bottom:16px;left:16px;right:16px;min-width:0}.btn{padding:0 14px}.btn-sm{font-size:9px}}@media(max-width:540px){.page{padding:22px 14px 56px}.page-title{font-size:24px;letter-spacing:.04em}.kicker{font-size:10px}.topbar .brand{font-size:12px}}.auth-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:var(--sol-ground)}.auth-shell-top{padding:22px 28px;display:flex;align-items:center;gap:14px}.auth-shell-top .mark{width:22px;height:22px;color:var(--sol-accent);flex-shrink:0}.auth-shell-top .word{font-family:var(--font-display);font-weight:500;font-size:13px;letter-spacing:var(--track-wordmark);color:var(--sol-text)}.auth-shell-body{display:grid;place-items:center;padding:32px 24px}.auth-shell-foot{padding:22px 28px;display:flex;justify-content:space-between;align-items:center;gap:24px;color:var(--sol-text-3);font-size:11px;font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase}.auth-shell-foot .links{display:flex;gap:18px}.auth-shell-foot a{color:var(--sol-text-3);transition:color var(--transition)}.auth-shell-foot a:hover{color:var(--sol-text-2)}.auth-card{width:100%;max-width:440px;background:var(--sol-surface);border:1px solid var(--sol-hairline);padding:40px 38px 36px;position:relative}.auth-card-eyebrow{font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent-55);margin:0 0 10px}.auth-card h1{font-family:var(--font-display);font-weight:500;font-size:26px;letter-spacing:.05em;text-transform:uppercase;color:var(--sol-text);line-height:1.2;margin:0 0 8px}.auth-card .sub{color:var(--sol-text-2);font-size:13.5px;line-height:1.55;margin:0 0 26px}.auth-card .form{margin:0}.auth-card .field{margin-bottom:18px}.auth-card .field:last-of-type{margin-bottom:0}.auth-card .input{width:100%;background:var(--sol-ground)}.auth-card .input:focus{background:var(--sol-ground)}.auth-card .input[readonly]{color:var(--sol-text-2);cursor:default;border-color:var(--sol-hairline)}.auth-card .input[disabled]{color:var(--sol-text-disabled);cursor:not-allowed;background:transparent}.auth-card .btn-primary{width:100%;margin-top:22px;height:44px;font-size:11px}.auth-card .form-row{display:flex;align-items:center;justify-content:space-between;margin-top:14px;gap:16px}.auth-card .form-row .check{display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:13px;color:var(--sol-text-2)}.auth-card .form-row .check input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border:1px solid var(--sol-hairline-strong);background:var(--sol-ground);border-radius:2px;position:relative;cursor:pointer;flex-shrink:0;transition:border-color var(--transition),background var(--transition)}.auth-card .form-row .check input:hover{border-color:var(--sol-accent-40)}.auth-card .form-row .check input:checked{border-color:var(--sol-accent);background:var(--sol-accent-10)}.auth-card .form-row .check input:checked:after{content:"";position:absolute;left:3px;top:-1px;width:5px;height:9px;border:solid var(--sol-accent);border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.auth-card .link{font-size:13px;color:var(--sol-text-2);border-bottom:1px solid var(--sol-hairline-strong);transition:color var(--transition),border-color var(--transition);padding-bottom:1px}.auth-card .link:hover{color:var(--sol-accent);border-color:var(--sol-accent)}.auth-card .aux{margin-top:26px;padding-top:22px;border-top:1px solid var(--sol-hairline);font-size:13px;color:var(--sol-text-3);text-align:center}.auth-card .aux a{color:var(--sol-text-2);border-bottom:1px solid var(--sol-hairline-strong);transition:color var(--transition),border-color var(--transition);padding-bottom:1px}.auth-card .aux a:hover{color:var(--sol-accent);border-color:var(--sol-accent)}.pw-wrap{position:relative}.pw-wrap .input{padding-right:60px}.pw-wrap .pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);height:28px;background:transparent;border:1px solid transparent;color:var(--sol-text-3);font-family:var(--font-display);font-size:9px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;padding:0 8px;transition:color var(--transition),border-color var(--transition);border-radius:2px}.pw-wrap .pw-toggle:hover{color:var(--sol-text);border-color:var(--sol-hairline)}.pw-strength .bars{display:flex;gap:4px}.pw-strength .seg{flex:1;height:2px;background:var(--sol-hairline);transition:background var(--transition)}.pw-strength .label{margin-top:6px;display:flex;justify-content:space-between;font-family:var(--font-display);font-size:9px;letter-spacing:.2em;text-transform:uppercase}.pw-strength .label .req-list{color:var(--sol-text-3)}.pw-strength .label .grade{color:var(--sol-accent-55)}.banner{display:flex;border:1px solid var(--sol-hairline-strong);background:var(--sol-ground);margin-bottom:22px;font-size:13px;line-height:1.55;color:var(--sol-text-2)}.banner-mark{width:3px;background:var(--sol-text-3);flex-shrink:0}.banner-body{padding:12px 14px}.banner .ban-title{display:block;font-family:var(--font-display);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text);margin-bottom:4px}.banner a{color:var(--sol-text);border-bottom:1px solid var(--sol-hairline-strong)}.banner a:hover{border-color:var(--sol-accent);color:var(--sol-accent)}.banner.is-error .banner-mark{background:var(--sol-risk)}.banner.is-error .ban-title{color:var(--sol-risk)}.banner.is-warn .banner-mark{background:var(--sol-manual)}.banner.is-warn .ban-title{color:var(--sol-manual)}.banner.is-info .banner-mark{background:var(--sol-systems)}.banner.is-info .ban-title{color:var(--sol-systems)}.banner.is-success .banner-mark{background:var(--sol-validated)}.banner.is-success .ban-title{color:var(--sol-validated)}.field-err{margin-top:6px;display:flex;align-items:center;gap:6px;font-size:12px;color:var(--sol-risk);font-weight:400}.field-err:before{content:"";width:4px;height:4px;background:var(--sol-risk);flex-shrink:0}.field.is-error .input{border-color:var(--sol-risk)}.captcha{display:flex;align-items:center;gap:14px;border:1px solid var(--sol-hairline-strong);background:var(--sol-ground);padding:14px;margin-top:18px}.captcha .cap-box{width:18px;height:18px;border:1px solid var(--sol-hairline-strong);background:var(--sol-surface);flex-shrink:0}.captcha .cap-copy{font-size:13px;color:var(--sol-text-2);line-height:1.4}.captcha .cap-mark{margin-left:auto;font-family:var(--font-display);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-3);text-align:right;line-height:1.3}.token-state{text-align:center}.token-state .glyph{width:56px;height:56px;margin:0 auto 22px;border:1px solid var(--sol-hairline-strong);display:grid;place-items:center;color:var(--sol-text-3);font-family:var(--font-display);font-size:24px;letter-spacing:.04em}.token-state.is-expired .glyph{color:var(--sol-manual);border-color:var(--sol-manual)}.token-state.is-used .glyph{color:var(--sol-text-3)}.token-state.is-revoked .glyph{color:var(--sol-risk);border-color:var(--sol-risk)}.token-state.is-success .glyph{color:var(--sol-validated);border-color:var(--sol-validated)}.auth-strip{display:flex;align-items:center;gap:12px;padding:8px 18px;background:var(--sol-surface);border-top:1px solid var(--sol-hairline);border-bottom:1px solid var(--sol-hairline);font-family:var(--font-display);font-size:10px;letter-spacing:.2em;text-transform:uppercase;flex-wrap:wrap}.auth-strip .lbl{color:var(--sol-accent-55)}.auth-strip .links{display:flex;gap:4px;flex-wrap:wrap}.auth-strip a{padding:4px 12px;color:var(--sol-text-3);border:1px solid transparent;border-radius:var(--radius);transition:color var(--transition),border-color var(--transition)}.auth-strip a:hover{color:var(--sol-text)}.auth-strip a.is-here{color:var(--sol-text);border-color:var(--sol-hairline-strong)}.auth-card .btn-primary.is-submitting{pointer-events:none;opacity:.7;position:relative;color:transparent!important}.auth-card .btn-primary.is-submitting:after{content:"";position:absolute;left:50%;top:50%;width:24px;height:4px;transform:translate(-50%,-50%);background:radial-gradient(circle at 4px center,currentColor 1.5px,transparent 2px),radial-gradient(circle at 12px center,currentColor 1.5px,transparent 2px),radial-gradient(circle at 20px center,currentColor 1.5px,transparent 2px);color:var(--sol-bg);animation:sol-dots 1.1s ease-in-out infinite}@keyframes sol-dots{0%{opacity:.4}50%{opacity:1}to{opacity:.4}}html[data-state=submitting] .auth-card .input,html[data-state=submitting] .auth-card .pw-toggle,html[data-state=submitting] .auth-card .check input{pointer-events:none;opacity:.6}html[data-state=submitting] .auth-card .btn-primary{pointer-events:none;opacity:.7;position:relative;color:transparent!important}html[data-state=submitting] .auth-card .btn-primary:after{content:"";position:absolute;left:50%;top:50%;width:24px;height:4px;transform:translate(-50%,-50%);background:radial-gradient(circle at 4px center,currentColor 1.5px,transparent 2px),radial-gradient(circle at 12px center,currentColor 1.5px,transparent 2px),radial-gradient(circle at 20px center,currentColor 1.5px,transparent 2px);color:var(--sol-bg);animation:sol-dots 1.1s ease-in-out infinite}html[data-state=network-error] [data-banner=network-error]{display:flex}@media(max-width:540px){.auth-shell{padding:24px 16px}.auth-shell-head{padding:12px 4px 18px}.auth-card{padding:28px 22px;max-width:100%}.auth-card .greeting{font-size:22px}.auth-shell-foot{flex-direction:column;gap:10px;text-align:center;padding:24px 4px}}.op-shell{display:grid;grid-template-columns:220px 1fr;grid-template-rows:56px 1fr;grid-template-areas:"topbar topbar" "side   main";min-height:100vh;background:var(--sol-ground)}.op-shell:before{content:"";position:fixed;top:0;left:0;right:0;height:1px;background:var(--sol-accent);opacity:.7;z-index:300;pointer-events:none}.op-topbar{grid-area:topbar;display:flex;align-items:center;padding:0 20px;background:var(--sol-bg);border-bottom:1px solid var(--sol-hairline-strong);gap:16px}.op-topbar .brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:500;font-size:13px;letter-spacing:.18em;color:var(--sol-text)}.op-topbar .brand svg{width:22px;height:22px;color:var(--sol-accent)}.op-topbar .op-badge{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent);border:1px solid var(--sol-accent-40);padding:4px 10px;border-radius:2px}.op-topbar .op-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--sol-accent);box-shadow:0 0 6px var(--sol-accent-40)}.op-topbar .url{font-family:var(--font-code, ui-monospace, monospace);font-size:12px;color:var(--sol-text-3);margin-left:6px}.op-topbar .spacer{flex:1}.op-topbar .user{display:flex;align-items:center;gap:10px;padding:4px 10px 4px 4px;border:1px solid var(--sol-hairline);border-radius:var(--radius);font-size:13px;color:var(--sol-text-2);cursor:pointer}.op-topbar .user .avatar{width:26px;height:26px;border-radius:50%;background:var(--sol-surface-2);border:1px solid var(--sol-hairline-strong);display:grid;place-items:center;font-family:var(--font-display);font-size:10px;letter-spacing:.1em;color:var(--sol-text)}.op-side{grid-area:side;background:var(--sol-bg);border-right:1px solid var(--sol-hairline-strong);padding:24px 16px;display:flex;flex-direction:column;gap:4px}.op-side .section{font-family:var(--font-display);font-size:9px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent-55);margin:18px 8px 8px}.op-side .section:first-child{margin-top:0}.op-side a{display:flex;align-items:center;gap:12px;padding:8px 10px;color:var(--sol-text-2);font-family:var(--font-display);font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;border-radius:var(--radius);border-left:2px solid transparent;margin-left:-2px;transition:color var(--transition),background var(--transition),border-color var(--transition)}.op-side a:hover{color:var(--sol-text);background:var(--sol-surface)}.op-side a.is-here{color:var(--sol-text);background:var(--sol-surface);border-left-color:var(--sol-accent)}.op-side a .gly{width:20px;flex-shrink:0;display:inline-block;font-family:var(--font-display);font-size:10px;letter-spacing:.05em;color:var(--sol-text-3);text-align:center}.op-side a.is-here .gly{color:var(--sol-accent)}.op-side a .count{margin-left:auto;font-family:var(--font-display);font-size:10px;letter-spacing:.1em;color:var(--sol-text-3)}.op-main{grid-area:main;padding:32px 40px 64px;overflow-x:hidden}.op-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:18px;border-bottom:1px solid var(--sol-hairline-strong);margin-bottom:32px}.op-page-head h1{font-family:var(--font-display);font-weight:500;font-size:30px;letter-spacing:.05em;text-transform:uppercase;color:var(--sol-text);margin:0;line-height:1.2}.op-page-head .kicker{font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent-55);margin-bottom:4px}.op-page-head .right{display:flex;gap:10px;align-items:center}.op-counters{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--sol-hairline);border:1px solid var(--sol-hairline);margin-bottom:32px}.op-counter{background:var(--sol-bg);padding:18px 22px}.op-counter .label{font-family:var(--font-display);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-3);margin-bottom:6px}.op-counter .value{font-family:var(--font-display);font-weight:500;font-size:32px;letter-spacing:.04em;color:var(--sol-text);line-height:1}.op-counter .trend{margin-top:8px;font-family:var(--font-display);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--sol-validated)}.op-counter .trend.down{color:var(--sol-risk)}.op-counter .trend.flat{color:var(--sol-text-3)}.op-section{margin-bottom:32px}.op-section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px}.op-section-head h2{font-family:var(--font-display);font-weight:500;font-size:14px;letter-spacing:.15em;text-transform:uppercase;color:var(--sol-text);margin:0}.op-section-head .meta{font-size:12px;color:var(--sol-text-3)}.op-table{width:100%;border-collapse:collapse;font-size:13.5px;background:var(--sol-bg);border:1px solid var(--sol-hairline)}.op-table th,.op-table td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--sol-hairline);vertical-align:middle}.op-table tr:last-child td{border-bottom:none}.op-table th{font-family:var(--font-display);font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-3);background:var(--sol-surface);border-bottom:1px solid var(--sol-hairline-strong)}.op-table tbody tr{transition:background var(--transition)}.op-table tbody tr:hover{background:var(--sol-surface)}.op-table td.text{color:var(--sol-text)}.op-table td.mut{color:var(--sol-text-2)}.op-table td.faint{color:var(--sol-text-3)}.op-table td.mono{font-family:var(--font-code, ui-monospace, monospace);font-size:12px;color:var(--sol-text-2)}.op-table td .nm{font-family:var(--font-display);letter-spacing:.04em;color:var(--sol-text);font-size:13px}.op-table td .nm small{display:block;margin-top:2px;font-family:var(--font-body);letter-spacing:0;font-size:12px;color:var(--sol-text-3)}.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;font-family:var(--font-display);font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--sol-hairline-strong);border-radius:2px;color:var(--sol-text-2);white-space:nowrap}.pill:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--sol-text-3)}.pill.is-active{color:var(--sol-validated);border-color:color-mix(in oklch,var(--sol-validated) 40%,transparent)}.pill.is-active:before{background:var(--sol-validated);box-shadow:0 0 4px var(--sol-validated)}.pill.is-invited{color:var(--sol-manual);border-color:color-mix(in oklch,var(--sol-manual) 40%,transparent)}.pill.is-invited:before{background:var(--sol-manual)}.pill.is-suspended{color:var(--sol-risk);border-color:color-mix(in oklch,var(--sol-risk) 40%,transparent)}.pill.is-suspended:before{background:var(--sol-risk)}.pill.is-limited{color:var(--sol-systems);border-color:color-mix(in oklch,var(--sol-systems) 40%,transparent)}.pill.is-limited:before{background:var(--sol-systems)}.pill.is-full{color:var(--sol-text)}.pill.is-full:before{background:var(--sol-accent);box-shadow:0 0 4px var(--sol-accent-40)}.pill.is-expired{color:var(--sol-text-3)}.row-action{background:transparent;border:1px solid var(--sol-hairline-strong);color:var(--sol-text-2);font-family:var(--font-display);font-size:10px;letter-spacing:.15em;text-transform:uppercase;padding:4px 10px;cursor:pointer;border-radius:2px;transition:color var(--transition),border-color var(--transition)}.row-action:hover{color:var(--sol-text);border-color:var(--sol-accent-40)}.row-action.danger:hover{color:var(--sol-risk);border-color:var(--sol-risk)}.op-filter{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--sol-bg);border:1px solid var(--sol-hairline);border-bottom:0;margin-bottom:0;flex-wrap:wrap}.op-filter .search{flex:1;min-width:200px;height:32px;background:var(--sol-ground);border:1px solid var(--sol-hairline);color:var(--sol-text);padding:0 12px;font-family:var(--font-body);font-size:13px;border-radius:var(--radius)}.op-filter .search:focus{outline:1px solid var(--sol-accent);border-color:var(--sol-accent)}.op-filter .seg{display:inline-flex;border:1px solid var(--sol-hairline);border-radius:var(--radius);overflow:hidden}.op-filter .seg button{background:transparent;border:0;padding:6px 12px;font-family:var(--font-display);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--sol-text-3);cursor:pointer;border-right:1px solid var(--sol-hairline);transition:color var(--transition),background var(--transition)}.op-filter .seg button:last-child{border-right:0}.op-filter .seg button:hover{color:var(--sol-text)}.op-filter .seg button.is-here{color:var(--sol-text);background:var(--sol-surface)}.op-filter+.op-table{border-top:0}.op-panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:400;display:none}.op-panel-backdrop.is-open{display:block}.op-panel{position:fixed;top:0;right:0;height:100vh;width:460px;max-width:90vw;background:var(--sol-bg);border-left:1px solid var(--sol-accent-40);box-shadow:-16px 0 64px -16px #0009;z-index:500;transform:translate(100%);transition:transform .22s ease;display:flex;flex-direction:column}.op-panel.is-open{transform:translate(0)}.op-panel-head{padding:22px 28px 18px;border-bottom:1px solid var(--sol-hairline);display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.op-panel-head .title{font-family:var(--font-display);font-weight:500;font-size:18px;letter-spacing:.04em;color:var(--sol-text);margin:0}.op-panel-head .sub{font-size:12px;color:var(--sol-text-3);margin-top:4px}.op-panel-head .close{background:transparent;border:1px solid var(--sol-hairline-strong);color:var(--sol-text-3);font-family:var(--font-display);font-size:10px;letter-spacing:.2em;text-transform:uppercase;padding:4px 10px;cursor:pointer;border-radius:2px;transition:color var(--transition)}.op-panel-head .close:hover{color:var(--sol-text)}.op-panel-body{flex:1;overflow-y:auto;padding:22px 28px}.op-panel-body .pgrp{margin-bottom:24px}.op-panel-body .pgrp-lbl{font-family:var(--font-display);font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent-55);margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--sol-hairline)}.op-panel-body dl{display:grid;grid-template-columns:110px 1fr;gap:6px 14px;margin:0;font-size:13px}.op-panel-body dt{font-family:var(--font-display);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--sol-text-3);padding-top:2px}.op-panel-body dd{margin:0;color:var(--sol-text);line-height:1.55}.op-panel-body dd.mono{font-family:var(--font-code, ui-monospace, monospace);font-size:12px;color:var(--sol-text-2)}.op-panel-actions{padding:18px 28px;border-top:1px solid var(--sol-hairline);display:flex;gap:8px;flex-wrap:wrap}.op-panel-actions .row-action{padding:7px 12px}.op-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:600;display:none;align-items:center;justify-content:center;padding:24px}.op-modal-backdrop.is-open{display:flex}.op-modal{width:100%;max-width:520px;background:var(--sol-bg);border:1px solid var(--sol-accent-40);box-shadow:0 32px 80px -16px #000000b3}.op-modal-head{padding:22px 26px 16px;border-bottom:1px solid var(--sol-hairline)}.op-modal-head .lbl{font-family:var(--font-display);font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent);margin-bottom:4px}.op-modal-head h3{font-family:var(--font-display);font-weight:500;font-size:20px;letter-spacing:.05em;text-transform:uppercase;color:var(--sol-text);margin:0}.op-modal-body{padding:22px 26px}.op-modal-body .field{margin-bottom:18px}.op-modal-body .field:last-child{margin-bottom:0}.op-modal-foot{padding:16px 26px;border-top:1px solid var(--sol-hairline);display:flex;justify-content:flex-end;gap:10px}.pill-input{background:var(--sol-ground);border:1px solid var(--sol-hairline-strong);border-radius:var(--radius);padding:8px 10px;display:flex;flex-wrap:wrap;gap:6px;min-height:80px;font-family:var(--font-body);font-size:13px}.pill-input:focus-within{border-color:var(--sol-accent)}.pill-input .ep{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;font-family:var(--font-code, ui-monospace, monospace);font-size:12px;background:var(--sol-bg);border:1px solid var(--sol-hairline);border-radius:2px;color:var(--sol-text)}.pill-input .ep .x{color:var(--sol-text-3);font-size:10px;cursor:pointer}.pill-input .ep.is-error{border-color:var(--sol-risk);color:var(--sol-risk)}.pill-input .ep.is-dup{border-color:var(--sol-manual);color:var(--sol-manual)}.pill-input input{flex:1;min-width:160px;background:transparent;border:0;outline:0;color:var(--sol-text);font:inherit;padding:4px}.op-empty{padding:56px 32px;text-align:center;border:1px dashed var(--sol-hairline-strong);color:var(--sol-text-3)}.op-empty .glyph{font-family:var(--font-display);font-size:28px;color:var(--sol-text-disabled);letter-spacing:.1em;margin-bottom:14px}.op-empty h4{font-family:var(--font-display);font-weight:500;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--sol-text);margin:0 0 6px}.op-empty p{font-size:13px;color:var(--sol-text-3);margin:0 0 18px;line-height:1.55}.op-chart-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media(max-width:1100px){.op-chart-grid{grid-template-columns:1fr}}.op-chart{background:var(--sol-bg);border:1px solid var(--sol-hairline);padding:20px 22px}.op-chart-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px}.op-chart-head .ttl{font-family:var(--font-display);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--sol-text)}.op-chart-head .val{font-family:var(--font-display);font-size:20px;letter-spacing:.04em;color:var(--sol-text)}.op-chart-head .val .delta{font-size:10px;letter-spacing:.15em;color:var(--sol-validated);margin-left:6px}.op-chart svg{display:block;width:100%;height:120px}.op-chart-foot{margin-top:10px;font-family:var(--font-display);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--sol-text-3);display:flex;justify-content:space-between}.role-pill{display:inline-block;padding:2px 8px;border-radius:2px;font-family:var(--font-display);font-weight:500;font-size:9px;letter-spacing:.18em;text-transform:uppercase;border:1px solid;line-height:1.5}.role-pill.is-owner{color:var(--sol-accent);border-color:var(--sol-accent-40)}.role-pill.is-editor{color:var(--sol-text);border-color:var(--sol-hairline-strong)}.role-pill.is-viewer{color:var(--sol-text-3);border-color:var(--sol-hairline)}.op-confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:none;align-items:center;justify-content:center;z-index:240;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.op-confirm-backdrop.is-open{display:flex}.op-confirm-modal{width:100%;max-width:520px;background:var(--sol-ground);border:1px solid var(--sol-hairline-strong);border-radius:var(--radius);box-shadow:0 24px 48px #00000080}.op-confirm-head{padding:28px 32px 18px;border-bottom:1px solid var(--sol-hairline)}.op-confirm-head .eyebrow{font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent);margin:0 0 8px}.op-confirm-head .title{font-family:var(--font-display);font-weight:500;font-size:22px;letter-spacing:.05em;text-transform:uppercase;color:var(--sol-text);margin:0;line-height:1.2}.op-confirm-body{padding:22px 32px 28px}.op-confirm-body p{margin:0 0 16px;font-size:13.5px;color:var(--sol-text-2);line-height:1.65}.op-confirm-body p strong{color:var(--sol-text);font-weight:500}.op-confirm-bullets{list-style:none;margin:0 0 4px;padding:0;border:1px solid var(--sol-hairline);border-radius:var(--radius);background:var(--sol-surface)}.op-confirm-bullets li{padding:12px 16px;font-size:13px;color:var(--sol-text-2);border-bottom:1px solid var(--sol-hairline);display:flex;gap:12px;align-items:flex-start;line-height:1.55}.op-confirm-bullets li:last-child{border-bottom:0}.op-confirm-bullets li .icon{flex-shrink:0;width:18px;height:18px;display:grid;place-items:center;color:var(--sol-accent);font-family:var(--font-display);font-weight:500;font-size:11px}.op-confirm-bullets li .icon.is-warn{color:var(--sol-manual)}.op-confirm-bullets li strong{color:var(--sol-text);font-weight:500}.op-confirm-foot{padding:18px 32px 24px;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--sol-hairline)}.op-confirm-foot .btn-cancel{background:transparent;border:1px solid var(--sol-hairline-strong);color:var(--sol-text-2);padding:9px 18px;font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;border-radius:2px;transition:color .12s ease,border-color .12s ease}.op-confirm-foot .btn-cancel:hover{color:var(--sol-text);border-color:var(--sol-text-3)}.op-confirm-foot .btn-go{background:var(--sol-accent);border:1px solid var(--sol-accent);color:var(--sol-bg);padding:9px 18px;font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;border-radius:2px;transition:filter .12s ease}.op-confirm-foot .btn-go:hover{filter:brightness(1.1)}.sol-toast-stack{position:fixed;right:24px;bottom:24px;z-index:400;display:flex;flex-direction:column;gap:10px;pointer-events:none}.sol-toast{display:inline-flex;align-items:center;gap:16px;padding:12px 18px 12px 20px;border:1px solid var(--sol-hairline-strong);background:var(--sol-surface);border-radius:2px;box-shadow:0 10px 32px -6px #00000073,0 2px 8px #00000040;pointer-events:auto;transform:translateY(8px);opacity:0;transition:opacity .18s ease,transform .18s ease;max-width:480px}.sol-toast.is-in{transform:translateY(0);opacity:1}.sol-toast.is-out{transform:translateY(8px);opacity:0}.sol-toast .st-msg{font-size:13px;color:var(--sol-text);line-height:1.45;overflow-wrap:anywhere}.sol-toast .st-msg strong{font-weight:500;color:var(--sol-text)}.sol-toast .st-msg em{font-style:normal;color:var(--sol-text-3)}.sol-toast .st-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-accent);padding-left:16px;border-left:1px solid var(--sol-hairline);cursor:pointer;white-space:nowrap;transition:color var(--transition)}.sol-toast .st-action:hover{color:var(--sol-text)}.sol-toast .st-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:0;margin-left:-6px;width:22px;height:22px;display:grid;place-items:center;color:var(--sol-text-3);cursor:pointer;border-radius:2px;transition:color var(--transition),background var(--transition)}.sol-toast .st-close:hover{color:var(--sol-text);background:var(--sol-surface-2)}.sol-toast.is-risk{border-left:2px solid var(--sol-risk)}.react-route-shell{min-height:100vh;background:var(--sol-bg)}.react-route-page{max-width:1120px;margin:0 auto;padding:56px 28px}.react-route-card{max-width:720px;border:1px solid var(--sol-hairline);background:var(--sol-surface);padding:34px}.react-route-card .eyebrow{margin:0 0 10px;font-family:var(--font-display);font-size:10px;font-weight:500;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent-55)}.react-route-card h1{margin:0 0 12px;font-family:var(--font-display);font-size:34px;font-weight:500;letter-spacing:.06em;line-height:1.1;text-transform:uppercase}.react-route-card p{margin:0 0 24px;max-width:560px;color:var(--sol-text-2)}.react-route-meta{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;padding:12px 0;border-top:1px solid var(--sol-hairline);color:var(--sol-text-2)}.react-route-meta span{font-family:var(--font-display);font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-3)}.react-route-meta a{color:var(--sol-accent)}.react-user-email{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--sol-text-3);font-size:12px}.crumb a.is-active{color:var(--sol-text)}.legacy-canvas-loading{min-height:100vh;display:grid;place-items:center;background:var(--bg, var(--sol-bg));color:var(--text-3, var(--sol-text-3));font-family:var(--font-display);font-size:11px;letter-spacing:.16em;text-transform:uppercase}.legacy-canvas-shell .legacy-canvas-loading{min-height:0}.link-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:0;color:var(--sol-accent);font:inherit;cursor:pointer}.link-button:hover{color:var(--sol-text)}.auth-facts{margin:24px 0 0;display:grid;grid-template-columns:100px 1fr;gap:12px 16px;font-size:13px;align-items:baseline}.auth-facts dt{font-family:var(--font-display);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-3)}.auth-facts dd{margin:0;color:var(--sol-text-2)}.auth-shell .react-route-card{width:min(100%,520px)}.profile-page{max-width:1100px;margin:0 auto;padding:56px 28px 72px}.prof-grid{display:grid;grid-template-columns:240px 1fr;gap:48px;max-width:1100px;margin:0 auto}.prof-nav{position:sticky;top:64px;align-self:start}.prof-nav .lbl{font-family:var(--font-display);font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent-55);margin-bottom:12px}.prof-nav ul{list-style:none;margin:0;padding:0}.prof-nav a{display:block;padding:8px 12px;margin-left:-12px;color:var(--sol-text-2);font-size:13px;border-left:1px solid transparent;transition:color var(--transition),border-color var(--transition)}.prof-nav a:hover{color:var(--sol-text)}.prof-nav a.is-here{color:var(--sol-text);border-left-color:var(--sol-accent)}.psec{margin-bottom:36px}.psec-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px;gap:16px}.psec-head h2{font-family:var(--font-display);font-weight:500;font-size:18px;letter-spacing:.06em;text-transform:uppercase;color:var(--sol-text);margin:0}.psec-head .meta{font-size:12px;color:var(--sol-text-3)}.psec-body{background:var(--sol-surface);border:1px solid var(--sol-hairline);padding:24px 26px}.identity-row{display:grid;grid-template-columns:80px minmax(0,1fr) auto;align-items:center;gap:22px}.identity-avatar{width:64px;height:64px;border-radius:50%;background:var(--sol-ground);border:1px solid var(--sol-hairline-strong);display:grid;place-items:center;font-family:var(--font-display);font-size:18px;letter-spacing:.1em;color:var(--sol-text)}.identity-info dl{margin:0;display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px 16px;font-size:13px;align-items:baseline}.identity-info dt{font-family:var(--font-display);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-3)}.identity-info dd{margin:0;color:var(--sol-text);min-width:0}.identity-info .account-id{font-family:var(--font-code, monospace);font-size:12px;color:var(--sol-text-2);overflow-wrap:anywhere}.identity-actions{display:flex;flex-direction:column;gap:8px}.profile-inline-input{width:min(100%,320px);background:var(--sol-ground);border:1px solid var(--sol-hairline-strong);color:var(--sol-text);padding:6px 10px;font-family:var(--font-body);font-size:14px;border-radius:2px}.profile-inline-input:focus{outline:1px solid var(--sol-accent)}.psec-body .field{margin-bottom:18px}.psec-body .field:last-of-type{margin-bottom:0}.psec-body .field .input{width:100%;background:var(--sol-ground)}.psec-body .field-actions{margin-top:22px;padding-top:20px;border-top:1px solid var(--sol-hairline);display:flex;gap:12px}.pw-strength{margin-top:10px}.pw-strength .bars{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:8px}.pw-strength .seg{height:4px;background:var(--sol-hairline-strong)}.pw-strength .seg.on{background:var(--sol-accent)}.pw-strength .label{display:flex;justify-content:space-between;gap:12px;font-family:var(--font-display);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--sol-text-3)}.workspace-page{max-width:1120px;margin:0 auto;padding:56px 28px}.workspace-page .v1-grid,.workspace-page .archived-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.workspace-page[data-state=empty] .v1-grid,.workspace-page[data-state=empty] .lifecycle-tabs{display:none}.workspace-page:not([data-state=empty]) .empty-hero{display:none}.workspace-page[data-tab=active] .archived-grid,.workspace-page[data-tab=active] .archived-empty,.workspace-page[data-tab=archived] .v1-grid,.workspace-page[data-tab=archived] .empty-hero{display:none}.lifecycle-tabs{display:flex;align-items:flex-end;justify-content:space-between;margin:0 0 22px;border-bottom:1px solid var(--sol-hairline)}.lifecycle-tabs .lt-strip{display:flex;gap:0}.lifecycle-tabs .lt-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:12px 22px 16px;font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-3);cursor:pointer;border-bottom:1px solid transparent;margin-bottom:-1px;transition:color var(--transition),border-color var(--transition)}.lifecycle-tabs .lt-tab:hover{color:var(--sol-text-2)}.lifecycle-tabs .lt-tab.is-on{color:var(--sol-text);border-bottom-color:var(--sol-accent)}.lifecycle-tabs .lt-tab .ct{display:inline-block;margin-left:8px;color:var(--sol-text-disabled);letter-spacing:.1em}.lifecycle-tabs .lt-tab.is-on .ct{color:var(--sol-accent-55)}.lifecycle-tabs .lt-meta{padding:0 0 16px;font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-3)}.workspace-gate{display:block;margin:16px 0 24px;padding:10px 14px;border:1px solid var(--sol-hairline);background:var(--sol-surface);font-size:12.5px;color:var(--sol-text-3);line-height:1.5;border-radius:var(--radius)}.workspace-banner{margin:0 0 22px}.proj-card.is-archived{background:transparent;border-style:dashed;position:relative}.proj-card.is-archived:hover{border-style:solid}.proj-card.is-archived .pc-name{color:var(--sol-text-2)}.proj-card.is-archived .pc-client{color:var(--sol-text-3)}.proj-card.is-archived .pc-meta{opacity:.7}.proj-card .arc-tag{position:absolute;top:22px;right:22px;font-family:var(--font-display);font-weight:500;font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--sol-manual);padding:2px 8px;border:1px solid var(--sol-manual);border-radius:2px;opacity:.8}.proj-card.is-archived .pc-restore{position:absolute;bottom:18px;right:22px;font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-accent);padding:6px 10px;border:1px solid var(--sol-accent-40);border-radius:2px;background:transparent;cursor:pointer;opacity:0;transition:opacity var(--transition)}.proj-card.is-archived:hover .pc-restore{opacity:1}.archived-empty{padding:60px 24px;text-align:center;font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--sol-text-3);border:1px dashed var(--sol-hairline);border-radius:var(--radius)}.project-create-card{min-height:190px;border-style:dashed}.project-create-input{width:min(100%,220px);margin-top:16px;border:1px solid var(--sol-hairline);background:var(--sol-bg);color:var(--sol-text);padding:9px 10px;font-size:13px}.project-create-submit{margin-top:10px;border:1px solid var(--sol-accent-40);background:transparent;color:var(--sol-accent);font-family:var(--font-display);font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;padding:8px 12px}.project-create-submit:disabled{opacity:.5;cursor:not-allowed}.new-project-page{max-width:1120px;margin:0 auto;padding:56px 28px}.np-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:56px;max-width:960px}.np-form{display:flex;flex-direction:column;gap:22px}.np-actions{display:flex;gap:10px;align-items:center;margin-top:18px;padding-top:22px;border-top:1px solid var(--border)}.np-actions .cancel{margin-right:auto}.np-side{position:sticky;top:80px;height:fit-content}.np-side h3{font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent-55);margin:0 0 18px}.np-side .row{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid color-mix(in oklch,var(--border) 60%,transparent)}.np-side .row:last-child{border-bottom:none;padding-bottom:0}.np-side .row .ic{width:28px;height:28px;border-radius:var(--radius);display:grid;place-items:center;background:transparent;border:1px solid var(--sol-accent-40);color:var(--sol-accent);font-family:var(--font-display);font-size:11px;font-weight:500;letter-spacing:.04em;flex-shrink:0}.np-side .row .body{font-size:13px;color:var(--sol-text-2);line-height:1.6;font-weight:300}.np-side .row .body strong{color:var(--sol-text);font-weight:500;display:block;margin-bottom:6px;font-family:var(--font-display);font-size:11px;letter-spacing:.18em;text-transform:uppercase}.project-page{max-width:1120px;margin:0 auto;padding:56px 28px}.proj-header{display:block;margin-bottom:36px;padding-bottom:32px;border-bottom:1px solid var(--sol-hairline)}.proj-header .title-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.proj-header .title-row .page-title{flex:0 1 auto}.proj-header .meta-row{display:flex;align-items:center;gap:16px;margin-top:14px;font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-3);flex-wrap:wrap}.proj-header .meta-row .dot{width:2px;height:2px;border-radius:50%;background:var(--sol-text-disabled)}.proj-header .meta-row .domain{color:var(--sol-accent-55)}.proj-header .desc{max-width:720px;font-size:15px;font-weight:300;color:var(--sol-text-2);line-height:1.7;margin-top:22px;white-space:pre-wrap}.project-archived-banner{display:flex;align-items:center;gap:16px;margin:0 0 28px;padding:14px 16px;border:1px solid var(--sol-hairline);border-left:2px solid var(--sol-manual);border-radius:var(--radius);background:var(--sol-surface)}.project-archived-banner .ab-eyebrow{flex:0 0 auto;font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--sol-manual)}.project-archived-banner .ab-copy{flex:1;color:var(--sol-text-2);font-size:13px;line-height:1.5}.project-archived-banner .ab-copy strong{color:var(--sol-text);font-weight:500}.project-lifecycle-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;margin:0 0 34px;padding:18px;border:1px solid var(--sol-hairline);border-radius:var(--radius);background:var(--sol-surface)}.project-lifecycle-panel .section-kicker{margin-bottom:8px;font-family:var(--font-display);font-size:10px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--sol-text-3)}.project-lifecycle-panel h2{margin:0 0 8px;font-family:var(--font-display);font-size:13px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--sol-text)}.project-lifecycle-panel p{max-width:660px;margin:0;color:var(--sol-text-3);font-size:13px;line-height:1.6}.project-lifecycle-actions{display:flex;justify-content:flex-end}.lifecycle-archive-btn{color:var(--sol-manual);border-color:color-mix(in oklch,var(--sol-manual) 45%,transparent)}.lifecycle-archive-btn:hover:not(:disabled){color:var(--sol-text);border-color:var(--sol-manual)}.lifecycle-gate{margin:14px 0 0}.project-page.is-archived .graph-card-add{display:none}.tabs{display:flex;gap:0;margin-bottom:36px;border-bottom:1px solid var(--sol-hairline)}.tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:14px 22px 16px;color:var(--sol-text-3);font-family:var(--font-display);font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;position:relative;border-bottom:1px solid transparent;margin-bottom:-1px;transition:color var(--transition),border-color var(--transition)}.tab:hover{color:var(--sol-text-2)}.tab.is-on{color:var(--sol-text);border-bottom-color:var(--sol-accent)}.tab .count{display:inline-block;margin-left:8px;padding:0 4px;color:var(--sol-text-disabled);font-size:10px;letter-spacing:.1em}.tab.is-on .count{color:var(--sol-accent-55)}.panel{display:none}.panel.is-on{display:block}.graphs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.graph-card{display:block;padding:0;border-radius:var(--radius);border:1px solid var(--sol-hairline);background:var(--sol-surface);cursor:pointer;overflow:hidden;transition:border-color var(--transition),background var(--transition);position:relative}.graph-card:hover{border-color:var(--sol-accent-40);background:var(--sol-surface-2)}.graph-thumb{height:144px;background:var(--sol-ground);border-bottom:1px solid var(--sol-hairline);position:relative;overflow:hidden}.graph-thumb svg{width:100%;height:100%}.graph-thumb .node{fill:var(--sol-surface);stroke:var(--sol-hairline-strong);stroke-width:1}.graph-thumb .node.cat-op{stroke:var(--cat-op)}.graph-thumb .node.cat-info{stroke:var(--cat-info)}.graph-thumb .node.cat-tech{stroke:var(--cat-tech)}.graph-thumb .node.cat-gov{stroke:var(--cat-gov)}.graph-thumb .edge{stroke:var(--sol-hairline-strong);stroke-width:1;fill:none;opacity:.7}.graph-thumb .ver{position:absolute;top:12px;left:14px;padding:3px 8px;border-radius:var(--radius);background:transparent;border:1px solid var(--sol-hairline-strong);font-family:var(--font-display);font-weight:500;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-2)}.graph-meta{padding:16px 20px 18px}.graph-meta .gn{font-family:var(--font-display);font-weight:500;font-size:14px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px;color:var(--sol-text)}.graph-meta .gr{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-weight:500;font-size:10px;color:var(--sol-text-3);letter-spacing:.2em;text-transform:uppercase}.graph-meta .gr .dot{width:2px;height:2px;border-radius:50%;background:var(--sol-text-disabled)}.graph-meta .gr .count{color:var(--sol-text-2)}.project-empty-hero{min-height:360px}.members-card{border-radius:var(--radius);border:1px solid var(--sol-hairline);background:var(--sol-surface);overflow:hidden;max-width:880px}.members-card .head,.members-card .row{display:grid;grid-template-columns:1fr .9fr 130px 80px;gap:18px;align-items:center;padding:16px 24px;border-bottom:1px solid var(--sol-hairline)}.members-card .row:last-child{border-bottom:none}.members-card .head{background:transparent;font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-text-3);padding:14px 24px;border-bottom:1px solid var(--sol-hairline-strong)}.members-card .who{display:flex;align-items:center;gap:14px}.members-card .av{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--sol-surface-2);border:1px solid var(--sol-hairline-strong);font-family:var(--font-display);font-size:10px;letter-spacing:.1em;color:var(--sol-text);font-weight:500;flex-shrink:0}.members-card .name{font-size:14px;font-weight:400;color:var(--sol-text)}.members-card .email{font-size:13px;color:var(--sol-text-2);font-weight:300}.members-card .role{display:inline-flex;padding:4px 10px;border-radius:var(--radius);font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.2em;text-transform:uppercase;background:transparent;border:1px solid var(--sol-hairline-strong);color:var(--sol-text-2)}.members-card .role.owner{color:var(--sol-accent);border-color:var(--sol-accent-40)}.members-card .role.editor{color:var(--sol-text)}.members-card .role.viewer{color:var(--sol-text-3)}.members-card .role.pending{color:var(--sol-manual);border-color:var(--sol-hairline-strong)}.members-card .actions{display:flex;justify-content:flex-end}.members-card .icon-btn{width:30px;height:30px;border-radius:var(--radius);border:1px solid transparent;background:transparent;color:var(--sol-text-3);display:grid;place-items:center;cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition)}.members-card .icon-btn:hover{color:var(--sol-text);border-color:var(--sol-hairline-strong)}.members-card .icon-btn.text-action{width:auto;padding:0 10px;font-family:var(--font-display);font-size:9px;font-weight:500;letter-spacing:.2em;text-transform:uppercase}.you-badge{color:var(--sol-accent-55);font-family:var(--font-display);font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;margin-left:12px}.members-gate{margin:0 0 14px;padding:10px 14px;border:1px solid var(--sol-hairline);background:var(--sol-surface);font-size:12.5px;color:var(--sol-text-3);line-height:1.5;border-radius:var(--radius)}.members-band{display:flex;align-items:center;gap:16px;margin-top:32px;margin-bottom:22px;flex-wrap:wrap}.members-toggle{display:flex;gap:6px;flex:0 1 auto;flex-wrap:wrap}.members-toggle button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid var(--sol-hairline-strong);font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-text-3);padding:8px 14px;border-radius:var(--radius);cursor:pointer;transition:color var(--transition),border-color var(--transition)}.members-toggle button:hover{color:var(--sol-text)}.members-toggle button.is-on{color:var(--sol-text);border-color:var(--sol-accent-40)}.members-toggle button .ct{color:var(--sol-text-disabled);margin-left:4px;letter-spacing:.1em}.members-toggle button.is-on .ct{color:var(--sol-accent-55)}.members-card-section{padding:14px 24px;border-bottom:1px solid var(--sol-hairline);font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent-55);background:var(--sol-ground)}.pending-row .name{color:var(--sol-text-2)}.members-add{display:flex;align-items:center;gap:14px;padding:16px 24px;background:transparent;width:100%;border-top:1px solid var(--sol-hairline);border-right:0;border-bottom:0;border-left:0;color:var(--sol-text-2);font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:background var(--transition),color var(--transition)}.members-add:hover{color:var(--sol-text);background:var(--sol-surface-2)}.members-add .ic{width:24px;height:24px;border-radius:var(--radius);background:transparent;color:var(--sol-accent);display:grid;place-items:center;font-size:16px;line-height:1;border:1px solid var(--sol-accent-40)}.auth-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.signed-out-center{text-align:center}.signed-out-card .mark{margin:0 auto 24px;color:var(--sol-accent);opacity:.85}.signed-out-action{display:inline-flex;text-decoration:none}.route-error-card{text-align:center}.err-code{margin:0 0 12px;font-family:var(--font-display);font-size:96px;font-weight:500;letter-spacing:.06em;line-height:1;color:var(--sol-text)}.err-code.is-risk{color:var(--sol-risk)}.err-code .glyph-line{display:block;width:100%;height:1px;background:var(--sol-hairline-strong);margin:20px 0 28px}.route-error-eyebrow,.route-error-card .sub{text-align:center}.err-actions{display:flex;gap:10px;margin-top:22px}.err-actions .btn-primary,.err-actions .btn{flex:1;height:42px;font-size:11px}.legal-placeholder{max-width:720px;margin:24px auto -8px;padding:10px 16px;border:1px solid var(--sol-manual);border-left-width:2px;background:color-mix(in oklch,var(--sol-manual) 8%,transparent);font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--sol-manual);line-height:1.5}.legal-placeholder strong{font-weight:500;color:var(--sol-text);margin-right:8px}.legal-shell{max-width:1180px;margin:0 auto;padding:56px 32px 120px}.legal-head{margin-bottom:56px;max-width:720px}.legal-head .meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;font-family:var(--font-display);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-3)}.legal-head .meta span strong{color:var(--sol-text-2);font-weight:500;margin-left:6px}.legal-head .lede{margin-top:28px;color:var(--sol-text-2);font-size:16px;line-height:1.65;max-width:62ch}.legal-body{display:grid;grid-template-columns:240px 1fr;gap:72px;align-items:start}.legal-toc{position:sticky;top:32px;border-top:1px solid var(--sol-hairline-strong);padding-top:14px}.legal-toc .lbl{font-family:var(--font-display);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-3);margin-bottom:14px}.legal-toc ol{list-style:none;margin:0;padding:0;counter-reset:tocnum}.legal-toc li{counter-increment:tocnum;padding:5px 0}.legal-toc a{display:grid;grid-template-columns:28px 1fr;gap:8px;text-decoration:none;color:var(--sol-text-2);font-size:13px;line-height:1.4;transition:color var(--transition)}.legal-toc a:before{content:counter(tocnum,decimal-leading-zero);font-family:var(--font-display);font-size:10px;letter-spacing:.15em;color:var(--sol-text-3);padding-top:1px}.legal-toc a:hover{color:var(--sol-text)}.legal-toc a:hover:before{color:var(--sol-accent)}.legal-counter{counter-reset:secnum}.legal-section{border-top:1px solid var(--sol-hairline);padding:36px 0 8px;counter-increment:secnum}.legal-section:first-of-type{border-top:1px solid var(--sol-hairline-strong)}.legal-section h2{display:grid;grid-template-columns:56px 1fr;gap:18px;align-items:baseline;margin:0 0 4px;font-family:var(--font-display);font-weight:500;font-size:22px;letter-spacing:.06em;text-transform:uppercase;color:var(--sol-text);line-height:1.2}.legal-section h2:before{content:"§ " counter(secnum,decimal-leading-zero);font-size:11px;letter-spacing:.25em;color:var(--sol-accent-55)}.legal-section .sec-body{padding-left:74px;max-width:64ch}.legal-section p{color:var(--sol-text-2);font-size:15px;line-height:1.7;margin:16px 0}.legal-section p strong{color:var(--sol-text);font-weight:500}.legal-section .callout{border:1px solid var(--sol-hairline);border-left:2px solid var(--sol-accent-40);background:var(--sol-surface);padding:14px 18px;margin:20px 0;font-size:13.5px;color:var(--sol-text-2);line-height:1.6}.legal-section .callout strong{display:block;margin-bottom:4px;font-family:var(--font-display);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-accent-55)}.legal-foot{margin-top:64px;padding-top:22px;border-top:1px solid var(--sol-hairline-strong);color:var(--sol-text-3);font-family:var(--font-display);font-size:10px;letter-spacing:.2em;text-transform:uppercase;display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px}.legal-foot a{color:var(--sol-text-2);text-decoration:none;transition:color var(--transition)}.legal-foot a:hover{color:var(--sol-text)}@media(max-width:900px){.legal-body{grid-template-columns:1fr;gap:32px}}@media(max-width:700px){.legal-section h2{grid-template-columns:44px 1fr;gap:12px}.legal-section .sec-body{padding-left:56px}}.sol-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0a0c0fb8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:flex-start;justify-content:center;padding:48px 24px 64px;overflow-y:auto;opacity:0;visibility:hidden;transition:opacity var(--transition),visibility var(--transition)}.sol-modal-backdrop.is-open{opacity:1;visibility:visible}.sol-modal{background:var(--sol-bg);border:1px solid var(--sol-hairline-strong);border-radius:var(--radius);width:100%;max-width:720px;transform:translateY(-12px);transition:transform var(--transition)}.sol-modal-backdrop.is-open .sol-modal{transform:translateY(0)}.sol-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:36px 40px 28px;border-bottom:1px solid var(--sol-hairline)}.sol-modal-eyebrow{font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent-55);margin:0 0 12px}.sol-modal-title{font-family:var(--font-display);font-weight:500;font-size:28px;letter-spacing:.06em;text-transform:uppercase;line-height:1.2;color:var(--sol-text);margin:0 0 6px}.sol-modal-sub{font-size:13px;color:var(--sol-text-2);font-weight:300;line-height:1.6;margin:0;max-width:48ch}.sol-modal-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid var(--sol-hairline-strong);border-radius:var(--radius);width:32px;height:32px;display:grid;place-items:center;color:var(--sol-text-2);cursor:pointer;flex-shrink:0;transition:color var(--transition),border-color var(--transition)}.sol-modal-close:hover{color:var(--sol-text);border-color:var(--sol-text-3)}.sol-modal-section{padding:32px 40px;border-bottom:1px solid var(--sol-hairline)}.sol-modal-section-label{display:flex;align-items:center;gap:14px;font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-accent-55);margin:0 0 18px}.sol-modal-section-label:before{content:"";width:20px;height:1px;background:var(--sol-accent-55)}.sol-modal-section h3{font-family:var(--font-display);font-weight:500;font-size:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--sol-text);margin:0 0 6px}.sol-modal-section .help{font-size:13px;color:var(--sol-text-2);font-weight:300;line-height:1.6;margin:0 0 22px;max-width:56ch}.sol-field{display:flex;flex-direction:column;gap:8px}.sol-field .sol-textarea{min-height:100px;padding:12px 14px;background:transparent;border:1px solid var(--sol-hairline-strong);border-radius:var(--radius);color:var(--sol-text);font-family:var(--font-body);font-size:14px;outline:none;resize:vertical;line-height:1.6;transition:border-color var(--transition),background var(--transition)}.sol-field .sol-textarea:focus{border-color:var(--sol-accent);background:var(--sol-surface)}.invite-email-box{min-height:64px}.invite-stats{margin-top:10px;margin-bottom:0}.sol-segmented{display:inline-flex;align-self:flex-start;width:fit-content;max-width:100%;border:1px solid var(--sol-hairline-strong);border-radius:var(--radius);overflow:hidden;flex-wrap:wrap}.sol-segmented input{position:absolute;opacity:0;pointer-events:none}.sol-segmented label{padding:10px 18px;font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-2);cursor:pointer;background:transparent;transition:color var(--transition),background var(--transition);border-right:1px solid var(--sol-hairline-strong)}.sol-segmented label:last-of-type{border-right:0}.sol-segmented label:hover,.sol-segmented label.is-on{color:var(--sol-text)}.sol-segmented label.is-on{background:var(--sol-accent-10);box-shadow:inset 0 -2px 0 var(--sol-accent)}.sol-inline-note{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--sol-hairline);background:transparent;font-size:13px;line-height:1.55;color:var(--sol-text-2);margin-top:14px}.sol-inline-note.is-info{border-left:2px solid var(--sol-accent)}.sol-inline-note.is-warn{border-left:2px dashed var(--sol-manual)}.sol-inline-note .ic{font-family:var(--font-display);font-weight:500;font-size:12px;width:16px;text-align:center;color:var(--sol-accent);flex-shrink:0}.sol-inline-note.is-warn .ic{color:var(--sol-manual)}.sol-inline-note strong{color:var(--sol-text);font-weight:500}.invite-links{display:grid;gap:6px;margin-top:8px}.invite-links a{color:var(--sol-accent);overflow-wrap:anywhere}.sol-modal-footer{display:flex;align-items:center;gap:12px;padding:24px 40px;border-top:1px solid var(--sol-hairline)}.sol-modal-footer .spacer{flex:1}.sol-modal-footer .meta{font-family:var(--font-display);font-weight:500;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--sol-text-3)}.import-page{max-width:1120px;margin:0 auto;padding:56px 28px}.wiz-stepper{display:flex;align-items:center;gap:10px;max-width:1040px;margin:28px auto 36px;padding:0 8px}.wiz-step{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:0;display:flex;align-items:center;gap:8px;color:var(--text-4);cursor:default}.wiz-step .mark{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:1.5px solid var(--border-2);font-family:var(--font-mono);font-size:10.5px;color:var(--text-3);flex-shrink:0}.wiz-step .label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase}.wiz-step.is-current .mark{background:color-mix(in oklch,var(--accent) 30%,var(--surface));border-color:var(--accent);color:var(--text);box-shadow:0 0 0 4px color-mix(in oklch,var(--accent) 14%,transparent)}.wiz-step.is-current{color:var(--text)}.wiz-step.is-done{color:var(--text-2)}.wiz-step.is-done .mark{background:color-mix(in oklch,var(--accent) 18%,var(--surface));border-color:color-mix(in oklch,var(--accent) 42%,var(--border));color:var(--accent)}.wiz-step.is-clickable{cursor:pointer}.wiz-step:disabled{opacity:1}.wiz-rail{flex:1 1 36px;min-width:18px;max-width:52px;height:1.5px;background:var(--border)}.wiz-rail.is-done{background:color-mix(in oklch,var(--accent) 48%,var(--border))}.wiz-body{max-width:720px;margin:0 auto}.wiz-body.wide{max-width:980px}.wiz-body h2{font-size:22px;font-weight:600;letter-spacing:-.015em;margin:0 0 4px}.wiz-body .sub{color:var(--text-3);font-size:13.5px;margin:0 0 26px}.wiz-body code{font-family:var(--font-mono);font-size:12px;background:var(--surface-2);padding:1px 6px;border-radius:3px}.import-alert{max-width:720px;margin-left:auto;margin-right:auto}.import-field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.import-field span{display:flex;gap:6px;font-family:var(--font-display);font-weight:500;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--sol-text-2)}.import-field em{color:var(--sol-accent);font-style:normal}.dropzone{border:2px dashed var(--border-2);border-radius:8px;padding:48px 24px;text-align:center;margin-top:8px}.dropzone.is-ok{border-color:color-mix(in oklch,var(--accent) 42%,var(--border-2));background:color-mix(in oklch,var(--accent) 5%,transparent)}.dropzone.is-err{border-color:color-mix(in oklch,var(--risk) 46%,var(--border-2))}.dropzone .ic{width:48px;height:48px;border-radius:12px;background:color-mix(in oklch,var(--accent) 14%,var(--surface-2));color:var(--accent);border:1px solid color-mix(in oklch,var(--accent) 30%,var(--border));margin:0 auto 14px;display:grid;place-items:center;font-family:var(--font-display);font-size:10px;letter-spacing:.12em}.dropzone .ttl{font-size:14.5px;font-weight:500}.dropzone .alt{margin-top:6px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;color:var(--text-4)}.dropzone .reset{margin-top:14px;margin-left:4px;margin-right:4px;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--text-3);cursor:pointer;background:transparent;border:1px solid var(--border-2);padding:4px 10px;border-radius:5px}.dropzone .upload-control{display:inline-block}.dropzone .upload-control input{display:none}.dropzone-separator{margin:12px 0 -2px;color:var(--text-4);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.wiz-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:36px auto 0;padding-top:20px;border-top:1px solid var(--border)}.wiz-foot .counter{margin-left:auto;margin-right:auto;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-4)}.import-status{display:grid;gap:4px;margin-bottom:14px;padding:13px 14px;border:1px solid var(--border);border-radius:8px;background:color-mix(in oklch,var(--surface) 74%,transparent)}.import-status strong{font-family:var(--font-display);font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase}.import-status span{color:var(--text-3);font-size:12.5px}.import-status.is-ok strong{color:var(--accent)}.import-status.is-warning strong{color:var(--manual)}.import-status.is-error strong{color:var(--risk)}.import-issue-block{margin:0 0 16px;border:1px solid var(--border);border-radius:8px;overflow:hidden}.import-issue-title{padding:10px 12px;border-bottom:1px solid var(--border);font-family:var(--font-display);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--text-2);background:var(--surface)}.import-issue{border-bottom:1px solid var(--border)}.import-issue:last-child{border-bottom:0}.import-issue summary{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;cursor:pointer;color:var(--text-2);font-size:13px}.import-issue summary span:last-child{flex-shrink:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;color:var(--text-4);text-transform:uppercase}.import-ref-list{display:grid;gap:6px;padding:0 12px 12px}.import-ref{display:grid;grid-template-columns:46px minmax(90px,.8fr) minmax(0,1fr);gap:10px;align-items:center;min-height:28px;padding:6px 8px;background:color-mix(in oklch,var(--bg) 55%,var(--surface));border:1px solid var(--border);border-radius:6px;font-size:12px}.import-ref span,.import-ref em,.import-ref-more{min-width:0;color:var(--text-4);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal}.import-ref strong{min-width:0;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.import-stat-grid div,.summary-stats div{min-width:0;padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.import-stat-grid strong,.summary-stats strong{display:block;font-family:var(--font-display);font-size:22px;font-weight:500;color:var(--text)}.import-stat-grid span,.summary-stats span{display:block;margin-top:4px;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-4)}.discover-grid{display:grid;gap:14px}.discover-section,.view-panel,.overlay-panel,.summary-card,.meta-table{border:1px solid var(--border);border-radius:8px;background:color-mix(in oklch,var(--surface) 78%,transparent)}.discover-section{padding:16px}.discover-title,.cat-title,.overlay-head{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-family:var(--font-display);font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--text-2)}.category-dot,.overlay-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto;background:var(--accent)}.category-dot.is-operational{background:var(--cat-op)}.category-dot.is-information{background:var(--cat-info)}.category-dot.is-technical{background:var(--cat-tech)}.category-dot.is-governance{background:var(--cat-gov)}.category-dot.is-other{background:var(--text-3)}.overlay-dot.is-pii{background:var(--pii)}.overlay-dot.is-manual{background:var(--manual)}.overlay-dot.is-unknown{background:var(--unknown)}.overlay-dot.is-risk{background:var(--risk)}.overlay-dot.is-sor{background:var(--sor)}.overlay-dot.is-accent{background:var(--accent)}.import-pills,.summary-chips{display:flex;flex-wrap:wrap;gap:8px}.import-pill,.summary-chips em{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:4px 8px;border:1px solid var(--border);border-radius:5px;color:var(--text-2);background:var(--bg);font-size:12px;font-style:normal}.import-pill em{color:var(--text-4);font-style:normal}.meta-table{margin-top:14px;overflow:hidden}.mt-head,.mt-row{display:grid;grid-template-columns:minmax(140px,.7fr) minmax(220px,1.2fr) minmax(120px,.5fr);gap:14px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border)}.mt-head{font-family:var(--font-display);font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--text-4);background:var(--surface)}.mt-row:last-child{border-bottom:0}.mt-row strong{min-width:0;overflow-wrap:anywhere;color:var(--text-2);font-size:13px}.mt-row span{min-width:0;color:var(--text-3);font-size:12px}.mt-row span:first-of-type{display:flex;flex-wrap:wrap;gap:5px}.mt-row em{padding:2px 6px;border-radius:4px;background:var(--bg);color:var(--text-3);font-style:normal}.view-warnings{display:grid;gap:10px;margin-bottom:16px}.entity-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px}.entity-tab-wrap{display:inline-flex;min-width:0;border:1px solid var(--border);border-radius:6px;overflow:hidden}.entity-tab-wrap.is-on{border-color:color-mix(in oklch,var(--accent) 44%,var(--border))}.entity-tab,.entity-remove,.add-entity-form button,.type-row,.node-row,.add-cond-btn,.cond-remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:inherit;cursor:pointer}.entity-tab{display:inline-flex;align-items:center;gap:7px;min-height:34px;max-width:240px;padding:7px 10px;color:var(--text-3);font-family:var(--font-display);font-size:11px;font-weight:500;letter-spacing:.13em;text-transform:uppercase}.entity-tab.is-on{color:var(--text);background:color-mix(in oklch,var(--accent) 8%,transparent)}.entity-tab.is-empty{color:var(--risk)}.entity-tab .lock,.entity-tab .badge{color:var(--text-4);font-family:var(--font-mono);font-size:9px;letter-spacing:.08em}.entity-remove{width:30px;border-left:1px solid var(--border);color:var(--text-4)}.entity-remove:hover{color:var(--text)}.add-entity-form{display:inline-flex;align-items:stretch;min-height:34px;border:1px solid var(--border);border-radius:6px;overflow:hidden}.add-entity-form input{width:150px;border:0;background:var(--bg);color:var(--text);padding:0 10px;outline:none}.add-entity-form button{padding:0 10px;border-left:1px solid var(--border);color:var(--accent);font-family:var(--font-display);font-size:10px;letter-spacing:.16em;text-transform:uppercase}.view-panel,.overlay-panel{padding:18px}.cat-block+.cat-block{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.type-block{border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-top:10px}.type-row,.node-row{width:100%;display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:34px;padding:8px 10px;text-align:left;color:var(--text-3)}.type-row{background:var(--surface)}.node-row{border-top:1px solid var(--border);background:color-mix(in oklch,var(--bg) 42%,transparent)}.type-row strong,.node-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;color:var(--text-2)}.type-row em,.node-row em{min-width:0;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-4);font-family:var(--font-mono);font-size:10px;font-style:normal}.check{width:14px;height:14px;border:1px solid var(--border-2);border-radius:3px;background:var(--bg)}.type-row.is-on .check,.node-row.is-on .check{border-color:var(--accent);background:var(--accent)}.type-row.is-mixed .check{border-color:var(--accent);background:linear-gradient(to right,var(--accent) 50%,var(--bg) 50%)}.overlay-head{justify-content:flex-start}.overlay-head strong{color:var(--text);font-size:13px}.overlay-head em{margin-left:auto;color:var(--text-4);font-family:var(--font-mono);font-size:10px;font-style:normal;letter-spacing:.08em;text-transform:uppercase}.empty-hint{padding:16px;border:1px dashed var(--border);border-radius:8px;color:var(--text-4);font-size:13px}.cond-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(130px,.65fr) minmax(160px,.9fr) 32px;gap:8px;align-items:center;margin-top:8px}.cond-row select,.cond-row input,.cond-placeholder{width:100%;height:34px;min-width:0;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text-2);padding:0 10px;font-size:12.5px}.cond-placeholder{display:flex;align-items:center;color:var(--text-4)}.cond-remove{width:32px;height:32px;border:1px solid var(--border);border-radius:6px;color:var(--text-4)}.add-cond-btn{margin-top:12px;min-height:34px;padding:0 12px;border:1px solid var(--border);border-radius:6px;color:var(--accent);font-family:var(--font-display);font-size:10px;font-weight:500;letter-spacing:.16em;text-transform:uppercase}.summary-card{padding:20px}.summary-title{margin-bottom:16px;color:var(--text);font-family:var(--font-display);font-size:18px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.summary-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.summary-group{margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.summary-group>span{display:block;margin-bottom:10px;font-family:var(--font-display);font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3)}@media(max-width:900px){.wiz-stepper{align-items:flex-start;overflow-x:auto;padding-bottom:8px}.wiz-rail{min-width:24px}.import-stat-grid,.summary-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.mt-head,.mt-row,.cond-row{grid-template-columns:1fr}.cond-remove{width:100%}}@media(max-width:640px){.import-page{padding:36px 18px 72px}.wiz-step .label{display:none}.wiz-foot{flex-wrap:wrap}.wiz-foot .counter{order:-1;width:100%;text-align:center}.import-stat-grid,.summary-stats{grid-template-columns:1fr}.import-ref{grid-template-columns:42px minmax(0,1fr)}.import-ref em{grid-column:2}.type-row,.node-row{grid-template-columns:18px minmax(0,1fr)}.type-row em,.node-row em{grid-column:2;max-width:100%}}.graph-document-page{max-width:1280px;margin:0 auto;padding:40px 28px 72px}.graph-document-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.graph-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:26px 0}.metric-tile{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:16px}.metric-tile span{display:block;margin-bottom:8px;color:var(--text-4);font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.metric-tile strong{color:var(--text);font-size:28px;font-weight:600}.graph-document-preview{border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px),var(--surface);background-size:28px 28px;overflow:hidden}.graph-document-preview svg{display:block;width:100%;height:auto;min-height:280px}.graph-document-preview .edge{fill:none;stroke:color-mix(in oklch,var(--accent) 45%,var(--text-4));stroke-width:1.4;opacity:.42}.preview-node circle{fill:var(--surface-2);stroke:var(--accent);stroke-width:1.5}.preview-node text{fill:var(--text-3);font-family:var(--font-mono);font-size:9px;text-anchor:middle}.graph-document-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;margin-top:18px}.graph-data-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-top:16px;overflow:hidden}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border)}.section-heading h2{margin:0;font-size:14px;font-weight:600}.section-heading span{color:var(--text-4);font-family:var(--font-mono);font-size:10px}.graph-data-table{overflow-x:auto}.graph-data-table .table-head,.graph-data-table .table-row{display:grid;min-width:620px}.graph-data-table .table-head{background:var(--surface-2);color:var(--text-4);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.graph-data-table .table-head div,.graph-data-table .table-row div{padding:11px 14px;border-bottom:1px solid var(--border);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.graph-data-table .table-row{color:var(--text-3);font-size:12.5px}.revision-list{display:grid}.revision-row{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:16px;align-items:center;padding:13px 16px;border-bottom:1px solid var(--border);color:var(--text-3);font-size:12.5px}.revision-row:last-child{border-bottom:0}.revision-row strong{color:var(--text)}.revision-row time{color:var(--text-4);font-family:var(--font-mono);font-size:10px}@media(max-width:720px){.react-route-page{padding:36px 18px}.react-route-card{padding:26px}.react-route-card h1{font-size:28px}.react-route-meta{grid-template-columns:1fr;gap:4px}.topbar-action{display:none}.workspace-page .v1-grid,.workspace-page .archived-grid{grid-template-columns:1fr}.np-layout{grid-template-columns:1fr;gap:32px}.prof-grid{grid-template-columns:1fr;gap:24px}.prof-nav{position:static}.identity-row{grid-template-columns:1fr;gap:18px}.identity-info dl{grid-template-columns:1fr}.np-side{position:static}.graphs-grid,.project-archived-banner,.project-lifecycle-panel{grid-template-columns:1fr}.project-archived-banner{align-items:flex-start;flex-direction:column}.project-lifecycle-actions{justify-content:flex-start}.members-card .head{display:none}.members-card .row{grid-template-columns:1fr;gap:10px;padding:14px 16px}.graph-document-header{flex-direction:column}.graph-summary-grid,.graph-document-grid{grid-template-columns:1fr}.revision-row{grid-template-columns:1fr;gap:4px}}
