:root{color-scheme:light;--font:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--plane:#eef1f5;--surface:#fff;--surface-2:#f4f6f9;--text-primary:#161a22;--text-secondary:#3f4856;--text-muted:#5b6472;--grid:#e3e8ef;--axis:#b6c0cf;--border:rgba(22,26,34,.1);--map-fill:#e3e9f1;--map-line:#b8c4d4;--accent:#0b7ea5;--accent-soft:#e6f2f8;--shadow:0 1px 2px rgba(16,24,40,.05),0 4px 12px rgba(16,24,40,.06);--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#c78a00;--series-5:#c75480;--good:#15803d;--warning:#b45309;--serious:#c2410c;--critical:#b91c1c;--radius:12px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--plane:#0e1117;--surface:#171b23;--surface-2:#1d222c;--text-primary:#eef2f7;--text-secondary:#b8c2cf;--text-muted:#8b96a6;--grid:#262c37;--axis:#3a4350;--border:hsla(0,0%,100%,.09);--map-fill:#1c2330;--map-line:#364150;--accent:#38bdf8;--accent-soft:#0e2a3a;--shadow:0 1px 2px rgba(0,0,0,.3),0 6px 16px rgba(0,0,0,.3);--series-1:#4a90e2;--series-2:#f07b45;--series-3:#22c48b;--series-4:#e0a800;--series-5:#e87ba4}}:root[data-theme=dark]{color-scheme:dark;--plane:#0e1117;--surface:#171b23;--surface-2:#1d222c;--text-primary:#eef2f7;--text-secondary:#b8c2cf;--text-muted:#8b96a6;--grid:#262c37;--axis:#3a4350;--border:hsla(0,0%,100%,.09);--map-fill:#1c2330;--map-line:#364150;--accent:#38bdf8;--accent-soft:#0e2a3a;--shadow:0 1px 2px rgba(0,0,0,.3),0 6px 16px rgba(0,0,0,.3);--series-1:#4a90e2;--series-2:#f07b45;--series-3:#22c48b;--series-4:#e0a800;--series-5:#e87ba4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--text-primary);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;background:var(--plane)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.wrap{max-width:1160px;margin:0 auto;padding:0 24px 80px}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:18px;padding:12px 0;margin-bottom:4px;background:var(--plane);border-bottom:1px solid var(--border)}.brand{font-size:16px;font-weight:700;letter-spacing:-.01em}.brand b{color:var(--accent)}.navlinks{display:flex;gap:2px;flex:1 1}.navlinks a{color:var(--text-secondary);text-decoration:none;font-size:14px;padding:6px 10px;border-radius:8px;transition:color .15s,background .15s}.navlinks a:hover{color:var(--text-primary);background:var(--surface-2)}.navright{display:flex;align-items:center;gap:10px}.chip{font-size:12.5px;color:var(--text-secondary);border:1px solid var(--border);border-radius:999px;padding:4px 11px;white-space:nowrap}.chip,button.toggle{background:var(--surface)}button.toggle{font:inherit;font-size:13px;cursor:pointer;color:var(--text-primary);border:1px solid var(--border);border-radius:8px;padding:6px 12px;transition:border-color .15s}button.toggle:hover{border-color:var(--accent)}.hero{padding:48px 0 24px}.hero h1{margin:0 0 14px;font-size:clamp(30px,4.5vw,46px);line-height:1.15;letter-spacing:-.025em;text-wrap:balance;font-weight:700}.hero h1 em{font-style:normal;color:var(--accent)}.hero .sub{margin:0 0 18px;color:var(--text-secondary);font-size:15.5px}.badges{display:flex;gap:8px;flex-wrap:wrap}.badge{font-size:12.5px;font-weight:600;padding:5px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary)}.badge.bz{background:#f5e6d3;color:#8a5a1f}.badge.bz,.badge.si{border-color:transparent}.badge.si{background:var(--surface-2);color:var(--text-secondary)}.badge.go{background:#fbeecb;color:#8a6400;border-color:transparent}.archstrip{gap:6px;flex-wrap:wrap;margin:6px 0 10px}.archstep,.archstrip{display:flex;align-items:center}.archstep{gap:10px;padding:9px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.archbadge{font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--accent);padding:2px 7px;border-radius:6px;background:var(--accent-soft)}.archname{font-size:13px;font-weight:600}.archnote{font-size:12px;color:var(--text-muted)}.archarrow{color:var(--axis);font-size:16px}.nowstrip{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.nowcard{width:100%;text-align:left;font:inherit;position:relative;overflow:hidden;border-radius:var(--radius);padding:16px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);cursor:pointer;transition:border-color .15s,box-shadow .15s}.nowcard:hover{border-color:var(--axis)}.nowcard .top{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:13px}.nowcard .ntemp{font-size:32px;font-weight:700;letter-spacing:-.02em;margin:6px 0 2px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.nowcard .nnote{font-size:12.5px;color:var(--text-muted)}.nowcard .nspark{margin:10px 0 0}.kpis{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}.kpi .klabel{font-size:13px;color:var(--text-secondary);font-weight:600}.kpi .kvalue{font-size:30px;font-weight:700;letter-spacing:-.02em;margin:4px 0 2px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi .kunit{font-size:15px;font-weight:500;color:var(--text-secondary);margin-left:3px}.kpi .knote{font-size:12.5px;color:var(--text-muted)}.controls{gap:14px;align-items:center;padding:12px 0;margin:24px 0;border-bottom:1px solid var(--border)}.controlgroup,.controls{display:flex;flex-wrap:wrap}.controlgroup{gap:6px}.chipbtn{font:inherit;font-size:13px;cursor:pointer;padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);transition:color .15s,border-color .15s,background .15s;white-space:nowrap}.chipbtn:hover{border-color:var(--axis)}.chipbtn.on{color:var(--text-primary);border-color:var(--accent);font-weight:600;background:var(--accent-soft)}.chipbtn.dot{display:inline-flex;align-items:center;gap:7px}.chipbtn.ghost{background:transparent}.dot{width:9px;height:9px;border-radius:50%;flex:none}section{margin-top:56px;scroll-margin-top:80px}section h2{font-size:22px;margin:0 0 6px;letter-spacing:-.02em;text-wrap:balance;font-weight:700}blockquote{margin:8px 0 16px;font-size:15px;font-style:italic}.sectionlead,blockquote{color:var(--text-secondary)}.sectionlead{margin:6px 0 16px;font-size:14.5px}.duo{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.mapduo{grid-template-columns:minmax(0,5fr) minmax(0,4fr)}.maplist{display:flex;flex-direction:column;gap:4px}.maplist .row{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid transparent;border-radius:10px;background:transparent;cursor:pointer;font:inherit;color:var(--text-primary);text-align:left;transition:background .15s}.maplist .row:hover{background:var(--surface-2)}.maplist .row.on{border-color:var(--accent);background:var(--accent-soft)}.swatch{width:11px;height:11px;border-radius:3px;flex:none}.cname{flex:1 1;font-weight:600}.cval{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-secondary)}.maplist.scroll{max-height:460px;overflow-y:auto}.search{width:100%;font:inherit;font-size:14px;color:var(--text-primary);background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:8px 12px;margin-bottom:10px}.search:focus{outline:none;border-color:var(--accent)}.picker{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.picker select{font:inherit;font-size:13px;color:var(--text-primary);border:1px solid var(--border);border-radius:8px;padding:6px 10px;max-width:260px}.picker select,.seg{background:var(--surface)}.seg{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--border);border-radius:10px;margin-bottom:12px}.segbtn{font:inherit;font-size:13px;cursor:pointer;padding:6px 15px;border:none;border-radius:7px;background:transparent;color:var(--text-secondary);transition:background .15s,color .15s}.segbtn.on{color:var(--text-primary);font-weight:600}.segbtn.on,.takeaway{background:var(--accent-soft)}.takeaway{margin:14px 0 0;padding:13px 16px;border-radius:10px;color:var(--text-secondary);font-size:14.5px;line-height:1.6}.takeaway:before{content:"Lecture · ";color:var(--accent);font-weight:700}.extgrid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.evlist{flex-direction:column}.ev,.evlist{display:flex;gap:12px}.ev{align-items:flex-start}.evbody{flex:1 1;font-size:14px}.evdetail{color:var(--text-muted);font-size:12.5px;margin-top:3px}.status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;background:color-mix(in srgb,currentColor 12%,transparent)}.status .dot{width:8px;height:8px}.bulletin{color:var(--text-secondary);font-size:15px;line-height:1.7}.bulletintext{white-space:pre-wrap}.aitag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.03em;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:3px 10px;margin-bottom:10px}.empty{color:var(--text-secondary);font-size:14px;text-align:center;padding:30px 18px}.empty code{background:var(--plane);border:1px solid var(--border);border-radius:6px;padding:2px 6px;font-size:13px}footer{margin-top:56px;padding-top:20px;border-top:1px solid var(--border);color:var(--text-muted);font-size:12.5px}footer code{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:1px 6px}.fmuted{margin:6px 0 0}@media (max-width:820px){.mapduo{grid-template-columns:1fr}.navlinks{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}