@font-face{font-family:PlusJakarta;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/plus-jakarta-variable.woff2) format("woff2")}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-variable.woff2) format("woff2")}:root{--font-scale: 1;--shield: #5479f7;--shield-ink: #ffffff}:root,:root[data-theme=dark]{color-scheme:dark;--bg: #05070a;--panel: #0b0f15;--rail: #070a0e;--raised: #0e1319;--surface-2: #151b24;--surface-3: #1c232f;--surface-tinted: #0c1118;--surface-active: rgba(52, 226, 130, .12);--surface-active-strong: rgba(52, 226, 130, .2);--surface-info: #0d1a2a;--border: #1b232e;--border-soft: #161d27;--border-info: #1d3b52;--border-2: #25303d;--scrollbar: #232d3a;--scrollbar-hover: #34414f;--text: #e7f1ea;--text-strong: #f3f8f4;--muted: #9aa6b2;--dim: #5c6671;--soc-ink-2: #c4d0db;--on-mint: #04140b;--mint: #34e282;--primary: #34e282;--primary-hover: #4bf096;--primary-soft: #5cf0a6;--sky: #22d3a8;--indigo: #818cf8;--accent-green: #34e282;--accent-blue: #38bdf8;--accent-purple: #a78bfa;--team-red: #ef4444;--brand-gradient: linear-gradient(135deg, #34e282 0%, #22d3a8 55%, #38bdf8 100%);--gradient-gb: linear-gradient(90deg, #34e282 0%, #22d3a8 50%, #38bdf8 100%);--brand-ink: #04140b;--success: #34e282;--warn: #fb923c;--danger: #f87171;--crit: #f87171;--high: #fb923c;--med: #facc15;--low: #60a5fa;--info: #9ca3af;--font-ui: "PlusJakarta", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--mono: var(--font-mono);--font-size-base: 14px;--fs-2xs: 9px;--fs-xs: 10px;--fs-sm: 11px;--fs-base: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 26px;--fs-stat: 2.2rem;--fs-label: .7rem;--fw-normal: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-black: 800;--lh-tight: 1.2;--lh-snug: 1.35;--lh-normal: 1.5;--lh-relaxed: 1.65;--ls-tight: -.02em;--ls-heading: -.01em;--ls-label: .06em;--ls-wide: .12em;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--t-fast: .15s;--t-med: .25s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--transition: all var(--t-fast) var(--ease-smooth);--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 16px;--r-pill: 999px;--shadow-xs: 0 1px 2px rgba(0,0,0,.4);--shadow-sm: 0 1px 3px rgba(0,0,0,.5), 0 1px 2px rgba(0,0,0,.4);--shadow-md: 0 4px 12px rgba(0,0,0,.55), 0 2px 4px rgba(0,0,0,.4);--shadow-lift: 0 8px 24px rgba(0,0,0,.6), 0 3px 8px rgba(0,0,0,.45);--shadow-card: var(--shadow-sm);--shadow-modal: 0 16px 48px rgba(0,0,0,.65);--ring: 0 0 0 3px rgba(52, 226, 130, .22)}:root[data-theme=light]{color-scheme:light;--bg: #f6f8fb;--panel: #ffffff;--rail: #ffffff;--raised: #ffffff;--surface-2: #f1f5f9;--surface-3: #e7edf5;--surface-tinted: #f8fafc;--surface-active: rgba(37, 99, 235, .08);--surface-active-strong: rgba(37, 99, 235, .14);--surface-info: #eff6ff;--border: #e2e8f0;--border-soft: #eef0f4;--border-info: #bfdbfe;--border-2: #d4dde8;--scrollbar: #cbd5e1;--scrollbar-hover: #94a3b8;--text: #0f172a;--text-strong: #0f172a;--muted: #475569;--dim: #94a3b8;--soc-ink-2: #334155;--on-mint: #ffffff;--mint: #2563eb;--primary: #2563eb;--primary-hover: #1d4ed8;--primary-soft: #3b82f6;--sky: #0ea5e9;--indigo: #4f46e5;--accent-green: #10b981;--accent-blue: #2563eb;--accent-purple: #7c3aed;--team-red: #dc2626;--brand-gradient: linear-gradient(135deg, #10b981 0%, #22c55e 45%, #3b82f6 100%);--gradient-gb: linear-gradient(90deg, #10b981 0%, #22c55e 45%, #3b82f6 100%);--brand-ink: #ffffff;--success: #10b981;--warn: #f59e0b;--danger: #ef4444;--shadow-xs: 0 1px 2px rgba(16,24,40,.04);--shadow-sm: 0 1px 3px rgba(16,24,40,.06), 0 1px 2px rgba(16,24,40,.04);--shadow-md: 0 4px 12px rgba(16,24,40,.08), 0 2px 4px rgba(16,24,40,.04);--shadow-lift: 0 8px 24px rgba(16,24,40,.1), 0 3px 8px rgba(16,24,40,.06);--shadow-card: var(--shadow-sm);--shadow-modal: 0 24px 48px rgba(15,23,42,.14), 0 6px 12px rgba(15,23,42,.07);--ring: 0 0 0 3px rgba(37, 99, 235, .15)}@media (prefers-color-scheme: light){:root:not([data-theme]){color-scheme:light;--bg: #f6f8fb;--panel: #ffffff;--rail: #ffffff;--raised: #ffffff;--surface-2: #f1f5f9;--surface-3: #e7edf5;--surface-tinted: #f8fafc;--surface-active: rgba(37, 99, 235, .08);--surface-active-strong: rgba(37, 99, 235, .14);--surface-info: #eff6ff;--border: #e2e8f0;--border-soft: #eef0f4;--border-info: #bfdbfe;--border-2: #d4dde8;--scrollbar: #cbd5e1;--scrollbar-hover: #94a3b8;--text: #0f172a;--text-strong: #0f172a;--muted: #475569;--dim: #94a3b8;--soc-ink-2: #334155;--mint: #2563eb;--primary: #2563eb;--primary-hover: #1d4ed8;--primary-soft: #3b82f6;--sky: #0ea5e9;--indigo: #4f46e5;--accent-green: #10b981;--accent-blue: #2563eb;--accent-purple: #7c3aed;--team-red: #dc2626;--brand-gradient: linear-gradient(135deg, #10b981 0%, #22c55e 45%, #3b82f6 100%);--gradient-gb: linear-gradient(90deg, #10b981 0%, #22c55e 45%, #3b82f6 100%);--brand-ink: #ffffff;--success: #10b981;--warn: #f59e0b;--danger: #ef4444;--shadow-xs: 0 1px 2px rgba(16,24,40,.04);--shadow-sm: 0 1px 3px rgba(16,24,40,.06), 0 1px 2px rgba(16,24,40,.04);--shadow-md: 0 4px 12px rgba(16,24,40,.08), 0 2px 4px rgba(16,24,40,.04);--shadow-lift: 0 8px 24px rgba(16,24,40,.1), 0 3px 8px rgba(16,24,40,.06);--shadow-card: var(--shadow-sm);--shadow-modal: 0 24px 48px rgba(15,23,42,.14), 0 6px 12px rgba(15,23,42,.07);--ring: 0 0 0 3px rgba(37, 99, 235, .15)}}.glow-c{filter:drop-shadow(0 0 8px rgba(248,113,113,.7))}.glow-h{filter:drop-shadow(0 0 6px rgba(251,146,60,.6))}.glow-m{filter:drop-shadow(0 0 5px rgba(250,204,21,.5))}.glow-ok{filter:drop-shadow(0 0 6px rgba(52,226,130,.5))}.glow-target{filter:drop-shadow(0 0 14px rgba(52,226,130,.8))}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}html{font-size:calc(16px * var(--font-scale))}body{font-family:var(--font-ui);font-size:calc(var(--font-size-base) * var(--font-scale));line-height:var(--lh-normal);letter-spacing:-.006em;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}input,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}code,.mono{font-family:var(--font-mono)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:var(--r-pill);border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover);background-clip:padding-box}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar) transparent}:focus-visible{outline:2px solid var(--mint);outline-offset:2px;border-radius:var(--r-sm)}.hidden{display:none!important}.card,.surface-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:var(--sp-5)}.card--pad-lg{padding:var(--sp-6)}.card--interactive{cursor:pointer;transition:transform var(--t-fast) var(--ease-smooth),box-shadow var(--t-fast) var(--ease-smooth),border-color var(--t-fast) var(--ease-smooth)}.card--interactive:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift);border-color:var(--border-2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);padding:8px 14px;border-radius:var(--r-sm);font-size:var(--fs-base);font-weight:var(--fw-semibold);letter-spacing:-.005em;border:1px solid transparent;cursor:pointer;transition:background var(--t-fast) var(--ease-smooth),color var(--t-fast) var(--ease-smooth),border-color var(--t-fast) var(--ease-smooth),box-shadow var(--t-fast) var(--ease-smooth),transform var(--t-fast) var(--ease-smooth)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--on-mint);box-shadow:var(--shadow-xs)}.btn-primary:not(:disabled):hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-secondary{background:var(--surface-2);color:var(--text);border-color:var(--border)}.btn-secondary:not(:disabled):hover{background:var(--surface-3);border-color:var(--border-2)}.btn-ghost{background:transparent;color:var(--muted)}.btn-ghost:not(:disabled):hover{background:var(--surface-2);color:var(--text)}.field{width:100%;padding:9px 12px;border-radius:var(--r-sm);background:var(--panel);border:1px solid var(--border);color:var(--text);font-size:var(--fs-base);transition:border-color var(--t-fast) var(--ease-smooth),box-shadow var(--t-fast) var(--ease-smooth)}.field::placeholder{color:var(--dim)}.field:focus,.field:focus-visible{outline:none;border-color:var(--primary);box-shadow:var(--ring)}textarea.field{resize:vertical}.badge{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-sm);font-weight:var(--fw-semibold);letter-spacing:var(--ls-label);padding:3px 10px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--muted)}.badge-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.badge-primary{background:var(--surface-active);color:var(--primary)}.badge-blue{background:color-mix(in srgb,var(--accent-blue) 14%,transparent);color:var(--accent-blue)}.badge-green{background:color-mix(in srgb,var(--accent-green) 16%,transparent);color:var(--accent-green)}.badge-purple{background:color-mix(in srgb,var(--accent-purple) 16%,transparent);color:var(--accent-purple)}.badge-success{background:color-mix(in srgb,var(--success) 16%,transparent);color:var(--success)}.badge-warn{background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn)}.badge-danger{background:color-mix(in srgb,var(--danger) 16%,transparent);color:var(--danger)}.switch{position:relative;display:inline-block;width:38px;height:22px;flex:none}.switch input{position:absolute;opacity:0;width:0;height:0}.switch-track{position:absolute;inset:0;border-radius:var(--r-pill);background:var(--surface-3);border:1px solid var(--border);transition:background var(--t-fast) var(--ease-smooth),border-color var(--t-fast) var(--ease-smooth)}.switch-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:var(--shadow-xs);transition:transform var(--t-fast) var(--ease-smooth)}.switch input:checked+.switch-track{background:var(--primary);border-color:var(--primary)}.switch input:checked+.switch-track:after{transform:translate(16px)}.switch input:focus-visible+.switch-track{box-shadow:var(--ring)}.menu{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-md);padding:var(--sp-1)}.menu-item{display:flex;align-items:center;gap:var(--sp-2);width:100%;text-align:left;padding:8px 10px;border-radius:var(--r-sm);font-size:var(--fs-base);color:var(--text);transition:background var(--t-fast) var(--ease-smooth),color var(--t-fast) var(--ease-smooth)}.menu-item:hover{background:var(--surface-2)}.menu-item.active{background:var(--surface-active);color:var(--primary)}.tab{padding:10px 16px;font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--muted);border-bottom:2px solid transparent;transition:color var(--t-fast) var(--ease-smooth),border-color var(--t-fast) var(--ease-smooth)}.tab:hover{color:var(--text)}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.divider{height:1px;background:var(--border);border:0;margin:var(--sp-3) 0}.stat-num{font-size:var(--fs-stat);font-weight:var(--fw-bold);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);color:var(--text-strong)}.stat-label{font-size:var(--fs-label);font-weight:var(--fw-semibold);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--dim)}.summary-bar{height:11px;border-radius:var(--r-pill);background:var(--surface-3);overflow:hidden;display:flex}.summary-bar--gradient{background:var(--gradient-gb)}.summary-bar>.summary-seg{height:100%}.summary-seg-green{background:var(--accent-green)}.summary-seg-teal{background:color-mix(in srgb,var(--accent-green) 50%,var(--accent-blue))}.summary-seg-blue{background:var(--accent-blue)}.summary-seg-purple{background:var(--accent-purple)}.summary-legend{display:flex;flex-wrap:wrap;gap:var(--sp-4);margin-top:var(--sp-3)}.summary-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-sm);color:var(--muted)}.summary-legend-dot{width:8px;height:8px;border-radius:50%;flex:none}.summary-legend-pct{color:var(--text-strong);font-weight:var(--fw-semibold)}.progress{height:6px;border-radius:var(--r-pill);background:var(--surface-3);overflow:hidden}.progress>.progress-fill{height:100%;background:var(--gradient-gb);border-radius:var(--r-pill);transition:width var(--t-med) var(--ease-smooth)}.timeline-track{position:relative;width:3px;border-radius:var(--r-pill);background:var(--gradient-gb)}
