:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#f7f9ff;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:grid;place-items:center;padding:36px 22px;background:#071526 url('/background.png') center center/cover fixed no-repeat}body:before{content:"";position:fixed;inset:0;background:linear-gradient(90deg,rgba(3,13,29,.31),rgba(3,12,27,.48));pointer-events:none}.glass{position:relative;width:min(1200px,100%);min-height:465px;display:grid;grid-template-columns:1.05fr 1px 1fr;align-items:center;gap:42px;padding:36px 46px;background:linear-gradient(120deg,rgba(122,163,213,.22),rgba(17,32,56,.52) 54%,rgba(8,16,30,.69));border:1px solid rgba(237,244,255,.33);border-radius:5px;box-shadow:0 20px 75px rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.11);backdrop-filter:blur(25px) saturate(115%);-webkit-backdrop-filter:blur(25px) saturate(115%)}.timer-panel{display:flex;align-items:center;justify-content:center;flex-direction:column;min-width:0}.dial{width:min(320px,100%);aspect-ratio:1;position:relative;display:grid;place-items:center}.ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.ring circle{fill:none;stroke-width:7;stroke-linecap:round}.track{stroke:rgba(157,185,230,.25)}.progress{stroke:#307cff;stroke-dasharray:911.06;stroke-dashoffset:calc(911.06 * (1 - var(--progress)));transition:stroke-dashoffset .15s linear}.clock{font-size:clamp(54px,6vw,82px);font-weight:430;letter-spacing:-.065em;font-variant-numeric:tabular-nums;text-shadow:0 1px 10px rgba(0,0,0,.08)}.timer-actions{display:flex;align-items:center;justify-content:center;gap:58px;margin-top:-29px;z-index:1}.round{display:grid;place-items:center;border:0;border-radius:50%;cursor:pointer;color:white;transition:transform .15s,background .15s}.round:hover,.adjust:hover{transform:translateY(-2px)}.round svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.round.secondary{width:70px;height:70px;background:rgba(121,149,190,.22);border:1px solid rgba(255,255,255,.06)}.round.primary{width:100px;height:100px;background:#2875f9;box-shadow:0 5px 20px rgba(28,103,242,.15)}.round.primary svg{width:38px;height:38px;margin-left:4px}.separator{width:1px;height:390px;background:rgba(210,224,247,.29)}.score-panel{min-width:0;align-self:stretch;display:flex;justify-content:center;flex-direction:column}.score-panel h1{font-size:clamp(23px,2.35vw,31px);font-weight:650;letter-spacing:-.03em;margin:0 0 21px;white-space:nowrap}.players{border-top:1px solid rgba(213,225,245,.2)}.player{display:grid;grid-template-columns:55px minmax(90px,1fr) 48px 62px 55px 55px;gap:10px;align-items:center;min-height:83px;border-bottom:1px solid rgba(213,225,245,.16)}.player:last-child{border-bottom:0}.emoji{font-size:43px;line-height:1}.name{font-size:20px}.wins{font-size:31px;font-weight:700;text-align:center;font-variant-numeric:tabular-nums}.percent{font-size:24px;color:#4b94ff;font-weight:550;text-align:center;font-variant-numeric:tabular-nums}.adjust{height:58px;width:55px;border:0;border-radius:12px;color:white;font-size:36px;font-weight:300;cursor:pointer;transition:transform .15s}.minus{background:rgba(137,156,186,.24)}.plus{background:#2d79fa}.adjust:disabled{opacity:.4;cursor:not-allowed;transform:none}.status{height:18px;font-size:12px;color:#c8d8ee;margin-top:6px}@media(max-width:960px){.glass{gap:24px;padding:30px 25px}.player{grid-template-columns:40px minmax(70px,1fr) 34px 49px 42px 42px;gap:6px}.emoji{font-size:33px}.name{font-size:17px}.wins{font-size:26px}.percent{font-size:20px}.adjust{width:42px;height:47px;font-size:30px}.timer-actions{gap:30px}.score-panel h1{font-size:24px}}@media(max-width:700px){body{padding:20px 12px;background-attachment:scroll}.glass{max-width:490px;grid-template-columns:1fr;gap:22px;padding:24px 20px 17px}.separator{height:1px;width:100%}.dial{width:min(290px,90%)}.clock{font-size:67px}.timer-actions{gap:45px}.round.secondary{width:58px;height:58px}.round.primary{width:82px;height:82px}.score-panel h1{font-size:clamp(21px,5vw,27px);white-space:normal}.player{grid-template-columns:40px minmax(75px,1fr) 36px 48px 42px 42px;min-height:72px}.status{margin-top:8px}}@media(max-width:390px){.glass{padding:20px 12px}.player{grid-template-columns:34px minmax(64px,1fr) 29px 40px 35px 35px;gap:5px}.emoji{font-size:30px}.name{font-size:15px}.wins{font-size:23px}.percent{font-size:17px}.adjust{width:35px;height:40px;font-size:27px}}

/* Matte glass without edge highlights */
.glass {
    border: none;
    box-shadow: 0 20px 75px rgba(0, 0, 0, .3);
}


/* Admin controls: hidden without shifting the score columns. */
.players .adjust{visibility:hidden;pointer-events:none}
.players.admin-active .adjust{visibility:visible;pointer-events:auto}
.admin-lock{position:absolute;right:10px;top:9px;z-index:10;background:transparent;border:0;opacity:.48;font-size:16px;cursor:pointer;padding:6px;line-height:1}
.admin-lock:hover{opacity:1}
.admin-dialog[hidden]{display:none}
.admin-dialog{position:absolute;right:12px;top:42px;z-index:20;width:min(270px,calc(100% - 24px));padding:18px;background:rgba(13,28,51,.97);border:1px solid rgba(255,255,255,.15);border-radius:10px;box-shadow:0 12px 35px rgba(0,0,0,.35)}
.admin-form{display:flex;flex-direction:column;gap:10px}
.admin-form label{font-size:14px}
.admin-form input{width:100%;padding:10px;border-radius:6px;border:1px solid #60728d;background:#0d1b30;color:white;font-size:16px}
.admin-form-actions{display:flex;gap:8px}
.admin-form-actions button{padding:8px 12px;border:0;border-radius:6px;cursor:pointer}
.admin-form-actions button:first-child{background:#2d79fa;color:white}
.admin-error{color:#ffb6b6;font-size:12px;margin:0}
