/* RESET/27 · Design version 3 · "Field · Bold"
   Scoped to <html data-design="3">. Loads after app.css; overrides its tokens and components.
   Type: Big Shoulders Display (display) + Barlow (body), self-hosted in /fonts (CSP allows same-origin only). */
@font-face{font-family:"Big Shoulders Display";font-style:normal;font-weight:100 900;font-display:swap;src:url('/fonts/BigShouldersDisplay.woff2') format('woff2')}
@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/Barlow-Regular.woff2') format('woff2')}
@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/Barlow-Medium.woff2') format('woff2')}
@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/Barlow-SemiBold.woff2') format('woff2')}
@font-face{font-family:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/Barlow-Bold.woff2') format('woff2')}

:root[data-design="3"]{--display:"Big Shoulders Display","Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;--body:Barlow,"Segoe UI",system-ui,sans-serif;font-family:var(--body);
 --bg:#0f0f0e;--surface:#161918;--surface2:#1f2220;--ink:#f2f1ec;--muted:#8c8b86;--muted2:#b5b3ad;--line:#2a2a27;--line2:#3a3a37;
 --accent:#f67d51;--accent-ink:#f67d51;--accent-soft:#33150e;--on-accent:#141412;
 --green:#6fc082;--blue:#43b2e1;--purple:#ae96da;--orange:#f37e61;
 --tint-green:#0b2612;--tint-purple:#231933;--tint-orange:#33150e;--tint-blue:#002332;
 --radius:20px;--shadow:0 12px 32px #00000040;color-scheme:dark}
:root[data-design="3"][data-theme=light]{--bg:#f4f3f0;--surface:#ffffff;--surface2:#ecEAE5;--ink:#141412;--muted:#6b6a66;--muted2:#4d4c48;--line:#e2e0da;--line2:#cfcdc6;
 --accent:#f67d51;--accent-ink:#c24e24;--accent-soft:#ffddd2;--on-accent:#141412;
 --green:#33854a;--blue:#007daa;--purple:#6e519d;--orange:#d05f43;
 --tint-green:#d1f2d7;--tint-purple:#ede1ff;--tint-orange:#ffddd2;--tint-blue:#c7efff;--shadow:0 8px 24px #00000012;color-scheme:light}
[data-design="3"] .activity-run,[data-design="3"] .activity-meal,[data-design="3"] .activity-recovery{--activity-color:var(--orange);--activity-tint:var(--tint-orange)}
[data-design="3"] .activity-swim,[data-design="3"] .activity-water{--activity-color:var(--blue);--activity-tint:var(--tint-blue)}
[data-design="3"] .activity-conditioning,[data-design="3"] .activity-weight{--activity-color:var(--purple);--activity-tint:var(--tint-purple)}
[data-design="3"] .activity-walk,[data-design="3"] .activity-steps{--activity-color:var(--green);--activity-tint:var(--tint-green)}

/* ---------- base ---------- */
[data-design="3"] body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.45}
[data-design="3"] body::before{content:"";display:block;position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(15,15,14,.72),rgba(15,15,14,.86)),var(--tab-bg,none) center/cover no-repeat}
:root[data-theme="light"][data-design="3"] body::before{background:linear-gradient(180deg,rgba(244,243,240,.82),rgba(244,243,240,.92)),var(--tab-bg,none) center/cover no-repeat}
/* one Pixabay photo per tab; plan sub-screens share the plan photo; the Record sheet gets the swimming photo */
[data-design="3"] body[data-view="today"]{--tab-bg:url(/media/bg-today.webp)}
[data-design="3"] body[data-view="plan"],[data-design="3"] body[data-view="run"],[data-design="3"] body[data-view="swim"],[data-design="3"] body[data-view="conditioning"],[data-design="3"] body[data-view="food"]{--tab-bg:url(/media/bg-plan.webp)}
[data-design="3"] body[data-view="progress"]{--tab-bg:url(/media/bg-progress.webp)}
[data-design="3"] body[data-view="more"]{--tab-bg:url(/media/bg-more.webp)}
[data-design="3"] body[data-record-open="true"]{--tab-bg:url(/media/bg-record.webp)}
[data-design="3"] #motion{opacity:0;visibility:hidden}
[data-design="3"] h1,[data-design="3"] h2,[data-design="3"] h3{font-family:var(--display);font-weight:800;letter-spacing:.02em;line-height:1;text-transform:none}
[data-design="3"] h1{font-size:40px}[data-design="3"] h2{font-size:24px}[data-design="3"] h3{font-size:20px}
[data-design="3"] p{color:var(--muted2)}
[data-design="3"] .v3-display{font-family:var(--display);font-weight:900;font-size:64px;line-height:.9;letter-spacing:.01em;text-transform:uppercase}
[data-design="3"] .v3-display small{font-family:var(--display);font-weight:700;font-style:normal;font-size:.45em;color:var(--muted);letter-spacing:.02em}
[data-design="3"] .v3-italic{font-style:italic}
[data-design="3"] .v3-h{font-family:var(--display);font-weight:800;letter-spacing:.03em;line-height:1;text-transform:uppercase}
[data-design="3"] .v3-num{font-family:var(--display);font-weight:800;font-size:34px;line-height:1;letter-spacing:.01em;font-variant-numeric:tabular-nums}
[data-design="3"] .v3-num small{font-size:.6em;color:var(--muted);font-weight:700}
[data-design="3"] .v3-kicker,[data-design="3"] .eyebrow{display:block;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
[data-design="3"] .icon{width:22px;height:22px}
[data-design="3"] .wordmark{font-family:var(--display);font-weight:800;font-size:24px;letter-spacing:.06em}
[data-design="3"] .logo,[data-design="3"] .logo:hover{background:none!important;border:0;padding:0;border-radius:0;gap:0;min-height:0;color:var(--ink);filter:none}
[data-design="3"] .wordmark span{color:var(--accent);padding:0 1px;display:inline-block;transform:skewX(-14deg)}
[data-design="3"] button{font-family:var(--body);font-weight:600;border-radius:16px;min-height:48px;background:var(--surface2);color:var(--ink)}
[data-design="3"] .primary{background:var(--accent);color:var(--on-accent);letter-spacing:.06em;text-transform:uppercase;font-weight:700;font-size:13px}
[data-design="3"] .primary .icon{width:16px;height:16px}
[data-design="3"] .outline{background:transparent;border:1px solid var(--line2);color:var(--ink)}
[data-design="3"] .subtle{background:none;color:var(--muted2)}
[data-design="3"] .v3-pill{border-radius:999px;padding:12px 22px}
[data-design="3"] .v3-round{width:44px;min-height:44px;border-radius:50%;padding:0;background:var(--surface);border:1px solid var(--line)}
[data-design="3"] .pill{background:var(--surface2);font-size:12px}
[data-design="3"] .pill.accent{background:var(--accent-soft);color:var(--accent-ink)}
[data-design="3"] .card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:none;padding:20px}
[data-design="3"] .note-panel{background:var(--surface2);border-radius:14px}
[data-design="3"] .row>div{min-width:0}
[data-design="3"] .small{font-size:13px}
[data-design="3"] .muted{color:var(--muted)}
[data-design="3"] .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* header + nav */
[data-design="3"] .app-header{max-width:1000px;padding:calc(14px + env(safe-area-inset-top)) 20px 8px;position:relative;z-index:6}
[data-design="3"] #header-date{margin-left:auto;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
[data-design="3"] .avatar{background:none;color:var(--ink);width:44px;border-radius:50%}
[data-design="3"] .avatar .icon{width:22px;height:22px}
[data-design="3"] #main{max-width:1000px;padding:4px 20px calc(104px + env(safe-area-inset-bottom))}
[data-design="3"] #navigation{background:color-mix(in srgb,var(--bg) 92%,transparent);border-top:1px solid var(--line);backdrop-filter:blur(18px);padding:10px 8px calc(8px + env(safe-area-inset-bottom));align-items:flex-start}
[data-design="3"] #navigation button{color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;gap:5px;min-width:60px;padding:6px 4px;border-radius:12px;background:none}
[data-design="3"] #navigation button.active{color:var(--accent-ink)}
[data-design="3"] #navigation .quick-add{background:var(--accent);color:var(--on-accent);width:54px;min-width:54px;min-height:54px;height:54px;border-radius:50%;margin-top:-10px;font-size:0;gap:0;box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 40%,transparent)}
[data-design="3"] #navigation .quick-add .icon{width:24px;height:24px}
[data-design="3"] #navigation .quick-add span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
[data-design="3"] .banner{background:var(--accent-soft);color:var(--ink);font-size:13px;z-index:6}
[data-design="3"] #toast{background:var(--ink);color:var(--bg);border-radius:999px;font-weight:600}

/* boot splash */
[data-design="3"] .boot{background:#0f0f0e;color:#f2f1ec;gap:10px}
[data-design="3"] .boot-mark{width:96px;height:96px;filter:drop-shadow(0 6px 18px #0008)}
[data-design="3"] .boot .wordmark{font-size:64px;letter-spacing:.08em;font-weight:900}
[data-design="3"] .boot p{font-size:12px;letter-spacing:.3em;font-weight:600;color:#f2f1ecd9}
[data-design="3"] .loading-line{background:var(--accent);margin-top:20px}

/* ---------- Today ---------- */
[data-design="3"] .v3-today{display:grid;gap:14px;max-width:560px;margin:auto}
[data-design="3"] .v3-hero{position:relative;height:330px;border-radius:0 0 32px 32px;overflow:hidden;isolation:isolate;margin:-4px -20px 0;padding:0;background:#111;border:0;min-height:0;display:block}
[data-design="3"] .v3-hero picture,[data-design="3"] .v3-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 60%;z-index:0}
[data-design="3"] .v3-hero>#motion{position:absolute;inset:0;z-index:1;opacity:1;visibility:visible;background:transparent}
[data-design="3"] .v3-hero>#motion::after{background:none}
[data-design="3"] .v3-shade{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,#00000066,#00000000 35%,#00000014 50%,color-mix(in srgb,var(--bg) 96%,transparent))}
[data-design="3"][data-theme=light] .v3-shade{background:linear-gradient(180deg,#00000059,#00000000 35%,#0000000d 50%,#0c0c0acc)}
[data-design="3"] .v3-hero-copy{position:absolute;left:24px;right:120px;bottom:24px;z-index:3;color:#fff;display:grid;gap:4px}
[data-design="3"] .v3-hero-copy .v3-kicker{color:#ffffffd9}
[data-design="3"] .v3-hero-copy h1{color:#fff;font-size:72px}
[data-design="3"] .v3-hero-copy p{color:#ffffffd9;font-size:14px}
[data-design="3"] .v3-hero-ring{position:absolute;right:24px;bottom:24px;z-index:3;width:88px;height:88px;flex:none;color:#fff}
[data-design="3"] .v3-hero-ring .ring{width:88px;height:88px}
[data-design="3"] .v3-hero-ring circle{stroke:#ffffff40;stroke-width:8}
[data-design="3"] .v3-hero-ring .ring-fill{stroke:var(--accent)}
[data-design="3"] .v3-hero-ring strong{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:24px}
[data-design="3"] .v3-tiles{display:grid;grid-template-columns:1fr 1fr;gap:12px}
[data-design="3"] .v3-tile{position:relative;overflow:hidden;height:158px;padding:14px 16px;border-radius:var(--radius);border:1px solid var(--line);background:linear-gradient(135deg,var(--activity-tint) 0%,var(--surface) 70%);display:flex;flex-direction:column;justify-content:space-between;min-width:0}
[data-design="3"] .v3-tile-art{position:absolute;right:0;top:14px;width:151px;height:auto;pointer-events:none;z-index:0}
[data-design="3"] .activity-conditioning .v3-tile-art{width:157px}[data-design="3"] .activity-meal .v3-tile-art{width:131px}[data-design="3"] .activity-water .v3-tile-art{width:142px}
[data-design="3"] .v3-tile-fade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,color-mix(in srgb,var(--surface) 90%,transparent) 0%,color-mix(in srgb,var(--surface) 70%,transparent) 40%,transparent 72%)}
[data-design="3"] .v3-tile>*:not(.v3-tile-art):not(.v3-tile-fade){position:relative;z-index:2}
[data-design="3"] .v3-tile-label{font-family:var(--display);font-weight:700;font-style:italic;font-size:15px;letter-spacing:.1em;color:var(--muted2)}
[data-design="3"] .v3-tile-body{display:grid;gap:2px}
[data-design="3"] .v3-tile-body .v3-num{font-size:40px;font-style:italic;font-weight:900}
[data-design="3"] .v3-tile-body .v3-num.is-text{font-size:clamp(20px,5.4vw,26px);font-style:normal;line-height:1.05;overflow-wrap:break-word;max-width:88%}
[data-design="3"] .v3-tile-body>span{font-size:12px;color:var(--muted2);font-style:italic;font-weight:500}
[data-design="3"] .v3-bar,[data-design="3"] .bar{height:6px;border-radius:3px;background:color-mix(in srgb,var(--ink) 12%,transparent);overflow:hidden;margin:0}
[data-design="3"] .v3-bar>span,[data-design="3"] .bar>span{display:block;height:100%;border-radius:3px;background:var(--activity-color,var(--accent))}
[data-design="3"] .metric-hit,[data-design="3"] .programme-hit,[data-design="3"] .chart-action-hit{position:absolute;inset:0;z-index:3;background:none;border-radius:inherit;min-height:0;padding:0}
[data-design="3"] .metric-hit:focus-visible,[data-design="3"] .programme-hit:focus-visible{outline-offset:-3px}
[data-design="3"] .v3-next{display:flex;align-items:center;gap:14px;padding:14px 16px 14px 20px;border-radius:var(--radius);background:var(--ink);color:var(--bg)}
[data-design="3"] .v3-next>div{flex:1;display:grid;gap:2px;min-width:0}
[data-design="3"] .v3-next .v3-kicker{color:color-mix(in srgb,var(--bg) 70%,transparent)}
[data-design="3"] .v3-next .v3-h{font-size:24px;overflow-wrap:anywhere}
[data-design="3"] .v3-next>div>span{font-size:12px;color:color-mix(in srgb,var(--bg) 75%,transparent)}
[data-design="3"] .v3-next .primary{flex:none;min-height:42px;padding:0 18px;gap:8px}
[data-design="3"] .v3-plan-card h2{font-size:22px}
[data-design="3"] .v3-plan-card>.subtle{margin-top:6px;padding-left:0}
[data-design="3"] .v3-checklist{display:grid;gap:8px;margin-top:14px}
[data-design="3"] .v3-task{display:flex;gap:8px;align-items:center;min-width:0}
[data-design="3"] .v3-task-open{flex:1;min-width:0;justify-content:flex-start;text-align:left;gap:12px;padding:10px 12px;background:var(--surface2);border-radius:14px;font-weight:500;min-height:56px}
[data-design="3"] .v3-check{width:26px;height:26px;flex:none;border-radius:50%;border:1.5px solid var(--line2);display:grid;place-items:center;color:var(--on-accent)}
[data-design="3"] .is-complete .v3-check{background:var(--activity-color);border-color:var(--activity-color)}
[data-design="3"] .v3-check .icon{width:14px;height:14px;stroke-width:3}
[data-design="3"] .v3-task-copy{flex:1;display:grid;gap:1px;min-width:0}
[data-design="3"] .v3-task-copy>span{font-size:14px;overflow-wrap:anywhere}
[data-design="3"] .is-complete .v3-task-copy>span{color:var(--muted);text-decoration:line-through}
[data-design="3"] .v3-task-copy small{font-size:12px;color:var(--muted)}
[data-design="3"] .v3-task-open>.icon{width:16px;height:16px;color:var(--muted)}
[data-design="3"] .v3-water-add{flex:none;width:56px;min-height:56px;border-radius:14px;background:var(--tint-blue);color:var(--blue);font-family:var(--display);font-weight:800;font-size:20px;padding:0}
[data-design="3"] .v3-water-add:disabled{opacity:.4}

/* ---------- Plan ---------- */
[data-design="3"] .v3-plan,[data-design="3"] .v3-progress,[data-design="3"] .v3-more,[data-design="3"] .v3-run,[data-design="3"] .v3-activity,[data-design="3"] .v3-food{display:grid;gap:16px;max-width:560px;margin:auto}
[data-design="3"] .v3-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding:10px 0 0}
[data-design="3"] .v3-title-row .v3-display{font-size:56px}
[data-design="3"] .v3-title-row .v3-kicker{margin-bottom:6px}
[data-design="3"] .v3-week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
[data-design="3"] .v3-week-strip button{flex-direction:column;gap:5px;padding:10px 0;min-width:0;min-height:74px;border-radius:14px;background:none;color:var(--muted)}
[data-design="3"] .v3-week-strip button span{font-size:10px;letter-spacing:.08em;font-weight:600}
[data-design="3"] .v3-week-strip button strong{font-family:var(--display);font-weight:800;font-size:22px;line-height:1}
[data-design="3"] .v3-week-strip button i{width:5px;height:5px;border-radius:50%;background:var(--activity-color,var(--line2))}
[data-design="3"] .v3-week-strip button.active{background:var(--ink);color:var(--bg)}
[data-design="3"] .v3-programme{display:grid;gap:10px}
[data-design="3"] .v3-programme-card{position:relative;height:96px;border-radius:var(--radius);overflow:hidden;background:var(--surface);border:1px solid var(--line);min-width:0}
[data-design="3"] .v3-programme-card.is-today{height:120px}
[data-design="3"] .v3-programme-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
[data-design="3"] .v3-programme-fade{position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--bg) 96%,transparent) 45%,color-mix(in srgb,var(--bg) 20%,transparent))}
[data-design="3"] .v3-programme-bar{position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--activity-color)}
[data-design="3"] .v3-programme-copy{position:absolute;left:20px;top:16px;bottom:14px;right:16px;display:flex;flex-direction:column;gap:2px;justify-content:flex-start}
[data-design="3"] .v3-programme-copy .v3-kicker{color:var(--activity-color)}
[data-design="3"] .v3-programme-copy .v3-h{font-size:26px}
[data-design="3"] .is-today .v3-programme-copy .v3-h{font-size:30px}
[data-design="3"] .v3-programme-copy>span{font-size:13px;color:var(--muted2)}
[data-design="3"] .v3-programme-copy em{margin-top:auto;font-style:normal;font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--ink)}
[data-design="3"] .v3-focus h3{font-size:24px;margin:8px 0}
[data-design="3"] .v3-details>summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:44px;color:var(--muted2);font-weight:600;font-size:13px;letter-spacing:.06em;text-transform:uppercase}
[data-design="3"] .v3-details>summary::-webkit-details-marker{display:none}
[data-design="3"] .v3-details>summary::before{content:'';width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);margin-right:4px;transition:transform .15s}
[data-design="3"] .v3-details[open]>summary::before{transform:rotate(45deg)}
[data-design="3"] .v3-list{display:grid}
[data-design="3"] .v3-list-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-top:1px solid var(--line);min-width:0}
[data-design="3"] .v3-list-row:last-child{border-bottom:1px solid var(--line)}
[data-design="3"] .v3-list-row>div{flex:1;display:grid;gap:2px;min-width:0}
[data-design="3"] .v3-list-row strong{font-size:15px;font-weight:600;overflow-wrap:anywhere}
[data-design="3"] .v3-list-row>div>span{font-size:12px;color:var(--muted)}
[data-design="3"] .v3-list-time{font-family:var(--display);font-weight:800;font-size:18px;color:var(--muted);width:48px;flex:none;letter-spacing:.02em}
[data-design="3"] .v3-list-row>.icon{width:18px;height:18px;color:var(--green)}
[data-design="3"] .v3-dot{width:10px;height:10px;border-radius:50%;background:var(--activity-color,var(--muted));flex:none}
[data-design="3"] .empty{padding:24px 10px}[data-design="3"] .empty>.icon{width:32px;height:32px}

/* ---------- Run timer ---------- */
[data-design="3"] .v3-timer.timer-card{position:relative;overflow:hidden;isolation:isolate;padding:16px 16px 24px;text-align:center;background:var(--surface)}
[data-design="3"] .v3-timer>#motion{position:absolute;inset:0;z-index:0;opacity:1;visibility:visible;background:#111}
[data-design="3"] .v3-timer>#motion video{opacity:0;filter:brightness(.6)}
[data-design="3"] .v3-timer>#motion video.visible{opacity:.55}
[data-design="3"] .v3-timer>#motion::after{background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 70%,transparent),color-mix(in srgb,var(--bg) 35%,transparent) 40%,color-mix(in srgb,var(--bg) 97%,transparent) 75%)}
[data-design="3"] .v3-timer>*:not(#motion){position:relative;z-index:1}
[data-design="3"] .v3-timer-top{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;margin-bottom:10px}
[data-design="3"] .v3-timer-top>div:nth-child(2){display:grid;gap:2px;flex:1;text-align:center}
[data-design="3"] .v3-timer-top .v3-kicker{color:var(--orange)}
[data-design="3"] .workout-week{max-width:120px}
[data-design="3"] .workout-week label{font-size:0;gap:0}
[data-design="3"] .workout-week select{min-height:34px;padding:4px 10px;border-radius:999px;font-size:12px;background:var(--surface);border-color:var(--line2)}
[data-design="3"] .timer-orbit{position:relative;width:280px;height:280px;margin:14px auto}
[data-design="3"] .timer-orbit .ring{width:100%;height:100%}
[data-design="3"] .timer-orbit .ring circle{stroke:color-mix(in srgb,var(--ink) 14%,transparent);stroke-width:7}
[data-design="3"] .timer-orbit .ring .ring-fill{stroke:var(--orange)}
[data-design="3"] .timer-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
[data-design="3"] .timer-phase{font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange)}
[data-design="3"] .timer-clock{font-family:var(--display);font-weight:900;font-size:96px;letter-spacing:.01em;line-height:1;margin:0;font-variant-numeric:tabular-nums}
[data-design="3"] .phase-length{font-size:13px;color:var(--muted2)}
[data-design="3"] .timer-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px auto 0;max-width:320px}
[data-design="3"] .timer-stats strong{font-family:var(--display);font-weight:800;font-size:30px;line-height:1;font-variant-numeric:tabular-nums}
[data-design="3"] .timer-stats strong small{font-size:18px;color:var(--muted)}
[data-design="3"] .timer-stats span{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
[data-design="3"] .timer-controls{gap:26px;margin-top:22px;align-items:center}
[data-design="3"] .timer-round{width:56px;height:56px;min-height:56px;border-radius:50%;padding:0;background:transparent;border:1px solid var(--line2);color:var(--ink)}
[data-design="3"] .timer-round:disabled{opacity:.4}
[data-design="3"] .timer-controls .primary.timer-round{width:84px;height:84px;min-height:84px;border:0;background:var(--accent);color:var(--on-accent);box-shadow:0 10px 30px color-mix(in srgb,var(--accent) 35%,transparent)}
[data-design="3"] .timer-controls .primary.timer-round .icon{width:28px;height:28px}
[data-design="3"] .timer-controls>.primary:not(.timer-round){border-radius:999px;padding:14px 28px;min-height:56px}
[data-design="3"] .timer-next{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:18px auto 0;max-width:360px;padding:12px 18px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}
[data-design="3"] .timer-next>span:first-child{font-size:13px;color:var(--muted2)}
[data-design="3"] .timer-next>span:last-child,[data-design="3"] .timer-next strong{font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:.06em;color:var(--activity-color);text-transform:uppercase}
[data-design="3"] #timer-panel>.subtle{margin-top:12px;color:var(--muted2);letter-spacing:.08em;text-transform:uppercase;font-size:12px}
[data-design="3"] .session-details{margin-top:12px;text-align:left}
[data-design="3"] .session-details summary{color:var(--muted);font-size:13px}
[data-design="3"] .workout-history h3{margin:14px 0 8px}

/* ---------- Activity (swim / conditioning) & Food hero ---------- */
[data-design="3"] .v3-page-hero{position:relative;height:250px;border-radius:0 0 32px 32px;overflow:hidden;margin:-4px -20px 0;background:#111}
[data-design="3"] .v3-page-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
[data-design="3"] .v3-page-hero .v3-shade{background:linear-gradient(180deg,#00000073,#0000000d 40%,color-mix(in srgb,var(--bg) 96%,transparent))}
[data-design="3"][data-theme=light] .v3-page-hero .v3-shade{background:linear-gradient(180deg,#0000005e,#0000000d 40%,#0c0c0acc)}
[data-design="3"] .v3-page-hero .v3-hero-copy{right:24px;bottom:20px}
[data-design="3"] .v3-page-hero .v3-hero-copy .v3-kicker{color:var(--activity-color,var(--orange))}
[data-design="3"][data-theme=dark] .v3-page-hero .v3-hero-copy .v3-kicker{color:var(--activity-color,var(--orange))}
[data-design="3"] .v3-page-hero h1{font-size:56px}
[data-design="3"] .v3-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
[data-design="3"] .v3-stat-row>div{display:grid;gap:4px;justify-items:center;text-align:center;padding:14px 8px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}
[data-design="3"] .v3-stat-row span{font-size:10px;letter-spacing:.12em;color:var(--muted);font-weight:600}
[data-design="3"] .v3-week-dots{display:flex;gap:6px;margin:14px 0 16px}
[data-design="3"] .v3-week-dots span{flex:1;height:36px;border-radius:10px;background:var(--surface2);display:grid;place-items:center;font-size:12px;color:var(--muted);font-weight:600}
[data-design="3"] .v3-week-dots .logged{background:var(--activity-color);color:var(--on-accent)}
[data-design="3"] .v3-activity-cta{background:var(--activity-color)}
[data-design="3"] .v3-session h2{font-size:26px;margin:6px 0}
[data-design="3"] .v3-food-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
[data-design="3"] .v3-food-action{flex-direction:column;align-items:flex-start;justify-content:space-between;text-align:left;height:132px;padding:18px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);gap:8px;min-width:0}
[data-design="3"] .v3-food-action .icon{width:26px;height:26px}
[data-design="3"] .v3-food-action .v3-h{font-size:24px;display:block;margin-top:auto}
[data-design="3"] .v3-food-action small{font-size:12px;color:var(--muted);font-weight:500}
[data-design="3"] .v3-food-action.is-primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
[data-design="3"] .v3-food-action.is-primary small{color:#141412cc}
[data-design="3"] .v3-food-action.is-compact{height:100px}
[data-design="3"] .v3-food-action.is-compact .icon{display:none}
[data-design="3"] .v3-section-title{margin-top:8px;align-items:baseline}
[data-design="3"] .v3-section-title h2{font-size:22px}
[data-design="3"] .v3-meal-actions{display:flex;gap:4px;margin-top:2px}
[data-design="3"] .v3-meal-actions button{min-height:32px;padding:4px 8px;font-size:12px}
[data-design="3"] .v3-recipes.grid{grid-template-columns:1fr}
[data-design="3"] .recipe h3{font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:.02em;text-transform:uppercase}
[data-design="3"] .macro-chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
[data-design="3"] .macro-chips span{padding:6px 12px;border-radius:999px;background:var(--surface2);font-size:12px;font-weight:600}
[data-design="3"] .macro-chips span:nth-child(2){color:var(--orange)}
[data-design="3"] .food-fit{background:var(--green);color:var(--on-accent);letter-spacing:.06em;text-transform:uppercase}
[data-design="3"] .analysis{background:var(--surface2);border:0;border-radius:18px}
[data-design="3"] .macro-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}
[data-design="3"] .macro-grid>div{background:var(--surface);border-radius:14px;padding:12px 6px;text-align:center;display:grid;gap:2px}
[data-design="3"] .macro-grid strong{font-family:var(--display);font-weight:800;font-size:26px;line-height:1}
[data-design="3"] .macro-grid>div:nth-child(2) strong{color:var(--orange)}
[data-design="3"] .macro-grid span{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
[data-design="3"] .analysis-checks{list-style:none;padding:0;margin:8px 0;display:grid;gap:6px}
[data-design="3"] .analysis-checks li{display:flex;gap:8px;align-items:flex-start;font-size:14px}
[data-design="3"] .analysis-checks .icon{width:16px;height:16px;color:var(--green);margin-top:3px}
[data-design="3"] .estimate-label{margin:6px 0 14px}
[data-design="3"] .photo-preview{height:220px;border-radius:18px}
[data-design="3"] .recipe-illustration{position:relative;height:200px;border-radius:18px;overflow:hidden;margin-bottom:16px}
[data-design="3"] .recipe-cover{width:100%;height:100%;object-fit:cover;display:block}
[data-design="3"] .recipe-illustration span{position:absolute;right:12px;top:12px;font-size:11px;padding:6px 10px;border-radius:999px;background:#00000080;color:#fff}

/* ---------- Progress ---------- */
[data-design="3"] .v3-segmented{display:flex;gap:6px;margin:0;padding:0;background:none;border:0;width:100%;max-width:420px}
[data-design="3"] .v3-segmented button{flex:1;min-height:38px;white-space:nowrap;padding:8px 6px;border-radius:999px;font-size:12px;letter-spacing:.06em;background:none;border:1px solid var(--line2);color:var(--muted)}
[data-design="3"] .v3-segmented button.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}
[data-design="3"] .v3-progress-grid{display:grid;gap:12px}
[data-design="3"] .v3-bars{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;height:150px;margin:16px 0 6px;align-items:end}
[data-design="3"] .v3-bar-col{display:grid;grid-template-rows:1fr auto auto;gap:6px;height:100%;justify-items:center}
[data-design="3"] .v3-stack{width:100%;height:100%;display:flex;flex-direction:column-reverse;justify-content:flex-start;border-radius:8px;background:color-mix(in srgb,var(--ink) 6%,transparent);overflow:hidden}
[data-design="3"] .v3-stack span{display:block;width:100%;background:var(--activity-color);min-height:0}
[data-design="3"] .v3-bar-col>span{font-size:10px;font-weight:600;color:var(--muted)}
[data-design="3"] .v3-day-dot{width:6px;height:6px;border-radius:50%;background:var(--line2)}
[data-design="3"] .v3-day-dot.trained{background:var(--green)}[data-design="3"] .v3-day-dot.logged{background:var(--blue)}[data-design="3"] .v3-day-dot.recovered{background:var(--orange)}
[data-design="3"] .v3-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted)}
[data-design="3"] .v3-legend span{display:inline-flex;gap:6px;align-items:center}
[data-design="3"] .v3-legend i{width:8px;height:8px;border-radius:2px;background:var(--activity-color)}
[data-design="3"] .v3-habits{display:grid;gap:8px;margin-top:12px}
[data-design="3"] .v3-habit{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"icon label count" "icon bar bar";column-gap:12px;row-gap:6px;align-items:center;text-align:left;padding:12px 14px;background:var(--surface2);border-radius:14px;font-weight:500}
[data-design="3"] .v3-habit>.icon{grid-area:icon;color:var(--activity-color)}
[data-design="3"] .v3-habit>span{grid-area:label;font-size:14px}
[data-design="3"] .v3-habit>small{grid-area:count;font-size:12px;color:var(--muted)}
[data-design="3"] .v3-habit-bar{grid-area:bar;display:block;height:4px;border-radius:2px;background:color-mix(in srgb,var(--ink) 10%,transparent);overflow:hidden}
[data-design="3"] .v3-habit-bar>i{display:block;height:100%;background:var(--activity-color);border-radius:2px}
[data-design="3"] .v3-spark{display:flex;gap:4px;height:64px;align-items:flex-end;margin-top:14px}
[data-design="3"] .v3-spark span{flex:1;border-radius:3px;background:var(--green);opacity:.85}
[data-design="3"] .weight-chart,[data-design="3"] .steps-chart{position:relative}
[data-design="3"] .chart polyline{stroke:var(--accent);stroke-width:3}[data-design="3"] .chart circle{fill:var(--accent)}[data-design="3"] .chart-grid{stroke:var(--line)}
[data-design="3"] .chart-empty{position:relative}[data-design="3"] .chart-empty span{position:absolute;inset:0;display:grid;place-items:center;font-size:13px;color:var(--muted)}
[data-design="3"] .calendar{gap:6px}
[data-design="3"] .calendar .day{border-radius:10px;background:var(--surface2);font-family:var(--display);font-weight:700;font-size:15px;border:1.5px solid transparent}
[data-design="3"] .calendar .day.trained{background:var(--green);color:var(--on-accent)}
[data-design="3"] .calendar .day.logged{border-color:var(--blue)}
[data-design="3"] .calendar .day.recovered{border-style:dashed;border-color:var(--orange)}
[data-design="3"] .calendar .day.today{outline:2px solid var(--accent);outline-offset:2px}

/* ---------- More ---------- */
[data-design="3"] .v3-menu{display:grid;gap:6px}
[data-design="3"] .v3-menu-row{justify-content:flex-start;gap:14px;padding:14px 16px;min-height:60px;background:var(--surface);border:1px solid var(--line);border-radius:16px;font-weight:600;font-size:15px}
[data-design="3"] .v3-menu-row span{flex:1;text-align:left}
[data-design="3"] .v3-menu-row>.icon:last-child{width:16px;height:16px;color:var(--muted)}
[data-design="3"] .v3-story h2{font-size:28px;margin:10px 0}
[data-design="3"] .v3-story .outline{margin-top:14px}
[data-design="3"] .v3-settings>summary{list-style:none;display:flex;align-items:center;min-height:44px;color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
[data-design="3"] .v3-settings>summary::-webkit-details-marker{display:none}
[data-design="3"] .v3-settings .section-heading,[data-design="3"] .v3-settings .profile-row>.brand-mark{display:none}
[data-design="3"] .profile-row{display:flex;align-items:center;gap:14px;padding:16px;border-radius:16px;background:var(--surface);border:1px solid var(--line);margin:10px 0}
[data-design="3"] .profile-row>div{flex:1;display:grid;gap:2px}[data-design="3"] .profile-row span{font-size:13px;color:var(--muted)}
[data-design="3"] .settings-groups{display:grid;gap:12px}
[data-design="3"] .settings-group{display:grid;padding:4px 16px;background:var(--surface);border:1px solid var(--line);border-radius:16px}
[data-design="3"] .settings-row{width:100%;justify-content:flex-start;gap:12px;padding:14px 0;min-height:54px;background:none;border-radius:0;border-bottom:1px solid var(--line);font-weight:500;font-size:14px}
[data-design="3"] .settings-row:last-child{border-bottom:0}
[data-design="3"] .settings-row span{flex:1;text-align:left}
[data-design="3"] .settings-row small{color:var(--muted);font-size:12px;max-width:40%;text-align:right;overflow-wrap:anywhere}
[data-design="3"] .settings-row>.icon:last-child{width:16px;height:16px;color:var(--muted)}
[data-design="3"] .settings-footnote{text-align:center;font-size:12px;color:var(--muted);margin:24px 0 0;line-height:1.7}

/* ---------- Sheet, forms, record ---------- */
[data-design="3"] dialog:not(#intro){background:var(--surface);border:1px solid var(--line);border-radius:28px;color:var(--ink);padding:20px 22px}
[data-design="3"] dialog::backdrop{background:#000000a6;backdrop-filter:blur(6px)}
[data-design="3"] .sheet-header h2{font-size:32px}
[data-design="3"] .sheet-header .icon-button{width:40px;min-height:40px;border-radius:50%;background:var(--surface2);font-size:22px;padding:0}
[data-design="3"] label{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);gap:6px}
[data-design="3"] input,[data-design="3"] select,[data-design="3"] textarea{background:var(--bg);border:1px solid var(--line);border-radius:14px;color:var(--ink);font-size:15px;font-family:var(--body);text-transform:none;letter-spacing:0;min-height:52px}
[data-design="3"] input:focus-visible,[data-design="3"] select:focus-visible,[data-design="3"] textarea:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}
[data-design="3"] .check-label{text-transform:none;letter-spacing:0;font-size:14px;color:var(--ink);font-weight:500}
[data-design="3"] .check-label input{accent-color:var(--accent)}
[data-design="3"] .hint{font-size:13px;color:var(--muted)}
[data-design="3"] .error{background:var(--accent-soft);color:var(--ink);border-radius:14px}
[data-design="3"] .form-footer .primary{border-radius:999px;min-height:56px}
[data-design="3"] .v3-record{display:grid;gap:14px}
[data-design="3"] .v3-record .hint{margin:0}
[data-design="3"] .v3-record-grid{grid-template-columns:1fr 1fr;gap:10px}
[data-design="3"] .v3-record-tile{flex-direction:column;align-items:flex-start;justify-content:space-between;text-align:left;height:112px;padding:16px;border-radius:18px;background:var(--bg);border:1px solid var(--line);gap:4px;min-width:0}
[data-design="3"] .v3-record-tile .v3-dot{margin-bottom:auto}
[data-design="3"] .v3-record-tile .v3-h{font-size:24px;display:block;overflow-wrap:anywhere}
[data-design="3"] .v3-record-tile small{font-size:12px;color:var(--muted);font-weight:500}
[data-design="3"] .v3-record-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
[data-design="3"] .v3-record-row .outline{gap:8px;font-size:13px;min-height:46px}
[data-design="3"] .v3-record-row .icon{width:18px;height:18px}
[data-design="3"] .v3-water-cta{display:flex;justify-content:space-between;text-align:left;padding:14px 14px 14px 18px;border-radius:18px;background:color-mix(in srgb,var(--blue) 15%,transparent);border:1px solid color-mix(in srgb,var(--blue) 40%,transparent);min-height:72px}
[data-design="3"] .v3-water-cta>span{display:grid;gap:2px}
[data-design="3"] .v3-water-cta .v3-h{font-size:22px}
[data-design="3"] .v3-water-cta small{font-size:12px;color:var(--muted);font-weight:500}
[data-design="3"] .v3-water-cta>.icon{width:44px;height:44px;padding:11px;border-radius:50%;background:var(--blue);color:var(--on-accent);flex:none}
[data-design="3"] .v3-water-cta:disabled{opacity:.5}
[data-design="3"] .quick-grid:not(.v3-record-grid) button{background:var(--bg);border:1px solid var(--line);border-radius:16px}
[data-design="3"] .exercise-row{background:var(--bg);border-color:var(--line);border-radius:16px}
[data-design="3"] .ingredient-row{background:var(--bg);padding:10px;border-radius:14px}
[data-design="3"] .install-logo{background:var(--accent-soft);color:var(--accent);border-radius:24px}

/* stepped setup (shared with v2 markup from setup-v2.js) */
[data-design="3"] dialog#sheet:has(.v2-setup){height:100dvh;max-height:100dvh;margin:0;width:100%;border-radius:0}
@media(min-width:700px){[data-design="3"] dialog#sheet:has(.v2-setup){height:auto;max-height:92dvh;margin:auto;width:min(560px,calc(100% - 48px));border-radius:28px;padding:24px 28px}}
[data-design="3"] .v3-replay-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}[data-design="3"] .v3-replay-row button{flex:1 1 150px}
[data-design="3"] .v2-setup .form-grid{display:block}
[data-design="3"] .v2-setup-step{display:grid;gap:12px}
[data-design="3"] .v2-setup-step>label{grid-column:auto!important}
[data-design="3"] .v2-setup-top{display:flex;gap:16px;align-items:center;margin:0 0 20px}
[data-design="3"] .v2-setup-top button{height:44px;width:44px;min-height:44px;background:none;transform:rotate(180deg);padding:0}
[data-design="3"] .v2-setup-track{display:flex;gap:6px;flex:1}
[data-design="3"] .v2-setup-track i{height:4px;flex:1;background:var(--surface2);border-radius:2px}
[data-design="3"] .v2-setup-track .active{background:var(--accent)}
[data-design="3"] .v2-setup-hint{margin:0 0 16px}
[data-design="3"] .v2-choices{display:grid;gap:10px}
[data-design="3"] .v2-choice{border:1px solid var(--line);background:var(--bg);padding:16px;min-height:76px;border-radius:18px;justify-content:flex-start;text-align:left;gap:16px}
[data-design="3"] .v2-choice>.icon{width:28px;height:28px;color:var(--accent)}
[data-design="3"] .v2-choice span{flex:1;min-width:0}
[data-design="3"] .v2-choice strong{display:block;font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:.03em;text-transform:uppercase}
[data-design="3"] .v2-choice small{display:block;font-weight:400;color:var(--muted);font-size:13px;margin-top:4px}
[data-design="3"] .v2-choice[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-soft)}
[data-design="3"] .v2-setup-footer{position:sticky;bottom:-20px;background:var(--surface);padding:16px 0;margin-top:16px;z-index:6}
[data-design="3"] .v2-setup-footer .primary{border-radius:999px;min-height:56px}
[data-design="3"] .v2-setup-advanced{display:grid;gap:12px}
[data-design="3"] .v2-setup-advanced>summary{display:flex;align-items:center;min-height:44px;color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
[data-design="3"] .v2-setup-advanced fieldset{border:1px solid var(--line);border-radius:14px;padding:12px}
[data-design="3"] .v2-setup-step .segmented{flex-wrap:wrap;margin:0}
[data-design="3"] .v2-setup-step>.note-panel{font-size:13px}

/* intro trailer + tour */
[data-design="3"] #intro{background:#0f0f0e}
[data-design="3"] .trailer-top .wordmark,[data-design="3"] .tour .wordmark{font-size:26px}
[data-design="3"] .trailer-copy h1{font-family:var(--display);font-weight:900;font-style:italic;font-size:64px;letter-spacing:.01em;text-transform:uppercase;line-height:.9}
[data-design="3"] .trailer-copy .eyebrow{color:var(--accent)}
[data-design="3"] .trailer-bottom .primary{border-radius:999px;min-height:56px}
[data-design="3"] .trailer-sound{border-radius:999px;display:inline-flex;align-items:center;gap:10px;padding:9px 18px 9px 14px;text-align:left;line-height:1.15;font-weight:600;border-width:2px;transition:background .2s,border-color .2s,color .2s}
[data-design="3"] .trailer-sound span{display:grid}[data-design="3"] .trailer-sound b{font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}[data-design="3"] .trailer-sound small{font-size:11px;opacity:.85;font-weight:500}
[data-design="3"] .trailer-sound[data-state="on"]{color:#eafff0;background:#1f6b3acc;border-color:#58d27f}[data-design="3"] .trailer-sound[data-state="on"] svg{color:#7bf0a0}
[data-design="3"] .trailer-sound[data-state="off"]{color:#fff0f0;background:#7a1f1fcc;border-color:#ff6b6b}[data-design="3"] .trailer-sound[data-state="off"] svg{color:#ff8f8f}
[data-design="3"] .rs{color:var(--accent)}
[data-design="3"] .tour-art{position:relative;width:min(240px,calc(100vw - 150px));aspect-ratio:1;flex:none;height:auto;min-height:0;display:grid;place-items:center;border-radius:40px;border:1px solid color-mix(in srgb,var(--activity-color,var(--accent)) 45%,transparent);background:radial-gradient(circle at 50% 55%,color-mix(in srgb,var(--activity-color,var(--accent)) 38%,transparent) 0%,var(--activity-tint,var(--accent-soft)) 68%);box-shadow:0 18px 50px -18px color-mix(in srgb,var(--activity-color,var(--accent)) 60%,transparent)}
[data-design="3"] .tour-stage{display:flex;align-items:center;justify-content:center;gap:10px;margin-inline:auto}
[data-design="3"] .tour-arrow{width:40px;height:40px;min-height:40px;padding:0;border-radius:50%;flex:none;background:var(--surface2);border:1px solid var(--line2);color:var(--ink)}
[data-design="3"] .tour-arrow .icon{width:18px;height:18px}
[data-design="3"] .tour-arrow:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}
[data-design="3"] .tour-arrow:disabled{opacity:.3;cursor:default}
[data-design="3"] .tour-art img{width:78%;height:auto;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 14px 18px #0008)}
[data-design="3"] .tour h1{font-family:var(--display);font-weight:900;font-style:italic;font-size:52px;text-transform:uppercase;line-height:.9}
[data-design="3"] .tour p{font-size:16px}
[data-design="3"] .tour-dots span{background:var(--line2)}[data-design="3"] .tour-dots .selected{background:var(--accent)}
[data-design="3"] .tour>.primary{border-radius:999px;min-height:56px}
[data-design="3"] .about-quote{font-family:var(--display);font-weight:800;font-size:34px;line-height:1;letter-spacing:.02em;text-transform:uppercase;margin:16px 0}

/* ---------- responsive ---------- */
@media(max-width:600px){
 [data-design="3"] dialog:not(#intro){width:100%;margin:auto 0 0;border-radius:28px 28px 0 0;padding:14px 20px calc(30px + env(safe-area-inset-bottom));max-height:92dvh}
 [data-design="3"] .sheet-handle{display:block;width:40px;height:4px;background:var(--line2);border-radius:2px;margin:0 auto 14px}
 [data-design="3"] .v3-hero{height:300px}
 [data-design="3"] .v3-hero-copy h1{font-size:64px}
}
@media(max-width:380px){
 [data-design="3"] .v3-tile{height:150px;padding:12px 14px}
 [data-design="3"] .v3-tile-body .v3-num{font-size:34px}
 [data-design="3"] .v3-tile-art{width:128px}
 [data-design="3"] .timer-orbit{width:240px;height:240px}[data-design="3"] .timer-clock{font-size:80px}
 [data-design="3"] .v3-page-hero h1,[data-design="3"] .v3-title-row .v3-display{font-size:46px}
}
@media(min-width:700px){
 [data-design="3"] .v3-today{max-width:none;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;gap:20px}
 [data-design="3"] .v3-hero{grid-column:1;margin:0;border-radius:28px;height:420px}
 [data-design="3"] .v3-hero-copy h1{font-size:96px}
 [data-design="3"] .v3-hero-ring{width:112px;height:112px}[data-design="3"] .v3-hero-ring .ring{width:112px;height:112px}
 [data-design="3"] .v3-tiles{grid-column:2;grid-row:1}
 [data-design="3"] .v3-tile{height:auto;min-height:196px}
 [data-design="3"] .v3-next{grid-column:1}
 [data-design="3"] .v3-plan-card{grid-column:2;grid-row:2}
 [data-design="3"] .v3-page-hero{margin:0;border-radius:28px;height:300px}
 [data-design="3"] .v3-plan,[data-design="3"] .v3-progress,[data-design="3"] .v3-more,[data-design="3"] .v3-run,[data-design="3"] .v3-activity,[data-design="3"] .v3-food{max-width:none}
 [data-design="3"] .v3-programme{grid-template-columns:1fr 1fr}
 [data-design="3"] .v3-programme-card,[data-design="3"] .v3-programme-card.is-today{height:140px}
 [data-design="3"] .v3-progress-grid{grid-template-columns:1fr 1fr}
 [data-design="3"] .v3-run{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:start}
 [data-design="3"] .v3-food-grid{grid-template-columns:repeat(4,1fr)}
 [data-design="3"] .v3-food-action.is-compact{height:132px}[data-design="3"] .v3-food-action.is-compact .icon{display:block}
 [data-design="3"] .v3-recipes.grid{grid-template-columns:1fr 1fr}
 [data-design="3"] .v3-menu{grid-template-columns:1fr 1fr}
 [data-design="3"] .v3-record-grid{grid-template-columns:repeat(3,1fr)}
}
@media(min-width:1100px){
 [data-design="3"] #shell{padding-left:0}
 [data-design="3"] .app-header{max-width:1400px;padding:22px 40px 18px;min-height:88px}
 [data-design="3"] .app-header .wordmark{font-size:30px}
 [data-design="3"] #header-date{margin-left:auto;margin-right:56px}
 [data-design="3"] #main{max-width:1400px;padding:12px 40px 72px}
 /* top navigation bar, centred, matching the desktop mock */
 [data-design="3"] #navigation{position:fixed;top:20px;bottom:auto;left:50%;right:auto;transform:translateX(-50%);width:auto;flex-direction:row;align-items:center;justify-content:center;gap:4px;padding:5px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(18px);z-index:7}
 [data-design="3"] #navigation button{flex-direction:row;gap:9px;min-height:44px;min-width:0;font-size:12px;letter-spacing:.08em;padding:8px 18px;border-radius:999px;color:var(--muted)}
 [data-design="3"] #navigation button .icon{width:18px;height:18px}
 [data-design="3"] #navigation button.active{background:var(--surface2);color:var(--ink)}
 [data-design="3"] #navigation button.active .icon{color:var(--accent-ink)}
 [data-design="3"] #navigation .quick-add{width:auto;height:44px;min-height:44px;margin:0 6px;padding:8px 18px;border-radius:999px;font-size:12px;gap:9px;box-shadow:none;background:var(--accent);color:var(--on-accent)}
 [data-design="3"] #navigation .quick-add .icon{width:18px;height:18px}
 [data-design="3"] #navigation .quick-add span{position:static;width:auto;height:auto;clip:auto;letter-spacing:.08em}
 [data-design="3"] #navigation:before{content:none}
 /* Today */
 [data-design="3"] .v3-today{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);grid-template-rows:auto auto;gap:24px}
 [data-design="3"] .v3-hero{height:520px;min-height:520px;max-height:520px;grid-row:1;align-self:start;display:block}
 [data-design="3"] .v3-hero>#motion video{filter:brightness(.8)}
 [data-design="3"] .v3-shade{background:linear-gradient(180deg,#00000066,#00000014 30%,#00000080 58%,color-mix(in srgb,var(--bg) 97%,transparent))}
 [data-design="3"] .v3-hero-copy{top:auto;bottom:28px;gap:6px;text-shadow:0 2px 14px #000c,0 0 2px #0009}
 [data-design="3"] .v3-hero-copy .v3-kicker,[data-design="3"] .v3-hero-copy p{color:#fff;text-shadow:0 1px 10px #000d}
 [data-design="3"] .v3-hero-copy h1{line-height:1;padding-top:.06em}
 [data-design="3"] .v3-hero-ring{filter:drop-shadow(0 2px 10px #000c);bottom:28px}
 [data-design="3"] .v3-hero-ring circle{stroke:#ffffff59}
 [data-design="3"] .v3-hero-copy h1{font-size:120px}
 [data-design="3"] .v3-hero-copy p{font-size:16px}
 [data-design="3"] .v3-hero-copy{left:36px;right:200px}
 [data-design="3"] .v3-hero-ring{width:132px;height:132px;right:36px}[data-design="3"] .v3-hero-ring .ring{width:132px;height:132px}[data-design="3"] .v3-hero-ring strong{font-size:34px}
 [data-design="3"] .v3-tiles{gap:16px;align-self:stretch}
 [data-design="3"] .v3-tile{min-height:220px;padding:18px 20px}
 [data-design="3"] .v3-tile-art{width:200px;top:18px}
 [data-design="3"] .activity-conditioning .v3-tile-art{width:208px}[data-design="3"] .activity-meal .v3-tile-art{width:176px}[data-design="3"] .activity-water .v3-tile-art{width:188px}
 [data-design="3"] .v3-tile-body .v3-num{font-size:48px}
 [data-design="3"] .v3-tile-body>span{font-size:14px}
 [data-design="3"] .v3-next{padding:20px 20px 20px 26px}
 [data-design="3"] .v3-next .v3-h{font-size:30px}
 [data-design="3"] .v3-next>div>span{font-size:14px}
 [data-design="3"] .v3-next .primary{min-height:48px;padding:0 24px}
 [data-design="3"] .v3-plan-card{padding:24px}
 [data-design="3"] .v3-task-open{min-height:64px;padding:12px 16px}
 [data-design="3"] .v3-task-copy>span{font-size:16px}
 /* other views */
 [data-design="3"] .v3-title-row .v3-display{font-size:72px}
 [data-design="3"] .v3-page-hero{height:340px}
 [data-design="3"] .v3-page-hero h1{font-size:80px}
 [data-design="3"] .v3-week-strip button{min-height:88px}
 [data-design="3"] .v3-week-strip button strong{font-size:26px}
 [data-design="3"] .v3-programme{grid-template-columns:repeat(4,1fr);gap:16px}
 [data-design="3"] .v3-programme-card,[data-design="3"] .v3-programme-card.is-today{height:220px}
 [data-design="3"] .v3-programme-fade{background:linear-gradient(0deg,color-mix(in srgb,var(--bg) 97%,transparent) 50%,color-mix(in srgb,var(--bg) 10%,transparent))}
 [data-design="3"] .v3-programme-bar{top:auto;bottom:0;right:0;left:0;width:auto;height:4px}
 [data-design="3"] .v3-programme-copy{justify-content:flex-end;top:auto;left:22px;right:22px;bottom:22px}
 [data-design="3"] .v3-programme-copy .v3-h,[data-design="3"] .is-today .v3-programme-copy .v3-h{font-size:28px}
 [data-design="3"] .v3-progress-grid{grid-template-columns:repeat(2,1fr);gap:16px}
 [data-design="3"] .v3-stat-row>div{padding:22px 10px}
 [data-design="3"] .v3-stat-row .v3-num{font-size:44px}
 [data-design="3"] .v3-run{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:24px}
 [data-design="3"] .timer-orbit{width:340px;height:340px}
 [data-design="3"] .v3-food-action{height:160px}
 [data-design="3"] .v3-recipes.grid{grid-template-columns:repeat(3,1fr)}
 [data-design="3"] .v3-menu{grid-template-columns:repeat(3,1fr);gap:12px}
 [data-design="3"] .v3-menu-row{min-height:72px;font-size:16px}
 [data-design="3"] dialog:not(#intro){width:min(640px,calc(100% - 48px))}
}
@media(prefers-reduced-motion:reduce){[data-design="3"] .v3-details>summary::before{transition:none}}

/* credit: Gritz pen-and-star logo, drawn in the same text colour and font as the rest of the app */
[data-design="3"] .about-credit{display:grid;gap:10px;justify-items:start;margin-top:18px;color:var(--ink)}
[data-design="3"] .about-credit strong{font-family:var(--body);font-size:16px;font-weight:600;color:inherit}
[data-design="3"] .gritz-logo{display:block;width:104px;aspect-ratio:720/339;background:currentColor;-webkit-mask:url(/media/gritz-logo.png) center/contain no-repeat;mask:url(/media/gritz-logo.png) center/contain no-repeat}
