/* Dashboard board: 10-foot UI for a TV's built-in browser — large type, flat high
   contrast (not the phone board's translucent glassmorphism, which reads poorly
   from a couch), big focus targets for D-pad/remote navigation. */
.board{width:100%;min-height:100vh;padding:calc(28px + env(safe-area-inset-top)) 40px calc(28px + env(safe-area-inset-bottom))}
.board .login{max-width:520px;margin:12vh auto}
.screen{max-width:1400px;margin:0 auto}
.screen header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}
.header-right{display:flex;align-items:center;gap:10px}
.logout-btn{padding:8px 14px;border:0;border-radius:999px;background:var(--panel);border:1px solid var(--line);color:var(--text);font-size:12px;cursor:pointer}
.clock-time{font-size:64px;font-weight:800;letter-spacing:-0.02em;line-height:1}
.clock-date{color:var(--muted);font-size:20px;margin-top:4px;text-transform:capitalize}
.screen .pill{font-size:14px;padding:8px 14px}

.reminders{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}
.reminder-card{position:relative;background:#11162e;border:2px solid var(--line);border-radius:24px;padding:26px 28px;min-height:150px}
.reminder-title{font-size:26px;font-weight:800;line-height:1.2;margin-bottom:8px}
.reminder-body{color:#c3cbe8;font-size:16px;margin-bottom:14px}
.reminder-countdown{font-size:40px;font-weight:800;color:var(--idle);letter-spacing:-0.02em}
.reminder-card.ringing{border-color:var(--bad);animation:ring-pulse 1.1s ease-in-out infinite}
.reminder-card.ringing .reminder-countdown{color:var(--bad)}
@keyframes ring-pulse{0%,100%{box-shadow:0 0 0 0 rgba(255,83,112,.55)}50%{box-shadow:0 0 0 16px rgba(255,83,112,0)}}
.ack-btn{margin-top:16px;width:100%;padding:16px;font-size:20px;font-weight:800;border:0;border-radius:16px;background:var(--bad);color:#1a0508;cursor:pointer}
.ack-btn:focus-visible,.pair-actions button:focus-visible,#armSoundBtn:focus-visible,.logout-btn:focus-visible{outline:4px solid #78f0ff;outline-offset:3px}

.empty-state{color:var(--muted);font-size:22px;text-align:center;padding:60px 0}

.tasks-wrap{margin-top:36px}
.tasks-wrap h2{font-size:22px;color:#d9e1ff;margin:0 0 14px}
.tasks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.task-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px 18px}
.task-card.bad{border-color:var(--bad)}.task-card.warn{border-color:var(--warn)}.task-card.ok{border-color:var(--ok)}
.task-title{font-size:14px;color:#cad3ee;font-weight:650;margin-bottom:6px}
.task-value{font-size:20px;font-weight:800}
.task-subtitle{color:var(--muted);font-size:13px;margin-top:4px}

.sound-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;background:rgba(5,8,22,.92)}
.sound-overlay button{font-size:26px;font-weight:800;padding:26px 40px;border:0;border-radius:22px;background:linear-gradient(135deg,#78f0ff,#a076ff);color:#07101f;cursor:pointer}

@media (max-width:640px){.board{padding-left:18px;padding-right:18px}.clock-time{font-size:44px}.reminder-title{font-size:21px}.reminder-countdown{font-size:32px}}
