:root{--hue-primary: 220;--hue-accent: 270;--hue-gold: 42;--bg-dark: hsl(var(--hue-primary), 25%, 6%);--bg-panel: hsla(var(--hue-primary), 30%, 12%, .85);--bg-panel-glass: hsla(var(--hue-primary), 30%, 14%, .5);--text-main: hsl(var(--hue-primary), 15%, 95%);--text-muted: hsl(var(--hue-primary), 15%, 55%);--accent-color: hsl(var(--hue-accent), 75%, 60%);--accent-glow: hsla(var(--hue-accent), 80%, 55%, .5);--accent-gradient: linear-gradient(135deg, hsl(var(--hue-accent), 75%, 55%) 0%, hsl(calc(var(--hue-accent) + 30), 70%, 60%) 100%);--gold: hsl(var(--hue-gold), 85%, 55%);--gold-glow: hsla(var(--hue-gold), 90%, 50%, .4);--gold-gradient: linear-gradient(135deg, hsl(var(--hue-gold), 85%, 55%) 0%, hsl(calc(var(--hue-gold) + 15), 90%, 65%) 100%);--success: hsl(145, 65%, 45%);--danger: hsl(0, 70%, 55%);--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--shadow-sm: 0 4px 12px -2px rgba(0, 0, 0, .2);--shadow-lg: 0 12px 40px -8px rgba(0, 0, 0, .5);--shadow-glow: 0 0 30px var(--accent-glow)}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{box-shadow:0 0 0 0 var(--gold-glow)}50%{box-shadow:0 0 20px 5px var(--gold-glow)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}body{margin:0;min-height:100vh;background-color:var(--bg-dark);background-image:radial-gradient(ellipse at 15% 10%,hsla(var(--hue-accent),60%,25%,.25) 0%,transparent 50%),radial-gradient(ellipse at 85% 90%,hsla(var(--hue-gold),60%,25%,.2) 0%,transparent 50%),radial-gradient(ellipse at 50% 50%,hsla(var(--hue-primary),40%,15%,.3) 0%,transparent 70%);background-size:200% 200%;animation:gradientShift 20s ease-in-out infinite;color:var(--text-main);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{max-width:1400px;margin:0 auto;padding:1.5rem;text-align:center}.app-container{width:100%;display:flex;flex-direction:column;align-items:center}button{background:var(--bg-panel);border:1px solid rgba(255,255,255,.08);color:var(--text-main);padding:.7em 1.4em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:relative;overflow:hidden}button:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 50%);opacity:0;transition:opacity .3s ease}button:hover{background:var(--accent-color);border-color:var(--accent-color);box-shadow:0 4px 20px var(--accent-glow),0 0 0 1px var(--accent-color);transform:translateY(-2px)}button:hover:before{opacity:1}button:active{transform:translateY(0) scale(.98)}button:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.glass-panel{background:var(--bg-panel-glass);backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);box-shadow:var(--shadow-lg),inset 0 1px #ffffff0d;animation:scaleIn .4s cubic-bezier(.4,0,.2,1)}input{background:#0006;border:1px solid rgba(255,255,255,.1);color:#fff;padding:12px 16px;border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;transition:all .25s ease}input:hover{border-color:#fff3}input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-glow)}input::placeholder{color:var(--text-muted)}.fade-in{animation:fadeIn .5s ease forwards}.gradient-text{background:var(--gold-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn-primary{background:var(--gold-gradient)!important;color:#000!important;font-weight:700!important;border:none!important;box-shadow:0 4px 15px var(--gold-glow)}.btn-primary:hover{box-shadow:0 6px 25px var(--gold-glow),0 0 0 2px var(--gold);transform:translateY(-3px)}.btn-primary.pulse{animation:pulse 2s ease-in-out infinite}.btn-accent{background:var(--accent-gradient)!important;color:#fff!important;border:none!important}.btn-danger{background:var(--danger)!important;color:#fff!important}.btn-ghost{background:transparent!important;border:1px solid rgba(255,255,255,.15)!important}.btn-ghost:hover{background:#ffffff1a!important;border-color:#ffffff40!important}.score-table{width:100%;border-collapse:separate;border-spacing:0}.score-table th{padding:1rem;font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:.5px}.score-table td{padding:.5rem;transition:background .2s ease}.score-table tbody tr:nth-child(odd){background:#ffffff05}.score-table tbody tr:hover{background:#ffffff0d}.modal-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn .2s ease}.modal-content{animation:scaleIn .3s cubic-bezier(.34,1.56,.64,1)}input[type=checkbox]{appearance:none;-webkit-appearance:none;width:22px;height:22px;border:2px solid rgba(255,255,255,.3);border-radius:6px;background:transparent;cursor:pointer;transition:all .2s ease;position:relative}input[type=checkbox]:checked{background:var(--accent-color);border-color:var(--accent-color)}input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:14px;font-weight:700}input[type=checkbox]:hover{border-color:var(--accent-color)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0003;border-radius:4px}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}@media(max-width:768px){#root{padding:1rem}button{padding:.6em 1em}}@keyframes score-pop{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}@keyframes gold-shimmer{0%{box-shadow:0 0 0 var(--gold)}50%{box-shadow:0 0 15px var(--gold)}to{box-shadow:0 0 0 var(--gold)}}.animate-score{animation:score-pop .4s cubic-bezier(.175,.885,.32,1.275) forwards}.last-updated{animation:gold-shimmer .6s ease-out}.pwa-toast{position:fixed;top:24px;left:50%;transform:translate(-50%);z-index:1000;padding:24px;display:flex;flex-direction:column;gap:16px;align-items:center;text-align:center;min-width:320px;max-width:90vw}.pwa-message{font-weight:500;font-size:1.05rem;color:var(--text-main)}.pwa-buttons{display:flex;gap:12px;justify-content:center;width:100%}.pwa-buttons button{flex:1}.toast-container{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:12px;z-index:9999}.toast{padding:16px 20px;border-radius:var(--radius-md);background:var(--bg-panel-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-lg);border-left:4px solid transparent;animation:fadeIn .3s ease;min-width:300px;justify-content:space-between}.toast-success{border-left-color:var(--success)}.toast-warning{border-left-color:var(--gold)}.toast-error{border-left-color:var(--danger)}.toast-info{border-left-color:var(--accent-color)}.toast-close{background:transparent;border:none;color:#fff9;font-size:1.2rem;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.toast-close:hover{color:#fff;background:transparent;transform:none;box-shadow:none;border:none}
