/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--tracking-tight:-.025em;--tracking-wide:.025em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-xs:var(--radius-xs);--radius-sm:var(--radius-sm);--radius-md:var(--radius-md);--radius-lg:var(--radius-lg);--radius-xl:var(--radius-xl);--ease-out:var(--ease-out);--ease-in-out:var(--ease-in-out);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:var(--font-display);--font-text:var(--font-text);--ease-out-expo:var(--ease-out-expo);--ease-spring:var(--ease-spring)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.isolate{isolation:isolate}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.w-1{width:calc(var(--spacing) * 1)}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.p-1{padding:calc(var(--spacing) * 1)}.uppercase{text-transform:uppercase}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.\[action\:academy\.getDownloadUrl\]{action:academy.getDownloadUrl}.\[action\:academy\.getUploadTargets\]{action:academy.getUploadTargets}.\[action\:academy\.remove\]{action:academy.remove}.\[action\:ccft\.attachGymMember\]{action:ccft.attachGymMember}.\[action\:ccft\.community\.signedClipFileUrl\]{action:ccft.community.signedClipFileUrl}.\[action\:ccft\.getClipUploadTarget\]{action:ccft.getClipUploadTarget}.\[action\:ccft\.getSubmissionUploadTarget\]{action:ccft.getSubmissionUploadTarget}.\[action\:ccft\.saveClip\]{action:ccft.saveClip}.\[action\:ccft\.signedClipUrl\]{action:ccft.signedClipUrl}.\[action\:ccft\.signedFileUrl\]{action:ccft.signedFileUrl}.\[action\:ccft\.submitApplication\]{action:ccft.submitApplication}.\[action\:scoreboard\.saveEntry\]{action:scoreboard.saveEntry}.\[action\:wins\.getUploadTarget\]{action:wins.getUploadTarget}.\[action\:wins\.remove\]{action:wins.remove}.\[boundary\:app\]{boundary:app}.\[boundary\:coach\]{boundary:coach}}:root{--charcoal:oklch(15.5% .004 75);--surface-1:oklch(19% .0045 75);--surface-2:oklch(22.5% .005 75);--surface-3:oklch(26% .0055 75);--surface-sunken:oklch(12.5% .0035 75);--surface-1-grad:linear-gradient(180deg,oklch(19.8% .0045 75),oklch(18.4% .0045 75));--surface-raise-grad:linear-gradient(180deg,oklch(23.2% .005 75),oklch(21.8% .005 75));--surface-hero-grad:radial-gradient(130% 150% at 6% -20%,var(--gold-wash-08),transparent 42%),linear-gradient(180deg,oklch(22.5% .006 78) 0%,oklch(19.5% .005 78) 100%);--ink:oklch(95% .003 80);--soft:oklch(78% .005 78);--muted:oklch(62% .006 76);--faint:oklch(48% .006 74);--line:oklch(100% 0 0/.1);--line-strong:oklch(100% 0 0/.16);--line-faint:oklch(100% 0 0/.06);--gold:oklch(78% .115 84);--gold-deep:oklch(70% .108 80);--gold-bright:oklch(84% .108 86);--gold-on:oklch(17% .01 80);--gold-wash-08:oklch(78% .115 84/.07);--gold-wash-14:oklch(78% .115 84/.11);--gold-wash-22:oklch(78% .115 84/.18);--gold-wash-40:oklch(78% .115 84/.32);--gold-flat:var(--gold);--gold-flat-hover:oklch(81% .115 85);--gold-rule:linear-gradient(90deg,var(--gold) 0%,var(--gold-wash-22) 70%,transparent 100%);--success:oklch(72% .1 152);--success-line:oklch(48% .07 150);--success-surface:oklch(31% .055 153);--success-wash:oklch(72% .1 152/.16);--warn:oklch(78% .105 70);--warn-line:oklch(55% .09 66);--warn-wash:oklch(78% .105 70/.16);--danger:oklch(75% .095 50);--danger-line:oklch(52% .1 45);--danger-wash:oklch(75% .095 50/.16);--info:oklch(76% .075 230);--info-line:oklch(52% .07 232);--info-wash:oklch(76% .075 230/.16);--series-1:oklch(79% .124 85);--series-1-fill:oklch(79% .124 85/.18);--series-2:oklch(74% .11 200);--series-2-fill:oklch(74% .11 200/.16);--series-3:oklch(72% .1 270);--series-3-fill:oklch(72% .1 270/.16);--series-4:oklch(73% .12 152);--series-4-fill:oklch(73% .12 152/.16);--series-5:oklch(76% .12 35);--series-5-fill:oklch(76% .12 35/.16);--series-6:oklch(78% .1 330);--series-6-fill:oklch(78% .1 330/.16);--viz-grid:oklch(100% 0 0/.06);--viz-axis:oklch(56% .006 76);--viz-target:oklch(78% .115 84);--viz-target-dash:5 4;--viz-cursor:oklch(84% .1 86/.22);--viz-track:oklch(26% .006 76);--font-display:"Archivo","Inter",system-ui,sans-serif;--font-text:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"Inter",ui-monospace,"SF Mono",Menlo,monospace;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-black:800;--weight-display:900;--text-2xs:.6875rem;--text-xs:.75rem;--text-sm:.8125rem;--text-base:clamp(.9375rem,.9rem + .18vw,1rem);--text-md:clamp(1.0625rem,1.01rem + .28vw,1.1875rem);--text-lg:clamp(1.25rem,1.15rem + .45vw,1.5rem);--text-xl:clamp(1.5rem,1.3rem + .9vw,2.05rem);--text-2xl:clamp(1.95rem,1.55rem + 1.9vw,3rem);--text-display-1:clamp(2.75rem,2rem + 3.4vw,4.5rem);--text-display-2:clamp(2.2rem,1.7rem + 2.2vw,3.2rem);--leading-display:1.02;--leading-tight:1.1;--leading-snug:1.3;--leading-normal:1.55;--leading-relaxed:1.65;--tracking-display:-.035em;--tracking-tight:-.018em;--tracking-normal:0;--tracking-wide:.03em;--tracking-eyebrow:.14em;--space-px:1px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-gutter:clamp(1rem,.6rem + 2vw,2rem);--space-card:clamp(1.1rem,.9rem + .9vw,1.6rem);--space-section:clamp(2.5rem,1.8rem + 3vw,4.5rem);--space-stack:var(--space-6);--rail-w:272px;--rail-w-coach:300px;--rail-collapsed:76px;--content-max:1120px;--measure:68ch;--header-h:64px;--header-h-mobile:56px;--tabbar-h:64px;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-pill:999px;--elev-0:none;--elev-1:0 0 0 .5px oklch(100% 0 0/.04),0 1px 2px oklch(0% 0 0/.2),0 1px 0 0 oklch(100% 0 0/.04) inset;--elev-2:0 0 0 .5px oklch(100% 0 0/.05),0 4px 12px oklch(0% 0 0/.28),0 1px 0 0 oklch(100% 0 0/.05) inset;--elev-3:0 0 0 .5px oklch(100% 0 0/.06),0 12px 32px oklch(0% 0 0/.36),0 1px 0 0 oklch(100% 0 0/.06) inset;--elev-4:0 0 0 .5px oklch(100% 0 0/.07),0 24px 60px oklch(0% 0 0/.46),0 1px 0 0 oklch(100% 0 0/.07) inset;--hairline-top:0 1px 0 0 oklch(100% 0 0/.05) inset;--ring-gold:0 0 0 1px var(--gold-wash-22);--glow-gold:0 0 0 1px var(--gold-wash-22),0 12px 32px oklch(0% 0 0/.36);--glow-gold-soft:0 0 0 1px var(--gold-wash-22),0 4px 14px oklch(0% 0 0/.3);--glow-edge:0 0 0 1px oklch(100% 0 0/.14),0 12px 30px oklch(0% 0 0/.34);--focus-ring:0 0 0 2px var(--charcoal),0 0 0 4px var(--gold-bright);--bg-app:var(--charcoal);--bg-aura:radial-gradient(80% 50% at 78% -25%,oklch(78% .115 84/.05),transparent 62%);--bg-aura-opacity:1;--grain-opacity:.018;--dur-instant:70ms;--dur-fast:.13s;--dur-normal:.22s;--dur-slow:.38s;--dur-chart:.78s;--ease-out:cubic-bezier(.22,1,.36,1);--ease-out-expo:cubic-bezier(.16,1,.3,1);--ease-in-out:cubic-bezier(.65,0,.35,1);--ease-spring:cubic-bezier(.34,1.3,.5,1);--z-base:0;--z-raised:10;--z-sticky:100;--z-overlay:200;--z-modal:300;--z-toast:400;--z-tooltip:500}@media (prefers-reduced-motion:reduce){:root{--dur-instant:0s;--dur-fast:0s;--dur-normal:0s;--dur-slow:0s;--dur-chart:0s}}:root{--session-planned:var(--muted);--session-planned-track:var(--viz-track);--session-today:var(--gold);--session-today-wash:var(--gold-wash-14);--session-done:var(--success);--session-done-wash:var(--success-wash);--session-done-line:var(--success-line);--session-skipped:var(--danger);--session-skipped-wash:var(--danger-wash);--session-skipped-line:var(--danger-line);--session-partial:var(--warn);--session-partial-wash:var(--warn-wash);--set-prescribed-fg:var(--soft);--set-prescribed-bg:var(--surface-sunken);--set-actual-fg:var(--ink);--set-actual-accent:var(--gold);--set-delta-up:var(--success);--set-delta-down:var(--danger);--set-delta-even:var(--muted);--tree-rail:var(--line-faint);--tree-rail-active:var(--gold);--tree-node-active-bg:var(--surface-2);--tree-node-hover-bg:var(--surface-2);--tree-superset:var(--info);--tree-superset-wash:var(--info-wash);--pr-accent:var(--gold);--pr-wash:var(--gold-wash-14);--pr-line:var(--gold-wash-22);--tree-nav-w:300px;--calendar-cell:clamp(40px,6vw,88px)}.btn{--btn-bg:var(--surface-2);--btn-fg:var(--ink);--btn-border:var(--line);min-height:44px;padding:var(--space-3) var(--space-5);border-radius:var(--radius-xs);border:1px solid var(--btn-border);background:var(--btn-bg);color:var(--btn-fg);font-family:var(--font-text);font-weight:var(--weight-semibold);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);-webkit-user-select:none;user-select:none;justify-content:center;line-height:1;position:relative}.btn,.btn__content{align-items:center;display:inline-flex}.btn__content{gap:var(--space-2)}.btn__icon{display:inline-flex}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.btn--primary{background:var(--gold-flat);--btn-fg:var(--gold-on);--btn-border:transparent;color:var(--gold-on);font-weight:var(--weight-bold);box-shadow:inset 0 1px oklch(100% 0 0/.22),0 2px 8px oklch(0 0 0/.3)}.btn--primary:hover{background:var(--gold-flat-hover)}.btn--primary:active{background:var(--gold-deep)}.btn--secondary:hover{--btn-border:var(--line-strong);--btn-bg:var(--surface-3)}.btn--ghost{--btn-bg:transparent}.btn--ghost:hover{--btn-bg:var(--surface-2)}.btn--danger{--btn-bg:transparent;--btn-fg:var(--danger);--btn-border:var(--danger-line)}.btn--danger:hover{--btn-bg:var(--danger-wash)}.btn--sm{min-height:36px;padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.btn--full{width:100%}.btn--loading .btn__content{visibility:hidden}.btn__spinner{border-radius:var(--radius-pill);border:2px solid;border-top:2px solid #0000;width:16px;height:16px;margin:auto;animation:btn-spin .7s linear infinite;position:absolute;inset:0}@keyframes btn-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.btn__spinner{animation-duration:1.5s}}.field{gap:var(--space-2);flex-direction:column;display:flex}.field__label{font-family:var(--font-text);font-weight:var(--weight-semibold);font-size:var(--text-sm);color:var(--ink)}.field__hint{font-size:var(--text-xs);color:var(--muted);margin-top:calc(var(--space-1) * -1)}.field__error{font-size:var(--text-xs);color:var(--danger)}.control{width:100%;min-height:44px;padding:var(--space-3) var(--space-4);background:var(--surface-sunken);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-xs);font-family:var(--font-text);font-size:var(--text-base);transition:border-color var(--dur-fast) var(--ease-out)}.control::placeholder{color:var(--faint)}.control:hover{border-color:var(--line-strong)}.control:focus,.control:focus-visible{border-color:var(--gold);box-shadow:var(--focus-ring);outline:none}.control--textarea{resize:vertical;min-height:96px;line-height:var(--leading-normal);padding-top:var(--space-3)}.control:disabled{opacity:.5;background:var(--surface-1);cursor:not-allowed}.field--error .control{border-color:var(--danger-line)}.control-select-wrap{position:relative}.control--select{appearance:none;padding-right:var(--space-10);cursor:pointer}.control-select-wrap:after{content:"";right:var(--space-4);border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);pointer-events:none;width:8px;height:8px;position:absolute;top:50%;transform:translateY(-65%)rotate(45deg)}.state-badge{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--surface-2);color:var(--soft);font-size:var(--text-2xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wide);white-space:nowrap;line-height:1;display:inline-flex}.state-badge--success{background:var(--success-wash);border-color:var(--success-line);color:var(--success)}.state-badge--warn{background:var(--warn-wash);border-color:var(--warn-line);color:var(--warn)}.state-badge--danger{background:var(--danger-wash);border-color:var(--danger-line);color:var(--danger)}.state-badge--info{background:var(--info-wash);border-color:var(--info-line);color:var(--info)}.state-badge--gold{background:var(--gold-wash-14);border-color:var(--gold-wash-22);color:var(--gold)}.chip{align-items:center;gap:var(--space-1);min-height:36px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);border:1px solid var(--line);color:var(--soft);font-family:var(--font-text);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);background:0 0;display:inline-flex}button.chip:hover{background:var(--gold-wash-08);color:var(--ink);border-color:var(--gold-wash-22)}.chip--active{background:var(--gold);color:var(--gold-on);border-color:#0000}button.chip--active:hover{background:var(--gold-deep);color:var(--gold-on)}.chip--info{border-color:var(--info-line);color:var(--info);background:var(--info-wash)}.chip--success{border-color:var(--success-line);color:var(--success);background:var(--success-wash)}.chip--warn{border-color:var(--warn-line);color:var(--warn);background:var(--warn-wash)}.chip--neutral{cursor:default}.week-tag{font-family:var(--font-display);font-weight:var(--weight-black);text-transform:uppercase;letter-spacing:var(--tracking-eyebrow);color:var(--gold);font-size:var(--text-sm)}.card{background:var(--surface-1-grad);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--elev-1);padding:var(--space-card)}.card--elevated{background:var(--surface-raise-grad);box-shadow:var(--elev-2)}.card--accent{background:var(--surface-hero-grad);border-color:var(--gold-wash-22);box-shadow:var(--glow-gold-soft);position:relative}.card--accent:before{content:"";background:var(--gold-rule);border-radius:var(--radius-pill);pointer-events:none;height:2px;position:absolute;inset:-1px clamp(1.1rem,.9rem + .9vw,1.6rem) auto}.card--interactive{cursor:pointer;transition:transform var(--dur-normal) var(--ease-out),background-color var(--dur-normal) var(--ease-out),border-color var(--dur-normal) var(--ease-out),box-shadow var(--dur-normal) var(--ease-out);display:block}.card--interactive:hover{background:var(--surface-2);border-color:var(--gold-wash-22);box-shadow:var(--glow-gold);transform:translateY(-2px)}.card--interactive:active{transform:translateY(0)}.avatar{border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--line);color:var(--soft);font-family:var(--font-display);font-weight:var(--weight-black);letter-spacing:0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.avatar__img{object-fit:cover;width:100%;height:100%}.monogram{color:var(--gold);display:block}.monogram--watermark{width:120px;height:120px;color:var(--surface-2);opacity:.5}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-6);margin-bottom:var(--space-8);flex-wrap:wrap;display:flex}.page-head__text{gap:var(--space-2);flex-direction:column;display:flex}.page-head__title{font-size:var(--text-2xl);line-height:var(--leading-display);letter-spacing:var(--tracking-display);color:var(--ink);text-wrap:balance}.page-head__sub{color:var(--soft);font-size:var(--text-md);line-height:var(--leading-relaxed);max-width:var(--measure)}.page-head__actions{gap:var(--space-3);align-items:center;display:flex}.skeleton{background:var(--surface-2);display:block;position:relative;overflow:hidden}.skeleton:after{content:"";animation:skeleton-shimmer 1.4s var(--ease-in-out) infinite;background:linear-gradient(90deg,#0000,oklch(100% 0 0/.06) 50%,#0000);position:absolute;inset:0;transform:translate(-100%)}@keyframes skeleton-shimmer{to{transform:translate(100%)}}@keyframes skeleton-pulse{0%{opacity:.6}to{opacity:1}}.skeleton-card{gap:var(--space-3);padding:var(--space-card);background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-md);flex-direction:column;display:flex}@media (prefers-reduced-motion:reduce){.skeleton{opacity:.8}.skeleton:after{animation:none;display:none}}.empty-state{text-align:center;align-items:center;gap:var(--space-4);padding:var(--space-16) var(--space-6);flex-direction:column;display:flex;position:relative}.empty-state__mark{color:var(--surface-2);opacity:.7;margin-bottom:var(--space-2)}.empty-state__title{font-size:var(--text-lg);color:var(--ink)}.empty-state__desc{color:var(--soft);max-width:42ch;line-height:var(--leading-relaxed)}.empty-state__action{margin-top:var(--space-2)}.toast-stack{right:var(--space-5);bottom:var(--space-5);z-index:var(--z-toast);max-width:min(380px,calc(100vw - 2 * var(--space-5)));flex-direction:column;position:fixed}.toast,.toast-stack{gap:var(--space-3);display:flex}.toast{align-items:flex-start;padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface-2);box-shadow:var(--elev-3);animation:toast-in var(--dur-normal) var(--ease-out)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.toast--success{border-color:var(--success-line)}.toast--success .toast__icon{color:var(--success)}.toast--info{border-color:var(--info-line)}.toast--info .toast__icon{color:var(--info)}.toast--danger{border-color:var(--danger-line)}.toast--danger .toast__icon{color:var(--danger)}.toast__icon{flex-shrink:0;margin-top:1px}.toast__body{flex:1;min-width:0}.toast__title{font-weight:var(--weight-semibold);font-size:var(--text-sm);color:var(--ink)}.toast__desc{font-size:var(--text-xs);color:var(--soft);margin-top:var(--space-1)}.toast__close{width:28px;height:28px;color:var(--muted);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.toast__close:hover{color:var(--ink);background:var(--surface-3)}.modal-overlay{z-index:var(--z-overlay);padding:var(--space-5);animation:overlay-in var(--dur-fast) var(--ease-out);background:oklch(0 0 0/.5);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.modal-panel{width:min(520px,100%);max-height:calc(100dvh - 2 * var(--space-5));background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--elev-4);z-index:var(--z-modal);animation:modal-in var(--dur-normal) var(--ease-out-expo);flex-direction:column;display:flex}@keyframes modal-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-panel--drawer{border-radius:var(--radius-lg) 0 0 var(--radius-lg);height:100dvh;max-height:100dvh;animation:drawer-in var(--dur-normal) var(--ease-out);position:fixed;top:0;right:0}@keyframes drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}.modal-panel__head{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-card);border-bottom:1px solid var(--line-faint);display:flex}.modal-panel__title{font-size:var(--text-lg);color:var(--ink)}.modal-panel__close{width:44px;height:44px;color:var(--muted);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.modal-panel__close:hover{color:var(--ink);background:var(--surface-2)}.modal-panel__body{padding:var(--space-card);gap:var(--space-4);flex-direction:column;display:flex;overflow-y:auto}.modal-panel__foot{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-card);border-top:1px solid var(--line-faint);display:flex}@media (max-width:767px){.modal-overlay{align-items:flex-end;padding:0}.modal-panel{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-height:92dvh}.modal-panel--drawer{border-radius:0;height:100dvh}.page-head__actions,.page-head__actions .btn{width:100%}}.data-notice{align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);border:1px solid var(--warn-line);border-radius:var(--radius-md);background:var(--warn-wash);display:flex}.data-notice--danger{border-color:var(--danger-line);background:var(--danger-wash)}.data-notice__icon{color:var(--warn);flex-shrink:0;margin-top:1px}.data-notice--danger .data-notice__icon{color:var(--danger)}.data-notice__text{flex:1;min-width:0}.data-notice__title{font-weight:var(--weight-semibold);font-size:var(--text-sm);color:var(--ink)}.data-notice__desc{font-size:var(--text-xs);color:var(--soft);margin-top:var(--space-1);line-height:var(--leading-relaxed)}.data-notice__retry{align-items:center;gap:var(--space-1);min-height:44px;padding:0 var(--space-3);border:1px solid var(--line);border-radius:var(--radius-xs);background:var(--surface-2);color:var(--ink);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);flex-shrink:0;display:inline-flex}.data-notice__retry:hover{background:var(--surface-3)}.boundary-host{min-height:70dvh;padding:var(--space-8) var(--space-5);place-content:center;display:grid}.boundary-host__pulse{color:var(--gold);animation:skeleton-pulse var(--dur-slow) ease-in-out infinite alternate}@media (prefers-reduced-motion:reduce){.boundary-host__pulse{opacity:.85;animation:none}}.boundary-screen{text-align:center;align-items:center;gap:var(--space-4);padding:var(--space-12) var(--space-6);flex-direction:column;max-width:44ch;margin-inline:auto;display:flex;position:relative}.boundary-screen__mark{color:var(--surface-2);opacity:.7;margin-bottom:var(--space-2)}.boundary-screen__title{font-size:var(--text-2xl);color:var(--ink)}.boundary-screen__desc{color:var(--soft);line-height:var(--leading-relaxed)}.boundary-screen__actions{gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}.page-skeleton{gap:var(--space-6);flex-direction:column;display:flex}.page-skeleton__head{gap:var(--space-3);flex-direction:column;display:flex}.page-skeleton__grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.page-transition{min-height:100%;animation:page-enter .26s var(--ease-out-expo) backwards}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.page-transition{animation:none}}.app-shell{grid-template-columns:1fr;min-height:100dvh;display:grid}@media (min-width:1024px){.app-shell{grid-template-columns:var(--rail-w) 1fr}.app-shell[data-coach=true]{grid-template-columns:var(--rail-w-coach) 1fr}}.app-col{flex-direction:column;min-width:0;display:flex}.rail{display:none}@media (min-width:1024px){.rail{background:radial-gradient(120% 22% at 0 0,var(--gold-wash-08),transparent 60%),linear-gradient(180deg,oklch(20% .013 62) 0,oklch(17% .012 62) 100%);border-right:1px solid var(--line);height:100dvh;box-shadow:var(--hairline-top);padding:var(--space-5) var(--space-4) var(--space-4);gap:var(--space-5);z-index:var(--z-sticky);flex-direction:column;display:flex;position:sticky;top:0}}.rail__brand{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-2);margin-bottom:var(--space-1);border-radius:var(--radius-sm);transition:background-color var(--dur-fast) var(--ease-out);display:flex}.rail__brand:hover{background:var(--gold-wash-08)}.rail__brand .monogram{--mono-disc:var(--gold);--mono-ink:var(--gold-on);filter:drop-shadow(0 3px 10px oklch(80% .128 85/.28))}.rail__brand-text{flex-direction:column;line-height:1.2;display:flex}.rail__brand-name{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-base);color:var(--ink);letter-spacing:var(--tracking-tight);line-height:1.1}.rail__brand-sub{font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--muted)}.rail__nav{gap:var(--space-1);flex-direction:column;flex:1;display:flex;overflow-y:auto}.rail__foot{gap:var(--space-4);border-top:1px solid var(--line-faint);padding-top:var(--space-4)}.rail__foot,.rail__streak{flex-direction:column;display:flex}.rail__streak{gap:var(--space-2)}.rail__streak-label{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--muted)}.rail__profile{align-items:center;gap:var(--space-3);display:flex}.rail__profile-name{min-width:0;font-size:var(--text-sm);color:var(--soft);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.rail__profile-action{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--muted);justify-content:center;align-items:center;display:inline-flex}.rail__profile-action:hover{color:var(--gold);background:var(--gold-wash-08)}.rail__logout{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--muted);padding:var(--space-2);border-radius:var(--radius-sm);min-height:40px;display:inline-flex}.rail__logout:hover{color:var(--danger)}.nav-item{align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-3);border-radius:var(--radius-sm);color:var(--soft);font-family:var(--font-text);font-weight:var(--weight-semibold);font-size:var(--text-sm);transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);display:flex;position:relative}.nav-item__icon{color:var(--muted);transition:color var(--dur-fast) var(--ease-out);flex-shrink:0;display:inline-flex}.nav-item:hover{color:var(--ink);background:oklch(100% 0 0/.04)}.nav-item:hover .nav-item__icon{color:var(--soft)}.nav-item--active{color:var(--ink)}.nav-item--active .nav-item__icon{color:var(--gold)}.nav-item__indicator{z-index:0;border-radius:var(--radius-sm);box-shadow:inset 0 0 0 1px oklch(100% 0 0/.08),var(--hairline-top);background:oklch(100% 0 0/.06);position:absolute;inset:0}.nav-item__indicator:before{content:"";border-radius:var(--radius-pill);background:var(--gold);width:2px;height:16px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.nav-item__icon,.nav-item__label{z-index:1;position:relative}.nav-item--logout:hover{color:var(--danger);background:var(--danger-wash)}.nav-item__count{z-index:1;min-width:24px;padding:1px var(--space-2);border-radius:var(--radius-pill);color:var(--soft);font-family:var(--font-text);font-size:var(--text-2xs);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;letter-spacing:0;text-align:center;text-transform:none;background:oklch(100% 0 0/.06);margin-left:auto;position:relative}.nav-group,.nav-section,.nav-section__tools{gap:var(--space-1);flex-direction:column;display:flex}.nav-group+.nav-section,.nav-section+.nav-group{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--line-faint)}.nav-section--current>.nav-item:first-child{color:var(--ink)}.nav-section__tools{margin-left:var(--space-5);padding-left:var(--space-2);border-left:1px solid var(--line)}.app-header{z-index:var(--z-sticky);justify-content:space-between;align-items:center;gap:var(--space-4);height:var(--header-h-mobile);padding:0 var(--space-gutter);border-bottom:1px solid var(--line);box-shadow:var(--hairline-top);display:flex;position:sticky;top:0}.app-header:before{content:"";z-index:-1;-webkit-backdrop-filter:blur(18px)saturate(1.2);backdrop-filter:blur(18px)saturate(1.2);pointer-events:none;background:linear-gradient(oklch(16% .012 64/.92),oklch(15% .012 64/.8));position:absolute;inset:0}@media (min-width:1024px){.app-header{height:var(--header-h)}}.app-header__left{align-items:center;gap:var(--space-3);min-width:0;display:flex}.app-header__title{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-sm);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--muted);white-space:nowrap}.app-header__right{align-items:center;gap:var(--space-3);display:flex}.header__hamburger{width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:var(--radius-xs);margin-left:calc(var(--space-2) * -1);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.header__hamburger:hover{background:var(--surface-2)}@media (min-width:1024px){.header__hamburger{display:none}}.bell,.bell__btn{position:relative}.bell__btn{width:44px;height:44px;color:var(--soft);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.bell__btn:hover{color:var(--ink);background:var(--surface-2)}.bell__dot{border-radius:var(--radius-pill);background:var(--info);border:2px solid var(--charcoal);width:8px;height:8px;position:absolute;top:9px;right:9px}.bell__menu{top:calc(100% + var(--space-2));width:min(340px,calc(100vw - 2 * var(--space-gutter)));background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--elev-3);padding:var(--space-4);z-index:var(--z-overlay);position:absolute;right:0}.bell__menu-title{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-sm);color:var(--ink);margin-bottom:var(--space-3)}.bell__empty{font-size:var(--text-sm);color:var(--muted)}.bell__list{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.bell__item{align-items:flex-start;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);display:flex}.bell__item[data-unread]{background:var(--info-wash)}.bell__item-dot{border-radius:var(--radius-pill);background:var(--info);flex-shrink:0;width:7px;height:7px;margin-top:7px}.bell__item-title{font-size:var(--text-sm);color:var(--ink);line-height:var(--leading-snug)}.bell__item-date{font-size:var(--text-2xs);color:var(--muted);margin-top:2px}.bell__all{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line-faint);font-size:var(--text-sm);color:var(--gold);font-weight:var(--weight-medium);display:block}.client-context{top:var(--header-h);z-index:calc(var(--z-sticky) - 1);align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-gutter);background:var(--info-wash);border-bottom:1px solid var(--info-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-wrap:wrap;display:flex;position:sticky}@media (max-width:1023px){.client-context{top:var(--header-h-mobile)}}.client-context__id{align-items:center;gap:var(--space-3);display:flex}.client-context__text{flex-direction:column;line-height:1.3;display:flex}.client-context__name{font-weight:var(--weight-semibold);color:var(--ink);font-size:var(--text-sm)}.client-context__meta{font-size:var(--text-xs);color:var(--soft)}.client-context__cohort,.client-context__phase{color:var(--muted)}.client-context__note{font-size:var(--text-xs);color:var(--info);font-weight:var(--weight-medium);flex:1}.client-context__checkin{align-items:center;gap:var(--space-2);flex-wrap:wrap;flex:1;display:inline-flex}.client-context__checkin-ago{font-size:var(--text-xs);color:var(--soft)}.client-context__switch{align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-xs);border:1px solid var(--info-line);color:var(--info);font-size:var(--text-sm);font-weight:var(--weight-medium);display:inline-flex}.client-context__switch:hover{background:var(--surface-2)}.app-main{padding:var(--space-section) var(--space-gutter) var(--space-12);flex:1}.app-main__inner{max-width:var(--content-max);width:100%;margin:0 auto}@media (max-width:767px){.app-main{padding-bottom:calc(var(--tabbar-h) + var(--space-8) + env(safe-area-inset-bottom))}}.app-footer{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-6) var(--space-gutter);border-top:1px solid var(--line-faint);color:var(--muted);font-size:var(--text-xs);flex-wrap:wrap;display:flex}@media (max-width:767px){.app-footer{margin-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom))}}.app-footer__link{color:var(--soft)}.app-footer__link:hover{color:var(--gold)}.drawer-overlay{z-index:var(--z-overlay);animation:overlay-in var(--dur-fast) var(--ease-out);background:oklch(0 0 0/.5);position:fixed;inset:0}.drawer{background:var(--surface-1);border-right:1px solid var(--line);width:min(300px,84vw);height:100dvh;padding:var(--space-5) var(--space-4);gap:var(--space-5);animation:drawer-left-in var(--dur-normal) var(--ease-out);flex-direction:column;display:flex;position:absolute;top:0;left:0;overflow-y:auto}@keyframes drawer-left-in{0%{transform:translate(-100%)}to{transform:translate(0)}}.drawer__head{justify-content:space-between}.drawer__brand,.drawer__head{align-items:center;display:flex}.drawer__brand{gap:var(--space-3);font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-base);color:var(--ink)}.drawer__brand .monogram{--mono-disc:var(--gold);--mono-ink:var(--gold-on)}.drawer__close{width:44px;height:44px;color:var(--muted);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.drawer__close:hover{color:var(--ink);background:var(--surface-2)}.drawer__nav{flex-direction:column;flex:1}.drawer__foot,.drawer__nav{gap:var(--space-1);display:flex}.drawer__foot{border-top:1px solid var(--line-faint);padding-top:var(--space-3);flex-direction:column}.tabbar{display:none}@media (max-width:767px){.tabbar{height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--line);z-index:var(--z-sticky);background:oklch(23.5% .013 64/.92);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}}.tabbar__item{min-height:44px;color:var(--muted);font-family:var(--font-text);font-size:var(--text-2xs);cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex;position:relative}.tabbar__icon{display:inline-flex}.tabbar__item--active{color:var(--gold)}.tabbar__indicator{border-radius:var(--radius-pill);background:var(--gold);width:22px;height:2px;margin-left:-11px;position:absolute;top:0;left:50%}.tabbar__item--active .tabbar__icon{color:var(--gold)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.chart{gap:var(--space-4);flex-direction:column;display:flex}.chart__tabs{gap:var(--space-2);flex-wrap:wrap;display:flex}.chart__tab{align-items:center;gap:var(--space-2);min-height:36px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--line);color:var(--soft);font-family:var(--font-text);font-size:var(--text-xs);font-weight:var(--weight-medium);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out);background:0 0;display:inline-flex}.chart__tab:hover{border-color:var(--line-strong);color:var(--ink)}.chart__tab--active{background:var(--gold-wash-08);border-color:var(--gold-wash-22);color:var(--gold)}.chart__tab-dot{border-radius:var(--radius-pill);width:8px;height:8px}.chart__note{font-size:var(--text-sm);color:var(--muted);font-style:italic}.chart__figure{margin:0}.chart__canvas{width:100%;height:clamp(300px,44vh,440px)}.chart__legend{gap:var(--space-2) var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.chart__legend li{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--soft);display:inline-flex}.chart__legend-dot{border-radius:var(--radius-pill);width:10px;height:10px}.chart--empty{min-height:320px;position:relative}.chart__ghost{padding:var(--space-6) var(--space-4);opacity:.4;pointer-events:none;flex-direction:column;justify-content:space-around;display:flex;position:absolute;inset:0}.chart__ghost-line{background:var(--viz-grid);height:1px}.chart-tooltip{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--elev-3);padding:var(--space-3);min-width:160px}.chart-tooltip__week{font-family:var(--font-display);font-weight:var(--weight-black);color:var(--gold);font-size:var(--text-sm);letter-spacing:var(--tracking-eyebrow);margin-bottom:var(--space-2)}.chart-tooltip__list{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.chart-tooltip__list li{align-items:center;gap:var(--space-2);grid-template-columns:auto 1fr auto;display:grid}.chart-tooltip__dot{border-radius:var(--radius-pill);width:8px;height:8px}.chart-tooltip__name{font-size:var(--text-xs);color:var(--muted)}.chart-tooltip__value{font-family:var(--font-display);font-weight:var(--weight-black);color:var(--ink);font-size:var(--text-sm)}.chart__data{border-top:1px solid var(--line-faint);padding-top:var(--space-3)}.chart__data summary{cursor:pointer;font-size:var(--text-sm);color:var(--soft);font-weight:var(--weight-medium);align-items:center;min-height:32px;display:inline-flex}.chart__data summary:hover{color:var(--gold)}.chart__data-scroll{margin-top:var(--space-3);overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.data-table caption{text-align:left}.data-table td,.data-table th{padding:var(--space-2) var(--space-3);text-align:right;border-bottom:1px solid var(--line-faint);white-space:nowrap}.data-table thead th{color:var(--muted);font-weight:var(--weight-semibold);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.data-table tbody th[scope=row]{text-align:left;color:var(--gold);font-family:var(--font-display);font-weight:var(--weight-black)}.data-table td{color:var(--soft)}.progress-ring{justify-content:center;align-items:center;display:inline-flex;position:relative}.progress-ring__arc{animation:ring-fill var(--dur-chart) var(--ease-out) forwards}@keyframes ring-fill{0%{stroke-dashoffset:var(--ring-circumference)}}@media (prefers-reduced-motion:reduce){.progress-ring__arc{animation:none}}.progress-ring__center{flex-direction:column;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;inset:0}.progress-ring__week{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-display-2);color:var(--ink);letter-spacing:var(--tracking-display)}.progress-ring__total{font-size:var(--text-sm);color:var(--muted);margin-top:var(--space-1)}.streak{flex-wrap:wrap;align-items:center;gap:5px;display:inline-flex}.streak__dot{border-radius:var(--radius-pill);background:var(--viz-track);border:1px solid var(--line);width:12px;height:12px}.streak--compact .streak__dot{width:9px;height:9px}.streak__dot--filled{background:var(--gold);border-color:#0000}.streak__dot--current{background:var(--gold-bright);box-shadow:0 0 0 3px var(--gold-wash-14)}.streak__dot--broken{background:var(--danger-wash);border-color:var(--danger-line)}.adherence{gap:var(--space-4);flex-direction:column;display:flex}.adherence__bar{gap:4px;height:44px;display:flex}.adh-seg{border-radius:var(--radius-sm);min-width:6px;box-shadow:var(--hairline-top),0 1px 2px oklch(0 0 0/.25);flex:1}.adh-seg--atteint{background:var(--success)}.adh-seg--partiel{background:var(--warn)}.adh-seg--manque{background:var(--danger)}.adh-seg--avenir{background:var(--viz-track);border:1px solid var(--line-faint)}.adh-seg--baseline{background:var(--gold-wash-22);border:1px solid var(--gold-wash-22)}.adherence__legend{gap:var(--space-3) var(--space-5);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.adherence__legend li{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--soft);display:inline-flex}.adh-key{border-radius:var(--radius-xs);width:12px;height:12px;display:inline-block}.adh-key--atteint{background:var(--success)}.adh-key--partiel{background:var(--warn)}.adh-key--manque{background:var(--danger)}.adh-key--avenir{background:var(--viz-track);border:1px solid var(--line-faint)}.adh-key--baseline{background:var(--gold-wash-22);border:1px solid var(--gold-wash-22)}.sparkline{display:block;overflow:visible}.sparkline--empty{border-bottom:1px dashed var(--line);display:inline-block}.reveal{opacity:0;transition:opacity var(--dur-slow) var(--ease-out-expo),transform var(--dur-slow) var(--ease-out-expo);will-change:opacity,transform;transform:translateY(12px)}.reveal--in{opacity:1;will-change:auto;transform:none}@media (prefers-reduced-motion:reduce){.reveal,.reveal--in{opacity:1;will-change:auto;transition:none;transform:none;transition-delay:0s!important}}.auth-screen{grid-template-columns:1fr;min-height:100dvh;display:grid;position:relative;overflow:hidden}@media (min-width:1024px){.auth-screen{grid-template-columns:1.05fr .95fr}}.auth-stage{justify-content:space-between;gap:var(--space-8);background:radial-gradient(85% 70% at 88% -10%,var(--gold-wash-22),transparent 58%),radial-gradient(70% 60% at -10% 110%,oklch(34% .06 153/.34),transparent 60%),linear-gradient(165deg,oklch(18% .014 64) 0,oklch(12% .012 62) 100%);border-bottom:1px solid var(--line);flex-direction:column;min-height:38vh;padding:clamp(2rem,1.4rem + 3vw,4.5rem);display:flex;position:relative;overflow:hidden}@media (min-width:1024px){.auth-stage{border-bottom:none;border-right:1px solid var(--line);min-height:100dvh}}.auth-stage__watermark{pointer-events:none;width:min(95vw,760px);color:var(--gold);opacity:.07;--mono-ink:transparent;position:absolute;bottom:-20%;right:-16%}.auth-stage__watermark .monogram--watermark{width:100%;height:auto}.auth-stage__head{align-items:center;gap:var(--space-4);display:flex;position:relative}.auth-stage__disc{--mono-disc:var(--gold);--mono-ink:var(--gold-on);filter:drop-shadow(0 6px 18px oklch(80% .128 85/.3));display:inline-flex}.auth-stage__wordmark{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-sm);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--soft)}.auth-stage__statement{font-family:var(--font-display);font-weight:var(--weight-display);letter-spacing:var(--tracking-display);color:var(--ink);text-wrap:balance;font-size:clamp(2.5rem,1.4rem + 5vw,4.75rem);line-height:.98;position:relative}.auth-stage__statement em{color:var(--gold);font-style:normal}.auth-stage__foot{font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--muted);position:relative}.auth-panel{padding:clamp(2rem,1.4rem + 3vw,4rem) var(--space-6);justify-content:center;align-items:center;display:flex}.auth-card{z-index:1;background:var(--surface-1-grad);border:1px solid var(--line);border-radius:var(--radius-lg);width:min(420px,100%);box-shadow:var(--elev-3);gap:var(--space-4);flex-direction:column;padding:clamp(1.75rem,1.4rem + 1.6vw,2.75rem);display:flex;position:relative}.auth-card:before{content:"";inset:0 var(--space-6) auto;background:var(--gold-rule);border-radius:var(--radius-pill);height:2px;position:absolute;top:-1px}.auth-card__mark{--mono-disc:var(--gold);--mono-ink:var(--gold-on);margin-bottom:var(--space-2)}.auth-language{justify-content:flex-end;gap:var(--space-1);flex-wrap:wrap;display:flex}.auth-language__button{appearance:none;min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);color:var(--soft);font:inherit;font-size:var(--text-xs);cursor:pointer;background:0 0;border:1px solid #0000}.auth-language__button:hover,.auth-language__button[aria-pressed=true]{border-color:var(--line);color:var(--gold);background:var(--surface-2)}.auth-language__button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.auth-card__eyebrow{margin-bottom:var(--space-1)}.auth-card__title{font-size:var(--text-2xl);color:var(--ink);letter-spacing:var(--tracking-display);line-height:var(--leading-tight)}.auth-card__lede{color:var(--soft);line-height:var(--leading-relaxed)}.auth-form{gap:var(--space-4);margin-top:var(--space-2);flex-direction:column;display:flex}.auth-form__note{font-size:var(--text-xs);color:var(--muted);text-align:center}.auth-card__error,.auth-form__alert{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--danger-line);background:var(--danger-wash);border-radius:var(--radius-xs);color:var(--ink);font-size:var(--text-sm);line-height:var(--leading-relaxed);display:flex}.auth-card__error svg{color:var(--danger);flex-shrink:0;margin-top:2px}.auth-card__legal{font-size:var(--text-xs);color:var(--muted);text-align:center;margin-top:var(--space-2)}.auth-card__legal a{color:var(--soft);text-underline-offset:2px;text-decoration:underline}.auth-card__legal a:hover{color:var(--gold)}.auth-sent{text-align:center;align-items:center;gap:var(--space-2);padding:var(--space-6) 0;flex-direction:column;display:flex}.auth-sent__icon{color:var(--success);margin-bottom:var(--space-2)}.auth-sent__text{color:var(--soft);line-height:var(--leading-relaxed)}.onboard{min-height:100dvh;padding:var(--space-6) var(--space-5) var(--space-20);flex-direction:column;max-width:680px;margin:0 auto}.onboard,.onboard__bar{align-items:center;width:100%;display:flex}.onboard__bar{gap:var(--space-5);padding:var(--space-4) 0 var(--space-10)}.onboard__progress{gap:var(--space-2);flex-direction:column;flex:1;display:flex}.onboard__step-label{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-xs);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--muted)}.onboard__track{background:var(--viz-track);height:4px;overflow:hidden}.onboard__fill,.onboard__track{border-radius:var(--radius-pill)}.onboard__fill{background:var(--gold);height:100%;transition:width var(--dur-normal) var(--ease-out);display:block}.onboard__pips{gap:var(--space-2);margin:0;padding:0;list-style:none;display:flex}.onboard__pip{border-radius:var(--radius-pill);background:var(--viz-track);width:7px;height:7px;transition:background-color var(--dur-normal) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.onboard__pip--done{background:var(--gold)}.onboard__pip--current{background:var(--gold);animation:pip-bloom var(--dur-slow) var(--ease-spring);transform:scale(1.45)}@keyframes pip-bloom{0%{opacity:.6;transform:scale(.8)}60%{opacity:1;transform:scale(1.65)}to{opacity:1;transform:scale(1.45)}}@media (prefers-reduced-motion:reduce){.onboard__pip--current{animation:none;transform:scale(1.45)}}.onboard-step{gap:var(--space-8);width:100%;animation:step-in-fwd var(--dur-normal) var(--ease-out-expo) both;flex-direction:column;display:flex}.onboard-step[data-dir=back]{animation-name:step-in-back}@keyframes step-in-fwd{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes step-in-back{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.onboard-step,.onboard-step[data-dir=back]{animation:none}}.step-content{gap:var(--space-4);flex-direction:column;display:flex}.onboard-step__title{font-size:var(--text-2xl);color:var(--ink);letter-spacing:var(--tracking-display)}.onboard-step__sub{color:var(--soft);line-height:var(--leading-relaxed);max-width:var(--measure)}.onboard-disclaimer{font-size:var(--text-xs);color:var(--muted);border-left:2px solid var(--info-line);background:var(--info-wash)}.onboard-disclaimer,.onboard-error{padding:var(--space-3);border-radius:var(--radius-xs)}.onboard-error{margin-top:var(--space-3);font-size:var(--text-sm);color:var(--danger-text,var(--danger));border-left:2px solid var(--danger-line,var(--danger));background:var(--danger-wash,transparent)}.consent-block{margin:var(--space-5) 0 0;padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-1)}.consent-check{align-items:flex-start;gap:var(--space-3);cursor:pointer;display:flex}.consent-check input{opacity:0;width:1px;height:1px;position:absolute}.consent-check__box{border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:#0000;background:var(--surface-sunken);width:26px;height:26px;transition:all var(--dur-fast) var(--ease-out);flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;display:inline-flex}.consent-check input:checked+.consent-check__box{background:var(--gold);color:var(--gold-on);border-color:#0000}.consent-check input:focus-visible+.consent-check__box{box-shadow:var(--focus-ring)}.consent-check__label{font-size:var(--text-sm);color:var(--ink);line-height:var(--leading-relaxed)}.consent-check__label strong{color:var(--gold);font-weight:var(--weight-semibold)}.consent-detail{margin-top:var(--space-3);padding-left:calc(26px + var(--space-3));font-size:var(--text-xs);color:var(--muted);line-height:var(--leading-relaxed)}.consent-detail a{color:var(--soft);text-underline-offset:2px;text-decoration:underline}.consent-detail a:hover{color:var(--gold)}.onboard-actions{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.onboard-skip-note{margin-top:var(--space-10);font-size:var(--text-sm);color:var(--muted);text-align:center;font-style:italic}.welcome-facts{gap:var(--space-3);margin:var(--space-2) 0 0;flex-direction:column;display:flex}.welcome-facts>div{justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--line-faint);display:flex}.welcome-facts dt{color:var(--muted);font-size:var(--text-sm)}.welcome-facts dd{color:var(--ink);font-weight:var(--weight-semibold);font-size:var(--text-sm);text-align:right;margin:0}.onboard-welcome__cue{color:var(--gold)}.step-content--welcome .welcome-facts>div{animation:welcome-fact-in var(--dur-normal) var(--ease-out-expo) both}.step-content--welcome .welcome-facts>div:first-child{animation-delay:90ms}.step-content--welcome .welcome-facts>div:nth-child(2){animation-delay:.17s}.step-content--welcome .welcome-facts>div:nth-child(3){animation-delay:.25s}@keyframes welcome-fact-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.step-content--welcome .welcome-facts>div{animation:none}}.priority-set{gap:var(--space-3);border:none;flex-direction:column;margin:0;padding:0;display:flex}.priority-card{align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-1);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out);display:flex}.priority-card:hover{border-color:var(--line-strong);background:var(--surface-2)}.priority-card input{opacity:0;width:1px;height:1px;position:absolute}.priority-card__check{border-radius:var(--radius-pill);border:1px solid var(--line);color:#0000;width:28px;height:28px;transition:all var(--dur-fast) var(--ease-out);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.priority-card--active{border-color:var(--gold-wash-22);background:var(--gold-wash-08)}.priority-card--active .priority-card__check{background:var(--gold);color:var(--gold-on);border-color:#0000}.priority-card input:focus-visible+.priority-card__check{box-shadow:var(--focus-ring)}.priority-card__text{flex-direction:column;gap:2px;display:flex}.priority-card__label{font-weight:var(--weight-semibold);color:var(--ink)}.priority-card__hint{font-size:var(--text-sm);color:var(--muted)}.onboard-done{text-align:center;justify-content:center;align-items:center;gap:var(--space-4);min-height:100dvh;color:var(--gold);padding:var(--space-6);flex-direction:column;display:flex}.onboard-done__item{animation:done-item-in var(--dur-slow) var(--ease-out-expo) both}.onboard-done__item:first-child{animation-delay:0s}.onboard-done__item:nth-child(2){animation-delay:.11s}.onboard-done__item:nth-child(3){animation-delay:.22s}.onboard-done__item:nth-child(4){animation-delay:.33s}.onboard-done__item:nth-child(5){animation-delay:.46s}@keyframes done-item-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.onboard-done__mark{display:inline-flex}.onboard-done__title{font-size:var(--text-2xl);color:var(--ink)}.onboard-done__text{color:var(--soft);max-width:34ch;line-height:var(--leading-relaxed)}.onboard-done__loader{margin-top:var(--space-4);background:var(--viz-track);border-radius:var(--radius-pill);width:120px;height:3px;position:relative;overflow:hidden}.onboard-done__loader:after{content:"";background:var(--gold);transform-origin:0;animation:done-load 2.2s var(--ease-out) forwards;position:absolute;inset:0}@keyframes done-load{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.onboard-done__item{animation:none}.onboard-done__loader:after{animation:none;transform:scaleX(1)}}.logger{gap:var(--space-6);flex-direction:column;display:flex}.logger__rows{gap:var(--space-2);grid-template-columns:1fr;display:grid}@media (min-width:1024px){.logger__rows{column-gap:var(--space-8);grid-template-columns:1fr 1fr}}.indicator-row{align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--line-faint);grid-template-columns:1fr auto auto;grid-template-areas:"label value spark""slider slider slider";display:grid}.indicator-row__label{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--soft);grid-area:label}.indicator-row__value{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-2xl);letter-spacing:var(--tracking-tight);text-align:right;font-variant-numeric:tabular-nums;grid-area:value;min-width:1.6ch;line-height:1}.indicator-row__spark{grid-area:spark;align-items:center;display:flex}.indicator-row__slider{grid-area:slider;align-items:center;min-height:44px;display:flex}.indicator-row__slider input[type=range]{cursor:pointer;appearance:none;background:0 0;width:100%;height:44px}.indicator-row__slider input[type=range]::-webkit-slider-runnable-track{border-radius:var(--radius-pill);background:linear-gradient(to right,var(--slider-color) 0,var(--slider-color) var(--slider-fill),var(--viz-track) var(--slider-fill),var(--viz-track) 100%);height:6px}.indicator-row__slider input[type=range]::-moz-range-track{border-radius:var(--radius-pill);background:var(--viz-track);height:6px}.indicator-row__slider input[type=range]::-moz-range-progress{border-radius:var(--radius-pill);background:var(--slider-color);height:6px}.indicator-row__slider input[type=range]::-webkit-slider-thumb{appearance:none;border-radius:var(--radius-pill);background:var(--ink);border:3px solid var(--slider-color);width:24px;height:24px;box-shadow:var(--elev-1);margin-top:-9px}.indicator-row__slider input[type=range]::-moz-range-thumb{border-radius:var(--radius-pill);background:var(--ink);border:3px solid var(--slider-color);width:24px;height:24px}.indicator-row__slider input[type=range]:focus-visible{outline:none}.indicator-row__slider input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:var(--focus-ring)}.indicator-row--readonly input[type=range]{cursor:default;opacity:.85}.logger__actions{gap:var(--space-3);display:flex}@media (max-width:767px){.logger__actions .btn{width:100%}}.week-note{padding-top:var(--space-5);border-top:1px solid var(--line-faint)}.week-note__count{font-size:var(--text-xs);color:var(--muted);font-variant-numeric:tabular-nums;align-self:flex-end}.week-note--readonly{gap:var(--space-2);flex-direction:column;display:flex}.week-note__title{font-family:var(--font-text);font-weight:var(--weight-semibold);font-size:var(--text-sm);color:var(--soft);margin:0}.week-note__read{color:var(--ink);line-height:var(--leading-relaxed);white-space:pre-line;margin:0}.dash-head,.recap-card{margin-bottom:var(--space-6)}.recap-card{gap:var(--space-4);background:var(--surface-raise-grad);box-shadow:var(--elev-2);flex-direction:column;padding-left:clamp(1.3rem,1.05rem + 1.1vw,1.9rem);display:flex;position:relative}.recap-card:before{content:"";left:0;top:var(--space-5);bottom:var(--space-5);border-radius:var(--radius-pill);background:linear-gradient(180deg,var(--gold),var(--gold-wash-22));width:2px;position:absolute}.recap-card__head{justify-content:space-between;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.recap-card__objectives{align-items:baseline;gap:var(--space-2);color:var(--soft);font-size:var(--text-sm);display:inline-flex}.recap-card__objectives-count{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-lg);color:var(--ink)}.recap-card__headline{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-xl);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--ink);text-wrap:balance;max-width:54ch}.recap-card__headline--empty{color:var(--soft)}.recap-card__hint{color:var(--muted);font-size:var(--text-sm);line-height:var(--leading-relaxed);max-width:60ch}.recap-card__deltas{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.recap-delta{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--line-faint);background:var(--surface-sunken);font-size:var(--text-sm);display:inline-flex}.recap-delta__label{color:var(--soft);white-space:nowrap}.recap-delta__value{font-family:var(--font-display);font-weight:var(--weight-black);font-variant-numeric:tabular-nums;align-items:center;gap:2px;display:inline-flex}.recap-delta--up .recap-delta__value{color:var(--success)}.recap-delta--down .recap-delta__value{color:var(--danger)}.recap-delta--flat .recap-delta__value{color:var(--muted)}.recap-delta--up{border-color:var(--success-line)}.recap-delta--down{border-color:var(--danger-line)}@media (min-width:768px){.recap-card__headline{font-size:var(--text-xl)}}.bento{gap:var(--space-5);grid-template-columns:1fr;grid-auto-rows:minmax(140px,auto);display:grid}@media (min-width:768px){.bento{grid-template-columns:repeat(2,1fr)}.bento-a{grid-column:1/-1}}@media (min-width:1024px){.bento{grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(160px,auto)}.bento-a{grid-area:1/1/3/3}.bento-b{grid-area:1/3}.bento-c{grid-area:1/4}.bento-d{z-index:var(--z-raised);grid-area:3/1/auto/3;margin-top:-16px}.bento-e{grid-area:2/3/4}.bento-f{grid-area:2/4/4}}.bento>.card,.bento>.motion-card-wrap>*{transition:box-shadow var(--dur-fast) var(--ease-out)}@media (hover:hover){.bento>.card:not(.card--accent):hover{box-shadow:var(--glow-edge)}.bento>.card--accent:hover{box-shadow:var(--glow-gold)}}.focus-card{gap:var(--space-4);flex-direction:column;padding:clamp(1.4rem,1.1rem + 1.3vw,2.1rem);display:flex}.focus-card__title{font-size:var(--text-2xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--ink);text-wrap:balance}.focus-card__lede{color:var(--soft);font-size:var(--text-md);line-height:var(--leading-relaxed);max-width:42ch}.focus-card__objectives{margin:var(--space-2) 0 auto;gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}.focus-card__objectives li{padding-left:var(--space-5);color:var(--soft);font-size:var(--text-sm);line-height:var(--leading-snug);position:relative}.focus-card__objectives li:before{content:"";border-radius:var(--radius-pill);background:var(--gold);width:6px;height:6px;position:absolute;top:.5em;left:0}.focus-card__cta{align-items:center;gap:var(--space-4);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.focus-card__link{align-items:center;gap:var(--space-1);color:var(--soft);font-size:var(--text-sm);font-weight:var(--weight-medium);display:inline-flex}.focus-card__link:hover{color:var(--gold)}@media (max-width:767px){.focus-card__cta .btn{width:100%}}.call-card{gap:var(--space-2);flex-direction:column;display:flex}.call-card__date{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-lg);color:var(--ink)}.call-card__time{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--soft);display:inline-flex}.call-card__empty,.call-card__title,.feedback-card__empty{font-size:var(--text-sm);color:var(--muted)}.call-card__empty,.feedback-card__empty{margin-top:var(--space-2)}.call-card .btn{align-self:flex-start;margin-top:auto}.progress-card{align-items:center;gap:var(--space-4);text-align:center;flex-direction:column;display:flex;position:relative;overflow:hidden}.progress-card:after{content:"";aspect-ratio:1;background:radial-gradient(circle,var(--gold-wash-08),transparent 62%);pointer-events:none;width:140%;position:absolute;bottom:-40%;left:50%;transform:translate(-50%)}.progress-card .eyebrow{align-self:flex-start;position:relative}.progress-card__streak{align-items:center;gap:var(--space-2);flex-direction:column;display:flex;position:relative}.progress-card__streak-label{font-size:var(--text-xs);color:var(--muted)}.preview-card{gap:var(--space-3);flex-direction:column;display:flex}.preview-card__empty{color:var(--muted);font-size:var(--text-sm)}.feedback-card{gap:var(--space-3);flex-direction:column;display:flex}.feedback-card__quote{color:var(--soft);font-size:var(--text-sm);line-height:var(--leading-relaxed);border-left:2px solid var(--gold-wash-22);padding-left:var(--space-3);margin:0}.announcement-card__link,.feedback-card__link{align-items:center;gap:var(--space-1);color:var(--gold);font-size:var(--text-sm);font-weight:var(--weight-medium);margin-top:auto;display:inline-flex}.announcement-card{background:var(--info-wash);border-color:var(--info-line);gap:var(--space-2);flex-direction:column;display:flex}.announcement-card__eyebrow{align-items:center;gap:var(--space-2);color:var(--info);display:inline-flex}.announcement-card__eyebrow:before,.feedback-card .eyebrow:before{display:none}.announcement-card__new{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);background:var(--info);color:var(--charcoal);padding:1px var(--space-2);border-radius:var(--radius-pill);margin-left:var(--space-1)}.announcement-card__title{font-size:var(--text-md);color:var(--ink);line-height:var(--leading-snug)}.announcement-card__body{font-size:var(--text-sm);color:var(--soft);line-height:var(--leading-relaxed)}.dash-next{margin-top:var(--space-section)}.dash-next__title{font-size:var(--text-lg);color:var(--ink);margin-bottom:var(--space-4)}.next-action{align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-radius:var(--radius-md);border:1px solid var(--gold-wash-22);background:var(--gold-wash-08);transition:transform var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out);display:flex}.next-action:hover{background:var(--gold-wash-14);transform:translateY(-2px)}.next-action__pulse{border-radius:var(--radius-pill);background:var(--gold);width:10px;height:10px;animation:pulse-dot var(--dur-slow) ease-in-out infinite alternate;flex-shrink:0}@keyframes pulse-dot{0%{opacity:.55}to{opacity:1}}@media (prefers-reduced-motion:reduce){.next-action__pulse{animation:none}}.next-action__label{font-weight:var(--weight-semibold);color:var(--ink);flex:1}.next-action__arrow{color:var(--gold)}.timeline{gap:var(--space-10);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.timeline__phase-label{margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--line-faint)}.timeline__weeks{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.week-card{padding:var(--space-card);padding-left:var(--space-6);background:var(--surface-1-grad);border-left:1px solid var(--line);border:1px solid var(--line);border-left-width:3px;border-radius:var(--radius-md);box-shadow:var(--elev-1);display:block;position:relative}.week-card--link{transition:transform var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.week-card--link:hover{border-color:var(--line-strong);border-left-color:var(--gold);background:var(--surface-2);transform:translate(2px)}.week-card--passee{border-left-color:var(--success-line)}.week-card--enCours{border-left-color:var(--gold);background:var(--surface-raise-grad);box-shadow:var(--elev-2),var(--ring-gold)}.week-card--aVenir{opacity:.85}.week-card--verrouillee{opacity:.55;border-left-color:var(--line-faint);cursor:not-allowed}.week-card__head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.week-card__state{align-items:center;gap:var(--space-1);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--muted);display:inline-flex}.week-card__state--passee{color:var(--success)}.week-card__state--enCours{color:var(--gold)}.week-card__pulse{animation:pulse-dot var(--dur-slow) ease-in-out infinite alternate}@media (prefers-reduced-motion:reduce){.week-card__pulse{animation:none}}.week-card__title{font-size:var(--text-md);color:var(--ink);margin-bottom:var(--space-1)}.week-card__summary{font-size:var(--text-sm);color:var(--soft);line-height:var(--leading-snug)}.week-card__unlock{align-items:center;gap:var(--space-1);margin-top:var(--space-2);font-size:var(--text-xs);color:var(--muted);display:inline-flex}.week-card__chevron{right:var(--space-4);color:var(--muted);position:absolute;top:50%;transform:translateY(-50%)}.week-detail{gap:var(--space-8);grid-template-columns:1fr;display:grid}@media (min-width:1024px){.week-detail{grid-template-columns:1fr 300px;align-items:start}}.week-detail__main{gap:var(--space-8);flex-direction:column;min-width:0;display:flex}.week-detail__lede{font-size:var(--text-md);color:var(--soft);line-height:var(--leading-relaxed);margin-bottom:var(--space-4)}.week-detail__h2{font-size:var(--text-lg);color:var(--ink);margin-bottom:var(--space-4)}.type-objectives{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.type-objectives li{padding-left:var(--space-6);color:var(--soft);line-height:var(--leading-snug);position:relative}.type-objectives li:before{content:"";border-radius:var(--radius-pill);background:var(--gold);width:6px;height:6px;position:absolute;top:.55em;left:0}.week-side{gap:var(--space-4);flex-direction:column;display:flex}@media (min-width:1024px){.week-side{top:calc(var(--header-h) + var(--space-5));position:sticky}}.week-progress{gap:var(--space-3);flex-direction:column;display:flex}.week-progress__text{font-size:var(--text-sm);color:var(--soft)}.week-nav{justify-content:space-between;align-items:center;gap:var(--space-2);font-size:var(--text-sm);display:flex}.week-nav__link{align-items:center;gap:var(--space-1);color:var(--soft);min-height:40px;padding:0 var(--space-2);display:inline-flex}.week-nav__link:hover{color:var(--gold)}.week-nav__all{color:var(--muted);font-size:var(--text-xs)}.week-locked{text-align:center;align-items:center;gap:var(--space-3);padding:var(--space-12) var(--space-6);color:var(--muted);flex-direction:column;display:flex}.week-locked__title{font-size:var(--text-lg);color:var(--ink)}.week-locked__text{color:var(--soft);max-width:46ch}.prose{max-width:var(--measure);color:var(--soft);line-height:var(--leading-relaxed);gap:var(--space-4);flex-direction:column;display:flex}.prose h2,.prose h3{color:var(--ink);margin-top:var(--space-4)}.prose h3{font-size:var(--text-lg)}.prose strong{color:var(--ink);font-weight:var(--weight-semibold)}.prose ol,.prose ul{padding-left:var(--space-6);gap:var(--space-2);flex-direction:column;display:flex}.prose li{line-height:var(--leading-relaxed)}.resource-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.resource-list__item{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-1);transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out);display:flex}.resource-list__item:hover{border-color:var(--gold-wash-22);background:var(--surface-2)}.resource-list__icon{color:var(--gold);flex-shrink:0;display:inline-flex}.resource-list__text{flex:1;min-width:0}.resource-list__title{color:var(--ink);font-size:var(--text-sm);font-weight:var(--weight-medium);display:block}.resource-list__meta{color:var(--muted);font-size:var(--text-xs);display:block}.resource-list__arrow{color:var(--muted);flex-shrink:0}.resource-list__empty{color:var(--muted);font-size:var(--text-sm)}.aca-controls{gap:var(--space-4);margin-bottom:var(--space-8);flex-direction:column;display:flex}.aca-search{align-items:center;display:flex;position:relative}.aca-search__icon{left:var(--space-4);color:var(--muted);pointer-events:none;position:absolute}.aca-search__input{width:100%;min-height:48px;padding:var(--space-3) var(--space-4) var(--space-3) var(--space-10);background:var(--surface-sunken);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-md);font-size:var(--text-base)}.aca-search__input::placeholder{color:var(--faint)}.aca-search__input:focus{border-color:var(--gold);box-shadow:var(--focus-ring);outline:none}.aca-chips{gap:var(--space-2);padding-bottom:var(--space-1);-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto}.aca-sort{gap:var(--space-1);align-items:center;display:flex}.aca-sort__btn{min-height:36px;padding:var(--space-2) var(--space-3);color:var(--muted);font-size:var(--text-sm);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none}.aca-sort__btn:hover{color:var(--ink)}.aca-sort__btn--active{color:var(--gold);font-weight:var(--weight-semibold)}@media (min-width:768px){.aca-controls{grid-template-columns:1fr auto;grid-template-areas:"search sort""chips chips";align-items:center;display:grid}.aca-search{grid-area:search}.aca-sort{grid-area:sort}.aca-chips{flex-wrap:wrap;grid-area:chips;overflow:visible}}.aca-grid{gap:var(--space-5);grid-template-columns:1fr;display:grid}@media (min-width:768px){.aca-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1440px){.aca-grid{grid-template-columns:repeat(3,1fr)}}.resource-card{background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--elev-1);transition:transform var(--dur-normal) var(--ease-out),border-color var(--dur-normal) var(--ease-out),box-shadow var(--dur-normal) var(--ease-out);flex-direction:column;display:flex;overflow:hidden}.resource-card:hover{border-color:var(--gold-wash-22);box-shadow:var(--glow-gold);transform:translateY(-4px)}.resource-card--featured{grid-column:1/-1}@media (min-width:768px){.resource-card--featured{flex-direction:row}.resource-card--featured .resource-card__cover{aspect-ratio:auto;width:46%}.resource-card--featured .resource-card__body{flex:1}}.resource-card__cover{aspect-ratio:16/9;background:linear-gradient(135deg,var(--surface-2),var(--surface-sunken));justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.resource-card__cover[data-category=nutrition]{background:linear-gradient(135deg,var(--success-surface),var(--surface-sunken))}.resource-card__cover[data-category=sommeil]{background:linear-gradient(135deg,oklch(30% .04 270),var(--surface-sunken))}.resource-card__cover[data-category=mobilite]{background:linear-gradient(135deg,oklch(30% .04 35),var(--surface-sunken))}.resource-card__cover-icon{color:var(--gold);opacity:.7}.resource-card__img{object-fit:cover;filter:saturate(.82)contrast(1.06)brightness(.9);width:100%;height:100%;transition:transform var(--dur-normal) var(--ease-out),filter var(--dur-normal) var(--ease-out)}.resource-card:hover .resource-card__img{filter:saturate()contrast(1.06);transform:scale(1.04)}.resource-card__badge{top:var(--space-3);left:var(--space-3);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);background:var(--gold);color:var(--gold-on);padding:2px var(--space-2);border-radius:var(--radius-pill);font-weight:var(--weight-semibold);position:absolute}.resource-card__body{padding:var(--space-card);gap:var(--space-2);flex-direction:column;display:flex}.resource-card__title{font-size:var(--text-md);color:var(--ink);line-height:var(--leading-snug)}.resource-card__summary{font-size:var(--text-sm);color:var(--soft);line-height:var(--leading-snug)}.resource-card__meta{gap:var(--space-4);margin-top:var(--space-2);font-size:var(--text-xs);color:var(--muted);display:flex}.resource-card__duration,.resource-card__type{align-items:center;gap:var(--space-1);display:inline-flex}.resource-page{gap:var(--space-8);grid-template-columns:1fr;display:grid}@media (min-width:1024px){.resource-page{grid-template-columns:1fr 280px;align-items:start}}.resource{gap:var(--space-6);flex-direction:column;min-width:0;display:flex}.resource__back{align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--text-sm);display:inline-flex}.resource__back:hover{color:var(--gold)}.resource__meta-top{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);font-size:var(--text-xs);color:var(--muted);flex-wrap:wrap;display:flex}.resource__duration,.resource__type{align-items:center;gap:var(--space-1);display:inline-flex}.resource__title{font-size:var(--text-2xl);color:var(--ink);margin-bottom:var(--space-3)}.resource__summary{font-size:var(--text-md);color:var(--soft);line-height:var(--leading-relaxed);max-width:var(--measure)}.resource__download{margin-top:var(--space-2)}.resource__aside{gap:var(--space-3);flex-direction:column;display:flex}@media (min-width:1024px){.resource__aside{top:calc(var(--header-h) + var(--space-5));position:sticky}}.resource__used{font-size:var(--text-xs);color:var(--gold);padding:var(--space-2) var(--space-3);background:var(--gold-wash-08);border-radius:var(--radius-xs)}.resource__aside-title{font-size:var(--text-md);color:var(--ink)}.video-embed{aspect-ratio:16/9;border-radius:var(--radius-md);background:var(--surface-sunken);border:1px solid var(--line);width:100%;position:relative;overflow:hidden}.video-embed__facade{justify-content:center;align-items:center;gap:var(--space-2);cursor:pointer;color:var(--ink);background:linear-gradient(135deg,var(--surface-2),var(--surface-sunken));flex-direction:column;display:flex}.video-embed__play{color:var(--gold);transition:transform var(--dur-fast) var(--ease-out)}.video-embed__facade:hover .video-embed__play{transform:scale(1.08)}.video-embed__label{font-size:var(--text-sm);color:var(--soft)}.video-embed__frame{border:none;width:100%;height:100%}.calls-section{margin-bottom:var(--space-section)}.calls-section__title{font-size:var(--text-lg);color:var(--ink);margin-bottom:var(--space-4)}.calls-list{gap:var(--space-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.calls-empty{color:var(--muted);font-size:var(--text-sm)}.call-item{gap:var(--space-4);flex-direction:column;display:flex}.call-item--upcoming{flex-flow:wrap;justify-content:space-between;align-items:center}.call-item__when{flex-direction:column;gap:2px;display:flex}.call-item__date{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-md);color:var(--ink)}.call-item__time{font-size:var(--text-sm);color:var(--soft)}.call-item__title{font-size:var(--text-sm);color:var(--muted)}.call-item__action{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.countdown{font-size:var(--text-sm);color:var(--gold);font-weight:var(--weight-medium)}.call-item__recording{display:flex}.call-item__soon{font-size:var(--text-sm);color:var(--muted);font-style:italic}.feedback-block{padding:var(--space-4);background:var(--surface-2);border-radius:var(--radius-md);border:1px solid var(--line-faint)}.feedback-block__label{margin-bottom:var(--space-2)}.feedback-block__body{color:var(--soft);line-height:var(--leading-relaxed);font-size:var(--text-sm)}.feedback-block--empty{color:var(--muted);font-size:var(--text-sm);font-style:italic}@media (max-width:767px){.call-item--upcoming{flex-direction:column;align-items:stretch}.call-item__action,.call-item__action .btn{width:100%}}.prep-brief{margin-bottom:var(--space-section);padding:var(--space-6);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-lg);gap:var(--space-5)}.prep-brief,.prep-brief__head{flex-direction:column;display:flex}.prep-brief__head{gap:var(--space-1)}.prep-brief__eyebrow{color:var(--soft)}.prep-brief__title{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-lg);color:var(--ink);line-height:var(--leading-snug)}.prep-brief__when{font-size:var(--text-sm);color:var(--soft)}.prep-brief__lead,.prep-brief__rel{color:var(--muted)}.prep-brief__lead{margin-top:var(--space-2);font-size:var(--text-sm);max-width:60ch}.prep-brief__grid{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (min-width:768px){.prep-brief__grid{grid-template-columns:repeat(2,1fr)}.prep-section--trend{grid-column:1/-1}}@media (min-width:1024px){.prep-brief__grid{grid-template-columns:repeat(3,1fr)}.prep-section--trend{grid-column:auto}}.prep-section{padding:var(--space-4);background:var(--surface-sunken);border:1px solid var(--line-faint);border-radius:var(--radius-md);gap:var(--space-3);flex-direction:column;display:flex}.prep-section__title{align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--soft);text-transform:uppercase;letter-spacing:.04em;display:flex}.prep-section__icon{color:var(--muted);flex-shrink:0}.prep-section__tag{color:var(--muted);text-transform:none;letter-spacing:0;font-weight:var(--weight-medium)}.prep-section__empty{font-size:var(--text-sm);color:var(--muted);line-height:var(--leading-relaxed)}.prep-section__headline{font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-md);line-height:var(--leading-snug);color:var(--ink);text-wrap:balance}.prep-section__ratio{align-items:baseline;gap:var(--space-1);font-size:var(--text-sm);color:var(--soft);display:inline-flex}.prep-section__ratio-count{font-family:var(--font-display);font-weight:var(--weight-black);color:var(--ink)}.prep-deltas{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.prep-delta{align-items:center;gap:var(--space-2);padding:2px var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--line-faint);background:var(--surface-2);font-size:var(--text-xs);display:inline-flex}.prep-delta__label{color:var(--soft);white-space:nowrap}.prep-delta__value{font-family:var(--font-display);font-weight:var(--weight-black);font-variant-numeric:tabular-nums;align-items:center;gap:2px;display:inline-flex}.prep-delta--up .prep-delta__value{color:var(--success)}.prep-delta--down .prep-delta__value{color:var(--danger)}.prep-delta--flat .prep-delta__value{color:var(--muted)}.prep-delta--up{border-color:var(--success-line)}.prep-delta--down{border-color:var(--danger-line)}.prep-list{flex-direction:column;margin:0;padding:0;list-style:none}.prep-list,.prep-list__item{gap:var(--space-3);display:flex}.prep-list__item{justify-content:space-between;align-items:flex-start;font-size:var(--text-sm);line-height:var(--leading-snug)}.prep-list__item--decision{gap:var(--space-1);flex-direction:column}.prep-list__label{color:var(--soft)}.prep-source{font-size:var(--text-xs);font-weight:var(--weight-medium);padding:1px var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--line-faint);color:var(--muted);white-space:nowrap;flex-shrink:0}.prep-source--coach{color:var(--soft);border-color:var(--line)}.prep-decision__cat{font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.prep-attention{padding:var(--space-4);background:var(--warn-wash);border:1px solid var(--warn-line);border-radius:var(--radius-md);gap:var(--space-2);flex-direction:column;display:flex}.prep-attention__title{font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--warn)}.prep-attention__list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.prep-attention__item{align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);color:var(--ink);line-height:var(--leading-snug);display:flex}.prep-attention__icon{color:var(--warn);flex-shrink:0;margin-top:1px}@media (max-width:767px){.prep-brief{padding:var(--space-5)}}.week-switcher{gap:var(--space-2);background:var(--surface-1);border:1px solid var(--line);padding:var(--space-1)}.week-switcher,.week-switcher__btn{align-items:center;border-radius:var(--radius-pill);display:inline-flex}.week-switcher__btn{width:44px;height:44px;color:var(--soft);cursor:pointer;background:0 0;border:none;justify-content:center}.week-switcher__btn:hover:not(:disabled){background:var(--surface-2);color:var(--gold)}.week-switcher__btn:disabled{opacity:.35;cursor:not-allowed}.week-switcher__current{font-family:var(--font-display);font-weight:var(--weight-black);color:var(--gold);font-size:var(--text-md);text-align:center;min-width:3ch}.objectives-panel{gap:var(--space-5);flex-direction:column;display:flex}.objective-composer{gap:var(--space-3);display:flex}.objective-composer .control{flex:1}.objectives-tools{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);flex-direction:column;display:flex}.objectives-tools__hint{font-size:var(--text-xs);color:var(--muted);line-height:var(--leading-relaxed);margin:0}.objectives{flex-direction:column;margin:0;padding:0;list-style:none}.objective-item,.objectives{gap:var(--space-3);display:flex}.objective-item{align-items:flex-start;padding:var(--space-4);background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-md)}.objective-check{border-radius:var(--radius-sm);border:2px solid var(--line-strong);width:28px;height:28px;color:var(--gold-on);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);background:0 0;flex-shrink:0;justify-content:center;align-items:center;margin:8px 0;display:inline-flex}.objective-check:before{content:"";width:44px;height:44px;position:absolute}.objective-check--fait{background:var(--success);border-color:#0000}.objective-check--partiel{border-color:var(--warn)}.objective-check--manque{border-color:var(--danger)}.objective-check:hover:not(:disabled){transform:scale(1.05)}.objective-check:disabled{cursor:default}@media (prefers-reduced-motion:reduce){.objective-check:hover{transform:none}}.objective-item__body{flex:1;min-width:0}.objective-item--done .objective-item__label{color:var(--muted);text-decoration:line-through}.objective-item__label{color:var(--ink);line-height:var(--leading-snug)}.objective-item__meta{align-items:center;gap:var(--space-3);margin-top:var(--space-2);font-size:var(--text-xs);color:var(--muted);flex-wrap:wrap;display:flex}.objective-item__note{font-style:italic}.objective-item__right{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.objective-item__delete{width:36px;height:36px;color:var(--muted);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.objective-item__delete:hover{color:var(--danger);background:var(--danger-wash)}@media (max-width:767px){.objective-item{flex-wrap:wrap}.objective-item__right{width:100%;padding-left:calc(28px + var(--space-3));justify-content:space-between}}.sb-section{margin-bottom:var(--space-section)}.sb-section__title{align-items:center;gap:var(--space-3);font-size:var(--text-lg);color:var(--ink);margin-bottom:var(--space-5);display:flex}.sb-section__title:before{content:"";width:var(--space-6);background:var(--gold-rule);border-radius:var(--radius-pill);flex-shrink:0;height:2px}.sb-section__badge{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--success);background:var(--success-wash);border:1px solid var(--success-line);padding:2px var(--space-2);border-radius:var(--radius-pill)}.sb-section__ritual{margin:calc(var(--space-2) * -1) 0 var(--space-4);max-width:var(--measure);color:var(--soft);font-size:var(--text-sm);line-height:var(--leading-relaxed)}.milestone{left:50%;bottom:var(--space-8);z-index:var(--z-toast);align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--surface-2);border:1px solid var(--gold-wash-22);border-radius:var(--radius-lg);box-shadow:var(--elev-4);max-width:min(420px,calc(100vw - 2 * var(--space-5)));animation:milestone-in var(--dur-slow) var(--ease-spring);display:flex;position:fixed;overflow:hidden;transform:translate(-50%)}.milestone--leaving{animation:milestone-out var(--dur-normal) var(--ease-out) forwards}@keyframes milestone-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes milestone-out{to{opacity:0;transform:translate(-50%)translateY(8px)}}@media (prefers-reduced-motion:reduce){.milestone{animation:none}.milestone--leaving{opacity:0;animation:none}}.milestone__glow{background:radial-gradient(circle at 12% 50%,var(--gold-wash-14),transparent 60%);pointer-events:none;position:absolute;inset:0}.milestone__icon{color:var(--gold);flex-shrink:0;display:inline-flex}.milestone__body{position:relative}.milestone__eyebrow{text-transform:uppercase;letter-spacing:var(--tracking-eyebrow);font-size:var(--text-2xs);color:var(--gold)}.milestone__eyebrow,.milestone__label{font-family:var(--font-display);font-weight:var(--weight-black)}.milestone__label{color:var(--ink);font-size:var(--text-md);margin-top:2px}.milestone__close{width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.milestone__close:hover{color:var(--ink)}.decision-feed{margin:0;padding:0;list-style:none;position:relative}.decision-item{gap:var(--space-4);padding-bottom:var(--space-6);display:flex;position:relative}.decision-item__marker{border-radius:var(--radius-pill);background:var(--gold);width:14px;height:14px;box-shadow:0 0 0 4px var(--gold-wash-08);flex-shrink:0;margin-top:4px;position:relative}.decision-item:before{content:"";background:var(--line);width:2px;position:absolute;top:20px;bottom:0;left:6px}.decision-item:last-child:before{display:none}.decision-item__content{background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-card);flex:1}.decision-item__head{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.decision-item__date{font-family:var(--font-display);font-weight:var(--weight-black);color:var(--ink);font-size:var(--text-sm)}.decision-item__body{color:var(--soft);line-height:var(--leading-relaxed)}.decision-item__author{margin-top:var(--space-3);font-size:var(--text-xs);color:var(--muted);font-style:italic}.wins-head{margin-bottom:var(--space-6);justify-content:flex-end;display:flex}@media (max-width:767px){.wins-head .btn{width:100%}}.wins-grid{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (min-width:768px){.wins-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.wins-grid{grid-template-columns:repeat(3,1fr)}}.win-card{gap:var(--space-3);padding:var(--space-card);background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--elev-1);transition:transform var(--dur-fast) var(--ease-out);flex-direction:column;display:flex}.win-card:hover{transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.win-card:hover{transform:none}}.win-card__head{align-items:center;gap:var(--space-2);display:flex}.win-card__icon{color:var(--gold);display:inline-flex}.win-card__date{font-size:var(--text-xs);color:var(--muted);flex:1}.win-card__delete{width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.win-card__delete:hover{color:var(--danger)}.win-card__photo{border-radius:var(--radius-sm);object-fit:cover;width:100%}.win-card__body{color:var(--soft);line-height:var(--leading-relaxed);flex:1}.win-form{gap:var(--space-4);flex-direction:column;display:flex}.win-form__note{font-size:var(--text-xs);color:var(--muted)}.profile{gap:var(--space-section);flex-direction:column;max-width:720px;display:flex}.profile-section__title{font-size:var(--text-lg);color:var(--ink);margin-bottom:var(--space-5)}.profile-grid{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (min-width:768px){.profile-grid{grid-template-columns:1fr 1fr}}.toggle-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.toggle-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-md);display:flex}.toggle-row__text{flex-direction:column;gap:2px;display:flex}.toggle-row__label{color:var(--ink);font-weight:var(--weight-medium)}.toggle-row__hint{font-size:var(--text-sm);color:var(--muted)}.toggle{border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--surface-sunken);cursor:pointer;width:52px;height:30px;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);flex-shrink:0;padding:0;position:relative}.toggle--on{background:var(--gold);border-color:#0000}.toggle__knob{border-radius:var(--radius-pill);background:var(--ink);width:22px;height:22px;transition:transform var(--dur-fast) var(--ease-out);position:absolute;top:3px;left:3px}.toggle--on .toggle__knob{background:var(--gold-on);transform:translate(22px)}.profile-actions{display:flex}.profile-account__actions{gap:var(--space-5);flex-wrap:wrap;display:flex}.profile-account__logout{gap:var(--space-2);color:var(--danger)}.profile-account__logout,.profile-account__support{align-items:center;min-height:44px;display:inline-flex}.profile-account__support{color:var(--soft)}.profile-account__support:hover{color:var(--gold)}.profile-data{max-width:720px}.profile-data__intro{color:var(--soft);line-height:var(--leading-relaxed);margin-bottom:var(--space-4)}.profile-data__link{color:var(--gold);text-underline-offset:2px;text-decoration:underline}.profile-data__link:hover{color:var(--gold-bright)}.profile-data__row{justify-content:space-between;align-items:flex-start;gap:var(--space-5);padding:var(--space-4) 0;flex-wrap:wrap;display:flex}.profile-data__text{flex:1;min-width:220px}.profile-data__label{font-weight:var(--weight-semibold);color:var(--ink)}.profile-data__hint{font-size:var(--text-sm);color:var(--soft);margin-top:var(--space-1);line-height:var(--leading-relaxed)}.danger-zone{justify-content:space-between;align-items:flex-start;gap:var(--space-5);margin-top:var(--space-4);padding:var(--space-5);border:1px solid var(--danger-line);border-radius:var(--radius-md);background:var(--danger-wash);flex-wrap:wrap;display:flex}.danger-zone__text{flex:1;min-width:220px}.danger-zone__label{align-items:center;gap:var(--space-2);font-weight:var(--weight-semibold);color:var(--ink);display:flex}.danger-zone__label svg{color:var(--danger)}.danger-zone__hint{font-size:var(--text-sm);color:var(--soft);margin-top:var(--space-1);line-height:var(--leading-relaxed)}.danger-zone__hint strong{color:var(--ink)}.modal-text{color:var(--soft);line-height:var(--leading-relaxed)}.modal-text+.modal-text{margin-top:var(--space-3)}.modal-text strong{color:var(--ink)}.announce-list{gap:var(--space-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.announce-row--unread{border-color:var(--info-line)}.announce-row__head{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.announce-row__dot{border-radius:var(--radius-pill);background:var(--info);flex-shrink:0;width:8px;height:8px}.announce-row__title{font-size:var(--text-md);color:var(--ink);flex:1}.announce-row__date{font-size:var(--text-xs);color:var(--muted)}.announce-row__body{color:var(--soft);line-height:var(--leading-relaxed)}.coach-toolbar{margin-bottom:var(--space-6);justify-content:flex-end;display:flex}@media (max-width:767px){.coach-toolbar .btn{width:100%}}.client-table-wrap{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-1-grad);box-shadow:var(--elev-2);overflow:hidden}.client-table{border-collapse:collapse;width:100%}.client-table thead th{text-align:left;padding:var(--space-4) var(--space-5);font-family:var(--font-display);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-eyebrow);color:var(--muted);font-weight:var(--weight-black);border-bottom:1px solid var(--line);background:var(--surface-sunken)}.client-table tbody td{padding:var(--space-5);border-bottom:1px solid var(--line-faint);color:var(--soft);font-size:var(--text-sm);vertical-align:middle}.client-table tbody tr:last-child td{border-bottom:none}.client-row{cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out);position:relative}.client-row:hover{background:var(--gold-wash-08)}.client-row:after{content:"";background:var(--gold);width:0;transition:width var(--dur-fast) var(--ease-out);pointer-events:none;position:absolute;top:0;bottom:0;left:0}.client-row:hover:after{width:3px}.client-row__link{color:inherit;text-decoration:none;display:block}.client-row__link:before{content:"";position:absolute;inset:0}.client-row__link:focus-visible{outline:none}.client-row:has(.client-row__link:focus-visible){box-shadow:var(--focus-ring)}.client-row__id{align-items:center;gap:var(--space-3);display:flex}.client-row__name{color:var(--ink);font-weight:var(--weight-semibold);font-size:var(--text-base);display:block}.client-row__cohort{font-size:var(--text-xs);color:var(--muted);display:block}.client-row__checkin{align-items:baseline;gap:var(--space-2);display:inline-flex}.client-row__ago{font-size:var(--text-xs);color:var(--muted)}.client-row__risk{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:44px;display:flex}.client-row__chevron{color:var(--muted);flex-shrink:0}.client-risk{gap:var(--space-1)}.client-risk--ok{font-size:var(--text-xs);color:var(--muted)}@media (max-width:767px){.client-table-wrap{display:none}}.client-cards{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:none}@media (max-width:767px){.client-cards{display:flex}}.client-card{padding:var(--space-card);background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-md);display:block}.client-card:hover{border-color:var(--gold-wash-22)}.client-card__head{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.client-card__id{flex:1}.client-card__name{color:var(--ink);font-weight:var(--weight-semibold);display:block}.client-card__cohort{display:block}.client-card__ago,.client-card__cohort{font-size:var(--text-xs);color:var(--muted)}.client-card__stats{gap:var(--space-3);grid-template-columns:1fr 1fr;margin:0;display:grid}.client-card__stats dt{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--muted)}.client-card__stats dd{color:var(--ink);font-size:var(--text-sm);margin:2px 0 0}.coach-form,.invite-form{gap:var(--space-4);flex-direction:column;display:flex}.coach-form__note,.invite-form__note{font-size:var(--text-xs);color:var(--muted)}.invite-form__error{padding:var(--space-3) var(--space-4);border:1px solid var(--danger-line);background:var(--danger-wash);border-radius:var(--radius-xs);color:var(--ink);font-size:var(--text-sm);line-height:var(--leading-relaxed)}.coach-form__row{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.feedback-templates{gap:var(--space-2);flex-direction:column;display:flex}.feedback-templates__label{font-size:var(--text-xs);color:var(--muted)}.feedback-templates__chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.feedback-template-chip{align-items:center;gap:var(--space-1);min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-xs);background:var(--surface-1);color:var(--ink);font-size:var(--text-sm);cursor:pointer;transition:border-color var(--dur-fast,.15s) ease,background var(--dur-fast,.15s) ease;line-height:1.2;display:inline-flex}.feedback-template-chip:hover{border-color:var(--line-strong,var(--ink));background:var(--surface-2)}.feedback-template-chip:focus-visible{outline:2px solid var(--focus,var(--ink));outline-offset:2px}.client-view{flex-direction:column;display:flex}.client-tabs{gap:var(--space-1);border-bottom:1px solid var(--line);margin-bottom:var(--space-8);margin-top:var(--space-2);-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto}.client-tab{padding:var(--space-3) var(--space-4);color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;min-height:44px;display:inline-flex}.client-tab:hover{color:var(--ink)}.client-tab--active{color:var(--gold);border-bottom-color:var(--gold)}.client-view__content{gap:var(--space-section);flex-direction:column;display:flex}.coach-section-title{font-size:var(--text-lg);color:var(--ink);margin-bottom:var(--space-4)}.week-notes{gap:var(--space-5);margin:0;padding:0;list-style:none}.week-notes,.week-notes__item{flex-direction:column;display:flex}.week-notes__item{gap:var(--space-2);padding-bottom:var(--space-5);border-bottom:1px solid var(--line-faint)}.week-notes__item:last-child{border-bottom:none;padding-bottom:0}.week-notes__head{align-items:baseline;gap:var(--space-3);display:flex}.week-notes__tag{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-sm);letter-spacing:var(--tracking-wide);color:var(--soft);font-variant-numeric:tabular-nums}.week-notes__date{font-size:var(--text-xs);color:var(--muted)}.week-notes__body{max-width:var(--measure);color:var(--ink);white-space:pre-line}.week-notes__body,.week-notes__empty{line-height:var(--leading-relaxed);margin:0}.week-notes__empty{color:var(--muted);font-size:var(--text-sm)}.coach-overview{gap:var(--space-6);flex-direction:column;display:flex}.coach-overview__grid{gap:var(--space-5);grid-template-columns:1fr;display:grid}@media (min-width:768px){.coach-overview__grid{grid-template-columns:repeat(3,1fr)}}.coach-overview__ring{align-items:center;gap:var(--space-3);text-align:center;flex-direction:column;display:flex}.coach-overview__ring .eyebrow{align-self:flex-start}.coach-overview__streak{align-items:center;font-size:var(--text-xs);color:var(--muted)}.coach-overview__call,.coach-overview__streak{gap:var(--space-2);flex-direction:column;display:flex}.coach-overview__call-date{font-family:var(--font-display);font-weight:var(--weight-black);color:var(--ink);font-size:var(--text-md)}.coach-overview__call-time{color:var(--soft);font-size:var(--text-sm)}.coach-overview__call .btn{align-self:flex-start;margin-top:auto}.coach-overview__muted{color:var(--muted);font-size:var(--text-sm)}.coach-overview__actions{gap:var(--space-3);flex-direction:column;display:flex}.coach-quick{gap:var(--space-2);flex-direction:column;align-items:stretch;display:flex}.coach-quick .btn{justify-content:flex-start}.coach-calls,.coach-decisions{gap:var(--space-section);flex-direction:column;display:flex}.coach-calls__section,.coach-decisions__feed{margin-top:0}.coach-call-block{gap:var(--space-3);flex-direction:column;display:flex}.coach-profile{gap:var(--space-4);grid-template-columns:1fr;margin:0;display:grid}@media (min-width:600px){.coach-profile{grid-template-columns:1fr 1fr}}.coach-profile dt{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--muted)}.coach-profile dd{color:var(--ink);font-weight:var(--weight-medium);margin:2px 0 0}.coach-annonce-hist,.coach-content-section{margin-top:var(--space-section)}.content-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.content-row{align-items:center;gap:var(--space-3);display:flex;padding:var(--space-3) var(--space-4)!important}.content-row__tag{font-family:var(--font-display);font-weight:var(--weight-black);color:var(--gold);font-size:var(--text-sm);min-width:3ch}.content-row__title{color:var(--ink);font-size:var(--text-sm);flex:1}.content-row__meta{font-size:var(--text-xs);color:var(--muted)}.content-row--editable{flex-wrap:wrap}.content-row__badges{gap:var(--space-2);display:inline-flex}.content-row__badge{align-items:center;gap:var(--space-1);font-size:var(--text-2xs,.6875rem);color:var(--muted);border:1px solid var(--line);border-radius:var(--radius-xs);padding:2px var(--space-2);display:inline-flex}.coach-content-head{margin-bottom:var(--space-4);justify-content:flex-end;display:flex}.coach-content-section__note{font-size:var(--text-sm);color:var(--muted);margin-bottom:var(--space-4);max-width:var(--measure,60ch);line-height:var(--leading-relaxed)}.coach-form__check{align-items:center;gap:var(--space-3);min-height:44px;font-size:var(--text-sm);color:var(--ink);cursor:pointer;display:flex}.coach-form__check input{width:18px;height:18px;accent-color:var(--ink)}.coach-upload{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px dashed var(--line);border-radius:var(--radius-xs);background:var(--surface-1);flex-direction:column;display:flex}.coach-upload__label{align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--ink);display:inline-flex}.coach-upload__input{font-size:var(--text-sm);color:var(--muted)}.coach-upload__name{font-size:var(--text-xs);color:var(--ink);word-break:break-all}.coach-upload__clear,.coach-upload__hint{font-size:var(--text-xs);color:var(--muted)}.coach-upload__clear{min-height:44px;padding:var(--space-1) var(--space-2);cursor:pointer;background:0 0;border:none;align-self:flex-start;text-decoration:underline}.coach-upload__clear:hover{color:var(--danger-line,var(--ink))}.coach-upload__clear:focus-visible{outline:2px solid var(--focus,var(--ink));outline-offset:2px}.category-tags{gap:var(--space-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.category-tag{min-height:24px;padding:2px var(--space-2);border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--soft);font-size:var(--text-xs);white-space:nowrap;align-items:center;line-height:1.2;display:inline-flex}.category-tag--none{color:var(--muted);background:0 0;border-style:dashed}.coach-tools{margin-bottom:var(--space-6)}.coach-tools__link{min-height:44px;text-decoration:none}a.chip.coach-tools__link:hover{background:var(--gold-wash-08);color:var(--ink);border-color:var(--gold-wash-22)}a.chip.coach-tools__link:focus-visible{box-shadow:var(--focus-ring);outline:none}.coach-tools__icon{color:var(--muted);display:inline-flex}.coach-tools__icon svg{width:16px;height:16px}.coach-filter{margin-bottom:var(--space-5)}.coach-filter .chip{min-height:44px;text-decoration:none}a.chip.coach-filter__chip:hover{background:var(--gold-wash-08);color:var(--ink);border-color:var(--gold-wash-22)}a.chip.coach-filter__chip.chip--active:hover{background:var(--gold-deep);color:var(--gold-on)}a.chip.coach-filter__chip:focus-visible{box-shadow:var(--focus-ring);outline:none}.coach-dash__muted{color:var(--muted)}.prospects-section{gap:var(--space-3);margin-block-end:var(--space-6);display:grid}.prospects-section__title{margin:0;font-size:1.05rem}.prospects-section__sub{color:var(--muted);margin:0}.prospects{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.prospect{flex-direction:column}.prospect,.prospect__head{gap:var(--space-3);display:flex}.prospect__head{justify-content:space-between;align-items:flex-start;flex-wrap:wrap}.prospect__who{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.prospect__name{font-size:var(--text-lg);overflow-wrap:anywhere;margin:0}.prospect__email{font-size:var(--text-sm);overflow-wrap:anywhere}.prospect__meta,.prospect__note{color:var(--muted);font-size:var(--text-sm);line-height:var(--leading-relaxed);margin:0}.prospect__details{gap:var(--space-3);margin:0;display:grid}.prospect__details dt{color:var(--muted);font-size:var(--text-xs)}.prospect__details dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.prospect__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.prospect__reply{gap:var(--space-3);border-block-start:1px solid var(--line);padding-block-start:var(--space-3);display:grid}.prospect__reply-to{color:var(--muted);font-size:var(--text-sm);overflow-wrap:anywhere;margin:0}.prospect__replies{gap:var(--space-2);display:grid}.prospect__replies-title{color:var(--muted);font-size:var(--text-xs);margin:0;font-weight:500}.prospect__replies ul{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.prospect__replies summary{cursor:pointer;font-size:var(--text-sm);overflow-wrap:anywhere}.prospect__reply-body{margin:var(--space-2) 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--text-sm);line-height:var(--leading-relaxed)}.client-categories{gap:var(--space-4);flex-direction:column;display:flex}.client-categories__head{gap:var(--space-1);flex-direction:column;display:flex}.client-categories__lede,.client-categories__none,.client-categories__note{color:var(--muted);font-size:var(--text-sm);line-height:var(--leading-relaxed);margin:0}.client-categories__note{font-size:var(--text-xs)}.client-categories__toggle{align-items:flex-start;gap:var(--space-3);min-height:44px;padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-sunken);cursor:pointer;display:flex}.client-categories__toggle:has(input:focus-visible){box-shadow:var(--focus-ring)}.client-categories__toggle input{width:18px;height:18px;accent-color:var(--gold);flex-shrink:0;margin-top:2px}.client-categories__toggle input:disabled{cursor:progress}.client-categories__toggle-text{flex-direction:column;gap:2px;display:flex}.client-categories__toggle-label{color:var(--ink);font-weight:var(--weight-semibold)}.client-categories__toggle-hint{color:var(--muted);font-size:var(--text-xs)}.client-context__categories{align-items:center;display:flex}.client-card__categories{margin-top:var(--space-1)}.legal-page{max-width:760px;padding:var(--space-12) var(--space-5) var(--space-20);margin:0 auto}.legal-page__langs{justify-content:flex-end;gap:var(--space-4);margin-bottom:var(--space-4);font-size:var(--text-sm);display:flex}.legal-page__langs a{color:var(--soft);text-underline-offset:2px;text-decoration:underline}.legal-page__langs a:hover{color:var(--gold)}.legal-page__langs a[aria-current=page]{color:var(--ink);font-weight:var(--weight-semibold);text-decoration:none}.legal-page__head{gap:var(--space-3);padding-bottom:var(--space-8);border-bottom:1px solid var(--line);margin-bottom:var(--space-8);flex-direction:column;display:flex}.legal-page__brand{width:max-content;margin-bottom:var(--space-2);display:inline-flex}.legal-page__title{font-size:var(--text-2xl);color:var(--ink);letter-spacing:var(--tracking-tight)}.legal-page__lede{color:var(--soft);line-height:var(--leading-relaxed);max-width:var(--measure)}.legal-page__updated{font-size:var(--text-xs);color:var(--muted)}.legal-prose{gap:var(--space-8);max-width:var(--measure);flex-direction:column;display:flex}.legal-prose h2{font-size:var(--text-lg);color:var(--ink);margin-bottom:var(--space-3)}.legal-prose p{color:var(--soft);line-height:var(--leading-relaxed)}.legal-prose p+p{margin-top:var(--space-3)}.legal-prose ul{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.legal-prose li{padding-left:var(--space-5);color:var(--soft);line-height:var(--leading-relaxed);position:relative}.legal-prose li:before{content:"";border-radius:var(--radius-pill);background:var(--gold);width:6px;height:6px;position:absolute;top:.65em;left:0}.legal-prose strong{color:var(--ink);font-weight:var(--weight-semibold)}.legal-prose a{color:var(--gold);text-underline-offset:2px;text-decoration:underline}.legal-prose a:hover{color:var(--gold-bright)}.legal-page__foot{margin-top:var(--space-12);padding-top:var(--space-6);border-top:1px solid var(--line)}.legal-page__back{color:var(--soft);font-size:var(--text-sm);text-underline-offset:2px;text-decoration:underline}.legal-page__back:hover{color:var(--gold)}.bilan{gap:var(--space-section);max-width:var(--content-max);flex-direction:column;display:flex}.bilan-back{align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-1);color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-medium);transition:color var(--dur-fast) var(--ease-out);align-self:flex-start;display:inline-flex}.bilan-back:hover{color:var(--gold)}.bilan-hero{gap:var(--space-3);padding:var(--space-10) var(--space-8);background:var(--surface-1);border:1px solid var(--gold-wash-22);border-radius:var(--radius-xl);box-shadow:var(--elev-2);flex-direction:column;display:flex;position:relative;overflow:hidden}.bilan-hero:after{content:"";pointer-events:none;background:radial-gradient(circle at 92% -10%,var(--gold-wash-14),transparent 22rem);position:absolute;inset:0}.bilan-hero>*{z-index:1;position:relative}.bilan-hero__title{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-2xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-display);color:var(--ink);max-width:22ch}.bilan-hero__period{color:var(--soft);font-size:var(--text-md);line-height:var(--leading-relaxed);max-width:var(--measure)}.bilan-hero__stats{gap:var(--space-8);margin:var(--space-4) 0 0;flex-wrap:wrap;display:flex}.bilan-hero__stat{gap:var(--space-1);flex-direction:column;display:flex}.bilan-hero__stat dt{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--muted)}.bilan-hero__stat dd{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-display-2);line-height:var(--leading-display);color:var(--gold);margin:0}.bilan-hero--preview{border-color:var(--line)}.bilan-hero--preview:after{opacity:.5}.bilan-hero__actions{margin-top:var(--space-5)}.bilan-print-btn{align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-5);border:1px solid var(--gold-wash-22);border-radius:var(--radius-pill);background:var(--gold-wash-08);color:var(--gold);font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-sm);letter-spacing:var(--tracking-tight);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);display:inline-flex}.bilan-print-btn:hover{background:var(--gold);border-color:var(--gold);color:var(--gold-on)}.bilan-print-btn:active{background:var(--gold-deep);border-color:var(--gold-deep);color:var(--gold-on)}.bilan-section{gap:var(--space-4);flex-direction:column;display:flex}.bilan-section__title{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-lg);letter-spacing:var(--tracking-tight);color:var(--ink)}.bilan-section__lede{font-size:var(--text-sm);max-width:var(--measure);margin-top:calc(-1 * var(--space-2))}.bilan-section__lede,.bilan-wins__empty{color:var(--soft);line-height:var(--leading-relaxed)}.coach-note{padding:var(--space-8) var(--space-8) var(--space-6);background:var(--surface-2);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:var(--radius-lg);box-shadow:var(--elev-2);margin:0;position:relative}.coach-note__mark{color:var(--gold);opacity:.5;margin-bottom:var(--space-2);display:block}.coach-note__body{font-size:var(--text-md);line-height:var(--leading-relaxed);color:var(--ink);max-width:var(--measure);white-space:pre-line;margin:0}.coach-note__sign{align-items:baseline;gap:var(--space-3);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--line-faint);flex-wrap:wrap;display:flex}.coach-note__author{font-family:var(--font-display);font-weight:var(--weight-black);color:var(--ink);letter-spacing:var(--tracking-tight)}.coach-note__date{font-size:var(--text-xs);color:var(--muted)}.coach-note--pending{gap:var(--space-2);border-left-color:var(--line-strong);flex-direction:column;display:flex}.coach-note__pending-text{color:var(--soft);line-height:var(--leading-relaxed);max-width:var(--measure);margin:0}.bilan-compare{gap:var(--space-5);flex-direction:column;display:flex}.bilan-compare__list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.bilan-compare__row{align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--line-faint);grid-template-columns:1fr auto;display:grid}.bilan-compare__row:last-child{border-bottom:none}.bilan-compare__indicator{align-items:center;gap:var(--space-2);color:var(--ink);font-weight:var(--weight-medium);font-size:var(--text-sm);display:inline-flex}.bilan-compare__dot{border-radius:var(--radius-pill);flex-shrink:0;width:9px;height:9px}.bilan-compare__values{align-items:baseline;gap:var(--space-2);font-family:var(--font-display);font-weight:var(--weight-black);justify-self:end;display:inline-flex}.bilan-compare__from{color:var(--muted);font-size:var(--text-md)}.bilan-compare__arrow{color:var(--faint)}.bilan-compare__to{color:var(--ink);font-size:var(--text-lg)}.bilan-compare__track{border-radius:var(--radius-pill);background:var(--viz-track);height:8px;margin-top:var(--space-1);grid-column:1/-1;position:relative}.bilan-compare__path{border-radius:var(--radius-pill);background:var(--series);opacity:.55;height:4px;position:absolute;top:50%;transform:translateY(-50%)}.bilan-compare__from-pt,.bilan-compare__to-pt{border-radius:var(--radius-pill);width:12px;height:12px;position:absolute;top:50%;transform:translate(-50%,-50%)}.bilan-compare__from-pt{background:var(--surface-2);border:2px solid var(--series)}.bilan-compare__to-pt{background:var(--series);box-shadow:0 0 0 3px var(--charcoal)}.bilan-compare__target{background:var(--viz-target);opacity:.45;width:2px;position:absolute;top:-2px;bottom:-2px;transform:translate(-1px)}.bilan-compare__row--empty .bilan-compare__nodata{color:var(--muted);font-size:var(--text-sm);justify-self:end}.bilan-delta{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-sm);border:1px solid #0000;justify-self:end;display:inline-flex}.bilan-delta--up{color:var(--success);background:var(--success-wash);border-color:var(--success-line)}.bilan-delta--marked{color:var(--gold);background:var(--gold-wash-14);border-color:var(--gold-wash-22)}.bilan-delta--down{color:var(--danger);background:var(--danger-wash);border-color:var(--danger-line)}.bilan-delta--flat{color:var(--muted);background:var(--surface-3)}.bilan-compare__data{margin-top:var(--space-1)}.bilan-compare__data>summary{cursor:pointer;color:var(--soft);font-size:var(--text-sm);align-items:center;min-height:44px;display:inline-flex}.bilan-compare__data>summary:hover{color:var(--gold)}.bilan-compare__data-scroll{margin-top:var(--space-3);overflow-x:auto}.bilan-wins{gap:var(--space-4);grid-template-columns:1fr;margin:0;padding:0;list-style:none;display:grid}@media (min-width:600px){.bilan-wins{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.bilan-wins{grid-template-columns:repeat(3,1fr)}}.bilan-win{gap:var(--space-3);padding:var(--space-card);background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--elev-1);flex-direction:column;display:flex}.bilan-win__head{align-items:center;gap:var(--space-2);display:flex}.bilan-win__icon{color:var(--gold);display:inline-flex}.bilan-win__date{font-size:var(--text-xs);color:var(--muted)}.bilan-win__photo{aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--line);width:100%}.bilan-win__body{color:var(--ink);flex:1}.bilan-win__body,.final-note-editor__hint{line-height:var(--leading-relaxed);margin:0}.final-note-editor__hint{color:var(--soft);font-size:var(--text-sm)}.final-note-editor__foot{justify-content:space-between;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.final-note-editor__count{font-size:var(--text-xs);color:var(--muted)}.final-note-editor__saved{font-size:var(--text-xs);color:var(--success)}@media (max-width:599px){.bilan-hero{padding:var(--space-8) var(--space-5)}.bilan-hero__stats{gap:var(--space-6)}}.milestones-page{gap:var(--space-section);max-width:var(--content-max)}.milestones-hero,.milestones-page{flex-direction:column;display:flex}.milestones-hero{gap:var(--space-3)}.milestones-hero__title{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-2xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-display);color:var(--ink);max-width:18ch}.milestones-hero__lede{color:var(--soft);font-size:var(--text-md);line-height:var(--leading-relaxed);max-width:var(--measure)}.milestones-hero__count{margin:var(--space-2) 0 0;color:var(--muted);font-size:var(--text-sm)}.milestones-hero__count strong{color:var(--ink);font-weight:var(--weight-bold)}.milestones-empty{color:var(--soft);line-height:var(--leading-relaxed)}.milestones{gap:var(--space-5);flex-direction:column;margin:0;padding:0;list-style:none;display:flex;position:relative}.milestone-step{gap:var(--space-4);animation:milestone-step-in var(--dur-normal) var(--ease-out-expo) both;grid-template-columns:auto 1fr;align-items:start;display:grid;position:relative}.milestone-step:first-child{animation-delay:40ms}.milestone-step:nth-child(2){animation-delay:.1s}.milestone-step:nth-child(3){animation-delay:.16s}.milestone-step:nth-child(4){animation-delay:.22s}.milestone-step:nth-child(5){animation-delay:.28s}.milestone-step:nth-child(6){animation-delay:.34s}.milestone-step:nth-child(n+7){animation-delay:.4s}@keyframes milestone-step-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.milestone-step{animation:none}}.milestone-step:not(:last-child) .milestone-step__marker:after{content:"";top:2.5rem;bottom:calc(-1 * var(--space-5));background:var(--line-faint);width:2px;position:absolute;left:50%;transform:translate(-50%)}.milestone-step--reached:not(:last-child) .milestone-step__marker:after{background:var(--line-strong)}.milestone-step__marker{justify-content:center;display:flex;position:relative}.milestone-step__dot{border-radius:var(--radius-pill);flex:none;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:inline-flex}.milestone-step--reached .milestone-step__dot{background:var(--surface-2);border:1px solid var(--line-strong);color:var(--ink);box-shadow:var(--elev-2)}.milestone-step--upcoming .milestone-step__dot{border:1.5px dashed var(--line);color:var(--muted);background:0 0}.milestone-step--crowned .milestone-step__dot{background:var(--gold-wash-14);border-color:var(--gold);color:var(--gold);box-shadow:var(--glow-gold)}.milestone-step__body{gap:var(--space-1);padding-bottom:var(--space-1);flex-direction:column;display:flex}.milestone-step__head{align-items:baseline;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.milestone-step__label{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-md);letter-spacing:var(--tracking-tight);color:var(--ink)}.milestone-step--upcoming .milestone-step__label{color:var(--soft)}.milestone-step--crowned .milestone-step__label{color:var(--gold)}.milestone-step__status{font-size:var(--text-2xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-wide);border-radius:var(--radius-pill);white-space:nowrap;align-items:center;gap:.2rem;padding:.1rem .5rem;display:inline-flex}.milestone-step__status--done{color:var(--success);background:var(--success-wash)}.milestone-step__status--todo{color:var(--muted);border:1px solid var(--line)}.milestone-step__desc{color:var(--soft);font-size:var(--text-sm);line-height:var(--leading-relaxed);max-width:var(--measure)}.milestone-step--upcoming .milestone-step__desc{color:var(--muted)}.milestone-step__date{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--muted);font-variant-numeric:tabular-nums}.milestone-step--reached{animation:milestone-in var(--dur-normal) var(--ease-out-expo) both}.coach-milestones .milestones{gap:var(--space-4);margin-top:var(--space-2)}@media (prefers-reduced-motion:reduce){.milestone-step--reached{animation:none}}@media (max-width:599px){.milestone-step{gap:var(--space-3)}.milestone-step__dot{width:2.25rem;height:2.25rem}}.activity-page{gap:var(--space-section);max-width:var(--content-max)}.activity-hero,.activity-page{flex-direction:column;display:flex}.activity-hero{gap:var(--space-3)}.activity-hero__title{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-2xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-display);color:var(--ink);max-width:20ch}.activity-hero__lede{color:var(--soft);font-size:var(--text-md);line-height:var(--leading-relaxed);max-width:var(--measure)}.activity-feed{gap:var(--space-5);flex-direction:column;margin:0;padding:0;list-style:none;display:flex;position:relative}.activity-item{gap:var(--space-4);grid-template-columns:auto 1fr;align-items:start;display:grid;position:relative}.activity-item:not(:last-child) .activity-item__marker:after{content:"";top:2.25rem;bottom:calc(-1 * var(--space-5));background:var(--line-faint);width:2px;position:absolute;left:50%;transform:translate(-50%)}.activity-item__marker{justify-content:center;display:flex;position:relative}.activity-item__dot{border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--line);width:2.25rem;height:2.25rem;color:var(--soft);flex:none;justify-content:center;align-items:center;display:inline-flex}.activity-item--gold .activity-item__dot{background:var(--gold-wash-14);border-color:var(--gold);color:var(--gold)}.activity-item--gold:not(:last-child) .activity-item__marker:after{background:var(--gold-wash-14)}.activity-item__body{gap:var(--space-1);padding-bottom:var(--space-1);flex-direction:column;min-width:0;display:flex}.activity-item__head{align-items:baseline;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.activity-item__kind{font-size:var(--text-2xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--muted)}.activity-item--gold .activity-item__kind{color:var(--gold)}.activity-item__when{font-size:var(--text-xs);color:var(--muted)}.activity-item__title{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-md);letter-spacing:var(--tracking-tight);color:var(--ink)}.activity-item__summary{color:var(--soft);font-size:var(--text-sm);line-height:var(--leading-relaxed);max-width:var(--measure)}.activity-item{animation:activity-in var(--dur-normal) var(--ease-out-expo) both}@keyframes activity-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.activity-feed-view{gap:var(--space-5);flex-direction:column;display:flex}.activity-feed-view__more{padding-top:var(--space-2);justify-content:center;display:flex}.coach-activity__lede{color:var(--soft);font-size:var(--text-sm);line-height:var(--leading-relaxed);max-width:var(--measure);margin:0 0 var(--space-4)}.coach-activity .activity-feed{gap:var(--space-4)}@media (prefers-reduced-motion:reduce){.activity-item{animation:none}}@media (max-width:599px){.activity-item{gap:var(--space-3)}.activity-item__dot{width:2rem;height:2rem}}.icon-btn{min-width:44px;min-height:44px;color:var(--muted);border-radius:var(--radius-xs);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.icon-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn--danger:hover:not(:disabled){color:var(--danger)}.icon-btn--sm{min-width:32px;min-height:32px;position:relative}.icon-btn--sm:after{content:"";position:absolute;inset:-6px}.tree-node__confirm{min-width:auto;padding:0 var(--space-2);font-size:var(--text-2xs);font-weight:var(--weight-semibold);color:var(--danger)}.form-stack{gap:var(--space-4);flex-direction:column;display:flex}.modal-actions{justify-content:flex-end;gap:var(--space-3);display:flex}.checkbox-row{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--soft);min-height:44px;display:flex}.checkbox-row input{width:18px;height:18px;accent-color:var(--gold)}.program-filter{gap:var(--space-2);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.training-program-grid{gap:var(--space-5);grid-template-columns:1fr;display:grid}@media (min-width:768px){.training-program-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.training-program-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1440px){.training-program-grid{grid-template-columns:repeat(4,1fr)}}.program-card{gap:var(--space-3);padding:var(--space-5);flex-direction:column;height:100%;display:flex}.program-card--archived{opacity:.66}.program-card__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.program-card__title{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-md);color:var(--ink);line-height:1.2}.program-card__goal{font-size:var(--text-sm);color:var(--soft);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.program-card__rule{border:none;border-top:1px solid var(--line-faint);margin:var(--space-1) 0}.program-card__stats{gap:var(--space-6);display:flex}.program-card__stat dt{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.program-card__stat dd{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-lg);color:var(--ink)}.program-card__updated{font-size:var(--text-xs);color:var(--muted);margin-top:auto}.program-editor{gap:var(--space-6);grid-template-columns:1fr;align-items:start;display:grid}@media (min-width:1024px){.program-editor{grid-template-columns:var(--tree-nav-w) 1fr;gap:var(--space-8)}}.program-editor__nav{position:relative}@media (min-width:1024px){.program-editor__nav{top:calc(var(--header-h) + var(--space-5));position:sticky}}.program-editor__panel{min-width:0}.tree-nav{background:var(--surface-1);border:1px solid var(--line-faint);border-radius:var(--radius-md);padding:var(--space-3)}.tree{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.tree .tree{margin-top:var(--space-1)}.tree-node{position:relative}.tree-node__row{align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-1) var(--space-2);padding-left:var(--indent,var(--space-3));border-radius:var(--radius-sm);color:var(--soft);transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);border-left:2px solid #0000;display:flex}.tree-node__row:focus-within,.tree-node__row:hover{background:var(--tree-node-hover-bg);color:var(--ink)}.tree-node__row--selected{background:var(--tree-node-active-bg);border-left-color:var(--tree-rail-active);color:var(--ink)}.tree-node__chevron-btn{min-width:28px;min-height:28px;color:var(--muted);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.tree-node__chevron-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.tree-node__chevron{transition:transform var(--dur-fast) var(--ease-out)}.tree-node__chevron--open{transform:rotate(90deg)}.tree-node__label{font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tree-node__label--cycle{color:var(--ink)}.tree-node__label--day{font-weight:var(--weight-medium);color:inherit}.tree-node__count{font-size:var(--text-2xs);color:var(--muted);white-space:nowrap}.tree-node__leaf-btn{min-width:0;min-height:36px;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;padding:0;display:flex}.tree-node__leaf-btn:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-xs);outline:none}.tree-node__row--leaf{padding-left:var(--indent,var(--space-3))}.tree-node__actions{opacity:0;transition:opacity var(--dur-fast) var(--ease-out);gap:2px;margin-left:auto;display:flex}.tree-node__row:focus-within .tree-node__actions,.tree-node__row:hover .tree-node__actions{opacity:1}@media (hover:none){.tree-node__actions{opacity:1}}.tree-nav__add-cycle{align-items:center;gap:var(--space-2);margin-top:var(--space-3);min-height:44px;padding:0 var(--space-3);border:1px dashed var(--line-faint);border-radius:var(--radius-sm);width:100%;color:var(--soft);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);background:0 0;justify-content:center;display:inline-flex}.tree-nav__add-cycle:hover{border-color:var(--gold-wash-22);color:var(--ink)}.tree-nav__add-cycle:focus-visible{box-shadow:var(--focus-ring);outline:none}.session-editor{gap:var(--space-5);flex-direction:column;display:flex}.session-editor__meta{gap:var(--space-3);padding:var(--space-4);background:var(--surface-1);border:1px solid var(--line-faint);border-radius:var(--radius-md);flex-direction:column;display:flex}.session-editor__meta-grid{gap:var(--space-3);grid-template-columns:1fr;display:grid}@media (min-width:768px){.session-editor__meta-grid{grid-template-columns:120px 1fr 1fr}}.session-editor__exercises{gap:var(--space-4);flex-direction:column;display:flex}.session-editor__add-exercise{align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border:1px dashed var(--line-faint);border-radius:var(--radius-sm);color:var(--soft);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;background:0 0;justify-content:center;display:inline-flex}.session-editor__add-exercise:hover{border-color:var(--gold-wash-22);color:var(--ink)}.session-editor__add-exercise:focus-visible{box-shadow:var(--focus-ring);outline:none}.exercise-editor{background:var(--surface-1);border:1px solid var(--line-faint);border-radius:var(--radius-md);padding:var(--space-4)}.exercise-editor--superset{border-left:3px solid var(--tree-superset)}.exercise-editor__head{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.exercise-editor__grip{color:var(--muted);display:inline-flex}.exercise-editor__name{font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--ink)}.exercise-editor__actions{gap:2px;margin-left:auto;display:flex}.exercise-editor__notes{font-size:var(--text-sm);color:var(--muted);margin-bottom:var(--space-3)}.exercise-editor__sets{gap:var(--space-1);flex-direction:column;display:flex}.exercise-editor__empty{font-size:var(--text-sm);color:var(--muted);padding:var(--space-3) 0}.exercise-editor__add-set{align-items:center;gap:var(--space-2);margin-top:var(--space-2);min-height:40px;padding:0 var(--space-3);color:var(--gold);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;align-self:flex-start;display:inline-flex}.exercise-editor__add-set:hover{color:var(--gold-bright)}.exercise-editor__add-set:focus-visible{box-shadow:var(--focus-ring);outline:none}.set-editor-head{display:none}.set-editor-row{gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--line-faint);grid-template-columns:1fr 1fr;align-items:end;display:grid}.set-editor-row__num{display:none}.set-editor-row__cell{flex-direction:column;gap:2px;min-width:0;display:flex}.set-editor-row__label{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.set-editor-row__input{min-height:40px;font-size:var(--text-sm)}.set-editor-row__cell--error .set-editor-row__input{border-color:var(--danger)}.set-editor-row__err{font-size:var(--text-2xs);color:var(--danger)}.set-editor-row__actions{grid-column:1/-1;justify-content:flex-end;gap:2px;display:flex}@media (min-width:768px){.set-editor-head{gap:var(--space-2);padding:0 0 var(--space-1);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.03em;color:var(--muted);display:grid}.set-editor-head,.set-editor-row{grid-template-columns:28px 1fr 90px 1fr 70px 90px 80px 96px}.set-editor-row{align-items:center}.set-editor-row__num{font-family:var(--font-display);font-weight:var(--weight-black);color:var(--muted);text-align:center;display:block}.set-editor-row__label{display:none}.set-editor-row__actions{grid-column:auto}}.assign-panel{gap:var(--space-6);grid-template-columns:1fr;align-items:start;display:grid}@media (min-width:1024px){.assign-panel{gap:var(--space-8);grid-template-columns:1fr 1fr}}.assign-panel__col{gap:var(--space-4);flex-direction:column;display:flex}.assign-panel__title{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--ink)}.assign-panel__clients{gap:var(--space-2);flex-direction:column;max-height:420px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.assign-card{align-items:center;gap:var(--space-3);width:100%;min-height:56px;padding:var(--space-2) var(--space-3);border:1px solid var(--line-faint);border-radius:var(--radius-sm);background:var(--surface-1);color:var(--soft);cursor:pointer;text-align:left;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out);display:flex}.assign-card:hover:not(:disabled){border-color:var(--gold-wash-22)}.assign-card:focus-visible{box-shadow:var(--focus-ring);outline:none}.assign-card--checked{border-color:var(--gold);background:var(--gold-wash-08);color:var(--ink)}.assign-card--disabled{opacity:.5;cursor:not-allowed}.assign-card__check{border:2px solid var(--line);border-radius:var(--radius-xs);flex-shrink:0;width:20px;height:20px;position:relative}.assign-card__check--on{border-color:var(--gold);background:var(--gold)}.assign-card__check--on:after{content:"";border:solid var(--gold-on);border-width:0 2px 2px 0;width:5px;height:10px;position:absolute;top:1px;left:5px;transform:rotate(45deg)}.assign-card__name{font-size:var(--text-sm);font-weight:var(--weight-medium);flex:1}.assign-panel__controls{gap:var(--space-3);flex-direction:column;display:flex}.assign-panel__date .field__label{margin-bottom:var(--space-1)}.assign-panel__list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.assign-row{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--surface-1);border:1px solid var(--line-faint);border-radius:var(--radius-sm);flex-wrap:wrap;display:flex}.assign-row__body{flex:1;min-width:120px}.assign-row__name{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--ink)}.assign-row__date{font-size:var(--text-xs);color:var(--muted)}.assign-row__status{min-width:130px}.athlete-progress{gap:var(--space-5);flex-direction:column;display:flex}.athlete-progress__program{font-size:var(--text-sm);color:var(--soft)}.athlete-progress__bento{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (min-width:768px){.athlete-progress__bento{grid-template-columns:repeat(3,1fr)}}.athlete-progress__prs,.athlete-progress__ring,.athlete-progress__streak{gap:var(--space-3);flex-direction:column;align-items:flex-start;display:flex}.athlete-progress__ring{text-align:center;align-items:center}.athlete-progress__ring-meta{font-size:var(--text-sm);color:var(--soft)}.athlete-progress__big{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-display-2);color:var(--ink);line-height:1}.athlete-progress__skipped{font-size:var(--text-xs);color:var(--muted)}.pr-list{gap:var(--space-2);flex-direction:column;width:100%;margin:0;padding:0;list-style:none;display:flex}.pr-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--surface-1);border:1px solid var(--line-faint);border-radius:var(--radius-sm);display:flex}.pr-item__icon{color:var(--pr-accent);display:inline-flex}.pr-item__body{flex:1;min-width:0}.pr-item__name{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--ink)}.pr-item__date{font-size:var(--text-xs);color:var(--muted)}.pr-item__values{gap:var(--space-4);display:flex}.pr-item__value dt{font-size:var(--text-2xs);text-transform:uppercase;color:var(--muted)}.pr-item__value dd{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-sm);color:var(--ink)}.pr-item__value--accent dd{color:var(--pr-accent)}.next-session{align-items:flex-start;gap:var(--space-3);padding:var(--space-6);margin-bottom:var(--space-6);background:var(--gold-wash-08);border:1px solid var(--gold-wash-22);border-radius:var(--radius-lg);flex-direction:column;display:flex}.next-session--rest{background:var(--surface-1);border-color:var(--line-faint)}.next-session__eyebrow{align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.08em;color:var(--gold);display:inline-flex}.next-session__pulse{border-radius:var(--radius-pill);background:var(--gold);width:8px;height:8px;animation:next-session-pulse 2s var(--ease-out) infinite}@keyframes next-session-pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.next-session__pulse{animation:none}}.next-session__title{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-xl);color:var(--ink)}.next-session__meta,.next-session__rest-note{font-size:var(--text-sm);color:var(--soft)}.entrainement-bento{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (min-width:768px){.entrainement-bento{grid-template-columns:1fr 1fr}}.entrainement-bento__program{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-md);color:var(--ink);margin:var(--space-2) 0 var(--space-1)}.entrainement-bento__goal{font-size:var(--text-sm);color:var(--soft)}.entrainement-bento__date{font-size:var(--text-xs);color:var(--muted);margin:var(--space-2) 0 var(--space-3)}.entrainement-shortcuts{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.jour-section{margin-bottom:var(--space-6)}.today-session{gap:var(--space-4);flex-direction:column;display:flex}.today-session__status{display:flex}.today-exercise{gap:var(--space-3);padding:var(--space-4);flex-direction:column;display:flex}.today-exercise__name{font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--ink)}.today-exercise__notes{font-size:var(--text-sm);color:var(--muted);margin-top:var(--space-1)}.today-exercise__cols{display:none}.today-exercise__sets{gap:var(--space-2);flex-direction:column;display:flex}@media (min-width:768px){.today-exercise__cols{gap:var(--space-3);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);grid-template-columns:minmax(120px,1fr) minmax(180px,1.4fr) 44px;display:grid}}.set-log-row{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--line-faint);grid-template-columns:1fr;display:grid}.set-log-row--done{background:var(--surface-1)}.set-log-row--pr{background:var(--pr-wash);border-color:var(--pr-line);animation:pr-flash var(--dur-normal) var(--ease-out)}@keyframes pr-flash{0%{background:var(--gold-wash-22)}to{background:var(--pr-wash)}}@media (prefers-reduced-motion:reduce){.set-log-row--pr{animation:none}}.set-log-row__prescribed{background:var(--set-prescribed-bg);color:var(--set-prescribed-fg);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.set-log-row__prescribed dd{margin:0}.set-log-row__setnum{font-family:var(--font-display);font-weight:var(--weight-black);color:var(--soft)}.set-log-row__actual{gap:var(--space-2);align-items:flex-end;display:flex}.set-log-row__field{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.set-log-row__field-label{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.set-log-row__input{min-height:44px;font-size:var(--text-base)}.set-log-row__input:focus{border-color:var(--set-actual-accent)}.set-log-row__field--error .set-log-row__input{border-color:var(--danger)}.set-log-row__error{font-size:var(--text-2xs);color:var(--danger)}.set-log-row__check{border:2px solid var(--line);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--gold-on);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out);background:0 0;justify-content:center;justify-self:start;align-items:center;display:inline-flex}.set-log-row__check:hover:not(:disabled){border-color:var(--gold)}.set-log-row__check:focus-visible{box-shadow:var(--focus-ring);outline:none}.set-log-row__check--done{background:var(--success);border-color:var(--success);color:var(--gold-on)}.set-log-row__spinner{border:2px solid var(--line);border-top-color:var(--gold);border-radius:var(--radius-pill);width:16px;height:16px;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.set-log-row__spinner{animation:none}}.set-log-row__feedback{align-items:center;gap:var(--space-3);display:flex}.set-log-row__delta{font-size:var(--text-sm);font-weight:var(--weight-semibold);align-items:center;gap:2px;display:inline-flex}.set-log-row__delta--up{color:var(--set-delta-up)}.set-log-row__delta--down{color:var(--set-delta-down)}.set-log-row__delta--even{color:var(--set-delta-even)}@media (min-width:768px){.set-log-row{border:none;border-bottom:1px solid var(--line-faint);padding:var(--space-2) 0;border-radius:0;grid-template-columns:minmax(120px,1fr) minmax(180px,1.4fr) 44px;align-items:center}.set-log-row__field-label{display:none}.set-log-row__feedback{padding-left:var(--space-3);grid-column:1/-1}}.today-session__finish{gap:var(--space-4);padding:var(--space-4);flex-direction:column;display:flex}.today-session__finish-grid{gap:var(--space-3);grid-template-columns:1fr;display:grid}@media (min-width:768px){.today-session__finish-grid{grid-template-columns:1fr 120px;align-items:start}}.today-session__duration .field__label{margin-bottom:var(--space-1)}.today-session__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.cycle-week-nav{gap:var(--space-3);margin-bottom:var(--space-5);flex-direction:column;display:flex}@media (min-width:768px){.cycle-week-nav{flex-direction:row;justify-content:space-between;align-items:center}}.cycle-week-nav__chips{gap:var(--space-2);padding-bottom:var(--space-1);display:flex;overflow-x:auto}.semaine-deload{margin-bottom:var(--space-4)}.semaine-days{gap:var(--space-3)}.semaine-day,.semaine-days{flex-direction:column;display:flex}.semaine-day{gap:var(--space-2);padding:var(--space-4);border-left:3px solid var(--session-planned)}.semaine-day--done{border-left-color:var(--session-done)}.semaine-day--skipped{border-left-color:var(--session-skipped)}.semaine-day--planned{border-left-color:var(--session-planned)}.semaine-day__head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.semaine-day__title{font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--ink)}.semaine-day__meta{font-size:var(--text-sm);color:var(--muted)}.training-calendar-wrap{gap:var(--space-4);flex-direction:column;display:flex}.training-calendar__bar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.training-calendar__month{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-md);color:var(--ink);text-align:center;min-width:140px}.seg-toggle{border:1px solid var(--line-faint);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.seg-toggle__btn{min-height:44px;padding:0 var(--space-4);background:var(--surface-1);color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;border:none}.seg-toggle__btn--active{background:var(--surface-2);color:var(--ink)}.seg-toggle__btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.training-calendar{display:none}@media (min-width:768px){.training-calendar[data-view=calendar]{display:block}}.training-calendar__weekdays{gap:var(--space-1);margin-bottom:var(--space-1);grid-template-columns:repeat(7,1fr);display:grid}.training-calendar__weekdays span{text-align:center;font-size:var(--text-2xs);text-transform:uppercase;color:var(--muted)}.training-calendar__grid{gap:var(--space-1);grid-template-columns:repeat(7,1fr);display:grid}.calendar-cell{min-height:var(--calendar-cell);padding:var(--space-1);border:1px solid var(--line-faint);border-radius:var(--radius-xs);background:var(--session-planned-track);color:var(--soft);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out);flex-direction:column;align-items:flex-start;gap:2px;display:flex}.calendar-cell:hover{background:var(--surface-2)}.calendar-cell:focus-visible{box-shadow:var(--focus-ring);outline:none}.calendar-cell--blank{cursor:default;background:0 0;border-color:#0000}.calendar-cell--today{box-shadow:0 0 0 2px var(--gold)}.calendar-cell__num{font-size:var(--text-xs);font-family:var(--font-display);color:var(--soft)}.calendar-cell__dots{flex-wrap:wrap;gap:2px;display:flex}.calendar-dot{border-radius:var(--radius-pill);justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.calendar-dot--done{background:var(--session-done-wash);color:var(--session-done)}.calendar-dot--skipped{background:var(--session-skipped-wash);color:var(--session-skipped)}.calendar-dot--planned{color:var(--session-planned);background:0 0}.calendar-dot--partial{background:var(--session-partial-wash);color:var(--session-partial)}.training-calendar__legend{gap:var(--space-4);font-size:var(--text-xs);color:var(--muted);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.training-calendar__legend li{align-items:center;gap:var(--space-1);display:inline-flex}.training-calendar__list{display:block}@media (min-width:768px){.training-calendar__list{display:none}.training-calendar__list--shown{display:block}}.training-calendar__empty{font-size:var(--text-sm);color:var(--muted);padding:var(--space-4)}.calendar-list-day{padding:var(--space-3) 0;border-bottom:1px solid var(--line-faint)}.calendar-list-day__date{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--ink);margin-bottom:var(--space-2)}.calendar-list-day__sessions{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.calendar-list-session{align-items:center;gap:var(--space-2);width:100%;min-height:44px;padding:var(--space-1) var(--space-2);color:var(--soft);cursor:pointer;border-radius:var(--radius-xs);text-align:left;background:0 0;border:none;display:flex}.calendar-list-session:hover{background:var(--surface-2)}.calendar-list-session:focus-visible{box-shadow:var(--focus-ring);outline:none}.calendar-list-session__title{font-size:var(--text-sm);color:var(--ink);flex:1}.calendar-list-session__status{font-size:var(--text-xs);color:var(--muted)}.exercise-progress{gap:var(--space-4);flex-direction:column;display:flex}.exercise-progress__chips{gap:var(--space-2);padding-bottom:var(--space-1);display:flex;overflow-x:auto}.exercise-progress__target{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--soft);display:inline-flex}.exercise-progress__target-key{border-top:2px dashed var(--viz-target);width:16px;height:0;display:inline-block}.progres-section{margin-top:var(--space-6)}.progres-section__title{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--ink);margin-bottom:var(--space-4)}.goals-panel{gap:var(--space-4);flex-direction:column;display:flex}.goals-composer{gap:var(--space-2);grid-template-columns:1fr;display:grid}@media (min-width:768px){.goals-composer{grid-template-columns:2fr 1fr .8fr .8fr 1fr auto;align-items:end}}.goals-composer__date,.goals-composer__value{min-width:0}.goals-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.goal-item{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--surface-1);border:1px solid var(--line-faint);border-radius:var(--radius-sm);flex-wrap:wrap;display:flex}.goal-item__body{flex:1;min-width:120px}.goal-item__name{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--ink)}.goal-item__meta{font-size:var(--text-xs);color:var(--muted)}.exercise-picker{gap:var(--space-3);flex-direction:column;display:flex}.exercise-picker__chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.exercise-picker__list{gap:var(--space-1);flex-direction:column;max-height:240px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.exercise-picker__item{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:0 var(--space-3);border:1px solid var(--line-faint);border-radius:var(--radius-sm);background:var(--surface-1);color:var(--soft);cursor:pointer;text-align:left;display:flex}.exercise-picker__item:hover:not(:disabled){border-color:var(--gold-wash-22);color:var(--ink)}.exercise-picker__item:focus-visible{box-shadow:var(--focus-ring);outline:none}.exercise-picker__item-name{font-size:var(--text-sm);font-weight:var(--weight-medium)}.exercise-picker__item-cat{font-size:var(--text-2xs);color:var(--muted)}.exercise-picker__empty{font-size:var(--text-sm);color:var(--muted);padding:var(--space-3)}.exercise-picker__free{border-top:1px solid var(--line-faint);padding-top:var(--space-3)}.exercise-picker__free-title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:var(--space-2)}.exercise-picker__free-row{gap:var(--space-2);grid-template-columns:1fr;display:grid}@media (min-width:600px){.exercise-picker__free-row{grid-template-columns:1fr .7fr auto;align-items:center}}.ccft-section{gap:var(--space-stack);flex-direction:column;display:flex}.ccft-section__title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-black);letter-spacing:var(--tracking-tight);color:var(--ink)}.ccft-hub{gap:var(--space-6);display:grid}.ccft-hub__head{align-items:center;gap:var(--space-6);flex-wrap:wrap;display:flex}.ccft-hub__meta{gap:var(--space-2);flex-direction:column;display:flex}.ccft-hub__overall{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--ink)}.ccft-hub__nudge{color:var(--soft);font-size:var(--text-sm)}.ccft-hub__countdown{color:var(--muted);font-size:var(--text-sm)}.ccft-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.ccft-domain-card{gap:var(--space-2);padding:var(--space-card);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-lg);transition:border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);flex-direction:column;display:flex}.ccft-domain-card:hover{border-color:var(--line-strong);transform:translateY(-2px)}.ccft-domain-card__title{font-weight:var(--weight-bold);color:var(--ink)}.ccft-domain-card__weight{font-size:var(--text-2xs);color:var(--muted)}.ccft-domain-card__pct{font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink)}.ccft-domain-card__bar{border-radius:var(--radius-xs);background:var(--viz-track);height:6px;overflow:hidden}.ccft-domain-card__fill{background:var(--gold);height:100%}.ccft-verdict{align-items:center;gap:var(--space-2);font-size:var(--text-2xs);font-weight:var(--weight-bold);display:inline-flex}.ccft-verdict--green{color:var(--success)}.ccft-verdict--amber{color:var(--warn)}.ccft-verdict--red{color:var(--danger)}.ccft-verdict__dot{background:currentColor;border-radius:50%;width:8px;height:8px}.ccft-assess{flex-direction:column}.ccft-assess,.ccft-assess__row{gap:var(--space-4);display:flex}.ccft-assess__row{justify-content:space-between;align-items:center}.ccft-assess__label{color:var(--soft)}.ccft-resources{gap:var(--space-2);flex-direction:column;display:flex}.ccft-resources__item{gap:var(--space-2);align-items:baseline;display:flex}.ccft-page{gap:var(--space-6);flex-direction:column;display:flex}.ccft-apps-gate{font-family:var(--font-display);font-size:var(--text-lg)}.ccft-app-detail__heading,.ccft-apps-gate{font-weight:var(--weight-bold);color:var(--ink)}.ccft-app-detail__heading{margin-top:var(--space-5);font-size:var(--text-md)}.ccft-html{color:var(--soft);line-height:var(--leading-relaxed);max-width:var(--measure)}.ccft-html>*+*{margin-top:var(--space-3)}.ccft-html ol,.ccft-html ul{padding-left:var(--space-5)}.ccft-html ol{list-style:decimal}.ccft-html ul{list-style:outside}.ccft-html strong{color:var(--ink);font-weight:var(--weight-bold)}.ccft-app-groups{gap:var(--space-6)}.ccft-app-group,.ccft-app-groups{flex-direction:column;display:flex}.ccft-app-group{gap:var(--space-3)}.ccft-app-group__title{align-items:baseline;gap:var(--space-3);font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--ink);flex-wrap:wrap;display:flex}.ccft-app-list{gap:var(--space-2);flex-direction:column;display:flex}.ccft-app-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.ccft-app-row__main{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.ccft-app-row__title{font-weight:var(--weight-bold);color:var(--ink)}a.ccft-app-row__title:hover{color:var(--gold-bright)}.ccft-app-row__meta{align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:var(--muted);flex-wrap:wrap;display:flex}.ccft-app-row__state{align-items:center;gap:var(--space-2);display:flex}.ccft-app-badges{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ccft-app-detail__list{gap:var(--space-1);margin-top:var(--space-2);padding-left:var(--space-5);color:var(--soft);flex-direction:column;list-style:outside;display:flex}.ccft-app-detail__covers{margin-top:var(--space-4);font-size:var(--text-xs);color:var(--muted)}.ccft-app-form,.ccft-review-form{gap:var(--space-5);flex-direction:column;display:flex}.ccft-app-form__videos,.ccft-review-form__decision{gap:var(--space-2);border:0;flex-direction:column;margin:0;padding:0;display:flex}.ccft-app-form__video{gap:var(--space-2);align-items:center;display:flex}.ccft-app-form__video .control{flex:1;min-width:0}.ccft-app-form__consent,.ccft-review-form__decision label{gap:var(--space-3);color:var(--soft);font-size:var(--text-sm);align-items:flex-start;display:flex}.ccft-rubric{gap:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4);flex-direction:column;display:flex}.ccft-rubric__legend{font-family:var(--font-display);font-weight:var(--weight-bold);color:var(--ink);padding:0 var(--space-2)}.ccft-rubric__rule{font-size:var(--text-sm);color:var(--muted)}.ccft-rubric__criterion{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--line-faint);flex-direction:column;display:flex}.ccft-rubric__name{font-weight:var(--weight-bold);color:var(--ink)}.ccft-rubric__question{font-size:var(--text-sm);color:var(--soft)}.ccft-rubric__scale{gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-rubric__level{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill);font-size:var(--text-xs);color:var(--soft);cursor:pointer;display:inline-flex}.ccft-rubric__level:has(input:checked){border-color:var(--gold);color:var(--ink);background:var(--gold-wash-08)}.ccft-rubric__anchor,.ccft-rubric__compare{font-size:var(--text-sm);color:var(--muted)}.ccft-rubric__evidence{gap:var(--space-1);font-size:var(--text-xs);color:var(--muted);flex-direction:column;display:flex}.ccft-rubric-view{gap:var(--space-2);flex-direction:column;display:flex}.ccft-rubric-view__title{font-weight:var(--weight-bold);color:var(--ink)}.ccft-rubric-view__list{gap:var(--space-2);display:grid}.ccft-rubric-view__row{gap:var(--space-3);font-size:var(--text-sm);grid-template-columns:minmax(8rem,12rem) 1fr;display:grid}.ccft-rubric-view__row dt{color:var(--soft)}.ccft-rubric-view__row dd{gap:var(--space-1);color:var(--ink);flex-direction:column;display:flex}.ccft-rubric-view__ev{color:var(--muted)}.ccft-submissions{gap:var(--space-4);flex-direction:column;display:flex}.ccft-submission{gap:var(--space-3);padding:var(--space-card);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;display:flex}.ccft-submission__head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ccft-submission__date{font-size:var(--text-xs);color:var(--muted)}.ccft-submission__body{white-space:pre-wrap;color:var(--soft)}.ccft-submission__review{border-left:2px solid var(--gold);padding-left:var(--space-3)}.ccft-submission__label{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--ink)}.ccft-inbox{gap:var(--space-3);flex-direction:column;display:flex}.ccft-inbox__row{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.ccft-inbox__main{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}@media (max-width:640px){.ccft-rubric-view__row{gap:var(--space-1);grid-template-columns:1fr}}.ccft-subnav{margin-bottom:var(--space-5)}.ccft-subnav__list{gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-subnav__link{min-height:44px;text-decoration:none}.ccft-filter{display:block}.ccft-chip--small{min-height:0;padding:var(--space-1) var(--space-3);font-size:var(--text-2xs)}.ccft-next{gap:var(--space-3);flex-direction:column;display:flex}.ccft-next__meta{color:var(--soft);font-size:var(--text-sm)}.ccft-next__title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--ink)}.ccft-next__row{align-items:center}.ccft-next__actions,.ccft-next__row{gap:var(--space-3);flex-wrap:wrap;display:flex}.ccft-progress-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.ccft-progress-row{gap:var(--space-2);min-height:44px;padding:var(--space-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);transition:border-color var(--dur-fast) var(--ease-out);flex-direction:column;text-decoration:none;display:flex}.ccft-progress-row:focus-visible,.ccft-progress-row:hover{border-color:var(--line-strong)}.ccft-progress-row__head{gap:var(--space-1);flex-direction:column;display:flex}.ccft-progress-row__title{font-weight:var(--weight-bold);color:var(--ink)}.ccft-progress-row__meta{font-size:var(--text-xs);color:var(--muted)}.ccft-chapters{gap:var(--space-8,var(--space-6));flex-direction:column;display:flex}.ccft-chapter{scroll-margin-top:var(--space-8,4rem)}.ccft-chapter__head{justify-content:space-between;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.ccft-chapter__head .btn{min-height:44px}.ccft-chapter__progress{gap:var(--space-1);flex-direction:column;max-width:28rem;display:flex}.ccft-chapter__pending{color:var(--muted);font-size:var(--text-sm)}.ccft-unit-key{font-family:var(--font-display);color:var(--gold);margin-right:var(--space-1)}a.ccft-app-row__title{flex-wrap:wrap;align-items:center;min-height:44px;display:inline-flex}.ccft-covered{gap:var(--space-3);padding:var(--space-4) var(--space-5);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:var(--radius-md);background:var(--surface-2);flex-direction:column;display:flex}.ccft-covered__title{font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--ink)}.ccft-covered__list{gap:var(--space-2);flex-direction:column;display:flex}.ccft-covered__item{gap:var(--space-3);color:var(--soft);font-size:var(--text-sm);align-items:baseline;display:flex}.ccft-covered__id{min-width:3.5rem;font-family:var(--font-display);font-weight:var(--weight-bold);color:var(--gold);flex:none}.ccft-covered__note{font-size:var(--text-2xs);color:var(--muted)}.ccft-lesson h2{margin-top:var(--space-6);font-family:var(--font-display);font-size:var(--text-lg)}.ccft-lesson h2,.ccft-lesson h3{font-weight:var(--weight-bold);color:var(--ink)}.ccft-lesson h3{margin-top:var(--space-5);font-size:var(--text-md)}.ccft-lesson h2:first-child,.ccft-lesson h3:first-child{margin-top:0}.ccft-lesson blockquote{border-left:2px solid var(--gold);padding-left:var(--space-4);color:var(--soft)}.ccft-lesson table{border-collapse:collapse;width:100%;font-size:var(--text-sm);display:block;overflow-x:auto}.ccft-lesson td,.ccft-lesson th{border:1px solid var(--line);padding:var(--space-2) var(--space-3);text-align:left;vertical-align:top}.ccft-html a,.ccft-lesson a{color:var(--gold);text-underline-offset:2px;text-decoration:underline}.ccft-ref-list{gap:var(--space-2);flex-direction:column;display:flex}.ccft-ref-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.ccft-ref-row__main{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.ccft-ref-row__title{font-weight:var(--weight-bold);color:var(--ink)}.ccft-ref-row__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-ref-row__actions .btn{min-height:44px}.ccft-ref-row__pending{font-size:var(--text-xs);color:var(--muted)}.ccft-completion{gap:var(--space-4);flex-direction:column;align-items:flex-start;display:flex}.ccft-completion__done{color:var(--success);font-weight:var(--weight-bold)}.ccft-completion__revisit{gap:var(--space-2);width:100%;padding:var(--space-4);background:var(--gold-wash-08);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:var(--radius-md);flex-direction:column;align-items:flex-start;display:flex}.ccft-completion__revisit p{margin:0}.ccft-checklist{flex-direction:column}.ccft-check,.ccft-checklist{gap:var(--space-2);display:flex}.ccft-check{align-items:center;color:var(--soft)}.ccft-check--done{color:var(--success)}.ccft-attribution{gap:var(--space-3);flex-direction:column;display:flex}.ccft-attribution__text{color:var(--soft);max-width:var(--measure)}.ccft-attribution__note{font-size:var(--text-xs);color:var(--warn)}.ccft-card-part__first{margin-top:0}.ccft-glossary{gap:var(--space-4);flex-direction:column;display:flex}.ccft-glossary__count{font-size:var(--text-sm);color:var(--muted)}.ccft-glossary__table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.ccft-glossary__table td,.ccft-glossary__table th{padding:var(--space-3);text-align:left;vertical-align:top;border-bottom:1px solid var(--line-faint)}.ccft-glossary__table thead th{font-size:var(--text-2xs);color:var(--muted);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-wide,.04em)}.ccft-glossary__table tbody th{color:var(--ink);font-weight:var(--weight-bold)}.ccft-glossary__table td{color:var(--soft)}.ccft-glossary__definition{max-width:none}.ccft-table-wrap{overflow-x:auto}.ccft-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.ccft-table td,.ccft-table th{padding:var(--space-3);text-align:left;vertical-align:top;border-bottom:1px solid var(--line-faint)}.ccft-table thead th{font-size:var(--text-2xs);color:var(--muted);text-transform:uppercase}.ccft-table tbody th{color:var(--ink);font-weight:var(--weight-bold)}.ccft-counts{gap:var(--space-1);color:var(--soft);white-space:nowrap;flex-direction:column;display:flex}.ccft-counts__locale{gap:var(--space-2);display:flex}.ccft-counts__lang{font-weight:var(--weight-bold);color:var(--ink)}.ccft-counts__draft{color:var(--warn)}.ccft-counts__legend{margin-top:var(--space-3);font-size:var(--text-xs);color:var(--muted)}.ccft-actions-row{gap:var(--space-2)}.ccft-actions-row,.ccft-section__head{align-items:center;flex-wrap:wrap;display:flex}.ccft-section__head{justify-content:space-between;gap:var(--space-3)}.ccft-ask{gap:var(--space-4);flex-direction:column;display:flex}.ccft-ask__context{align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.ccft-ask__context-label{font-size:var(--text-2xs);color:var(--muted);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.ccft-ask__context-value{color:var(--ink);font-weight:var(--weight-semibold)}.ccft-ask__sent{color:var(--soft);font-size:var(--text-sm)}.ccft-ask__sent a{color:var(--gold);text-underline-offset:3px;text-decoration:underline}.ccft-ask-inline{border-top:1px solid var(--line-faint);padding-top:var(--space-3)}.ccft-ask-inline__summary{cursor:pointer;color:var(--gold);font-size:var(--text-sm)}.ccft-ask-inline[open] .ccft-ask-inline__summary{margin-bottom:var(--space-3)}.ccft-questions{gap:var(--space-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-questions__item{scroll-margin-top:calc(var(--header-h) + var(--space-4))}.ccft-question{gap:var(--space-3);flex-direction:column;display:flex}.ccft-question__head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-question__title{font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--ink);overflow-wrap:anywhere}.ccft-question__badges{gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-question__meta{font-size:var(--text-xs);color:var(--muted);overflow-wrap:anywhere}.ccft-question__meta a{color:var(--soft);text-underline-offset:3px;text-decoration:underline}.ccft-question__body{color:var(--soft);white-space:pre-wrap;overflow-wrap:anywhere;max-width:var(--measure)}.ccft-question__answer{padding-left:var(--space-4);border-left:2px solid var(--gold-wash-40);gap:var(--space-1);flex-direction:column;display:flex}.ccft-question__answer-label{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--ink)}.ccft-question__answer-date{font-weight:var(--weight-regular);color:var(--muted)}.ccft-question__faq-note{font-size:var(--text-xs);color:var(--info)}.ccft-faq{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-faq__entry{background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.ccft-faq__summary{cursor:pointer;align-items:center;gap:var(--space-2);color:var(--ink);font-weight:var(--weight-semibold);flex-wrap:wrap;display:flex}.ccft-faq__title{overflow-wrap:anywhere}.ccft-faq__chip{font-size:var(--text-2xs);color:var(--muted);border:1px solid var(--line);border-radius:var(--radius-pill);padding:0 var(--space-2);font-weight:var(--weight-regular)}.ccft-faq__content{gap:var(--space-2);margin-top:var(--space-3);flex-direction:column;display:flex}.ccft-faq__label{font-size:var(--text-2xs);color:var(--muted);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.ccft-inbox-actions{border-top:1px solid var(--line-faint);padding-top:var(--space-3)}.ccft-inbox-actions,.ccft-inbox-actions__faq-form,.ccft-inbox-actions__reply{gap:var(--space-3);flex-direction:column;display:flex}.ccft-inbox-actions__faq summary{cursor:pointer;color:var(--gold);font-size:var(--text-sm)}.ccft-inbox-actions__faq[open] summary{margin-bottom:var(--space-2)}.ccft-filters{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.ccft-filters .field{min-width:10rem}.ccft-alerts{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-alerts__item{align-items:center;gap:var(--space-2);padding:var(--space-3) 0;border-bottom:1px solid var(--line-faint);flex-wrap:wrap;display:flex}.ccft-alerts__item:last-child{border-bottom:0}.ccft-alerts__kind{font-weight:var(--weight-semibold);color:var(--ink);font-size:var(--text-sm)}.ccft-alerts__text{color:var(--soft);font-size:var(--text-sm);overflow-wrap:anywhere}.ccft-alerts__text a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.ccft-heat{border-collapse:separate;border-spacing:2px;width:100%;font-size:var(--text-sm)}.ccft-heat td,.ccft-heat th{padding:var(--space-2);text-align:left;vertical-align:middle}.ccft-heat thead th{font-size:var(--text-2xs);color:var(--muted);font-weight:var(--weight-bold);text-transform:uppercase;vertical-align:bottom}.ccft-heat__domain{text-transform:none;color:var(--soft);font-size:var(--text-xs);min-width:6rem;display:block}.ccft-heat__weight{font-weight:var(--weight-regular);display:block}.ccft-heat__student{min-width:11rem}.ccft-heat__student a{color:var(--ink);font-weight:var(--weight-bold);text-underline-offset:3px;text-decoration:underline}.ccft-heat__meta{font-size:var(--text-2xs);color:var(--muted);font-weight:var(--weight-regular);margin-top:var(--space-1);display:block}.ccft-heat__overall{color:var(--ink);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.ccft-heat__cell{border-radius:var(--radius-xs);min-width:5.5rem;color:var(--ink)}.ccft-heat__value{font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;display:block}.ccft-heat__sub{font-size:var(--text-2xs);font-variant-numeric:tabular-nums;display:block}.ccft-heat__cell--vide{box-shadow:inset 0 0 0 1px var(--line);color:var(--muted);background:0 0}.ccft-heat__cell--faible{background:oklch(29% .035 200)}.ccft-heat__cell--moyen{background:oklch(38% .065 200)}.ccft-heat__cell--solide{background:oklch(49% .095 200)}.ccft-heat__avg{color:var(--soft);font-variant-numeric:tabular-nums;border-top:1px solid var(--line)}.ccft-heat tfoot th{border-top:1px solid var(--line)}.ccft-heat tfoot th,.ccft-heat-legend{color:var(--muted);font-size:var(--text-xs)}.ccft-heat-legend{gap:var(--space-3) var(--space-5);margin:var(--space-3) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.ccft-heat-legend__item{align-items:center;gap:var(--space-2);display:inline-flex}.ccft-heat-legend__swatch{border-radius:var(--radius-xs);width:1rem;height:1rem;display:inline-block}@media (forced-colors:active){.ccft-heat__cell{border:1px solid canvastext}}.ccft-content-tabs{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.ccft-content-path{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--muted);overflow-wrap:anywhere}.ccft-content-cell{gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.ccft-content-cell__title{color:var(--soft);overflow-wrap:anywhere}.ccft-content-missing{color:var(--danger);font-size:var(--text-xs)}@media (max-width:640px){.ccft-glossary__table thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.ccft-glossary__table,.ccft-glossary__table tbody,.ccft-glossary__table td,.ccft-glossary__table th,.ccft-glossary__table tr{width:100%;display:block}.ccft-glossary__table tr{padding:var(--space-3) 0;border-bottom:1px solid var(--line)}.ccft-glossary__table td,.ccft-glossary__table th{padding:var(--space-1) 0;border:0}.ccft-glossary__table td:before{content:attr(data-label);font-size:var(--text-2xs);color:var(--muted);text-transform:uppercase;display:block}}.ccft-rings{gap:var(--space-5);flex-wrap:wrap;display:flex}.ccft-ring{align-items:center;gap:var(--space-2);flex-direction:column;margin:0;display:flex}.ccft-ring__caption{font-size:var(--text-2xs);color:var(--muted);text-align:center}.ccft-hub__link{color:var(--gold);text-underline-offset:3px;text-decoration:underline}.ccft-hub__link:hover{color:var(--gold-bright)}.ccft-practice-fill{background:var(--series-2)}.ccft-practice-modes{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.ccft-practice-mode{gap:var(--space-2);padding:var(--space-card);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;align-items:flex-start;display:flex}.ccft-practice-mode__title{font-weight:var(--weight-bold);color:var(--ink)}.ccft-practice-mode__desc{color:var(--soft);font-size:var(--text-sm);flex:1}.ccft-practice-mode__count{font-size:var(--text-xs);color:var(--muted)}.ccft-practice-domain{gap:var(--space-2)}.ccft-practice-how{color:var(--soft);font-size:var(--text-sm)}.ccft-practice-how summary{cursor:pointer;min-height:44px;color:var(--ink);font-weight:var(--weight-bold);align-items:center;display:flex}.ccft-practice-how>*+*{margin-top:var(--space-2)}.ccft-quiz{gap:var(--space-4);max-width:var(--measure)}.ccft-quiz,.ccft-quiz__progress{flex-direction:column;display:flex}.ccft-quiz__progress{gap:var(--space-2)}.ccft-quiz__counter{font-size:var(--text-sm);color:var(--muted)}.ccft-quiz__fill{transition:width var(--dur-fast) var(--ease-out)}.ccft-quiz__meta{align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:var(--muted);flex-wrap:wrap;display:flex}.ccft-quiz__stem{color:var(--ink);font-size:var(--text-md)}.ccft-quiz-table{margin-block:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-1);overflow-x:auto}.ccft-quiz-table table{border-collapse:collapse;width:100%;font-size:var(--text-sm);line-height:var(--leading-normal)}.ccft-quiz-table td,.ccft-quiz-table th{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--line-faint);text-align:left;vertical-align:top}.ccft-quiz-table th{background:var(--surface-2);color:var(--muted);font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.ccft-quiz-table td{color:var(--soft)}.ccft-quiz-table td:first-child{color:var(--ink);font-weight:var(--weight-semibold);white-space:nowrap}.ccft-quiz-table tr:last-child td{border-bottom:0}.ccft-quiz-table strong{color:var(--gold)}.ccft-quiz__form{gap:var(--space-3);flex-direction:column;display:flex}.ccft-quiz__fieldset{border:0;min-width:0;margin:0;padding:0}.ccft-quiz__options{gap:var(--space-2);flex-direction:column;display:flex}.ccft-quiz__option{align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--soft);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out);display:flex}.ccft-quiz__option input{accent-color:var(--gold);flex:none;width:18px;height:18px;margin:0}.ccft-quiz__option:hover{border-color:var(--line-strong);background:var(--surface-3)}.ccft-quiz__option:has(input:focus-visible){box-shadow:var(--focus-ring)}.ccft-quiz__fieldset:disabled .ccft-quiz__option{cursor:default}.ccft-quiz__option--chosen{border-color:var(--gold-wash-40);background:var(--gold-wash-08);color:var(--ink)}.ccft-quiz__option--right{border-color:var(--success-line);background:var(--success-wash);color:var(--ink)}.ccft-quiz__option--wrong{border-color:var(--danger-line);background:var(--danger-wash);color:var(--ink)}.ccft-quiz__key{border-radius:var(--radius-xs);border:1px solid var(--line);width:24px;height:24px;font-size:var(--text-2xs);color:var(--muted);flex:none;place-items:center;display:inline-grid}.ccft-quiz__text{flex:1;min-width:0}.ccft-quiz__mark{flex:none;align-items:center;display:inline-flex}.ccft-quiz__mark--right{color:var(--success)}.ccft-quiz__mark--wrong{color:var(--danger)}.ccft-quiz__hint{font-size:var(--text-xs);color:var(--muted)}.ccft-quiz__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.ccft-quiz__feedback{gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--surface-2);border-radius:var(--radius-md);border:1px solid var(--line);border-left-width:3px;flex-direction:column;display:flex}.ccft-quiz__feedback--right{border-left-color:var(--success)}.ccft-quiz__feedback--wrong{border-left-color:var(--danger)}.ccft-quiz__verdict{align-items:center;gap:var(--space-2);font-weight:var(--weight-bold);color:var(--ink);display:flex}.ccft-quiz__feedback--right .ccft-quiz__verdict svg{color:var(--success)}.ccft-quiz__feedback--wrong .ccft-quiz__verdict svg{color:var(--danger)}.ccft-quiz__right{color:var(--ink)}.ccft-quiz__subtitle{font-size:var(--text-2xs);color:var(--muted);text-transform:uppercase;font-weight:var(--weight-bold)}.ccft-quiz__explanation{color:var(--soft)}.ccft-quiz__lesson{min-height:44px;color:var(--gold);text-underline-offset:3px;align-items:center;text-decoration:underline;display:inline-flex}.ccft-quiz__lesson:hover{color:var(--gold-bright)}.ccft-quiz__title{font-size:var(--text-xl);font-weight:var(--weight-black)}.ccft-quiz__score,.ccft-quiz__title{font-family:var(--font-display);color:var(--ink)}.ccft-quiz__score{font-size:var(--text-2xl)}.ccft-quiz__pct{color:var(--muted);font-size:var(--text-sm)}.ccft-quiz__review{gap:var(--space-2);flex-direction:column;display:flex}.ccft-quiz__note{font-size:var(--text-xs);color:var(--muted)}.ccft-quiz :focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-xs);outline:none}@media (prefers-reduced-motion:reduce){.ccft-domain-card,.ccft-progress-row{transition:none}.ccft-domain-card:hover{transform:none}.ccft-quiz__fill,.ccft-quiz__option{transition:none}}.ccft-player{gap:var(--space-2);flex-direction:column;display:flex}.ccft-player__stage{position:relative}.ccft-player__mount{position:absolute;inset:0}.ccft-player__mount>div,.ccft-player__mount>iframe{border:0;width:100%;height:100%;display:block}.ccft-player__facade{width:100%;height:100%;font:inherit;border:0;padding:0;position:absolute;inset:0}.ccft-player__facade:focus-visible{outline:2px solid var(--gold-bright);outline-offset:-4px}.ccft-player__status{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ccft-player__fallback,.ccft-player__status{font-size:var(--text-sm);color:var(--soft)}.ccft-player__fallback a{color:var(--gold);text-underline-offset:2px;text-decoration:underline}.ccft-vreview{gap:var(--space-4);flex-direction:column;display:flex}.ccft-vreview__title{font-weight:var(--weight-bold);color:var(--ink)}.ccft-vreview__lede{color:var(--soft);font-size:var(--text-sm)}.ccft-vreview__videos{gap:var(--space-4);display:grid}.ccft-vreview__video{gap:var(--space-2);scroll-margin-top:var(--space-6);flex-direction:column;display:flex}.ccft-vreview__video-label{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--ink)}.ccft-vreview__panel{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--line);flex-direction:column;display:flex}.ccft-vreview__panel:first-of-type{border-top:0;padding-top:0}.ccft-vreview__toolbar{gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-vreview__groups{gap:var(--space-4);flex-direction:column;display:flex}.ccft-vreview__group{gap:var(--space-2);flex-direction:column;display:flex}.ccft-vreview__group-title{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--muted);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.ccft-markers{margin:0;padding:0;list-style:none}.ccft-marker,.ccft-markers{gap:var(--space-2);flex-direction:column;display:flex}.ccft-marker{padding:var(--space-3);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md)}.ccft-marker__head{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-marker__time{min-width:3.75rem;min-height:2.25rem;padding:0 var(--space-2);font:inherit;font-variant-numeric:tabular-nums;font-weight:var(--weight-bold);color:var(--gold-on);background:var(--gold);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out);border:0;justify-content:center;align-items:center;display:inline-flex}.ccft-marker__time:hover{background:var(--gold-flat-hover)}.ccft-marker__time:focus-visible{box-shadow:var(--focus-ring);outline:none}.ccft-marker__criterion,.ccft-marker__video{font-size:var(--text-xs);color:var(--muted)}.ccft-marker__kind{padding:2px var(--space-2);border-radius:var(--radius-xs);font-size:var(--text-2xs);font-weight:var(--weight-bold);border:1px solid;align-items:center;display:inline-flex}.ccft-marker__kind--point_fort{color:var(--success)}.ccft-marker__kind--a_corriger{color:var(--warn)}.ccft-marker__kind--cue{color:var(--soft)}.ccft-marker__note{white-space:pre-wrap;color:var(--soft);font-size:var(--text-sm)}.ccft-marker__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-marker-form{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--gold-wash-22);border-radius:var(--radius-md);background:var(--gold-wash-08);flex-direction:column;display:flex}.ccft-marker-form__title{font-weight:var(--weight-bold);color:var(--ink)}.ccft-marker-form__kinds{gap:var(--space-2) var(--space-4);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.ccft-marker-form__kinds legend{width:100%;margin-bottom:var(--space-1)}.ccft-marker-form__kinds label{align-items:center;gap:var(--space-2);color:var(--soft);font-size:var(--text-sm);display:inline-flex}.ccft-marker-form__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-app-form__self{gap:var(--space-3);flex-direction:column;display:flex}.ccft-self-first{border-left:2px solid var(--gold);padding-left:var(--space-3)}.ccft-self-first__title{font-weight:var(--weight-bold);color:var(--ink)}.ccft-self-first__lede{color:var(--soft);font-size:var(--text-sm)}.ccft-judgment{gap:var(--space-3);flex-direction:column;display:flex}.ccft-judgment__head{gap:var(--space-2);flex-direction:column;display:flex}.ccft-judgment__score{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-black);font-variant-numeric:tabular-nums;color:var(--ink)}.ccft-judgment__meter{border-radius:var(--radius-xs);background:var(--viz-track);max-width:20rem;height:6px;overflow:hidden}.ccft-judgment__meter-fill{background:var(--gold);height:100%;display:block}.ccft-judgment__trend{font-size:var(--text-sm);font-weight:var(--weight-bold)}.ccft-judgment__trend--up{color:var(--success)}.ccft-judgment__trend--stable{color:var(--soft)}.ccft-judgment__trend--down{color:var(--warn)}.ccft-judgment__basis,.ccft-judgment__series{color:var(--muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.ccft-judgment__pending,.ccft-judgment__what{color:var(--soft);font-size:var(--text-sm)}.ccft-judgment__what{max-width:62ch}.ccft-judgment__criteria-title{font-weight:var(--weight-bold);color:var(--ink);margin-top:var(--space-2)}.ccft-judgment__criteria{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.ccft-judgment__criterion{gap:var(--space-1) var(--space-3);font-size:var(--text-sm);padding-bottom:var(--space-2);border-bottom:1px solid var(--line);grid-template-columns:minmax(9rem,13rem) minmax(8rem,10rem) 1fr;align-items:baseline;display:grid}.ccft-judgment__criterion:last-child{border-bottom:0;padding-bottom:0}.ccft-judgment__criterion-name{color:var(--ink);font-weight:var(--weight-bold)}.ccft-judgment__criterion-gap{color:var(--soft);font-variant-numeric:tabular-nums}.ccft-judgment__criterion-dir{color:var(--muted)}.ccft-judgment__criterion-dir--aligned{color:var(--success)}.ccft-judgment__criterion-pairs{color:var(--muted);font-size:var(--text-xs);grid-column:1/-1}@media (max-width:640px){.ccft-judgment__criterion{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.ccft-marker__time{transition:none}.ccft-vreview__video{scroll-behavior:auto}}.ccft-clips{gap:var(--space-6)}.ccft-clip-tiers,.ccft-clips{flex-direction:column;display:flex}.ccft-clip-tiers{gap:var(--space-3)}.ccft-clip-history__title,.ccft-clip-tiers__title{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--muted);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.ccft-clip-tiers__list{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));margin:0;padding:0;list-style:none;display:grid}.ccft-clip-tiers__item{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);display:flex}.ccft-clip-tiers__item--selected{border-color:var(--gold);background:var(--gold-wash-08)}.ccft-clip-tiers__item--locked{opacity:.72}.ccft-clip-tiers__step{border-radius:var(--radius-pill);width:1.75rem;height:1.75rem;font-size:var(--text-xs);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--ink);border:1px solid var(--line-strong);flex:none;justify-content:center;align-items:center;display:inline-flex}.ccft-clip-tiers__item--selected .ccft-clip-tiers__step{color:var(--gold-on);background:var(--gold);border-color:var(--gold)}.ccft-clip-tiers__body{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.ccft-clip-tiers__name{font-weight:var(--weight-bold);color:var(--ink)}a.ccft-clip-tiers__name{text-decoration:underline;-webkit-text-decoration-color:var(--gold-rule);text-decoration-color:var(--gold-rule);text-underline-offset:3px}a.ccft-clip-tiers__name:hover{color:var(--gold-bright)}a.ccft-clip-tiers__name:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-xs);outline:none}.ccft-clip-tiers__desc{font-size:var(--text-sm);color:var(--soft)}.ccft-clip-tiers__status{font-size:var(--text-xs);color:var(--muted);font-variant-numeric:tabular-nums}.ccft-clip{gap:var(--space-4);padding:var(--space-card);background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-lg)}.ccft-clip,.ccft-clip__head{flex-direction:column;display:flex}.ccft-clip__head{gap:var(--space-2)}.ccft-clip__meta{gap:var(--space-1) var(--space-3);font-size:var(--text-xs);color:var(--muted);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.ccft-clip__title{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--ink)}.ccft-clip__prompt{color:var(--soft);white-space:pre-wrap}.ccft-clip__start{justify-content:center;align-items:center;gap:var(--space-3);aspect-ratio:16/9;padding:var(--space-4);background:var(--surface-sunken);border:1px dashed var(--line-strong);border-radius:var(--radius-md);text-align:center;flex-direction:column;display:flex}.ccft-clip__start-icon{color:var(--gold)}.ccft-clip__hint{max-width:32rem;font-size:var(--text-sm);color:var(--soft)}.ccft-clip__video{background:var(--surface-sunken);width:100%;height:100%;position:absolute;inset:0}.ccft-chrono{align-items:center;gap:var(--space-1) var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);top:var(--space-2);z-index:1;grid-template-columns:auto 1fr;display:grid;position:sticky}.ccft-chrono__label{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.ccft-chrono__value{font-size:var(--text-lg);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--ink);justify-self:end}.ccft-chrono__track{background:var(--surface-3);border-radius:var(--radius-pill);grid-column:1/-1;height:.375rem;overflow:hidden}.ccft-chrono__fill{background:var(--gold);border-radius:inherit;height:100%;transition:width var(--dur-normal) linear;display:block}.ccft-chrono--low{border-color:var(--warn-line)}.ccft-chrono--low .ccft-chrono__value{color:var(--warn)}.ccft-chrono--low .ccft-chrono__fill{background:var(--warn)}.ccft-clip__form{gap:var(--space-4);flex-direction:column;display:flex}.ccft-clip__fieldset{gap:var(--space-2);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.ccft-clip__legend{font-weight:var(--weight-bold);color:var(--ink);padding:0}.ccft-clip__options{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-clip__option{align-items:flex-start;gap:var(--space-3);min-height:2.75rem;padding:var(--space-2) var(--space-3);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;color:var(--ink);display:flex}.ccft-clip__option:has(input:checked){border-color:var(--gold);background:var(--gold-wash-08)}.ccft-clip__option:has(input:focus-visible){box-shadow:var(--focus-ring)}.ccft-clip__option input{accent-color:var(--gold);flex:none;width:1.125rem;height:1.125rem;margin-top:.2rem}.ccft-clip__empty{font-size:var(--text-sm);color:var(--muted)}.ccft-clip__error{color:var(--danger);font-size:var(--text-sm)}.ccft-clip-fix{gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--line);flex-direction:column;display:flex}.ccft-clip-fix__head{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ccft-clip-fix__title{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--ink)}.ccft-clip-fix__title:focus{outline:none}.ccft-clip-fix__title:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-xs)}.ccft-clip-fix__summary{gap:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--soft);font-variant-numeric:tabular-nums;flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.ccft-clip-fix__score{font-weight:var(--weight-bold);color:var(--ink)}.ccft-clip-fix__hint,.ccft-clip-fix__rule,.ccft-clip-fix__subtitle{font-size:var(--text-xs);color:var(--muted)}.ccft-clip-fix__subtitle{font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.ccft-clip-fix__priority{gap:var(--space-2);padding:var(--space-4);background:var(--gold-wash-08);border:1px solid var(--gold-rule);border-radius:var(--radius-md);flex-direction:column;display:flex}.ccft-clip-fix__priority-fault{font-weight:var(--weight-bold);color:var(--ink)}.ccft-clip-fix__mine{font-size:var(--text-sm);color:var(--soft)}.ccft-clip-fix__dl{gap:var(--space-1) var(--space-3);grid-template-columns:minmax(6rem,auto) 1fr;margin:0;display:grid}.ccft-clip-fix__dl dt{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);padding-top:.15rem}.ccft-clip-fix__dl dd{color:var(--soft);white-space:pre-wrap;margin:0}.ccft-clip-fix__cue{color:var(--gold-bright);font-weight:var(--weight-bold)}.ccft-clip-fix__faults{margin:0;padding:0;list-style:none}.ccft-clip-fix__fault,.ccft-clip-fix__faults{gap:var(--space-2);flex-direction:column;display:flex}.ccft-clip-fix__fault{padding:var(--space-3);background:var(--surface-2);border-radius:var(--radius-md);border:1px solid var(--line);border-left-width:3px}.ccft-clip-fix__fault--avoided,.ccft-clip-fix__fault--seen{border-left-color:var(--success)}.ccft-clip-fix__fault--missed{border-left-color:var(--warn)}.ccft-clip-fix__fault--false_alarm{border-left-color:var(--danger)}.ccft-clip-fix__fault-foot,.ccft-clip-fix__fault-head{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-clip-fix__fault-label{color:var(--ink);flex:1;min-width:12rem}.ccft-clip-fix__kind{font-size:var(--text-xs);color:var(--muted)}.ccft-clip-fix__watch{min-height:2.25rem;padding:0 var(--space-3);font:inherit;font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--gold);border:1px solid var(--gold-rule);border-radius:var(--radius-sm);cursor:pointer;background:0 0;align-self:flex-start;align-items:center;display:inline-flex}.ccft-clip-fix__watch:hover{background:var(--gold-wash-08)}.ccft-clip-fix__watch:focus-visible{box-shadow:var(--focus-ring);outline:none}.ccft-clip-fix__statements{gap:var(--space-2);flex-direction:column;display:flex}.ccft-outline-list{gap:var(--space-1);color:var(--soft);font-size:var(--text-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-outline-list__id{font-variant-numeric:tabular-nums;font-weight:var(--weight-bold);color:var(--ink)}.ccft-clip-fix__links{gap:var(--space-3);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.ccft-clip-fix__links a{color:var(--gold);text-underline-offset:2px;text-decoration:underline}.ccft-clip-fix__footer{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ccft-clip-fix__unlocked{color:var(--success);font-weight:var(--weight-bold);flex-basis:100%}.ccft-clip-fix__unlocked a{color:var(--gold);text-underline-offset:2px;text-decoration:underline}.ccft-clip-history{gap:var(--space-3);flex-direction:column;display:flex}.ccft-clip-history__list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-clip-history__item{align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.ccft-clip-history__link{color:var(--ink);font-weight:var(--weight-bold);text-decoration:underline;-webkit-text-decoration-color:var(--gold-rule);text-decoration-color:var(--gold-rule);text-underline-offset:3px;flex:1;min-width:10rem}.ccft-clip-history__link:focus-visible{box-shadow:var(--focus-ring);outline:none}.ccft-clip-history__meta{font-size:var(--text-xs);color:var(--muted)}.ccft-clip-bank{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-clip-bank__row{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.ccft-clip-bank__main{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.ccft-clip-bank__meta{font-size:var(--text-sm);color:var(--soft)}.ccft-clip-editor{gap:var(--space-6);flex-direction:column;display:flex}.ccft-clip-editor__section{gap:var(--space-3);padding:var(--space-card);background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;min-width:0;margin:0;display:flex}.ccft-clip-editor__legend{font-weight:var(--weight-bold);color:var(--ink);padding:0 var(--space-1)}.ccft-clip-editor__pair{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));display:grid}.ccft-clip-editor__trio{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));display:grid}.ccft-clip-editor__radios{gap:var(--space-2) var(--space-4);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.ccft-clip-editor__choice{align-items:flex-start;gap:var(--space-2);color:var(--ink);cursor:pointer;min-height:2.25rem;display:inline-flex}.ccft-clip-editor__choice input{accent-color:var(--gold);flex:none;width:1.125rem;height:1.125rem;margin-top:.2rem}.ccft-clip-editor__count,.ccft-clip-editor__file-status{font-size:var(--text-sm);color:var(--soft)}.ccft-clip-editor__warning{font-size:var(--text-sm);color:var(--warn)}.ccft-clip-editor__preview{max-width:40rem}.ccft-clip-editor__outline,.ccft-clip-editor__preview{gap:var(--space-2);flex-direction:column;display:flex}.ccft-clip-editor__task{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2)}.ccft-clip-editor__task>summary{cursor:pointer;padding:var(--space-2) var(--space-3);color:var(--ink)}.ccft-clip-editor__task>summary:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-md);outline:none}.ccft-clip-editor__picked{color:var(--gold);font-weight:var(--weight-bold)}.ccft-clip-editor__items{gap:var(--space-1);padding:0 var(--space-3) var(--space-3);font-size:var(--text-sm)}.ccft-clip-editor__faults,.ccft-clip-editor__items{flex-direction:column;margin:0;list-style:none;display:flex}.ccft-clip-editor__faults{gap:var(--space-3);padding:0}.ccft-clip-editor__fault{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:var(--radius-md);background:var(--surface-2);flex-direction:column;min-width:0;margin:0;display:flex}.ccft-clip-editor__fault--decoy{border-left-color:var(--line-strong)}.ccft-clip-editor__fault-legend{font-weight:var(--weight-bold);color:var(--ink);padding:0 var(--space-1)}.ccft-clip-editor__priority{font-weight:var(--weight-bold)}.ccft-clip-editor__empty{font-size:var(--text-sm);color:var(--muted)}.ccft-clip-editor__actions{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.ccft-clip-editor__problems{padding:var(--space-3) var(--space-4);background:var(--warn-wash);border:1px solid var(--warn-line);border-radius:var(--radius-md);color:var(--ink);font-size:var(--text-sm)}.ccft-clip-editor__problems:focus-visible{box-shadow:var(--focus-ring);outline:none}.ccft-clip-editor__problems ul{margin:var(--space-2) 0 0;padding-left:var(--space-5);list-style:outside}.ccft-clip-editor__problems-title{font-weight:var(--weight-bold)}.ccft-clip-editor__error{color:var(--danger);font-size:var(--text-sm)}@media (prefers-reduced-motion:reduce){.ccft-chrono__fill{transition:none}}.ccft-community{gap:var(--space-6);flex-direction:column;display:flex}.ccft-community__stack{gap:var(--space-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-community__block{gap:var(--space-2);flex-direction:column;display:flex}.ccft-community__label{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--muted);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.ccft-community__meta{font-size:var(--text-sm);color:var(--muted);font-variant-numeric:tabular-nums}.ccft-community__muted{color:var(--soft)}.ccft-community__note{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}.ccft-community__score{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--ink);font-variant-numeric:tabular-nums}.ccft-community__ok{color:var(--success);font-weight:var(--weight-bold)}.ccft-community__error{color:var(--danger);font-size:var(--text-sm)}.ccft-community__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-community__card,.ccft-community__form{gap:var(--space-3);flex-direction:column;display:flex}.ccft-community__inline{align-items:flex-end;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.ccft-community__inline>.field{flex:14rem;min-width:0}.ccft-community__choice{align-items:flex-start;gap:var(--space-2);color:var(--ink);cursor:pointer;display:flex}.ccft-community__choice input{accent-color:var(--gold);flex:none;margin-top:.2rem}.ccft-community__choice input:disabled+span{color:var(--muted)}.ccft-community__choices{gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.ccft-community__list,.ccft-community__rows{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-community__row{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.ccft-community__row-main{gap:var(--space-1);flex-direction:column;flex:16rem;min-width:0;display:flex}.ccft-community__row-title{font-weight:var(--weight-bold);color:var(--ink);overflow-wrap:anywhere}.ccft-community__chips{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.ccft-community__chip{padding:var(--space-1) var(--space-3);font-size:var(--text-sm);color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-pill);align-items:center;display:inline-flex}a.ccft-community__chip{text-decoration:none}a.ccft-community__chip:hover{border-color:var(--line-strong)}a.ccft-community__chip:focus-visible{box-shadow:var(--focus-ring);outline:none}.ccft-community__chip--active{border-color:var(--gold);background:var(--gold-wash-08)}.ccft-community__grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));margin:0;padding:0;list-style:none;display:grid}.ccft-community__suggestion{gap:var(--space-2);padding-left:var(--space-5);flex-direction:column;margin:0;display:flex}.ccft-community__suggestion li{gap:var(--space-1);flex-direction:column;display:flex}.ccft-community__table-wrap{max-width:100%;overflow-x:auto}.ccft-community__table{border-collapse:collapse;width:100%;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.ccft-community__table td,.ccft-community__table th{padding:var(--space-2) var(--space-3);text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.ccft-community__table thead th{color:var(--muted);font-weight:var(--weight-bold)}.ccft-community__table tbody th{color:var(--ink);font-weight:var(--weight-bold)}.ccft-community__table td .ccft-community__meta{margin-top:var(--space-1);display:block}.ccft-community__result{gap:var(--space-3);flex-direction:column;display:flex}.ccft-community__result h2:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-xs);outline:none}.ccft-community__video{max-width:48rem}.ccft-community__videos{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-community__link{align-items:center;gap:var(--space-2);color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--gold-rule);text-decoration-color:var(--gold-rule);text-underline-offset:3px;display:inline-flex}.ccft-community__link:hover{color:var(--gold-bright)}.ccft-community__link:focus-visible,.ccft-community__time:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-xs);outline:none}.ccft-community__time{font-variant-numeric:tabular-nums;font-weight:var(--weight-bold);color:var(--ink)}a.ccft-community__time{text-decoration:underline;-webkit-text-decoration-color:var(--gold-rule);text-decoration-color:var(--gold-rule);text-underline-offset:3px}.ccft-film-session{gap:var(--space-4);flex-direction:column;display:flex}.ccft-film-session__head{justify-content:space-between;align-items:flex-start;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.ccft-film-session__title-block{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.ccft-film-session__title{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--ink);overflow-wrap:anywhere}.ccft-film-session__notes{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}.ccft-community__share{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);flex-direction:column;margin:0;display:flex}.ccft-community__share-title{font-weight:var(--weight-bold);color:var(--ink);padding:0 var(--space-1)}.ccft-film-agenda{margin:0;padding:0;list-style:none}.ccft-film-agenda,.ccft-film-agenda__item{gap:var(--space-3);flex-direction:column;display:flex}.ccft-film-agenda__item{padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md)}.ccft-film-agenda__head{align-items:flex-start;gap:var(--space-3);display:flex}.ccft-film-agenda__step{border-radius:var(--radius-pill);width:1.75rem;height:1.75rem;font-size:var(--text-xs);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--ink);border:1px solid var(--line-strong);flex:none;justify-content:center;align-items:center;display:inline-flex}.ccft-film-agenda__body{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.ccft-film-agenda__title{font-weight:var(--weight-bold);color:var(--ink);overflow-wrap:anywhere}.ccft-film-agenda__actions{gap:var(--space-1);flex-wrap:wrap;flex:none;display:flex}.ccft-film-agenda__extra{gap:var(--space-2);flex-direction:column;display:flex}.ccft-film-agenda__markers{gap:var(--space-1);font-size:var(--text-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-film-agenda__marker-note{color:var(--soft)}.ccft-pod-card{height:100%;padding:var(--space-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md)}.ccft-peer,.ccft-pod-card{gap:var(--space-3);flex-direction:column;display:flex}.ccft-peer{padding:var(--space-3) var(--space-4);background:var(--surface-1);border:1px dashed var(--line-strong);border-radius:var(--radius-md)}.ccft-peer--coach{border-style:solid}.ccft-peer__head{align-items:center;gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.ccft-peer__title{font-weight:var(--weight-bold);color:var(--ink);overflow-wrap:anywhere}.ccft-peer__badge{padding:0 var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--info);border:1px solid var(--info-line);background:var(--info-wash);border-radius:var(--radius-pill);align-items:center;display:inline-flex}.ccft-peer details summary{cursor:pointer;color:var(--soft);font-size:var(--text-sm)}.ccft-peer details summary:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-xs);outline:none}@media (max-width:40rem){.ccft-film-agenda__head{flex-wrap:wrap}.ccft-film-agenda__actions{width:100%}}.ccft-band{gap:var(--space-3);flex-direction:column;display:flex}.ccft-band__empty{color:var(--soft)}.ccft-band__value{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-black);color:var(--ink)}.ccft-band__scale{border-radius:var(--radius-pill);background:var(--viz-track);max-width:32rem;height:10px;position:relative;overflow:hidden}.ccft-band__fill{border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--gold-wash-22),var(--gold));position:absolute;top:0;bottom:0}.ccft-band__facts,.ccft-band__sub{color:var(--soft);font-size:var(--text-sm)}.ccft-band__facts{gap:var(--space-2);padding-left:var(--space-5);max-width:var(--measure);flex-direction:column;list-style:outside;display:flex}.ccft-band__note{color:var(--muted)}.ccft-band__how{color:var(--soft);font-size:var(--text-sm);max-width:var(--measure)}.ccft-band__how summary{cursor:pointer;min-height:44px;color:var(--ink);font-weight:var(--weight-bold);align-items:center;display:flex}.ccft-band__how ol{gap:var(--space-2);padding-left:var(--space-5);flex-direction:column;list-style:decimal;display:flex}.ccft-band__model{margin-top:var(--space-3);font-size:var(--text-2xs);color:var(--muted)}.ccft-exam-rules{gap:var(--space-2);padding-left:var(--space-5);color:var(--soft);max-width:var(--measure);list-style:outside}.ccft-exam-rules,.ccft-exam-start{flex-direction:column;display:flex}.ccft-exam-start{align-items:flex-start;gap:var(--space-3);margin-top:var(--space-5)}.ccft-exam-history__score{font-family:var(--font-display);font-weight:var(--weight-bold);color:var(--ink);white-space:nowrap}.ccft-exam__disclaimer{font-size:var(--text-xs);color:var(--muted);max-width:var(--measure)}.ccft-exam{flex-direction:column}.ccft-exam,.ccft-exam__bar{gap:var(--space-4);display:flex}.ccft-exam__bar{z-index:var(--z-sticky);justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);flex-wrap:wrap;position:sticky;top:0}.ccft-exam__clock{align-items:baseline;gap:var(--space-2);display:flex}.ccft-exam__clock-label{font-size:var(--text-xs);color:var(--muted)}.ccft-exam__clock-value{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-black);font-variant-numeric:tabular-nums;color:var(--ink)}.ccft-exam__clock--low .ccft-exam__clock-value{color:var(--warn)}.ccft-exam__progress{font-size:var(--text-sm);color:var(--soft);font-variant-numeric:tabular-nums}.ccft-exam__save{font-size:var(--text-xs);color:var(--muted)}.ccft-exam__save--problem{color:var(--warn);font-weight:var(--weight-bold)}.ccft-exam__alert{padding:var(--space-3) var(--space-4);border:1px solid var(--warn-line);border-radius:var(--radius-md);background:var(--warn-wash);color:var(--warn);font-size:var(--text-sm)}.ccft-exam__question,.ccft-exam__review{gap:var(--space-4);flex-direction:column;display:flex}.ccft-exam__qhead{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ccft-exam__qnum{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--ink)}.ccft-exam__qnum:focus{outline:none}.ccft-exam__qnum:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.ccft-exam__note{color:var(--soft);font-size:var(--text-sm)}.ccft-exam__stem{max-width:var(--measure);color:var(--ink)}.ccft-exam__options{gap:var(--space-2);border:0;flex-direction:column;margin:0;padding:0;display:flex}.ccft-exam__option{align-items:flex-start;gap:var(--space-3);min-height:44px;padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);color:var(--soft);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out);display:flex}.ccft-exam__option:hover{border-color:var(--line-strong)}.ccft-exam__option:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:2px}.ccft-exam__option--chosen,.ccft-exam__option:has(input:checked){border-color:var(--gold);background:var(--gold-wash-08);color:var(--ink)}.ccft-exam__options:disabled .ccft-exam__option{cursor:not-allowed;opacity:.7}.ccft-exam__option input{accent-color:var(--gold);margin-top:.3em}.ccft-exam__letter{font-family:var(--font-display);font-weight:var(--weight-bold);color:var(--gold);flex:none}.ccft-exam__nav,.ccft-exam__tools{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ccft-exam__nav{padding-top:var(--space-3);border-top:1px solid var(--line-faint)}.ccft-exam__filters{gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-exam__grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(48px,1fr));display:grid}.ccft-exam__cell{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);width:100%;min-height:44px;color:var(--muted);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:2px;display:inline-flex}.ccft-exam__cell--answered{border-style:solid;border-color:var(--line);background:var(--surface-2);color:var(--ink)}.ccft-exam__cell--flagged{border-color:var(--warn-line);color:var(--warn)}.ccft-exam__cell:focus-visible,.ccft-exam__cell:hover{border-color:var(--gold)}.ccft-exam__closed{align-items:flex-start;gap:var(--space-4);flex-direction:column;display:flex}.ccft-exam__confirm{gap:var(--space-2);color:var(--soft);flex-direction:column;display:flex}.ccft-exam-report__summary{align-items:center;gap:var(--space-6);flex-wrap:wrap;display:flex}.ccft-exam-report__score{font-family:var(--font-display);font-size:var(--text-3xl,var(--text-2xl));font-weight:var(--weight-black);color:var(--gold);font-variant-numeric:tabular-nums}.ccft-exam-report__items{gap:var(--space-2);flex-direction:column;display:flex}.ccft-exam-report__item{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2)}.ccft-exam-report__item summary{align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-3) var(--space-4);cursor:pointer;flex-wrap:wrap;display:flex}.ccft-exam-report__item-title{font-weight:var(--weight-bold);color:var(--ink)}.ccft-exam-report__item-meta{font-size:var(--text-xs);color:var(--muted)}.ccft-exam-report__body{gap:var(--space-3);padding:0 var(--space-4) var(--space-4);flex-direction:column;display:flex}.ccft-exam-report__options{gap:var(--space-2);flex-direction:column;display:flex}.ccft-exam-report__option{align-items:flex-start;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--line-faint);border-radius:var(--radius-sm);color:var(--soft);flex-wrap:wrap;display:flex}.ccft-exam-report__option--right{border-color:var(--success-line);background:var(--success-wash);color:var(--ink)}.ccft-exam-report__option--wrong{border-color:var(--danger-line);background:var(--danger-wash);color:var(--ink)}.ccft-exam-report__marks{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--ink);margin-left:auto}.ccft-exam-report__explanation{border-left:2px solid var(--gold);padding-left:var(--space-3)}.ccft-exam-config{gap:var(--space-5);flex-direction:column;display:flex}.ccft-exam-config__group{gap:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));margin:0;display:grid}.ccft-exam-config__group legend{font-family:var(--font-display);font-weight:var(--weight-bold);color:var(--ink);padding:0 var(--space-2)}.ccft-exam-config__group .ccft-table-wrap{grid-column:1/-1}.ccft-exam-config__caption{text-align:left;font-size:var(--text-xs);color:var(--muted);padding-bottom:var(--space-2)}.ccft-exam-config__cell{width:6rem;min-height:44px}.ccft-exam-config__preview{gap:var(--space-3);flex-direction:column;display:flex}@media (max-width:640px){.ccft-exam__bar{position:static}.ccft-exam-report__marks{width:100%;margin-left:0}}@media (prefers-reduced-motion:reduce){.ccft-exam__option{transition:none}}.ccft-ia-disabled{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background:var(--info-wash);border:1px solid var(--info-line);border-radius:var(--radius-md);color:var(--ink);display:flex}.ccft-ia-disabled>svg{color:var(--info);flex:none;margin-top:2px}.ccft-ia-disabled__title{font-weight:var(--weight-bold)}.ccft-ia-disabled__desc{font-size:var(--text-sm);color:var(--soft);margin-top:var(--space-1)}.ccft-ia-subtitle{font-family:var(--font-display);font-size:var(--text-md);font-weight:var(--weight-bold);color:var(--ink)}.ccft-ia-text{color:var(--soft);line-height:var(--leading-relaxed);white-space:pre-line;max-width:var(--measure)}.ccft-ia-cards{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (min-width:720px){.ccft-ia-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.ccft-ia-card{align-items:flex-start;gap:var(--space-3);flex-direction:column;height:100%;display:flex}.ccft-ia-card>svg{color:var(--gold)}.ccft-ia-card__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--ink)}.ccft-ia-card>:last-child{margin-top:auto}.ccft-ia-chat{gap:var(--space-3);padding:var(--space-4);background:var(--surface-sunken);border:1px solid var(--line-faint);border-radius:var(--radius-lg);max-height:60vh;overflow-y:auto}.ccft-ia-bubble,.ccft-ia-chat{flex-direction:column;display:flex}.ccft-ia-bubble{gap:var(--space-1);max-width:min(100%,38rem);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--line)}.ccft-ia-bubble--member{background:var(--surface-2);align-self:flex-start}.ccft-ia-bubble--coach{background:var(--gold-wash-08);border-color:var(--gold-wash-22);align-self:flex-end}.ccft-ia-bubble__who{font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.ccft-ia-bubble__body{color:var(--ink);white-space:pre-line;overflow-wrap:anywhere}.ccft-ia-voice{padding:var(--space-3) var(--space-4);border:1px solid var(--line-faint);border-radius:var(--radius-md);gap:var(--space-2);flex-direction:column;display:flex}.ccft-ia-voice>summary{cursor:pointer;font-weight:var(--weight-bold);color:var(--soft)}.ccft-ia-voice[open]>summary{margin-bottom:var(--space-2)}.ccft-ia-criteria,.ccft-ia-debrief{gap:var(--space-3);flex-direction:column;display:flex}.ccft-ia-criteria{margin:0;padding:0;list-style:none}.ccft-ia-criterion{gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);flex-direction:column;display:flex}.ccft-ia-criterion__name{font-weight:var(--weight-bold);color:var(--ink)}.ccft-ia-safety{padding:var(--space-3) var(--space-4);background:var(--warn-wash);border:1px solid var(--warn-line);border-radius:var(--radius-md);color:var(--ink)}.ccft-ia-recorder{gap:var(--space-3);flex-direction:column;display:flex}.ccft-ia-recorder__live{align-items:center;gap:var(--space-2);font-variant-numeric:tabular-nums;color:var(--ink);display:inline-flex}.ccft-ia-recorder__live:before{content:"";border-radius:var(--radius-pill);background:var(--danger);width:10px;height:10px}@media (prefers-reduced-motion:no-preference){.ccft-ia-recorder__live:before{animation:ccft-ia-pulse 1.4s ease-in-out infinite}}@keyframes ccft-ia-pulse{50%{opacity:.35}}.ccft-ia-report{gap:var(--space-4);flex-direction:column;display:flex}.ccft-ia-metrics{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (min-width:720px){.ccft-ia-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}.ccft-ia-metric{gap:var(--space-1);padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md);flex-direction:column;min-width:0;display:flex}.ccft-ia-metric__label{font-size:var(--text-xs);color:var(--muted)}.ccft-ia-metric__value{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.ccft-ia-metric__sub{font-size:var(--text-xs);color:var(--soft)}.ccft-ia-examples{gap:var(--space-2);flex-direction:column;display:flex}.ccft-ia-trend{overflow-x:auto}.ccft-ia-trend table{border-collapse:collapse;width:100%;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.ccft-ia-trend td,.ccft-ia-trend th{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:1px solid var(--line-faint);white-space:nowrap}.ccft-ia-trend th{color:var(--muted);font-weight:var(--weight-bold)}.ccft-ia-transcript{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-ia-transcript>li{gap:var(--space-1);flex-direction:column;display:flex}.ccft-ia-prereview{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px dashed var(--gold-wash-40);border-radius:var(--radius-md);margin-bottom:var(--space-4);flex-direction:column;display:flex}.ccft-ia-prereview__note{font-size:var(--text-sm);color:var(--ink);background:var(--gold-wash-08);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm)}.ccft-tutor-launch{gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-tutor{gap:var(--space-3);padding:var(--space-4);border:1px dashed var(--gold-wash-40);border-radius:var(--radius-lg);background:var(--surface-1,transparent);flex-direction:column;display:flex}.ccft-tutor__head{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.ccft-tutor__head>h4{align-items:center;gap:var(--space-2);margin-right:auto;display:inline-flex}.ccft-tutor__head>h4:focus{outline:none}.ccft-tutor__head>h4:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.ccft-tutor__chat{margin:0;list-style:none}.ccft-tutor__chat .state-badge{vertical-align:middle;text-transform:none;letter-spacing:0}.ccft-tutor__source{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--soft);text-underline-offset:2px;overflow-wrap:anywhere;text-decoration:underline;display:inline-flex}.ccft-tutor__source:hover{color:var(--ink)}.ccft-tutor__source>svg{flex:none}.ccft-tutor-history{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-tutor-history .ccft-ia-voice>summary{font-weight:var(--weight-regular,400);color:var(--ink)}.ccft-lesson h2[id^=enonce-]{scroll-margin-top:calc(var(--space-6,1.5rem) * 3)}.ccft-coach-practice__summary{margin:0 0 var(--space-3);color:var(--ink)}.ccft-coach-practice__answers{gap:var(--space-3);padding-left:var(--space-5);flex-direction:column;margin:0;display:flex}.ccft-coach-practice__answer{gap:var(--space-1);flex-direction:column;display:flex}.ccft-coach-practice__answer>p{color:var(--soft);margin:0}.ccft-coach-practice__answer>span{font-weight:var(--weight-bold)}.ccft-lesson--study{--ico-retenir:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M19 21l-7-4-7 4V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z'/></svg>");--ico-exemple:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 18h6M10 22h4M12 2a7 7 0 0 0-4 12.7V17h8v-2.3A7 7 0 0 0 12 2z'/></svg>");--ico-attention:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M10.3 3.9 1.8 18a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0zM12 9v4M12 17h.01'/></svg>");--ico-exercice:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2'/><rect x='9' y='3' width='6' height='4' rx='1'/><path d='m9 14 2 2 4-4'/></svg>");--ico-definition:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M2 4h6a4 4 0 0 1 4 4v13a3 3 0 0 0-3-3H2zM22 4h-6a4 4 0 0 0-4 4v13a3 3 0 0 1 3-3h7z'/></svg>");--ico-piege:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M18 6 6 18M6 6l12 12'/></svg>");--ico-essentiel:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><circle cx='12' cy='12' r='5'/><circle cx='12' cy='12' r='1'/></svg>");--ico-refs:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20V2H6.5A2.5 2.5 0 0 0 4 4.5z'/><path d='M4 19.5A2.5 2.5 0 0 0 6.5 22H20v-5'/></svg>")}.ccft-lesson-layout{gap:var(--space-5);align-items:start;display:grid}.ccft-lesson-layout__body{min-width:0}@media (min-width:75rem){.ccft-lesson-layout{gap:var(--space-8);grid-template-columns:minmax(0,1fr) 16rem}.ccft-lesson-layout>.ccft-toc{top:calc(var(--header-h) + var(--space-6));max-height:calc(100vh - var(--header-h) - var(--space-12));grid-area:1/2;position:sticky;overflow-y:auto}.ccft-lesson-layout__body{grid-area:1/1}}.ccft-toc{padding:var(--space-4) var(--space-5);background:var(--surface-1-grad);border:1px solid var(--line);border-radius:var(--radius-lg)}.ccft-toc__title{font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--space-3)}.ccft-toc__list{flex-direction:column;gap:2px;display:flex}.ccft-toc__link{align-items:center;gap:var(--space-3);min-height:40px;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:var(--soft);font-size:var(--text-sm);line-height:var(--leading-snug);text-decoration:none;display:flex}.ccft-toc__link:hover{background:var(--surface-3);color:var(--ink)}.ccft-toc__link[aria-current=true]{background:var(--gold-wash-08);color:var(--ink)}.ccft-toc__mark{border-radius:var(--radius-pill);border:1px solid var(--line-strong);width:1.5rem;height:1.5rem;font-family:var(--font-display);font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--soft);flex:none;place-items:center;display:grid}.ccft-toc__link[aria-current=true] .ccft-toc__mark{border-color:var(--gold);color:var(--gold)}.ccft-toc__link--essentiel .ccft-toc__mark,.ccft-toc__link--pieges .ccft-toc__mark,.ccft-toc__link--refs .ccft-toc__mark,.ccft-toc__link--terrain .ccft-toc__mark{-webkit-mask:var(--ico) center /1rem no-repeat;mask:var(--ico) center /1rem no-repeat;background:currentColor;border:0}.ccft-toc__link--essentiel{--ico:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><circle cx='12' cy='12' r='5'/><circle cx='12' cy='12' r='1'/></svg>")}.ccft-toc__link--terrain{--ico:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2'/><rect x='9' y='3' width='6' height='4' rx='1'/><path d='m9 14 2 2 4-4'/></svg>")}.ccft-toc__link--pieges{--ico:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><path d='M18 6 6 18M6 6l12 12'/></svg>")}.ccft-toc__link--refs{--ico:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20V2H6.5A2.5 2.5 0 0 0 4 4.5z'/><path d='M4 19.5A2.5 2.5 0 0 0 6.5 22H20v-5'/></svg>")}@media (max-width:74.99rem){.ccft-toc__list{column-gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));display:grid}}.ccft-lesson--study{counter-reset:ccft-part;gap:var(--space-5);flex-direction:column;max-width:none;font-size:1.0625rem;line-height:1.7;display:flex}.ccft-lesson--study>*+*{margin-top:0}.ccft-lesson__section{scroll-margin-top:calc(var(--header-h) + var(--space-4));background:var(--surface-1-grad);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--elev-1);padding:clamp(1rem,.6rem + 1.8vw,2.25rem)}.ccft-lesson__section>*{max-width:var(--measure)}.ccft-lesson__section>.ccft-callout,.ccft-lesson__section>.ccft-table{max-width:46rem}.ccft-lesson__section>*+*{margin-top:var(--space-4)}.ccft-lesson--study .ccft-lesson__section>h2{align-items:center;gap:var(--space-3);margin:0 0 var(--space-5);font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-black);line-height:var(--leading-tight);letter-spacing:-.01em;color:var(--ink);display:flex}.ccft-lesson__section--partie{counter-increment:ccft-part}.ccft-lesson__section>h2:before{content:"";border-radius:var(--radius-pill);width:2.25rem;height:2.25rem;font-size:var(--text-md);font-weight:var(--weight-black);flex:none;align-self:flex-start;place-items:center;margin-top:.05em;display:grid}.ccft-lesson__section--partie>h2:before{content:counter(ccft-part);color:var(--gold-on);background:var(--gold)}.ccft-lesson__section--essentiel>h2:before,.ccft-lesson__section--pieges>h2:before,.ccft-lesson__section--refs>h2:before,.ccft-lesson__section--terrain>h2:before{-webkit-mask:var(--ico) center /1.6rem no-repeat;mask:var(--ico) center /1.6rem no-repeat;background:currentColor}.ccft-lesson__section--essentiel>h2{color:var(--gold)}.ccft-lesson__section--essentiel>h2:before{--ico:var(--ico-essentiel)}.ccft-lesson__section--terrain>h2:before{--ico:var(--ico-exercice);color:var(--success)}.ccft-lesson__section--pieges>h2:before{--ico:var(--ico-piege);color:var(--danger)}.ccft-lesson__section--refs>h2:before{--ico:var(--ico-refs);color:var(--muted)}.ccft-lesson__section--essentiel{background:var(--surface-hero-grad);border-color:var(--gold-wash-22);box-shadow:var(--glow-gold-soft);position:relative}.ccft-lesson__section--essentiel:before{content:"";background:var(--gold-rule);border-radius:var(--radius-pill);height:2px;position:absolute;inset:-1px 1.5rem auto}.ccft-lesson--study h3{margin-top:var(--space-10);padding-left:var(--space-4);border-left:3px solid var(--gold);font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-bold);line-height:var(--leading-snug);color:var(--ink)}.ccft-lesson--study h2+h3{margin-top:var(--space-2)}.ccft-lesson--study h3+*{margin-top:var(--space-3)}.ccft-lesson--study p{color:var(--soft)}.ccft-lesson--study strong{color:var(--ink);font-weight:var(--weight-semibold)}.ccft-lesson--study ul:not([class]){gap:var(--space-2);flex-direction:column;padding-left:0;list-style:none;display:flex}.ccft-lesson--study ul:not([class])>li{padding-left:var(--space-6);color:var(--soft);position:relative}.ccft-lesson--study ul:not([class])>li:before{content:"";left:var(--space-2);border-radius:var(--radius-pill);background:var(--gold);width:6px;height:6px;position:absolute;top:.7em}.ccft-lesson--study ol:not([class]){counter-reset:ccft-li;gap:var(--space-2);flex-direction:column;padding-left:0;list-style:none;display:flex}.ccft-lesson--study ol:not([class])>li{padding-left:var(--space-8);counter-increment:ccft-li;color:var(--soft);position:relative}.ccft-lesson--study ol:not([class])>li:before{content:counter(ccft-li);border-radius:var(--radius-pill);border:1px solid var(--gold-wash-40);width:1.5rem;height:1.5rem;font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--gold);place-items:center;line-height:1;display:grid;position:absolute;top:.2em;left:0}.ccft-lesson--study ul.ccft-terms{gap:var(--space-2);padding:0;list-style:none;display:grid}@media (min-width:48rem){.ccft-callout>ul.ccft-terms:has(>li:last-child:nth-child(2n)),.ccft-lesson__section>ul.ccft-terms:has(>li:last-child:nth-child(2n)){grid-template-columns:repeat(2,minmax(0,1fr));max-width:46rem}}.ccft-lesson--study ul.ccft-terms>li{padding:var(--space-3) clamp(.75rem,.6rem + .6vw,1rem);background:var(--surface-2);border:1px solid var(--line);border-left:3px solid var(--gold-wash-40);border-radius:var(--radius-md);color:var(--soft);font-size:var(--text-base);line-height:var(--leading-normal)}.ccft-lesson--study .ccft-item__title{margin-bottom:var(--space-1);font-family:var(--font-display);font-weight:var(--weight-bold);color:var(--ink);display:block}.ccft-lesson--study ol.ccft-steps{counter-reset:ccft-step;padding:0;list-style:none}.ccft-lesson--study ol.ccft-steps>li{counter-increment:ccft-step;padding:0 0 var(--space-5) var(--space-12);color:var(--soft);position:relative}.ccft-lesson--study ol.ccft-steps>li:last-child{padding-bottom:0}.ccft-lesson--study ol.ccft-steps>li:before{content:counter(ccft-step);border-radius:var(--radius-pill);background:var(--gold-wash-14);border:1px solid var(--gold);width:2rem;height:2rem;font-family:var(--font-display);font-weight:var(--weight-black);color:var(--gold);place-items:center;line-height:1;display:grid;position:absolute;top:0;left:0}.ccft-lesson--study ol.ccft-steps>li:not(:last-child):after{content:"";top:2.25rem;left:calc(1rem - 1px);bottom:var(--space-1);background:var(--gold-wash-22);width:2px;position:absolute}.ccft-callout{--c:var(--gold);--c-wash:var(--gold-wash-08);--c-line:var(--gold-wash-22);padding:var(--space-4) clamp(.875rem,.6rem + 1vw,1.25rem);background:var(--c-wash);border:1px solid var(--c-line);border-radius:var(--radius-md);font-size:var(--text-base);line-height:var(--leading-normal)}.ccft-callout>*+*{margin-top:var(--space-3)}.ccft-callout__title{align-items:center;gap:var(--space-2);font-family:var(--font-display);font-weight:var(--weight-bold);display:flex;color:var(--c)!important}.ccft-callout__title:before{content:"";width:1.25rem;height:1.25rem;-webkit-mask:var(--ico) center /contain no-repeat;mask:var(--ico) center /contain no-repeat;background:currentColor;flex:none}.ccft-callout--retenir{--ico:var(--ico-retenir)}.ccft-callout--exemple{--ico:var(--ico-exemple);--c:var(--info);--c-wash:var(--info-wash);--c-line:var(--info-line)}.ccft-callout--attention{--ico:var(--ico-attention);--c:var(--warn);--c-wash:var(--warn-wash);--c-line:var(--warn-line)}.ccft-callout--exercice{--ico:var(--ico-exercice);--c:var(--success);--c-wash:var(--success-wash);--c-line:var(--success-line)}.ccft-callout--definition{--ico:var(--ico-definition);--c:var(--ink);--c-wash:var(--surface-2);--c-line:var(--line-strong)}.ccft-callout--attention,.ccft-callout--exemple,.ccft-callout--exercice{--c-wash:var(--c)}@supports (color:color-mix(in lab,red,red)){.ccft-callout--attention,.ccft-callout--exemple,.ccft-callout--exercice{--c-wash:color-mix(in oklch,var(--c) 9%,transparent)}}.ccft-lesson--study .ccft-callout li,.ccft-lesson--study .ccft-callout p{color:var(--ink)}.ccft-lesson--study .ccft-callout ol:not([class])>li:before{border-color:var(--c-line);color:var(--c)}.ccft-lesson--study .ccft-callout ul:not([class])>li:before{background:var(--c)}.ccft-table{border:1px solid var(--line);border-radius:var(--radius-md);overflow-x:auto}.ccft-callout .ccft-table{background:var(--surface-1)}.ccft-lesson--study .ccft-table table{border-collapse:collapse;width:100%;font-size:var(--text-base);line-height:var(--leading-normal);display:table}.ccft-lesson--study .ccft-table td,.ccft-lesson--study .ccft-table th{border:0;border-bottom:1px solid var(--line-faint);padding:var(--space-3) var(--space-4);text-align:left;vertical-align:top}.ccft-lesson--study .ccft-table th{background:var(--surface-2);color:var(--muted);font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase}.ccft-lesson--study .ccft-table td{color:var(--soft)}.ccft-lesson--study .ccft-table td:first-child{color:var(--ink);font-weight:var(--weight-semibold)}.ccft-lesson--study .ccft-table tr:last-child td{border-bottom:0}@media screen and (max-width:40rem){.ccft-lesson--study .ccft-table{border:0;overflow:visible}.ccft-lesson--study .ccft-table thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.ccft-lesson--study .ccft-table table,.ccft-lesson--study .ccft-table tbody,.ccft-lesson--study .ccft-table td,.ccft-lesson--study .ccft-table tr{display:block}.ccft-lesson--study .ccft-table tbody{gap:var(--space-2);flex-direction:column;display:flex}.ccft-lesson--study .ccft-table tr{padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-md)}.ccft-lesson--study .ccft-table td{border:0;padding:0}.ccft-lesson--study .ccft-table td+td{margin-top:var(--space-1)}.ccft-lesson--study .ccft-table td[data-label]:not(:first-child):before{content:attr(data-label);font-size:var(--text-2xs);font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:block}.ccft-lesson--study .ccft-table td:first-child{font-family:var(--font-display)}}.ccft-lesson__section--terrain{border-color:var(--success-line)}.ccft-lesson__section--pieges ul.ccft-terms>li{padding-left:calc(var(--space-4) + 1.75rem);border-left-color:var(--danger-line);position:relative}.ccft-lesson__section--pieges ul.ccft-terms>li:before{content:"";left:var(--space-4);top:calc(var(--space-3) + .2em);background:var(--danger);width:1.1rem;height:1.1rem;-webkit-mask:var(--ico-piege) center /contain no-repeat;mask:var(--ico-piege) center /contain no-repeat;position:absolute}.ccft-lesson__section--refs ul.ccft-terms{grid-template-columns:1fr!important}.ccft-lesson__section--refs ul.ccft-terms>li{border:0;border-bottom:1px solid var(--line-faint);padding:var(--space-3) 0;font-size:var(--text-sm);background:0 0;border-radius:0}.ccft-lesson__section--refs ul.ccft-terms>li:last-child{border-bottom:0}.ccft-lesson__section--refs .ccft-item__title{font-family:var(--font-text);font-size:var(--text-base)}.ccft-print-foot,.ccft-print-head,.ccft-print-only{display:none}@media print{.ccft-toc{display:none}.ccft-lesson__section{box-shadow:none;break-inside:auto}.ccft-print-hide{display:none!important}.ccft-lesson-layout,.ccft-print-only{display:block}.ccft-print-head{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding-bottom:var(--space-2);border-bottom:1.5px solid var(--gold);font-size:var(--text-xs);color:var(--muted);display:flex}.ccft-print-head__brand{font-family:var(--font-display);font-weight:var(--weight-black);color:var(--ink)}.ccft-print-foot{padding-top:var(--space-2);border-top:1px solid var(--line);font-size:var(--text-xs);color:var(--muted);display:block}.ccft-callout,.ccft-covered,.ccft-table{break-inside:avoid}.ccft-lesson h2,.ccft-lesson h3{break-after:avoid}}.ccft-parts{margin-bottom:var(--space-4)}.ccft-parts__link[aria-current=page]{background:var(--gold-wash-08);color:var(--ink)}.ccft-parts__link[aria-current=page] .ccft-toc__mark,.ccft-parts__link[data-read=true] .ccft-toc__mark{border-color:var(--gold);color:var(--gold)}.ccft-parts__title{flex-direction:column;gap:2px;display:flex}.ccft-parts__meta{font-size:var(--text-xs);color:var(--muted)}.ccft-parts__current{margin:0 0 var(--space-4);color:var(--soft);font-size:var(--text-sm)}.salle-shell{flex-direction:column;min-height:100dvh;display:flex}.salle-shell__header{z-index:var(--z-sticky);align-items:center;gap:var(--space-4);min-height:var(--header-h-mobile);padding:var(--space-2) var(--space-gutter);background:var(--surface-sunken);flex-wrap:wrap;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.salle-shell__header{background:color-mix(in oklch,var(--surface-sunken) 90%,transparent)}}.salle-shell__header{-webkit-backdrop-filter:blur(18px)saturate(1.2);backdrop-filter:blur(18px)saturate(1.2);border-bottom:1px solid var(--line)}.salle-shell__brand{align-items:center;gap:var(--space-3);margin-right:auto;display:flex}.salle-shell__brand .monogram{--mono-disc:var(--gold);--mono-ink:var(--gold-on)}.salle-shell__brand-text{flex-direction:column;line-height:1.2;display:flex}.salle-shell__brand-name{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-base);color:var(--ink);letter-spacing:var(--tracking-tight)}.salle-shell__brand-sub{font-size:var(--text-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--muted)}.salle-shell__nav{align-items:center;gap:var(--space-1);display:flex}.salle-shell__link{align-items:center;gap:var(--space-2);min-height:40px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--soft);transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);display:inline-flex}.salle-shell__link--active,.salle-shell__link:hover{color:var(--ink);background:var(--gold-wash-08)}.salle-shell__link--active{box-shadow:inset 0 -2px 0 var(--gold)}.salle-shell__logout{align-items:center;gap:var(--space-2);min-height:40px;padding:var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--muted);display:inline-flex}.salle-shell__logout:hover{color:var(--danger)}.salle-shell__main{padding:var(--space-section) var(--space-gutter) var(--space-12);flex:1}.salle-page{gap:var(--space-6)}.salle-page,.salle-section{flex-direction:column;display:flex}.salle-section{gap:var(--space-stack)}.salle-section__title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-black);letter-spacing:var(--tracking-tight);color:var(--ink)}.salle-section__hint{color:var(--muted);font-size:var(--text-sm);max-width:var(--measure)}.salle-banner{padding:var(--space-3) var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--gold-wash-08);color:var(--soft);font-size:var(--text-sm)}.salle-banner a{color:var(--gold-bright)}.salle-back{align-items:center;gap:var(--space-2);color:var(--soft);font-size:var(--text-sm);width:fit-content;display:inline-flex}.salle-back:hover{color:var(--gold-bright)}.salle-facts{align-items:center;gap:var(--space-3) var(--space-5);color:var(--soft);font-size:var(--text-sm)}.salle-facts,.salle-picker{flex-wrap:wrap;display:flex}.salle-picker{gap:var(--space-2)}.salle-picker__item{padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--soft);font-size:var(--text-sm)}.salle-picker__item:hover{border-color:var(--line-strong);color:var(--ink)}.salle-picker__item--active{border-color:var(--gold);color:var(--ink)}.salle-closed p,.salle-privacy p{color:var(--soft);max-width:var(--measure);line-height:var(--leading-relaxed)}.salle-privacy{gap:var(--space-3);flex-direction:column;display:flex}.salle-privacy__title{font-weight:var(--weight-bold);color:var(--ink)}.salle-coaches{gap:var(--space-3)}.salle-coach,.salle-coaches{flex-direction:column;display:flex}.salle-coach{gap:var(--space-4)}.salle-coach__name{font-weight:var(--weight-bold);font-size:var(--text-md);color:var(--ink);width:fit-content}.salle-coach__name:hover{color:var(--gold-bright)}.salle-stats{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.salle-stats__item{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.salle-stats__item dt{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--muted)}.salle-stats__item dd{color:var(--ink);font-size:var(--text-sm);overflow-wrap:anywhere}.salle-tiles{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.salle-tile{gap:var(--space-2);flex-direction:column;display:flex}.salle-tile__title{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--muted)}.salle-tile__value{font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink)}.salle-tile__hint{font-size:var(--text-xs);color:var(--muted)}.salle-mastery{gap:var(--space-3);flex-direction:column;display:flex}.salle-mastery__row{align-items:center;gap:var(--space-1) var(--space-3);grid-template-columns:minmax(0,1fr) minmax(80px,160px) 4.5ch;grid-template-areas:"label bar pct""count count count";display:grid}.salle-mastery__label{color:var(--soft);font-size:var(--text-sm);grid-area:label}.salle-mastery__bar{border-radius:var(--radius-xs);background:var(--viz-track);grid-area:bar;height:6px;overflow:hidden}.salle-mastery__fill{background:var(--gold);height:100%;display:block}.salle-mastery__pct{text-align:right;color:var(--ink);font-size:var(--text-sm);grid-area:pct}.salle-mastery__count{color:var(--muted);font-size:var(--text-xs);grid-area:count}.salle-mastery__overall{margin-top:var(--space-4);color:var(--ink);font-weight:var(--weight-bold)}.salle-consent{gap:var(--space-3);flex-direction:column;display:flex}.salle-consent p{color:var(--soft);max-width:var(--measure);line-height:var(--leading-relaxed)}.salle-consent .salle-consent__gym{color:var(--ink);font-weight:var(--weight-bold)}.salle-consent__row{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.salle-consent__status{font-size:var(--text-sm);color:var(--muted)}.salle-consent__status[data-sharing=true]{color:var(--success)}.salle-admin-list{gap:var(--space-3);flex-direction:column;display:flex}.salle-admin-row{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.salle-admin-row__main{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.salle-admin-row__title{font-weight:var(--weight-bold);color:var(--ink);overflow-wrap:anywhere}a.salle-admin-row__title:hover{color:var(--gold-bright)}.salle-admin-row__meta{font-size:var(--text-xs);color:var(--muted);overflow-wrap:anywhere}.salle-admin-row__stats{align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--soft);flex-wrap:wrap;display:flex}.salle-end{gap:var(--space-2);display:inline-flex}.salle-form{gap:var(--space-4);flex-direction:column;display:flex}.salle-form__row{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.salle-form__fieldset{gap:var(--space-4);border:1px solid var(--line-faint);border-radius:var(--radius-md);padding:var(--space-4);flex-direction:column;display:flex}.salle-form__hint{color:var(--muted);font-size:var(--text-sm)}.salle-account__links{gap:var(--space-4);flex-wrap:wrap;display:flex}.salle-account__links a{color:var(--gold-bright)}.salle-account__logout{width:fit-content}.ccft-pp-summary{gap:var(--space-2);flex-direction:column;display:flex}.ccft-pp-subtitle{margin-top:var(--space-3);font-size:var(--text-md)}.ccft-pp-status,.ccft-pp-subtitle{font-weight:var(--weight-bold);color:var(--ink)}.ccft-pp-bar{border-radius:var(--radius-xs);background:var(--viz-track);height:8px;overflow:hidden}.ccft-pp-bar__fill{background:var(--gold);height:100%}.ccft-pp-alert{font-size:var(--text-sm);color:var(--soft);padding-left:var(--space-3);border-left:2px solid var(--line-strong)}.ccft-pp-alert[data-tone=ok]{border-left-color:var(--success)}.ccft-pp-alert[data-tone=warn]{border-left-color:var(--warn);color:var(--ink)}.ccft-pp-alert[data-tone=danger]{border-left-color:var(--danger);color:var(--ink)}.ccft-pp-form{gap:var(--space-4);flex-direction:column;display:flex}.ccft-pp-form__grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));display:grid}.ccft-pp-actions,.ccft-pp-section-head{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ccft-pp-section-head{justify-content:space-between}.ccft-pp-choices,.ccft-pp-report{gap:var(--space-2);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.ccft-pp-choice{gap:var(--space-3);color:var(--soft);align-items:center;display:flex}.ccft-pp-choice:has(input:checked){color:var(--ink)}.ccft-pp-cards{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));display:grid}.ccft-pp-list{gap:var(--space-2);flex-direction:column;display:flex}.ccft-pp-row{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);display:flex}.ccft-pp-row__main{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.ccft-pp-row__title{font-weight:var(--weight-bold);color:var(--ink);overflow-wrap:anywhere}.ccft-pp-row__meta{gap:var(--space-1) var(--space-3);font-size:var(--text-xs);color:var(--muted);overflow-wrap:anywhere;flex-wrap:wrap;display:flex}.ccft-pp-row__note{font-size:var(--text-sm);color:var(--soft);white-space:pre-wrap;overflow-wrap:anywhere}.ccft-pp-tag{font-size:var(--text-2xs);font-weight:var(--weight-bold);color:var(--warn)}.ccft-pp-tag[data-tone=gold]{color:var(--gold)}.ccft-pp-dl{gap:var(--space-1);display:grid}.ccft-pp-dl__row{justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm);display:flex}.ccft-pp-dl__row dt{color:var(--soft)}.ccft-pp-dl__row dd{color:var(--ink);font-weight:var(--weight-bold);text-align:right}.ccft-pp-bullets{gap:var(--space-1);padding-left:var(--space-5);color:var(--soft);list-style:outside}.ccft-pp-bullets,.ccft-pp-exam{flex-direction:column;display:flex}.ccft-pp-exam{gap:var(--space-2)}.ccft-pp-retest{gap:var(--space-6)}.ccft-pp-retest,.ccft-pp-weeks{flex-direction:column;display:flex}.ccft-pp-weeks{gap:var(--space-3)}.ccft-pp-week{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);flex-direction:column;display:flex}.ccft-pp-week[data-current=true]{border-color:var(--gold);background:var(--gold-wash-08)}.ccft-pp-week__head{align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.ccft-pp-week__focus{color:var(--ink)}.ccft-pp-week__objectives{gap:var(--space-1);padding-left:var(--space-5);color:var(--soft);font-size:var(--text-sm);flex-direction:column;list-style:outside;display:flex}.ccft-pp-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.ccft-pp-table td,.ccft-pp-table th{padding:var(--space-2);border-bottom:1px solid var(--line-faint);text-align:left}.ccft-pp-table thead th{color:var(--muted);font-weight:var(--weight-bold)}.ccft-pp-table tbody th{color:var(--ink);font-weight:var(--weight-bold)}.ccft-pp-table td{color:var(--soft)}@media (max-width:640px){.ccft-pp-table{display:block;overflow-x:auto}}.ccft-pp-ba{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ccft-pp-ba__side{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}@media (max-width:760px){.ccft-pp-ba{grid-template-columns:minmax(0,1fr)}}.ccft-posture{gap:var(--space-5);flex-direction:column;display:flex}.ccft-posture__stage{aspect-ratio:16/9;background:var(--surface-sunken);border:1px solid var(--line);border-radius:var(--radius-md);width:100%;max-width:720px;position:relative;overflow:hidden}.ccft-posture__canvas,.ccft-posture__video{width:100%;height:100%;position:absolute;inset:0}.ccft-posture__video{object-fit:contain;background:0 0}.ccft-posture__canvas{pointer-events:none}.ccft-posture__canvas[data-visible=false]{visibility:hidden}@media (max-width:640px){.ccft-posture__stage{aspect-ratio:3/4}}.ccft-posture tr[data-related=true] td,.ccft-posture tr[data-related=true] th{color:var(--ink);background:var(--gold-wash-08)}.ccft-posture th .ccft-pp-row__meta{font-weight:400;display:block}.ccft-progress-kpis{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}@media (max-width:720px){.ccft-progress-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.ccft-progress-kpi{justify-content:flex-end;gap:var(--space-1);padding:var(--space-4) var(--space-5);background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-md);flex-direction:column-reverse;display:flex}.ccft-progress-kpi[data-highlight=true]{border-color:var(--gold-wash-40)}.ccft-progress-kpi dt{font-size:var(--text-sm);color:var(--soft)}.ccft-progress-kpi dd{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--ink);margin:0}.ccft-progress-kpi dd a,.ccft-progress-kpi[data-highlight=true] dd{color:var(--gold)}.ccft-progress-kpi dd a{text-underline-offset:4px;text-decoration:underline}.ccft-progress-kpi dd a:hover{color:var(--gold-bright)}.ccft-progress-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ccft-progress-card{align-items:center;gap:var(--space-5) var(--space-6);padding:var(--space-5);background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius-lg);color:var(--ink);transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out);flex-wrap:wrap;text-decoration:none;display:flex}.ccft-progress-card:hover{border-color:var(--gold-wash-40);background:var(--surface-2)}.ccft-progress-card:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.ccft-progress-card__who{align-items:center;gap:var(--space-3);flex:15rem;min-width:0;display:flex}.ccft-progress-card__avatar{background:var(--gold-wash-08);border:1px solid var(--gold-wash-40);width:2.875rem;height:2.875rem;color:var(--gold-bright);font-weight:var(--weight-semibold);border-radius:50%;flex:none;place-items:center;display:grid}.ccft-progress-card__id{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.ccft-progress-card__name{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);overflow-wrap:anywhere}.ccft-progress-card__meta{font-size:var(--text-sm);color:var(--soft)}.ccft-progress-status{font-size:var(--text-xs);font-weight:var(--weight-semibold);padding:2px var(--space-3);border-radius:var(--radius-pill);align-self:flex-start}.ccft-progress-status[data-tone=info]{background:var(--info-wash);color:var(--info)}.ccft-progress-status[data-tone=gold]{background:var(--gold-wash-08);color:var(--gold-bright)}.ccft-progress-status[data-tone=success]{background:var(--success-wash);color:var(--success)}.ccft-progress-status[data-tone=muted]{background:var(--surface-3);color:var(--soft)}.ccft-progress-card__bars{gap:var(--space-4);flex:999 32rem;grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;display:grid}@media (max-width:640px){.ccft-progress-card__bars{grid-template-columns:repeat(2,minmax(0,1fr))}}.ccft-progress-bar{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.ccft-progress-bar__label{font-size:var(--text-xs);color:var(--soft)}.ccft-progress-bar__value{font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.ccft-progress-bar__track{border-radius:var(--radius-pill);background:var(--surface-3);height:6px;display:block;overflow:hidden}.ccft-progress-bar__fill{border-radius:var(--radius-pill);background:var(--gold);height:100%;display:block}.ccft-progress-bar__fill[data-tone=lessons]{background:var(--info)}.ccft-progress-bar__fill[data-tone=practice]{background:var(--success)}.ccft-progress-bar__sub{font-size:var(--text-xs);color:var(--muted)}.ccft-progress-card__todo{align-items:flex-start;gap:var(--space-2);flex-direction:column;flex:11rem;display:flex}.ccft-progress-todo{font-size:var(--text-xs);font-weight:var(--weight-semibold);padding:3px var(--space-3);border-radius:var(--radius-pill);background:var(--gold-wash-08);color:var(--gold-bright);border:1px solid var(--gold-wash-40)}.ccft-progress-card__last{font-size:var(--text-xs);color:var(--muted)}.ccft-progress-jump{gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-progress-lessons{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));margin:0;padding:0;list-style:none;display:grid}.ccft-progress-lesson{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font-size:var(--text-sm);text-decoration:none;display:flex}.ccft-progress-lesson:hover{border-color:var(--gold-wash-40)}.ccft-progress-lesson:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.ccft-progress-lesson[data-status=done]{border-color:var(--success-line);background:var(--success-wash)}.ccft-progress-lesson[data-status=started]{border-color:var(--info-line)}.ccft-progress-lesson[data-status=not_started]{color:var(--muted)}.ccft-progress-lesson__dot{width:.625rem;height:.625rem;box-shadow:inset 0 0 0 1px var(--line-strong);border-radius:50%;flex:none}.ccft-progress-lesson[data-status=done] .ccft-progress-lesson__dot{background:var(--success);box-shadow:none}.ccft-progress-lesson[data-status=started] .ccft-progress-lesson__dot{background:var(--info);box-shadow:none}.ccft-progress-lesson__key{font-family:var(--font-display);color:var(--gold);flex:none}.ccft-progress-lesson__title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ccft-progress-lessons__summary{margin:0 0 var(--space-3);color:var(--soft);font-size:var(--text-sm)}.coach-qalert{align-items:center;gap:var(--space-3) var(--space-4);margin-bottom:var(--space-5);padding:var(--space-3) var(--space-4);border:1px solid var(--warn-line);border-left:4px solid var(--warn);border-radius:var(--radius-md);background:var(--warn-wash);color:var(--ink);flex-wrap:wrap;display:flex}.coach-qalert__icon{color:var(--warn);flex:none;display:inline-flex}.coach-qalert__body{flex:18rem;min-width:0}.coach-qalert__title{font-weight:var(--weight-bold)}.coach-qalert__list{margin-top:var(--space-1);color:var(--soft);font-size:var(--text-sm)}.coach-qalert__list li{overflow-wrap:anywhere}.coach-qalert__name{color:var(--ink);font-weight:var(--weight-semibold)}.coach-qalert__cta{flex:none}.ccft-progress-status[data-tone=warn]{color:var(--warn);border-color:var(--warn-line);background:var(--warn-wash)}.ccft-progress-card[data-alert=question]{border-color:var(--warn-line);box-shadow:inset 4px 0 0 var(--warn)}.ccft-progress-card__flags{gap:var(--space-2);flex-wrap:wrap;display:flex}.ccft-client-questions__lede{color:var(--soft);margin-bottom:var(--space-3)}.ccft-client-questions__recent{margin-top:var(--space-4)}.ccft-client-questions__recent>summary{cursor:pointer;color:var(--soft);margin-bottom:var(--space-3)}.bilan-print-colophon,.bilan-print-letterhead{display:none}@media print{:root{--charcoal:#fff;--bg-app:#fff;--surface-1:#fff;--surface-2:#faf8f5;--surface-3:#f3efe9;--surface-sunken:#f3efe9;--surface-1-grad:var(--surface-1);--surface-raise-grad:var(--surface-2);--surface-hero-grad:var(--surface-2);--ink:oklch(20% .012 67);--soft:oklch(34% .012 64);--muted:oklch(44% .012 64);--faint:oklch(55% .012 64);--line:oklch(82% .008 64);--line-strong:oklch(72% .01 64);--line-faint:oklch(88% .006 64);--gold:oklch(58% .12 78);--gold-deep:oklch(52% .115 76);--gold-bright:oklch(58% .12 78);--gold-wash-08:oklch(79% .124 85/.1);--gold-wash-14:oklch(79% .124 85/.16);--gold-wash-22:oklch(70% .12 80/.45);--success:oklch(48% .1 152);--success-wash:oklch(72% .1 152/.18);--success-line:oklch(60% .08 150);--danger:oklch(50% .12 45);--danger-wash:oklch(75% .095 50/.18);--danger-line:oklch(62% .1 47);--viz-track:oklch(90% .006 64);--viz-target:oklch(58% .12 78);--elev-1:none;--elev-2:none;--elev-3:none;--bg-aura:none;--bg-aura-opacity:0}:root,html{color-scheme:light}html{background:#fff}body{color:var(--ink);background:#fff!important}body:before{display:none!important}.reveal{opacity:1!important;transform:none!important}@page{size:A4;margin:16mm 14mm}.app-footer,.app-header,.bilan-back,.client-context,.drawer,.drawer-overlay,.header__hamburger,.no-print,.rail,.skip-link{display:none!important}.app-col,.app-main,.app-shell{display:block!important}.app-main,.app-main__inner{padding:0!important}.app-main__inner{max-width:none!important;margin:0!important}.bilan-print-letterhead{justify-content:space-between;align-items:flex-end;gap:var(--space-4);padding-bottom:var(--space-3);margin-bottom:var(--space-4);border-bottom:1.5px solid var(--gold);display:flex!important}.bilan-print-letterhead__brand{align-items:center;gap:var(--space-2);display:flex}.bilan-print-letterhead__mark{border:1.5px solid var(--gold);border-radius:var(--radius-sm);width:30px;height:30px;font-family:var(--font-display);font-weight:var(--weight-black);letter-spacing:.02em;color:var(--gold);place-items:center;font-size:.8rem;display:inline-grid}.bilan-print-letterhead__wordmark{font-family:var(--font-display);font-weight:var(--weight-black);letter-spacing:var(--tracking-tight);color:var(--ink);font-size:.95rem}.bilan-print-letterhead__meta{text-align:right}.bilan-print-letterhead__owner{font-family:var(--font-display);font-weight:var(--weight-black);color:var(--ink);font-size:.95rem}.bilan-print-letterhead__period{color:var(--muted);margin-top:2px;font-size:.72rem}.bilan-print-colophon{justify-content:space-between;align-items:baseline;gap:var(--space-4);margin-top:var(--space-6);padding-top:var(--space-3);border-top:1px solid var(--line);color:var(--muted);font-size:.7rem;display:flex!important}.bilan{gap:var(--space-7);max-width:none}.bilan-hero{padding:var(--space-6) var(--space-6);border:1px solid var(--line)}.bilan-hero:after{display:none}.bilan-compare__row,.bilan-hero,.bilan-section,.bilan-win,.coach-note{break-inside:avoid}.bilan-hero__title,.bilan-section__title{break-after:avoid}.bilan-section--note{break-inside:avoid}.card,[class*=card]{box-shadow:none!important}.chart__canvas,.chart__ghost,.chart__legend,.chart__note,.chart__tabs{display:none!important}.bilan-compare__data,.chart__data{display:block!important}.bilan-compare__data>summary,.chart__data>summary{display:none!important}.bilan-compare__data-scroll,.chart__data-scroll{margin-top:0!important;overflow:visible!important}.data-table{border-collapse:collapse;width:100%}.data-table caption{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.data-table td,.data-table th{border-bottom:1px solid var(--line)}.bilan-compare__from-pt,.bilan-compare__path,.bilan-compare__target,.bilan-compare__to-pt,.bilan-compare__track,.bilan-delta,.bilan-print-letterhead__mark{-webkit-print-color-adjust:exact;print-color-adjust:exact}.bilan-win__photo{max-height:60mm}a[href]:after{content:""}}:root{--font-display:var(--font-archivo),"Archivo",system-ui,sans-serif;--font-text:var(--font-inter),"Inter",system-ui,-apple-system,sans-serif}html{color-scheme:dark;-webkit-text-size-adjust:100%}body{background-color:var(--bg-app);min-height:100dvh;color:var(--ink);font-family:var(--font-text);font-size:var(--text-base);line-height:var(--leading-relaxed);font-feature-settings:"kern" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}body:before{z-index:-2;background:var(--bg-aura);opacity:var(--bg-aura-opacity)}body:after,body:before{content:"";pointer-events:none;position:fixed;inset:0}body:after{z-index:-1;opacity:var(--grain-opacity);mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--weight-black);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);margin:0}p{margin:0}a{color:inherit;text-decoration:none}.tnum{font-feature-settings:"tnum" 1,"lnum" 1}.eyebrow{align-items:center;gap:var(--space-2);font-family:var(--font-display);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-eyebrow);font-size:var(--text-2xs);color:var(--muted);display:inline-flex}.eyebrow--gold{color:var(--gold)}.eyebrow--bare:before{display:none}:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-xs);outline:none}.skip-link{left:var(--space-4);top:var(--space-4);z-index:var(--z-toast);background:var(--surface-2);color:var(--ink);padding:var(--space-2) var(--space-4);border-radius:var(--radius-xs);border:1px solid var(--line);position:absolute;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}::selection{background:var(--gold-wash-22);color:var(--ink)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line);border-radius:var(--radius-pill)}::-webkit-scrollbar-track{background:0 0}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.motion-enter{opacity:1!important;transform:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}