@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;800;900&display=swap";:root{--bg-color:#0b0f19;--text-main:#f8fafc;--text-muted:#94a3b8;--accent-cyan:#06b6d4;--accent-cyan-glow:#06b6d466;--accent-pink:#ec4899;--panel-bg:#ffffff08;--panel-border:#ffffff14;--input-bg:#0000004d;color:var(--text-main);background:var(--bg-color);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 15%,#06b6d426,#0000 25%),radial-gradient(circle at 85% 30%,#ec489926,#0000 25%);background-attachment:fixed;font-family:Outfit,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}h1,h2,h3,strong{letter-spacing:-.02em;font-weight:800}button,input,select{font:inherit}button{background:linear-gradient(135deg, var(--accent-cyan), #3b82f6);color:#fff;cursor:pointer;box-shadow:0 4px 14px var(--accent-cyan-glow);border:0;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:1rem 1.5rem;font-size:1rem;font-weight:800;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}button:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 6px 20px #06b6d499}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.5;box-shadow:none;background:#334155}button.secondary{box-shadow:none;color:var(--text-main);background:#ffffff1a;border:1px solid #ffffff1a}button.secondary:hover:not(:disabled){background:#ffffff26;box-shadow:0 4px 14px #ffffff0d}button.danger{background:linear-gradient(135deg,#f43f5e,#be123c);box-shadow:0 4px 14px #f43f5e66}input,select{border:1px solid var(--panel-border);background:var(--input-bg);width:100%;color:var(--text-main);border-radius:16px;outline:none;min-height:48px;padding:1rem 1.2rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}input:focus,select:focus{border-color:var(--accent-cyan);box-shadow:0 0 0 3px var(--accent-cyan-glow)}input::placeholder{color:#64748b}label{color:var(--text-muted);gap:.5rem;font-size:.95rem;font-weight:600;display:grid}.app-shell{gap:1.5rem;width:min(1200px,100% - 2rem);margin:0 auto;padding:2rem 0 5rem;display:grid}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.two-thirds{grid-template-columns:minmax(0,1.6fr) minmax(320px,.8fr)}.hero{border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(16px);background:linear-gradient(135deg,#ffffff0d 0%,#ffffff03 100%);border-radius:32px;grid-template-columns:1fr auto;align-items:center;gap:2rem;padding:clamp(2rem,5vw,4rem);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 40px #0003}.hero:before{content:"";pointer-events:none;background:radial-gradient(circle at 100% 0,#ec489933,#0000 50%);position:absolute;inset:0}.hero h1{letter-spacing:-.04em;background:linear-gradient(90deg,#fff,#cbd5e1);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0;font-size:clamp(2.5rem,8vw,5.5rem);line-height:1}.hero p{max-width:600px;color:var(--text-muted);margin-top:1rem;font-size:1.15rem;line-height:1.6}.eyebrow{color:var(--accent-pink);letter-spacing:.2em;text-transform:uppercase;margin:0 0 .5rem;font-size:.8rem;font-weight:900}.hero .eyebrow{color:var(--accent-cyan)}.status-card{text-align:center;background:#06b6d41a;border:1px solid #06b6d44d;border-radius:28px;place-items:center;min-width:180px;padding:2rem;display:grid;box-shadow:0 8px 32px #06b6d41a}.status-card strong{color:var(--accent-cyan);text-shadow:0 0 20px var(--accent-cyan-glow);font-size:4.5rem;line-height:1}.status-card.closed{border-color:var(--panel-border);background:#ffffff08}.status-card.closed strong{color:var(--text-muted);text-shadow:none}.panel{border:1px solid var(--panel-border);background:var(--panel-bg);-webkit-backdrop-filter:blur(12px);border-radius:32px;padding:1.5rem;box-shadow:0 10px 30px #00000026}.panel-heading{border-bottom:1px solid var(--panel-border);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.panel-heading h2{color:#fff;margin:0;font-size:1.5rem}.panel-heading span{color:var(--accent-cyan);white-space:nowrap;background:#06b6d426;border:1px solid #06b6d44d;border-radius:999px;padding:.4rem .8rem;font-size:.9rem;font-weight:800}.inline-form{grid-template-columns:1fr auto;gap:.8rem;display:grid}.player-list{flex-wrap:wrap;gap:.6rem;margin-top:1.5rem;display:flex}.player-list span{color:#e2e8f0;background:#ffffff14;border:1px solid #ffffff1a;border-radius:999px;align-items:center;padding:.6rem 1rem;font-size:.95rem;font-weight:600;display:flex}.match-form,.auto-match{gap:1.2rem;display:grid}.match-form button{grid-column:1/-1;margin-top:.5rem}.schedule-mode{border:1px solid var(--panel-border);background:#0003;border-radius:999px;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;padding:.5rem;display:grid}.mode{color:var(--text-muted);box-shadow:none;background:0 0;padding:.8rem}.mode.active{background:var(--panel-border);color:#fff;box-shadow:0 4px 12px #0003}.match-list{gap:1rem;display:grid}.match-card{border:1px solid var(--panel-border);background:#0003;border-radius:24px;gap:1.2rem;padding:1.25rem;transition:transform .2s,box-shadow .2s;display:grid}.match-card:hover{border-color:#ffffff26;box-shadow:0 8px 20px #0003}.match-card>div:first-child{flex-wrap:wrap;align-items:center;gap:.6rem;font-size:1.1rem;font-weight:600;display:flex}.match-card span{color:var(--accent-pink);font-weight:800}.score-form{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.score-form input{text-align:center;max-width:90px;padding:.8rem;font-size:1.25rem;font-weight:800}.score-form span{color:var(--text-muted);font-weight:800}.score-form button{flex-grow:1}.finished-match{color:var(--accent-cyan);background:#06b6d40d;border:1px solid #06b6d433;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;padding:1rem;font-weight:800;display:flex}.leaderboard ol{counter-reset:rank;gap:.8rem;margin:0 0 1.5rem;padding:0;display:grid}.leaderboard li{border:1px solid var(--panel-border);background:#0003;border-radius:20px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:1rem;padding:1rem 1.25rem;font-weight:600;display:grid}.leaderboard li:first-child{background:linear-gradient(90deg,#facc151a,#0003);border-left:4px solid #facc15}.leaderboard li:nth-child(2){background:linear-gradient(90deg,#94a3b81a,#0003);border-left:4px solid #94a3b8}.leaderboard li:nth-child(3){background:linear-gradient(90deg,#b453091a,#0003);border-left:4px solid #b45309}.leaderboard small{color:var(--text-muted);white-space:nowrap;font-weight:400}.leaderboard button{width:100%}.field+.field,.hint+.danger{margin-top:1rem}.hint,.empty{color:var(--text-muted);margin:0;font-size:.95rem;line-height:1.6}.update-banner,.toast{border-radius:20px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;width:100%;margin:1.5rem 0;padding:1rem 1.25rem;font-weight:600;animation:.3s ease-out slideIn;display:flex}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.update-banner{color:#78350f;background:linear-gradient(90deg,#fbbf24,#f59e0b);box-shadow:0 4px 20px #f59e0b4d}.toast{color:#fce7f3;text-align:left;background:#ec48991a;border:1px solid #ec489966;box-shadow:0 4px 20px #ec489933}.player-load,.suggested-match{border:1px solid var(--panel-border);background:#0003;border-radius:20px;gap:.8rem;padding:1.25rem;display:grid}.player-load small,.suggested-match small{color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:800}.player-load ul{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.player-load li{border-bottom:1px solid #ffffff0d;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding-bottom:.5rem;display:flex}.player-load li span{flex-grow:1}.player-load li:last-child{border-bottom:none;padding-bottom:0}.player-load li small{color:var(--text-muted);text-transform:none;letter-spacing:0;font-weight:600}.suggested-match span{color:var(--text-main);font-size:1.1rem;font-weight:700}@media (width<=900px){.hero{text-align:center;grid-template-columns:1fr;padding:3rem 1.5rem}.hero p{margin:1rem auto 0}}@media (width<=820px){.grid,.two-thirds{grid-template-columns:1fr}.status-card{min-width:0}}@media (width<=560px){.app-shell{gap:1rem;width:100%;padding:1rem 1rem 5rem}.hero,.panel{border-radius:24px;padding:1.25rem}.hero h1{font-size:2.5rem}.inline-form{grid-template-columns:1fr}.score-form{justify-content:center}.score-form button{flex-basis:100%;width:100%}.leaderboard li{grid-template-columns:1fr auto}.leaderboard li span{grid-column:1/-1}}
