:root{--bg:#ffffff;--fg:#0f172a;--muted:#64748b;--border:#e2e8f0;--card:#fcfcfd;--primary:#ff6b00;--primary-700:#f06b00;--title-size: clamp(20px, 2.6vw, 22px);--chart-title-size: clamp(16px, 2.1vw, 18px);--label-size: clamp(12px, 1.8vw, 14.5px);--input-size: clamp(14px, 1.9vw, 16px)}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--fg);overflow-x:hidden}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Noto Sans KR,Arial,sans-serif}.only-desktop{display:inline}.only-mobile{display:none}@media (max-width:600px){.only-desktop{display:none!important}.only-mobile{display:inline!important}}.ad-pc-side{position:fixed;right:calc((100vw - 1140px)/2 - 180px);top:50%;transform:translateY(-50%);z-index:1000;width:160px;height:600px}@media (max-width:1500px){.ad-pc-side{right:20px}}.ad-mobile-bottom{width:320px;height:50px;margin:16px auto;text-align:center}.header{border-bottom:1px solid var(--border);background:linear-gradient(90deg,#fff6ef,#fff 60%)}.nav{display:flex;align-items:center;gap:12px;padding:12px 16px;max-width:1140px;margin:0 auto}.admin-search{border:1px solid var(--border);border-radius:12px;padding:8px 12px;font-size:14px;width:200px;outline:none;transition:border-color .2s}.admin-search:focus{border-color:var(--primary)}.brand-wrap{display:flex;align-items:center;gap:10px;min-width:0;flex:0 1 auto}.brand{font-weight:900;letter-spacing:.2px;color:var(--primary);font-size:2rem;line-height:1;white-space:nowrap}.lang-wrap{margin-left:auto;display:flex;align-items:center;gap:8px;white-space:nowrap}.lang-wrap .sep{color:#cbd5e1}.lang-toggle{border:none;background:transparent;cursor:pointer;font-size:.9rem;color:var(--fg);padding:0 4px}.lang-toggle.active{color:var(--primary);font-weight:700}.user-cta{margin-left:8px;display:flex;align-items:center;gap:10px;flex:0 0 auto}.button{border:1px solid var(--border);background:#fff;color:#0f172a;border-radius:12px;padding:10px 14px;font-size:.9rem;cursor:pointer}.button.primary{background:var(--primary);color:#fff;border-color:var(--primary)}.user-email{white-space:nowrap}.credit-under-header{max-width:1140px;margin:10px auto 6px;padding:0 16px;color:#111827;text-align:right;font-size:14px}.credit-under-header strong{font-weight:800}.container{max-width:1140px;margin:0 auto;padding:16px}.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:16px;box-shadow:0 1px #0f172a05;overflow:hidden}.section-title{margin:0 0 16px;font-size:var(--title-size);font-weight:900;color:var(--fg)}.two-pane{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}@media (max-width:1100px){.two-pane{grid-template-columns:1fr}}.two-pane>*{min-width:0}.help{color:var(--muted);font-size:var(--label-size)}.title-note{margin-left:8px;font-size:var(--label-size);color:var(--muted);font-weight:500}.save-hint{color:var(--muted);font-size:.8rem;text-align:right}.input,.select{border:1px solid var(--border);background:#fff;color:#0f172a;border-radius:12px;padding:12px 14px;font-size:var(--input-size);width:100%}.form-grid{display:grid;gap:12px}.form-grid.two,.form-grid.auto{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.two>*,.form-grid.auto>*{min-width:0}.table-wrap{width:100%;overflow-x:auto;margin-top:14px}.table{width:100%;border-collapse:collapse;min-width:960px}.table th,.table td{border-bottom:1px solid var(--border);padding:8px 10px;font-size:12px;white-space:nowrap;text-align:left;vertical-align:top}.table th{font-size:13px;line-height:1.15;white-space:normal;word-break:keep-all}.table td.num{text-align:right}.chart-title,.chart-card-title{font-size:var(--chart-title-size);font-weight:800;margin:6px 8px 4px;color:var(--fg);text-align:center}.subtabs{display:flex;gap:24px;align-items:flex-end;justify-content:center;margin:0 8px 8px}.subtabs .tab{border:none;background:transparent;padding:2px 0 6px;cursor:pointer;font-size:var(--chart-title-size);font-weight:700;color:#6b7280;border-bottom:3px solid transparent;white-space:nowrap}.subtabs .tab.active{color:#111827;font-weight:800;border-bottom-color:#111827}.recharts-legend-item-text,.recharts-default-legend{font-size:13px!important;font-weight:600}.charts-stack{display:flex;flex-direction:column;gap:18px}.chart-card.one{border:1px solid var(--border);border-radius:16px;padding:12px}.chart{height:300px}@media (max-width:600px){.charts-stack{padding-bottom:72px}}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:#111;color:#fff;padding:12px 16px;border-radius:12px;box-shadow:0 10px 30px #0003;z-index:60;font-size:14px}.fab-top{position:fixed;right:22px;bottom:22px;background:var(--primary);color:#fff;border:none;border-radius:999px;padding:12px 14px;box-shadow:0 12px 28px #0000002e;cursor:pointer;display:none;z-index:55;font-weight:800}.fab-top.show{display:inline-flex;align-items:center;gap:8px}.hamburger{border:none;background:transparent;padding:6px;cursor:pointer}.hamburger-icon{position:relative;display:block;width:24px;height:2px;background:#111;border-radius:2px}.hamburger-icon:before,.hamburger-icon:after{content:"";position:absolute;left:0;width:24px;height:2px;background:#111;border-radius:2px}.hamburger-icon:before{top:-7px}.hamburger-icon:after{top:7px}.sport-chip{font-weight:900;font-size:1rem;line-height:1;color:#fff;background:var(--primary);border:1px solid var(--primary);padding:6px 12px;border-radius:12px;margin-left:8px}.top-drawer{display:none;border-top:1px solid #0000;border-bottom:1px solid var(--border);background:#fff}.top-drawer.show{display:block;animation:drawerFadeIn .24s ease both}@keyframes drawerFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.drawer-tabs{max-width:1140px;margin:0 auto;padding:10px 16px;display:flex;gap:12px;align-items:center;justify-content:flex-start}.sport-tabs{display:flex;gap:12px}.sport-tab{font-weight:900;font-size:18px;color:#475569;background:#fff;border:1px solid var(--border);padding:10px 16px;border-radius:999px;cursor:pointer}.sport-tab.active{color:#fff;background:var(--primary);border-color:var(--primary)}.sport-tabs.md .sport-tab{font-size:18px;padding:10px 16px}@media (max-width:600px){.nav{padding:8px 10px;gap:6px;flex-wrap:nowrap}.brand{font-size:18px;line-height:1}.lang-wrap{margin-left:auto;gap:6px}.lang-toggle{font-size:12px;padding:0 2px}.user-cta{gap:6px}.user-cta .button{padding:6px 10px;font-size:12px;white-space:nowrap}.user-email{display:none}.container,.card{padding:12px}.chart{height:260px}.bottom-nav{position:fixed;left:0;right:0;bottom:0;height:56px;z-index:60;background:#fff;border-top:1px solid var(--border);display:flex;width:100%}.bottom-nav.only-mobile{display:flex!important}.bn-item{flex:1 1 33.333%;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:16px;color:#475569;background:#fff;border:none;cursor:pointer;min-width:0}.bn-item+.bn-item{border-left:1px solid var(--border)}.bn-item.active{background:var(--primary);color:#fff}.fab-top{bottom:72px}}.bottom-nav{display:none}.admin-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#fff;display:flex;flex-direction:column;z-index:9999}.admin-panel{width:100%;height:100%;background:#fff;display:flex;flex-direction:column}.admin-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 24px;border-bottom:1px solid var(--border);background:#f9fafb;flex:0 0 auto}.admin-title{font-weight:900;font-size:20px}.admin-body{display:flex;min-height:560px;position:relative}.admin-left{width:340px;min-width:240px;max-width:60%;border-right:1px solid var(--border);background:#fafafa;overflow:auto;flex-shrink:0}.admin-right{overflow:auto;background:#fff;flex:1}.admin-resizer{width:4px;cursor:col-resize;position:absolute;top:0;bottom:0;background:transparent;transition:background .2s}.admin-resizer:hover,.admin-resizer.dragging{background:var(--primary)}.admin-resizer:after{content:"";position:absolute;left:-4px;right:-4px;top:0;bottom:0;z-index:10}.admin-list,.admin-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.admin-list-wrap{max-height:100%;overflow:auto}.admin-list thead th{position:sticky;top:0;background:#f3f4f6;z-index:1;font-weight:800;font-size:13px;color:#111827;border-bottom:1px solid var(--border)}.admin-list th,.admin-list td{padding:10px 12px;border-bottom:1px solid var(--border);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-list tbody tr{cursor:pointer}.admin-list tbody tr:hover{background:#fff7ed}.admin-list tr.sel{background:#fffbeb;box-shadow:inset 3px 0 0 var(--primary)}.admin-list th:nth-child(1){width:160px}.admin-list th:nth-child(2){width:220px}.admin-list th:nth-child(3){width:140px}.admin-list th:nth-child(4){width:120px}.admin-list th:nth-child(5),.admin-list th:nth-child(6),.admin-list th:nth-child(7),.admin-list th:nth-child(8){width:70px;text-align:right}.admin-list td.num{text-align:right;font-variant-numeric:tabular-nums}.admin-list td.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.admin-detail-top{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--border)}.admin-member-name{font-weight:900;font-size:18px}.admin-member-sub{color:#6b7280;font-size:12px;margin-top:2px}.admin-detail-top .tab{border:1px solid var(--border);background:#fff;color:#111827;padding:8px 12px;border-radius:999px;font-weight:800;cursor:pointer}.admin-detail-top .tab+.tab{margin-left:6px}.admin-detail-top .tab.active{background:var(--primary);border-color:var(--primary);color:#fff}.admin-detail-top .admin-search{min-width:160px;height:36px;padding:6px 10px}.admin-right .card{background:#fff;border-color:var(--border)}.admin-right .stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:12px 14px}.admin-right .stat-card{border:1px solid var(--border);background:#fff;border-radius:12px;padding:12px}.admin-right .stat-k{color:#6b7280;font-size:12px}.admin-right .stat-v{font-weight:900;font-size:20px;margin-top:4px}.admin-table-wrap{padding:0 14px 14px}.admin-table thead th{position:sticky;top:0;background:#f8fafc;z-index:1;font-weight:800;border-bottom:2px solid var(--border)}.admin-table th,.admin-table td{padding:9px 10px;border-bottom:1px solid var(--border);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-table td.num{text-align:right;font-variant-numeric:tabular-nums}.admin-table tbody tr:nth-child(odd){background:#fcfcff}.admin-table tbody tr:hover{background:#f5f7ff}@media (max-width: 980px){.admin-body{grid-template-columns:1fr}.admin-left{max-height:320px}}
