html[data-density=compact]{--density-pad:6px;--density-gap:8px}html[data-density=comfortable]{--density-pad:10px;--density-gap:12px}html[data-density=roomy]{--density-pad:14px;--density-gap:16px}html[data-skin=nova]{--font-display:var(--font-sans)}html[data-skin=federal]{--font-display:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}.sev-critical{color:var(--crit-fg)}.sev-high{color:var(--high-fg)}.sev-medium{color:var(--med-fg)}.sev-low{color:var(--low-fg)}.sev-info{color:var(--info-fg)}:root{--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-xl:14px;--font-sans:"Geist", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"Geist Mono", "JetBrains Mono", ui-monospace, Menlo, monospace;--motion-fast:.1s cubic-bezier(.16, 1, .3, 1);--motion-base:.18s cubic-bezier(.16, 1, .3, 1)}html[data-theme=dark]{--bg:#08090c;--bg-elev:#0c0d11;--surface:#111216;--surface2:#17181d;--surface3:#1c1e24;--border:#23242b;--border-strong:#2e2f38;--text:#f4f4f5;--text2:#a1a1aa;--text3:#71717a;--text4:#52525b;--accent:#7c5cff;--accent-hover:#9b85ff;--accent-sub:#7c5cff1f;--accent-line:#7c5cff59;--crit-fg:#ff6b85;--crit-bg:#ff6b851a;--crit-br:#ff6b854d;--crit-solid:#e84564;--high-fg:#ffa24a;--high-bg:#ffa24a1a;--high-br:#ffa24a47;--high-solid:#e8821f;--med-fg:#f5c957;--med-bg:#f5c9571a;--med-br:#f5c95747;--med-solid:#d9ae33;--low-fg:#4de0b8;--low-bg:#4de0b81a;--low-br:#4de0b847;--low-solid:#25b88c;--info-fg:#a1a1aa;--info-bg:#a1a1aa14;--info-br:#a1a1aa38;--info-solid:#71717a;--pass-fg:#4de0b8;--pass-solid:#25b88c;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 16px #00000073, 0 0 0 1px #ffffff05;--shadow-lg:0 16px 48px #0009, 0 0 0 1px #ffffff08;--selection:#7c5cff59}html[data-theme=light]{--bg:#fafafa;--bg-elev:#fff;--surface:#fff;--surface2:#f4f4f5;--surface3:#ebebee;--border:#e4e4e7;--border-strong:#d4d4d8;--text:#0a0a0b;--text2:#52525b;--text3:#71717a;--text4:#a1a1aa;--accent:#5b3df5;--accent-hover:#4a2ee0;--accent-sub:#5b3df51a;--accent-line:#5b3df559;--crit-fg:#9b0f25;--crit-bg:#fce4e8;--crit-br:#e9a7b3;--crit-solid:#c8253d;--high-fg:#8a3c06;--high-bg:#fbe8d2;--high-br:#e8b680;--high-solid:#b36315;--med-fg:#6e5208;--med-bg:#faf0c4;--med-br:#dabf64;--med-solid:#a6830c;--low-fg:#0e6a56;--low-bg:#d0eee5;--low-br:#77c2aa;--low-solid:#0e7e63;--info-fg:#52525b;--info-bg:#eeeef0;--info-br:#d4d4d8;--info-solid:#71717a;--pass-fg:#0e6a56;--pass-solid:#0e7e63;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 2px 8px #0000000d, 0 0 0 1px #0000000a;--shadow-lg:0 12px 32px #0000001a, 0 0 0 1px #0000000a;--selection:#5b3df533}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{font-family:var(--font-sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11", "ss01", "tnum";font-size:13.5px;line-height:1.5}::selection{background:var(--selection)}#root{flex-direction:column;height:100dvh;display:flex}.hdr{background:var(--bg);border-bottom:1px solid var(--border);z-index:30;flex-shrink:0;align-items:center;gap:20px;height:52px;padding:0 20px;display:flex;position:sticky;top:0}.hdr-brand{letter-spacing:-.01em;color:var(--text);align-items:center;gap:10px;font-weight:600;display:flex}.hdr-brand svg{color:var(--accent);width:18px;height:18px}.hdr-brand .name{font-size:14px}.hdr-crumb{color:var(--text3);letter-spacing:-.005em;align-items:center;gap:8px;font-size:13px;display:flex}.hdr-crumb .sep{color:var(--text4)}.hdr-crumb .inst{color:var(--text);font-family:var(--font-mono);font-size:12.5px;font-weight:500}.hdr-meta{color:var(--text3);font-variant-numeric:tabular-nums;align-items:center;gap:14px;font-size:12px;display:flex}.hdr-meta .dot{background:var(--pass-solid);width:6px;height:6px;box-shadow:0 0 0 3px color-mix(in srgb, var(--pass-solid) 20%, transparent);border-radius:50%}.hdr-meta .k{color:var(--text3);margin-right:4px}.hdr-meta .v{color:var(--text);font-family:var(--font-mono);font-weight:500}.icon-btn{width:30px;height:30px;color:var(--text2);border-radius:var(--radius-md);cursor:pointer;transition:background var(--motion-fast), color var(--motion-fast), border-color var(--motion-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--surface2);color:var(--text);border-color:var(--border)}.icon-btn svg{width:15px;height:15px}.theme-toggle{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-md);gap:0;padding:2px;display:inline-flex}.theme-toggle button{color:var(--text3);cursor:pointer;width:26px;height:22px;transition:all var(--motion-fast);background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.theme-toggle button.on{background:var(--bg-elev);color:var(--text);box-shadow:var(--shadow-sm)}.theme-toggle svg{width:13px;height:13px}.shell{flex:1;grid-template-columns:360px 1fr;min-height:0;display:grid;overflow:hidden}.rail{background:var(--bg);border-right:1px solid var(--border);flex-direction:column;min-height:0;display:flex;overflow:hidden}.detail{background:var(--bg);min-height:0;overflow-y:auto}.ov{border-bottom:1px solid var(--border);padding:20px 20px 16px}.ov-grade{align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.ov-score{flex-shrink:0;width:72px;height:72px;position:relative}.ov-score svg{width:100%;height:100%;transform:rotate(-90deg)}.ov-score .bg{stroke:var(--surface2)}.ov-score .fg{stroke-linecap:round;transition:stroke-dashoffset .6s cubic-bezier(.16,1,.3,1)}.ov-score .val{flex-direction:column;justify-content:center;align-items:center;gap:0;display:flex;position:absolute;inset:0}.ov-score .val .n{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--text);font-size:22px;font-weight:600;line-height:1}.ov-score .val .g{color:var(--text3);letter-spacing:.06em;text-transform:uppercase;margin-top:2px;font-size:9px;font-weight:500}.ov-info{flex:1;min-width:0;padding-top:2px}.ov-info .eyebrow{color:var(--text3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;font-size:10.5px;font-weight:500}.ov-info .head{letter-spacing:-.015em;color:var(--text);margin-bottom:4px;font-size:16px;font-weight:600;line-height:1.3}.ov-info .ready{color:var(--crit-fg);align-items:center;gap:6px;font-size:11.5px;font-weight:500;display:inline-flex}.ov-info .ready.ok{color:var(--pass-fg)}.ov-info .ready .d{background:currentColor;border-radius:50%;width:6px;height:6px}.ov-stats{border-top:1px solid var(--border);grid-template-columns:1fr 1fr 1fr;gap:0;margin:0 -20px;padding:12px 20px 0;display:grid}.ov-stat{padding:0 4px}.ov-stat:not(:last-child){border-right:1px solid var(--border)}.ov-stat .n{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--text);font-size:18px;font-weight:600;line-height:1.1}.ov-stat .n.crit{color:var(--crit-fg)}.ov-stat .n.high{color:var(--high-fg)}.ov-stat .l{color:var(--text3);text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-size:10.5px;font-weight:500}.rail-search{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:10px 14px;display:flex}.rail-search .search-wrap{flex:1;position:relative}.rail-search input{background:var(--surface);border:1px solid var(--border);width:100%;color:var(--text);font-size:12.5px;font-family:var(--font-sans);border-radius:var(--radius-md);transition:border-color var(--motion-fast), background var(--motion-fast);outline:none;padding:6px 10px 6px 28px}.rail-search input:focus{border-color:var(--accent-line);background:var(--surface2)}.rail-search input::placeholder{color:var(--text4)}.rail-search svg.si{width:12px;height:12px;color:var(--text4);position:absolute;top:50%;left:9px;transform:translateY(-50%)}.rail-search kbd{font-family:var(--font-mono);color:var(--text3);background:var(--surface2);border:1px solid var(--border);border-radius:3px;padding:2px 5px;font-size:10px}.rail-sort{color:var(--text3);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--border);background:var(--bg);align-items:center;gap:10px;padding:8px 20px;font-size:10.5px;font-weight:500;display:flex}.rail-sort .count{font-family:var(--font-mono);text-transform:none;letter-spacing:0;color:var(--text3);margin-left:auto;font-size:11px}.rail-list{flex:1;min-height:0;padding:4px 0;overflow-y:auto}.domain-row{grid-gap:10px;cursor:pointer;transition:background var(--motion-fast);border-left:2px solid #0000;grid-template-columns:20px 1fr auto;align-items:center;padding:10px 16px 10px 14px;display:grid;position:relative}.domain-row:hover{background:var(--surface)}.domain-row.sel{background:var(--surface);border-left-color:var(--accent)}.domain-row.sel:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18l6-6-6-6'/%3E%3C/svg%3E") 50%/contain no-repeat;width:14px;height:14px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.domain-row .dot-wrap{justify-content:center;align-items:center;display:flex}.sev-dot{background:var(--info-solid);width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb, var(--info-solid) 15%, transparent);border-radius:50%}.sev-dot.crit{background:var(--crit-solid);box-shadow:0 0 0 3px color-mix(in srgb, var(--crit-solid) 20%, transparent)}.sev-dot.high{background:var(--high-solid);box-shadow:0 0 0 3px color-mix(in srgb, var(--high-solid) 20%, transparent)}.sev-dot.med{background:var(--med-solid);box-shadow:0 0 0 3px color-mix(in srgb, var(--med-solid) 20%, transparent)}.sev-dot.low{background:var(--low-solid);box-shadow:0 0 0 3px color-mix(in srgb, var(--low-solid) 20%, transparent)}.sev-dot.pass{background:var(--pass-solid);box-shadow:0 0 0 3px color-mix(in srgb, var(--pass-solid) 20%, transparent)}.domain-row .main{min-width:0}.domain-row .main .nm{color:var(--text);letter-spacing:-.005em;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;line-height:1.2;overflow:hidden}.domain-row .main .sub{color:var(--text3);font-variant-numeric:tabular-nums;align-items:center;gap:6px;margin-top:3px;font-size:11px;display:flex}.domain-row .main .sub .piece{align-items:center;gap:3px;display:inline-flex}.domain-row .main .sub .piece.crit{color:var(--crit-fg)}.domain-row .main .sub .piece.high{color:var(--high-fg)}.domain-row .main .sub .sep{color:var(--text4)}.domain-row .main .sub .clean{color:var(--pass-fg)}.domain-row .sc{align-items:center;gap:8px;display:flex}.score-mini{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums;text-align:right;min-width:22px;font-size:13px;font-weight:600}.score-mini.crit{color:var(--crit-fg)}.score-mini.high{color:var(--high-fg)}.score-mini.med{color:var(--med-fg)}.score-mini.low{color:var(--low-fg)}.score-mini.pass{color:var(--pass-fg)}.score-bar{background:var(--surface2);border-radius:2px;width:40px;height:4px;position:relative;overflow:hidden}.score-bar .fill{background:var(--pass-solid);border-radius:2px;transition:width .4s cubic-bezier(.16,1,.3,1);position:absolute;top:0;bottom:0;left:0}.score-bar .fill.crit{background:var(--crit-solid)}.score-bar .fill.high{background:var(--high-solid)}.score-bar .fill.med{background:var(--med-solid)}.score-bar .fill.low{background:var(--low-solid)}.rail-footer{border-top:1px solid var(--border);background:var(--bg);color:var(--text3);align-items:center;gap:10px;padding:12px 16px;font-size:11.5px;display:flex}.rail-footer .sig{font-family:var(--font-mono);color:var(--text2);font-size:11px}.dv{flex-direction:column;min-height:100%;display:flex}.dv-head{border-bottom:1px solid var(--border);background:var(--bg);z-index:10;-webkit-backdrop-filter:saturate(140%)blur(8px);backdrop-filter:saturate(140%)blur(8px);background:color-mix(in srgb, var(--bg) 92%, transparent);padding:24px 32px 20px;position:sticky;top:0}.dv-head .top{color:var(--text3);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:10px;margin-bottom:10px;font-size:11px;font-weight:500;display:flex}.dv-head .top .sev-dot{margin-right:2px}.dv-head .top .idx{font-family:var(--font-mono);color:var(--text4);text-transform:none;letter-spacing:0;font-size:11px}.dv-head h1{letter-spacing:-.025em;color:var(--text);margin:0 0 10px;font-size:24px;font-weight:600;line-height:1.2}.dv-head .summary{color:var(--text2);flex-wrap:wrap;align-items:center;gap:20px;font-size:13px;display:flex}.dv-head .summary .stat{font-variant-numeric:tabular-nums;align-items:center;gap:6px;display:flex}.dv-head .summary .stat .n{font-family:var(--font-mono);color:var(--text);letter-spacing:-.01em;font-size:13px;font-weight:600}.dv-head .summary .stat .l{color:var(--text3);font-size:12px}.dv-head .summary .sep{color:var(--border-strong)}.dv-head .tools{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.btn{font-size:12.5px;font-weight:500;font-family:var(--font-sans);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--motion-fast);letter-spacing:-.003em;white-space:nowrap;align-items:center;gap:7px;padding:6px 11px;line-height:1.3;display:inline-flex}.btn:hover{background:var(--surface2);border-color:var(--border-strong)}.btn svg{width:13px;height:13px;color:var(--text2);flex-shrink:0}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn.primary svg,html[data-theme=light] .btn.primary{color:#fff}.btn.copied{background:var(--low-bg);border-color:var(--low-br);color:var(--low-fg)}.btn.copied svg{color:var(--low-fg)}.btn.ghost{color:var(--text2);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface2);color:var(--text)}.btn-group{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);display:inline-flex;overflow:hidden}.btn-group button{color:var(--text3);font-size:11.5px;font-family:var(--font-sans);cursor:pointer;letter-spacing:-.003em;transition:all var(--motion-fast);border:0;border-right:1px solid var(--border);background:0 0;align-items:center;gap:5px;padding:6px 10px;font-weight:500;display:inline-flex}.btn-group button:last-child{border-right:0}.btn-group button:hover{color:var(--text);background:var(--surface2)}.btn-group button.on{color:var(--text);background:var(--surface2);box-shadow:inset 0 -2px 0 var(--accent)}.btn-group button .c{font-family:var(--font-mono);color:var(--text4);background:var(--surface2);border-radius:3px;padding:1px 4px;font-size:10.5px;line-height:1.2}.btn-group button.on .c{background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--accent)}.dv-body{max-width:960px;padding:24px 32px 80px}.empty-clean{text-align:center;color:var(--text2);flex-direction:column;justify-content:center;align-items:center;padding:80px 20px;display:flex}.empty-clean svg{width:32px;height:32px;color:var(--pass-solid);margin-bottom:16px}.empty-clean h3{color:var(--text);letter-spacing:-.01em;margin:0 0 6px;font-size:16px}.empty-clean p{color:var(--text3);max-width:340px;margin:0;font-size:13px;line-height:1.5}.section-label{color:var(--text3);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:8px;margin:0 0 12px;font-size:10.5px;font-weight:500;display:flex}.section-label .c{font-family:var(--font-mono);color:var(--text4);text-transform:none;letter-spacing:0;font-size:11px;font-weight:400}.section-label .line{background:var(--border);flex:1;height:1px}.find{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--motion-fast), box-shadow var(--motion-fast);margin-bottom:12px;overflow:hidden}.find:hover{border-color:var(--border-strong)}.find-head{cursor:pointer;-webkit-user-select:none;user-select:none;grid-template-columns:auto 1fr auto auto;align-items:center;gap:14px;padding:14px 16px;display:grid}.find-head .sev-pill{letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-sm);font-size:10px;font-weight:600;font-family:var(--font-sans);border:1px solid #0000;align-items:center;gap:5px;padding:3px 8px;line-height:1.3;display:inline-flex}.find-head .sev-pill.crit{color:var(--crit-fg);background:var(--crit-bg);border-color:var(--crit-br)}.find-head .sev-pill.high{color:var(--high-fg);background:var(--high-bg);border-color:var(--high-br)}.find-head .sev-pill.med{color:var(--med-fg);background:var(--med-bg);border-color:var(--med-br)}.find-head .sev-pill.low{color:var(--low-fg);background:var(--low-bg);border-color:var(--low-br)}.find-head .sev-pill.info{color:var(--info-fg);background:var(--info-bg);border-color:var(--info-br)}.find-head .ttl{color:var(--text);letter-spacing:-.008em;font-size:13.5px;font-weight:500;line-height:1.4}.find-head .meta{font-family:var(--font-mono);color:var(--text3);font-variant-numeric:tabular-nums;align-items:center;gap:8px;font-size:11.5px;display:flex}.find-head .meta .tbl{background:var(--surface2);border:1px solid var(--border);color:var(--text2);border-radius:3px;padding:2px 6px;font-size:11px}.find-head .meta .ct{color:var(--text2);font-weight:500}.find-head .chev{width:14px;height:14px;color:var(--text3);transition:transform var(--motion-base)}.find.open .chev{transform:rotate(90deg)}.find-body{border-top:1px solid var(--border);background:var(--bg-elev);margin-top:-1px;padding:0 16px 16px}.find-body .seg{padding-top:16px}.find-body .seg+.seg{border-top:1px solid var(--border);margin-top:16px}.find-body .lbl{color:var(--text3);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;margin-bottom:8px;font-size:10.5px;font-weight:500;display:flex}.find-body .lbl svg{width:12px;height:12px;color:var(--text3)}.find-body .detail-txt,.find-body .remed{color:var(--text2);letter-spacing:-.002em;font-size:13px;line-height:1.65}.find-body .remed code,.find-body .detail-txt code{font-family:var(--font-mono);background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:3px;padding:1px 5px;font-size:12px}.find-body .steps{counter-reset:step;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.find-body .steps li{counter-increment:step;color:var(--text2);grid-template-columns:22px 1fr;gap:12px;padding-left:0;font-size:13px;line-height:1.6;display:grid}.find-body .steps li:before{content:counter(step);font-family:var(--font-mono);color:var(--text3);background:var(--surface2);border:1px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-top:1px;font-size:10.5px;font-weight:600;line-height:1;display:inline-flex}.find-body .kv{grid-template-columns:110px 1fr;gap:10px 16px;margin-top:10px;font-size:12.5px;display:grid}.find-body .kv dt{color:var(--text3);font-weight:400}.find-body .kv dd{color:var(--text);font-family:var(--font-mono);margin:0;font-size:12px}.find-body .kv dd a{color:var(--accent);border-bottom:1px dashed var(--accent-line);text-decoration:none}.find-body .row-actions{gap:6px;margin-top:14px;display:flex}.toast{background:var(--bg-elev);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:opacity var(--motion-base), transform var(--motion-base);z-index:100;align-items:center;gap:9px;padding:10px 14px;font-size:12.5px;font-weight:500;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(12px)}.toast svg{width:14px;height:14px;color:var(--pass-solid)}.toast kbd{font-family:var(--font-mono);color:var(--text3);background:var(--surface2);border:1px solid var(--border);border-radius:3px;margin-left:4px;padding:2px 5px;font-size:10.5px}.tweaks{background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:var(--radius-lg);width:240px;box-shadow:var(--shadow-lg);z-index:50;font-size:12px;position:fixed;bottom:16px;right:16px;overflow:hidden}.tweaks h4{color:var(--text3);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin:0;padding:10px 14px;font-size:10.5px;font-weight:500;display:flex}.tweaks .rows{padding:6px}.tweaks .r{justify-content:space-between;align-items:center;gap:10px;padding:6px 8px;display:flex}.tweaks .r>span{color:var(--text2)}.detail::-webkit-scrollbar{width:10px}.rail-list::-webkit-scrollbar{width:10px}.detail::-webkit-scrollbar-thumb{background:var(--surface3);border:2px solid var(--bg);border-radius:10px}.rail-list::-webkit-scrollbar-thumb{background:var(--surface3);border:2px solid var(--bg);border-radius:10px}.detail::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.rail-list::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.detail::-webkit-scrollbar-track{background:0 0}.rail-list::-webkit-scrollbar-track{background:0 0}@media (width<=1100px){.shell{grid-template-columns:320px 1fr}.dv-head,.dv-body{padding-left:24px;padding-right:24px}}.app-hdr{z-index:50;background:var(--bg);border-bottom:1px solid var(--border);position:sticky;top:0}.app-hdr-top{align-items:center;gap:12px;height:48px;padding:10px 22px;display:flex}.hdr-brand{color:var(--text);letter-spacing:-.01em;align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.hdr-brand .name{font-family:Geist,sans-serif}.hdr-crumb{align-items:center;gap:8px;display:flex}.hdr-crumb .sep{color:var(--text4);font-size:14px}.hdr-spacer{flex:1}.hdr-actions{align-items:center;gap:8px;display:flex}.hdr-icon-btn{border:1px solid var(--border);background:var(--surface);color:var(--text2);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:5px 10px;font-family:inherit;display:inline-flex}.hdr-icon-btn:hover{border-color:var(--border-strong);color:var(--text)}.empty{text-align:center;background:var(--surface);border:1px dashed var(--border-strong);border-radius:10px;flex-direction:column;align-items:center;gap:10px;padding:48px 24px;display:flex}.empty-ic{color:var(--text4);background:var(--surface2);border-radius:50%;margin-bottom:4px;padding:10px}.empty-t{color:var(--text);letter-spacing:-.01em;font-family:Geist,sans-serif;font-size:15px;font-weight:600}.empty-h{color:var(--text3);max-width:440px;font-size:12.5px;line-height:1.55}.empty-cta{margin-top:8px}.drawer-scrim{z-index:300;background:#00000059;animation:.18s ap-fade;position:fixed;inset:0}.drawer{z-index:301;background:var(--surface);border-left:1px solid var(--border);flex-direction:column;width:520px;animation:.22s cubic-bezier(.2,.8,.2,1) ap-slide;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-10px 0 30px #0000004d}.drawer-hdr{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 18px;display:flex}.drawer-cid{color:var(--text4);font-family:Geist Mono,monospace;font-size:11.5px}.drawer-domain{color:var(--text3);font-size:11.5px}.drawer-close{color:var(--text3);cursor:pointer;background:0 0;border:0;border-radius:4px;margin-left:auto;padding:4px}.drawer-close:hover{background:var(--surface2);color:var(--text)}.drawer-body{flex:1;padding:20px 22px 40px;overflow-y:auto}.drawer-title{color:var(--text);letter-spacing:-.015em;margin:0 0 10px;font-family:Geist,sans-serif;font-size:18px;font-weight:600;line-height:1.35}.drawer-desc{color:var(--text2);margin:0 0 20px;font-size:13px;line-height:1.6}.drawer-sec{margin-bottom:22px}.drawer-sec h4{letter-spacing:.09em;text-transform:uppercase;color:var(--text4);margin:0 0 8px;font-size:10.5px;font-weight:600}.drawer-p{color:var(--text2);margin:0;font-size:12.5px;line-height:1.6}.drawer-kv{grid-template-columns:90px 1fr;align-items:center;gap:6px 10px;font-size:12px;display:grid}.drawer-kv .k{color:var(--text4)}.drawer-kv .v{color:var(--text);background:var(--surface2);cursor:pointer;word-break:break-all;border-radius:4px;padding:3px 7px;font-family:Geist Mono,monospace;font-size:11.5px}.drawer-kv .v:hover{background:var(--accent-sub);color:var(--accent-hover)}.drawer-steps{color:var(--text2);margin:0;padding-left:20px;font-size:12.5px;line-height:1.7}.drawer-steps li{margin-bottom:6px}.drawer-meta{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.drawer-meta .k{letter-spacing:.08em;text-transform:uppercase;color:var(--text4);margin-bottom:3px;font-size:10.5px;display:block}.drawer-meta .v{color:var(--text);align-items:center;gap:5px;font-family:Geist Mono,monospace;font-size:12.5px;display:inline-flex}.drawer-actions{flex-wrap:wrap;gap:6px;display:flex}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.nav-tab:focus-visible,.seg button:focus-visible,.sw:focus-visible{outline-offset:3px}.ap-scrim{z-index:300;background:#00000059;animation:.18s ap-fade;position:fixed;inset:0}.ap-panel{background:var(--surface);border-left:1px solid var(--border);z-index:301;flex-direction:column;width:440px;animation:.22s cubic-bezier(.2,.8,.2,1) ap-slide;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-10px 0 30px #0000004d}@keyframes ap-fade{0%{opacity:0}to{opacity:1}}@keyframes ap-slide{0%{transform:translate(100%)}to{transform:translate(0)}}.ap-hdr{border-bottom:1px solid var(--border);color:var(--text);align-items:center;gap:10px;padding:14px 18px;display:flex}.ap-hdr h3{letter-spacing:-.01em;margin:0;font-family:Geist,sans-serif;font-size:14px;font-weight:600}.ap-hdr .ap-sub{color:var(--text4);margin-left:auto;margin-right:8px;font-size:11px}.ap-close{color:var(--text3);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:4px}.ap-close:hover{background:var(--surface2);color:var(--text)}.ap-body{flex:1;padding:6px 0;overflow-y:auto}.ap-row{align-items:flex-start;gap:16px;padding:14px 18px;display:flex}.ap-row-l{flex:1;min-width:0}.ap-lbl{color:var(--text);margin-bottom:2px;font-size:13px;font-weight:500}.ap-hint{color:var(--text4);font-size:11.5px;line-height:1.45}.ap-row-r{flex-shrink:0}.ap-div{background:var(--border);height:1px;margin:4px 18px}.seg{border:1px solid var(--border);background:var(--surface2);border-radius:6px;display:inline-flex;overflow:hidden}.seg button{color:var(--text3);cursor:pointer;background:0 0;border:0;padding:5px 11px;font-family:inherit;font-size:12px;font-weight:500}.seg button+button{border-left:1px solid var(--border)}.seg button.on{background:var(--bg);color:var(--text)}.seg button:hover:not(.on){color:var(--text2)}.swatches{gap:6px;display:inline-flex}.sw{cursor:pointer;color:#fff;border:2px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:26px;height:26px;padding:0;font-size:11px;font-weight:700;display:flex;position:relative}.sw.on{border-color:var(--text);box-shadow:0 0 0 1px var(--bg) inset}.sw:hover:not(.on){transition:transform .12s;transform:scale(1.08)}.switch{cursor:pointer;width:34px;height:20px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.switch span{background:var(--surface3);border-radius:12px;transition:background .15s;position:absolute;inset:0}.switch span:before{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px}.switch input:checked+span{background:var(--accent)}.switch input:checked+span:before{transform:translate(14px)}.ap-row-r input[type=range]{width:160px;accent-color:var(--accent)}.ap-actions{justify-content:flex-end;gap:8px;padding:14px 18px;display:flex}.ap-preview{border:1px solid var(--border);background:var(--bg);border-radius:8px;margin:0 18px 18px;overflow:hidden}.ap-preview-hdr{text-transform:uppercase;letter-spacing:.08em;color:var(--text4);border-bottom:1px solid var(--border);background:var(--surface);padding:8px 12px;font-size:10.5px}.ap-preview-body{flex-wrap:wrap;align-items:center;gap:10px;padding:14px 12px;display:flex}[data-density=compact] .tbl tbody td,[data-density=compact] .tbl thead th{padding:6px 10px}[data-density=compact] .stat-card,[data-density=compact] .card-body{padding:10px 12px}[data-density=compact] .activity-row{padding:7px 14px}[data-density=roomy] .tbl tbody td{padding:14px}[data-density=roomy] .stat-card,[data-density=roomy] .card-body{padding:18px 20px}[data-density=roomy] .activity-row{padding:14px 18px}[data-skin=federal]{--font-display:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}[data-skin=federal] .hdr-brand .name,[data-skin=federal] .page-hdr h1,[data-skin=federal] .card-hdr h3,[data-skin=federal] .page-section h2,[data-skin=federal] .phase-card h3,[data-skin=federal] .agent-hdr h4,[data-skin=federal] .fw-card h4,[data-skin=federal] .stat-card .value,[data-skin=federal] .fw-score-row .score,[data-skin=federal] .wiz h2,[data-skin=federal] .ap-hdr h3{letter-spacing:-.005em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.theme-toggle{border:1px solid var(--border);background:var(--surface);border-radius:6px;display:inline-flex;overflow:hidden}.theme-toggle button{color:var(--text3);cursor:pointer;background:0 0;border:0;align-items:center;padding:5px 9px;display:inline-flex}.theme-toggle button.on{background:var(--surface2);color:var(--text)}.theme-toggle button:hover{color:var(--text)}.inst-switch{position:relative}.inst-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:6px;align-items:center;gap:7px;padding:5px 9px 5px 8px;font-family:inherit;font-size:12.5px;font-weight:500;display:inline-flex}.inst-btn:hover{border-color:var(--border-strong)}.inst-btn .inst-name{font-family:Geist Mono,monospace;font-size:12px}.inst-btn .inst-env{letter-spacing:.08em;background:var(--surface2);color:var(--text3);border-radius:3px;padding:1px 5px;font-size:10px;font-weight:500}.inst-menu{background:var(--surface);border:1px solid var(--border);min-width:320px;box-shadow:var(--shadow-lg);z-index:100;border-radius:8px;padding:4px;position:absolute;top:calc(100% + 4px);left:0}.inst-menu-hdr{text-transform:uppercase;letter-spacing:.08em;color:var(--text4);padding:8px 10px 6px;font-size:10px}.inst-menu-item{cursor:pointer;width:100%;color:var(--text);text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:7px 10px;font-family:inherit;display:flex}.inst-menu-item:hover{background:var(--surface2)}.inst-menu-item.on{background:var(--accent-sub)}.inst-menu-item .im-main{flex:1;min-width:0}.inst-menu-item .im-name{font-family:Geist Mono,monospace;font-size:12px;font-weight:500}.inst-menu-item .im-sub{color:var(--text3);margin-top:1px;font-size:11px}.inst-menu-item .score-mini{background:var(--surface2);border-radius:3px;padding:1px 6px;font-family:Geist Mono,monospace;font-size:12px;font-weight:600}.inst-menu-foot{border-top:1px solid var(--border);margin-top:4px;padding:6px 4px 2px}.inst-menu-foot .btn{justify-content:flex-start;width:100%}.app-nav{border-top:1px solid var(--border);align-items:stretch;gap:2px;height:40px;padding:0 16px;display:flex}.nav-tab{color:var(--text3);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0 12px;font-family:inherit;font-size:13px;font-weight:500;display:inline-flex;position:relative}.nav-tab:hover,.nav-tab.on{color:var(--text)}.nav-tab.on:after{content:"";background:var(--accent);border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:-1px;left:10px;right:10px}.app-main{min-height:calc(100vh - 89px)}.view{padding:0}.report-sub{border-bottom:1px solid var(--border);background:var(--bg);justify-content:space-between;align-items:center;gap:16px;padding:10px 28px;display:flex}.report-sub-meta{align-items:center;gap:18px;font-size:12px;display:flex}.report-sub-meta .dot{background:var(--low-fg);width:6px;height:6px;box-shadow:0 0 0 3px color-mix(in oklab, var(--low-fg), transparent 80%);border-radius:50%}.report-sub-meta .k{color:var(--text4);margin-right:6px;font-weight:500}.report-sub-meta .v{color:var(--text);font-family:Geist Mono,monospace;font-size:11.5px}.report-sub-actions{gap:6px;display:flex}.page{max-width:1360px;margin:0 auto;padding:28px 28px 80px}.page-hdr{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;padding-bottom:18px;display:flex}.page-hdr h1{letter-spacing:-.02em;margin:0 0 4px;font-family:Geist,sans-serif;font-size:22px;font-weight:600}.page-hdr .desc{color:var(--text3);margin:0;font-size:13px}.page-hdr-actions{gap:8px;display:flex}.page-section{margin-bottom:32px}.page-section h2{color:var(--text2);letter-spacing:-.01em;align-items:center;gap:10px;margin:0 0 12px;font-family:Geist,sans-serif;font-size:14px;font-weight:600;display:flex}.page-section h2 .hint{color:var(--text4);font-size:12px;font-weight:400}.page-section h2 .line{background:var(--border);flex:1;height:1px}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden}.card-hdr{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 16px 12px;display:flex}.card-hdr h3{color:var(--text);letter-spacing:-.01em;margin:0;font-family:Geist,sans-serif;font-size:13px;font-weight:600}.card-hdr .c-sub{color:var(--text3);font-size:12px}.card-hdr .line{flex:1}.card-body{padding:14px 16px}.card-body.pad-0{padding:0}.stat-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.stat-grid.cols-3{grid-template-columns:repeat(3,1fr)}.stat-grid.cols-5{grid-template-columns:repeat(5,1fr)}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.stat-card .label{letter-spacing:.08em;text-transform:uppercase;color:var(--text3);font-size:10.5px;font-weight:500}.stat-card .value{color:var(--text);letter-spacing:-.02em;align-items:baseline;gap:6px;font-family:Geist,sans-serif;font-size:26px;font-weight:600;line-height:1.1;display:flex}.stat-card .value .unit{color:var(--text3);font-size:13px;font-weight:500}.stat-card .trend{color:var(--text3);align-items:center;gap:4px;margin-top:2px;font-size:11px;display:flex}.stat-card .trend .up{color:var(--low-fg)}.stat-card .trend .down{color:var(--crit-fg)}.spark{display:block}.spark path.line{fill:none;stroke:var(--accent);stroke-width:1.5px}.spark path.area{fill:var(--accent-sub);stroke:none}.heatmap{grid-template-columns:180px repeat(14,minmax(32px,1fr));gap:2px;font-size:11px;display:grid}.heatmap .row{display:contents}.heatmap .rh{color:var(--text2);background:var(--surface2);border-radius:4px;align-items:center;gap:6px;padding:6px 8px;font-family:Geist Mono,monospace;font-size:11px;font-weight:500;display:flex}.heatmap .ch{text-align:center;color:var(--text4);writing-mode:vertical-rl;padding:6px 0;font-size:10px;transform:rotate(180deg)}.heatmap .cell{aspect-ratio:1;cursor:pointer;border-radius:3px;justify-content:center;align-items:center;font-family:Geist Mono,monospace;font-size:10px;font-weight:500;display:flex}.heatmap .cell:hover{outline:1px solid var(--accent);outline-offset:-1px}.heatmap .cell.h-good{background:color-mix(in oklab, var(--low-fg), transparent 75%);color:var(--low-fg)}.heatmap .cell.h-ok{background:color-mix(in oklab, var(--med-fg), transparent 70%);color:var(--med-fg)}.heatmap .cell.h-warn{background:color-mix(in oklab, var(--high-fg), transparent 70%);color:var(--high-fg)}.heatmap .cell.h-bad{background:color-mix(in oklab, var(--crit-fg), transparent 65%);color:var(--crit-fg)}.heatmap .cell.h-none{background:var(--surface2);color:var(--text4)}.activity-list{flex-direction:column;display:flex}.activity-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:10px 16px;font-size:12.5px;display:flex}.activity-row:last-child{border-bottom:0}.activity-row .who{color:var(--text);font-weight:500}.activity-row .action{color:var(--text3)}.activity-row .target{color:var(--text2);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.activity-row .when{color:var(--text4);font-variant-numeric:tabular-nums;font-size:11.5px}.activity-row .inst{color:var(--text4);font-family:Geist Mono,monospace;font-size:11px}.tbl{border-collapse:collapse;width:100%;font-size:12.5px}.tbl thead th{text-align:left;letter-spacing:.08em;text-transform:uppercase;color:var(--text4);border-bottom:1px solid var(--border);background:var(--surface);padding:8px 12px;font-size:10.5px;font-weight:500;position:sticky;top:0}.tbl tbody td{border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text2);padding:10px 12px}.tbl tbody tr:hover{background:var(--surface2);cursor:pointer}.tbl tbody tr:last-child td{border-bottom:0}.tbl td.mono,.tbl th.mono{color:var(--text);font-family:Geist Mono,monospace;font-size:12px}.tbl td.num{font-variant-numeric:tabular-nums;text-align:right}.tbl td.subtle{color:var(--text3)}.pill-env{letter-spacing:.06em;background:var(--surface2);color:var(--text2);border-radius:3px;padding:1px 6px;font-size:10px;font-weight:500;display:inline-block}.pill-env.prod{background:color-mix(in oklab, var(--crit-fg), transparent 80%);color:var(--crit-fg)}.pill-env.stage{background:color-mix(in oklab, var(--med-fg), transparent 75%);color:var(--med-fg)}.pill-env.pdi{background:color-mix(in oklab, var(--accent), transparent 80%);color:var(--accent-hover)}.status-dot{border-radius:50%;width:7px;height:7px;display:inline-block}.status-dot.healthy{background:var(--low-fg);box-shadow:0 0 0 2px color-mix(in oklab, var(--low-fg), transparent 85%)}.status-dot.degrading{background:var(--high-fg);box-shadow:0 0 0 2px color-mix(in oklab, var(--high-fg), transparent 80%)}.status-dot.paused{background:var(--text4)}.delta{font-variant-numeric:tabular-nums;font-family:Geist Mono,monospace;font-size:11.5px}.delta.up{color:var(--low-fg)}.delta.down{color:var(--crit-fg)}.delta.flat{color:var(--text4)}.roadmap-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.phase-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;padding:0;display:flex;overflow:hidden}.phase-card .ph-hdr{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 16px;display:flex}.phase-card .ph-num{color:var(--text4);background:var(--surface2);border-radius:4px;padding:2px 7px;font-family:Geist Mono,monospace;font-size:11px}.phase-card .ph-status{text-transform:uppercase;letter-spacing:.08em;border-radius:3px;margin-left:auto;padding:2px 7px;font-size:10px;font-weight:500}.phase-card .ph-status.active{background:color-mix(in oklab, var(--accent), transparent 75%);color:var(--accent-hover)}.phase-card .ph-status.next{background:var(--surface2);color:var(--text3)}.phase-card .ph-status.backlog{background:var(--surface2);color:var(--text4)}.phase-card h3{color:var(--text);letter-spacing:-.01em;margin:0;font-family:Geist,sans-serif;font-size:15px;font-weight:600}.phase-card .ph-body{flex-direction:column;flex:1;gap:12px;padding:14px 16px;display:flex}.phase-card .ph-goal{color:var(--text3);font-size:12.5px;line-height:1.55}.phase-card .ph-meta{border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:18px;padding:10px 0;display:flex}.phase-card .ph-meta .m{flex-direction:column;gap:2px;display:flex}.phase-card .ph-meta .mv{color:var(--text);font-family:Geist Mono,monospace;font-size:14px;font-weight:600}.phase-card .ph-meta .ml{color:var(--text4);text-transform:uppercase;letter-spacing:.06em;font-size:10.5px}.phase-card .ph-findings{flex-wrap:wrap;gap:4px;max-height:110px;display:flex;overflow:hidden}.phase-card .ph-findings .cid{background:var(--surface2);color:var(--text3);border-radius:3px;padding:2px 6px;font-family:Geist Mono,monospace;font-size:10.5px}.phase-card .ph-actions{gap:6px;margin-top:auto;padding-top:8px;display:flex}.agent-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.agent-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.agent-hdr{align-items:center;gap:10px;margin-bottom:12px;display:flex}.agent-hdr h4{color:var(--text);margin:0;font-family:Geist,sans-serif;font-size:14px;font-weight:600}.agent-hdr .owner{color:var(--text4);margin-left:auto;font-size:11.5px}.agent-metrics{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.agent-metrics .m .v{color:var(--text);font-family:Geist Mono,monospace;font-size:14px;font-weight:600}.agent-metrics .m .l{text-transform:uppercase;letter-spacing:.06em;color:var(--text4);margin-top:2px;font-size:10px}.agent-metrics .m .v.err{color:var(--crit-fg)}.agent-metrics .m .v.warn{color:var(--high-fg)}.fw-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.fw-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:12px;padding:16px;display:flex}.fw-card h4{color:var(--text);margin:0;font-family:Geist,sans-serif;font-size:14px;font-weight:600}.fw-score-row{align-items:baseline;gap:8px;display:flex}.fw-score-row .score{letter-spacing:-.02em;font-family:Geist,sans-serif;font-size:30px;font-weight:600}.fw-score-row .out{color:var(--text4);font-size:12px}.fw-bar{background:var(--surface2);border-radius:2px;height:4px;overflow:hidden}.fw-bar .fill{background:var(--accent);height:100%}.fw-meta{color:var(--text3);justify-content:space-between;font-size:11.5px;display:flex}.fw-meta b{color:var(--high-fg);font-weight:500}.wiz{max-width:640px;margin:0 auto;padding:40px 24px 80px}.wiz-steps{border-bottom:1px solid var(--border);gap:0;margin-bottom:32px;padding-bottom:20px;display:flex}.wiz-step{color:var(--text4);flex:1;align-items:center;gap:10px;font-size:12px;display:flex;position:relative}.wiz-step .n{background:var(--surface2);width:22px;height:22px;color:var(--text4);border:1px solid var(--border);border-radius:50%;justify-content:center;align-items:center;font-family:Geist Mono,monospace;font-size:11px;font-weight:600;display:flex}.wiz-step.active .n{background:var(--accent);color:#fff;border-color:var(--accent)}.wiz-step.active{color:var(--text)}.wiz-step.done .n{background:var(--low-fg);color:var(--bg);border-color:var(--low-fg)}.wiz-step.done{color:var(--text2)}.wiz-step:not(:last-child):after{content:"";background:var(--border);height:1px;position:absolute;top:11px;left:34px;right:10px}.wiz h2{letter-spacing:-.01em;color:var(--text);margin:0 0 6px;font-family:Geist,sans-serif;font-size:18px;font-weight:600}.wiz .wiz-desc{color:var(--text3);margin:0 0 24px;font-size:13px;line-height:1.55}.field{margin-bottom:16px}.field label{letter-spacing:.04em;text-transform:uppercase;color:var(--text3);margin-bottom:6px;font-size:11px;font-weight:500;display:block}.field input,.field textarea,.field select{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:6px;padding:8px 11px;font-family:Geist Mono,monospace;font-size:13px}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-sub);outline:none}.field .hint{color:var(--text4);margin-top:5px;font-size:11.5px}.field .prefix-wrap{align-items:stretch;display:flex}.field .prefix-wrap .prefix,.field .prefix-wrap .suffix{background:var(--surface2);color:var(--text3);border:1px solid var(--border);align-items:center;padding:8px 10px;font-family:Geist Mono,monospace;font-size:12.5px;display:flex}.field .prefix-wrap .prefix{border-right:0;border-radius:6px 0 0 6px}.field .prefix-wrap .suffix{border-left:0;border-radius:0 6px 6px 0}.field .prefix-wrap input{border-radius:0}.field .prefix-wrap input:first-child{border-radius:6px 0 0 6px}.field .prefix-wrap input:last-child{border-radius:0 6px 6px 0}.code-block{background:var(--surface2);border:1px solid var(--border);color:var(--text2);white-space:pre-wrap;border-radius:6px;padding:12px 14px;font-family:Geist Mono,monospace;font-size:12px;line-height:1.55;position:relative;overflow-x:auto}.code-block .copy{background:var(--surface);border:1px solid var(--border);color:var(--text2);cursor:pointer;border-radius:4px;padding:3px 8px;font-size:11px;position:absolute;top:8px;right:8px}.wiz-actions{border-top:1px solid var(--border);justify-content:space-between;margin-top:28px;padding-top:20px;display:flex}.callout{background:var(--surface2);border:1px solid var(--border);border-radius:8px;gap:10px;padding:12px 14px;font-size:12.5px;line-height:1.55;display:flex}.callout .i{color:var(--accent);flex-shrink:0;margin-top:1px}.callout.info{background:var(--accent-sub);border-color:var(--accent-line)}.callout.warn{background:color-mix(in oklab, var(--high-fg), transparent 85%);border-color:color-mix(in oklab, var(--high-fg), transparent 70%)}.set-grid{grid-template-columns:200px 1fr;gap:32px;display:grid}.set-side{flex-direction:column;gap:2px;display:flex}.set-side a{color:var(--text3);cursor:pointer;border-radius:6px;padding:8px 12px;font-size:13px;text-decoration:none}.set-side a.on{background:var(--surface2);color:var(--text)}.blocker{border-bottom:1px solid var(--border);cursor:pointer;align-items:center;gap:12px;padding:12px 16px;display:flex}.blocker:last-child{border-bottom:0}.blocker:hover{background:var(--surface2)}.blocker .cid{color:var(--text4);min-width:64px;font-family:Geist Mono,monospace;font-size:11px}.blocker .title{color:var(--text);flex:1;font-size:12.5px;font-weight:500}.blocker .where{color:var(--text3);font-family:Geist Mono,monospace;font-size:11.5px}.toast{background:var(--surface);border:1px solid var(--border-strong);color:var(--text);box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;z-index:200;border-radius:8px;align-items:center;gap:8px;padding:10px 16px;font-size:12.5px;transition:all .25s;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(20px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.gate-grid{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.gate-check{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.gate-check .top{align-items:center;gap:6px;display:flex}.gate-check .label{color:var(--text2);font-size:11.5px;font-weight:500}.gate-check .sub{color:var(--text4);font-family:Geist Mono,monospace;font-size:10.5px}.gate-check.pass{border-color:color-mix(in oklab, var(--low-fg), transparent 70%)}.gate-check.fail{border-color:color-mix(in oklab, var(--crit-fg), transparent 70%);background:color-mix(in oklab, var(--crit-fg), transparent 92%)}.gate-check.pass .icon{color:var(--low-fg)}.gate-check.fail .icon{color:var(--crit-fg)}@media (width<=1200px){.stat-grid{grid-template-columns:repeat(2,1fr)}.roadmap-grid,.agent-grid{grid-template-columns:1fr}.gate-grid{grid-template-columns:repeat(3,1fr)}}.exec-sheet{background:var(--surface);border:1px solid var(--border);border-radius:10px;max-width:820px;margin:0 auto;padding:40px 48px}.exec-band{border-bottom:2px solid var(--border);justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-bottom:20px;display:flex}.exec-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--text3);font-size:10.5px;font-weight:500}.exec-title{letter-spacing:-.02em;color:var(--text);margin:4px 0 6px;font-family:Geist,sans-serif;font-size:28px;font-weight:600}.exec-meta{color:var(--text3);font-size:12px}.exec-score{text-align:right}.exec-score-n{letter-spacing:-.03em;font-family:Geist,sans-serif;font-size:56px;font-weight:600;line-height:1}.exec-score-l{color:var(--text3);text-transform:uppercase;letter-spacing:.08em;margin-top:6px;font-size:11px}.exec-row{grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:28px;display:grid}.exec-stat{text-align:center;background:var(--surface2);border-radius:8px;padding:12px}.exec-stat .n{color:var(--text);letter-spacing:-.01em;font-family:Geist,sans-serif;font-size:22px;font-weight:600}.exec-stat .l{color:var(--text4);text-transform:uppercase;letter-spacing:.08em;margin-top:4px;font-size:10px}.exec-grid{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;display:grid}.exec-grid h3,.exec-road h3{text-transform:uppercase;letter-spacing:.08em;color:var(--text3);margin:0 0 10px;font-family:Geist,sans-serif;font-size:12px;font-weight:600}.exec-list{margin:0;padding:0;font-size:12.5px;list-style:none}.exec-list li{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:6px 0;display:flex}.exec-list li:last-child{border-bottom:0}.exec-list .cid{color:var(--text4);min-width:62px;font-family:Geist Mono,monospace;font-size:10.5px}.exec-list .t{color:var(--text);flex:1}.exec-list .w{color:var(--text4);font-family:Geist Mono,monospace;font-size:11.5px}.exec-list .bar{background:var(--surface2);border-radius:2px;flex:0 0 80px;height:4px;overflow:hidden}.exec-list .bar span{background:var(--accent);height:100%;display:block}.exec-road{margin-bottom:24px}.exec-phases{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.exec-phase{border:1px solid var(--border);border-radius:6px;padding:12px}.exec-phase.active{border-color:var(--accent);background:var(--accent-sub)}.exec-phase .p-n{color:var(--text4);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.exec-phase .p-t{color:var(--text);margin:2px 0;font-family:Geist,sans-serif;font-size:13px;font-weight:600}.exec-phase .p-m{color:var(--text3);font-family:Geist Mono,monospace;font-size:11px}.exec-foot{border-top:1px solid var(--border);color:var(--text4);justify-content:space-between;padding-top:16px;font-size:11px;display:flex}@media print{.app-hdr,.no-print,.toast,.ap-panel,.ap-scrim{display:none!important}body,.app-main{background:#fff!important}.page.exec{padding:0}.exec-sheet{max-width:100%;box-shadow:none;border:0;padding:20px 24px}}.diff-bar{background:var(--surface);border:1px solid var(--border);border-radius:10px;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin-bottom:24px;padding:16px 20px;display:grid}.diff-col{flex-direction:column;gap:6px;display:flex}.diff-col label{letter-spacing:.08em;text-transform:uppercase;color:var(--text4);font-size:10.5px;font-weight:500}.diff-col select{border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:6px;padding:6px 10px;font-family:Geist Mono,monospace;font-size:12px}.diff-meta{color:var(--text4);font-family:Geist Mono,monospace;font-size:11px}.diff-mid{text-align:center;padding:0 20px}.diff-delta{letter-spacing:-.02em;color:var(--text3);font-family:Geist,sans-serif;font-size:32px;font-weight:600}.diff-delta.up{color:var(--low-fg)}.diff-delta.down{color:var(--crit-fg)}.diff-delta-l{text-transform:uppercase;letter-spacing:.08em;color:var(--text4);margin-top:4px;font-size:10px}.fd-scrim{-webkit-backdrop-filter:blur(4px);z-index:90;background:#03040694;animation:.16s ease-out fd-fade;position:fixed;inset:0}html[data-theme=light] .fd-scrim{background:#1e1e2438}.fd-panel{background:var(--bg-elev);border-left:1px solid var(--border);width:min(560px,92vw);box-shadow:var(--shadow-lg);z-index:91;font-family:var(--font-sans);flex-direction:column;animation:.2s cubic-bezier(.16,1,.3,1) fd-slide;display:flex;position:fixed;top:0;bottom:0;right:0}@keyframes fd-slide{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:none}}@keyframes fd-fade{0%{opacity:0}to{opacity:1}}.fd-hdr{border-bottom:1px solid var(--border);background:var(--surface);padding:20px 24px 16px}.fd-hdr-top{align-items:center;gap:8px;margin-bottom:10px;display:flex}.fd-id{font-family:var(--font-mono);color:var(--text3);letter-spacing:.02em;font-size:11px;font-weight:500}.fd-close{border:1px solid var(--border);color:var(--text2);border-radius:var(--radius-md);cursor:pointer;width:26px;height:26px;transition:all var(--motion-fast);background:0 0;justify-content:center;align-items:center;margin-left:auto;display:flex}.fd-close:hover{background:var(--surface2);color:var(--text);border-color:var(--border-strong)}.fd-title{color:var(--text);letter-spacing:-.01em;margin:0 0 12px;font-size:19px;font-weight:600;line-height:1.3}.fd-meta{flex-wrap:wrap;gap:16px 20px;font-size:12px;display:flex}.fd-meta>span{color:var(--text);align-items:baseline;gap:6px;display:inline-flex}.fd-k{color:var(--text3);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:500}.fd-meta code{font-family:var(--font-mono);color:var(--text2);background:var(--surface2);border-radius:var(--radius-sm);padding:1px 5px;font-size:11px}.tier-chip{border:1px solid var(--border);background:var(--surface2);border-radius:999px;align-items:center;gap:6px;padding:2px 8px 2px 3px;font-size:10px;font-weight:500;display:inline-flex}.tier-n{font-family:var(--font-mono);background:var(--surface3);color:var(--text);letter-spacing:.04em;border-radius:999px;padding:2px 5px;font-size:9px;font-weight:600}.tier-l{color:var(--text2);letter-spacing:.01em}.tier-chip.tier-t0{border-color:var(--low-br);background:var(--low-bg)}.tier-chip.tier-t0 .tier-n{background:var(--low-solid);color:#00110a}.tier-chip.tier-t0 .tier-l{color:var(--low-fg)}.tier-chip.tier-t1{border-color:var(--med-br);background:var(--med-bg)}.tier-chip.tier-t1 .tier-n{background:var(--med-solid);color:#1a1000}.tier-chip.tier-t1 .tier-l{color:var(--med-fg)}.tier-chip.tier-t2{border-color:var(--high-br);background:var(--high-bg)}.tier-chip.tier-t2 .tier-n{background:var(--high-solid);color:#1a0d00}.tier-chip.tier-t2 .tier-l{color:var(--high-fg)}.tier-chip.tier-t3{border-color:var(--border-strong);background:var(--surface3)}.tier-chip.tier-t3 .tier-n{background:var(--text4);color:var(--bg)}.tier-chip.tier-t3 .tier-l{color:var(--text2)}.fd-tabs{border-bottom:1px solid var(--border);background:var(--surface);gap:2px;padding:0 16px;display:flex}.fd-tab{color:var(--text3);cursor:pointer;transition:color var(--motion-fast);letter-spacing:.01em;background:0 0;border:0;border-bottom:1.5px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:12px 12px 11px;font-family:inherit;font-size:12px;font-weight:500;display:inline-flex}.fd-tab:hover{color:var(--text2)}.fd-tab.on{color:var(--text);border-bottom-color:var(--accent)}.fd-tab-ct{font-family:var(--font-mono);color:var(--text3);background:var(--surface3);border-radius:999px;padding:1px 5px;font-size:10px}.fd-tab.on .fd-tab-ct{color:var(--accent);background:var(--accent-sub)}.fd-body{background:var(--bg-elev);flex:1;padding:20px 24px 40px;overflow-y:auto}.fd-body::-webkit-scrollbar{width:10px}.fd-body::-webkit-scrollbar-track{background:0 0}.fd-body::-webkit-scrollbar-thumb{background:var(--border);border:3px solid var(--bg-elev);border-radius:999px}.fd-body::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.fd-section{margin-bottom:24px}.fd-section:last-child{margin-bottom:0}.fd-section h4{text-transform:uppercase;letter-spacing:.08em;color:var(--text3);margin:0 0 10px;font-size:10px;font-weight:500}.fd-desc{color:var(--text);text-wrap:pretty;margin:0;font-size:13px;line-height:1.55}.fd-hint{color:var(--text3);margin:0 0 12px;font-size:11.5px;line-height:1.5}.fd-steps{flex-direction:column;gap:6px;margin:0;padding-left:20px;display:flex}.fd-steps li{color:var(--text);font-size:12.5px;line-height:1.5}.fd-steps li::marker{color:var(--text4);font-variant-numeric:tabular-nums}.fd-actions-row{flex-wrap:wrap;gap:6px;display:flex}.fd-ev-table{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);flex-direction:column;display:flex;overflow:hidden}.fd-ev-row{border-bottom:1px solid var(--border);cursor:pointer;transition:background var(--motion-fast);grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px 16px;padding:10px 14px;display:grid}.fd-ev-row:last-child{border-bottom:0}.fd-ev-row:hover{background:var(--surface2)}.fd-ev-cell{flex-direction:column;gap:3px;min-width:0;display:flex}.fd-ev-k{text-transform:uppercase;letter-spacing:.06em;color:var(--text3);font-size:9px;font-weight:500}.fd-ev-v{font-family:var(--font-mono);color:var(--text);text-overflow:ellipsis;white-space:nowrap;background:0 0;padding:0;font-size:11px;overflow:hidden}.fd-comp{flex-direction:column;gap:4px;display:flex}.fd-comp-row{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:120px 1fr auto;align-items:center;gap:12px;padding:10px 14px;display:grid}.fd-comp-fw{color:var(--text);font-size:12px;font-weight:600}.fd-comp-ctl{font-family:var(--font-mono);color:var(--text2);background:var(--surface2);border-radius:var(--radius-sm);justify-self:start;padding:2px 6px;font-size:11px}.fd-comp-lvl{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:500}.fd-comp-lvl.required{background:var(--crit-bg);color:var(--crit-fg);border:1px solid var(--crit-br)}.fd-comp-lvl.suggested{background:var(--info-bg);color:var(--info-fg);border:1px solid var(--info-br)}.rx-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);padding:14px 16px}.rx-hdr{color:var(--text);align-items:center;gap:8px;margin-bottom:10px;font-size:12px;font-weight:600;display:flex}.rx-hdr svg{color:var(--accent)}.rx-hdr .tier-chip{margin-left:auto}.rx-body{color:var(--text2);text-wrap:pretty;margin:0 0 14px;font-size:12px;line-height:1.55}.rx-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.rx-consent-chk{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text2);cursor:pointer;align-items:flex-start;gap:9px;margin:10px 0 14px;padding:10px 12px;font-size:12px;line-height:1.5;display:flex}.rx-consent-chk input{accent-color:var(--accent);flex-shrink:0;margin-top:2px}.rx-consent-chk b{color:var(--text);font-family:var(--font-mono);font-weight:500}.rx-diff{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);flex-direction:column;margin-bottom:12px;display:flex;overflow:hidden}.rx-diff-row{border-bottom:1px solid var(--border);grid-template-columns:110px 1fr;align-items:center;gap:12px;padding:8px 12px;font-size:11.5px;display:grid}.rx-diff-row:last-child{border-bottom:0}.rx-diff-k{text-transform:uppercase;letter-spacing:.06em;color:var(--text3);font-size:10px;font-weight:500}.rx-diff code{font-family:var(--font-mono);color:var(--text);word-break:break-all;background:0 0;padding:0;font-size:11px}.rx-before{color:var(--crit-fg)!important}.rx-after{color:var(--low-fg)!important}.rx-log{font-family:var(--font-mono);color:var(--text2);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:4px;margin-top:4px;padding:10px 12px;font-size:11px;display:flex}.rx-log-line{align-items:baseline;gap:8px;display:flex}.rx-log-ok{color:var(--low-fg);font-weight:600}.rx-log-on{color:var(--accent);font-weight:600}.rx-spinner{border:1.5px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;width:12px;height:12px;animation:.7s linear infinite rx-spin;display:inline-block}@keyframes rx-spin{to{transform:rotate(360deg)}}.rx-card.rx-done{border-color:var(--low-br);background:linear-gradient(180deg, var(--low-bg), var(--surface) 40%)}.rx-done-mark{background:var(--low-solid);color:#00110a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.rx-done-mark svg{stroke-width:3px}
