:root{color-scheme:light;--bg: #f6f4ef;--surface-1: #ffffff;--surface-2: #f3f1ea;--border: #e7e3d8;--text-primary: #1c1a17;--text-secondary: #56534c;--text-muted: #8b877d;--series-1: #2a78d6;--series-1-weak: #dcebfb;--track: #ece8de;--grid: #efece3;--good: #1f7a34;--good-bg: #e4f2e6;--warn: #9a6b00;--warn-bg: #f6ecd6;--shadow: 0 1px 2px rgba(28, 26, 23, .04), 0 8px 24px rgba(28, 26, 23, .06);font-family:ui-rounded,SF Pro Rounded,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text-primary);background:var(--bg);line-height:1.5}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--bg: #171614;--surface-1: #211f1c;--surface-2: #2a2825;--border: #35322d;--text-primary: #f7f4ee;--text-secondary: #c8c3b8;--text-muted: #928d81;--series-1: #4d95e8;--series-1-weak: #16324f;--track: #302d29;--grid: #2a2825;--good: #63b972;--good-bg: #1a2f1e;--warn: #d0a24e;--warn-bg: #322a17;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 10px 30px rgba(0, 0, 0, .35)}}*{box-sizing:border-box}body{margin:0}a{color:inherit}.app{max-width:980px;margin:0 auto;padding:32px 20px 80px}.app-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 20px;margin-bottom:8px}.app-head h1{font-size:1.7rem;margin:0;letter-spacing:-.01em}.app-head .sub{color:var(--text-muted);font-size:.9rem;margin-top:2px}.toolbar{display:flex;align-items:center;gap:10px}button.btn{font:inherit;font-size:.9rem;font-weight:600;padding:8px 16px;border-radius:999px;border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow)}button.btn:hover{background:var(--surface-2)}button.btn:disabled{opacity:.55;cursor:default;box-shadow:none}.lead{max-width:62ch;color:var(--text-secondary);font-size:1rem;margin:6px 0 4px}section{margin-top:40px}section>h2{font-size:1.2rem;margin:0 0 4px;letter-spacing:-.01em}.section-hint{color:var(--text-muted);font-size:.9rem;margin:0 0 16px;max-width:60ch}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:18px;padding:20px;box-shadow:var(--shadow)}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.tile{background:var(--surface-1);border:1px solid var(--border);border-radius:18px;padding:18px 20px;box-shadow:var(--shadow)}.tile .label{font-size:.9rem;color:var(--text-secondary);font-weight:600}.tile .value{font-size:2.2rem;font-weight:800;margin-top:6px;line-height:1.1;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.tile .note{font-size:.86rem;color:var(--text-muted);margin-top:6px}.funnel{display:flex;flex-direction:column;gap:16px}.funnel-row{display:grid;grid-template-columns:1fr;gap:6px}.funnel-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:.95rem}.funnel-line .who{font-weight:600}.funnel-line .num{font-variant-numeric:tabular-nums;color:var(--text-secondary);white-space:nowrap}.funnel-track{display:block;height:28px;background:var(--track);border-radius:8px;overflow:hidden}.funnel-fill{display:block;height:100%;background:var(--series-1);border-radius:8px;min-width:4px}.chart{width:100%;height:auto;display:block}.chart .grid-line{stroke:var(--grid);stroke-width:1}.chart .axis-text{fill:var(--text-muted);font-size:11px;font-family:system-ui,sans-serif}.chart .area{fill:var(--series-1);fill-opacity:.16}.chart .line{fill:none;stroke:var(--series-1);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.chart .crosshair{stroke:var(--text-muted);stroke-width:1;stroke-dasharray:3 3}.chart .dot{fill:var(--surface-1);stroke:var(--series-1);stroke-width:2.5}.chart-wrap{position:relative}.chart-tooltip{position:absolute;pointer-events:none;background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:7px 11px;font-size:.85rem;white-space:nowrap;transform:translate(-50%,-118%);box-shadow:var(--shadow)}.peak-note{margin:12px 2px 0;font-size:.9rem;color:var(--text-secondary)}.stand-list{display:flex;flex-direction:column;gap:10px}a.stand-item{display:grid;grid-template-columns:26px 1fr auto 16px;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--border);border-radius:16px;background:var(--surface-1);text-decoration:none;box-shadow:var(--shadow);transition:transform .08s ease,background .12s ease}a.stand-item:hover{background:var(--surface-2);transform:translateY(-1px)}.stand-item .rank{font-size:1rem;font-weight:800;color:var(--text-muted);text-align:center}.stand-item .body{min-width:0}.stand-item .name{font-weight:700;font-size:1rem}.stand-item .bar-track{display:block;margin-top:8px;height:10px;background:var(--track);border-radius:6px;overflow:hidden}.stand-item .bar-fill{display:block;height:100%;background:var(--series-1);border-radius:6px;min-width:3px}.stand-item .metric{text-align:right;white-space:nowrap}.stand-item .metric .big{font-size:1.25rem;font-weight:800;font-variant-numeric:tabular-nums}.stand-item .metric .sub{font-size:.82rem;color:var(--text-muted)}.stand-item .chevron{color:var(--text-muted);font-size:1.4rem;line-height:1}.pill{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;font-weight:700;padding:3px 10px;border-radius:999px}.pill.mandatory{color:var(--series-1);background:var(--series-1-weak)}.pill.good{color:var(--good);background:var(--good-bg)}.pill.pending{color:var(--text-secondary);background:var(--surface-2)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--border)}th{font-size:.8rem;color:var(--text-muted);font-weight:600}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--surface-2)}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.filters button{font:inherit;font-size:.88rem;font-weight:600;padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface-1);color:var(--text-secondary);cursor:pointer}.filters button[aria-pressed=true]{background:var(--series-1);border-color:var(--series-1);color:#fff}.back-link{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:.92rem;color:var(--text-secondary);text-decoration:none;margin-bottom:18px}.back-link:hover{color:var(--text-primary)}.detail-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:6px}.detail-head h1{font-size:1.7rem;margin:0;letter-spacing:-.01em}.state{padding:48px 16px;text-align:center;color:var(--text-secondary);font-size:1rem}.state.error{color:#b3261e}.muted{color:var(--text-muted)}
