:root{--bg: #0a0e14;--bg-card: rgba(18, 25, 35, .85);--bg-elevated: rgba(28, 38, 52, .9);--border: rgba(72, 100, 130, .35);--text: #e8eef4;--text-muted: #7d8fa8;--accent: #00d4aa;--accent-soft: rgba(0, 212, 170, .12);--success: #00d4aa;--warning: #f0b429;--error: #ff6b6b;--font-sans: "Noto Sans KR", "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", monospace;--radius: 14px;--radius-sm: 10px;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .2s;--duration-normal: .3s;--duration-slow: .45s;--shadow-card: 0 4px 20px rgba(0, 0, 0, .35);--shadow-card-hover: 0 12px 32px rgba(0, 0, 0, .4), 0 0 0 1px rgba(0, 212, 170, .15);--glow-accent: 0 0 20px rgba(0, 212, 170, .2);--skeleton-bg: rgba(72, 100, 130, .2);--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px}*{box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased}body{margin:0;font-family:var(--font-sans);background:var(--bg);background-image:radial-gradient(ellipse 140% 100% at 50% -30%,rgba(0,212,170,.08) 0%,transparent 50%),radial-gradient(ellipse 100% 80% at 0% 40%,rgba(0,120,200,.06) 0%,transparent 45%),radial-gradient(ellipse 90% 70% at 100% 60%,rgba(80,60,180,.05) 0%,transparent 45%),linear-gradient(180deg,rgba(10,14,20,.97) 0%,var(--bg) 30%,var(--bg) 100%);background-attachment:fixed;color:var(--text);line-height:1.6;min-height:100vh;position:relative}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(0,212,170,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,170,.02) 1px,transparent 1px);background-size:64px 64px;pointer-events:none;z-index:0}#root{position:relative;z-index:1;min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}input,select,button,textarea{font-family:inherit;font-size:1rem;transition:border-color var(--duration-normal) var(--ease-out-quart),box-shadow var(--duration-fast) var(--ease-out-quart)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}a:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-soft);border-radius:4px}button:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent)}button:disabled{opacity:.55;cursor:not-allowed;transform:none}button{cursor:pointer}.reserve-price-chart,.reserve-price-chart .recharts-wrapper,.reserve-price-chart .recharts-surface{cursor:default!important}a.card-link{transition:border-color var(--duration-normal) var(--ease-out-quart),box-shadow var(--duration-normal) var(--ease-out-quart),transform var(--duration-fast) var(--ease-spring)}a.card-link:hover{border-color:#00d4aa80!important;box-shadow:var(--shadow-card-hover)}a.card-link:active{transform:scale(.98)}button:active{transform:scale(.97)}button{transition:transform var(--duration-fast) var(--ease-spring)}.participation-suggestion-item:hover{background:var(--accent-soft)!important}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.85}.recharts-default-tooltip{background:var(--bg-elevated)!important;border:1px solid var(--border)!important;border-radius:var(--radius-sm)!important;padding:10px 14px!important;font-size:13px!important}@keyframes skeleton-shimmer{0%{opacity:.4}50%{opacity:.8}to{opacity:.4}}@keyframes skeleton-spin{to{transform:rotate(360deg)}}.skeleton{animation:skeleton-shimmer 1.4s ease-in-out infinite}.data-table tbody tr{transition:background .15s ease}.data-table tbody tr:hover{background:#00d4aa0f}.data-table thead th{position:sticky;top:0;z-index:1;background:var(--bg-elevated);box-shadow:0 1px 0 var(--border)}.card-glow{box-shadow:var(--shadow-card),0 0 28px #00d4aa14}.numeric{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.info-label{color:var(--text-muted);font-size:13px;font-weight:500}.info-value{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}main{padding:var(--space-3) var(--space-2)!important}@media (max-width: 768px){main{padding:var(--space-2) var(--space-1)!important}}
