:root{--bg: #f1efe9;--bg-elev: #f7f5f1;--surface: #fdfcfa;--surface-2: #e9e6dd;--surface-3: #ddd9cf;--line: rgba(20, 19, 15, .14);--line-strong: rgba(20, 19, 15, .26);--text: #14130f;--text-dim: #4b4840;--text-faint: #67635a;--accent: #e4152b;--accent-ink: #ffffff;--accent-tekst: #c00d21;--accent-dim: #f3d2d6;--accent-soft: rgba(228, 21, 43, .09);--good: #1c7a4a;--warn: #9a5b00;--inkt: #14130f;--inkt-ink: #f1efe9;--overlay: rgba(20, 19, 15, .42);--radius: 10px;--radius-sm: 8px;--radius-pill: 999px;--tap: 52px;--font-body: "Archivo", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-display: "Bebas Neue", "Anton", Impact, sans-serif;--font-data: "Bebas Neue", "Oswald", "Arial Narrow", sans-serif;--track: .02em;--t-badge: 10px;--t-fijn: 12px;--t-klein: 13px;--t-basis: 15px;--t-body: 16px;--t-nadruk: 17px;--t-data: 21px;--t-kop: 26px;--t-groot: 30px;--t-titel: 34px;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--rand: var(--s4);--vulling: var(--s3);--header-h: 56px;--nav-h: 64px;color-scheme:light}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;height:100%;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.45;overscroll-behavior-y:none}body{background-image:radial-gradient(rgba(20,19,15,.055) 1px,transparent 1px);background-size:6px 6px;background-attachment:fixed}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none}h1,h2,h3,h4{margin:0;font-weight:700;letter-spacing:-.01em}.app{min-height:100dvh;display:flex;flex-direction:column;max-width:620px;margin:0 auto}.app-header{position:sticky;top:0;z-index:20;height:calc(var(--header-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) 16px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f7f5f199;-webkit-backdrop-filter:blur(26px) saturate(190%);backdrop-filter:blur(26px) saturate(190%);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:9px;font-family:var(--font-display);font-size:26px;font-weight:700;letter-spacing:var(--track);text-transform:uppercase}.brand .brand-mark{color:var(--accent-tekst);display:grid;place-items:center}.brand-logo{display:block;height:21px;width:auto}.brand-logo-groot{display:block;width:min(66vw,260px);height:auto;margin-bottom:10px}.header-title{font-family:var(--font-display);font-size:21px;letter-spacing:var(--track);text-transform:uppercase}.app-main{flex:1;padding:var(--s4) var(--rand) calc(var(--nav-h) + env(safe-area-inset-bottom) + var(--s6))}.app-nav{position:fixed;bottom:calc(env(safe-area-inset-bottom) + 10px);left:50%;translate:-50% 0;width:min(calc(100% - 24px),560px);z-index:30;display:grid;grid-template-columns:repeat(5,1fr);height:var(--nav-h);border-radius:var(--radius-pill);background:#f7f5f18c;-webkit-backdrop-filter:blur(26px) saturate(190%);backdrop-filter:blur(26px) saturate(190%);border:1px solid rgba(255,255,255,.55);box-shadow:0 1px #ffffffbf inset,0 12px 34px #14130f26}.nav-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--text-faint);font-size:12px;font-weight:600;letter-spacing:.005em;transition:color .12s ease}.nav-fab{width:46px;height:46px;margin-top:-20px;border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;position:relative;box-shadow:0 3px 14px #e4152b59;border:3px solid rgba(247,245,241,.95)}.nav-punt{position:absolute;top:-1px;right:-1px;width:9px;height:9px;border-radius:50%;background:var(--accent);border:2px solid rgba(247,245,241,.95)}.nav-btn[data-primair=true]{color:var(--accent-tekst);gap:2px}.nav-btn[aria-current=page]{color:var(--accent-tekst)}.nav-schuif{position:absolute;top:8px;bottom:8px;left:0;width:20%;padding:0 6px;background-clip:content-box;background-color:#e4152b21;border-radius:18px;pointer-events:none;z-index:0;transition:transform .34s cubic-bezier(.22,1,.36,1),opacity .18s ease}.nav-schuif[data-verborgen=true]{opacity:0}.nav-btn{position:relative;z-index:1}@media(prefers-reduced-motion:reduce){.nav-schuif{transition:none}}.nav-btn{position:relative;isolation:isolate}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--s3) var(--vulling)}.card+.card{margin-top:var(--s3)}.section{margin-bottom:var(--s5)}.section>p,.section>.small,.section>.muted{padding-inline:calc(var(--vulling) + 1px)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);padding-inline:calc(var(--vulling) + 1px);margin-bottom:var(--s2)}.section-title{font-family:var(--font-display);font-size:26px;letter-spacing:var(--track);text-transform:uppercase;color:var(--text)}.label{display:inline-block;font-size:12px;font-weight:500;letter-spacing:.005em;color:var(--text-faint)}.label:first-letter{text-transform:uppercase}.muted{color:var(--text-dim)}.faint{color:var(--text-faint)}.small{font-size:13px}.data{font-family:var(--font-data);font-weight:400;letter-spacing:.01em;font-variant-numeric:tabular-nums}.row{display:flex;align-items:center;gap:var(--s3)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:10px}.stack{display:flex;flex-direction:column;gap:10px}.grow{flex:1;min-width:0}.divider{height:1px;background:var(--line);margin:12px 0}.btn{min-height:var(--tap);padding:0 18px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line-strong);color:var(--text);font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .12s ease,transform .06s ease}.btn:active{transform:scale(.985)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent-tekst);color:var(--accent-ink);font-weight:700}.btn-ghost{background:transparent;border-color:var(--line);color:var(--text-dim)}.btn-danger{background:transparent;border-color:#9a5b0066;color:var(--warn)}.btn-block{width:100%}.btn-lg{min-height:60px;font-size:17px}.btn-sm{min-height:44px;padding:0 var(--s3);font-size:15px}.icon-btn{min-width:44px;min-height:44px;display:grid;place-items:center;border-radius:var(--radius-sm);color:var(--text-dim);border:1px solid transparent}.icon-btn:hover{background:var(--surface-2)}button.chip{min-height:44px;padding-block:var(--s2)}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--line);font-size:12px;font-weight:600;color:var(--text-dim);white-space:nowrap}.chip-accent{background:var(--accent-soft);border-color:var(--accent-dim);color:var(--accent-tekst)}.chip-good{background:#1c7a4a1f;border-color:#1c7a4a59;color:var(--good)}.field{display:flex;flex-direction:column;gap:6px}input[type=text],input[type=number],input[type=password],input[type=email],input[type=date],input[type=tel],input[type=search],select,textarea{min-height:var(--tap);width:100%;padding:0 14px;background:var(--bg-elev);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font-variant-numeric:tabular-nums}textarea{padding:12px 14px;min-height:80px;resize:vertical}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.stepper{display:grid;grid-template-columns:56px 1fr 56px;align-items:stretch;border:1px solid var(--line-strong);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-elev)}.stepper button{background:var(--surface-2);color:var(--text);display:grid;place-items:center;font-size:21px;min-height:58px}.stepper button:active{background:var(--surface-3)}.stepper input{border:none;background:transparent;text-align:center;font-family:var(--font-data);font-size:26px;font-weight:700;min-height:58px;padding:0}.stepper input::-webkit-outer-spin-button,.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.segmented{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-sm)}.segmented button{position:relative;z-index:1;min-height:44px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;color:var(--text-dim);background:transparent;transition:color .18s ease}.segmented button[aria-pressed=true]{background:transparent;box-shadow:none;color:var(--text)}.segmented button[aria-pressed=true].seg-accent{background:transparent;color:var(--accent-ink);box-shadow:none}.segmented-schuif{position:absolute;left:0;border-radius:var(--radius-sm);background:var(--surface-3);box-shadow:inset 0 0 0 1px var(--line-strong);pointer-events:none;transition:transform .32s cubic-bezier(.22,1,.36,1),width .32s cubic-bezier(.22,1,.36,1),background-color .18s ease}.segmented-schuif[data-accent=true]{background:var(--accent);box-shadow:none}@media(prefers-reduced-motion:reduce){.segmented-schuif{transition:none}}.switch{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:var(--tap)}.switch-track{width:52px;height:30px;border-radius:999px;background:var(--surface-3);border:1px solid var(--line-strong);position:relative;flex:none;transition:background .15s ease}.switch-track[data-on=true]{background:var(--accent);border-color:var(--accent-tekst)}.switch-knob{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--text);transition:transform .15s ease}.switch-track[data-on=true] .switch-knob{transform:translate(22px);background:var(--accent-ink)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.card .tile{background:transparent;border:0;border-radius:0;padding:0;min-height:0}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px;text-align:left;display:flex;flex-direction:column;gap:4px;min-height:76px;justify-content:center}.tile-value{font-family:var(--font-data);font-size:30px;line-height:1;font-weight:700;font-variant-numeric:tabular-nums}.tile-unit{font-size:13px;color:var(--text-faint);font-family:var(--font-body);font-weight:600}.group-tile{min-height:92px;align-items:flex-start;justify-content:space-between;border-color:var(--line-strong);background:linear-gradient(180deg,var(--surface-2),var(--surface))}.group-tile .group-name{font-family:var(--font-display);font-size:21px;letter-spacing:var(--track);text-transform:uppercase}.list{display:flex;flex-direction:column;gap:8px}.list-item{display:flex;align-items:center;gap:12px;width:100%;min-height:60px;padding:var(--s2) var(--vulling);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);text-align:left}.list-item:active{background:var(--surface-2)}.list-sub{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;overflow-wrap:anywhere}.list-item-title{font-weight:600}.set-row{display:grid;grid-template-columns:34px 1fr 1fr auto 40px;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--line)}.set-row:last-child{border-bottom:none}.set-index{font-family:var(--font-data);font-size:17px;color:var(--text-faint);text-align:center}.set-badge{width:34px;height:34px;display:grid;place-items:center;border-radius:var(--radius-sm);font-family:var(--font-data);font-size:15px;font-weight:700;border:1px solid var(--line-strong);background:var(--surface-2);color:var(--text-dim)}.set-badge[data-type=warmup]{color:var(--warn);border-color:#9a5b0066}.set-badge[data-type=work]{color:var(--text);background:var(--surface-3)}.set-badge[data-type=dropset]{color:var(--accent-tekst);border-color:var(--accent-dim)}.set-value{font-family:var(--font-data);font-size:21px;font-variant-numeric:tabular-nums}.bar{height:8px;border-radius:var(--radius-pill);background:var(--surface-3);overflow:hidden;position:relative}.bar-fill{height:100%;border-radius:var(--radius-pill);background:var(--accent)}.bar-fill[data-tone=good]{background:var(--good)}.bar-fill[data-tone=warn]{background:var(--warn)}.level-scale{display:grid;grid-template-columns:repeat(5,1fr);gap:3px;margin-top:8px}.level-seg{height:6px;border-radius:2px;background:var(--surface-3)}.level-seg[data-active=true]{background:var(--accent)}.level-labels{display:grid;grid-template-columns:repeat(5,1fr);gap:3px;margin-top:5px;font-size:12px;letter-spacing:.005em;color:var(--text-faint);text-align:center}.avatar{width:40px;height:40px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--inkt);color:var(--inkt-ink);border:0;font-family:var(--font-data);font-size:17px;font-weight:400;letter-spacing:.04em}.avatar[data-me=true]{background:var(--accent);color:var(--accent-ink)}.pr-banner{display:flex;align-items:center;gap:10px;padding:var(--s2) 0;color:var(--accent-tekst);font-weight:600;font-size:15px}.coach-note{display:flex;gap:10px;padding:11px 12px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line);font-size:15px;color:var(--text-dim);line-height:1.5}.comment{display:flex;gap:8px;font-size:15px;padding:6px 0}.rest-time{font-family:var(--font-data);font-size:30px;font-weight:700;min-width:78px;font-variant-numeric:tabular-nums}@keyframes pulse{0%{filter:brightness(1)}to{filter:brightness(1.18)}}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--overlay);display:flex;align-items:flex-end;justify-content:center;animation:fade .14s ease}.sheet{width:100%;max-width:620px;max-height:88dvh;overflow-y:auto;background:var(--bg-elev);border-top:1px solid var(--line-strong);border-radius:14px 14px 0 0;padding:14px 16px calc(20px + env(safe-area-inset-bottom));animation:slide-up .18s ease}.sheet-head{position:sticky;top:-14px;background:var(--bg-elev);padding:6px 0 12px;margin-bottom:6px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.sheet-backdrop[data-plaats=boven]{align-items:flex-start;bottom:auto}.sheet[data-plaats=boven]{border-top:0;border-bottom:1px solid var(--line-strong);border-radius:0 0 14px 14px;padding:calc(14px + env(safe-area-inset-top)) 16px 20px;animation:slide-down .18s ease}.sheet[data-plaats=boven] .sheet-head{top:calc(-14px - env(safe-area-inset-top))}@keyframes slide-down{0%{transform:translateY(-16px);opacity:0}to{transform:none;opacity:1}}@keyframes slide-up{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fade{0%{opacity:0}to{opacity:1}}.empty{text-align:center;padding:var(--s6) var(--s5);color:var(--text-faint)}.empty svg{margin-bottom:12px;color:var(--line-strong)}.offline-banner{display:flex;align-items:center;gap:8px;padding:8px 12px;margin-bottom:12px;border-radius:var(--radius-sm);background:#9a5b001a;border:1px solid rgba(154,91,0,.3);color:var(--warn);font-size:13px;font-weight:600}.chart{width:100%;height:auto;display:block}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.chart-line{fill:none;stroke:var(--accent);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart-axis{stroke:var(--line);stroke-width:1}.chart-dot{fill:var(--bg);stroke:var(--accent);stroke-width:1.5}.chart-dot-last{fill:var(--accent);stroke:var(--accent);stroke-width:1.5}.chart-label{fill:var(--text-dim);font-family:var(--font-body);font-size:12px;font-weight:600}.chart-fill-from{stop-color:var(--accent-tekst);stop-opacity:.26}.chart-fill-to{stop-color:var(--accent-tekst);stop-opacity:0}.onboarding{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:var(--bg);background-image:radial-gradient(900px 420px at 50% -12%,var(--accent-soft),transparent 72%);overflow-y:auto;display:flex;justify-content:center}.onboarding-inner{width:100%;max-width:480px;padding:calc(env(safe-area-inset-top) + var(--s6) + var(--s2)) var(--rand) calc(env(safe-area-inset-bottom) + var(--s6));display:flex;flex-direction:column}.onboarding-titel{font-family:var(--font-display);text-transform:uppercase;letter-spacing:var(--track);font-size:34px;line-height:1}.onboarding-claim{margin-top:4px;font-size:17px;color:var(--text-dim);line-height:1.5}.onboarding-punt{display:flex;gap:var(--s3);align-items:flex-start;padding:var(--s3) var(--vulling);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);font-size:15px;line-height:1.5;color:var(--text-dim)}.onboarding-punt>svg{flex:none;margin-top:2px;color:var(--accent-tekst)}.onboarding-punt strong{color:var(--text)}.onboarding-nr{flex:none;width:24px;height:24px;border-radius:var(--radius-pill);display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-family:var(--font-data);font-weight:700;font-size:15px}.onboarding-stappen{display:flex;gap:6px;justify-content:center;margin-top:26px}.onboarding-stappen span{width:26px;height:4px;border-radius:var(--radius-pill);background:var(--surface-3)}.onboarding-stappen span[data-actief=true]{background:var(--accent)}.timer-klok{text-align:center;padding:22px 16px 18px}.timer-cijfers{font-family:var(--font-data);font-weight:700;font-variant-numeric:tabular-nums;font-size:88px;line-height:1;letter-spacing:.01em;margin:6px 0 10px}.timer-klok[data-done=true]{border-color:var(--accent-dim);background:var(--accent-soft)}.timer-klok[data-done=true] .timer-cijfers{color:var(--accent-tekst);animation:pulse 1s ease-in-out infinite alternate}.set-vergelijk{display:inline-flex;align-items:center;gap:3px;min-width:62px;justify-content:flex-end;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-faint);white-space:nowrap}.set-vergelijk[data-status=beter]{color:var(--good)}.set-vergelijk[data-status=minder]{color:var(--warn)}.voorstel{display:flex;align-items:flex-start;gap:10px;width:100%;text-align:left;padding:11px 12px;margin-bottom:10px;border-radius:var(--radius-sm);background:var(--accent-soft);border:1px solid var(--accent-dim);color:var(--accent-tekst);line-height:1.45}.voorstel:active{filter:brightness(1.15)}.voorstel .small{color:var(--text-dim)}.oefening-titel{display:inline-flex;align-items:center;gap:6px;text-align:left;color:inherit}.oefening-titel:active{opacity:.7}.oefening-notitie{display:flex;gap:7px;align-items:flex-start;margin-top:8px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--bg-elev);border:1px solid var(--line);font-size:13px;color:var(--text-dim);line-height:1.45}.oefening-notitie>svg{color:var(--text-faint)}.ranglijst-plek{flex:none;width:22px;text-align:center;font-family:var(--font-data);font-weight:700;font-size:17px;color:var(--text-faint)}.ranglijst-plek[data-top=true]{color:var(--accent-tekst)}.blokkade{margin-bottom:14px;padding:14px;border-radius:var(--radius);background:#9a5b001a;border:1px solid rgba(154,91,0,.4);color:var(--warn);line-height:1.45}.blokkade strong{color:var(--text)}.blokkade .small{color:var(--text-dim)}.set-knop{text-align:left;color:inherit}.set-knop:active{opacity:.6}.mijlpaal-vink{flex:none;width:26px;height:26px;border-radius:var(--radius-pill);display:grid;place-items:center;background:var(--surface-3);border:1px solid var(--line-strong);color:var(--text-faint);margin-top:2px}.mijlpaal-vink[data-gehaald=true]{background:var(--good);border-color:var(--good);color:#06170e}.mijlpaal-banner{display:flex;gap:9px;align-items:center;padding:var(--s2) 0;color:var(--good);font-size:13px;line-height:1.4}.voorbij-banner{display:flex;gap:9px;align-items:center;padding:var(--s2) 0;color:var(--accent-tekst);font-size:13px;font-weight:600;line-height:1.4}.uitdaging{margin-bottom:var(--s3);padding-bottom:var(--s3);border-bottom:1px solid var(--line);line-height:1.45}.uitdaging .ranglijst-plek{width:18px;font-size:15px}.gewicht-post{display:flex;gap:11px;align-items:flex-start;margin-top:var(--s3);padding:var(--s3);border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line)}.gewicht-post>svg{color:var(--accent-tekst);margin-top:2px}.chip-actie{background:var(--accent-soft);border-color:var(--accent-dim);color:var(--accent-tekst);font-weight:600}.chip-actie:active{background:var(--accent);color:var(--accent-ink)}.sheet-zoek{position:sticky;top:34px;z-index:2;background:var(--bg-elev);padding-bottom:10px;margin-bottom:4px}.swipe-rij{position:relative;overflow:hidden;border-radius:var(--radius-sm)}.swipe-achter{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;justify-content:flex-end;align-items:stretch;background:var(--accent-dim);transition:background .12s ease}.swipe-achter[data-actief=true]{background:var(--accent)}.swipe-knop{display:flex;align-items:center;gap:7px;padding:0 16px;color:#fff;font-size:13px;font-weight:600}.swipe-voor{position:relative;background:var(--surface);padding:0 2px;transition:transform .16s cubic-bezier(.16,.84,.44,1);touch-action:pan-y}.opgeslagen-balk{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px;padding:9px 12px;border-radius:var(--radius-sm);background:var(--good-soft, rgba(28, 122, 74, .13));border:1px solid var(--good);color:var(--good);font-size:13px;font-weight:600;animation:fade .16s ease}.swipe-rij:last-child .set-row{border-bottom:none}.nav-icoon{position:relative;display:inline-grid;place-items:center}.nav-teller{position:absolute;top:-5px;right:-9px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--accent);color:var(--accent-ink);font-family:var(--font-data);font-size:10px;line-height:16px;text-align:center;font-weight:700}.melding-balk{display:flex;align-items:center;gap:10px;width:100%;margin-bottom:12px;padding:11px 13px;text-align:left;border-radius:var(--radius-sm);border:1px solid var(--accent-dim);background:var(--accent-soft);color:var(--text);font-size:15px}.draait{animation:draai .9s linear infinite}@keyframes draai{to{transform:rotate(360deg)}}.trek-houder{position:relative;overscroll-behavior-y:contain}.trek-indicator{position:absolute;top:0;left:0;right:0;display:grid;place-items:center;overflow:hidden;pointer-events:none;transition:opacity .15s ease}.trek-cirkel{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--line-strong);background:var(--surface);color:var(--text-dim);transition:color .15s ease,border-color .15s ease}.trek-cirkel[data-klaar=true]{color:var(--accent-tekst);border-color:var(--accent-dim);background:var(--accent-soft)}.feed-naam{display:block;font-weight:700;font-size:15px;line-height:1.25}.feed-titel{margin:14px 0 2px;font-family:var(--font-display);font-size:34px;line-height:.98;letter-spacing:.005em;overflow-wrap:anywhere}.avatar-foto{object-fit:cover;padding:0}.avatar-bewerk{position:absolute;right:-2px;bottom:-2px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);border:2px solid var(--surface)}.avatar-kader{position:relative;width:100%;max-width:300px;aspect-ratio:1;margin:0 auto;overflow:hidden;border-radius:var(--radius);background:#000;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}.avatar-kader:active{cursor:grabbing}.avatar-kader-foto{position:absolute;left:50%;top:50%;max-width:none;pointer-events:none}.avatar-kader-masker{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;box-shadow:0 0 0 999px #14130fad;border-radius:50%;border:2px solid rgba(255,255,255,.92)}.wachtwoord-rij{position:relative;display:flex;align-items:center}.wachtwoord-rij input{padding-right:52px}.wachtwoord-oog{position:absolute;right:6px;color:var(--text-faint)}.wachtwoord-oog[aria-pressed=true]{color:var(--accent-tekst)}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0 1000px var(--bg-elev) inset;caret-color:var(--text);transition:background-color 9999s ease-in-out 0s}.terugblik .label,.terugblik strong{color:var(--text)}.terugblik .bar{height:6px}.reeks-kaart{margin-bottom:22px}.reeks-vlam{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--surface-3);color:var(--muted)}.reeks-vlam[data-actief=true]{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent-tekst)}.avatar-met-reeks{position:relative;display:inline-flex;flex:none}.avatar-reeks{position:absolute;right:-3px;bottom:-3px;z-index:1;display:inline-flex;align-items:center;gap:1px;padding:1px 4px 1px 3px;border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-size:10px;font-weight:700;line-height:1.2;border:2px solid var(--surface)}.avatar-met-reeks[data-plek=boven] .avatar-reeks{top:-4px;bottom:auto;right:-6px}.gewichtsgang-cijfer{font-size:var(--t-groot);line-height:1}.gewichtsgang-cijfer[data-tone=good]{color:var(--good)}.gewichtsgang-cijfer[data-tone=warn]{color:var(--warn)}.melding-icoon{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--surface-3);color:var(--muted)}.melding-icoon[data-soort=voorbij]{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent-tekst)}.bel{position:relative;flex:none}.bel-stip{position:absolute;top:1px;right:2px;width:9px;height:9px;border-radius:50%;background:var(--accent);border:2px solid var(--bg)}.profiel-cijfers{display:flex;gap:0;margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--line)}.profiel-cijfers button{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:var(--s1) 0;min-height:44px;justify-content:center;border-radius:0;border-right:1px solid var(--line)}.profiel-cijfers button:last-child{border-right:0;padding-left:var(--s4)}.profiel-cijfers button:active .data{color:var(--accent-tekst)}.profiel-cijfers .data{font-size:21px;line-height:1.1}.sheet-zoekrij{position:sticky;top:34px;z-index:2;background:var(--bg-elev);padding:6px 0 8px}.feed-kaart{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--s4) var(--vulling) var(--s4)}.feed-kaart+.feed-kaart{margin-top:var(--s5)}.feed-sets-knop{margin-top:var(--s4)}.feed-acties{margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--line)}.feed-kaart .grid-3{gap:0;border-top:1px solid var(--line);margin-top:14px}.feed-kaart .tile{background:transparent;border:0;border-right:1px solid var(--line);border-radius:0;padding:12px 12px 4px 0;min-height:0}.feed-kaart .tile:last-child{border-right:0}.feed-kaart .tile+.tile{padding-left:14px}.feed-kaart>.divider{display:none}.data,.tile-value,.stepper input,.set-index,.set-badge,.set-value,.avatar,.rest-time,.timer-cijfers,.ranglijst-plek,.nav-teller,.onboarding-nr,.group-tile .group-name{font-weight:400}.app-nav .nav-btn{color:var(--text-dim)}.app-nav .nav-btn[aria-current=page]{color:var(--accent-tekst)}.feed-spiergroepen{margin-top:4px;font-size:15px;color:var(--text-faint);text-transform:capitalize}.feed-oefeningen{margin-top:16px;border-top:1px solid var(--line)}.feed-oefening{display:flex;align-items:baseline;gap:12px;padding:9px 0;border-bottom:1px solid rgba(20,19,15,.07)}.feed-oefening:last-child{border-bottom:0}.feed-oefening-naam{flex:1;min-width:0;font-size:15px;overflow-wrap:anywhere}.feed-oefening-set{font-family:var(--font-data);font-size:21px;font-weight:400;letter-spacing:.01em;font-variant-numeric:tabular-nums;flex:none}.feed-oefening-set[data-record=true]{color:var(--accent-tekst)}.feed-oefening-sets{display:inline-flex;align-items:center;flex:none;width:68px;justify-content:flex-end;font-size:12px;color:var(--text-faint)}.feed-oefening-rest .feed-oefening-naam{font-size:13px;color:var(--text-faint)}.feed-totaal{margin-top:12px;font-size:15px;color:var(--text-faint)}.feed-kaart>.row>button,.card>.row>button{min-height:44px;display:flex;align-items:center}.uitleg-knop{display:inline-grid;place-items:center;width:22px;height:22px;margin:-6px 0 -6px 4px;padding:0;vertical-align:middle;border-radius:50%;color:var(--text-faint);position:relative}.uitleg-knop:after{content:"";position:absolute;top:-11px;right:-11px;bottom:-11px;left:-11px}.uitleg-knop[aria-expanded=true]{background:var(--surface-3);color:var(--text)}.uitleg-tekst{display:block;margin-top:var(--s2);padding:var(--s3);border-radius:var(--radius-sm);background:var(--surface-2);font-size:var(--t-klein, 13px);line-height:1.5;color:var(--text-dim);text-transform:none;letter-spacing:0}.uitleg-kop{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);margin-bottom:var(--s1);font-weight:600;color:var(--text)}.uitleg-sluit{flex:none;display:grid;place-items:center;width:24px;height:24px;margin:-4px;border-radius:50%;color:var(--text-faint)}.coach-note-fout{background:#9a5b0014;border-color:#9a5b0059;color:var(--text)}.rondleiding{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;pointer-events:none}.rondleiding-spot{position:fixed;border-radius:var(--radius);box-shadow:0 0 0 9999px var(--overlay);outline:2px solid var(--accent);outline-offset:0;transition:top .28s cubic-bezier(.22,1,.36,1),left .28s cubic-bezier(.22,1,.36,1),width .28s cubic-bezier(.22,1,.36,1),height .28s cubic-bezier(.22,1,.36,1)}.rondleiding-waas{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay)}.rondleiding-kaart{position:fixed;left:var(--rand);right:var(--rand);max-width:420px;margin:0 auto;pointer-events:auto;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);padding:var(--s4) var(--vulling) var(--s3);box-shadow:0 10px 30px #14130f38}.rondleiding-kaart[data-midden=true]{top:50%;transform:translateY(-50%)}.rondleiding-kaart:focus{outline:none}.rondleiding-titel{font-family:var(--font-display);font-size:var(--t-kop);line-height:1;letter-spacing:var(--track);margin:0}.rondleiding-tekst{margin:var(--s2) 0 0;font-size:var(--t-body);color:var(--text-dim)}.rondleiding-stappen{display:inline-flex;gap:5px;align-items:center}.rondleiding-stappen span{width:6px;height:6px;border-radius:50%;background:var(--surface-3)}.rondleiding-stappen span[data-actief=true]{background:var(--accent)}@media(prefers-reduced-motion:reduce){.rondleiding-spot{transition:none}}.zoekveld{display:flex;align-items:center;gap:var(--s2);margin-bottom:var(--s3);padding-left:var(--vulling);padding-right:var(--s1);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.zoekveld input{flex:1;min-width:0;min-height:var(--tap);border:0;background:transparent;padding:0}.zoekveld input:focus{outline:none}.zoekveld input::-webkit-search-decoration,.zoekveld input::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.zoek-treffer{display:block;margin-top:2px;color:var(--accent-tekst);overflow-wrap:anywhere}
