:root{--bg: #eef1f3;--surface: #ffffff;--bg-soft: #e7ecef;--bg-faint: #f7f9fa;--ink: #14181b;--ink-soft: #5a646b;--ink-dim: #8b959b;--line: #e2e7ea;--line-faint: #eef1f3;--panel-dark: #0e1f17;--panel-darker: #0a160f;--green: #147a52;--green-soft: #e3f1ea;--green-line: #4fb07e;--green-deep: #1e8a4e;--blue: #1f6feb;--blue-soft: #e4eefc;--red: #c23a3a;--red-text: #b4472f;--red-soft: #fbe4dd;--amber-text: #8a5205;--amber-soft: #fbebd0;--amber-badge: #f3d89a;--diff-easy-bg: #e3f1ea;--diff-easy-fg: #1e8a4e;--diff-easy-line: #4fb07e;--diff-mid-bg: #eaf3d6;--diff-mid-fg: #5f8a19;--diff-mid-line: #a6c55c;--diff-hard-bg: #fbebd0;--diff-hard-fg: #b4720a;--diff-hard-line: #e0b04d;--diff-vhard-bg: #fbe4dd;--diff-vhard-fg: #c23a3a;--diff-vhard-line: #de8474;--font-sans: "Pretendard", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", "맑은 고딕", "Segoe UI", Roboto, sans-serif;--font-mono: "Spline Sans Mono", "SFMono-Regular", Consolas, monospace;--r-card: 12px;--r-card-lg: 14px;--r-chip: 6px;--r-chip-lg: 8px;--shadow-hover: 0 12px 30px -14px rgba(20, 24, 27, .4)}*{box-sizing:border-box}html{font-size:100%}body{margin:0;font-family:var(--font-sans);color:var(--ink);background:var(--bg);line-height:1.55;word-break:keep-all;-webkit-font-smoothing:antialiased}a{color:var(--green)}a:hover{color:var(--green-deep)}img,svg{max-width:100%}h1,h2,h3{letter-spacing:-.02em}.mono{font-family:var(--font-mono)}.container{max-width:1080px;margin:0 auto;padding:0 20px}.container--narrow{max-width:980px}.site-header{background:var(--surface);border-bottom:1px solid var(--line)}.site-header .container{display:flex;align-items:center;gap:10px;padding-top:13px;padding-bottom:13px}.site-header .brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);font-weight:800;font-size:18px;letter-spacing:-.01em}.site-header .brand .logo{color:var(--green);font-size:16px}.site-header .beta{font-family:var(--font-mono);font-size:10px;color:var(--green);background:var(--green-soft);padding:2px 7px;border-radius:5px;letter-spacing:.06em}.site-header .tagline{margin-left:auto;font-size:12.5px;color:var(--ink-dim)}.site-footer{margin-top:56px;border-top:1px solid var(--line);background:var(--surface)}.site-footer .container{padding-top:18px;padding-bottom:34px;font-family:var(--font-mono);font-size:10.5px;color:var(--ink-dim);line-height:1.8}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card)}.card--lg{border-radius:var(--r-card-lg)}.card--hover{transition:transform .15s ease,box-shadow .15s ease}.card--hover:hover,.card--hover:focus-visible{transform:translateY(-3px);box-shadow:var(--shadow-hover)}.section{padding:24px 0 0;scroll-margin-top:64px}.section>h2{margin:0 0 12px;font-size:19px;font-weight:800}.section .section-sub{font-size:13px;color:var(--ink-soft);margin:-8px 0 12px}.chip{display:inline-block;font-size:12px;color:#3c464c;background:var(--line-faint);padding:3px 9px;border-radius:var(--r-chip)}.chip--mono{font-family:var(--font-mono)}.chip--basetime{font-family:var(--font-mono);font-size:11px;color:var(--ink-dim);background:var(--bg-soft);padding:2px 8px;border-radius:5px}.chip--estimate{font-size:11px;color:var(--red-text);background:var(--red-soft);padding:2px 8px;border-radius:999px}.chip--subway{font-size:12px;color:var(--blue);background:var(--blue-soft);padding:3px 9px;border-radius:999px}.chip--warn{font-size:12px;color:var(--red-text);background:var(--red-soft);padding:3px 9px;border-radius:var(--r-chip)}.src-note{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-dim);overflow-wrap:anywhere}.src-note a{color:inherit;text-decoration-color:var(--line)}.src-note--rule{margin-top:9px;border-top:1px solid var(--line-faint);padding-top:7px}.empty{background:var(--bg-faint);border:1.5px dashed #cdd5da;border-radius:var(--r-card);padding:15px 16px}.empty .empty-title{font-size:14px;font-weight:700;color:var(--ink-soft)}.empty .empty-desc{font-size:13px;color:var(--ink-dim);margin-top:5px}.empty .soon{font-family:var(--font-mono);font-size:10px;color:var(--ink-dim);background:var(--bg-soft);padding:1px 6px;border-radius:4px;vertical-align:1px}.diff-badge{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;border-radius:12px;border:2px solid;flex-shrink:0}.diff-badge .num{font-weight:800;line-height:1}.diff-badge .denom{font-family:var(--font-mono);font-size:9px;opacity:.75}.diff-badge--lg{width:70px;height:70px;border-radius:12px}.diff-badge--lg .num{font-size:26px}.diff-badge--md{width:54px;height:54px;border-radius:11px}.diff-badge--md .num{font-size:19px}.diff-badge--sm{width:42px;height:42px;border-radius:9px}.diff-badge--sm .num{font-size:15px}.diff-badge--sm .denom{display:none}.diff--easy{background:var(--diff-easy-bg);color:var(--diff-easy-fg);border-color:var(--diff-easy-line)}.diff--mid{background:var(--diff-mid-bg);color:var(--diff-mid-fg);border-color:var(--diff-mid-line)}.diff--hard{background:var(--diff-hard-bg);color:var(--diff-hard-fg);border-color:var(--diff-hard-line)}.diff--vhard{background:var(--diff-vhard-bg);color:var(--diff-vhard-fg);border-color:var(--diff-vhard-line)}.ctrl-badge{display:inline-block;font-size:12.5px;font-weight:800;padding:4px 10px;border-radius:var(--r-chip)}.ctrl--normal .ctrl-badge{color:#4a555c;background:var(--bg-soft)}.ctrl--partial .ctrl-badge{color:var(--amber-text);background:var(--amber-badge)}.ctrl--closed .ctrl-badge{color:#fff;background:var(--red)}.ctrl--unknown .ctrl-badge{color:var(--ink-soft);background:var(--line-faint)}.ctrl-card{border-radius:var(--r-card);padding:15px 16px;border:1px solid var(--line);background:var(--surface)}.ctrl--partial.ctrl-card{background:var(--amber-soft);border-color:#ebd1a0}.ctrl--closed.ctrl-card{background:var(--red-soft);border-color:#eabaaf}.ctrl-card .ctrl-detail{font-size:13px;margin-top:9px;line-height:1.5;color:#3c464c}.ctrl--partial .ctrl-detail{color:#7a5416}.ctrl--closed .ctrl-detail{color:#8a3226}.ctrl-card .ctrl-actions{display:flex;gap:8px;align-items:center;margin-top:11px;flex-wrap:wrap}.ctrl-link{display:inline-block;font-size:12.5px;font-weight:600;text-decoration:none;color:var(--ink);background:var(--line-faint);padding:5px 10px;border-radius:var(--r-chip)}.ctrl--partial .ctrl-link{color:#5c3d06;background:var(--amber-badge)}.ctrl--closed .ctrl-link{color:#fff;background:var(--red)}.fire-banner{background:var(--red-soft);border:1px solid #e29a8a;border-radius:10px;padding:12px 16px;display:flex;align-items:center;gap:12px}.fire-banner .fire-title{font-size:14px;font-weight:700;color:#a5321f}.fire-banner .fire-desc{font-size:12.5px;color:#8a4130}.tag-chips{display:flex;flex-wrap:wrap;gap:6px}.tag-chip{font-size:12.5px;padding:5px 10px;border-radius:var(--r-chip)}.tag-chip--on{font-weight:600;color:#fff;background:var(--green)}.tag-chip--unknown{color:var(--ink-dim);border:1px dashed #c9d1d6}.tag-chip--off{color:var(--ink-dim);background:var(--line-faint);text-decoration:line-through;opacity:.7}.crumbs{font-family:var(--font-mono);font-size:12.5px;color:var(--ink-soft);display:flex;gap:7px;align-items:center;flex-wrap:wrap}.crumbs a{color:inherit;text-decoration:none}.crumbs a:hover{color:var(--ink)}.crumbs .sep{opacity:.5}.crumbs .here{color:var(--ink);font-weight:600}.anchor-nav{position:sticky;top:0;z-index:20;background:var(--surface);border-bottom:1px solid var(--line)}.anchor-nav ul{display:flex;gap:6px;list-style:none;margin:0;padding:10px 0 12px;overflow-x:auto;scrollbar-width:none}.anchor-nav ul::-webkit-scrollbar{display:none}.anchor-nav a{display:inline-block;white-space:nowrap;font-size:13.5px;color:var(--ink-soft);background:var(--line-faint);padding:6px 12px;border-radius:7px;text-decoration:none}.anchor-nav a:hover{background:var(--bg-soft);color:var(--ink)}.anchor-nav a.is-empty{color:var(--ink-dim)}.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:8px 14px;border-radius:0 0 8px;z-index:100}.skip-link:focus{left:0;color:#fff}:focus-visible{outline:2px solid var(--green);outline-offset:2px}@media print{body{background:#fff}.site-header,.site-footer,.anchor-nav,.no-print{display:none!important}.card,.ctrl-card,.empty{box-shadow:none;border-color:#bbb;break-inside:avoid}a{text-decoration:none;color:inherit}}@media(max-width:700px){.container{padding:0 14px}.site-header .tagline{display:none}}
