:root{--bg:#0f1115;--card:#171a21;--border:#2a2e38;--text:#f2f0ea;--muted:#9aa0ab;--accent:#f5a524;--accent-dim:#7a5416;--live:#ef4444}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}main{max-width:640px;margin:0 auto;padding:2.5rem 1.25rem 4rem}header{text-align:center;margin-bottom:2rem}header h1{font-size:2rem;margin:0 0 .35rem}header p{color:var(--muted);margin:0}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1.5rem;margin-bottom:1.25rem}.countdown{text-align:center}.countdown .label{color:var(--muted);font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem}.countdown .clock{font-size:2.75rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--accent)}.countdown .local-time{color:var(--muted);font-size:.85rem;margin-top:.5rem}.badge-live{display:inline-flex;align-items:center;gap:.4rem;background:rgba(239,68,68,.15);color:var(--live);padding:.3rem .7rem;border-radius:999px;font-size:.8rem;font-weight:600;letter-spacing:.04em;margin-bottom:.75rem}.badge-live .dot{width:7px;height:7px;border-radius:50%;background:var(--live);animation:pulse 1.4s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.video-label{color:var(--muted);font-size:.85rem;font-weight:600;margin-bottom:.6rem;text-align:center}.video-label.live{color:var(--live)}.video-frame{position:relative;width:100%;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#000}.video-frame iframe{width:100%;height:100%;border:0}.video-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:var(--muted);text-align:center;padding:1.5rem}.video-placeholder .paw{font-size:2rem}button{font:inherit;cursor:pointer}.notify-button{width:100%;padding:.85rem 1rem;border-radius:10px;border:1px solid var(--accent-dim);background:var(--accent);color:#171a21;font-weight:600;font-size:1rem;transition:opacity .15s ease}.notify-button:disabled{opacity:.6;cursor:default}.notify-button.subscribed{background:transparent;color:var(--accent)}.status-line{font-size:.85rem;margin-top:.6rem;min-height:1.2em}.status-line,footer{text-align:center;color:var(--muted)}footer{font-size:.8rem;margin-top:2rem}