*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans KR,Roboto,sans-serif;background:#ffffff;color:#2f3437;font-size:14px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit}:root{--accent:#2f3437;--accent-soft:#f1f1ef;--accent-on:#ffffff;--border:#ebebeb;--border-strong:#d3d2cc;--muted:#8d8d8d;--text:#2f3437;--hover:#f7f6f3;--chip-yellow-bg:#fef6dd;--chip-yellow-fg:#876d2c;--chip-green-bg:#dde9d6;--chip-green-fg:#4a7e36;--chip-blue-bg:#d3e5ef;--chip-blue-fg:#2e587a;--chip-red-bg:#ffe4e4;--chip-red-fg:#b1453c;--radius:3px;--radius-sm:3px;--radius-lg:6px}img,svg{height:auto}img,svg,table{max-width:100%}@media (max-width:640px){body{font-size:13px}table{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}}.md{word-break:keep-all;overflow-wrap:anywhere}.md p{margin:0 0 10px;line-height:1.7}.md p:last-child{margin-bottom:0}.md h1,.md h2,.md h3,.md h4{margin:14px 0 6px;font-weight:700;line-height:1.4}.md h1{font-size:18px}.md h2{font-size:16px}.md h3{font-size:15px}.md h4{font-size:14px}.md ol,.md ul{margin:0 0 10px;padding-left:22px;line-height:1.7}.md li{margin:2px 0}.md a{color:var(--accent);text-decoration:underline;-webkit-text-decoration-color:rgba(0,0,0,.25);text-decoration-color:rgba(0,0,0,.25)}.md a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.md code{background:#f1f1f1;padding:1px 5px;border-radius:3px;font-size:.9em;font-family:ui-monospace,SF Mono,Menlo,monospace}.md pre{background:#f8f8f8;border:1px solid var(--border);padding:10px 12px;border-radius:6px;overflow-x:auto;font-size:12px;margin:0 0 10px}.md pre code{background:transparent;padding:0;font-size:inherit}.md blockquote{margin:0 0 10px;padding:4px 12px;border-left:3px solid var(--border-strong);color:var(--muted);background:#fafafa}.md hr{border:none;border-top:1px solid var(--border);margin:14px 0}.md img{max-width:100%;height:auto;border-radius:4px}.md table{border-collapse:collapse;width:100%;font-size:13px;margin:0 0 10px}.md td,.md th{border:1px solid var(--border);padding:6px 10px;text-align:left}.AppHeader_bar__YUp2q{max-width:880px;margin:0 auto;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);background:white;gap:8px}.AppHeader_brand__rnXPX{font-weight:700;font-size:16px;white-space:nowrap;flex:0 0 auto}.AppHeader_navDesktop__TnAAE{display:flex;gap:12px;align-items:center;flex-wrap:nowrap}.AppHeader_link__c9LPk{font-size:14px;color:var(--muted);white-space:nowrap}.AppHeader_link__c9LPk:hover{color:var(--accent)}.AppHeader_adminLink__HbZ1m{color:#92400e;font-weight:500}.AppHeader_adminLink__HbZ1m:hover{color:#78350f}.AppHeader_adminDrawerLink__oMzb2{color:#92400e!important;font-weight:500}.AppHeader_logout__oUF5t{font-size:13px;color:var(--muted);background:none;border:1px solid var(--border);padding:5px 10px;border-radius:var(--radius);cursor:pointer;white-space:nowrap}.AppHeader_logout__oUF5t:hover{color:#c0392b;border-color:#f3c4c4}.AppHeader_skeleton__ox2sr{display:inline-block;background:linear-gradient(90deg,#ececef,#f6f6f8 50%,#ececef);background-size:200% 100%;border-radius:var(--radius-sm);animation:AppHeader_shimmer__HiFg8 1.2s ease-in-out infinite}.AppHeader_skelLink__pwP2Z{width:56px;height:14px}@keyframes AppHeader_shimmer__HiFg8{0%{background-position:200% 0}to{background-position:-200% 0}}.AppHeader_authed__HYmfu,.AppHeader_fadeIn__DY1TP{display:inline-flex;align-items:center;gap:8px;animation:AppHeader_fadeIn__DY1TP .18s ease-out}.AppHeader_avatar__GBo0Y{border-radius:50%;background:#f0f0f3}.AppHeader_userName__w_RGJ{font-size:13px;color:#111;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes AppHeader_fadeIn__DY1TP{0%{opacity:0}to{opacity:1}}.AppHeader_myMenu__v8rvj{position:relative}.AppHeader_myTrigger__yWJJV{display:inline-flex;align-items:center;gap:4px;background:none;border:none;font-family:inherit;font-size:inherit;cursor:pointer}.AppHeader_caret__mK4n6{font-size:10px;line-height:1;margin-left:2px;opacity:.7}.AppHeader_myDropdown__aKj_M{position:absolute;right:0;top:calc(100% + 6px);min-width:180px;background:white;border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.08);padding:4px;display:flex;flex-direction:column;z-index:200;animation:AppHeader_fadeIn__DY1TP .12s ease-out}.AppHeader_myDropdownHeader__sLSZC{display:flex;flex-direction:column;gap:1px;padding:8px 10px 6px;border-bottom:1px solid var(--border);margin-bottom:4px}.AppHeader_myDropdownName__T78RB{font-size:13px;font-weight:600;color:#111}.AppHeader_myDropdownMuted___cT8Y{font-size:11px;color:var(--muted)}.AppHeader_myDropdownLink__M5sJb{padding:8px 10px;font-size:13px;color:#111;text-decoration:none;border-radius:4px}.AppHeader_myDropdownLink__M5sJb:hover{background:#f5f5f7;color:var(--accent)}.AppHeader_myDropdownDiv__NpInt{border:none;border-top:1px solid var(--border);margin:4px 0}.AppHeader_myDropdownLogout__dSfoB{padding:8px 10px;font-size:13px;text-align:left;background:none;border:none;color:var(--muted);cursor:pointer;border-radius:4px;font-family:inherit}.AppHeader_myDropdownLogout__dSfoB:hover{background:#fff5f5;color:#c0392b}.AppHeader_drawerGroupHeader__wjsbQ{padding:14px 16px 4px;font-size:11px;font-weight:700;color:var(--muted);letter-spacing:.4px;text-transform:uppercase}.AppHeader_drawerSubLink__NvR99{padding-left:28px}.AppHeader_hamburger__dR6q_{display:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:36px;height:36px;padding:0;background:none;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;flex:0 0 auto}.AppHeader_hamLine__I6JiP{display:block;width:18px;height:2px;background:var(--text);transition:transform .2s ease,opacity .2s ease}.AppHeader_hamOpen1__K9z_e{transform:translateY(6px) rotate(45deg)}.AppHeader_hamOpen2__JSZEp{opacity:0}.AppHeader_hamOpen3__bGGHD{transform:translateY(-6px) rotate(-45deg)}.AppHeader_scrim__nYWvG{position:fixed;inset:0;background:rgba(0,0,0,.35);opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:90}.AppHeader_scrimOpen__DhO9t{opacity:1;pointer-events:auto}.AppHeader_drawer__bCai2{position:fixed;top:0;right:0;height:100dvh;width:min(280px,80vw);background:white;border-left:1px solid var(--border);z-index:91;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .22s ease;box-shadow:-8px 0 24px rgba(0,0,0,.06)}.AppHeader_drawerOpen__Iet4a{transform:translateX(0)}.AppHeader_drawerHeader__JxDNN{padding:20px 18px 14px;border-bottom:1px solid var(--border)}.AppHeader_drawerUser__Huc4i{display:flex;align-items:center;gap:10px}.AppHeader_drawerUserName__sJYUm{margin:0;font-size:14px;font-weight:600;color:var(--text)}.AppHeader_drawerUserMuted__n9lS_{margin:2px 0 0;font-size:12px;color:var(--muted)}.AppHeader_drawerNav__AVtCh{display:flex;flex-direction:column;padding:6px 0}.AppHeader_drawerLink__l2kuM{display:block;padding:12px 18px;font-size:15px;color:var(--text);border-bottom:1px solid var(--border)}.AppHeader_drawerLink__l2kuM:hover{background:var(--hover)}.AppHeader_drawerFoot__BUvJn{margin-top:auto;padding:14px 18px;border-top:1px solid var(--border)}.AppHeader_drawerLogout__Yw_Cw{width:100%;background:white;color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;font-size:14px;cursor:pointer}.AppHeader_drawerLogout__Yw_Cw:hover{color:#c0392b;border-color:#f3c4c4}@media (max-width:720px){.AppHeader_navDesktop__TnAAE{display:none}.AppHeader_hamburger__dR6q_{display:inline-flex}}.BuildFooter_footer__7wBtA{max-width:880px;margin:40px auto 16px;padding:12px 16px;display:flex;gap:8px;align-items:center;justify-content:center;font-size:11px;color:var(--muted);border-top:1px solid var(--border)}.BuildFooter_version__iGeUo{font-weight:600;color:var(--text)}.BuildFooter_builtAt__XOPeg,.BuildFooter_commit__IXFqP,.BuildFooter_version__iGeUo{font-family:ui-monospace,SF Mono,Menlo,monospace}.BuildFooter_sep__7ek6N{opacity:.5}.BuildFooter_link__rjI5a{color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:rgba(0,0,0,.15);text-decoration-color:rgba(0,0,0,.15)}.BuildFooter_link__rjI5a:hover{color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.DebugBadge_badge__ucxIV{position:fixed;left:12px;bottom:12px;z-index:9997;display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;background:rgba(22,26,28,.85);color:#f1f1f1;font:600 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 12px rgba(0,0,0,.25);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);pointer-events:none;transition:opacity .3s ease}.DebugBadge_cache__BvEdI{font-weight:800;letter-spacing:.06em;padding:1px 5px;border-radius:3px;font-size:10px}.DebugBadge_hit__Jopl0{background:#1e4d2b;color:#b9f7c2}.DebugBadge_miss__9Mqni{background:#5a2020;color:#ffb1b1}.DebugBadge_cacheNone__k5AEG{background:#2a2f33;color:#aaa}.DebugBadge_ms__LeGFv{color:#ffd166}.DebugBadge_fast__97QVW{color:#b9f7c2}.DebugBadge_slow__MA37s{color:#ffb1b1}.DebugBadge_colo__MVRqm{color:#999;font-size:10px}.DebugBadge_fade__rUCnI{opacity:.35}.DebugPanel_fab__uEmUr{position:fixed;right:12px;bottom:12px;z-index:9998;background:#2f3437;color:#fff;border:0;border-radius:999px;padding:6px 10px;font:600 12px/1 system-ui,sans-serif;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.25)}.DebugPanel_panel__E5ait{position:fixed;right:12px;bottom:56px;width:min(420px,calc(100vw - 24px));max-height:60vh;display:flex;flex-direction:column;z-index:9999;background:#161a1c;color:#f1f1f1;border-radius:10px;border:1px solid #2a2f33;box-shadow:0 10px 30px rgba(0,0,0,.4);overflow:hidden;font:12px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.DebugPanel_header__5fbxg{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#1f2426;border-bottom:1px solid #2a2f33}.DebugPanel_title__1QtKI{font-weight:700;letter-spacing:.04em}.DebugPanel_spacer__4tovi{flex:1 1}.DebugPanel_headerBtn__220hU{background:transparent;color:#ccc;border:1px solid #3a3f43;border-radius:6px;padding:3px 8px;cursor:pointer;font:600 11px/1 system-ui,sans-serif}.DebugPanel_headerBtn__220hU:hover{background:#2a2f33}.DebugPanel_list__plXPS{flex:1 1;overflow-y:auto;margin:0;padding:0;list-style:none}.DebugPanel_groupItem__f2s6n{border-bottom:1px solid #1f2426}.DebugPanel_row__JFCO3{display:grid;grid-template-columns:auto 1fr auto auto auto auto;align-items:center;grid-gap:8px;gap:8px;padding:6px 10px;width:100%}.DebugPanel_rowBtn__0GNQH{background:transparent;border:0;color:inherit;text-align:left;font:inherit;cursor:pointer}.DebugPanel_rowBtn__0GNQH:hover{background:#1f2426}.DebugPanel_rowLoop__yo4MJ{border-left:2px solid #ef4444}.DebugPanel_countChip__Gt8s9{font-weight:800;font-size:10px;letter-spacing:.04em;padding:1px 6px;border-radius:4px;background:#5a2020;color:#ffd1d1;min-width:28px;text-align:center}.DebugPanel_countChipEmpty__bVqcK{min-width:28px}.DebugPanel_detail__T8Yk_{background:#0e1112;padding:8px 10px;border-top:1px solid #1f2426}.DebugPanel_subDetails__m5trw{margin-bottom:6px;font-size:10px}.DebugPanel_subDetails__m5trw summary{cursor:pointer;color:#9ca3af;padding:2px 0}.DebugPanel_subList__NG8HH{list-style:none;margin:4px 0 0;padding:0;max-height:120px;overflow-y:auto}.DebugPanel_subRow__yylwA{display:grid;grid-template-columns:auto auto auto auto;align-items:center;grid-gap:6px;gap:6px;padding:2px 0;font-size:10px;color:#ccc}.DebugPanel_subTime__yH7sj{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#888}.DebugPanel_subStatus__hzNrk{color:#ccc}.DebugPanel_stack__SDf4x{margin:0;font:10px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;color:#cdd5db;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto}.DebugPanel_method__uUUD5{color:#80c0ff;font-weight:700}.DebugPanel_path__NoQAT{color:#ddd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.DebugPanel_cache__FuC7C{font-weight:700;padding:1px 6px;border-radius:4px;font-size:10px;letter-spacing:.06em}.DebugPanel_hit__hjHPH{background:#1e4d2b;color:#b9f7c2}.DebugPanel_miss__5n_gG{background:#5a2020;color:#ffb1b1}.DebugPanel_cacheNone__aoO_E{background:#2a2f33;color:#aaa}.DebugPanel_ms__9JIr3{color:#ffd166}.DebugPanel_fast__I9NOS{color:#b9f7c2}.DebugPanel_slow__r6qMD{color:#ffb1b1}.DebugPanel_colo__KSgrw{color:#999;font-size:10px}.DebugPanel_empty__cIGxS{padding:16px;text-align:center;color:#888}.DebugPanel_summary__J_8gi{display:flex;gap:12px;padding:6px 10px;background:#1a1e20;border-top:1px solid #2a2f33;font-size:11px;color:#bbb}.DebugPanel_summary__J_8gi strong{color:#fff}.SessionExpiredModal_scrim__wYJV8{position:fixed;inset:0;background:rgba(15,23,42,.55);display:flex;align-items:center;justify-content:center;padding:16px;z-index:1000;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.SessionExpiredModal_modal__l0255{background:white;border-radius:12px;padding:24px;max-width:380px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,.25);display:flex;flex-direction:column;gap:12px}.SessionExpiredModal_title__EhjSp{margin:0;font-size:18px;font-weight:700;color:#111827}.SessionExpiredModal_body__4vTT_{margin:0;font-size:14px;line-height:1.6;color:#4b5563}.SessionExpiredModal_actions__QPRKQ{display:flex;gap:8px;margin-top:8px;justify-content:flex-end}.SessionExpiredModal_btn__seaqY{border-radius:6px;padding:9px 16px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid var(--border);background:white;color:#4b5563;font-family:inherit}.SessionExpiredModal_btn__seaqY:hover{background:#f8fafc}.SessionExpiredModal_btnPrimary__3bjFG{background:var(--accent);color:white;border-color:var(--accent)}.SessionExpiredModal_btnPrimary__3bjFG:hover{background:#1e40af}