/* OFFDAY.CLUB: a quiet dashboard around the existing workout engine. */
.noise { display:none; }
.site-header { height:80px; background:var(--ink); backdrop-filter:none; }
.brand-mark svg { filter:none; }
.o-ring { fill:none; stroke:var(--paper); stroke-width:6; }
.o-gap { fill:none; stroke:var(--coral); stroke-width:6; stroke-linecap:round; }
.brand-name { font-size:1rem; letter-spacing:-.035em; white-space:nowrap; }
.site-header .nav-link { min-height:44px; }
.site-header .nav-link span { margin-right:6px; }
.profile-button span { color:#fff; }
.view,.reveal { animation:none; }
.hero { display:block; min-height:0; max-width:1180px; margin:auto; padding:56px 28px 24px; }
.hero-copy { margin-bottom:32px; }
.hero-copy .eyebrow { color:var(--muted); margin:0 0 16px; font-size:.65rem; }
.hero h1 { margin:0; font:500 clamp(2.4rem,5vw,4.1rem)/1.1 Georgia,"Times New Roman",serif; letter-spacing:-.045em; text-transform:none; }
.welcome-line { margin:14px 0 0; color:var(--muted); font-size:.95rem; line-height:1.6; }
.today-session { display:grid; grid-template-columns:minmax(0,1fr) 250px; align-items:center; gap:24px; padding:32px; border:1px solid var(--line); border-radius:28px; background:#18191e; overflow:hidden; }
.session-copy .eyebrow { margin:0 0 16px; font-size:.62rem; }
.session-copy h2 { margin:0 0 12px; font:500 clamp(2rem,4vw,3.2rem)/1.1 Georgia,"Times New Roman",serif; letter-spacing:-.04em; text-transform:none; }
.session-meta { color:var(--muted); font-size:.8rem; }
.hero-note { margin:18px 0 24px; font-size:.86rem; line-height:1.6; max-width:440px; }
.button { min-height:46px; border-radius:14px; font-size:.8rem; }
.button.primary { background:var(--coral); color:#fff; }
.button.ghost { background:#22242b; border-color:var(--line); }
.button:hover { transform:none; }
.focus-orbit { width:230px; max-width:100%; aspect-ratio:1; }
.focus-orbit::before,.focus-orbit::after { display:none; }
.focus-object,.focus-orbit:hover .focus-object,.focus-orbit.is-charged .focus-object { filter:none; }
.orbit { animation:none; box-shadow:none; opacity:.25; border-color:var(--coral); }
.orbit-one { transform:rotateX(60deg) rotateY(15deg); }
.orbit-two { transform:rotateY(60deg); }
.orbit-three { border-color:var(--paper); }
.focus-object>div { animation:none; }
.orbit-hint { bottom:0; font-size:.5rem; letter-spacing:.1em; }
.stat-strip { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; max-width:1180px; margin:auto; padding:0 28px 32px; border:0; }
.stat-strip>div { min-width:0; padding:20px 16px; border:1px solid var(--line); border-radius:20px; background:#15161a; }
.stat-strip strong { font-size:1.6rem; letter-spacing:-.04em; }
.stat-strip span { margin-top:8px; color:var(--muted); font-size:.65rem; line-height:1.5; text-transform:none; letter-spacing:0; }
.progress-stat { grid-column:auto; }
.progress-track { margin-top:14px; height:4px; background:#2d3038; }
.workout-section { max-width:1180px; margin:0 auto; padding:24px 28px 70px; border-radius:0; background:transparent; color:var(--paper); box-shadow:none; scroll-margin-top:96px; }
.workout-section::before { display:none; }
.section-heading { align-items:center; margin-bottom:24px; gap:20px; }
.section-heading h2 { font:500 clamp(1.8rem,3vw,2.6rem)/1.15 Georgia,"Times New Roman",serif; letter-spacing:-.03em; text-transform:none; }
.workout-section .eyebrow { color:var(--muted); font-size:.6rem; }
.session-description { justify-self:end; max-width:470px; }
.session-description p { color:var(--muted); font-size:.8rem; line-height:1.6; margin:0 0 8px; }
#todayRemaining { color:var(--paper); font-size:.75rem; }
.exercise-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.exercise-card { position:relative; display:flex; flex-direction:column; align-items:stretch; gap:16px; min-width:0; min-height:260px; padding:24px; background:#191a1f; border:1px solid var(--line); border-radius:24px; box-shadow:none; transform:none; perspective:none; }
.exercise-card:hover { background:#1d1e24; transform:none; box-shadow:none; }
.exercise-number { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:#2f8bff; color:#fff; font-size:.65rem; }
.exercise-main h3 { font:500 1.25rem/1.2 Georgia,"Times New Roman",serif; overflow-wrap:anywhere; }
.exercise-main p { color:var(--muted); font-size:.76rem; line-height:1.5; }
.exercise-prescription { text-align:left; margin-top:auto; }
.exercise-prescription b { font-size:.9rem; }
.exercise-prescription span { color:var(--muted); margin-top:6px; font-size:.65rem; }
.exercise-actions { display:flex; flex-direction:row; gap:10px; justify-content:space-between; }
.demo-button,.demo-button.watched { min-width:0; min-height:44px; padding:10px 12px; white-space:normal; border-radius:12px; border-color:var(--line); background:#252730; color:var(--paper); font-size:.58rem; line-height:1.4; letter-spacing:.04em; }
.demo-button:hover { background:var(--coral); color:#fff; }
.demo-button.watched { border-color:var(--coral); }
.complete-check { flex-shrink:0; border-color:#686b76; color:var(--paper); }
.exercise-card.done { opacity:1; background:#141920; border-color:#2f8bff; }
.exercise-card.done .complete-check { color:#fff; }
.finish-button { min-height:60px; margin-top:20px; background:#1d1e24; color:var(--muted); font-size:.85rem; box-shadow:none; }
.finish-button.ready { background:var(--coral); color:#fff; box-shadow:none; }
.finish-button.ready b { color:#fff; }
.footer-wordmark { font-size:1rem; letter-spacing:-.025em; }
footer { padding:40px 28px; background:var(--ink); border-top:1px solid var(--line); }
footer>p { color:var(--muted); }
.page-intro { max-width:1180px; margin:auto; padding:56px 28px 36px; }
.page-intro h1 { font:500 clamp(2.6rem,5vw,4rem)/1.1 Georgia,"Times New Roman",serif; letter-spacing:-.04em; text-transform:none; }
.page-intro em,h2 em { color:var(--paper); }
.page-intro>p:last-child { font-size:.95rem; }
.history-summary { grid-template-columns:repeat(3,minmax(0,1fr)); border-radius:20px; background:#191a1f; }
.history-summary>div { min-width:0; padding:20px 16px; }
.history-summary strong { font-size:1.8rem; }
.history-summary span { font-size:.65rem; letter-spacing:0; text-transform:none; overflow-wrap:anywhere; }
.history-item { flex-wrap:wrap; gap:12px; }
.history-item>div { min-width:0; }
.day-card { border:1px solid var(--line); border-radius:22px; min-height:330px; background:#191a1f; }
.day-card:hover,.day-card:focus-visible,.day-card.today { transform:none; box-shadow:none; }
.day-card.today { background:#1d2b40; color:var(--paper); }
.day-card.today p,.day-card.today .day-action { color:var(--paper); }
.day-card.today .day-action { border-color:var(--coral); }
.day-card.today.complete::after { color:var(--paper); }
.week-grid { gap:12px; padding-bottom:40px; }
.plan-builder,.account-achievements,.leaderboard-panel,.sport-grid article,.difficulty-grid span,.difficulty-grid input:checked+span { background:#191a1f; box-shadow:none; }
.leaderboard-panel::before { display:none; }
.leaderboard-heading h2 { text-shadow:none; }
.leaderboard-row:hover { transform:none; box-shadow:none; }
.leaderboard-row.rank-1,.leaderboard-row.rank-2,.leaderboard-row.rank-3 { background:#1d2027; box-shadow:none; }
.leaderboard-row.rank-1>strong { filter:none; }
.screen-impact { animation:none; }
.celebration { visibility:hidden; }
.celebration.open { visibility:visible; }
.reward-burst { text-shadow:none; }
.onboarding-card,.swap-card,.video-shell { background:#18191e; }
.onboarding-card h2,.swap-card h2 { font-size:clamp(2.3rem,6vw,4rem); }
.settings-grid fieldset { min-inline-size:0; }
.settings-grid legend { max-width:100%; white-space:normal; font-size:1rem; }
.profile-fields,.difficulty-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.toggle-list label>span { min-width:0; }
.leaderboard-heading h2 { font-size:clamp(1.8rem,4vw,3rem); }
button:focus-visible,a:focus-visible { outline:2px solid var(--coral); outline-offset:4px; }
@media (max-width:860px) {
  .site-header { display:flex; justify-content:space-between; height:68px; padding:0 20px; }
  .site-header nav { position:fixed; inset:auto 12px max(12px,env(safe-area-inset-bottom)); z-index:30; display:grid; grid-template-columns:repeat(3,1fr); gap:4px; padding:8px; border:1px solid #3b3d45; border-radius:24px; background:#202126; box-shadow:0 8px 24px rgba(0,0,0,.25); transform:none; backdrop-filter:none; }
  .site-header .nav-link { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; padding:8px 4px; border-radius:16px; font-size:.66rem; min-height:52px; }
  .site-header .nav-link span { margin:0; font-size:1.1rem; }
  .site-header .nav-link.active { background:#32343c; }
  .header-actions { margin:0; }
  .hero { padding:32px 20px 20px; }
  .hero-copy { margin-bottom:24px; }
  .today-session { grid-template-columns:minmax(0,1fr) 160px; gap:12px; padding:24px; }
  .focus-orbit { width:160px; }
  .stat-strip { grid-template-columns:repeat(2,minmax(0,1fr)); padding:0 20px 20px; }
  .stat-strip>div { padding:18px; }
  .progress-stat { grid-column:1/-1; }
  .workout-section { margin:0; padding:20px 20px 48px; scroll-margin-top:80px; }
  .section-heading { grid-template-columns:1fr; gap:12px; }
  .session-description { justify-self:start; }
  .page-intro { padding:36px 20px 28px; }
  footer { padding:32px 20px 120px; }
  .focus-orbit * { animation:none!important; filter:none!important; }
  .particle { display:none; }
  .swap-modal,.onboarding,.video-modal,.focus-core { backdrop-filter:none; }
  .celebration { transition:none; }
  .account-grid,.account-community,.settings-grid { width:calc(100% - 40px); }
  .account-settings { width:100%; }
  .account-grid { grid-template-columns:minmax(0,1fr); }
  .profile-fields { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:520px) {
  .brand { gap:6px; }
  .brand-name { font-size:.88rem; }
  .brand-mark { width:28px; height:28px; }
  .brand-mark svg { width:28px; height:28px; }
  .profile-button b { display:none; }
  .today-session { position:relative; grid-template-columns:1fr; padding:24px; }
  .session-copy h2 { padding-right:70px; }
  .focus-orbit { position:absolute; top:24px; right:16px; width:76px; margin:0; }
  .focus-object { width:72%; height:72%; }
  .orbit-hint { display:none; }
  .hero-actions { flex-wrap:nowrap; gap:8px; }
  .hero-actions .button { width:auto; flex:1; padding:12px; font-size:.7rem; }
  .stat-strip { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
  .stat-strip>div { padding:14px 10px; }
  .stat-strip strong { font-size:1.25rem; }
  .stat-strip>.progress-stat:last-child { grid-column:span 2; }
  .exercise-list { gap:10px; }
  .exercise-card { padding:16px; gap:12px; min-height:290px; }
  .exercise-main h3 { font-size:1.08rem; }
  .exercise-main p { font-size:.72rem; }
  .exercise-actions { flex-wrap:wrap; }
  .demo-button { flex:1 1 100%; }
  .complete-check { align-self:flex-end; margin-left:auto; }
  .footer-meta nav { flex-wrap:wrap; }
  .history-summary>div { padding:16px 10px; }
  .history-summary strong { font-size:1.4rem; }
  .account-settings,.account-achievements { padding:20px; }
  .difficulty-grid { grid-template-columns:minmax(0,1fr); }
  .account-achievements .badge-shelf { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
