@import"https://fonts.googleapis.com/css2?family=Sora:wght@400;600;700&family=Geist:wght@400;500;600&family=Geist+Mono:wght@400;500&display=swap";:root{--green-50:#F1FBEA;--green-100:#E1F6D0;--green-200:#B7EB8F;--green-300:#8AEB55;--green-400:#7CE342;--green-500:#52C41A;--green-electric:#4BD32E;--green-600:#45A814;--green-700:#2F7F0B;--green-800:#245F0B;--green-900:#173D08;--slate-0:#FFFFFF;--slate-50:#F4F7F5;--slate-100:#EEF2EF;--slate-200:#E2E8E4;--slate-300:#C9D2CD;--slate-400:#9AA59F;--slate-500:#6B7771;--slate-600:#4F5A55;--slate-700:#353E3A;--slate-800:#1F2529;--slate-900:#14171A;--slate-950:#0F1419;--warning-50:#FFF6E5;--warning-500:#F5A524;--warning-700:#8A5A00;--danger-50:#FDECEC;--danger-500:#E5484D;--danger-600:#C8363B;--danger-700:#B42318;--info-50:#EAF2FE;--info-500:#2F80ED;--info-700:#1D5FBF;--brand-primary:var(--green-500);--brand-hover:var(--green-400);--brand-active:var(--green-600);--brand-glow:var(--green-300);--brand-soft:var(--green-200);--success:var(--green-500);--warning:var(--warning-500);--danger:var(--danger-500);--info:var(--info-500);--text-strong:var(--slate-950);--text-body:var(--slate-800);--text-muted:var(--slate-600);--text-subtle:var(--slate-500);--text-on-brand:var(--slate-950);--text-inverse:#FFFFFF;--text-inverse-muted:var(--slate-400);--text-link:var(--green-700);--text-link-hover:var(--green-800);--text-brand-on-dark:var(--green-400);--surface-page:var(--slate-50);--surface-card:#FFFFFF;--surface-subtle:var(--slate-50);--surface-hover:var(--slate-100);--surface-brand-subtle:var(--green-50);--surface-inverse:var(--slate-950);--surface-inverse-raised:var(--slate-900);--surface-inverse-hover:var(--slate-800);--border-default:var(--slate-200);--border-strong:var(--slate-300);--border-active:var(--green-200);--border-brand:var(--green-500);--border-inverse:var(--slate-800);--gradient-brand:linear-gradient(135deg,#B7EB8F 0%,#7CE342 45%,#52C41A 100%);--gradient-wave:radial-gradient(120% 120% at 0% 50%,rgba(124,227,66,.22) 0%,rgba(124,227,66,.08) 35%,transparent 60%)}:root{--font-display:"Sora","Plus Jakarta Sans",system-ui,sans-serif;--font-body:"Geist","Inter",system-ui,-apple-system,sans-serif;--font-mono:"Geist Mono","JetBrains Mono",ui-monospace,monospace;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--text-xs:12px;--lh-xs:16px;--text-sm:14px;--lh-sm:20px;--text-md:16px;--lh-md:24px;--text-lg:20px;--lh-lg:28px;--text-xl:24px;--lh-xl:32px;--text-2xl:32px;--lh-2xl:40px;--text-3xl:40px;--lh-3xl:48px;--text-4xl:56px;--lh-4xl:62px;--text-5xl:72px;--lh-5xl:76px;--tracking-display:-.03em;--tracking-heading:-.02em;--tracking-body:-.005em;--tracking-caps:.08em;--type-display:700 var(--text-4xl)/var(--lh-4xl) var(--font-display);--type-h1:700 var(--text-3xl)/var(--lh-3xl) var(--font-display);--type-h2:600 var(--text-2xl)/var(--lh-2xl) var(--font-display);--type-h3:600 var(--text-xl)/var(--lh-xl) var(--font-display);--type-h4:600 var(--text-lg)/var(--lh-lg) var(--font-display);--type-body-lg:400 var(--text-md)/var(--lh-md) var(--font-body);--type-body:400 var(--text-sm)/var(--lh-sm) var(--font-body);--type-caption:400 var(--text-xs)/var(--lh-xs) var(--font-body);--type-label:500 var(--text-sm)/var(--lh-sm) var(--font-body);--type-overline:600 11px/16px var(--font-mono);--type-mono:400 13px/20px var(--font-mono)}:root{--space-0:0;--space-0-5:2px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:999px;--control-sm:30px;--control-md:36px;--control-lg:44px;--sidebar-width:248px;--topbar-height:56px;--container-max:1200px}:root{--shadow-xs:0 1px 2px rgba(15,20,25,.06);--shadow-sm:0 1px 2px rgba(15,20,25,.04),0 2px 6px rgba(15,20,25,.04);--shadow-md:0 4px 12px -2px rgba(15,20,25,.08),0 2px 4px rgba(15,20,25,.04);--shadow-lg:0 24px 48px -12px rgba(15,20,25,.18),0 4px 12px rgba(15,20,25,.06);--shadow-glow-sm:0 4px 14px -4px rgba(82,196,26,.55);--shadow-glow:0 0 0 1px rgba(82,196,26,.12),0 12px 32px -12px rgba(82,196,26,.45);--ring-focus:0 0 0 3px rgba(82,196,26,.28);--ring-danger:0 0 0 3px rgba(229,72,77,.22);--overlay-scrim:rgba(15,20,25,.45);--blur-overlay:4px;--dur-fast:.12s;--dur-base:.2s;--dur-slow:.32s;--ease-out:cubic-bezier(.2,.8,.2,1);--ease-in-out:cubic-bezier(.65,0,.35,1);--ease-spring:cubic-bezier(.34,1.4,.64,1)}*,*:before,*:after{box-sizing:border-box}body{margin:0;font:var(--type-body);letter-spacing:var(--tracking-body);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-strong);letter-spacing:var(--tracking-heading);margin:0}code,kbd,samp{font:var(--type-mono)}a{color:var(--text-link);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}a:hover{color:var(--text-link-hover);text-decoration:underline}:focus-visible{outline:none;box-shadow:var(--ring-focus)}@media(prefers-reduced-motion:reduce){*{transition-duration:0ms!important;animation-duration:0ms!important}}:root{--sp-bg:#F4F7F5;--sp-graphite:#4F5A55;--sp-graphite-light:#C9D2CD;--sp-accent:#52C41A;--sp-accent-hover:#7CE342;--sp-accent-press:#45A814;--sp-ink:#0F1419;--sp-surface:#FFFFFF;--sp-border:#E2E8E4;--sp-mint:#B7EB8F;--sp-link:#2F7F0B;--surface-page:var(--sp-bg);--text-muted:var(--sp-graphite);--chart-1:var(--sp-accent);--chart-2:var(--sp-graphite);--chart-3:var(--sp-graphite-light);--chart-area:rgba(82,196,26,.12);--chart-grid:var(--sp-border);--chart-axis:#6B7771;--sev-critical:#E5484D;--sev-high:#F5A524;--sev-medium:var(--sp-graphite);--sev-none:var(--sp-accent);--sev-critical-text:#B42318;--sev-high-text:#8A5A00;--sev-none-text:#2F7F0B;--nav-height:64px;--section-y:96px;--container-max:1120px}:root{--fraud:var(--sev-critical);--review:var(--sev-high);--legit:var(--sp-graphite);--legit-soft:var(--sp-graphite-light);--model:var(--sp-accent);--baseline:var(--sp-graphite);--corr-pos:var(--sp-accent);--corr-neg:var(--sp-graphite);--corr-zero:#FFFFFF}:root{--chart-h-sm:220px;--chart-h-md:280px;--chart-h-lg:320px;--heatmap-cell:22px;--kpi-value:600 30px/36px var(--font-mono);--legend-swatch:10px}@keyframes ap-spin{to{transform:rotate(360deg)}}@keyframes ap-fade{0%{opacity:0}}@keyframes ap-rise{0%{opacity:0;transform:translateY(8px) scale(.98)}}.ap-icon{display:inline-flex;line-height:1;flex:none}.ap-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:var(--control-md);padding:0 14px;border-radius:var(--radius-md);border:1px solid transparent;font:500 var(--text-sm)/1 var(--font-body);letter-spacing:var(--tracking-body);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.ap-btn:active:not(:disabled){transform:translateY(1px)}.ap-btn:focus-visible{outline:none;box-shadow:var(--ring-focus)}.ap-btn:disabled{opacity:.45;cursor:not-allowed}.ap-btn--sm{height:var(--control-sm);padding:0 10px;gap:6px;font-size:var(--text-xs);border-radius:var(--radius-sm)}.ap-btn--lg{height:var(--control-lg);padding:0 20px;font-size:var(--text-md);border-radius:var(--radius-lg)}.ap-btn--full{width:100%}.ap-btn--primary{background:var(--brand-primary);color:var(--text-on-brand);box-shadow:var(--shadow-glow-sm)}.ap-btn--primary:hover:not(:disabled){background:var(--brand-hover);box-shadow:0 6px 20px -6px #7ce342cc}.ap-btn--primary:active:not(:disabled){background:var(--brand-active)}.ap-btn--secondary{background:var(--surface-card);color:var(--text-strong);border-color:var(--border-default);box-shadow:var(--shadow-xs)}.ap-btn--secondary:hover:not(:disabled){border-color:var(--border-active);background:var(--surface-brand-subtle)}.ap-btn--ghost{background:transparent;color:var(--text-body)}.ap-btn--ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text-strong)}.ap-btn--dark{background:var(--slate-950);color:#fff}.ap-btn--dark:hover:not(:disabled){background:var(--slate-800)}.ap-btn--danger{background:var(--danger-500);color:#fff}.ap-btn--danger:hover:not(:disabled){background:var(--danger-600)}.ap-iconbtn{width:var(--control-md);padding:0}.ap-btn--sm.ap-iconbtn{width:var(--control-sm)}.ap-btn--lg.ap-iconbtn{width:var(--control-lg)}.ap-spinner{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ap-spin .7s linear infinite}.ap-field{display:flex;flex-direction:column;gap:6px;min-width:0}.ap-label{font:var(--type-label);color:var(--text-strong)}.ap-hint{font:var(--type-caption);color:var(--text-muted)}.ap-hint--error{color:var(--danger-700)}.ap-control{position:relative;display:flex;align-items:center;gap:8px;height:38px;padding:0 12px;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-subtle);transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.ap-control:hover{border-color:var(--border-strong)}.ap-control:focus-within{border-color:var(--brand-primary);box-shadow:var(--ring-focus)}.ap-control--error,.ap-control--error:hover{border-color:var(--danger-500)}.ap-control--error:focus-within{border-color:var(--danger-500);box-shadow:var(--ring-danger)}.ap-control--disabled{background:var(--surface-subtle);opacity:.7}.ap-control--sm{height:32px}.ap-control--lg{height:44px}.ap-control input,.ap-control select{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;padding:0;font:400 var(--text-sm)/1 var(--font-body);color:var(--text-strong)}.ap-control input::placeholder{color:var(--text-subtle)}.ap-control--mono input{font-family:var(--font-mono);font-size:13px}.ap-control select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;padding-right:24px}.ap-control .ap-chev{position:absolute;right:12px;pointer-events:none}.ap-suffix{font:500 12px/1 var(--font-mono);color:var(--text-subtle)}.ap-choice{position:relative;display:inline-flex;align-items:flex-start;gap:10px;cursor:pointer;font:var(--type-body);color:var(--text-body)}.ap-choice input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.ap-box{flex:none;width:18px;height:18px;margin-top:1px;border:1.5px solid var(--slate-300);border-radius:5px;background:#fff;display:grid;place-items:center;color:transparent;transition:all var(--dur-fast) var(--ease-out)}.ap-box--radio{border-radius:50%}.ap-choice:hover .ap-box{border-color:var(--brand-primary)}.ap-choice input:checked+.ap-box,.ap-box--mixed{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--text-on-brand)}.ap-choice input:checked+.ap-box--radio{background:#fff;border:5px solid var(--brand-primary)}.ap-choice input:focus-visible+.ap-box{box-shadow:var(--ring-focus)}.ap-choice--disabled{opacity:.5;cursor:not-allowed}.ap-choice__desc{display:block;font:var(--type-caption);color:var(--text-muted);margin-top:2px}.ap-switch{display:inline-flex;align-items:center;gap:10px;background:none;border:0;padding:0;cursor:pointer;font:var(--type-body);color:var(--text-body)}.ap-switch:disabled{opacity:.5;cursor:not-allowed}.ap-switch__track{position:relative;flex:none;width:36px;height:20px;border-radius:var(--radius-full);background:var(--slate-300);transition:background var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.ap-switch__thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0f141940;transition:transform var(--dur-base) var(--ease-spring)}.ap-switch[aria-checked=true] .ap-switch__track{background:var(--brand-primary);box-shadow:var(--shadow-glow-sm)}.ap-switch[aria-checked=true] .ap-switch__thumb{transform:translate(16px)}.ap-switch:focus-visible{outline:none}.ap-switch:focus-visible .ap-switch__track{box-shadow:var(--ring-focus)}.ap-badge{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:var(--radius-full);border:1px solid transparent;font:500 var(--text-xs)/1 var(--font-body);white-space:nowrap}.ap-badge--neutral{background:var(--slate-100);color:var(--slate-700);border-color:var(--slate-200)}.ap-badge--brand{background:var(--green-50);color:var(--green-800);border-color:var(--green-200)}.ap-badge--success{background:var(--green-50);color:var(--green-700);border-color:var(--green-100)}.ap-badge--warning{background:var(--warning-50);color:var(--warning-700);border-color:#fbe3b4}.ap-badge--danger{background:var(--danger-50);color:var(--danger-700);border-color:#f8cfcf}.ap-badge--info{background:var(--info-50);color:var(--info-700);border-color:#cfe0fb}.ap-badge--dark{background:var(--slate-950);color:var(--green-400);border-color:var(--slate-800)}.ap-badge__dot{width:6px;height:6px;border-radius:50%;background:currentColor}.ap-badge--brand .ap-badge__dot,.ap-badge--success .ap-badge__dot,.ap-badge--dark .ap-badge__dot{background:var(--green-500);box-shadow:0 0 0 3px #52c41a33}.ap-tag{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:var(--radius-sm);background:var(--surface-brand-subtle);border:1px solid var(--green-200);color:var(--green-800);font:500 var(--text-sm)/1 var(--font-body);transition:all var(--dur-fast) var(--ease-out)}.ap-tag--neutral{background:var(--surface-card);border-color:var(--border-default);color:var(--text-body)}.ap-tag--interactive{cursor:pointer}.ap-tag--interactive:hover{border-color:var(--brand-primary)}.ap-tag--selected{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--text-on-brand)}.ap-tag__x{display:inline-flex;background:none;border:0;padding:0;margin-right:-2px;color:inherit;opacity:.6;cursor:pointer}.ap-tag__x:hover{opacity:1}.ap-card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.ap-card--elevated{box-shadow:var(--shadow-md);border-color:transparent}.ap-card--glow{border-color:var(--green-200);box-shadow:var(--shadow-glow)}.ap-card--dark{background:var(--surface-inverse);border-color:var(--border-inverse);color:var(--slate-300)}.ap-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 20px 0}.ap-card--pad-sm .ap-card__head{padding:14px 14px 0}.ap-card--pad-lg .ap-card__head{padding:28px 28px 0}.ap-card--pad-none .ap-card__head{padding:18px 20px}.ap-card__title{margin:0;font:600 var(--text-md)/var(--lh-md) var(--font-display);letter-spacing:-.01em;color:var(--text-strong)}.ap-card--dark .ap-card__title{color:#fff}.ap-card__sub{margin:2px 0 0;font:var(--type-body);color:var(--text-muted)}.ap-card--dark .ap-card__sub{color:var(--slate-400)}.ap-card__body{padding:20px}.ap-card--pad-sm .ap-card__body{padding:14px}.ap-card--pad-lg .ap-card__body{padding:28px}.ap-card--pad-none .ap-card__body{padding:0}.ap-card__head+.ap-card__body{padding-top:16px}.ap-card--pad-none .ap-card__head+.ap-card__body{padding-top:0}.ap-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border-default)}.ap-tab{position:relative;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 12px;background:none;border:0;cursor:pointer;font:500 var(--text-sm)/1 var(--font-body);color:var(--text-muted);transition:color var(--dur-fast) var(--ease-out)}.ap-tab:hover,.ap-tab[aria-selected=true]{color:var(--text-strong)}.ap-tab[aria-selected=true]:after{content:"";position:absolute;left:8px;right:8px;bottom:-1px;height:2px;border-radius:2px;background:var(--brand-primary);box-shadow:0 0 8px #52c41a99}.ap-tab:focus-visible{outline:none;box-shadow:var(--ring-focus);border-radius:6px}.ap-tab__count{font:500 11px/1 var(--font-mono);padding:3px 6px;border-radius:var(--radius-full);background:var(--slate-100);color:var(--text-muted)}.ap-tab[aria-selected=true] .ap-tab__count{background:var(--green-50);color:var(--green-800)}.ap-tabs--pill{display:inline-flex;border:0;background:var(--slate-100);padding:4px;border-radius:var(--radius-md)}.ap-tabs--pill .ap-tab{height:30px;border-radius:6px}.ap-tabs--pill .ap-tab[aria-selected=true]{background:#fff;box-shadow:var(--shadow-xs)}.ap-tabs--pill .ap-tab[aria-selected=true]:after{display:none}.ap-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:24px;background:var(--overlay-scrim);-webkit-backdrop-filter:blur(var(--blur-overlay));backdrop-filter:blur(var(--blur-overlay));animation:ap-fade var(--dur-base) var(--ease-out)}.ap-dialog{width:100%;background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:ap-rise var(--dur-slow) var(--ease-out)}.ap-dialog__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px 0}.ap-dialog__title{margin:0;font:600 var(--text-lg)/var(--lh-lg) var(--font-display);letter-spacing:-.015em;color:var(--text-strong)}.ap-dialog__desc{margin:6px 0 0;font:var(--type-body);color:var(--text-muted)}.ap-dialog__body{padding:20px 24px}.ap-dialog__foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 24px;background:var(--surface-subtle);border-top:1px solid var(--border-default)}.ap-toast{display:flex;align-items:flex-start;gap:12px;width:360px;max-width:100%;padding:14px 12px 14px 16px;background:var(--surface-inverse);border:1px solid var(--border-inverse);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);color:var(--slate-300);animation:ap-rise var(--dur-slow) var(--ease-out)}.ap-toast--light{background:#fff;border-color:var(--border-default);color:var(--text-body)}.ap-toast__icon{margin-top:2px}.ap-toast--success .ap-toast__icon{color:var(--green-400)}.ap-toast--warning .ap-toast__icon{color:var(--warning-500)}.ap-toast--danger .ap-toast__icon{color:#ff6b6e}.ap-toast--info .ap-toast__icon{color:#6aa8ff}.ap-toast--light.ap-toast--success .ap-toast__icon{color:var(--green-600)}.ap-toast--light.ap-toast--danger .ap-toast__icon{color:var(--danger-500)}.ap-toast--light.ap-toast--info .ap-toast__icon{color:var(--info-500)}.ap-toast__main{flex:1;min-width:0}.ap-toast__title{font:600 var(--text-sm)/20px var(--font-body);color:#fff}.ap-toast--light .ap-toast__title{color:var(--text-strong)}.ap-toast__msg{font:var(--type-body);color:var(--slate-400)}.ap-toast--light .ap-toast__msg{color:var(--text-muted)}.ap-toast__action{margin-top:8px;background:none;border:0;padding:0;cursor:pointer;font:600 var(--text-sm)/20px var(--font-body);color:var(--green-400)}.ap-toast--light .ap-toast__action{color:var(--text-link)}.ap-toast__x{display:inline-flex;background:none;border:0;padding:2px;cursor:pointer;color:inherit;opacity:.6;border-radius:4px}.ap-toast__x:hover{opacity:1}.ap-tip{position:relative;display:inline-flex}.ap-tip__bubble{position:absolute;z-index:50;left:50%;bottom:calc(100% + 8px);transform:translate(-50%,4px);padding:6px 8px;border-radius:6px;background:var(--slate-950);color:#fff;font:500 var(--text-xs)/16px var(--font-body);white-space:nowrap;box-shadow:var(--shadow-md);opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-base) var(--ease-out)}.ap-tip__bubble kbd{margin-left:6px;font:500 11px/1 var(--font-mono);color:var(--green-400)}.ap-tip--bottom .ap-tip__bubble{bottom:auto;top:calc(100% + 8px);transform:translate(-50%,-4px)}.ap-tip:hover .ap-tip__bubble,.ap-tip:focus-within .ap-tip__bubble,.ap-tip--open .ap-tip__bubble{opacity:1;transform:translate(-50%)}.app{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);grid-template-rows:var(--topbar-height) minmax(0,1fr);height:100vh}.sidebar{grid-row:1 / -1;background:var(--surface-inverse);color:var(--text-inverse-muted);padding:var(--space-4) var(--space-3);display:flex;flex-direction:column;gap:var(--space-1);overflow-y:auto}.sidebar__brand{display:flex;align-items:center;height:var(--control-lg);padding:0 var(--space-2);margin-bottom:var(--space-4)}.sidebar__brand img{height:28px;width:auto}.sidebar__group{font:var(--type-overline);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--slate-500);padding:var(--space-4) var(--space-3) var(--space-2)}.sidebar__foot{margin-top:auto;padding:var(--space-3);font:var(--type-caption);color:var(--slate-500)}.sidebar__foot code{display:block;margin-top:var(--space-1);font:var(--type-mono);font-size:var(--text-xs);color:var(--slate-400);overflow-wrap:anywhere}.nav-item{display:flex;align-items:center;gap:10px;height:var(--control-md);padding:0 10px;border-radius:var(--radius-md);font:var(--type-label);color:var(--text-inverse-muted);background:none;border:0;width:100%;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.nav-item:hover{background:var(--surface-inverse-hover);color:var(--text-inverse)}.nav-item[aria-current=page]{color:var(--text-inverse);background:var(--surface-inverse-raised);box-shadow:inset 2px 0 0 var(--green-400)}.nav-item[aria-current=page] svg{color:var(--green-400)}.nav-item:focus-visible{outline:none;box-shadow:var(--ring-focus)}.nav-item__count{margin-left:auto;font:500 11px/1 var(--font-mono);padding:3px 6px;border-radius:var(--radius-full);background:var(--danger-500);color:var(--text-inverse)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:0 var(--space-6);background:var(--surface-card);border-bottom:1px solid var(--border-default);min-width:0}.topbar__title{display:flex;align-items:baseline;gap:var(--space-3);min-width:0}.topbar__title h1{font:600 var(--text-lg)/var(--lh-lg) var(--font-display);letter-spacing:var(--tracking-heading);white-space:nowrap}.topbar__crumb{font:var(--type-caption);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar__actions{display:flex;align-items:center;gap:var(--space-2);flex:none}.topbar__updated{font:var(--type-caption);font-family:var(--font-mono);color:var(--text-subtle);white-space:nowrap}.main{overflow:auto;background:var(--surface-page);padding:var(--space-6)}.page{display:flex;flex-direction:column;gap:var(--space-6);max-width:1440px;margin:0 auto}.section{display:flex;flex-direction:column;gap:var(--space-4)}.section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.overline{font:var(--type-overline);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted);margin:0}.section__title{font:var(--type-h4);letter-spacing:var(--tracking-heading);margin-top:var(--space-1);text-wrap:balance}.section__lead{font:var(--type-body);color:var(--text-muted);margin:var(--space-1) 0 0;max-width:65ch;text-wrap:pretty}.grid{display:grid;gap:var(--space-4)}.grid--kpi{grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr))}.grid--2{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}.grid--3{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.span-2{grid-column:1 / -1}.kpi{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-5);min-width:0}.kpi__label{display:flex;align-items:center;gap:var(--space-2);font:var(--type-caption);color:var(--text-muted)}.kpi__label svg{color:var(--sp-graphite);flex:none}.kpi__value{font:var(--kpi-value);letter-spacing:var(--tracking-heading);color:var(--text-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi__value--sm{font:600 var(--text-md)/var(--lh-md) var(--font-mono);white-space:normal;overflow-wrap:anywhere;padding:var(--space-1) 0}.kpi__delta{font:400 var(--text-xs)/var(--lh-xs) var(--font-mono);color:var(--text-muted)}.kpi__delta--good{color:var(--sp-link)}.kpi__delta--bad{color:var(--danger-700)}.kpi__delta--warn{color:var(--warning-700)}.chart-card{display:flex;flex-direction:column;min-width:0}.chart-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-5) var(--space-5) 0}.chart-card__num{font:var(--type-overline);letter-spacing:var(--tracking-caps);color:var(--text-subtle)}.chart-card__title{margin:2px 0 0;font:600 var(--text-md)/var(--lh-md) var(--font-display);letter-spacing:-.01em;color:var(--text-strong)}.chart-card__use{margin:2px 0 0;font:400 13px/var(--lh-sm) var(--font-body);color:var(--sp-graphite);text-wrap:pretty}.chart-card__body{padding:var(--space-4) var(--space-5) var(--space-5);min-width:0}.chart-card__foot{padding:0 var(--space-5) var(--space-5);font:var(--type-caption);color:var(--text-muted)}.chart{width:100%;height:var(--chart-h-md)}.chart--sm{height:var(--chart-h-sm)}.chart--lg{height:var(--chart-h-lg)}.legend{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.legend__item{display:inline-flex;align-items:center;gap:6px;font:400 var(--text-xs)/var(--lh-xs) var(--font-mono);color:var(--sp-graphite)}.legend__box{width:var(--legend-swatch);height:var(--legend-swatch);border-radius:2px;flex:none}.legend__line{width:14px;height:3px;border-radius:2px;flex:none}.legend__line--dashed{background:repeating-linear-gradient(90deg,currentColor 0 4px,transparent 4px 7px)!important}.legend__dot{width:8px;height:8px;border-radius:50%;flex:none}.chart-tip{background:var(--slate-950);color:var(--text-inverse);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);box-shadow:var(--shadow-md);font:400 var(--text-xs)/var(--lh-xs) var(--font-mono)}.chart-tip__title{color:var(--slate-400);margin-bottom:var(--space-1)}.chart-tip__row{display:flex;justify-content:space-between;gap:var(--space-4)}.meter-list{display:flex;flex-direction:column;gap:var(--space-3)}.meter-group{font:var(--type-overline);letter-spacing:var(--tracking-caps);color:var(--text-subtle);margin-top:var(--space-2)}.meter{display:grid;grid-template-columns:minmax(0,96px) minmax(0,1fr) 56px;align-items:center;gap:var(--space-3)}.meter__name{font:var(--type-mono);font-size:var(--text-xs);color:var(--text-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meter__track{height:8px;border-radius:var(--radius-full);background:var(--sp-border);overflow:hidden}.meter__fill{display:block;height:100%;border-radius:var(--radius-full)}.meter__value{font:500 var(--text-xs)/1 var(--font-mono);text-align:right;color:var(--text-strong)}.heatmap{display:flex;gap:var(--space-4);align-items:stretch;overflow-x:auto}.heatmap__grid{display:grid;gap:2px;flex:none}.heatmap__cell{width:var(--heatmap-cell);height:var(--heatmap-cell);border-radius:3px;display:grid;place-items:center;font:500 8px/1 var(--font-mono);color:var(--text-strong)}.heatmap__cell--dark{color:var(--text-inverse)}.heatmap__label{font:400 9px/var(--heatmap-cell) var(--font-mono);color:var(--sp-graphite);white-space:nowrap;text-align:right;padding-right:var(--space-1)}.heatmap__label--col{writing-mode:vertical-rl;transform:rotate(180deg);text-align:left;line-height:var(--heatmap-cell);padding:var(--space-1) 0 0;height:150px}.heatmap__scale{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);font:400 10px/1 var(--font-mono);color:var(--sp-graphite);flex:none}.heatmap__bar{width:10px;flex:1;min-height:120px;border-radius:2px;background:linear-gradient(to bottom,var(--corr-pos),var(--corr-zero),var(--corr-neg));border:1px solid var(--sp-border)}.table-wrap{overflow-x:auto}.table-wrap--scroll{max-height:560px;overflow:auto}.table-wrap--scroll thead th{position:sticky;top:0;z-index:1}.table{width:100%;border-collapse:collapse;font:var(--type-body)}.table th{background:var(--surface-subtle);font:var(--type-overline);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted);text-align:left;padding:0 var(--space-4);height:36px;border-bottom:1px solid var(--border-default);white-space:nowrap}.table td{height:44px;padding:0 var(--space-4);border-bottom:1px solid var(--slate-100);color:var(--text-body);white-space:nowrap}.table tbody tr{transition:background var(--dur-fast) var(--ease-out)}.table tbody tr:hover{background:var(--surface-hover)}.table tbody tr[aria-selected=true]{background:var(--surface-brand-subtle)}.table tbody tr.is-clickable{cursor:pointer}.table tbody tr.is-clickable:focus-visible{outline:none;box-shadow:inset var(--ring-focus)}.table .num{text-align:right;font:var(--type-mono)}.table .mono{font:var(--type-mono)}.table th.num{text-align:right}.table--compact td{height:36px}.tags{display:flex;gap:var(--space-1);flex-wrap:nowrap}.feature-tag{display:inline-flex;align-items:center;height:22px;padding:0 var(--space-2);border-radius:var(--radius-sm);background:var(--surface-subtle);border:1px solid var(--border-default);font:500 11px/1 var(--font-mono);color:var(--text-body)}.score{font:600 13px/1 var(--font-mono)}.score--high{color:var(--danger-700)}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-2);padding:var(--space-10) var(--space-6)}.empty__icon{width:40px;height:40px;border-radius:var(--radius-md);background:var(--sp-bg);color:var(--sp-graphite);display:grid;place-items:center;margin-bottom:var(--space-1)}.empty__title{font:var(--type-h4);font-size:var(--text-md);color:var(--text-strong);margin:0}.empty__text{font:var(--type-body);color:var(--text-muted);max-width:44ch;margin:0;text-wrap:pretty}.skeleton{background:var(--slate-100);border-radius:var(--radius-sm)}.error-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--danger-50);color:var(--danger-700);font:var(--type-body);border:1px solid var(--danger-50)}.pending-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--space-3);margin:0;padding:0;list-style:none}.pending-item{display:flex;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-subtle);border:1px solid var(--border-default)}.pending-item__num{font:var(--type-overline);color:var(--text-subtle);padding-top:2px}.pending-item__name{font:var(--type-label);color:var(--text-strong)}.pending-item__why{font:var(--type-caption);color:var(--text-muted)}.kv{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-2) var(--space-4);margin:0}.kv dt{font:var(--type-caption);color:var(--text-muted);padding-top:2px}.kv dd{margin:0;font:var(--type-mono);color:var(--text-strong);overflow-wrap:anywhere}.login{min-height:100vh;display:grid;place-items:center;padding:var(--space-6);background:var(--slate-950);background-image:var(--gradient-wave)}.login__panel{width:100%;max-width:400px;display:flex;flex-direction:column;gap:var(--space-6)}.login__brand img{height:48px;width:auto}.login__card{background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.login__title{font:var(--type-h4)}.login__text{font:var(--type-body);color:var(--text-muted);margin:0}.login__note{font:var(--type-caption);color:var(--slate-400);margin:0}@media(max-width:960px){.app{grid-template-columns:minmax(0,1fr);grid-template-rows:auto var(--topbar-height) minmax(0,1fr);height:auto;min-height:100vh}.sidebar{grid-row:auto;flex-direction:row;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);overflow-x:auto}.sidebar__brand{margin:0 var(--space-2) 0 0;flex:none}.sidebar__group,.sidebar__foot{display:none}.nav-item{width:auto;flex:none}.main{overflow:visible}}@media(max-width:640px){.app{grid-template-rows:auto auto minmax(0,1fr)}.main{padding:var(--space-4)}.topbar{padding:var(--space-2) var(--space-4);flex-wrap:wrap;row-gap:var(--space-2)}.chart-card__head{flex-direction:column}.topbar__crumb,.topbar__updated{display:none}.sidebar__brand img{height:24px}.nav-item span{display:none}.meter{grid-template-columns:minmax(0,80px) minmax(0,1fr) 48px}}.heatmap__grid--activity{flex:1;min-width:420px}.heatmap__cell--fluid{width:auto;height:18px;border-radius:2px}.heatmap__hour{font:400 9px/1 var(--font-mono);color:var(--sp-graphite);padding-top:var(--space-1)}.subject-head{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.subject-alias{font:600 var(--text-xl)/var(--lh-xl) var(--font-mono);color:var(--text-strong);letter-spacing:0;margin:var(--space-1) 0 0}.subject-search{display:flex;gap:var(--space-2);align-items:flex-end;flex-wrap:wrap}.subject-search .ap-field{width:min(100%,280px)}.alias-link{background:none;border:0;padding:0;font:var(--type-mono);color:var(--text-link);cursor:pointer}.alias-link:hover{color:var(--text-link-hover);text-decoration:underline}.alias-link:focus-visible{outline:none;box-shadow:var(--ring-focus);border-radius:var(--radius-xs)}.compare{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.compare__row{display:flex;align-items:flex-start;gap:var(--space-2);font:var(--type-body);color:var(--text-body)}.compare__row svg{flex:none;margin-top:2px}.compare__aspect{font:var(--type-label);color:var(--text-strong);min-width:88px}.alert-card__head{display:flex;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-3)}.alert-card__id{font:var(--type-mono);color:var(--text-strong);overflow-wrap:anywhere}.alert-card__meta{font:var(--type-caption);color:var(--text-muted)}.notice{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--info-50);color:var(--info-700);font:var(--type-body)}.notice svg{flex:none;margin-top:2px}.feature-tag--text{font:500 var(--text-xs)/1 var(--font-body)}.heatmap__label--text{font-family:var(--font-body);font-size:10px}.meter__name--text{font:var(--type-body);font-size:var(--text-xs)}.meter{grid-template-columns:minmax(0,132px) minmax(0,1fr) 56px}.alert-card.is-clickable{cursor:pointer;display:flex;flex-direction:column;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.alert-card.is-clickable .ap-card__body{display:flex;flex-direction:column;flex:1}.alert-card.is-clickable:hover{border-color:var(--border-active);box-shadow:var(--shadow-md)}.alert-card.is-clickable:focus-visible{outline:none;box-shadow:var(--ring-focus)}.alert-card__more{display:inline-flex;align-items:center;gap:var(--space-1);margin-top:auto;padding-top:var(--space-4);font:var(--type-label);color:var(--text-link)}.alert-card.is-clickable:hover .alert-card__more{color:var(--text-link-hover)}.ap-overlay{grid-template-columns:minmax(0,1fr)}.ap-dialog{min-width:0;justify-self:center}.ap-dialog--scroll{display:flex;flex-direction:column;max-height:calc(100vh - 2 * var(--space-6))}.ap-dialog--scroll .ap-dialog__body{overflow:auto;flex:1;min-height:0;background:var(--surface-page);border-top:1px solid var(--border-default);margin-top:var(--space-4)}.ap-dialog__heading{min-width:0}.ap-dialog__actions{display:flex;align-items:center;gap:var(--space-2);flex:none}.analysis{display:flex;flex-direction:column;gap:var(--space-4)}.analysis__badges{display:flex;gap:var(--space-2);flex-wrap:wrap}.analysis__summary{display:flex;gap:var(--space-2);align-items:flex-start;margin:0;font:var(--type-body);color:var(--text-body)}.analysis__summary svg{flex:none;margin-top:2px;color:var(--danger-700)}.analysis__summary strong{color:var(--danger-700);font-weight:var(--weight-semibold)}.analysis__grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:start}.deviation{display:flex;flex-direction:column;gap:var(--space-3)}.deviation__row{display:grid;grid-template-columns:minmax(0,104px) minmax(0,1fr) 48px;grid-template-areas:"name track value" ". text text";align-items:center;column-gap:var(--space-3);row-gap:var(--space-1)}.deviation__name{grid-area:name;font:var(--type-label);font-size:var(--text-xs);color:var(--text-strong)}.deviation__track{grid-area:track;position:relative;height:10px;border-radius:var(--radius-full);background:var(--sp-border)}.deviation__fill{display:block;height:100%;border-radius:var(--radius-full);transition:width var(--dur-slow) var(--ease-out)}.deviation__mark{position:absolute;top:-3px;bottom:-3px;left:90%;width:2px;border-radius:1px;background:var(--text-strong);opacity:.35}.deviation__value{grid-area:value;font:500 var(--text-xs)/1 var(--font-mono);text-align:right;color:var(--text-strong)}.deviation__text{grid-area:text;font:var(--type-caption);color:var(--text-muted)}.deviation__text--bad{color:var(--danger-700)}.ids{grid-template-columns:minmax(0,148px) minmax(0,1fr)}.ids__value{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:var(--control-sm)}.ids__value span{min-width:0;overflow-wrap:anywhere}.ids__group{margin:var(--space-5) 0 var(--space-3)}.table tbody tr.is-current,.table tbody tr.is-current:hover{background:var(--danger-50)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ap-dialog__foot{flex-wrap:wrap;align-items:center}.report-download{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-right:auto}.report-download__label{font:var(--type-caption);color:var(--text-muted)}.report-download__select{width:auto;padding:0 var(--space-2)}.report-download__select select{font-family:var(--font-mono);font-size:var(--text-xs)}@media(max-width:640px){.ap-overlay{padding:var(--space-2)}.ap-dialog--scroll{max-height:calc(100vh - 2 * var(--space-2))}.ap-dialog__head{flex-direction:column}.deviation__row{grid-template-columns:minmax(0,80px) minmax(0,1fr) 40px}.ids{grid-template-columns:minmax(0,1fr)}}.arch{display:flex;flex-direction:column;gap:var(--space-3)}.arch__zones{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);align-items:stretch}.arch-zone{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-subtle)}.arch-zone--cloud{background:var(--surface-brand-subtle);border-color:var(--border-active)}.arch-zone__title{margin:0}.arch-zone__row{display:flex;align-items:stretch;gap:var(--space-2);flex:1}.arch-link{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.arch-link .arch-block{width:100%;flex:none}.arch-block{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-md)}.arch-block--warn{border-color:var(--warning-500)}.arch-block--bad{border-color:var(--danger-500)}.arch-block__head{display:flex;align-items:flex-start;gap:var(--space-2);flex-wrap:wrap}.arch-block__icon{flex:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);background:var(--surface-subtle);color:var(--sp-graphite)}.arch-block__titles{display:flex;flex-direction:column;flex:1;min-width:120px}.arch-block__name{font:var(--weight-semibold) var(--text-sm)/20px var(--font-display);color:var(--text-strong)}.arch-block__role{font:var(--type-caption);color:var(--text-muted)}.arch-block__metrics{display:grid;gap:var(--space-2);margin:0}.arch-metric dt{font:var(--type-caption);color:var(--text-muted)}.arch-metric dd{margin:0;font:var(--weight-medium) var(--text-sm)/20px var(--font-mono);color:var(--text-strong);overflow-wrap:anywhere}.arch-block__note{margin:auto 0 0;font:var(--type-caption);color:var(--text-muted)}.arch-flow{flex:none;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--space-2);color:var(--sp-graphite)}.arch-flow__label{font:var(--type-overline);letter-spacing:var(--tracking-caps)}.arch-flow__arrow{display:inline-flex}.arch-flow__icon--h{display:none}.arch-flow__detail{font:var(--weight-medium) 11px/14px var(--font-mono);color:var(--text-subtle);text-align:center}.arch-block--band{gap:var(--space-3)}.arch-block--band .arch-block__metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}.arch__note{display:flex;gap:var(--space-2);align-items:center;margin:0;font:var(--type-caption);color:var(--text-muted)}@media(min-width:721px){.arch-zone__row .arch-flow{flex-direction:column;gap:2px;min-width:64px}.arch-zone__row .arch-flow__icon--h{display:block}.arch-zone__row .arch-flow__icon--v{display:none}.arch-zone__row .arch-flow__detail{max-width:80px}}@media(max-width:720px){.arch-zone__row{flex-direction:column}}.share-group{display:flex;flex-direction:column;gap:var(--space-5)}.share{display:flex;flex-direction:column;gap:var(--space-2)}.share__head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-2)}.share__label{font:var(--type-label);color:var(--text-strong)}.share__total{font:var(--weight-semibold) var(--text-md)/1 var(--font-mono);color:var(--text-strong)}.share__bar{display:flex;height:12px;border-radius:var(--radius-full);overflow:hidden;background:var(--sp-border);gap:2px}.share__seg{display:block;height:100%;min-width:3px}.share__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:var(--space-1) var(--space-4)}.share__list li{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:var(--space-2);font:var(--type-caption);color:var(--text-body)}.share__value,.share__pct{font:var(--weight-medium) var(--text-xs)/1 var(--font-mono);color:var(--text-strong);text-align:right}.share__pct{color:var(--text-muted);min-width:48px}.gov-model{display:flex;flex-direction:column;gap:var(--space-4)}.gov-model .kv dd{font-size:var(--text-xs)}.gov-hash{font:var(--weight-regular) var(--text-xs)/18px var(--font-mono);overflow-wrap:anywhere;color:var(--text-body)}.gov-note{margin:0;font:var(--type-caption);color:var(--text-muted)}.gov-note--spaced{margin-top:var(--space-4)}.tags--wrap{flex-wrap:wrap;margin-top:var(--space-2)}.gov-steps{list-style:none;margin:var(--space-4) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.gov-step{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card)}.gov-step__icon{color:var(--sp-graphite);margin-top:1px}.gov-step--ok .gov-step__icon{color:var(--text-link)}.gov-step--bad{border-color:var(--danger-500);background:var(--danger-50)}.gov-step--bad .gov-step__icon{color:var(--danger-700)}.gov-step__title{margin:0 0 var(--space-1);font:var(--type-label);color:var(--text-strong)}.gov-step__body{font:var(--type-caption);color:var(--text-body)}.gov-step__body .mono{font-family:var(--font-mono)}.filter-bar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3);max-width:1440px;margin:0 auto var(--space-5);padding:var(--space-3) var(--space-4);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-md)}.filter-bar__icon{color:var(--sp-graphite);flex:none}.filter-bar__types{display:flex;gap:var(--space-1);flex-wrap:wrap}.filter-bar__field{display:inline-flex;align-items:center;gap:var(--space-2);font:var(--type-caption);color:var(--text-muted)}.filter-bar__field select{height:var(--control-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-card);font:var(--weight-regular) var(--text-xs)/1 var(--font-mono);color:var(--text-strong);max-width:220px}.filter-bar__field select:focus-visible{outline:none;box-shadow:var(--ring-focus);border-color:var(--border-brand)}.chip{display:inline-flex;align-items:center;gap:var(--space-1);height:28px;padding:0 var(--space-3);border-radius:var(--radius-full);border:1px solid var(--border-strong);background:var(--surface-card);font:var(--weight-medium) var(--text-xs)/1 var(--font-mono);color:var(--text-body);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.chip:hover{background:var(--surface-hover)}.chip[aria-pressed=true]{background:var(--surface-brand-subtle);border-color:var(--border-active);color:var(--green-800)}.chip:focus-visible{outline:none;box-shadow:var(--ring-focus)}.card-actions{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.cell-note{font:var(--type-caption);color:var(--text-subtle)}.plain-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);font:var(--type-body)}.notice--warning{background:var(--warning-50);color:var(--warning-700)}.ident{display:inline-flex;flex-direction:column;font-family:var(--font-mono)}.ident__hash{font:var(--type-caption);font-family:var(--font-mono);color:var(--text-subtle)}.table tbody tr.is-muted td{color:var(--text-subtle)}.table tbody tr.is-active td{color:var(--text-strong)}.table tfoot td{font:var(--weight-semibold) var(--text-xs)/1.4 var(--font-mono);color:var(--text-strong);border-top:1px solid var(--border-strong);padding-top:var(--space-2)}.breakdown-check{margin:var(--space-3) 0 0;font:var(--type-caption)}.breakdown-check--ok{color:var(--text-link)}.breakdown-check--bad{color:var(--danger-700)}.meter--wide{grid-template-columns:minmax(0,220px) minmax(0,1fr) 64px}.meter--button{width:100%;padding:var(--space-1) var(--space-2);margin:0 calc(-1 * var(--space-2));border:0;border-radius:var(--radius-sm);background:none;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.meter--button:hover,.meter--button[aria-pressed=true]{background:var(--surface-hover)}.meter--button:focus-visible{outline:none;box-shadow:var(--ring-focus)}.gov-kv{margin-top:var(--space-4)}@media(max-width:640px){.meter--wide{grid-template-columns:minmax(0,120px) minmax(0,1fr) 48px}}.panel-date{flex:none}.panel-date input,.panel-date select{height:var(--control-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-card);font:var(--weight-regular) var(--text-xs)/1 var(--font-mono);color:var(--text-strong)}.panel-date input:focus-visible,.panel-date select:focus-visible{outline:none;box-shadow:var(--ring-focus);border-color:var(--border-brand)}.panel-kpis .kpi__value{font-size:var(--text-2xl)}.panel-kpis .kpi__value--sm{font-size:var(--text-lg)}.panel-stack{display:flex;flex-direction:column;gap:var(--space-4)}.kpi__value--text{font:var(--weight-semibold) var(--text-lg)/var(--lh-lg) var(--font-display);letter-spacing:var(--tracking-heading);overflow-wrap:normal;word-break:normal}.panel-kpis .kpi__value--text{font-size:var(--text-lg)}.panel-section{padding-top:var(--space-6);border-top:1px solid var(--border-default)}.panel-title{font:var(--type-h3);letter-spacing:var(--tracking-heading)}.panel-gap{margin-top:var(--space-5)}.panel-row{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-1) 0;border-bottom:1px solid var(--border-default)}.panel-row:last-child{border-bottom:0}.share__label--block{display:block;margin:0 0 var(--space-2)}.meter--money{grid-template-columns:minmax(0,180px) minmax(0,1fr) 112px}.funnel{display:flex;flex-direction:column;gap:var(--space-4)}.funnel__row{display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr) 72px;grid-template-areas:"label track value" ". rate rate";align-items:center;column-gap:var(--space-3);row-gap:2px}.funnel__label{grid-area:label;font:var(--type-body);color:var(--text-body)}.funnel__track{grid-area:track;height:16px;border-radius:var(--radius-full);background:var(--surface-subtle);overflow:hidden}.funnel__fill{display:block;height:100%;border-radius:var(--radius-full)}.funnel__value{grid-area:value;font:var(--weight-semibold) var(--text-md)/1 var(--font-mono);color:var(--text-strong);text-align:right}.funnel__rate{grid-area:rate;font:var(--type-caption);color:var(--text-muted)}@media(max-width:640px){.funnel__row{grid-template-columns:minmax(0,1fr) 64px;grid-template-areas:"label value" "track track" "rate rate"}.meter--money{grid-template-columns:minmax(0,110px) minmax(0,1fr) 96px}}.share__label--block.panel-gap{margin-top:var(--space-5)}.chart--scatter{height:420px}.scatter-subject{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.scatter-subject__input{height:var(--control-sm);min-width:280px;padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-card);font:var(--weight-regular) var(--text-xs)/1 var(--font-mono);color:var(--text-strong)}.scatter-subject__input:focus-visible{outline:none;box-shadow:var(--ring-focus);border-color:var(--border-brand)}@media(max-width:640px){.chart--scatter{height:320px}.scatter-subject__input{min-width:0;width:100%}}.arch-stack{display:flex;flex-direction:column;gap:var(--space-2);flex:1 1 0;min-width:0}.arch-stack .arch-block{flex:none}.arch-block--planned{border-style:dashed;border-color:var(--border-strong);background:var(--surface-subtle)}.arch-block--planned .arch-block__icon{background:var(--surface-card)}.arch-block--planned .arch-metric dd{font:var(--type-body);color:var(--text-muted)}.arch-standby{display:flex;align-items:center;justify-content:center;gap:var(--space-1);font:var(--type-caption);color:var(--text-muted)}.scatter-toggles{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.scatter-toggles__dot{width:8px;height:8px;border-radius:var(--radius-full);flex:none}.chip[aria-pressed=false]{color:var(--text-muted);border-style:dashed}.chip[aria-pressed=false] .scatter-toggles__dot{opacity:.3}.scatter-toggles .chip[aria-pressed=true]{background:var(--surface-card);border-color:var(--border-strong);color:var(--text-strong)}.arch-block--down{border-color:var(--danger-500)}.arch-block--down .arch-block__note{color:var(--danger-700)}@media(min-width:721px){.arch-zone__row:has(>.arch-stack){display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch}.arch-zone__row>.arch-stack{display:contents}.arch-zone__row>.arch-stack>:nth-child(1){grid-area:1 / 1}.arch-zone__row>.arch-stack>:nth-child(2){grid-area:2 / 1}.arch-zone__row>.arch-stack>:nth-child(3){grid-area:3 / 1}.arch-zone__row:has(>.arch-stack)>.arch-flow{grid-area:1 / 2}.arch-zone__row:has(>.arch-stack)>.arch-block{grid-area:1 / 3}}.shadow-alert{max-width:1440px;margin:0 auto var(--space-4);align-items:center;font-weight:var(--weight-semibold)}.alerts,.alerts__trigger{position:relative}.alerts__badge{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;border-radius:var(--radius-full);background:var(--danger);color:var(--surface-card);font:var(--weight-semibold) 10px/16px var(--font-mono);text-align:center}.alerts__panel{position:absolute;top:calc(100% + var(--space-2));right:0;z-index:40;width:360px;max-width:calc(100vw - 32px);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden}.alerts__head{display:flex;align-items:baseline;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-default)}.alerts__title{font:600 var(--text-sm)/1.2 var(--font-display);color:var(--text-strong)}.alerts__count{font:var(--type-caption);font-family:var(--font-mono);color:var(--text-muted)}.alerts__list{list-style:none;margin:0;padding:var(--space-1) 0;max-height:420px;overflow-y:auto}.alerts__item{display:flex;align-items:flex-start;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:none;border:0;text-align:left;cursor:pointer;color:var(--text-body)}.alerts__item:hover{background:var(--surface-hover)}.alerts__item:focus-visible{outline:none;box-shadow:inset var(--ring-focus)}.alerts__item svg{flex:none;margin-top:2px}.alerts__item--danger>svg:first-child{color:var(--danger)}.alerts__item--warning>svg:first-child{color:var(--warning)}.alerts__item--info>svg:first-child{color:var(--info)}.alerts__text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.alerts__item-title{font:var(--weight-semibold) var(--text-sm)/1.3 var(--font-body);color:var(--text-strong)}.alerts__item-detail{font:var(--type-caption);color:var(--text-muted)}.alerts__go{color:var(--text-subtle);align-self:center}.alerts__empty{padding:var(--space-4);font:var(--type-caption);color:var(--text-muted)}.print-only{display:none}@media print{@page{size:A4;margin:12mm}html.print-dialog,html.print-dialog body{background:var(--surface-card);overflow:visible!important;height:auto}html.print-dialog #root{display:none}html.print-dialog .ap-overlay{position:static;display:block;padding:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;animation:none}html.print-dialog .ap-dialog{width:980px!important;max-width:none!important;zoom:.71;margin:0;justify-self:start;max-height:none;box-shadow:none;border-radius:0;overflow:visible;animation:none}html.print-dialog .ap-dialog--scroll .ap-dialog__body{overflow:visible;background:var(--surface-card)}html.print-dialog .ap-dialog__foot,html.print-dialog .ap-dialog__actions .ap-iconbtn{display:none}html.print-dialog .ap-card,html.print-dialog .card,html.print-dialog tr{break-inside:avoid}html.print-dialog .print-only{display:block}html.print-dialog *{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.print-stamp{margin:0;font:var(--type-caption);font-family:var(--font-mono);color:var(--text-muted)}.chart--sankey{height:380px}
