:root{--paper: #f1efe7;--paper-strong: #fbfaf4;--ink: #101010;--line: #111111;--soft-line: rgba(17, 17, 17, .14);--accent: #dbc95e;--accent-2: #bedbc8;--danger: #edb6b8;--muted: #6d6a63;--white: #ffffff;--shadow: 0 18px 40px rgba(17, 17, 17, .08)}body{background:radial-gradient(circle at top left,rgba(219,201,94,.28),transparent 30%),radial-gradient(circle at right center,rgba(190,219,200,.3),transparent 26%),linear-gradient(180deg,#efede4,#ebe7db);color:var(--ink)}a{color:inherit}button,input,select,table{font:inherit}button,input,select{border:2px solid var(--line);border-radius:16px;background:var(--paper-strong)}input,select{width:100%;padding:.82rem .95rem}button{cursor:pointer;padding:.8rem 1.1rem;font-weight:700}button:disabled{opacity:.65;cursor:not-allowed}.primary-btn{background:var(--ink);color:var(--paper-strong)}.ghost-btn{background:transparent;color:var(--ink)}.danger-btn{background:var(--danger);color:var(--ink)}.eyebrow{margin:0;letter-spacing:.18em;text-transform:uppercase;font-size:.72rem}.error-text,.success-text,.state-copy,.status-pill,.muted-pill,.session-user,.session-brand span,.log-meta,.admin-shortcut-card span,.task-summary p,.photo-card-copy span,.challenge-item span,.exercise-row span{color:var(--muted)}.error-text{color:#922f2f}.success-text{color:#2d6a40}.status-pill,.muted-pill{display:inline-flex;align-items:center;padding:.45rem .8rem;border:2px solid var(--line);border-radius:999px;background:var(--paper-strong)}.muted-pill{background:#1111110f}.button-row{display:flex;flex-wrap:wrap;gap:.75rem}.checkbox-line{display:flex;align-items:center;gap:.6rem}.checkbox-line input{width:auto}.session-shell,.admin-shell,.dashboard-shell{min-height:100vh}.session-header,.admin-header,.dashboard-topline{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem}.session-brand p,.admin-brand p,.dashboard-topline h1,.input-landing-hero h1,.input-page-head h1,.section-heading h2{font-family:Segoe Print,Bradley Hand,Marker Felt,cursive}.session-brand p,.admin-brand p{margin:0;font-size:clamp(1.8rem,4vw,3.3rem);line-height:1}.session-actions,.admin-user-strip{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.session-link,.admin-back-link,.admin-nav-link{text-decoration:none;border:2px solid var(--line);border-radius:999px;padding:.6rem .9rem;background:var(--paper-strong)}.session-main,.admin-main{width:min(1200px,calc(100vw - 2rem));margin:0 auto 2rem}.input-landing,.input-page-card,.admin-section-card{background:#fbfaf4eb;border:3px solid var(--line);border-radius:30px;padding:1.35rem;box-shadow:var(--shadow)}.input-landing-hero h1,.input-page-head h1,.section-heading h2,.dashboard-topline h1{margin:.15rem 0 .35rem;font-size:clamp(2rem,4vw,3.4rem)}.input-shortcut-grid,.admin-shortcut-grid,.photo-grid,.goal-card-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.input-shortcut-card,.admin-shortcut-card{display:grid;gap:.5rem;border:3px solid var(--line);border-radius:24px;background:var(--white);padding:1rem;text-decoration:none;transition:transform .18s ease}.input-shortcut-card:hover,.admin-shortcut-card:hover,.admin-nav-link:hover,.session-link:hover,.admin-back-link:hover{transform:translateY(-2px)}.input-shortcut-card strong,.admin-shortcut-card strong,.task-summary h2,.tv-board-title h2,.goal-card h3,.section-heading h2,.admin-form-block h3,.cup-card h3{font-size:1.2rem}.input-shortcut-card span,.admin-shortcut-card p,.admin-shortcut-card span{font-size:.95rem}.input-page-head,.section-heading,.goals-stage-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.form-columns,.admin-split-layout{display:grid;gap:1rem;grid-template-columns:1.6fr 1fr}.form-panel,.side-panel,.admin-form-block,.cup-card,.goal-card{display:grid;gap:.85rem;background:var(--white);border:3px solid var(--line);border-radius:24px;padding:1rem}.task-summary,.dashboard-photo-strip,.tv-board-column,.submissions-strip{display:grid;gap:.6rem}.side-panel,.tv-board-column,.submissions-strip{align-content:start}.rank-list,.status-list,.mini-list{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}.rank-list li,.mini-list li,.status-list-item,.admin-list-item,.challenge-item,.exercise-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;border:2px solid var(--line);border-radius:18px;background:var(--paper-strong);padding:.75rem .9rem}.status-active,.challenge-active{background:var(--paper-strong)}.status-upcoming,.challenge-upcoming{background:#1111110f}.status-completed,.challenge-completed{background:var(--accent-2)}.status-failed,.challenge-failed{background:var(--danger)}.exercise-stack,.admin-entity-stack{display:grid;gap:1rem}.time-input-pair{display:grid;gap:.5rem;grid-template-columns:repeat(2,minmax(80px,1fr))}.photo-card,.dashboard-photo-strip{border:3px solid var(--line);border-radius:24px;background:var(--white);overflow:hidden}.photo-frame,.dashboard-photo-frame{aspect-ratio:4 / 3;background:linear-gradient(135deg,#dbc95e40,#bedbc83d)}.photo-frame img,.dashboard-photo-frame img{width:100%;height:100%;object-fit:cover;display:block}.photo-card-copy,.dashboard-photo-copy{display:grid;gap:.2rem;padding:.9rem 1rem 1rem}.dashboard-shell{padding:1rem 1.25rem 2rem}.live-indicator{display:inline-flex;align-items:center;gap:.55rem;border:2px solid var(--line);border-radius:999px;padding:.5rem .9rem;background:var(--white)}.live-dot{width:.7rem;height:.7rem;border-radius:999px;background:#2d6a40;animation:pulse 1.4s infinite}.dashboard-stage{display:grid;gap:1rem;animation:fadeUp .3s ease}.tv-board{display:grid;gap:1rem;grid-template-columns:1.1fr 1.4fr}.tv-board-column,.dashboard-photo-strip,.goal-card,.cup-card,.submissions-strip{background:#fbfaf4f5;border:3px solid var(--line);border-radius:28px;padding:1rem}.tv-board-title,.goals-stage-head{border-bottom:3px solid var(--line);padding-bottom:.6rem}.challenge-list,.cup-grid{display:grid;gap:.7rem}.challenge-item div,.exercise-row div,.admin-list-item div{display:grid;gap:.15rem}.challenge-metric,.goal-card-total{font-size:clamp(2rem,5vw,4.4rem);line-height:.95;font-family:Segoe Print,Bradley Hand,Marker Felt,cursive}.compact-table,.admin-log-table{width:100%;border-collapse:collapse}.compact-table th,.compact-table td,.admin-log-table th,.admin-log-table td{padding:.55rem .5rem;border-bottom:1px solid var(--soft-line);text-align:left;vertical-align:top}.progress-track{height:16px;border:2px solid var(--line);border-radius:999px;background:#11111114;overflow:hidden}.progress-track span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#bba53a)}.goal-card-top,.goal-card-tables,.admin-item-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.goal-card-tables>div{flex:1}.goal-card-timer{margin:0}.admin-nav{display:flex;gap:.65rem;padding:0 1.5rem 1.25rem;flex-wrap:wrap}.admin-nav-link.active{background:var(--ink);color:var(--paper-strong)}.admin-grid{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.admin-form-inline,.admin-log-actions{display:flex;gap:.75rem;align-items:center}.admin-list-item{background:var(--white)}.admin-log-table-wrap{overflow:auto}.log-meta{margin-top:.3rem;font-size:.86rem}.data-wave-a .dashboard-stage,.data-wave-b .dashboard-stage{animation:dataWave .5s ease}@keyframes pulse{0%,to{transform:scale(.95)}50%{transform:scale(1.15)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes dataWave{0%{transform:scale(.995);opacity:.92}to{transform:scale(1);opacity:1}}@media(max-width:980px){.tv-board,.form-columns,.admin-split-layout{grid-template-columns:1fr}.goal-card-tables,.goal-card-top,.admin-item-head,.session-header,.admin-header,.dashboard-topline{flex-direction:column}}@media(max-width:720px){.session-main,.admin-main{width:min(1200px,calc(100vw - 1rem))}.admin-form-inline,.admin-log-actions,.session-actions{flex-direction:column;align-items:stretch}.dashboard-shell{padding-inline:.5rem}}:root{font-family:Trebuchet MS,Avenir Next,sans-serif;line-height:1.4;font-weight:500;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px}h1,h2,h3,h4,p{margin-top:0}
