:root{--bg:#f4f6f3;--card:#fff;--text:#17201b;--muted:#5d6b63;--accent:#1f7a4d;--accent-text:#fff;--border:#d5ddd8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:#111613;--card:#1b231e;--text:#e8eee9;--muted:#9aa9a0;--accent:#3fb47a;--accent-text:#0b120e;--border:#2d3a32;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#111613;--card:#1b231e;--text:#e8eee9;--muted:#9aa9a0;--accent:#3fb47a;--accent-text:#0b120e;--border:#2d3a32;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--border);background:var(--card);border-radius:12px;padding:12px 16px}button:disabled{opacity:.45;cursor:default}.app{max-width:480px;margin:0 auto;padding:16px}header{justify-content:space-between;align-items:center;display:flex}h1{margin:0;font-size:1.3rem}h2{font-size:1.15rem}.header-buttons{gap:8px;display:flex}.lang{align-items:center;padding:6px 10px;font-size:.85rem;display:flex}.primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent);width:100%;padding:16px;font-size:1.1rem;font-weight:600}.link{color:var(--muted);background:0 0;border:none;margin:24px auto 0;text-decoration:underline;display:block}.hint{color:var(--muted);font-size:.9rem}.create{flex-direction:column;gap:14px;display:flex}.create label{flex-direction:column;gap:6px;display:flex}.create input,.create select{border:1px solid var(--border);background:var(--card);border-radius:10px;padding:12px;font-size:1.05rem}fieldset{border:none;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.player-row{gap:8px;display:flex}.player-row input{flex:1;min-width:0}.player-row button{padding:0 14px}legend{margin-bottom:6px}.tabs{gap:8px;margin-top:16px;display:flex}.tabs button{flex:1}.tabs button[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);font-weight:600}.court{text-align:left;flex-direction:column;gap:8px;width:100%;margin-bottom:16px;padding:16px;display:flex}.court-label{color:var(--muted);font-size:.85rem}.team{justify-content:space-between;font-size:1.15rem;display:flex}.byes{margin:0 0 16px}.upcoming{background:var(--card);border:1px solid var(--border);border-radius:12px;margin-top:16px;padding:12px 16px}.upcoming summary{cursor:pointer;font-weight:600}.upcoming h3{margin:16px 0 4px;font-size:1rem}.upcoming p{margin:4px 0}.overlay{background:#00000080;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.keypad{background:var(--bg);border-radius:16px 16px 0 0;flex-direction:column;gap:8px;width:100%;max-width:480px;padding:16px;display:flex}.score-row{justify-content:space-between;font-size:1.15rem;display:flex}.score-row[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--accent)}.keys{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.keys button{padding:16px 0;font-size:1.6rem}.ranking{border-collapse:collapse;background:var(--card);border-radius:12px;width:100%;overflow:hidden}.ranking th,.ranking td{text-align:left;border-bottom:1px solid var(--border);padding:12px}.ranking td:last-child,.ranking th:last-child{text-align:right;font-weight:600}.ranking th:nth-child(n+3):not(:last-child),.ranking td:nth-child(n+3):not(:last-child){text-align:center;color:var(--muted);padding:12px 4px}.place{align-items:center;gap:4px;display:flex}.stat-icon{vertical-align:-3px}.ranking th .stat-icon{color:var(--text)}.legend{flex-wrap:wrap;gap:4px 16px;display:flex}.player-toggle{text-align:left;-webkit-text-decoration:underline dotted var(--muted);text-decoration:underline dotted var(--muted);text-underline-offset:4px;background:0 0;border:none;padding:0}.ranking .history td{text-align:left;color:var(--muted);padding-top:0;font-size:.9rem;font-weight:400}.ranking .history p{margin:4px 0}.share{background:var(--card);border:1px solid var(--border);border-radius:12px;margin-top:16px;padding:12px 16px}.share summary{cursor:pointer;font-weight:600}.qr{background:#fff;border-radius:8px;margin:16px auto;display:block}.share-row{gap:8px;display:flex}.share-row input{border:1px solid var(--border);background:var(--bg);border-radius:10px;flex:1;min-width:0;padding:12px}.good-moment{border:1px solid var(--accent);color:var(--accent);border-radius:12px;padding:12px 16px;font-weight:600}.finish{width:100%;color:var(--muted);margin-top:16px}.podium{text-align:center;grid-template-columns:repeat(3,1fr);align-items:end;gap:8px;margin:0 0 8px;padding:0;list-style:none;display:grid}.podium li{flex-direction:column;align-items:center;gap:4px;min-width:0;display:flex}.podium b{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.podium svg{width:32px;height:32px}.podium span{color:var(--muted);font-size:.9rem}.podium .block{background:var(--card);border:1px solid var(--border);border-radius:10px 10px 0 0;justify-content:center;align-items:center;width:100%;font-size:1.5rem;font-weight:700;display:flex}.step-1 .block{height:110px}.step-2 .block{height:80px}.step-3 .block{height:60px}.confetti{pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti span{opacity:0;border-radius:2px;width:8px;height:14px;animation:linear forwards confetti-fall;position:absolute;top:-12px}@keyframes confetti-fall{0%{opacity:1;transform:translateY(0)rotate(0)}90%{opacity:1}to{opacity:0;transform:translateY(105vh)rotate(720deg)}}@media (prefers-reduced-motion:reduce){.confetti{display:none}}
