@import "https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css";:root{--brand:#1559b3;--brand-600:#104a97;--brand-700:#0c3b7a;--brand-soft:#e3eefb;--brand-ring:#1559b34d;--brand-2:#0f97ad;--river-deep:#0b3a74;--river:#2a76c9;--river-light:#8fc6ec;--river-mist:#dbe8f4;--glint:#fff;--lamp:#f4b860;--sunset:#f08a4b;--bridge:#6d819c;--canvas:#e6edf5;--canvas-2:#dae4ef;--sheet:#fff;--surface:#fff;--surface-2:#f2f6fa;--surface-3:#e6edf5;--border:#e2e8f0;--border-2:#d0dae6;--border-strong:#b5c2d3;--text:#0f1b2d;--text-muted:#58687e;--text-faint:#8b98ab;--text-on-accent:#fff;--success:#0b7a52;--success-soft:#dff3ea;--success-line:#8fd4ba;--warning:#8a5a11;--warning-soft:#fbeeda;--warning-line:#e6c185;--danger:#b52a37;--danger-soft:#fce8ea;--danger-line:#efaeb5;--info:#14448c;--info-soft:#e3edff;--info-line:#a8c4f0;--neutral:#3b4859;--neutral-soft:#e7ebf1;--neutral-line:#c3cddb;--accent:#d4541f;--accent-soft:#fdeadf;--accent-line:#f2b491;--tint-1-bg:#e3edff;--tint-1-fg:#14448c;--tint-1-line:#c3d8fb;--tint-2-bg:#dcf3ec;--tint-2-fg:#0b6152;--tint-2-line:#b3e0d1;--tint-3-bg:#fbeeda;--tint-3-fg:#8a5a11;--tint-3-line:#eed7ac;--tint-4-bg:#ebe6fb;--tint-4-fg:#4a3596;--tint-4-line:#d0c5f2;--tint-5-bg:#e7ebf1;--tint-5-fg:#3b4859;--tint-5-line:#cdd6e2;--r-xs:6px;--r-sm:9px;--r:12px;--r-lg:18px;--r-xl:26px;--r-full:999px;--sh-xs:0 1px 2px #0f1b2d0d;--sh-sm:0 2px 6px #0f1b2d0f;--sh:0 6px 20px #0f1b2d14;--sh-lg:0 20px 48px #0f1b2d29;--sh-sheet:0 1px 2px #0b3a740d, 0 14px 44px #0b3a741a;--rail-w:236px;--gap:18px;--river-reveal:150px;--font:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, "D2Coding", monospace;--ease:cubic-bezier(.22,.61,.36,1);--wave-line:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 6'%3E%3Cpath d='M0 3c3.5-2.6 7-2.6 10.5 0s7 2.6 10.5 0S27 1.5 28 3' fill='none' stroke='%23000' stroke-width='1.1'/%3E%3C/svg%3E");--wave-glyph:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 7'%3E%3Cpath d='M1 4c1.5-2.5 3-2.5 4.5 0s3 2.5 4.5 0 2.2-2 3-1.6' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E");--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--brand:#6aa9ff;--brand-600:#86baff;--brand-700:#a6ccff;--brand-soft:#13243f;--brand-ring:#6aa9ff57;--brand-2:#45cfe0;--river-deep:#08172e;--river:#143a6e;--river-light:#2b6bb3;--river-mist:#0b1526;--glint:#ffe7b0;--lamp:#ffcf7a;--sunset:#ff9b6a;--bridge:#2a3d5e;--canvas:#050912;--canvas-2:#0a1322;--sheet:#0f1826;--surface:#0f1826;--surface-2:#172233;--surface-3:#202d40;--border:#232e3e;--border-2:#2e3b4d;--border-strong:#405066;--text:#e8eef7;--text-muted:#9aabc0;--text-faint:#6b7c92;--text-on-accent:#0a1119;--success:#4fd39b;--success-soft:#0e2a20;--success-line:#1e5744;--warning:#f0b45c;--warning-soft:#2c2010;--warning-line:#5c4520;--danger:#ff8b95;--danger-soft:#2e1418;--danger-line:#62272f;--info:#8ab4ff;--info-soft:#131f36;--info-line:#2b4373;--neutral:#a6b5c8;--neutral-soft:#1c2532;--neutral-line:#334154;--accent:#ff8a5c;--accent-soft:#2e1a10;--accent-line:#5f3320;--tint-1-bg:#131f36;--tint-1-fg:#9cc0ff;--tint-1-line:#26375a;--tint-2-bg:#0e2a20;--tint-2-fg:#6fdcae;--tint-2-line:#1c4a39;--tint-3-bg:#2c2010;--tint-3-fg:#f3c179;--tint-3-line:#4d3a1b;--tint-4-bg:#1d1936;--tint-4-fg:#b9a6ff;--tint-4-line:#332c58;--tint-5-bg:#1c2532;--tint-5-fg:#a6b5c8;--tint-5-line:#2c3849;--sh-xs:0 1px 2px #00000080;--sh-sm:0 2px 6px #00000073;--sh:0 6px 20px #00000080;--sh-lg:0 24px 56px #000000a6;--sh-sheet:0 0 0 1px #ffffff0a, 0 16px 44px #0000008c, 0 -30px 80px #143a6e2e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%}body{min-height:100vh;font-family:var(--font);color:var(--text);background:var(--canvas);background-image:radial-gradient(760px 420px at 90% -8%, color-mix(in srgb, var(--sunset) 16%, transparent), transparent 66%), radial-gradient(1100px 520px at 8% -6%, color-mix(in srgb, var(--brand) 8%, transparent), transparent 62%), linear-gradient(180deg, var(--canvas) 0%, var(--canvas) 48%, var(--river-mist) 100%);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-attachment:fixed;margin:0;font-size:14px;line-height:1.55}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;color:var(--text);margin:0;font-weight:700}p{margin:0 0 10px}a{color:var(--brand);text-decoration:none}code{font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-xs);padding:1px 5px;font-size:.92em}::selection{background:color-mix(in srgb, var(--brand) 26%, transparent)}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:var(--r-xs)}*{scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:var(--r-full);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--border-strong);background-clip:content-box}.text-muted{color:var(--text-muted)}.text-faint{color:var(--text-faint)}.nums{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.mono{font-family:var(--font-mono)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.push-right{margin-left:auto}.ico{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.ico-sm{width:15px;height:15px}.ico-lg{width:22px;height:22px}.sidebar{width:var(--rail-w);z-index:100;overscroll-behavior:contain;flex-direction:column;padding:22px 14px 16px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.brand,.brand-logo{color:var(--text);align-items:center;gap:10px;padding:4px 8px 26px;text-decoration:none;display:flex}.brand-text{flex-direction:column;gap:1px;min-width:0;display:flex}.brand-mark{box-shadow:0 3px 12px color-mix(in srgb, var(--river-deep) 18%, transparent), 0 0 0 1px #f0c27a59;border-radius:27%;flex:none;position:relative;top:-2px}.brand-ko{letter-spacing:-.045em;background:linear-gradient(96deg, var(--brand) 0%, var(--brand-2) 118%);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:25px;font-weight:800;line-height:1.05}.brand-en{letter-spacing:.26em;color:var(--text-faint);font-size:9.5px;font-weight:700}.menu{flex-direction:column;gap:2px;display:flex}.menu-label{letter-spacing:.13em;text-transform:uppercase;color:var(--text-faint);padding:16px 12px 6px;font-size:10.5px;font-weight:800}.menu-label:first-child{padding-top:2px}.menu a{border-radius:var(--r-sm);color:var(--text-muted);transition:background .15s var(--ease), color .15s var(--ease);align-items:center;gap:10px;padding:8px 12px;font-size:13.5px;font-weight:600;display:flex}.menu a .ico{opacity:.72}.menu a:hover{background:color-mix(in srgb, var(--text) 6%, transparent);color:var(--text)}.menu a:hover .ico{opacity:1}.menu a.active{background:linear-gradient(100deg, var(--brand) 0%, color-mix(in srgb, var(--brand) 72%, var(--brand-2)) 100%);color:var(--text-on-accent);box-shadow:0 2px 10px color-mix(in srgb, var(--brand) 40%, transparent)}.menu a.active .ico{opacity:1}.menu a .menu-count{font-variant-numeric:tabular-nums;color:var(--text-faint);margin-left:auto;font-size:11px;font-weight:700}.menu a.active .menu-count{color:color-mix(in srgb, var(--text-on-accent) 82%, transparent)}.menu-foot{border-radius:var(--r-lg);background:color-mix(in srgb, var(--sheet) 66%, transparent);-webkit-backdrop-filter:blur(12px)saturate(1.2);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--sheet) 55%, transparent), 0 8px 24px color-mix(in srgb, var(--river-deep) 14%, transparent);margin:auto -4px 0;padding:8px}.rail-user{border:1px solid color-mix(in srgb, var(--border) 70%, transparent);border-radius:var(--r);background:color-mix(in srgb, var(--sheet) 78%, transparent);align-items:center;gap:9px;margin:6px 0 0;padding:9px 10px;display:flex}.rail-user .avatar{border-radius:var(--r-full);background:linear-gradient(140deg, var(--brand), var(--brand-2));color:#fff;flex:none;place-items:center;width:28px;height:28px;font-size:11.5px;font-weight:800;display:grid}.rail-user b{font-size:12.5px;line-height:1.25;display:block}.rail-user span{color:var(--text-faint);font-size:10.5px;display:block}.main-content{z-index:1;margin-left:var(--rail-w);padding:var(--gap) var(--gap) var(--river-reveal) 0;min-height:100vh;position:relative}.content-wrapper,.dashboard-container{background:var(--sheet);border-radius:var(--r-xl);box-shadow:var(--sh-sheet);min-height:calc(100vh - var(--gap) - var(--river-reveal));padding:24px 28px 34px}.topbar{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:20px;padding-bottom:18px;display:flex;position:relative}.topbar-text{flex-wrap:wrap;align-items:baseline;gap:10px;min-width:0;display:flex}.topbar-text .page-eyebrow:after{content:"";background:var(--border-2);width:1px;height:11px;margin-left:4px}.topbar:after{content:"";background:var(--border-2);height:6px;-webkit-mask:var(--wave-line) left center / 28px 6px repeat-x;-webkit-mask:var(--wave-line) left center / 28px 6px repeat-x;mask:var(--wave-line) left center / 28px 6px repeat-x;position:absolute;bottom:0;left:0;right:0}.page-eyebrow{letter-spacing:.06em;color:var(--text-faint);align-items:center;gap:6px;margin-bottom:0;font-size:11px;font-weight:700;display:inline-flex}.page-eyebrow .dot{border-radius:var(--r-full);background:var(--brand-2);width:5px;height:5px}.page-eyebrow .ripple{background:var(--brand-2);width:14px;height:7px;-webkit-mask:var(--wave-glyph) center / contain no-repeat;-webkit-mask:var(--wave-glyph) center / contain no-repeat;mask:var(--wave-glyph) center / contain no-repeat;flex:none}.page-title{letter-spacing:-.03em;font-size:24px;font-weight:800;line-height:1.2}.page-desc{color:var(--text-muted);margin:0;font-size:13px}.topbar-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.btn{border:1px solid var(--border-2);border-radius:var(--r-sm);background:var(--surface);height:36px;color:var(--text);white-space:nowrap;cursor:pointer;transition:background .15s var(--ease), border-color .15s var(--ease), transform .1s var(--ease), box-shadow .15s var(--ease), color .15s var(--ease);justify-content:center;align-items:center;gap:7px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:650;line-height:1;display:inline-flex}.btn:hover{background:var(--surface-2);border-color:var(--border-strong)}.btn:active{transform:translateY(1px)}.btn[disabled],.btn.is-disabled{opacity:.45;pointer-events:none}.btn-sm{border-radius:var(--r-xs);gap:5px;height:29px;padding:0 10px;font-size:12px}.btn-lg{border-radius:var(--r);height:42px;padding:0 20px;font-size:14px}.btn-primary,.btn-blue{background:var(--brand);color:var(--text-on-accent);box-shadow:0 2px 10px color-mix(in srgb, var(--brand) 34%, transparent);border-color:#0000}.btn-primary:hover,.btn-blue:hover{background:var(--brand-600);box-shadow:0 4px 16px color-mix(in srgb, var(--brand) 42%, transparent);border-color:#0000}.btn-dark{background:var(--text);color:var(--sheet);border-color:#0000}.btn-dark:hover{background:color-mix(in srgb, var(--text) 86%, var(--sheet));border-color:#0000}.btn-success,.btn-green{background:var(--success-soft);border-color:var(--success-line);color:var(--success)}.btn-success:hover,.btn-green:hover{background:color-mix(in srgb, var(--success-soft) 74%, var(--success))}.btn-warning,.btn-orange{background:var(--warning-soft);border-color:var(--warning-line);color:var(--warning)}.btn-warning:hover,.btn-orange:hover{background:color-mix(in srgb, var(--warning-soft) 74%, var(--warning))}.btn-purple{background:var(--tint-4-bg);border-color:var(--tint-4-line);color:var(--tint-4-fg)}.btn-purple:hover{background:color-mix(in srgb, var(--tint-4-bg) 74%, var(--tint-4-fg))}.btn-danger,.btn-red{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger)}.btn-danger:hover,.btn-red:hover{background:color-mix(in srgb, var(--danger-soft) 74%, var(--danger))}.btn-red-dark{background:var(--danger);color:#fff;box-shadow:0 2px 10px color-mix(in srgb, var(--danger) 34%, transparent);border-color:#0000}.btn-red-dark:hover{background:color-mix(in srgb, var(--danger) 86%, #000);border-color:#0000}:root[data-theme=dark] .btn-red-dark{color:#2a1014}:root[data-theme=dark] .btn-red-dark:hover{background:color-mix(in srgb, var(--danger) 88%, #fff)}.btn-excel{background:var(--tint-2-bg);border-color:var(--tint-2-line);color:var(--tint-2-fg)}.btn-excel:hover{background:color-mix(in srgb, var(--tint-2-bg) 74%, var(--tint-2-fg))}.btn-quick{border-radius:var(--r-full);background:var(--surface-2);height:30px;color:var(--text-muted);border-color:#0000;padding:0 11px;font-size:12px;font-weight:600}.btn-quick:hover{background:var(--surface-3);color:var(--text);border-color:#0000}.btn-link{height:auto;color:var(--brand);text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:650;text-decoration:underline;text-decoration-thickness:1.5px}.btn-link:hover{color:var(--brand-600);background:0 0}.btn-icon{border-radius:var(--r-full);width:32px;height:32px;padding:0}.btn-group{flex-wrap:wrap;gap:6px;display:inline-flex}label{letter-spacing:-.005em;color:var(--text-muted);margin-bottom:6px;font-size:12px;font-weight:700;display:block}input[type=text],input[type=password],input[type=number],input[type=date],input[type=search],input[type=email],select,textarea{border:1px solid var(--border-2);border-radius:var(--r-sm);background:var(--surface);width:100%;min-height:38px;color:var(--text);transition:border-color .15s var(--ease), box-shadow .15s var(--ease), background .15s var(--ease);padding:8px 12px;font-family:inherit;font-size:13.5px;line-height:1.4}input::placeholder,textarea::placeholder{color:var(--text-faint)}input:hover,select:hover,textarea:hover{border-color:var(--border-strong)}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring);outline:none}textarea{resize:vertical;min-height:104px}input[type=date],input[type=number]{font-variant-numeric:tabular-nums}input[type=date]::-webkit-calendar-picker-indicator{opacity:.5;cursor:pointer}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2358687e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-position:right 11px center;background-repeat:no-repeat;padding-right:34px}:root[data-theme=dark] select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239aabc0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>")}input[type=checkbox]{appearance:none;border:1.6px solid var(--border-strong);background:var(--surface);cursor:pointer;width:17px;height:17px;min-height:0;transition:background .12s var(--ease), border-color .12s var(--ease);border-radius:5px;place-content:center;margin:0;padding:0;display:inline-grid}input[type=checkbox]:after{content:"";clip-path:polygon(14% 44%,0 60%,39% 100%,100% 18%,84% 4%,39% 70%);width:9px;height:9px;transition:transform .12s var(--ease);background:#fff;transform:scale(0)}input[type=checkbox]:checked{background:var(--brand);border-color:var(--brand)}input[type=checkbox]:checked:after{transform:scale(1)}input[type=checkbox]:indeterminate{background:var(--brand);border-color:var(--brand)}input[type=checkbox]:indeterminate:after{clip-path:none;border-radius:1px;width:9px;height:2px;transform:scale(1)}.form-group{margin-bottom:16px}.form-group:last-child{margin-bottom:0}.form-section{border:1px solid var(--border);border-radius:var(--r);background:var(--surface-2);grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px;padding:16px;display:grid}.flex-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.flex-row-input{align-items:center;gap:6px;display:flex}.flex-row-input input{min-width:0}.compact-input{border-radius:var(--r-xs);background:0 0;border-color:#0000;min-height:32px;padding:5px 9px;font-size:12.5px}.compact-input:hover{background:var(--surface-2);border-color:var(--border)}.compact-input:focus{background:var(--surface)}.url-input{min-height:32px;font-size:11.5px;font-family:var(--font-mono);letter-spacing:-.02em;border-radius:var(--r-xs);color:var(--text-muted);background:0 0;border-color:#0000;padding:5px 9px}.url-input:hover{background:var(--surface-2);border-color:var(--border)}.url-input:focus{background:var(--surface);color:var(--text)}.is-dirty,input.is-dirty{box-shadow:inset 3px 0 0 var(--warning);background:var(--warning-soft)!important;border-color:var(--warning-line)!important}.limit-select{border-radius:var(--r-sm);width:auto;min-width:108px;min-height:36px;padding:0 32px 0 12px;font-size:12.5px;font-weight:600}.search-box{flex:210px;min-width:180px;position:relative}.search-box:before{content:"";pointer-events:none;opacity:.5;background:currentColor;width:15px;height:15px;margin-top:-7.5px;position:absolute;top:50%;left:12px;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'><circle cx='11' cy='11' r='7'/><path d='M20 20l-3.6-3.6'/></svg>") 50%/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'><circle cx='11' cy='11' r='7'/><path d='M20 20l-3.6-3.6'/></svg>") 50%/contain no-repeat}.search-box input{border-radius:var(--r-full);padding-left:34px}.search-box input::-webkit-search-cancel-button{cursor:pointer}.seg{border-radius:var(--r-full);background:var(--surface-2);border:1px solid var(--border);align-items:center;gap:2px;padding:3px;display:inline-flex}.seg-label{letter-spacing:.04em;color:var(--text-faint);white-space:nowrap;padding:0 6px 0 9px;font-size:11px;font-weight:700}.seg-btn{appearance:none;border-radius:var(--r-full);height:28px;color:var(--text-muted);white-space:nowrap;cursor:pointer;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;padding:0 10px;font-family:inherit;font-size:12.5px;font-weight:650;line-height:1}.seg-btn:hover{color:var(--text);background:color-mix(in srgb, var(--text) 6%, transparent)}.seg-btn.active{background:var(--sheet);color:var(--text);box-shadow:var(--sh-xs), 0 0 0 1px var(--border-2)}.seg-btn.active[data-tone=brand]{background:var(--brand);color:var(--text-on-accent);box-shadow:none}.panel,.card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);padding:20px}.panel-flush{padding:0;overflow:hidden}.panel-head{align-items:flex-start;gap:12px;padding:18px 20px 14px;display:flex}.panel-head h3{letter-spacing:-.02em;font-size:15px}.panel-head p{color:var(--text-muted);margin:3px 0 0;font-size:12.5px}.panel-head .push-right{align-items:center;gap:8px;display:flex}.panel-link{color:var(--text-muted);align-items:center;gap:3px;font-size:12px;font-weight:650;display:inline-flex}.panel-link:hover{color:var(--brand)}.note{border:1px solid var(--warning-line);border-radius:var(--r);background:var(--warning-soft);color:var(--warning);border-left-width:4px;gap:12px;padding:15px 18px;display:flex}.note h4{color:inherit;margin-bottom:3px;font-size:13.5px}.note p{color:inherit;opacity:.92;margin:0;font-size:13px}.note .ico{margin-top:1px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(212px,1fr));gap:12px;margin-bottom:14px;display:grid}.stat-card{border:1px solid var(--tint-5-line);border-radius:var(--r-lg);background:var(--tint-5-bg);color:var(--tint-5-fg);transition:transform .18s var(--ease), box-shadow .18s var(--ease);flex-direction:column;gap:2px;padding:18px 18px 16px;display:flex;position:relative;overflow:hidden}.stat-card:hover{box-shadow:var(--sh);transform:translateY(-2px)}.stat-card.is-link{cursor:pointer;text-decoration:none}.stat-card.is-link:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.stat-foot a{color:inherit;text-underline-offset:2px;text-decoration:underline}.stat-foot a:hover{opacity:1}.stat-card:before{content:"";pointer-events:none;background:radial-gradient(52% 9px at 22% 62%, color-mix(in srgb, currentColor 11%, transparent), transparent 70%), radial-gradient(64% 9px at 64% 84%, color-mix(in srgb, currentColor 9%, transparent), transparent 70%), radial-gradient(44% 7px at 40% 100%, color-mix(in srgb, currentColor 8%, transparent), transparent 70%);height:46%;position:absolute;bottom:-8px;left:-6%;right:-6%}.stat-card>*{position:relative}.stat-title{letter-spacing:-.01em;opacity:.82;font-size:12px;font-weight:700}.stat-value{letter-spacing:-.045em;font-variant-numeric:tabular-nums;margin:2px 0 1px;font-size:32px;font-weight:800;line-height:1.1}.stat-card .text-faint,.stat-foot{color:inherit;opacity:.66;font-size:11.5px;font-weight:600}.stat-icon{opacity:.16;pointer-events:none;filter:grayscale(.15);font-size:40px;line-height:1;position:absolute;bottom:8px;right:12px}.card-blue{background:var(--tint-1-bg);border-color:var(--tint-1-line);color:var(--tint-1-fg)}.card-green{background:var(--tint-2-bg);border-color:var(--tint-2-line);color:var(--tint-2-fg)}.card-orange{background:var(--tint-3-bg);border-color:var(--tint-3-line);color:var(--tint-3-fg)}.card-purple{background:var(--tint-4-bg);border-color:var(--tint-4-line);color:var(--tint-4-fg)}.card-gray{background:var(--tint-5-bg);border-color:var(--tint-5-line);color:var(--tint-5-fg)}.card-red{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger)}.quick-links{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.rank-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.rank-cards .stat-card{padding:13px 14px}.rank-cards .stat-value{font-size:24px}.table-container{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}.table-responsive{overflow-x:auto}.table-scroll .table-responsive{max-height:min(68vh,760px);overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}thead th{z-index:2;text-align:left;white-space:nowrap;letter-spacing:.02em;color:var(--text-muted);background:var(--surface-2);border-bottom:1px solid var(--border);padding:11px 14px;font-size:11.5px;font-weight:750;position:sticky;top:0}thead th:first-child{padding-left:16px}thead th:last-child{padding-right:16px}th[data-sort]{cursor:pointer;-webkit-user-select:none;user-select:none}th[data-sort]:after{content:"⇅";opacity:.38;margin-left:5px;font-size:10px}th[data-sort]:hover{color:var(--text)}th[data-sort]:hover:after{opacity:.7}th.is-sorted-asc:after{content:"↑";opacity:1;color:var(--brand)}th.is-sorted-desc:after{content:"↓";opacity:1;color:var(--brand)}tbody td{border-bottom:1px solid var(--border);vertical-align:middle;padding:9px 14px}tbody td:first-child{padding-left:16px}tbody td:last-child{padding-right:16px}tbody tr:last-child td{border-bottom:0}tbody tr{transition:background .12s var(--ease)}tbody tr:hover td{background:color-mix(in srgb, var(--brand) 3.5%, transparent)}tbody td[colspan]{text-align:center;color:var(--text-faint);padding:46px 16px;font-size:13.5px}.cell-id{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--text-muted);font-size:12px}.slots-table{min-width:1260px}.slots-table thead th{padding:7px 10px}.slots-table tbody td{padding:2px 10px}.slots-table thead th:first-child,.slots-table tbody td:first-child{padding-left:12px}.slots-table thead th:last-child,.slots-table tbody td:last-child{padding-right:12px}.slots-table .compact-input,.slots-table .url-input{min-height:24px;padding:1px 6px;line-height:1.3}.slots-table .kind-select{height:22px}.slots-table .url-open{width:20px;height:20px}.slots-table .url-stack{gap:1px}.slots-table .type-badge{height:19px}.slots-table .rank-badge{height:22px}.slots-table .cell-rank{white-space:nowrap}.slots-table .rank-time{margin:0 0 0 6px;display:inline}.slots-table .flex-row-input{gap:4px}.slots-table tbody td[colspan]{padding:46px 16px}.footer-action{border-top:1px solid var(--border);background:var(--surface-2);align-items:center;gap:10px;padding:11px 16px;display:flex}.type-badge{border-radius:var(--r-full);background:var(--surface-3);height:21px;color:var(--text-muted);letter-spacing:-.005em;white-space:nowrap;align-items:center;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}.rank-badge{border-radius:var(--r-full);font-variant-numeric:tabular-nums;white-space:nowrap;cursor:pointer;height:24px;transition:transform .12s var(--ease), box-shadow .12s var(--ease);border:1.4px solid #0000;align-items:center;gap:4px;padding:0 9px;font-size:12px;font-weight:750;display:inline-flex}.rank-badge:hover{box-shadow:var(--sh-sm);transform:translateY(-1px)}.rank-badge:before{font-size:10px;line-height:1}.rank-top{background:var(--success);border-color:var(--success);color:#fff}:root[data-theme=dark] .rank-top{color:#08201a}.rank-top:before{content:"★"}.rank-in{background:var(--tint-1-bg);border-color:var(--tint-1-line);color:var(--tint-1-fg)}.rank-in:before{content:"▲";font-size:8px}.rank-out{border-style:dashed;border-color:var(--border-strong);color:var(--text-faint);background:0 0;font-weight:650}.rank-out:before{content:"–"}.rank-delta{font-variant-numeric:tabular-nums;vertical-align:middle;margin-left:5px;font-size:11px;font-weight:750;display:inline-block}.rank-delta.is-up{color:var(--success)}.rank-delta.is-down{color:var(--danger)}.rank-delta.is-flat{color:var(--text-faint)}.url-stack{flex-direction:column;gap:4px;display:flex}.url-cell{align-items:center;gap:4px;display:flex}.kind-select{border:1px solid var(--border);border-radius:var(--r-xs);background-color:var(--surface);width:auto;height:26px;min-height:0;color:var(--text-muted);background-position:right 4px center;background-size:12px;flex:none;padding:0 20px 0 7px;font-size:11.5px;font-weight:650}.kind-select.is-dirty{border-color:var(--brand);color:var(--brand)}.url-tag{color:var(--text-faint);letter-spacing:.02em;flex:none;padding:0 4px;font-size:10.5px;font-weight:700}.form-label{color:var(--text-muted);margin-bottom:6px;font-size:12.5px;font-weight:650;display:block}.radio-row{flex-wrap:wrap;gap:8px;display:flex}.radio-chip{cursor:pointer;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:650;display:inline-flex}.radio-chip small{color:var(--text-faint);font-weight:500}.radio-chip.is-on{border-color:var(--brand);background:var(--brand-soft);color:var(--brand)}.radio-chip input{accent-color:var(--brand);margin:0}.url-cell .url-input{flex:1;min-width:0}.url-open{border-radius:var(--r-xs);width:24px;height:24px;color:var(--text-faint);flex:none;justify-content:center;align-items:center;display:inline-flex}.url-open:hover{background:var(--surface-2);color:var(--brand)}tr.is-clickable{cursor:pointer}tr.is-clickable:hover td{background:var(--surface-2)}.link-btn{font:inherit;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.link-btn:hover{color:var(--brand);text-underline-offset:3px;text-decoration:underline}.notice-preview{text-overflow:ellipsis;white-space:nowrap;max-width:420px;overflow:hidden}.notice-body{white-space:pre-line;font-size:14px;line-height:1.7}.field-hint{margin:6px 0 0;font-size:11.5px;font-weight:600}.field-hint.is-ok{color:var(--success)}.field-hint.is-warn{color:var(--warning)}.field-hint.is-bad{color:var(--danger)}.rank-time{color:var(--text-faint);font-variant-numeric:tabular-nums;margin-top:2px;font-size:10.5px;display:block}.remain-days{border-radius:var(--r-full);background:var(--surface-3);height:22px;color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:4px;padding:0 8px;font-size:11.5px;font-weight:700;display:inline-flex}.remain-days.is-urgent{background:var(--warning-soft);color:var(--warning);box-shadow:inset 0 0 0 1.2px var(--warning-line)}.remain-days.is-urgent:before{content:"⏳";font-size:9.5px}.remain-days.is-expired{color:var(--text-faint);box-shadow:inset 0 0 0 1.2px var(--border-2);background:0 0;text-decoration:line-through;text-decoration-thickness:1.2px}.controls{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-2);flex-wrap:wrap;gap:6px;margin-bottom:10px;padding:9px 12px;display:flex}.controls .btn{gap:6px;height:31px;padding:0 11px;font-size:12.5px}.controls .divider{height:18px}.filter-row,.action-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.divider{background:var(--border-2);width:1px;height:20px;margin:0 3px}.status-bar{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:14px;padding:9px 4px 12px;font-size:12.5px;display:flex}.status-left{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.status-left strong{color:var(--text);font-weight:750}.status-bar .limit-select{margin-left:auto}.select-counter{color:var(--brand)!important}.dirty-note{border-radius:var(--r-full);background:var(--warning-soft);height:24px;color:var(--warning);box-shadow:inset 0 0 0 1.2px var(--warning-line);align-items:center;gap:5px;padding:0 10px;font-size:11.5px;font-weight:750;display:inline-flex}.dirty-note:before{content:"●";font-size:8px}.summary-row{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--border);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;margin-bottom:14px;display:grid;overflow:hidden}.summary-item{background:var(--surface);flex-direction:column;gap:3px;padding:15px 18px;display:flex}.summary-title{color:var(--text-muted);font-size:11.5px;font-weight:700}.summary-value{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:22px;font-weight:800;line-height:1.2}.pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;margin-top:16px;display:flex}.page-link{border-radius:var(--r-sm);font-variant-numeric:tabular-nums;min-width:34px;height:34px;color:var(--text-muted);transition:background .14s var(--ease), color .14s var(--ease);border:1px solid #0000;justify-content:center;align-items:center;padding:0 10px;font-size:12.5px;font-weight:650;display:inline-flex}.page-link:hover{background:var(--surface-2);color:var(--text)}.page-link.active{background:var(--brand);color:var(--text-on-accent);box-shadow:0 2px 8px color-mix(in srgb, var(--brand) 36%, transparent)}.page-link.is-edge{color:var(--text-faint);font-weight:600}.page-link.is-disabled{opacity:.35;pointer-events:none}.page-jump{align-items:center;gap:6px;margin-left:8px;display:inline-flex}.page-jump input{text-align:center;width:58px;min-height:32px;padding:4px 8px;font-size:12.5px}.page-jump .text-muted{font-size:12px}.range-note{color:var(--text-faint);font-variant-numeric:tabular-nums;margin-top:8px;font-size:11.5px;display:inline-block}.tab-container{border-radius:var(--r-full);background:var(--surface-2);border:1px solid var(--border);gap:3px;margin-bottom:18px;padding:3px;display:inline-flex}.tab-btn{appearance:none;border-radius:var(--r-full);height:32px;color:var(--text-muted);cursor:pointer;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;align-items:center;gap:6px;padding:0 15px;font-family:inherit;font-size:13px;font-weight:650;line-height:1;display:inline-flex}.tab-btn:hover{color:var(--text)}.tab-btn.active{background:var(--sheet);color:var(--text);box-shadow:var(--sh-xs), 0 0 0 1px var(--border-2)}.modal{z-index:900;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:hv-fade .16s var(--ease);background:#060a129e;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.modal-content{border-radius:var(--r-xl);background:var(--sheet);width:min(660px,100%);max-height:calc(100vh - 40px);box-shadow:var(--sh-lg);animation:hv-pop .2s var(--ease);flex-direction:column;display:flex;overflow:hidden}.modal-header{align-items:center;gap:12px;padding:18px 22px 14px;display:flex}.modal-title{letter-spacing:-.025em;font-size:16px}.modal-header .close{border-radius:var(--r-full);width:30px;height:30px;color:var(--text-faint);cursor:pointer;transition:background .14s var(--ease), color .14s var(--ease);place-items:center;margin-left:auto;font-size:19px;line-height:1;display:grid}.modal-header .close:hover{background:var(--surface-2);color:var(--text)}.modal-body{padding:0 22px 20px;overflow-y:auto}.modal-body p:first-child{margin-top:0}.modal-footer{border-top:1px solid var(--border);background:var(--surface-2);justify-content:flex-end;gap:8px;padding:14px 22px;display:flex}@keyframes hv-fade{0%{opacity:0}}@keyframes hv-pop{0%{opacity:0;transform:translateY(10px)scale(.985)}}#progress-overlay{z-index:950;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#060a12a8;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.prog-box{border-radius:var(--r-xl);background:var(--sheet);width:min(420px,100%);box-shadow:var(--sh-lg);text-align:center;padding:24px}.prog-box strong{margin-bottom:14px;font-size:14.5px;display:block}.prog-bar-bg{border-radius:var(--r-full);background:var(--surface-3);height:8px;overflow:hidden}.prog-bar-fill{border-radius:var(--r-full);background:linear-gradient(90deg, var(--brand), var(--brand-2));width:0;height:100%;transition:width .18s linear;position:relative;overflow:hidden}.prog-bar-fill:after{content:"";background:repeating-linear-gradient(100deg,#0000 0 14px,#ffffff47 14px 20px,#0000 20px 34px);animation:1.1s linear infinite hv-flow-x;position:absolute;inset:0}@keyframes hv-flow-x{to{transform:translate(34px)}}#prog-text{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-top:11px;font-size:12.5px}.prog-sub{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-top:7px;font-size:12px;line-height:1.6}.prog-sub strong{font-size:inherit;color:var(--text);margin:0;display:inline}.prog-box .btn{margin-top:14px}.prog-mini{z-index:940;border:1px solid var(--border-strong);border-radius:var(--r-full);cursor:pointer;background:var(--sheet);color:var(--text);font-variant-numeric:tabular-nums;box-shadow:var(--sh-lg);align-items:center;gap:6px;padding:9px 14px;font-size:12.5px;display:inline-flex;position:fixed;bottom:18px;right:18px}.prog-mini:hover{border-color:var(--brand)}@media (width<=620px){.prog-mini{bottom:76px}}.prog-mini svg{animation:1.4s linear infinite hv-spin}@keyframes hv-spin{to{transform:rotate(360deg)}}.toast{z-index:1000;border-radius:var(--r-full);background:var(--text);max-width:min(520px,100vw - 32px);color:var(--sheet);box-shadow:var(--sh-lg);animation:hv-toast .22s var(--ease);align-items:center;gap:9px;padding:12px 18px;font-size:13px;font-weight:600;display:inline-flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.toast[hidden]{display:none}.toast-success{background:var(--success);color:#fff}.toast-warn{background:var(--warning);color:#fff}.toast-error{background:var(--danger);color:#fff}:root[data-theme=dark] .toast-success,:root[data-theme=dark] .toast-warn,:root[data-theme=dark] .toast-error{color:#0a1119}@keyframes hv-toast{0%{opacity:0;transform:translate(-50%,14px)}}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:84px 20px;display:flex}.empty-state .ico{opacity:.3}.empty-state h2{letter-spacing:-.03em;font-size:19px}.empty-state p{color:var(--text-muted);margin:0 0 10px;font-size:13.5px}.role-switch{border:1px dashed var(--border-2);border-radius:var(--r);background:color-mix(in srgb, var(--warning-soft) 45%, transparent);margin:8px 2px 0;padding:9px 10px;display:block}.role-switch>span{letter-spacing:.08em;color:var(--text-faint);margin-bottom:5px;font-size:9.5px;font-weight:800;display:block}.role-switch select{background-position:right 8px center;min-height:30px;padding:4px 28px 4px 9px;font-size:12px;font-weight:600}.auth{background:radial-gradient(900px 480px at 78% 108%, color-mix(in srgb, var(--sunset) 22%, transparent), transparent 62%), linear-gradient(180deg, var(--canvas) 0%, var(--canvas-2) 58%, color-mix(in srgb, var(--sunset) 10%, var(--canvas-2)) 100%);place-items:center;min-height:100vh;padding:24px 24px 30vh;display:grid;position:relative}.auth>.btn-icon{z-index:2}.auth-card{z-index:1;border-radius:var(--r-xl);background:color-mix(in srgb, var(--sheet) 86%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.15);width:min(404px,100%);box-shadow:var(--sh-sheet), inset 0 0 0 1px color-mix(in srgb, var(--sheet) 60%, transparent);padding:34px 32px 28px;position:relative}.auth-brand{align-items:center;gap:12px;margin-bottom:24px;display:flex}.auth-brand .brand-ko{font-size:30px}.auth-brand .brand-en{font-size:10px}.auth-card h1{letter-spacing:-.025em;margin-bottom:3px;font-size:16px}.auth-card .auth-sub{color:var(--text-muted);margin:0 0 22px;font-size:13px}.auth-card .btn-lg{width:100%;margin-top:6px}.auth-error{border:1px solid var(--danger-line);border-radius:var(--r-sm);background:var(--danger-soft);color:var(--danger);align-items:center;gap:7px;margin-bottom:14px;padding:10px 12px;font-size:12.5px;font-weight:650;display:flex}.auth-foot{border-top:1px solid var(--border);color:var(--text-faint);text-align:center;margin-top:22px;padding-top:16px;font-size:11.5px}.auth-demo{border:1px dashed var(--border-2);border-radius:var(--r);background:color-mix(in srgb, var(--warning-soft) 45%, transparent);color:var(--text-muted);margin-top:16px;padding:12px 14px;font-size:11.5px}.auth-demo b{color:var(--text);letter-spacing:.08em;margin-bottom:5px;font-size:10px;font-weight:800;display:block}.auth-demo button{appearance:none;font:inherit;color:var(--brand);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:2px 0;font-weight:700;text-decoration:underline}.detail-grid{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:14px;display:grid}@media (width<=900px){.detail-grid{grid-template-columns:minmax(0,1fr)}}.kv{grid-template-columns:96px minmax(0,1fr);gap:8px 12px;font-size:13px;display:grid}.kv dt{color:var(--text-muted);font-weight:650}.kv dd{margin:0;font-weight:600}.form-actions{border-top:1px solid var(--border);flex-wrap:wrap;gap:8px;margin-top:24px;padding-top:18px;display:flex}.form-actions .push-right{margin-left:auto}.river{z-index:0;pointer-events:none;height:320px;position:fixed;bottom:0;left:0;right:0;overflow:hidden}.river-auth{height:min(46vh,420px);min-height:280px}.river-mist{background:linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--river-light) 26%, transparent) 50%, color-mix(in srgb, var(--river) 34%, transparent) 100%);position:absolute;inset:0}.river-svg{width:100%;height:160px;display:block;position:absolute;bottom:0;left:0}.river-band{animation:hv-river var(--dur,30s) linear infinite;transform:translate(0, var(--dy,0))}.river-band path{fill:var(--fill)}.river-band-3{--dy:0px;--dur:30s;--fill:color-mix(in srgb, var(--river-light) 78%, transparent)}.river-band-2{--dy:30px;--dur:19s;--fill:color-mix(in srgb, var(--river) 66%, transparent)}.river-band-1{--dy:62px;--dur:13s;--fill:color-mix(in srgb, var(--river-deep) 62%, transparent);animation-direction:reverse}@keyframes hv-river{0%{transform:translate(0, var(--dy,0))}to{transform:translate(-1440px, var(--dy,0))}}.river-glints{position:absolute;inset:0}.river-glints i{background:linear-gradient(90deg, transparent, var(--glint), transparent);height:3px;box-shadow:0 0 8px color-mix(in srgb, var(--glint) 70%, transparent);opacity:0;border-radius:3px;animation:4s ease-in-out infinite hv-glint;position:absolute}@keyframes hv-glint{0%,to{opacity:0;transform:scaleX(.3)translateY(0)}50%{opacity:1;transform:scaleX(1)translateY(-3px)}}.river-skyline{opacity:.62;width:100%;height:150px;position:absolute;bottom:50px;left:0;right:0}.river-skyline .sky-bridge{fill:none;stroke:var(--bridge);stroke-linecap:round}.river-skyline .sky-deck{stroke-width:3.2px;opacity:.8}.river-skyline .sky-arch{stroke-width:2px;opacity:.7}.river-skyline .sky-hanger{stroke-width:1px;opacity:.45}.river-skyline .sky-pier{stroke-width:3.6px;opacity:.5}.river-skyline .sky-lamps{fill:var(--lamp);opacity:0}:root[data-theme=dark] .river-skyline{opacity:.7}:root[data-theme=dark] .river-skyline .sky-lamps{opacity:1}:root[data-theme=dark] .river-skyline .sky-lamps circle{filter:drop-shadow(0 0 3px var(--lamp));animation:3.8s ease-in-out infinite hv-lamp}.river-auth .river-skyline{opacity:.22;transform-origin:50% 100%;bottom:205px;transform:scale(.8)}:root[data-theme=dark] .river-auth .river-skyline{opacity:.32}.river-fireworks{display:none;position:absolute;inset:0}:root[data-theme=dark] .river-fireworks{display:block}.fw{--c:var(--lamp);width:0;height:0;position:absolute}.fw-gold{--c:#ffd27a}.fw-white{--c:#fff4dc}.fw-blue{--c:#9ed0ff}.fw i{background:var(--c);opacity:0;width:3px;height:3px;animation-duration:var(--period);animation-delay:var(--delay);border-radius:50%;animation-iteration-count:infinite;position:absolute;top:-1.5px;left:-1.5px}.fw .fw-shell{box-shadow:0 0 6px var(--c);animation-name:hv-fw-shell;animation-timing-function:cubic-bezier(.2,.6,.5,1)}@keyframes hv-fw-shell{0%{opacity:0;transform:translateY(var(--rise)) scale(.8)}1%{opacity:.9}9%{opacity:.9;transform:translateY(1px)scale(1)}10%,to{opacity:0;transform:translateY(0)scale(.5)}}.fw .fw-flash{background:radial-gradient(circle, var(--c) 0%, transparent 68%);filter:blur(3px);width:28px;height:28px;animation-name:hv-fw-flash;animation-timing-function:ease-out;top:-14px;left:-14px}@keyframes hv-fw-flash{0%,9.5%{opacity:0;transform:scale(.3)}11%{opacity:.85;transform:scale(1)}20%,to{opacity:0;transform:scale(1.7)}}.fw .fw-spark{width:2px;height:8px;box-shadow:0 0 5px var(--c);border-radius:2px;animation-name:hv-fw-spark;animation-timing-function:cubic-bezier(.1,.7,.3,1);top:-4px;left:-1px}@keyframes hv-fw-spark{0%,9.5%{opacity:0;transform:translate(0, 0) rotate(var(--a)) translateY(0) scale(1)}10%{opacity:1}17%{opacity:.95;transform:translate(0, 3px) rotate(var(--a)) translateY(calc(var(--r) * var(--k) * -1)) scale(.9)}25%,to{opacity:0;transform:translate(0, 14px) rotate(var(--a)) translateY(calc(var(--r) * var(--k) * -1.08)) scale(.6, .3)}}.fw .fw-reflect{left:-45px;top:var(--water);background:radial-gradient(ellipse at center, var(--c) 0%, transparent 70%);filter:blur(4px);width:90px;height:10px;animation-name:hv-fw-reflect;animation-timing-function:ease-out}@keyframes hv-fw-reflect{0%,9.5%{opacity:0;transform:scaleX(.5)}11.5%{opacity:.7;transform:scaleX(1)}16%{opacity:.5;transform:scaleX(1.1)}28%,to{opacity:0;transform:scaleX(1.4)}}.river-bridge{width:100%;height:220px;position:absolute;bottom:62px;left:0;right:0}.river-bridge .bridge-deck{stroke:var(--bridge);stroke-width:5px;opacity:.75}.river-bridge .bridge-arch{fill:none;stroke:var(--bridge);stroke-width:2.4px;opacity:.55}.river-bridge .bridge-pier{stroke:var(--bridge);stroke-width:7px;opacity:.45}.river-bridge .bridge-hanger{stroke:var(--bridge);stroke-width:1.4px;opacity:.5}.river-bridge .bridge-lamp{fill:var(--lamp);opacity:.55}.river-bridge .bridge-lamp.is-deck{opacity:.4}:root[data-theme=dark] .river-bridge .bridge-lamp{opacity:.9;filter:drop-shadow(0 0 5px var(--lamp));animation:3.4s ease-in-out infinite hv-lamp}@keyframes hv-lamp{0%,to{opacity:.9}50%{opacity:.55}}:root[data-theme=dark] .river-mist{background:radial-gradient(60% 120px at 70% 100%, color-mix(in srgb, var(--lamp) 12%, transparent), transparent 70%), linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--river) 30%, transparent) 60%, color-mix(in srgb, var(--river-light) 34%, transparent) 100%)}:root[data-theme=dark] .river-band-3{--fill:color-mix(in srgb, var(--river-light) 70%, transparent)}:root[data-theme=dark] .river-band-2{--fill:color-mix(in srgb, var(--river-light) 40%, var(--river))}:root[data-theme=dark] .river-band-1{--fill:color-mix(in srgb, var(--river) 70%, var(--river-deep))}@media (width<=1100px){.form-section{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=860px){:root{--gap:10px}.sidebar{background:color-mix(in srgb, var(--canvas) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);flex-direction:row;align-items:center;gap:6px;width:auto;padding:9px 12px;position:sticky;inset:0 auto auto 0;overflow:auto hidden}.brand{flex:none;gap:8px;padding:0 12px 0 2px}.brand-text{flex-direction:row;align-items:baseline;gap:7px}.brand-mark{width:26px;height:26px}.brand-ko{font-size:18px}.brand-en{letter-spacing:.18em;font-size:8px}.river-app{display:none}.menu-foot{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:0 0;margin:0;padding:0}.menu{flex-direction:row;gap:2px}.menu-label,.menu a .menu-count,.rail-user{display:none}.menu a{white-space:nowrap;padding:7px 11px;font-size:12.5px}.main-content{padding:var(--gap);margin-left:0}.content-wrapper,.dashboard-container{border-radius:var(--r-lg);min-height:0;padding:18px 15px 24px}.auth{padding-bottom:34vh}.river-auth{min-height:220px}.page-title{font-size:20px}.topbar{margin-bottom:14px;padding-bottom:12px}.topbar-actions{margin-left:auto}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px}.stat-value{font-size:26px}.form-section{grid-template-columns:minmax(0,1fr)}.rank-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.rank-cards .stat-value{font-size:19px}.search-box{flex:100%}.status-bar .limit-select{margin-left:0}.modal-content{border-radius:var(--r-lg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media print{.sidebar,.topbar-actions,.controls,.filter-row,.pagination,.toast,.river{display:none!important}.topbar:after{display:none}.main-content{margin:0;padding:0}.content-wrapper{box-shadow:none;padding:0}body{background:#fff}}
