:root{--background: #070B14;--surface: #111827;--surface-hover: #1a2333;--foreground: #D1D5F0;--muted: #7a8599;--border: #1E2837;--primary: #00E5FF;--secondary: #FF006E;--accent: #39FF14;--destructive: #ff4757;--font-display: "Chakra Petch", system-ui, sans-serif;--font-body: "Share Tech Mono", monospace;--radius: 8px;--radius-sm: 4px}*{margin:0;padding:0;box-sizing:border-box}html,body{background:var(--background);color:var(--foreground);font-family:var(--font-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,rgba(0,229,255,.02) 0px,rgba(0,229,255,.02) 1px,transparent 1px,transparent 3px);pointer-events:none;z-index:9999}.app{min-height:100vh;display:flex;flex-direction:column}.navbar{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:64px;background:#070b14f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.navbar-brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:18px;letter-spacing:-.5px;color:var(--foreground)}.navbar-brand .logo-v{color:var(--primary);text-shadow:0 0 12px rgba(0,229,255,.5)}.nav-pills{display:flex;gap:4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:4px}.nav-pill{padding:8px 20px;border:none;background:transparent;color:var(--muted);font-family:var(--font-display);font-size:14px;font-weight:500;cursor:pointer;border-radius:var(--radius-sm);transition:all .2s ease;letter-spacing:.3px}.nav-pill:hover{color:var(--foreground)}.nav-pill.active{color:var(--primary);background:#00e5ff14;box-shadow:0 0 0 1px #00e5ff33}.main-content{flex:1;padding:32px 24px;max-width:1100px;width:100%;margin:0 auto}.page-title{font-family:var(--font-display);font-size:28px;font-weight:700;letter-spacing:-.5px;margin-bottom:6px;color:var(--foreground)}.page-subtitle{font-family:var(--font-body);font-size:14px;color:var(--muted);margin-bottom:28px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;transition:box-shadow .2s ease}.card:hover{box-shadow:0 0 0 1px #ff006e26}.card-glow{box-shadow:0 0 24px #00e5ff0f,inset 0 0 0 1px #00e5ff14}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-field{display:flex;flex-direction:column;gap:8px}.form-field.full{grid-column:1 / -1}.form-label{font-family:var(--font-display);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.form-input,.form-textarea,.form-select{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;color:var(--foreground);font-family:var(--font-body);font-size:14px;transition:border-color .2s ease,box-shadow .2s ease;outline:none;width:100%}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary),0 0 12px #00e5ff26}.form-textarea{resize:vertical;min-height:80px}.form-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2300E5FF' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.form-select option{background:var(--surface);color:var(--foreground)}.btn{font-family:var(--font-display);font-weight:600;font-size:15px;padding:14px 28px;border:none;border-radius:var(--radius);cursor:pointer;transition:all .2s ease;letter-spacing:.5px;display:inline-flex;align-items:center;gap:8px}.btn-primary{background:var(--primary);color:var(--background);box-shadow:0 0 20px #00e5ff33}.btn-primary:hover{box-shadow:0 0 32px #00e5ff66;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-secondary{background:var(--surface);color:var(--foreground);border:1px solid var(--border)}.btn-secondary:hover{border-color:var(--secondary);box-shadow:0 0 12px #ff006e26}.stat-widget{display:flex;flex-direction:column;gap:16px}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-label{font-family:var(--font-display);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.stat-value{font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--primary);text-shadow:0 0 16px rgba(0,229,255,.2)}.stat-value.green{color:var(--accent);text-shadow:0 0 16px rgba(57,255,20,.2)}.stat-value.fuchsia{color:var(--secondary);text-shadow:0 0 16px rgba(255,0,110,.2)}.session-list{display:flex;flex-direction:column;gap:12px}.session-row{display:grid;grid-template-columns:1fr 1fr auto auto auto;gap:16px;align-items:center;padding:16px 20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:box-shadow .2s ease,border-color .2s ease}.session-row:hover{border-color:#00e5ff33;box-shadow:0 0 16px #00e5ff0d}.session-player{font-family:var(--font-display);font-weight:600;font-size:15px;color:var(--foreground)}.session-game{font-family:var(--font-body);font-size:14px;color:var(--muted)}.session-date{font-family:var(--font-body);font-size:13px;color:var(--muted)}.session-duration{font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--primary);text-align:right}.session-score{font-family:var(--font-display);font-size:14px;font-weight:700;color:var(--accent);text-align:right}.session-notes{font-family:var(--font-body);font-size:13px;color:var(--muted);margin-top:4px}.leaderboard{display:flex;flex-direction:column;gap:8px}.lb-row{display:grid;grid-template-columns:48px 1fr auto auto;gap:16px;align-items:center;padding:16px 20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:box-shadow .2s ease}.lb-row:hover{box-shadow:0 0 16px #00e5ff0d}.lb-rank{font-family:var(--font-display);font-size:20px;font-weight:700;text-align:center;color:var(--muted)}.lb-row.top-1 .lb-rank{color:var(--accent);text-shadow:0 0 12px rgba(57,255,20,.4)}.lb-row.top-2 .lb-rank{color:var(--primary);text-shadow:0 0 12px rgba(0,229,255,.3)}.lb-row.top-3 .lb-rank{color:var(--secondary);text-shadow:0 0 12px rgba(255,0,110,.3)}.lb-row.top-1{border-color:#39ff1433;background:linear-gradient(90deg,rgba(57,255,20,.04),var(--surface))}.lb-row.top-2{border-color:#00e5ff26}.lb-row.top-3{border-color:#ff006e26}.lb-player{font-family:var(--font-display);font-weight:600;font-size:16px;color:var(--foreground)}.lb-sessions{font-family:var(--font-body);font-size:12px;color:var(--muted);margin-top:2px}.lb-playtime{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--primary);text-align:right}.lb-best-score{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--accent);text-align:right}.empty-state{text-align:center;padding:60px 20px;color:var(--muted)}.empty-state h3{font-family:var(--font-display);font-size:20px;font-weight:600;color:var(--foreground);margin-bottom:8px}.empty-state p{font-family:var(--font-body);font-size:14px}.loading{text-align:center;padding:40px;color:var(--muted);font-family:var(--font-display);font-size:16px}.loading:after{content:"...";animation:dots 1.5s steps(4,end) infinite}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.toast{position:fixed;bottom:24px;right:24px;z-index:200;padding:16px 24px;background:var(--surface);border:1px solid var(--accent);border-radius:var(--radius);font-family:var(--font-display);font-size:14px;color:var(--accent);box-shadow:0 0 24px #39ff1433;animation:slideIn .3s ease}.toast.error{border-color:var(--destructive);color:var(--destructive);box-shadow:0 0 24px #ff475733}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media (max-width: 768px){.navbar{padding:0 12px;height:56px}.navbar-brand{font-size:15px}.nav-pill{padding:6px 14px;font-size:13px}.main-content{padding:20px 12px}.form-grid{grid-template-columns:1fr}.session-row{grid-template-columns:1fr;gap:8px}.lb-row{grid-template-columns:36px 1fr auto}.lb-best-score{display:none}.page-title{font-size:22px}}
