/* ═══ LIFES A GAMBOL — TOURNAMENT CLOCK ═══ */
:root{--ink:#0a1f12;--felt:#143d24;--cream:#fffef9;--gold:#d4af37;--red:#c0392b;}
*{box-sizing:border-box;}
body{margin:0;background:radial-gradient(ellipse at center,var(--felt) 0%,var(--ink) 75%);color:var(--cream);font-family:'DM Sans',sans-serif;min-height:100vh;}
.tc-wrap{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;gap:clamp(8px,2vh,22px);}
.tc-home{position:fixed;top:14px;left:16px;color:rgba(255,254,249,.55);text-decoration:none;font-size:14px;}
.tc-home:hover{color:var(--gold);}
.tc-level{font-family:'Playfair Display',serif;font-size:clamp(22px,4.5vw,40px);color:var(--gold);letter-spacing:.04em;}
.tc-level.break{color:#9acc9a;}
.tc-time{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(72px,22vw,220px);line-height:1;letter-spacing:.02em;font-variant-numeric:tabular-nums;}
.tc-time.warn{color:var(--red);animation:tcPulse 1s infinite;}
@keyframes tcPulse{50%{opacity:.55;}}
.tc-blinds{display:flex;gap:clamp(18px,6vw,64px);}
.tc-blind{display:flex;flex-direction:column;gap:4px;}
.tc-blind span{font-size:clamp(11px,1.6vw,15px);color:rgba(255,254,249,.6);text-transform:uppercase;letter-spacing:.12em;}
.tc-blind strong{font-size:clamp(30px,7vw,72px);font-weight:700;color:var(--cream);font-variant-numeric:tabular-nums;}
.tc-next{color:rgba(255,254,249,.55);font-size:clamp(13px,2vw,19px);}
.tc-controls{display:flex;gap:12px;margin-top:clamp(4px,1.5vh,14px);flex-wrap:wrap;justify-content:center;}
.tc-btn{background:rgba(255,254,249,.08);border:1px solid rgba(255,254,249,.25);color:var(--cream);border-radius:12px;font-size:20px;padding:12px 20px;min-height:52px;min-width:60px;cursor:pointer;font-family:'DM Sans',sans-serif;font-weight:700;}
.tc-btn:active{transform:scale(.96);}
.tc-btn-main{background:var(--gold);color:#1a1a10;border:none;font-size:18px;padding:12px 30px;}
.tc-modal{position:fixed;inset:0;background:rgba(0,0,0,.72);display:flex;align-items:center;justify-content:center;z-index:50;padding:16px;overflow:auto;}
.tc-modal-box{background:#1a2e1a;border:1px solid rgba(212,175,55,.4);border-radius:16px;padding:24px;max-width:440px;width:100%;text-align:left;}
.tc-modal-box h2{font-family:'Playfair Display',serif;margin:0 0 14px;color:var(--gold);}
.tc-modal-box label{display:block;margin:13px 0;font-size:13.5px;color:#9acc9a;line-height:1.5;}
.tc-modal-box select,.tc-modal-box textarea{width:100%;margin-top:6px;padding:11px;border-radius:9px;border:1px solid rgba(67,160,71,.4);background:rgba(0,0,0,.35);color:var(--cream);font-size:14px;font-family:inherit;}
.tc-modal-box textarea{font-family:ui-monospace,Menlo,monospace;font-size:13px;line-height:1.5;}
.tc-modal-box code{color:var(--gold);}
.tc-check{display:flex;align-items:center;gap:9px;}
.tc-check input{width:auto;accent-color:var(--gold);}
.tc-modal-box .tc-btn-main{width:100%;margin-top:8px;}
@media(max-height:430px){.tc-controls{position:fixed;right:14px;top:50%;transform:translateY(-50%);flex-direction:column;}}

/* The hidden attribute always wins — even over display:flex components. */
[hidden]{display:none!important;}
