/* Transparent countdown artwork. Only the shared connection notice owns a plate. */
html.source-page { color-scheme:dark; }
.source-page #tick-up-stage { position:absolute; width:1080px; height:1920px; transform-origin:top left; color:#fffdf2; font-family:Inter,"Segoe UI",sans-serif; }
#tick-up-stage * { box-sizing:border-box; }
.tu-capture { position:absolute; inset:74px 48px auto; text-align:center; text-shadow:0 3px 2px #000, 2px 0 2px #000, -2px 0 2px #000, 0 -2px 2px #000, 0 5px 16px #0009; }
.tu-heading { margin:0 0 10px; }
.tu-brand { font-size:26px; font-weight:750; letter-spacing:7px; margin:0 0 18px; color:#ffd43b; }
.tu-heading h1 { font-size:98px; font-weight:900; line-height:1; letter-spacing:-5px; margin:0; }
.tu-heading h1 span { color:#ffd43b; }
.tu-tagline { font-size:30px; letter-spacing:1px; margin:19px 0 0; }
.tu-mode { font-size:24px; font-weight:750; color:#ffd43b; letter-spacing:2px; margin-top:24px; min-height:30px; }
.tu-timer { position:relative; width:830px; height:830px; margin:22px auto 0; display:grid; align-items:center; }
.tu-dial { width:100%; height:100%; position:absolute; inset:0; overflow:visible; filter:drop-shadow(0 3px 2px #0009); }
.tu-dial circle { fill:none; }
.tu-track { stroke:#fff3; stroke-width:4; }
.tu-ticks { stroke:#fff7; stroke-width:12; stroke-dasharray:2 33.92; }
.tu-major-ticks { stroke:#fffdf2; stroke-width:26; stroke-dasharray:3 176.59; }
.tu-ring { stroke:#ffd43b; stroke-width:9; stroke-linecap:round; transform:rotate(-90deg); transform-origin:400px 400px; stroke-dasharray:2293.36; transition:stroke-dashoffset .2s linear; }
.tu-clock-copy { position:relative; padding-bottom:8px; }
.tu-eyebrow { font-size:28px; font-weight:700; letter-spacing:6px; margin:0 0 16px; color:#ffd43b; }
.tu-clock { display:block; font-size:205px; font-weight:850; line-height:1.12; letter-spacing:-12px; font-variant-numeric:tabular-nums; }
.tu-clock.long { font-size:150px; letter-spacing:-8px; }
.tu-timer-note { font-size:28px; margin:17px 0 0; }
.tu-extension { position:absolute; top:675px; left:-20px; right:-20px; transform:rotate(-5deg); pointer-events:none; }
.tu-extension[hidden], .tu-result[hidden] { display:none; }
.tu-extension>span { display:block; font-size:24px; font-weight:850; letter-spacing:4px; color:#ffd43b; }
.tu-extension>strong { display:block; color:#ffd43b; font-size:76px; line-height:1.05; letter-spacing:-2px; }
.tu-extension>p { margin:8px 0 0; font-size:26px; font-weight:650; }
.tu-extension.rescued>strong, .tu-extension.rescued>span { color:#b0ffd9; }
.tu-stats { display:flex; align-items:center; justify-content:center; gap:90px; margin:55px 0 40px; }
.tu-stats p { margin:0; min-width:240px; }
.tu-stats strong { display:block; font-size:48px; font-weight:750; letter-spacing:-1px; font-variant-numeric:tabular-nums; }
.tu-stats span { display:block; color:#fff7cf; font-size:22px; font-weight:650; letter-spacing:3px; margin-top:6px; }
.tu-stats i { display:block; width:1px; height:62px; background:#ffd43b; opacity:.7; }
.tu-gifts { text-align:left; width:900px; margin:0 auto; display:grid; gap:20px; padding-top:16px; border-top:1px solid #fff4; }
.tu-gift { display:flex; align-items:center; gap:24px; padding:0 20px; }
.tu-gift img { width:72px; height:72px; object-fit:contain; flex:0 0 72px; filter:drop-shadow(0 3px 3px #0009); }
.tu-gift-copy { flex:1; min-width:0; }
.tu-gift-copy strong { font-size:29px; font-weight:750; }
.tu-gift-copy p { font-size:26px; margin:4px 0 0; line-height:1.3; }
.tu-gift>span { font-size:38px; font-weight:850; color:#ffd43b; white-space:nowrap; }
.tu-gift.empty { opacity:.7; }
.tu-footer { margin:38px 0 0; font-size:20px; color:#fff6d2; font-weight:600; }
.tu-result { margin:22px auto 30px; }
.tu-result>strong { font-size:74px; line-height:1; font-weight:900; color:#ffd43b; letter-spacing:-2px; }
.tu-result>p { font-size:28px; line-height:1.4; margin:12px 0; }
.tu-result #next-round { font-size:25px; }
.tu-result button { font:750 26px Inter,"Segoe UI",sans-serif; color:#fffdf2; background:transparent; text-shadow:inherit; border:2px solid #ffd43b; border-radius:999px; padding:16px 32px; margin:6px 0 0; cursor:pointer; }
.tu-result button span { padding-left:10px; color:#ffd43b; }
#tick-up-stage[data-phase=result] .tu-timer { width:610px; height:610px; margin-top:25px; }
#tick-up-stage[data-phase=result] .tu-clock { font-size:150px; }
#tick-up-stage[data-phase=result] .tu-timer-note { display:none; }
#tick-up-stage[data-phase=result] .tu-eyebrow { font-size:25px; }
#tick-up-stage[data-phase=result] .tu-stats { margin:28px 0; gap:60px; }
#tick-up-stage[data-phase=result] .tu-stats strong { font-size:40px; }
#tick-up-stage[data-phase=result] .tu-extension { top:500px; }
#tick-up-stage[data-phase=result] .tu-extension>strong { font-size:55px; }
.source-page #tick-up-stage .tt-core-overlay-status { position:absolute; left:32px; top:1730px; width:1000px; max-width:none; transform:none; margin:0; }
.source-page #tick-up-stage .tt-core-notice { font-size:28px; padding:20px; }
.source-page #tick-up-stage .tt-core-notice strong { font-size:30px; }
#tick-up-stage[data-urgent=true] .tu-clock { color:#ffd43b; }
#tick-up-stage[data-urgent=true] .tu-ring { stroke:#fff1a6; filter:drop-shadow(0 0 14px #ffd43b88); }
#tick-up-stage[data-reduced-motion=true] .tu-ring { transition:none; }

/* Hosted gift list: keep effect lines at the 14px minimum. */
.gift-copy small { font-size: 14px; }
