@font-face{font-family:Hahmlet;src:url(/fonts/hahmlet-variable.woff2)format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Pretendard Variable;src:url(/fonts/pretendard-variable.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{--display:Hahmlet, "Noto Serif KR", AppleMyungjo, serif;--text:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--paper:#fff;--wash:#f3f6f6;--ink:#13282e;--ink-2:#3a4f57;--muted:#5a6a70;--line:#e1e7e9;--line-2:#c7d1d5;--seal:#bd3818;--on-seal:#fff;--seal-wash:#fbeae4;--teal:#1f5b60;--teal-wash:#e5eeee;--ok:#1d6b3a;--ok-wash:#e2f2e7;--warn:#8a5a00;--warn-wash:#fdf1d6;--err:#b3261e;--err-wash:#fcebe9;--radius:14px;--side:232px;--top:56px;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--paper:#0c1214;--wash:#121b1e;--ink:#e9eef0;--ink-2:#b9c6cb;--muted:#93a3a9;--line:#22313a;--line-2:#36494f;--seal:#ff6a45;--on-seal:#1a0d08;--seal-wash:#2a1610;--teal:#86c3c8;--teal-wash:#15282b;--ok:#80d49c;--ok-wash:#11281a;--warn:#f0c36a;--warn-wash:#2b2210;--err:#ff8a80;--err-wash:#2c1513}}:root[data-theme=dark]{color-scheme:dark;--paper:#0c1214;--wash:#121b1e;--ink:#e9eef0;--ink-2:#b9c6cb;--muted:#93a3a9;--line:#22313a;--line-2:#36494f;--seal:#ff6a45;--on-seal:#1a0d08;--seal-wash:#2a1610;--teal:#86c3c8;--teal-wash:#15282b;--ok:#80d49c;--ok-wash:#11281a;--warn:#f0c36a;--warn-wash:#2b2210;--err:#ff8a80;--err-wash:#2c1513}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font:400 15px/1.65 var(--text);letter-spacing:-.006em;overflow-wrap:anywhere;margin:0}a{color:var(--teal);text-underline-offset:3px}:focus-visible{outline:3px solid var(--seal);outline-offset:2px;border-radius:6px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{background:var(--ink);color:var(--paper);z-index:50;border-radius:8px;padding:10px 14px;position:absolute;top:-60px;left:12px}.skip:focus{top:8px}.icon{flex:none}.grow{flex:1}button,input{font:inherit;color:inherit}.shell{min-height:100vh}.topbar{z-index:20;height:var(--top);background:var(--paper);border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:0 12px 0 16px;display:flex;position:sticky;top:0}.topbar form{margin:0}.brand{color:var(--ink);align-items:center;gap:8px;min-height:44px;text-decoration:none;display:inline-flex}.brand strong{font:800 22px/1 var(--display);letter-spacing:-.045em}.brand-sub{color:var(--muted);letter-spacing:.02em;font-size:13px;font-weight:700}.brand-mark{background:var(--teal);width:28px;height:28px;color:var(--paper);border-radius:9px;place-items:center;display:grid}.icon-btn{cursor:pointer;min-width:44px;min-height:44px;color:var(--ink-2);background:0 0;border:0;border-radius:12px;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--wash);color:var(--ink)}.menu-btn{display:none}.sidebar{top:var(--top);width:var(--side);border-right:1px solid var(--line);background:var(--paper);padding:16px 12px;position:fixed;bottom:0;left:0;overflow-y:auto}.nav-label{letter-spacing:.06em;color:var(--muted);margin:4px 10px 8px;font-size:12px;font-weight:700}.nav-item{min-height:44px;color:var(--ink-2);letter-spacing:-.02em;border-radius:12px;align-items:center;gap:10px;padding:0 12px;font-weight:700;text-decoration:none;display:flex}.nav-item:hover{background:var(--wash);color:var(--ink)}.nav-item[aria-current=page]{background:var(--teal-wash);color:var(--teal);box-shadow:inset 3px 0 0 var(--seal)}.nav-foot{color:var(--muted);margin:24px 10px 0;font-size:12.5px}.scrim{display:none}.main{margin-left:var(--side);max-width:1180px;padding:28px clamp(16px,3vw,40px) 64px}.page-head{margin-bottom:20px}.page-head h1{font:800 clamp(26px, 4vw, 34px)/1.2 var(--display);letter-spacing:-.04em;margin:0}.page-head p{color:var(--muted);max-width:62ch;margin:6px 0 0}.grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-bottom:18px;display:grid}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px}.card h2{font:800 18px/1.35 var(--display);letter-spacing:-.035em;margin:0 0 4px}.card .sub{color:var(--muted);margin:0 0 12px;font-size:14px}.stat-label{color:var(--muted);font-size:13px;font-weight:700;display:block}.stat-value{font:800 30px/1.2 var(--display);letter-spacing:-.04em;overflow-wrap:anywhere;margin-top:4px;display:block}.stat-value small{font:600 14px var(--text);color:var(--muted);letter-spacing:0;margin-left:4px}.stat-meta{color:var(--ink-2);margin-top:4px;font-size:13.5px}.badge{background:var(--wash);color:var(--ink-2);border:1px solid var(--line);border-radius:999px;padding:2px 10px;font-size:12.5px;font-weight:700;display:inline-block}.badge[data-tone=ok]{background:var(--ok-wash);color:var(--ok);border-color:#0000}.badge[data-tone=warn]{background:var(--warn-wash);color:var(--warn);border-color:#0000}.badge[data-tone=err]{background:var(--err-wash);color:var(--err);border-color:#0000}.rules{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.rules li{background:var(--wash);border-radius:12px;padding:14px 16px}.rules b{font:800 28px/1.1 var(--display);letter-spacing:-.04em;color:var(--seal);display:block}.rules strong{margin-top:6px;display:block}.rules span{color:var(--ink-2);font-size:13.5px;display:block}.todo{gap:10px;margin:0;padding:0;list-style:none;display:grid}.todo li{border-top:1px solid var(--line);grid-template-columns:56px 1fr;gap:12px;padding:12px 0;display:grid}.todo li:first-child{border-top:0}.todo p{color:var(--muted);margin:2px 0 0;font-size:13.5px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14.5px}th,td{text-align:left;border-top:1px solid var(--line);vertical-align:top;padding:12px 10px}th{color:var(--muted);letter-spacing:.02em;border-top:0;font-size:12.5px;font-weight:700}th button{all:unset;cursor:pointer;align-items:center;min-width:44px;min-height:44px;font-weight:700;display:inline-flex}th button:focus-visible{outline:3px solid var(--seal)}td.nowrap,th.nowrap{white-space:nowrap}.cell-title a{font-weight:700}.cell-title small{color:var(--muted);font-family:ui-monospace,Menlo,monospace;font-size:12px;display:block}[hidden]{display:none!important}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.field{border:1px solid var(--line-2);background:var(--paper);border-radius:12px;flex:220px;align-items:center;gap:8px;min-height:44px;padding:0 12px;display:flex}.field input{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:16px}.field:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-wash)}.seg{flex-wrap:wrap;gap:4px;display:inline-flex}.seg button{border:1px solid var(--line-2);background:var(--paper);cursor:pointer;min-height:44px;color:var(--ink-2);border-radius:12px;padding:0 14px;font-size:14px;font-weight:700}.seg button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.note{color:var(--muted);font-size:13.5px}.empty{text-align:center;color:var(--muted);padding:28px 8px}.btn{background:var(--ink);min-height:44px;color:var(--paper);cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:14.5px;font-weight:700;text-decoration:none;display:inline-flex}.btn.ghost{background:var(--wash);color:var(--ink);border:1px solid var(--line-2)}dl.kv{grid-template-columns:minmax(130px,200px) 1fr;gap:0;margin:0;display:grid}dl.kv dt,dl.kv dd{border-top:1px solid var(--line);margin:0;padding:11px 6px}dl.kv dt{color:var(--muted);font-weight:600}dl.kv dt:first-of-type,dl.kv dt:first-of-type+dd{border-top:0}.form{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end;gap:10px 12px;margin:0 0 6px;display:grid}.form label{color:var(--ink-2);gap:4px;font-size:13.5px;font-weight:700;display:grid}.form input,.form select,.form textarea{border:1px solid var(--line-2);background:var(--paper);border-radius:12px;width:100%;min-height:44px;padding:0 12px;font-size:16px}.form textarea{resize:vertical;min-height:88px;padding:10px 12px}.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-wash);outline:0}.btn.sm{min-height:44px;padding:0 14px;font-size:14px}td form{margin:0;display:inline}td .btn{min-height:44px}.flash{border-radius:12px;margin-bottom:16px;padding:12px 14px;font-weight:600}.flash.ok{background:var(--ok-wash);color:var(--ok)}.flash.err{background:var(--err-wash);color:var(--err)}.mono{font-family:ui-monospace,Menlo,monospace}.code{letter-spacing:.12em;font:800 22px/1 ui-monospace,Menlo,monospace}.stack{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.stack>*,.grid>*{min-width:0}.num{font-variant-numeric:tabular-nums;text-align:right}.login-wrap{background:var(--wash);place-items:center;min-height:100vh;padding:20px 16px;display:grid}.login{background:var(--paper);border:1px solid var(--line);border-radius:18px;width:min(100%,400px);padding:28px 24px}.login h1{font:800 28px/1.2 var(--display);letter-spacing:-.045em;margin:10px 0 4px}.login p{color:var(--muted);margin:0 0 16px}.login label{margin-bottom:6px;font-weight:700;display:block}.login .field{margin-bottom:12px}.login .btn{width:100%}.login .btn+.btn{margin-top:8px}.login p.or{text-align:center;margin:16px 0 12px;font-size:13.5px}.alert{background:var(--err-wash);color:var(--err);border-radius:10px;margin-bottom:12px;padding:10px 12px;font-size:14px;font-weight:600}@media (width<=860px){.menu-btn{display:inline-grid}.sidebar{visibility:hidden;z-index:30;width:min(280px,84vw);padding-top:72px;transition:transform .2s,visibility 0s .2s;top:0;transform:translate(-102%);box-shadow:6px 0 24px #0000001f}.sidebar.open{visibility:visible;transition:transform .2s;transform:none}.scrim{z-index:25;opacity:0;pointer-events:none;background:#0006;transition:opacity .2s;display:block;position:fixed;inset:0}.scrim.on{opacity:1;pointer-events:auto}.topbar{z-index:35}.main{margin-left:0;padding-top:22px}dl.kv{grid-template-columns:1fr}dl.kv dt{border-top:1px solid var(--line);padding-bottom:0}dl.kv dd{border-top:0;padding-top:0}.hide-sm{display:none}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}html.theme-vt *{view-transition-name:none!important}:root:active-view-transition-type(theme)::view-transition-old(root),:root:active-view-transition-type(theme)::view-transition-new(root){mix-blend-mode:normal;animation:none}:root:active-view-transition-type(theme)::view-transition-old(root){z-index:1}:root:active-view-transition-type(theme)::view-transition-new(root){z-index:2}.theme-icon{place-items:center;display:grid}[data-theme-toggle] [data-theme-icon=sun],:root[data-theme=dark] [data-theme-toggle] [data-theme-icon=moon]{display:none}:root[data-theme=dark] [data-theme-toggle] [data-theme-icon=sun]{display:grid}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) [data-theme-toggle] [data-theme-icon=moon]{display:none}:root:not([data-theme=light]) [data-theme-toggle] [data-theme-icon=sun]{display:grid}}details.more{background:var(--wash);border-radius:12px;padding:2px 12px}details.more summary{cursor:pointer;align-items:center;min-height:44px;font-size:14px;font-weight:700;display:flex}
