:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;color:#f7f8f3;background:#080a0b;color-scheme:dark;--accent: #c7ff2f;--accent-strong: #adf000;--accent-text: #111500;--surface: #111416;--surface-raised: #191d1f;--surface-soft: #202527;--border: #303638;--text-muted: #aeb6b2;--rust: #8e9793;--fout: #ff8c8c;--melding: #c7ff2f;--shadow: 0 20px 60px rgb(0 0 0 / .28);font-synthesis:none}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 80% -10%,rgb(199 255 47 / .11),transparent 30rem),#080a0b;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}a{color:inherit}.app-shell{max-width:72rem;margin:0 auto;padding:0 1rem 6.5rem}.site-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 0 .75rem;min-height:72px}.site-title{font-size:1.05rem;font-weight:850;letter-spacing:-.02em;text-transform:uppercase;margin:0}.site-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.nav-link{min-height:44px;min-width:44px;padding:.5rem .75rem;display:inline-flex;align-items:center;color:inherit;text-decoration:none;border-radius:6px}.nav-link:focus-visible,.btn-primary:focus-visible,.btn-secondary:focus-visible,.btn-danger:focus-visible,.btn-ghost:focus-visible,input:focus-visible,select:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.nav-link-active{font-weight:600;text-decoration:underline}.btn-primary,.btn-secondary,.btn-danger,.btn-ghost{min-height:44px;min-width:44px;padding:.6rem 1rem;border-radius:8px;border:1px solid var(--border);font:inherit;cursor:pointer}.btn-primary{background:var(--accent);color:var(--accent-text);border-color:transparent}.btn-secondary{background:transparent;color:inherit}.btn-danger{background:transparent;color:var(--fout);border-color:var(--fout)}.btn-ghost{background:transparent;border:none;color:inherit;text-decoration:underline}.form-stack{display:flex;flex-direction:column;gap:.75rem}.form-stack label{font-weight:500}input,select,textarea{min-height:44px;padding:.5rem;font:inherit;border:1px solid var(--border);border-radius:6px;background:inherit;color:inherit}.radio-row,.tijd-rij{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin:.5rem 0 1rem}.tijd-rij input[type=time]{min-height:44px;width:auto}.fout{color:var(--fout)}.melding{color:var(--melding)}.rustdag{color:var(--rust)}.dag-rust{border-left:4px solid var(--border);padding-left:.75rem}.dag-sport{border-left:4px solid var(--accent);padding-left:.75rem}.speler{text-align:center}.speler-tijd{font-size:3rem;font-weight:700;margin:.5rem 0}.speler-knoppen{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:1rem}.hint{font-size:.9rem;opacity:.85}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.oefening-kaart{border:1px solid var(--border);border-radius:8px;padding:1rem;margin-bottom:1rem}.oefening-beeld{max-width:100%;border-radius:6px}.oefening-tekstkaart{padding:1rem;background:var(--border);border-radius:6px}.oefening-symbool{font-size:1.5rem;margin-right:.5rem}.stand-tabel{width:100%;border-collapse:collapse}.stand-tabel th,.stand-tabel td{border-bottom:1px solid var(--border);padding:.5rem;text-align:left}.rij-winnaar{font-weight:600}.meta{font-size:.9rem;opacity:.9}.kalender-lijst{list-style:none;padding:0}.kalender-lijst li{margin-bottom:1rem}.site-footer{margin-top:2rem;padding:1rem 0;display:flex;gap:.5rem;flex-wrap:wrap}.site-footer a{min-height:44px;display:inline-flex;align-items:center;color:inherit}.brand,.header-actions,.section-heading,.calendar-day-head{display:flex;align-items:center}.brand{gap:.7rem;text-decoration:none}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;color:var(--accent-text);background:var(--accent);font-size:.78rem;font-weight:950;letter-spacing:-.04em;transform:skew(-5deg)}.header-actions{gap:.35rem}.icon-link{display:grid;place-items:center;width:44px;height:44px;color:var(--text-muted);border-radius:50%}.icon-link:hover{color:var(--accent);background:var(--surface)}.icon-link svg{width:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.meldingen-bel{position:relative}.meldingen-badge{position:absolute;top:4px;right:2px;min-width:1.1rem;height:1.1rem;padding:0 .22rem;border-radius:999px;background:var(--accent);color:var(--accent-text);font-size:.62rem;font-weight:800;line-height:1.1rem;text-align:center}.melding-lijst .melding-link{display:flex;flex-direction:column;gap:.2rem;flex:1;color:inherit;text-decoration:none}.melding-lijst li.is-ongelezen .melding-link strong{color:var(--accent)}.activity-list a{color:inherit}.compact-button{font-size:.84rem}.site-nav{position:fixed;z-index:20;inset:auto 0 0;justify-content:space-around;gap:0;margin:0;padding:.4rem max(.5rem,env(safe-area-inset-right)) calc(.4rem + env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left));border-top:1px solid rgb(255 255 255 / .08);background:#0c0f10f0;box-shadow:0 -15px 35px #00000052;backdrop-filter:blur(18px)}.nav-link{flex-direction:column;justify-content:center;flex:1;gap:.15rem;min-width:0;padding:.45rem .15rem;border-radius:12px;color:#7f8984;font-size:.65rem;font-weight:720;transition:color .18s ease,background-color .18s ease,transform .12s ease}.nav-link:active{transform:scale(.94)}.nav-link-active{color:var(--accent);text-decoration:none;background:#c7ff2f14}.nav-link-active .nav-icon{animation:nav-feedback .26s cubic-bezier(.2,.8,.2,1)}.nav-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.page-shell{max-width:62rem;margin:0 auto}main{width:100%}.page-enter{animation:page-enter .32s cubic-bezier(.2,.75,.25,1) both}h1,h2,h3,p{overflow-wrap:anywhere}h1{margin:0;font-size:clamp(2.25rem,9vw,4.8rem);line-height:.94;letter-spacing:-.065em;font-weight:920}h2{margin:0;font-size:clamp(1.35rem,5vw,2rem);line-height:1.08;letter-spacing:-.04em}h3{margin:0;line-height:1.15;letter-spacing:-.025em}section{margin-top:2.2rem}.page-header{padding:2.5rem 0 1rem}.page-intro{max-width:38rem;margin:1rem 0 0;color:var(--text-muted);font-size:1.02rem}.eyebrow{margin:0 0 .55rem;color:var(--accent);font-size:.73rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.muted{color:var(--text-muted)}.section-heading{justify-content:space-between;gap:1rem;margin-bottom:1rem}.count-badge,.pill,.status-pill{flex:0 0 auto;padding:.32rem .58rem;border:1px solid var(--border);border-radius:999px;color:var(--text-muted);font-size:.7rem;font-weight:760}.category-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}.category-card{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;min-height:112px;padding:1rem;color:inherit;text-align:left;border:1px solid var(--border);border-radius:17px;background:linear-gradient(145deg,var(--surface-raised),var(--surface));cursor:pointer;transition:transform .14s ease,border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.category-card strong{font-size:1.05rem}.category-card span{color:var(--text-muted);font-size:.8rem}.category-card.is-active{color:var(--accent-text);border-color:var(--accent);background:var(--accent);box-shadow:0 10px 28px #c7ff2f24}.category-card:active{transform:scale(.98)}.category-card.is-active span{color:#111500b8}.instellingen-grid .category-card{text-decoration:none}.opslag-feedback{margin:.35rem 0 1rem}.weekritme-editor{display:grid;gap:.75rem;margin:.6rem 0 0;padding:0;list-style:none}.weekritme-editor>li{display:grid;gap:.35rem}.weekritme-editor>li>span{color:var(--text-muted);font-size:.75rem;font-weight:760;letter-spacing:.06em;text-transform:uppercase}.favoriet-lijst{display:grid;gap:.45rem;margin:.6rem 0;padding:0;list-style:none}.favoriet-lijst li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .7rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-raised)}.template-grid,.exercise-grid{display:grid;gap:.85rem}.catalogus-meer{display:flex;justify-content:center;margin:.85rem 0 0}.template-card{display:grid;grid-template-columns:88px 1fr;min-height:146px;overflow:hidden;text-decoration:none;border:1px solid var(--border);border-radius:20px;background:var(--surface);animation:card-reveal .36s cubic-bezier(.2,.75,.25,1) both;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.template-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 16px 34px #00000052}.template-card:active{transform:translateY(0) scale(.98)}.template-visual{display:grid;place-items:end center;padding-bottom:1.1rem;color:var(--accent-text);background:linear-gradient(160deg,transparent 35%,rgb(0 0 0 / .15)),var(--accent)}.template-visual span{font-size:2.35rem;font-weight:950;letter-spacing:-.08em}.template-copy{padding:1rem}.template-copy h3{margin:.65rem 0 .35rem;font-size:1.25rem}.template-copy p{margin:0;color:var(--text-muted);font-size:.82rem}.card-link{display:inline-block;margin-top:.8rem;color:var(--accent);font-size:.8rem;font-weight:800}.search-field{display:grid;gap:.45rem;margin-bottom:1rem;color:var(--text-muted);font-size:.76rem;font-weight:720}input,select,textarea{min-height:50px;padding:.72rem .85rem;border-color:var(--border);border-radius:12px;background:#0e1112}fieldset{padding:1rem;border:1px solid var(--border);border-radius:14px}legend{padding:0 .4rem;font-weight:800}.oefening-kaart,.content-card,.state-card,.details-card,.table-card{border:1px solid var(--border);border-radius:18px;background:linear-gradient(145deg,var(--surface-raised),var(--surface));box-shadow:var(--shadow)}.oefening-kaart{display:flex;flex-direction:column;margin:0;padding:.8rem;animation:card-reveal .36s cubic-bezier(.2,.75,.25,1) both}.oefening-kaart h3{margin-top:.8rem}.oefening-kaart>p{color:var(--text-muted);font-size:.86rem}.oefening-kaart.compact{min-height:198px}.oefening-beeld,.oefening-tekstkaart{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:12px}.oefening-tekstkaart{display:grid;place-items:center;padding:1rem;background:var(--surface-soft);text-align:center}.oefening-tekstkaart[hidden]{display:none}.oefening-media{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.oefening-media.compact{margin-bottom:0}.oefening-media .oefening-beeld,.oefening-media .oefening-video{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:12px;background:var(--surface-soft)}.speler .oefening-media{grid-template-columns:1fr;width:min(100%,22rem);margin:.7rem auto .4rem}.oefening-media.stil{grid-template-columns:1fr}.speler-cue{margin:.4rem auto 0;max-width:28rem;font-size:1.02rem;font-weight:650}.speler-stopregel{margin:.25rem auto 0;max-width:28rem;color:var(--text-muted);font-size:.88rem}.speler-volgt{margin:.35rem auto 0;max-width:28rem;color:var(--accent);font-weight:750}.speler-amrap{margin:.2rem auto 0;color:var(--text-muted);font-size:.88rem;font-weight:700}.speler-rust .speler-tijd{letter-spacing:-.06em}.recap-lijst{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:.6rem 0 0;padding:0;list-style:none}.recap-lijst li{display:flex;flex-direction:column;gap:.15rem;margin:0;padding:.7rem;border-radius:14px;background:var(--surface-soft);text-align:center}.recap-lijst strong{font-size:1.35rem}.wissel-acties{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem}.wissel-lijst{display:grid;gap:.35rem;margin:.5rem 0 0;padding:0;list-style:none}.wissel-lijst button{width:100%;text-align:left}.vervangt-label{display:block;color:var(--text-muted);font-size:.8rem}.content-card,.state-card,.details-card{padding:1.1rem}.content-card{margin-top:1rem}.privacy-copy{margin-bottom:1rem}.privacy-copy h3:not(:first-child){margin-top:1.25rem}.privacy-copy p{margin:.45rem 0 0;color:var(--text-muted)}.danger-zone{margin-top:1.5rem;padding:1rem;border:1px solid rgb(255 140 140 / .45);border-radius:18px;background:#ff8c8c0d}.danger-zone p{margin:0}.state-card{margin:1rem 0}.state-card h2,.state-card h3{margin-bottom:.45rem}.state-card p{margin:.25rem 0 .8rem;color:var(--text-muted)}.error-state{border-color:#ff8c8c8c}.btn-primary,.btn-secondary,.btn-danger,.btn-ghost{min-height:48px;padding:.7rem 1rem;border-radius:12px;font-weight:820;text-decoration:none;transition:transform .12s ease,background-color .16s ease,border-color .16s ease}.btn-primary:active,.btn-secondary:active,.btn-danger:active,.btn-ghost:active{transform:scale(.98)}.btn-primary{background:var(--accent)}.btn-primary:hover{background:var(--accent-strong)}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled{cursor:wait;opacity:.6}.btn-wide{display:flex;justify-content:center;width:100%;margin-top:1rem}.form-stack{gap:.8rem}.form-stack label{font-size:.84rem;font-weight:760}.melding,.fout{padding:.8rem;border-radius:12px;background:#c7ff2f14}.fout{background:#ff8c8c14}.success-banner{border:1px solid rgb(199 255 47 / .28)}.score-card{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;padding:1.2rem;margin-top:1rem;border:1px solid rgb(199 255 47 / .28);border-radius:22px;background:linear-gradient(135deg,rgb(199 255 47 / .1),transparent 55%),var(--surface)}.score-card>div:first-child{display:flex;flex-direction:column}.score-label,.score-card span,.week-progress span{color:var(--text-muted);font-size:.75rem}.score-card>div:first-child strong{color:var(--accent);font-size:3.4rem;line-height:1;letter-spacing:-.08em}.week-progress{display:flex;flex-direction:column;text-align:right}.week-progress strong{font-size:1.5rem}.start-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:145px;margin:1rem 0 2rem;padding:1.2rem;color:var(--accent-text);text-decoration:none;border-radius:22px;background:var(--accent)}.start-card>span{display:flex;flex-direction:column}.start-card small{margin-bottom:.3rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.start-card strong{max-width:18rem;font-size:1.35rem;line-height:1.05}.start-card span span{margin-top:.55rem;font-size:.8rem;opacity:.72}.start-card b{font-size:2rem}.activity-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.activity-list li{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--border)}.activity-list li:last-child{border-bottom:0}.activity-list li>span:first-child{display:flex;flex-direction:column}.activity-list small,.activity-list li>span:last-child{color:var(--text-muted);font-size:.78rem}.sync-list{display:grid;gap:.75rem;margin:1rem 0 0;padding:0;list-style:none}.sync-list li{padding:.9rem;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.sync-list p{margin:.7rem 0 0;color:var(--text-muted);font-size:.84rem}.sync-list button{margin:.7rem .5rem 0 0}.sync-item-head,.sync-item-head>span:first-child{display:flex}.sync-item-head{align-items:flex-start;justify-content:space-between;gap:1rem}.sync-item-head>span:first-child{flex-direction:column}.sync-item-head small{color:var(--text-muted)}.status-verwerkt{color:var(--accent);border-color:#c7ff2f66}.status-conflict,.status-actie_nodig{color:var(--fout);border-color:#ff8c8c8c}.text-link,.back-link,.auth-back{display:inline-flex;min-height:44px;align-items:center;color:var(--accent);font-weight:780}.workout-hero{margin-top:1rem;padding:1.35rem;border-radius:24px;background:linear-gradient(145deg,rgb(199 255 47 / .16),transparent 55%),var(--surface)}.workout-hero h1{max-width:42rem}.workout-stats{display:flex;gap:1.5rem;margin-top:2rem}.workout-stats>div{display:flex;flex-direction:column}.workout-stats strong{font-size:1.5rem}.workout-stats span{color:var(--text-muted);font-size:.7rem}.sessie-builder{margin-bottom:2.2rem;padding:1.15rem 1.15rem .4rem;border:1px solid var(--border);border-radius:24px;background:linear-gradient(160deg,rgb(199 255 47 / .1),transparent 46%),var(--surface)}.sessie-builder .muted{margin:0 0 1rem;color:var(--text-muted);font-size:.88rem}.sessie-keuze{margin:0 0 .95rem;padding:0;border:0}.sessie-keuze legend,.sessie-duur legend{margin-bottom:.45rem;color:var(--text-muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.chip-row{display:flex;flex-wrap:wrap;gap:.45rem}.chip{min-height:44px;padding:.45rem .85rem;color:inherit;text-decoration:none;border:1px solid var(--border);border-radius:999px;background:var(--surface-raised);font-weight:780;cursor:pointer}.chip.is-active{color:var(--accent-text);border-color:var(--accent);background:var(--accent)}.sessie-preview{margin-top:.4rem}.workout-circuit-lead{max-width:36rem;margin:.7rem 0 0;color:var(--text-muted);font-size:.92rem}.sessie-duur{margin:1.2rem 0 0;padding:0;border:0}.workout-planned-duration{display:flex;justify-content:space-between;gap:1rem;margin:1.25rem 0 0;padding-top:1rem;border-top:1px solid rgb(255 255 255 / .09)}.workout-planned-duration span{color:var(--accent)}.workout-plan-list{display:grid;gap:.6rem;margin:0 0 1rem;padding:0;list-style:none;counter-reset:workout-stap}.workout-plan-list li{display:grid;grid-template-columns:2rem minmax(0,1fr);column-gap:.75rem;padding:.85rem;border:1px solid var(--border);border-radius:14px;background:var(--surface);counter-increment:workout-stap}.workout-plan-list li:before{display:grid;grid-row:1 / 3;place-items:center;width:2rem;height:2rem;color:var(--accent-text);border-radius:50%;background:var(--accent);font-weight:900;content:counter(workout-stap)}.workout-plan-list span{color:var(--text-muted);font-size:.8rem}.sticky-action{position:sticky;bottom:5.4rem;z-index:10;box-shadow:0 12px 32px #0000007a}.details-card{margin-top:1rem}.details-card summary{cursor:pointer;font-weight:800}.details-card label,.details-card input,.details-card button{display:block;width:100%;margin-top:.8rem}.speler{display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 12rem);padding:1rem;border-radius:28px;background:radial-gradient(circle,rgb(199 255 47 / .11),transparent 50%),var(--surface);overflow:hidden}.speler h2{font-size:1.55rem}.speler-fase{color:var(--accent);font-weight:820;letter-spacing:.11em;text-transform:uppercase}.speler-volgorde{margin:0 0 .5rem;color:var(--text-muted);font-size:.78rem;font-weight:750}.timer-ring{position:relative;display:grid;width:min(72vw,19rem);aspect-ratio:1;place-items:center;margin:.5rem auto;animation:timer-phase-enter .3s cubic-bezier(.2,.8,.2,1) both}.timer-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.timer-ring circle{fill:none;stroke-width:7}.timer-ring-baan{stroke:var(--surface-soft)}.timer-ring-voortgang{stroke:var(--accent);stroke-dasharray:100;stroke-dashoffset:100;stroke-linecap:round;transition:stroke-dashoffset .25s linear}.speler-tijd{color:var(--accent);font-size:clamp(4.6rem,21vw,7.5rem);font-weight:950;line-height:.9;letter-spacing:-.09em}.speler-tijd small{margin-left:.08em;font-size:.24em;letter-spacing:0}.speler-meta{color:var(--text-muted)}.speler-knoppen button{flex:1 1 120px}.kalender-lijst{display:grid;gap:.75rem}.kalender-lijst li{margin:0;padding:1rem;border:1px solid var(--border);border-left-width:4px;border-radius:16px;background:var(--surface)}.calendar-day-head{justify-content:space-between;gap:1rem}.calendar-day-head h2{font-size:1rem}.status-sport{color:var(--accent);border-color:#c7ff2f66}.kalender-lijst p{margin-bottom:0;color:var(--text-muted);font-size:.84rem}.stand-tabel th,.stand-tabel td{padding:.9rem;white-space:nowrap}.rij-winnaar{color:var(--accent)}.auth-page{display:grid;min-height:100vh;place-items:center;padding:1rem}.auth-card{width:min(100%,29rem);padding:1.4rem;border:1px solid var(--border);border-radius:24px;background:var(--surface);box-shadow:var(--shadow)}.auth-card h1{font-size:clamp(2.3rem,11vw,3.5rem)}.auth-card .form-stack{margin-top:1.5rem}.site-footer{color:var(--text-muted);font-size:.75rem}@media(min-width:46rem){.app-shell{padding-bottom:3rem}.site-nav{position:static;justify-content:center;gap:.4rem;margin:.2rem 0 1rem;padding:.4rem;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:none;backdrop-filter:none}.nav-link{flex:0 1 9rem;flex-direction:row;gap:.45rem;padding:.65rem;font-size:.78rem}.category-grid{grid-template-columns:repeat(5,1fr)}.template-grid{grid-template-columns:repeat(3,1fr)}.template-card{grid-template-columns:1fr;grid-template-rows:118px 1fr}.template-visual{place-items:center;padding:0}.exercise-grid{grid-template-columns:repeat(2,1fr)}.sticky-action{bottom:1rem}}@media(min-width:64rem){.exercise-grid{grid-template-columns:repeat(3,1fr)}}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes card-reveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes timer-phase-enter{0%{opacity:.7;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes nav-feedback{50%{transform:scale(1.16)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.page-enter,.template-card,.oefening-kaart,.timer-ring,.nav-link-active .nav-icon{animation:none!important}.timer-ring-voortgang{transition:none!important}}.log-filters{display:grid;gap:.85rem;margin:0 0 1rem}.log-filters fieldset{border:0;padding:0;margin:0}.log-filters legend{margin-bottom:.4rem;color:var(--text-muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.log-totalen{margin:0 0 1rem;color:var(--text-muted);font-size:.9rem}.gevoel-veld{border:0;padding:0;margin:0}.gevoel-veld legend{font-weight:500}.gevoel-veld .chip{position:relative}.gevoel-veld .chip input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}.hint{margin:.2rem 0 .45rem;color:var(--text-muted);font-size:.8rem}.notitie-veld{min-height:5.5rem;resize:vertical}.soort-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:.55rem 0 0;padding:0;list-style:none}.soort-tag{padding:.2rem .55rem;border:1px solid var(--border);border-radius:999px;background:var(--surface-raised);color:var(--text-muted);font-size:.75rem;font-weight:700}.soort-tag-vriend{opacity:.85}.duel-blok,.snelle-start,.favorieten-blok{margin:1rem 0;padding:1.1rem;border:1px solid rgb(199 255 47 / .22);border-radius:22px;background:linear-gradient(160deg,rgb(199 255 47 / .1),transparent 48%),var(--surface)}.snelle-start,.favorieten-blok{border-color:var(--border);background:linear-gradient(160deg,rgb(199 255 47 / .06),transparent 50%),var(--surface)}.duel-blok .section-heading,.snelle-start .section-heading,.favorieten-blok .section-heading{margin-top:0}.duel-scores,.stand-kaarten,.snelle-start-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.snelle-start-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:.85rem}.duel-score,.stand-kaart,.snelle-start-kaart{display:flex;flex-direction:column;gap:.15rem;margin:0;padding:.9rem;border:1px solid var(--border);border-radius:16px;background:var(--surface-raised)}.duel-score span,.snelle-start-kaart small,.snelle-start-kaart span,.stand-kaart-kicker,.stand-kaart-punten span,.stand-kaart-verschil{color:var(--text-muted);font-size:.72rem;font-weight:760;letter-spacing:.06em;text-transform:uppercase}.duel-score strong,.snelle-start-kaart strong,.stand-kaart-punten strong{color:var(--accent);font-size:2rem;line-height:1;letter-spacing:-.06em}.snelle-start-kaart{color:inherit;text-decoration:none;min-height:92px}.snelle-start-kaart strong{font-size:1.35rem;margin:.2rem 0}.snelle-start-kaart span{text-transform:none;letter-spacing:0;font-size:.78rem}.snelle-start-kaart.is-active,.duel-score.is-eigen,.stand-kaart.is-eigen{border-color:#c7ff2f73}.stand-kaart.is-winnaar{box-shadow:inset 0 0 0 1px #c7ff2f59}.duel-zin,.week-voortgang{margin:.85rem 0 0}.duel-zin{font-weight:760}.week-voortgang{display:flex;flex-direction:column;gap:.45rem}.week-voortgang>span{color:var(--text-muted);font-size:.78rem;font-weight:760}.week-punten{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem;margin:0;padding:0;list-style:none}.week-punten li{display:grid;place-items:center;min-height:36px;border-radius:999px;background:var(--surface-soft);color:var(--text-muted);font-size:.68rem;font-weight:800}.week-punten li.is-sport{color:var(--accent-text);background:var(--accent)}.vriend-regel{margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--border)}.vriend-regel h3{margin:0 0 .35rem;font-size:.95rem}.vriend-regel p{margin:0 0 .4rem;color:var(--text-muted)}.stand-kaarten{margin-top:1rem}.stand-kaart h2{margin:.15rem 0 .5rem;font-size:1.15rem}.stand-kaart-punten{display:flex;align-items:baseline;gap:.4rem;margin:0}.stand-kaart-verschil{margin:.35rem 0 .7rem;color:var(--accent);text-transform:none;letter-spacing:0;font-size:.95rem}.stand-kaart-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;margin:0}.stand-kaart-stats div{margin:0}.stand-kaart-stats dt{color:var(--text-muted);font-size:.68rem;font-weight:760}.stand-kaart-stats dd{margin:.15rem 0 0;font-size:1.05rem;font-weight:800}.log-kaarten{display:grid;gap:.7rem;margin:.8rem 0 0;padding:0;list-style:none}.log-kaart{display:grid;gap:.3rem;margin:0;padding:.85rem .95rem;border:1px solid var(--border);border-radius:16px;background:var(--surface-raised)}.log-kaarten.compact{margin-top:.5rem}.log-kaart-hoofd{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.log-kaart-hoofd>div{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.log-kaart-hoofd strong{font-size:1rem}.log-kaart-meta,.log-kaart p{margin:0;color:var(--text-muted);font-size:.82rem}.log-kaart-notitie{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.log-badge{padding:.12rem .5rem;border-radius:999px;background:#c7ff2f29;color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.log-badge.is-vriend{background:var(--surface-soft);color:var(--text-muted)}@media(max-width:36rem){.snelle-start-grid,.stand-kaarten{grid-template-columns:1fr 1fr}.duel-score strong,.stand-kaart-punten strong{font-size:1.65rem}}:root{--accent: #c7ff2f;--accent-strong: #adf000;--accent-glow: rgba(199, 255, 47, .28);--rival: #38bdf8;--rival-glow: rgba(56, 189, 248, .24);--flame: #fb923c;--glass-bg: rgba(19, 23, 26, .78);--glass-border-top: inset 0 1px 0 rgba(255, 255, 255, .09)}body{background:radial-gradient(circle at 82% -8%,rgba(199,255,47,.14),transparent 32rem),radial-gradient(circle at 12% 18%,rgba(56,189,248,.08),transparent 28rem),#07090a}.content-card,.state-card,.details-card,.table-card,.duel-blok,.stand-kaart,.log-kaart,.dag{backdrop-filter:blur(18px);box-shadow:var(--glass-border-top),0 18px 44px #00000057}.duel-kaart{position:relative;overflow:hidden;padding:1.25rem;border:1px solid rgba(199,255,47,.26);border-radius:24px;background:radial-gradient(circle at 15% 0%,rgba(199,255,47,.14),transparent 52%),radial-gradient(circle at 88% 0%,rgba(56,189,248,.14),transparent 52%),var(--glass-bg)}.duel-live-pill{border-color:#c7ff2f59;background:#c7ff2f1a;color:var(--accent)}.duel-scores{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.65rem}.duel-score{align-items:center;text-align:center;padding:1rem .75rem;border-radius:20px;background:#191d20d9;box-shadow:var(--glass-border-top);transition:transform .18s ease,border-color .18s ease}.duel-score-eigen{border-color:#c7ff2f6b;background:radial-gradient(circle at 50% 0%,rgba(199,255,47,.11),transparent 70%),#161b18e6}.duel-score-vriend{border-color:#38bdf85c;background:radial-gradient(circle at 50% 0%,rgba(56,189,248,.11),transparent 70%),#141a1fe6}.duel-score-vriend strong{color:var(--rival)}.duel-player-top{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:.25rem}.duel-avatar{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:999px;font-size:.82rem;background:#ffffff0f}.duel-avatar.is-eigen{background:#c7ff2f2e;box-shadow:0 0 12px var(--accent-glow)}.duel-avatar.is-vriend{background:#38bdf82e;box-shadow:0 0 12px var(--rival-glow)}.duel-cap-label{font-size:.68rem;font-weight:800;color:var(--text-muted)}.duel-ring-wrap{position:relative;display:grid;place-items:center;width:84px;height:84px;margin:.2rem auto .35rem}.duel-ring{width:84px;height:84px;overflow:visible}.duel-ring-track{stroke:#ffffff17}.duel-ring-eigen .duel-ring-progress{stroke:var(--accent);filter:drop-shadow(0 0 6px var(--accent-glow));transition:stroke-dashoffset .52s cubic-bezier(.22,1,.36,1)}.duel-ring-vriend .duel-ring-progress{stroke:var(--rival);filter:drop-shadow(0 0 6px var(--rival-glow));transition:stroke-dashoffset .52s cubic-bezier(.22,1,.36,1)}.duel-ring-center{position:absolute;inset:0;display:grid;place-items:center}.duel-ring-center strong{font-size:1.55rem;font-weight:900;letter-spacing:-.05em}.duel-vs-badge{display:grid;place-items:center;width:36px;height:36px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(145deg,#23292d,#131719);color:#fff;font-size:.72rem;font-weight:950;letter-spacing:.06em;box-shadow:0 8px 20px #00000073}.duel-arena-bar{margin-top:.9rem}.duel-arena-track{display:flex;height:11px;overflow:hidden;border-radius:999px;background:#ffffff14;padding:2px;gap:3px}.duel-arena-fill-eigen{height:100%;border-radius:999px;background:linear-gradient(90deg,#9be100,var(--accent));box-shadow:0 0 12px var(--accent-glow);transition:width .46s cubic-bezier(.22,1,.36,1)}.duel-arena-fill-vriend{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--rival),#0284c7);box-shadow:0 0 12px var(--rival-glow);transition:width .46s cubic-bezier(.22,1,.36,1)}.duel-arena-labels{display:flex;justify-content:space-between;margin-top:.35rem;font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.week-voortgang-head{display:flex;align-items:center;justify-content:space-between}.week-Voortgang-head span,.week-voortgang-head>span:first-child{color:var(--text-muted);font-size:.78rem;font-weight:760}.week-pct-badge{padding:.12rem .48rem;border-radius:999px;background:#c7ff2f24;color:var(--accent);font-size:.7rem;font-weight:850}.week-progress-bar{height:7px;overflow:hidden;border-radius:999px;background:#ffffff14}.week-progress-bar>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),#7ce800);box-shadow:0 0 10px var(--accent-glow);transition:width .42s ease}.vriend-regel-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.35rem}.vriend-regel-head h3{margin:0}.vriend-sport-badge{padding:.18rem .58rem;border-radius:999px;border:1px solid rgba(56,189,248,.35);background:#38bdf824;color:var(--rival);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.start-card{position:relative;overflow:hidden;box-shadow:0 16px 38px #c7ff2f38;transition:transform .16s ease,box-shadow .18s ease}.start-card:hover{transform:translateY(-2px);box-shadow:0 20px 44px #c7ff2f4d}.start-card.is-rust-card{color:#f7f8f3;border:1px solid rgba(199,255,47,.42);background:radial-gradient(circle at 88% 20%,rgba(199,255,47,.22),transparent 55%),linear-gradient(145deg,#1b221a,#111614);box-shadow:0 16px 38px #00000059}.start-card.is-rust-card small,.start-card.is-rust-card b{color:var(--accent)}.quick-log-section{margin:1.25rem 0 .5rem;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:20px;background:var(--glass-bg);box-shadow:var(--glass-border-top)}.quick-log-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.65rem}.quick-log-head .eyebrow{margin:0}.quick-log-head .muted{font-size:.76rem}.quick-log-strip{display:flex;flex-wrap:wrap;gap:.5rem}.quick-log-pill{display:inline-flex;align-items:center;min-height:42px;padding:.48rem .85rem;border:1px solid rgba(199,255,47,.24);border-radius:999px;background:#191f1ce6;color:#f7f8f3;font-size:.82rem;font-weight:800;text-decoration:none;transition:transform .13s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.quick-log-pill:hover{border-color:var(--accent);background:#c7ff2f24;box-shadow:0 6px 18px #c7ff2f29;transform:translateY(-1px)}.quick-log-pill:active{transform:scale(.97)}.stand-duel-arena{margin:1rem 0 1.25rem;padding:1.25rem;border:1px solid rgba(199,255,47,.26);border-radius:24px;background:radial-gradient(circle at 12% 10%,rgba(199,255,47,.14),transparent 50%),radial-gradient(circle at 88% 10%,rgba(56,189,248,.14),transparent 50%),var(--glass-bg);box-shadow:var(--glass-border-top),0 20px 46px #0000005c}.stand-arena-top{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.75rem;margin-bottom:.95rem}.stand-arena-fighter{display:flex;flex-direction:column;gap:.25rem;padding:.85rem;border:1px solid var(--border);border-radius:18px;background:#14181bd9}.stand-arena-fighter.is-eigen{border-color:#c7ff2f61}.stand-arena-fighter.is-vriend{border-color:#38bdf861;text-align:right;align-items:flex-end}.stand-arena-fighter.is-leader{box-shadow:0 0 22px #c7ff2f24}.stand-fighter-badge span{display:inline-block;padding:.15rem .52rem;border-radius:999px;background:#ffffff12;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.stand-fighter-score{font-size:1.85rem;font-weight:950;line-height:1;letter-spacing:-.06em;color:var(--accent)}.stand-arena-fighter.is-vriend .stand-fighter-score{color:var(--rival)}.stand-fighter-score small{font-size:.78rem;font-weight:750;color:var(--text-muted)}.stand-arena-center{display:flex;flex-direction:column;align-items:center;gap:.35rem}.stand-vs-orb{display:grid;place-items:center;width:40px;height:40px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(145deg,#252b30,#121618);font-size:.76rem;font-weight:950}.stand-diff-pill{padding:.2rem .55rem;border-radius:999px;background:#c7ff2f24;color:var(--accent);font-size:.68rem;font-weight:850;white-space:nowrap}.stand-compare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin-top:.95rem}.stand-compare-tile{padding:.65rem .55rem;border:1px solid var(--border);border-radius:14px;background:#111518d9;text-align:center}.compare-label{display:block;margin-bottom:.25rem;color:var(--text-muted);font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.compare-values{display:flex;align-items:baseline;justify-content:center;gap:.3rem;font-size:.88rem}.compare-values b.is-eigen{color:var(--accent)}.compare-values b.is-vriend{color:var(--rival)}.compare-values span{color:var(--text-muted);font-size:.68rem}.formule-card h3{margin-bottom:.65rem}.formule-badges{display:flex;flex-wrap:wrap;gap:.5rem}.formule-badge{padding:.38rem .75rem;border:1px solid rgba(199,255,47,.28);border-radius:999px;background:#c7ff2f17;color:#f7f8f3;font-size:.78rem;font-weight:800}.sport-radio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:.55rem;margin-top:.35rem}.sport-tile{position:relative;display:flex;align-items:center;gap:.5rem;margin:0;min-height:52px;padding:.6rem .75rem;border:1px solid var(--border);border-radius:14px;background:#181d1fe6;font-size:.84rem;font-weight:800;cursor:pointer;transition:transform .12s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.sport-tile input[type=radio]{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.sport-tile:before{font-size:1.15rem;line-height:1}.sport-tile[data-soort=kracht]:before{content:"💪"}.sport-tile[data-soort=cardio]:before{content:"🫀"}.sport-tile[data-soort=hardlopen]:before{content:"🏃"}.sport-tile[data-soort=wandelen]:before{content:"🚶"}.sport-tile[data-soort=stretch]:before{content:"🧘"}.sport-tile[data-soort=pilates]:before{content:"🤸"}.sport-tile[data-soort=eigen]:before{content:"⚡"}.sport-tile.is-selected{border-color:var(--accent);background:#c7ff2f24;color:var(--accent);box-shadow:0 0 18px #c7ff2f29}.duur-quick-pills{display:flex;flex-wrap:wrap;gap:.45rem}.duur-pill{min-height:38px;padding:.35rem .75rem;border:1px solid var(--border);border-radius:999px;background:var(--surface-raised);color:var(--text-muted);font-size:.78rem;font-weight:800;cursor:pointer;transition:all .14s ease}.duur-pill.is-active,.duur-pill:hover{border-color:var(--accent);background:#c7ff2f26;color:var(--accent)}.dagplafond-meter{padding:.75rem .9rem;border:1px solid rgba(199,255,47,.24);border-radius:14px;background:#121715d9}.dagplafond-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem;font-size:.76rem}.dagplafond-head span{color:var(--text-muted);font-weight:750}.dagplafond-head strong{color:var(--accent);font-weight:850}.dagplafond-track{height:8px;overflow:hidden;border-radius:999px;background:#ffffff14}.dagplafond-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--flame));box-shadow:0 0 12px var(--accent-glow);transition:width .32s ease}.kalender-streak-card{margin:1rem 0 1.25rem;padding:1.05rem;border:1px solid rgba(199,255,47,.24);border-radius:20px;background:var(--glass-bg);box-shadow:var(--glass-border-top)}.kalender-streak-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.8rem}.kalender-streak-head .eyebrow{display:block;margin-bottom:.15rem}.kalender-streak-legend{display:flex;gap:.75rem;font-size:.74rem;font-weight:800;color:var(--text-muted)}.legend-dot:before{content:"";display:inline-block;width:8px;height:8px;margin-right:.35rem;border-radius:999px}.legend-dot.is-eigen:before{background:var(--accent)}.legend-dot.is-vriend:before{background:var(--rival)}.kalender-streak-strip{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:.4rem}.streak-cell{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.5rem .25rem;border:1px solid var(--border);border-radius:12px;background:#181c1fd9}.streak-cell.is-sport{border-color:#c7ff2f7a;background:#c7ff2f1a}.streak-day-num{font-size:.75rem;font-weight:850}.streak-dots{display:flex;gap:4px}.streak-dot-eigen,.streak-dot-vriend{width:7px;height:7px;border-radius:999px;background:#ffffff24}.streak-dot-eigen.is-on{background:var(--accent);box-shadow:0 0 6px var(--accent-glow)}.streak-dot-vriend.is-on{background:var(--rival);box-shadow:0 0 6px var(--rival-glow)}.dag{padding:1rem 1.1rem;border:1px solid var(--border);border-radius:18px;background:var(--glass-bg)}.dag-score-block p{margin:.45rem 0 .3rem}.dag-score-bar{height:6px;overflow:hidden;border-radius:999px;background:#ffffff14;margin-bottom:.5rem}.dag-score-bar>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),#7ce800)}.dag-split{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem}.dag-split p{margin:.25rem 0}.dag-split-pills{display:flex;gap:.35rem}.split-mini-pill{padding:.15rem .5rem;border-radius:999px;background:#ffffff0f;color:var(--text-muted);font-size:.72rem;font-weight:800}.split-mini-pill.is-eigen.is-active{background:#c7ff2f29;color:var(--accent)}.split-mini-pill.is-vriend.is-active{background:#38bdf829;color:var(--rival)}:root{--accent: #ccff4d;--accent-strong: #a8ff1f;--accent-glow: rgb(204 255 77 / .45);--accent-text: #060e05;--rival: #56ccff;--rival-glow: rgb(86 204 255 / .42);--surface: #0b1012;--surface-raised: #11181b;--surface-soft: #161f22;--border: rgb(255 255 255 / .11);--text-muted: #9eb0a6;--shadow: 0 28px 70px rgb(0 0 0 / .5);--glas: linear-gradient( 145deg, rgb(255 255 255 / .105) 0%, rgb(255 255 255 / .038) 46%, rgb(255 255 255 / .068) 100% );--glas-hover: linear-gradient( 145deg, rgb(255 255 255 / .135) 0%, rgb(255 255 255 / .05) 48%, rgb(204 255 77 / .065) 100% );--glas-rand: rgb(255 255 255 / .14);--glas-schaduw: 0 1px 0 rgb(255 255 255 / .22) inset, 0 -1px 0 rgb(0 0 0 / .42) inset, 0 24px 56px -12px rgb(0 0 0 / .55);--blur: blur(28px) saturate(180%);--ease: cubic-bezier(.22, 1, .36, 1);font-family:SF Pro Display,SF Pro Text,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{background:radial-gradient(110% 80% at 50% -15%,rgb(204 255 77 / .12) 0%,transparent 58%),radial-gradient(85% 65% at 95% 8%,rgb(54 224 196 / .1) 0%,transparent 55%),radial-gradient(90% 70% at 5% 85%,rgb(86 204 255 / .08) 0%,transparent 60%),#04060a;font-feature-settings:"cv01","ss03","calt";-webkit-font-smoothing:antialiased}@supports (view-transition-name: none){.nav-link-active{view-transition-name:actieve-nav-pil}::view-transition-group(actieve-nav-pil){animation-duration:.24s;animation-timing-function:cubic-bezier(.22,1,.36,1)}}.ambient{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.ambient-blob{position:absolute;border-radius:50%;filter:blur(105px);opacity:.82;will-change:transform}.ambient-blob-a{width:48vw;height:48vw;min-width:340px;min-height:340px;top:-14vw;right:-8vw;background:radial-gradient(circle,rgb(204 255 77 / .56),transparent 68%);animation:lg-drift-a 22s var(--ease) infinite alternate}.ambient-blob-b{width:44vw;height:44vw;min-width:320px;min-height:320px;bottom:-14vw;left:-10vw;background:radial-gradient(circle,rgb(54 224 196 / .44),transparent 68%);animation:lg-drift-b 26s var(--ease) infinite alternate}.ambient-blob-c{width:36vw;height:36vw;min-width:260px;min-height:260px;top:36%;left:40%;background:radial-gradient(circle,rgb(116 140 255 / .28),transparent 70%);animation:lg-drift-c 30s var(--ease) infinite alternate}.ambient-grain{position:absolute;inset:0;opacity:.28;background-image:radial-gradient(rgb(255 255 255 / .055) .5px,transparent .6px);background-size:3px 3px;mix-blend-mode:soft-light}@keyframes lg-drift-a{to{transform:translate3d(-6vw,5vh,0) scale(1.08)}}@keyframes lg-drift-b{to{transform:translate3d(5vw,-6vh,0) scale(1.12)}}@keyframes lg-drift-c{to{transform:translate3d(-4vw,-4vh,0) scale(.94)}}.app-shell{width:min(100% - 1.5rem,74rem);padding:.9rem 0 7.5rem}.site-header{position:sticky;top:.75rem;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:64px;padding:.5rem .65rem .5rem .75rem;border:1px solid var(--glas-rand);border-radius:999px;background:linear-gradient(145deg,#ffffff1f,#ffffff0a 55%,#ccff4d0d);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 1px #ffffff40 inset,0 20px 50px #00000073}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:radial-gradient(120% 120% at 20% 10%,#eeffba,var(--accent) 48%,#6bdc4f);color:#071006;font-size:.78rem;font-weight:900;letter-spacing:.02em;box-shadow:0 1px #ffffffa6 inset,0 8px 22px #a8ff1f57}.site-title{font-size:1rem;font-weight:760;letter-spacing:-.02em;text-transform:none}.site-nav{position:sticky;top:5.4rem;z-index:50;display:flex;flex-wrap:nowrap;gap:.25rem;width:max-content;max-width:100%;margin:.7rem auto 1.75rem;padding:.34rem;border:1px solid var(--glas-rand);border-radius:999px;background:#0a0f11a8;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 1px #ffffff2e inset,0 20px 44px #0000006b}.nav-link{position:relative;display:inline-flex;align-items:center;gap:.5rem;min-height:44px;padding:.5rem 1rem;border-radius:999px;color:var(--text-muted);font-size:.9rem;font-weight:580;text-decoration:none;white-space:nowrap;transition:color .24s var(--ease),background .24s var(--ease),transform .24s var(--ease),box-shadow .24s var(--ease)}.nav-link:hover{color:#f4f7f2;background:#ffffff12}.nav-link:active{transform:scale(.97)}.nav-link-active{color:#071006;background:linear-gradient(135deg,#ebffb2,var(--accent) 58%,#93f058);text-decoration:none;font-weight:700;box-shadow:0 1px #ffffffa6 inset,0 10px 28px #a8ff1f52}.nav-link-active:hover{color:#071006;background:linear-gradient(135deg,#f0ffc2,var(--accent) 58%,#9ff564)}.nav-icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.icon-link{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;color:#d0dbd3;transition:background .24s var(--ease),transform .24s var(--ease)}.icon-link:hover{background:#ffffff17;transform:translateY(-1px)}h1,h2,h3{letter-spacing:-.035em;line-height:1.06}h1{font-size:clamp(2.45rem,6vw,3.85rem);font-weight:720}h2{font-weight:690}.page-header h1{background:linear-gradient(116deg,#fff 10%,#eaf4ea 48%,#b9ff66 95%);-webkit-background-clip:text;background-clip:text;color:transparent;text-wrap:balance}.eyebrow{color:var(--accent);font-size:.74rem;font-weight:740;letter-spacing:.18em}.page-intro{color:var(--text-muted);font-size:1.02rem;max-width:38rem}.content-card,.state-card,.details-card,.table-card,.duel-kaart,.duel-blok,.snelle-start,.favorieten-blok,.sessie-builder,.stand-duel-arena,.kalender-streak-card,.quick-log-section,.workout-hero,.log-kaart,.melding-lijst>li,.kalender-lijst>li,.template-card,.oefening-kaart,.auth-card{position:relative;border:1px solid var(--glas-rand);border-radius:24px;background:var(--glas);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--glas-schaduw)}.duel-kaart,.stand-duel-arena,.workout-hero,.sessie-builder{background:radial-gradient(90% 120% at 96% 0%,rgb(204 255 77 / .13),transparent 56%),radial-gradient(80% 100% at 4% 100%,rgb(86 204 255 / .08),transparent 55%),var(--glas)}.content-card,.state-card,.duel-kaart,.snelle-start,.favorieten-blok,.sessie-builder{padding:1.45rem}.duel-kaart:before,.snelle-start:before,.favorieten-blok:before,.sessie-builder:before,.stand-duel-arena:before,.workout-hero:before,.auth-card:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(140deg,#ffffff52,#ffffff0d,#ccff4d29 76%,#fff3);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.duel-score,.stand-kaart,.snelle-start-kaart,.stand-arena-fighter,.stand-compare-tile{border:1px solid rgb(255 255 255 / .1);border-radius:18px;background:linear-gradient(155deg,#ffffff13,#ffffff06);box-shadow:0 1px #ffffff24 inset;transition:transform .24s var(--ease),border-color .24s var(--ease),background .24s var(--ease),box-shadow .24s var(--ease)}.snelle-start-kaart:hover{transform:translateY(-2px);border-color:#ccff4d73;background:var(--glas-hover);box-shadow:0 1px #ffffff38 inset,0 16px 34px #0000005c}.duel-score.is-eigen,.stand-kaart.is-eigen,.snelle-start-kaart.is-active,.stand-arena-fighter.is-eigen{border-color:#ccff4d6b;background:radial-gradient(100% 100% at 50% 0%,rgb(204 255 77 / .16),transparent 68%),#ffffff0d}.duel-ring-center strong{background:linear-gradient(120deg,#fff,#e2ffab 58%,#7dffd0);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:1.5rem}.duel-arena-track{height:12px;padding:2px;background:#ffffff14;box-shadow:0 1px 2px #00000073 inset}.duel-arena-track.compact-track{height:8px;margin-top:.65rem}.duel-dashboard-kop{flex-wrap:wrap;gap:.75rem}.duel-periode-tabs{display:inline-flex;flex-wrap:wrap;gap:.3rem;padding:.28rem;border-radius:18px;border:1px solid rgb(255 255 255 / .12);background:#ffffff0b}.duel-periode-tab{display:flex;flex-direction:column;align-items:center;gap:.08rem;min-height:40px;padding:.32rem .85rem;border:0;border-radius:14px;background:transparent;color:var(--text-muted);font:inherit;font-size:.74rem;font-weight:720;cursor:pointer;transition:background .2s var(--ease),color .2s var(--ease)}.duel-periode-tab small{font-size:.7rem;font-weight:800;font-variant-numeric:tabular-nums;opacity:.85}.duel-periode-tab:hover{color:#f4f7f2}.duel-periode-tab.is-active{background:linear-gradient(135deg,#ebffb2,var(--accent) 60%,#93f058);color:#071006}.week-punten li.is-vriend-sport{border-color:#56ccff73;background:#56ccff29;color:#d6efff}.log-actie-kaart{display:grid;gap:.75rem;margin-top:1.15rem}.log-actie-kaart h2{margin:0;font-size:1.15rem}.snel-log-toast{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding:.75rem 1rem;border-radius:16px;border:1px solid rgb(204 255 77 / .45);background:radial-gradient(90% 120% at 0% 0%,rgb(204 255 77 / .2),transparent 65%),#0a100ee6;color:#f4f7f2;font-size:.86rem;font-weight:700;box-shadow:0 14px 36px #0000006b}.snel-log-toast-acties{display:flex;align-items:center;gap:.65rem}.speler-geluid-pill{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:999px;border:1px solid rgb(255 255 255 / .14);background:#ffffff0f;font-size:.82rem;cursor:pointer;user-select:none;transition:background .2s var(--ease),border-color .2s var(--ease)}.speler-geluid-pill:hover{border-color:var(--accent);background:#ffffff1f}.favorieten-leeg-rij{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding:.75rem 1rem;border-radius:16px;border:1px solid rgb(255 255 255 / .08);background:#ffffff08}.favorieten-leeg-rij h3{margin:0;font-size:.95rem}.favorieten-leeg-rij p{margin:.15rem 0 0;font-size:.8rem}.stand-overzicht-kop{display:grid;gap:.75rem;margin-bottom:1.1rem}.stand-overzicht-kop .melding{margin:0}.kalender-lijst>li.dag-rust-compact{padding:.65rem 1rem;opacity:.72}.kalender-lijst>li.dag-rust-compact .calendar-day-head{margin:0}.chip{border-radius:999px;border:1px solid rgb(255 255 255 / .12);background:#ffffff0e;color:#e4ece6;font-weight:650;transition:transform .2s var(--ease),border-color .2s var(--ease),background .2s var(--ease),box-shadow .2s var(--ease)}.chip:hover{border-color:#ffffff42;background:#ffffff17;transform:translateY(-1px)}.chip.is-active{color:#071006;border-color:transparent;background:linear-gradient(135deg,#ecffb5,var(--accent) 56%,#94f058);box-shadow:0 1px #ffffffa6 inset,0 10px 24px #a8ff1f47}.quick-log-pill{border:1px solid rgb(204 255 77 / .24);border-radius:999px;padding:.58rem .95rem;background:linear-gradient(145deg,#ffffff14,#ccff4d0d);color:#eef5ef;text-decoration:none;box-shadow:0 1px #ffffff24 inset}.quick-log-pill:hover{border-color:#ccff4d80;background:linear-gradient(145deg,#ccff4d2e,#ffffff14);transform:translateY(-1px)}.start-card{position:relative;border-radius:26px;border:1px solid rgb(255 255 255 / .45);color:#071006;background:linear-gradient(132deg,#eeffbe,#ccff4d 52%,#82f4bd);box-shadow:0 1px #ffffffb8 inset,0 24px 56px #a8ff1f3d;transition:transform .28s var(--ease),box-shadow .28s var(--ease)}.start-card:hover{transform:translateY(-2px);box-shadow:0 1px #fffc inset,0 30px 68px #a8ff1f57}.start-card span span,.start-card small{color:#071006c2}.start-card b{display:grid;place-items:center;flex:0 0 auto;width:52px;height:52px;border-radius:50%;background:#071006;color:#ccff4d;font-size:1.25rem;box-shadow:0 1px #ffffff38 inset,0 12px 26px #07100652}.category-card{border:1px solid var(--glas-rand);border-radius:20px;background:var(--glas);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--glas-schaduw);transition:transform .24s var(--ease),border-color .24s var(--ease),background .24s var(--ease),box-shadow .24s var(--ease)}.category-card:hover{transform:translateY(-2px);border-color:#ffffff3d}.category-card.is-active{color:#f4f7f2;border-color:#ccff4d8c;background:radial-gradient(110% 110% at 0% 0%,rgb(204 255 77 / .22),transparent 68%),var(--glas);box-shadow:0 1px #ccff4d59 inset,0 18px 40px #a8ff1f24}.category-card.is-active strong{color:var(--accent)}.category-card.is-active span{color:#d2dfd6}.template-card{display:flex;flex-direction:column;grid-template-columns:none;grid-template-rows:none;min-height:0;overflow:hidden;transition:transform .28s var(--ease),border-color .28s var(--ease),box-shadow .28s var(--ease)}.template-card:hover{transform:translateY(-3px);border-color:#ccff4d61;box-shadow:var(--glas-schaduw),0 28px 64px #0000008c}.template-visual{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:158px;padding:0;overflow:hidden;border-bottom:1px solid rgb(255 255 255 / .08);background:radial-gradient(circle at 50% 54%,rgb(204 255 77 / .24) 0%,transparent 52%),repeating-radial-gradient(circle at 50% 54%,rgb(204 255 77 / .11) 0px,rgb(204 255 77 / .11) 1px,transparent 1px,transparent 20px),radial-gradient(65% 75% at 85% 90%,rgb(84 224 196 / .18),transparent 70%),#0a1113}.template-visual.heeft-beeld{background:linear-gradient(180deg,#dbf0fb,#d8effc);box-shadow:inset 0 -18px 28px #08101814}.template-visual.heeft-beeld img{width:100%;height:100%;object-fit:contain;padding:.25rem;border-radius:0;filter:saturate(.94) contrast(1.02);transition:transform .5s var(--ease)}.template-card:hover .template-visual.heeft-beeld img{transform:scale(1.04)}.template-visual>span{position:absolute;top:.7rem;right:.75rem;z-index:2;padding:.2rem .58rem;border:1px solid rgb(255 255 255 / .16);border-radius:999px;background:#070c0eb8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--accent);font-size:.74rem;font-weight:800;letter-spacing:.04em}.template-copy{display:flex;flex-direction:column;flex:1;gap:.35rem;padding:1.05rem 1.15rem 1.2rem}.template-copy .pill{align-self:flex-start}.template-copy h3{margin:.2rem 0 .1rem;font-size:1.15rem;color:#f4f7f2!important}.template-copy .card-link{margin-top:auto;padding-top:.45rem}.exercise-grid>.oefening-kaart{content-visibility:auto;contain-intrinsic-size:auto 270px}.oefening-kaart{overflow:hidden;transition:transform .26s var(--ease),border-color .26s var(--ease),box-shadow .26s var(--ease)}.oefening-kaart:hover{transform:translateY(-2px);border-color:#ffffff38}.oefening-kaart-media-wrap{position:relative;overflow:hidden;border-radius:18px}.oefening-media{border-radius:18px;overflow:hidden;background:linear-gradient(180deg,#dbf0fb,#d8effc)}.oefening-media .oefening-beeld{object-fit:contain;padding:.3rem;background:linear-gradient(180deg,#dbf0fb,#d8effc)}.oefening-media .oefening-video{object-fit:contain;padding:.25rem;background:#fff}.speler .oefening-media,.demo-stage-gif .oefening-media{grid-template-columns:1fr;width:min(100%,22rem);margin:.6rem auto}.speler .oefening-media[data-beweging=ja] .oefening-beeld,.speler .oefening-media[data-beweging=ja] .oefening-video,.demo-stage-gif .oefening-media[data-beweging=ja] .oefening-beeld,.demo-stage-gif .oefening-media[data-beweging=ja] .oefening-video{grid-area:1 / 1}.oefening-compact-meta{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:auto;padding-top:.45rem}.oefening-niveau-chip{display:inline-flex;align-items:center;padding:.18rem .55rem;border-radius:999px;border:1px solid rgb(255 255 255 / .1);background:#ffffff0d;color:var(--text-muted);font-size:.72rem;font-weight:650}.oefening-demo-badge{color:var(--accent);font-size:.74rem;font-weight:720;letter-spacing:.02em}.video-knop{position:absolute;right:.65rem;bottom:.65rem;z-index:3;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgb(255 255 255 / .28);border-radius:50%;background:#070c0ead;backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);color:var(--accent);font-size:.86rem;cursor:pointer;box-shadow:0 1px #ffffff38 inset,0 10px 24px #00000073;transition:transform .22s var(--ease),background .22s var(--ease),border-color .22s var(--ease)}.video-knop:hover{transform:scale(1.08);border-color:var(--accent);background:#070c0ee0}.table-card{overflow-x:auto}.btn-primary,.btn-secondary,.btn-danger,.btn-ghost{border-radius:999px;min-height:46px;font-weight:640;transition:transform .22s var(--ease),box-shadow .22s var(--ease),background .22s var(--ease),border-color .22s var(--ease)}.btn-primary{background:linear-gradient(135deg,#e8ffab,var(--accent) 52%,#90ec52);border-color:transparent;color:var(--accent-text);box-shadow:0 1px #ffffffa6 inset,0 14px 32px #a8ff1f42}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 1px #ffffffb3 inset,0 20px 44px #a8ff1f57}.btn-secondary{background:var(--glas);border-color:var(--glas-rand);color:#f4f7f2;box-shadow:0 1px #ffffff24 inset}.btn-secondary:hover{transform:translateY(-1px);border-color:#ffffff3d;background:var(--glas-hover)}input,select,textarea{border-radius:14px;border-color:#ffffff1f;background:#ffffff0d}input:focus,select:focus,textarea:focus{border-color:#ccff4d8c;background:#ffffff14}fieldset{border:0;padding:0;margin:.35rem 0}legend{padding:0 0 .45rem;color:var(--text-muted);font-size:.75rem;font-weight:760;letter-spacing:.1em;text-transform:uppercase}.soort-tag,.kalender-lijst .soort-tag{display:inline-flex;align-items:center;min-height:0;padding:.22rem .65rem;border:1px solid rgb(204 255 77 / .28);border-radius:999px;background:#ccff4d1f;color:#e2ffa6;font-size:.74rem;font-weight:720;box-shadow:none}.soort-tag-vriend,.kalender-lijst .soort-tag-vriend{border-color:#56ccff4d;background:#56ccff1f;color:#bceaff}@media(min-width:64rem){.page-shell>main:not(.workouts-page),.page-shell>.speler{max-width:54rem;margin-inline:auto}}.pill,.count-badge,.status-pill{border-radius:999px;border:1px solid rgb(255 255 255 / .12);background:#ffffff0f}.pill{border-color:#ccff4d47;background:#ccff4d21;color:#e2ffa6}.site-footer{color:#ffffff61;margin-top:4rem}.onboarding-hero{display:flex;flex-direction:column;gap:1.1rem}.onboarding-acties{display:flex;flex-wrap:wrap;gap:.65rem}.sectie-sprong-strip{position:sticky;top:8.8rem;z-index:38;display:flex;flex-wrap:wrap;gap:.4rem;margin:-.35rem 0 1.35rem;padding:.35rem;width:max-content;max-width:100%;border-radius:999px;border:1px solid rgb(255 255 255 / .12);background:#090e10b8;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);box-shadow:0 12px 30px #0000005c}.sprong-pill{display:inline-flex;align-items:center;gap:.35rem;min-height:36px;padding:.35rem .82rem;border-radius:999px;color:var(--text-muted);font-size:.8rem;font-weight:660;text-decoration:none;white-space:nowrap;transition:background .2s var(--ease),color .2s var(--ease)}.sprong-pill:hover{color:#f4f7f2;background:#ffffff14}.sprong-pill.is-active{color:var(--accent);background:#ccff4d24}#workouts-sessie,#workouts-programmas,#workouts-catalogus,#workouts-favorieten,#log-toevoegen,#log-historie{scroll-margin-top:9.5rem}.snel-log-bevestig-balk{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.85rem;padding:.95rem 1.1rem;margin-bottom:.4rem;border-radius:18px;border:1px solid rgb(204 255 77 / .42);background:radial-gradient(90% 120% at 0% 0%,rgb(204 255 77 / .2),transparent 65%),#ffffff0d;box-shadow:0 1px #ccff4d47 inset}.snel-log-bevestig-balk .eyebrow{display:block;margin-bottom:.15rem}.snel-log-bevestig-balk strong{color:#f4f7f2;font-size:.98rem}.workout-plan-list li{grid-template-columns:2.15rem auto minmax(0,1fr) auto;align-items:center;border-radius:18px;border:1px solid rgb(255 255 255 / .1);background:#ffffff0b;box-shadow:0 1px #ffffff1a inset;transition:border-color .2s var(--ease),background .2s var(--ease)}.workout-plan-list li:hover{border-color:#fff3;background:#fff1}.workout-plan-list li strong,.workout-plan-list li>span{grid-column:3}.plan-stap-duim{grid-column:2;grid-row:1 / 3;width:44px;height:44px;border-radius:12px;object-fit:contain;padding:2px;background:linear-gradient(180deg,#dbf0fb,#d8effc);border:1px solid rgb(255 255 255 / .18)}.oefeningen-overzicht-details summary{padding:.2rem 0;color:var(--accent);font-size:.9rem}.oefeningen-overzicht-details .exercise-grid{margin-top:1rem}.plan-demo-chip{grid-column:4;grid-row:1 / 3;align-self:center;min-height:34px;padding:.3rem .72rem;border-radius:999px;border:1px solid rgb(204 255 77 / .28);background:#ccff4d1a;color:var(--accent);font:inherit;font-size:.74rem;font-weight:740;cursor:pointer;white-space:nowrap;transition:transform .2s var(--ease),background .2s var(--ease),border-color .2s var(--ease)}.plan-demo-chip:hover{transform:translateY(-1px);border-color:var(--accent);background:#ccff4d33}.wissel-acties,.wissel-lijst{grid-column:3 / -1}.kaart-fav-knop{position:absolute;left:.65rem;top:.65rem;display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid rgb(255 255 255 / .22);border-radius:999px;background:#0a0f10ad;backdrop-filter:blur(12px) saturate(160%);-webkit-backdrop-filter:blur(12px) saturate(160%);color:#ffffffc7;font-size:.95rem;cursor:pointer;transition:transform .22s var(--ease),border-color .22s var(--ease),background .22s var(--ease),color .22s var(--ease)}.kaart-fav-knop:hover{transform:scale(1.06);border-color:var(--accent);color:var(--accent)}.kaart-fav-knop.is-actief{border-color:var(--accent);background:#ccff4d38;color:var(--accent)}.speler{border-radius:30px;border:1px solid var(--glas-rand);background:radial-gradient(90% 100% at 50% 0%,rgb(204 255 77 / .14),transparent 62%),var(--glas);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--glas-schaduw);transition:background .35s var(--ease),border-color .35s var(--ease)}body[data-speler-actief=ja] .site-nav,body[data-speler-actief=ja] .site-footer{display:none}body[data-speler-actief=ja] .app-shell{padding-bottom:1.5rem}.speler[data-fase=voorbereiding]{border-color:#ffd16659;background:radial-gradient(90% 100% at 50% 0%,rgb(255 209 102 / .16),transparent 62%),var(--glas)}.speler[data-fase=voorbereiding] .speler-fase{color:#ffd166}.speler[data-fase=voorbereiding] .timer-ring-voortgang{stroke:#ffd166;filter:drop-shadow(0 0 14px rgb(255 209 102 / .48))}.speler[data-fase=rust]{border-color:#56ccff59;background:radial-gradient(90% 100% at 50% 0%,rgb(86 204 255 / .16),transparent 62%),var(--glas)}.speler[data-fase=rust] .speler-fase{color:var(--rival)}.speler[data-fase=rust] .timer-ring-voortgang{stroke:var(--rival);filter:drop-shadow(0 0 14px var(--rival-glow))}.speler[data-fase=stretch],.speler[data-fase=opwarming],.speler[data-fase=afsluiting]{border-color:#8dffd052;background:radial-gradient(90% 100% at 50% 0%,rgb(141 255 208 / .14),transparent 62%),var(--glas)}.speler[data-fase=stretch] .speler-fase,.speler[data-fase=opwarming] .speler-fase,.speler[data-fase=afsluiting] .speler-fase{color:#8dffd0}.speler[data-fase=stretch] .timer-ring-voortgang,.speler[data-fase=opwarming] .timer-ring-voortgang,.speler[data-fase=afsluiting] .timer-ring-voortgang{stroke:#8dffd0;filter:drop-shadow(0 0 14px rgb(141 255 208 / .42))}.speler[data-aftellen=ja] .timer-ring{transform:scale(1.03);transition:transform .22s var(--ease)}.recap-kop-rij{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.65rem}.recap-punten-badge{display:inline-flex;align-items:center;padding:.32rem .78rem;border-radius:999px;border:1px solid rgb(204 255 77 / .42);background:#ccff4d29;color:var(--accent);font-size:.82rem;font-weight:800;font-variant-numeric:tabular-nums}.log-detail-meta{display:grid;gap:.35rem;margin-top:1rem;padding-top:.9rem;border-top:1px solid rgb(255 255 255 / .1)}.speler-voortgang-kop{display:flex;align-items:center;gap:.65rem;width:min(100%,26rem);margin:0 auto .75rem}.speler-voortgang-strip{display:flex;flex:1;gap:4px;height:6px}.speler-voortgang-strip>span{flex:1;border-radius:999px;background:#ffffff1f;transition:background .3s var(--ease),box-shadow .3s var(--ease)}.speler-voortgang-strip>span.is-klaar{background:linear-gradient(90deg,#9be100,var(--accent))}.speler-voortgang-strip>span.is-nu{background:#fff;box-shadow:0 0 10px var(--accent)}.speler-voortgang-pct{color:var(--accent);font-size:.72rem;font-weight:800;font-variant-numeric:tabular-nums}.speler-hierna-pill{display:inline-flex;align-items:center;gap:.45rem;margin:.5rem auto 0;padding:.32rem .78rem;border-radius:999px;border:1px solid rgb(255 255 255 / .12);background:#ffffff0d;font-size:.78rem}.speler-hierna-pill span{color:var(--text-muted);font-size:.68rem;font-weight:760;letter-spacing:.08em;text-transform:uppercase}.speler-hierna-pill strong{color:#f4f7f2;font-weight:700}.recap-lijst{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:.85rem 0 0;padding:0;list-style:none}.recap-lijst li{display:flex;flex-direction:column;gap:.18rem;padding:.85rem;border-radius:18px;border:1px solid rgb(255 255 255 / .1);background:#ffffff0b;text-align:center}.recap-lijst strong{color:var(--accent);font-size:1.45rem;font-weight:850;font-variant-numeric:tabular-nums}.recap-lijst span{color:var(--text-muted);font-size:.72rem;font-weight:720;letter-spacing:.06em;text-transform:uppercase}.weekritme-editor li,.favoriet-lijst li{border-radius:16px;border:1px solid rgb(255 255 255 / .1);background:#ffffff0a}.timer-ring-baan{stroke:#ffffff17}.timer-ring-voortgang{stroke:var(--accent);filter:drop-shadow(0 0 14px rgb(204 255 77 / .48))}.speler-tijd{font-variant-numeric:tabular-nums;letter-spacing:-.05em}.sticky-action{border-radius:999px}.auth-page{position:relative}.auth-page:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(45% 40% at 50% -5%,rgb(204 255 77 / .16),transparent 70%),radial-gradient(40% 45% at 90% 85%,rgb(54 224 196 / .13),transparent 70%),radial-gradient(35% 35% at 8% 70%,rgb(126 116 255 / .12),transparent 70%)}.auth-card{border-radius:28px}.auth-card h1{color:#f4f7f2}.demo-overlay{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:1rem;background:#030609ad;backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%)}.demo-paneel{width:min(680px,100%);max-height:90vh;overflow-y:auto;padding:1.35rem;border:1px solid rgb(255 255 255 / .18);border-radius:28px;background:radial-gradient(90% 80% at 100% 0%,rgb(204 255 77 / .12),transparent 55%),linear-gradient(155deg,#161d1ff0,#090d0ff5);box-shadow:0 1px #ffffff38 inset,0 36px 90px #000000ad}.demo-kop{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.demo-kop .eyebrow{margin:0 0 .2rem}.demo-kop h2{margin:0;font-size:1.25rem;color:#f4f7f2!important}.demo-kop-acties{display:flex;align-items:center;gap:.45rem;flex-shrink:0}.compact-sluit{min-height:38px;padding:.4rem .85rem;font-size:.82rem}.compact-sluit.is-favoriet-actief{border-color:#ccff4d73;background:#ccff4d29;color:var(--accent)}.demo-modus-tabs{display:inline-flex;flex-wrap:wrap;gap:.3rem;padding:.28rem;margin-bottom:.85rem;border:1px solid rgb(255 255 255 / .12);border-radius:999px;background:#ffffff0b}.demo-tab{min-height:34px;padding:.32rem .8rem;border:0;border-radius:999px;background:transparent;color:var(--text-muted);font:inherit;font-size:.78rem;font-weight:680;cursor:pointer;transition:background .2s var(--ease),color .2s var(--ease)}.demo-tab.is-active{background:linear-gradient(135deg,#ebffb2,var(--accent) 60%,#93f058);color:#071006}.demo-stage{margin-bottom:1rem}.video-speler{display:block;width:100%;max-height:52vh;border-radius:18px;border:1px solid rgb(255 255 255 / .1);background:#080c0e}.beweging-speler{position:relative;width:min(440px,100%);aspect-ratio:1;max-height:50vh;margin:0 auto;border-radius:18px;border:1px solid rgb(255 255 255 / .1);overflow:hidden;background:#0b1012}.beweging-speler img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:.5rem;transition:opacity .32s var(--ease)}.beweging-speler img.is-verborgen{opacity:0}.pose-indicator{position:absolute;left:.75rem;bottom:.75rem;padding:.22rem .6rem;border-radius:999px;border:1px solid rgb(204 255 77 / .35);background:#060a0cc2;color:var(--accent);font-size:.72rem;font-weight:740}.demo-knoppen{display:flex;justify-content:center;gap:.5rem;margin-top:.65rem}.demo-instructie-blok{display:grid;gap:.65rem;padding:.95rem 1.05rem;border:1px solid rgb(255 255 255 / .1);border-radius:18px;background:#ffffff0a}.demo-cue-rij strong{display:block;margin-bottom:.15rem;color:#f4f7f2;font-size:.76rem;font-weight:760;letter-spacing:.06em;text-transform:uppercase}.demo-cue-rij p{margin:0;color:#d2ddd6;font-size:.88rem}.demo-cue-rij.is-stopregel strong{color:var(--accent)}.demo-cue-rij.is-alternatief p{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.recap-oefeningen{margin-top:1rem;padding-top:.9rem;border-top:1px solid rgb(255 255 255 / .1)}.recap-oefeningen .eyebrow{margin-bottom:.55rem}.demo-attributie{margin:.75rem 0 0;font-size:.76rem}@media(max-width:39.99rem){.app-shell{padding-bottom:8.5rem}.site-header{top:.5rem;min-height:58px;padding:.4rem .5rem .4rem .6rem}.site-nav{position:fixed;top:auto;bottom:calc(.75rem + env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);width:min(100% - 1.25rem,30rem);margin:0;gap:0;justify-content:space-between;padding:.4rem;border-radius:26px}.nav-link{flex:1 1 0;min-width:0;flex-direction:column;gap:.2rem;padding:.5rem .1rem;font-size:.62rem;letter-spacing:-.01em;border-radius:18px}.nav-link span{max-width:100%;overflow:hidden;text-overflow:ellipsis}.nav-link-active{border-radius:18px}.site-header .compact-button{display:none}.sectie-sprong-strip{top:4.5rem}.sticky-action{bottom:calc(6.6rem + env(safe-area-inset-bottom,0px))}}@media(prefers-reduced-motion:reduce){.ambient-blob,.nav-link-active .nav-icon,.timer-ring,.template-card,.oefening-kaart{animation:none!important}.timer-ring-voortgang{transition:none!important}}.section-heading h2,.content-card h2,.snelle-start h2,.favorieten-blok h2,.duel-kaart h2,.sessie-kaart h2,.sessie-blok h2,.sessie-builder h2,.workout-hero h1,.details-card h2,.table-card h2,.kalender-lijst h2,.auth-card h1{color:#f4f7f2!important}.content-card h3,.snelle-start h3,.favorieten-blok h3,.duel-kaart h3,.state-card h3,.log-kaart h3,.template-card h3,.oefening-kaart h3,.workout-plan-list li strong,.category-card:not(.is-active) strong,.log-kaart-hoofd strong,.log-kaart-hoofd a,.kalender-streak-head strong,.duel-zin{color:#f4f7f2!important}
