@font-face{font-family:Almarai;font-weight:300;font-style:normal;font-display:swap;src:url(/fonts/Almarai-Light.ttf) format("truetype")}@font-face{font-family:Almarai;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/Almarai-Regular.ttf) format("truetype")}@font-face{font-family:Almarai;font-weight:700;font-style:normal;font-display:swap;src:url(/fonts/Almarai-Bold.ttf) format("truetype")}@font-face{font-family:Almarai;font-weight:800;font-style:normal;font-display:swap;src:url(/fonts/Almarai-ExtraBold.ttf) format("truetype")}:root,:root[data-theme=dark]{color-scheme:dark;--color-primary:#2dd4bf;--color-primary-strong:#0d9488;--color-primary-contrast:#022c26;--color-gold:#fbbf24;--color-gold-strong:#d97706;--color-bg:#020617;--color-surface:#0f172a;--color-surface-2:#1e293b;--color-surface-3:#334155;--color-text:#f8fafc;--color-text-muted:#94a3b8;--color-text-faint:#64748b;--color-border:#1e293b;--color-border-strong:#334155;--color-good:#34d399;--color-warn:#fbbf24;--color-bad:#f87171;--color-danger:#f87171;--color-danger-strong:#dc2626;--color-focus:#2dd4bf;--skeleton-base:#1e293b;--skeleton-shine:#334155;--shadow-1:0 1px 2px rgba(0,0,0,0.4);--shadow-2:0 4px 14px rgba(0,0,0,0.5);--shadow-3:0 20px 50px rgba(0,0,0,0.6)}:root[data-theme=light]{color-scheme:light;--color-primary:#0d9488;--color-primary-strong:#0f766e;--color-primary-contrast:#ffffff;--color-gold:#d97706;--color-gold-strong:#b45309;--color-bg:#f8fafc;--color-surface:#ffffff;--color-surface-2:#f1f5f9;--color-surface-3:#e2e8f0;--color-text:#0f172a;--color-text-muted:#475569;--color-text-faint:#64748b;--color-border:#e2e8f0;--color-border-strong:#cbd5e1;--color-good:#059669;--color-warn:#b45309;--color-bad:#dc2626;--color-danger:#dc2626;--color-danger-strong:#b91c1c;--color-focus:#0d9488;--skeleton-base:#e2e8f0;--skeleton-shine:#f1f5f9;--shadow-1:0 1px 2px rgba(15,23,42,0.06);--shadow-2:0 4px 12px rgba(15,23,42,0.08);--shadow-3:0 20px 50px rgba(15,23,42,0.16)}:root{--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--sidebar-width:260px;--font-sans:"Almarai",system-ui,-apple-system,"Segoe UI",sans-serif;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--leading-tight:1.2;--leading-snug:1.35;--leading-normal:1.6;--icon-sm:16px;--icon-md:20px;--icon-lg:24px;--ease-out:cubic-bezier(0.16,1,0.3,1);--dur-fast:0.15s;--dur-mid:0.24s;--color-video-letterbox:#000000}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%}body{font-family:var(--font-sans);font-weight:400;font-size:var(--text-base);background-color:var(--color-bg);color:var(--color-text);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.tabular{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1,"tnum"}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-weight:800;line-height:var(--leading-snug);margin:0}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}h4{font-size:var(--text-base)}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-2xl{font-size:var(--text-2xl)}.text-muted{color:var(--color-text-muted)}.text-faint{color:var(--color-text-faint)}.prose-measure{max-inline-size:68ch}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-sm)}.app-shell{display:grid;grid-template-columns:var(--sidebar-width) 1fr;min-height:100vh}.app-sidebar{background-color:var(--color-surface);-webkit-border-end:1px solid var(--color-border);border-inline-end:1px solid var(--color-border);padding:var(--space-5) var(--space-4);display:flex;flex-direction:column;gap:var(--space-5);position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.app-main{padding:var(--space-5) var(--space-6);min-width:0}.brand{display:flex;align-items:center;gap:var(--space-2);font-weight:800;font-size:1.25rem;color:var(--color-primary)}.brand-mark{inline-size:28px;block-size:28px;flex-shrink:0}.nav-list{display:flex;flex-direction:column;gap:var(--space-1);list-style:none;margin:0;padding:0}.nav-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-muted);font-weight:700;transition:background-color .15s ease,color .15s ease}.nav-link:hover{background-color:var(--color-surface-2);color:var(--color-text)}.nav-link[aria-current=page]{background-color:color-mix(in srgb,var(--color-primary) 16%,transparent);color:var(--color-primary)}.nav-icon{flex-shrink:0;opacity:.85;transition:opacity var(--dur-fast) var(--ease-out)}.nav-link:hover .nav-icon,.nav-link[aria-current=page] .nav-icon{opacity:1}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-1)}.card-interactive{cursor:pointer;transition:box-shadow var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.card-interactive:hover{box-shadow:var(--shadow-2);border-color:var(--color-border-strong)}.card-interactive:active{transform:translateY(1px)}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}table{border-collapse:collapse;width:100%}td,th{text-align:start;padding:var(--space-3) var(--space-4);-webkit-border-after:1px solid var(--color-border);border-block-end:1px solid var(--color-border)}th{color:var(--color-text-muted)}.btn,th{font-weight:700;font-size:var(--text-sm)}.btn{font-family:var(--font-sans);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.btn:active:not(:disabled){transform:translateY(1px)}.btn-primary{background-color:var(--color-primary);color:var(--color-primary-contrast)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-strong)}.btn-ghost{background-color:transparent;color:var(--color-text);border-color:var(--color-border-strong)}.btn-ghost:hover{background-color:var(--color-surface-2)}.btn-danger{background-color:transparent;color:var(--color-danger);border-color:var(--color-danger)}.btn-danger:hover{background-color:color-mix(in srgb,var(--color-danger) 12%,transparent)}.btn:disabled{opacity:.5;cursor:not-allowed}.badge{display:inline-flex;gap:var(--space-1);padding:2px var(--space-3);border-radius:999px;font-size:var(--text-xs);font-weight:700;border:1px solid var(--color-border-strong);white-space:nowrap}.badge,.breadcrumbs{align-items:center;color:var(--color-text-muted)}.breadcrumbs{display:flex;gap:var(--space-2);font-size:var(--text-sm);-webkit-margin-after:var(--space-4);margin-block-end:var(--space-4);flex-wrap:wrap}.breadcrumbs a:hover{color:var(--color-primary)}.skeleton{position:relative;overflow:hidden;background-color:var(--skeleton-base);border-radius:var(--radius-sm)}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,var(--skeleton-shine),transparent);animation:skeleton-shine 1.4s ease-in-out infinite}:root[dir=rtl] .skeleton:after{animation-name:skeleton-shine-rtl}@keyframes skeleton-shine{to{transform:translateX(100%)}}@keyframes skeleton-shine-rtl{to{transform:translateX(-100%)}}@media (prefers-reduced-motion:reduce){.skeleton:after{animation:none}}.state-block{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);text-align:center;padding:var(--space-6);color:var(--color-text-muted)}.state-block h3{color:var(--color-text)}.banner-info{border:1px solid var(--color-primary-strong);background-color:color-mix(in srgb,var(--color-primary) 10%,transparent);border-radius:var(--radius-md)}.banner-info,.banner-warn{padding:var(--space-4) var(--space-5);color:var(--color-text)}.banner-warn{border:1px solid var(--color-gold-strong);background-color:color-mix(in srgb,var(--color-gold) 12%,transparent);border-radius:var(--radius-md)}.banner-error{border:1px solid var(--color-danger);background-color:color-mix(in srgb,var(--color-danger) 10%,transparent);padding:var(--space-4) var(--space-5);color:var(--color-text)}.banner-error,.toggle-group{border-radius:var(--radius-md)}.toggle-group{display:inline-flex;gap:var(--space-1);padding:var(--space-1);background-color:var(--color-surface-2)}.toggle-option{padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);border:none;background:transparent;color:var(--color-text-muted);font-family:var(--font-sans);font-weight:700;cursor:pointer}.toggle-option[aria-pressed=true]{background-color:var(--color-primary);color:var(--color-primary-contrast)}@media (max-width:768px){.app-shell{grid-template-columns:1fr}.app-sidebar{position:static;height:auto;align-items:center;-webkit-border-end:none;border-inline-end:none;-webkit-border-after:1px solid var(--color-border);border-block-end:1px solid var(--color-border)}.app-sidebar,.nav-list{flex-direction:row;flex-wrap:wrap}.app-main{padding:var(--space-4)}}body,html{overflow-x:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;-webkit-margin-after:var(--space-5);margin-block-end:var(--space-5)}.page-header .page-title{font-size:var(--text-2xl)}.page-header .page-subtitle{color:var(--color-text-muted);-webkit-margin-before:var(--space-2);margin-block-start:var(--space-2)}.field{width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background-color:var(--color-surface-2);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);transition:border-color var(--dur-fast) var(--ease-out)}.field[aria-invalid=true]{border-color:var(--color-danger)}.field::placeholder{color:var(--color-text-faint)}.field:focus-visible{border-color:var(--color-focus)}.search-field{position:relative;flex:1 1;min-width:220px;max-width:420px}.search-field .field{-webkit-padding-start:var(--space-6);padding-inline-start:var(--space-6)}.search-field .search-icon{position:absolute;inset-inline-start:var(--space-3);inset-block-start:50%;transform:translateY(-50%);color:var(--color-text-faint);pointer-events:none}.toolbar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;-webkit-margin-after:var(--space-4);margin-block-end:var(--space-4)}.toolbar-spacer{flex:1 1}.selection-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background-color:color-mix(in srgb,var(--color-primary) 10%,var(--color-surface));border:1px solid var(--color-primary-strong);border-radius:var(--radius-md);-webkit-margin-after:var(--space-4);margin-block-end:var(--space-4);flex-wrap:wrap}.data-table{border-collapse:collapse;width:100%;min-width:640px}.data-table tbody tr{transition:background-color .12s ease}.data-table tbody tr:hover{background-color:var(--color-surface-2)}.data-table tbody tr.is-selected{background-color:color-mix(in srgb,var(--color-primary) 12%,transparent)}.data-table td.actions{text-align:end;white-space:nowrap}.sort-button{display:inline-flex;align-items:center;gap:var(--space-1);background:none;border:none;padding:0;color:var(--color-text-muted);font-family:var(--font-sans);font-weight:700;font-size:var(--text-sm);cursor:pointer}.sort-button:hover{color:var(--color-text)}.sort-indicator{display:inline-flex;align-items:center}.sort-icon.is-idle{opacity:.45}.row-link,th[aria-sort=ascending] .sort-button,th[aria-sort=descending] .sort-button{color:var(--color-primary)}.row-link{font-weight:700}.row-link:hover{text-decoration:underline}.checkbox{inline-size:18px;block-size:18px;accent-color:var(--color-primary);cursor:pointer}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.kpi-card{flex-direction:column}.kpi-card,.kpi-head{display:flex;gap:var(--space-2)}.kpi-head{align-items:center;justify-content:space-between}.kpi-label{color:var(--color-text-muted);font-weight:700;font-size:var(--text-sm)}.kpi-icon{--kpi-tint:var(--color-primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;inline-size:36px;block-size:36px;border-radius:var(--radius-md);color:var(--kpi-tint);background-color:color-mix(in srgb,var(--kpi-tint) 14%,transparent)}.kpi-value{font-size:var(--text-2xl);font-weight:800;line-height:var(--leading-tight)}.kpi-sub{color:var(--color-text-muted);font-size:var(--text-sm)}.meter-track{inline-size:100%;block-size:12px;background-color:var(--color-surface-3);border-radius:999px;overflow:hidden}.meter-fill{block-size:100%;border-radius:999px;transition:inline-size .3s ease;min-inline-size:2px}@media (prefers-reduced-motion:reduce){.meter-fill{transition:none}}.tabs{display:flex;gap:var(--space-1);-webkit-border-after:1px solid var(--color-border);border-block-end:1px solid var(--color-border);-webkit-margin-after:var(--space-5);margin-block-end:var(--space-5);overflow-x:auto;-webkit-overflow-scrolling:touch}.tab{padding:var(--space-3) var(--space-4);border:none;background:none;color:var(--color-text-muted);font-family:var(--font-sans);font-weight:700;font-size:var(--text-base);cursor:pointer;-webkit-border-after:2px solid transparent;border-block-end:2px solid transparent;white-space:nowrap;min-height:44px;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.tab:hover{color:var(--color-text)}.tab[aria-selected=true]{color:var(--color-primary);border-block-end-color:var(--color-primary)}.dialog-overlay{position:fixed;inset:0;background-color:rgba(2,6,23,.62);display:flex;align-items:center;justify-content:center;padding:var(--space-5);z-index:100}.dialog{inline-size:100%;max-inline-size:440px;box-shadow:var(--shadow-3)}.raw-code{font-family:ui-monospace,SFMono-Regular,Cascadia Code,monospace;font-size:var(--text-lg);font-weight:700;letter-spacing:.05em;padding:var(--space-3) var(--space-4);background-color:var(--color-surface);border:1px dashed var(--color-gold-strong);border-radius:var(--radius-md);color:var(--color-text);word-break:break-all;direction:ltr;text-align:center}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:var(--space-4);gap:var(--space-4);align-items:start}.detail-card-title{font-size:var(--text-lg);color:var(--color-text);-webkit-margin-after:var(--space-4);margin-block-end:var(--space-4)}.stat-list{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.stat-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);padding-block:var(--space-1)}.stat-row .stat-label{color:var(--color-text-muted);font-size:var(--text-sm)}.stat-row .stat-value{font-weight:700}.chip{display:inline-flex;align-items:center;padding:2px var(--space-3);background-color:var(--color-surface-2);border:1px solid var(--color-border);border-radius:999px;font-size:var(--text-xs);color:var(--color-text)}.chip-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}@media (max-width:640px){.kpi-value,.page-header .page-title{font-size:var(--text-xl)}}.day-head{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.day-head .day-title{font-size:var(--text-lg);font-weight:800;margin:0}.action-group{gap:var(--space-1)}.action-group,.icon-btn{display:inline-flex;align-items:center}.icon-btn{justify-content:center;inline-size:44px;block-size:44px;min-inline-size:44px;padding:0;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background-color:var(--color-surface-2);color:var(--color-text-muted);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.icon-btn:hover:not(:disabled){background-color:var(--color-surface-3);color:var(--color-text);border-color:var(--color-border-strong)}.icon-btn:active:not(:disabled){transform:translateY(1px)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn-danger:hover:not(:disabled){background-color:color-mix(in srgb,var(--color-danger) 14%,transparent);color:var(--color-danger);border-color:var(--color-danger)}.icon-btn svg{inline-size:var(--icon-md);block-size:var(--icon-md)}.exercise-table{border-collapse:collapse;width:100%;min-width:880px}.exercise-table th{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:700;padding:var(--space-2) var(--space-3);white-space:nowrap;text-align:start}.exercise-table td,.exercise-table th{-webkit-border-after:1px solid var(--color-border);border-block-end:1px solid var(--color-border)}.exercise-table td{padding:var(--space-2);vertical-align:top}.exercise-table .row-index{color:var(--color-text-muted);font-size:var(--text-sm);text-align:center;-webkit-padding-before:var(--space-3);padding-block-start:var(--space-3)}.cell-field{width:100%;min-width:56px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border-strong);background-color:var(--color-surface-2);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-sm);transition:border-color var(--dur-fast) var(--ease-out)}.cell-field[aria-invalid=true]{border-color:var(--color-danger)}.cell-num{min-width:64px;max-width:88px}.cell-name{min-width:140px}.field-error{display:block;color:var(--color-bad);font-size:var(--text-xs);-webkit-margin-before:var(--space-1);margin-block-start:var(--space-1)}.error-summary{border:1px solid var(--color-danger);background-color:color-mix(in srgb,var(--color-danger) 10%,transparent);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);color:var(--color-text);-webkit-margin-after:var(--space-4);margin-block-end:var(--space-4)}.error-summary ul{margin:var(--space-2) 0 0;-webkit-padding-start:var(--space-5);padding-inline-start:var(--space-5);display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.error-summary a{color:var(--color-danger-strong);text-decoration:underline}.draft-banner{gap:var(--space-3);flex-wrap:wrap;border:1px solid var(--color-gold-strong);background-color:color-mix(in srgb,var(--color-gold) 12%,transparent);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);-webkit-margin-after:var(--space-4);margin-block-end:var(--space-4)}.draft-banner,.undo-toast{display:flex;align-items:center;color:var(--color-text)}.undo-toast{position:fixed;inset-block-end:var(--space-5);inset-inline:0;margin-inline:auto;inline-size:-moz-fit-content;inline-size:fit-content;max-inline-size:calc(100% - var(--space-6));gap:var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);padding:var(--space-3) var(--space-5);box-shadow:var(--shadow-3);z-index:200}.undo-toast button{background:none;border:none;color:var(--color-primary);font-family:var(--font-sans);font-weight:700;font-size:var(--text-sm);cursor:pointer;padding:0}.template-menu{position:relative;display:inline-block}.template-list{position:absolute;inset-block-start:calc(100% + var(--space-1));inset-inline-start:0;min-inline-size:180px;background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-2);padding:var(--space-1);z-index:50;display:grid;grid-gap:2px;gap:2px}.template-list button{display:block;width:100%;text-align:start;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-sm);background:none;color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-sm);cursor:pointer}.template-list button:hover{background-color:var(--color-surface-2)}.builder-actions{position:-webkit-sticky;position:sticky;inset-block-end:0;display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;-webkit-margin-before:var(--space-5);margin-block-start:var(--space-5);box-shadow:var(--shadow-2)}.preview-day{-webkit-margin-after:var(--space-4);margin-block-end:var(--space-4)}.preview-day h3{font-size:var(--text-lg);-webkit-margin-after:var(--space-2);margin-block-end:var(--space-2)}@media (prefers-reduced-motion:reduce){.btn,.card-interactive,.cell-field,.data-table tbody tr,.field,.icon-btn,.nav-link,.tab,.video-trigger{transition:none}.btn:active:not(:disabled),.card-interactive:active,.icon-btn:active:not(:disabled){transform:none}}.video-head{gap:var(--space-3);flex-wrap:wrap}.video-head,.video-head-title{display:flex;align-items:center}.video-head-title{gap:var(--space-2);font-size:var(--text-lg);margin:0}.video-head-icon{inline-size:var(--icon-md);block-size:var(--icon-md);color:var(--color-primary);flex-shrink:0}.video-list{display:grid;grid-gap:var(--space-3);gap:var(--space-3);list-style:none;margin:0;padding:0}.video-item{padding:0;overflow:hidden}.video-trigger{display:flex;align-items:center;gap:var(--space-4);inline-size:100%;min-block-size:44px;padding:var(--space-4) var(--space-5);border:none;background:none;color:var(--color-text);font-family:var(--font-sans);text-align:start;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}.video-trigger:hover{background-color:var(--color-surface-2)}.video-trigger:focus-visible{outline-offset:-2px}.video-play-badge{display:inline-flex;align-items:center;justify-content:center;inline-size:44px;block-size:44px;flex-shrink:0;border-radius:var(--radius-md);background-color:color-mix(in srgb,var(--color-primary) 16%,transparent);color:var(--color-primary)}.video-play-badge svg{inline-size:var(--icon-md);block-size:var(--icon-md)}.video-body{display:flex;flex-direction:column;gap:var(--space-1);flex:1 1;min-inline-size:0}.video-title-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.video-title{font-weight:700;font-size:var(--text-base);overflow-wrap:anywhere}.video-meta-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;color:var(--color-text-muted)}.video-action{flex-shrink:0;color:var(--color-primary);font-weight:700}@media (max-width:640px){.video-action{display:none}.video-trigger{padding:var(--space-3) var(--space-4)}}.video-stage{display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding-inline:var(--space-5);padding-block:var(--space-4) var(--space-5);-webkit-border-before:1px solid var(--color-border);border-block-start:1px solid var(--color-border)}.video-player{display:block;inline-size:100%;max-block-size:70vh;border-radius:var(--radius-md);background-color:var(--color-video-letterbox)}.btn-xs{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);display:inline-flex;align-items:center;gap:var(--space-1)}.cell-demo{min-width:176px;max-width:220px}.demo-cell{display:flex;flex-direction:column;gap:var(--space-2);align-items:flex-start}.demo-attach-btn{white-space:nowrap}.demo-badge{color:var(--color-good);border-color:color-mix(in srgb,var(--color-good) 45%,transparent);background-color:color-mix(in srgb,var(--color-good) 10%,transparent)}.demo-attached{display:flex;flex-direction:column;gap:var(--space-2);align-items:flex-start}.demo-row-actions{display:flex;flex-wrap:wrap;gap:var(--space-1);align-items:center}.demo-progress{display:grid;grid-gap:var(--space-1);gap:var(--space-1);inline-size:100%}.demo-progress-track{inline-size:100%;block-size:6px;border-radius:999px;background-color:var(--color-surface-3);overflow:hidden}.demo-progress-fill{block-size:100%;background-color:var(--color-primary);border-radius:999px;transition:inline-size var(--dur-fast) var(--ease-out)}.demo-progress-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.demo-linkbtn{background:none;border:none;padding:0;color:var(--color-primary);font-family:var(--font-sans);font-weight:700;font-size:var(--text-xs);cursor:pointer}.demo-detail-row td{background-color:var(--color-surface-2);-webkit-border-after:1px solid var(--color-border);border-block-end:1px solid var(--color-border)}.demo-panel{padding:var(--space-4)}.demo-lib-usage{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.demo-lib-usage-head{justify-content:space-between;gap:var(--space-3)}.demo-lib-usage-head,.video-row{display:flex;align-items:center;flex-wrap:wrap}.video-row{gap:var(--space-2)}.video-row-trigger{flex:1 1 260px;inline-size:auto}.video-row-static{cursor:default}.video-row-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding-inline:var(--space-5);-webkit-padding-after:var(--space-4);padding-block-end:var(--space-4)}@media (min-width:641px){.video-row-actions{padding-block:var(--space-3);-webkit-padding-end:var(--space-5);padding-inline-end:var(--space-5);-webkit-padding-start:0;padding-inline-start:0}}.video-row-msg{display:block;margin:0;padding-inline:var(--space-5);-webkit-padding-after:var(--space-4);padding-block-end:var(--space-4)}@media (max-width:640px){.video-row-actions,.video-row-msg{padding-inline:var(--space-4)}}.builder-with-library{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:var(--space-5);gap:var(--space-5);align-items:start}@media (max-width:1023px){.builder-with-library{display:block}}.library-panel{display:flex;flex-direction:column;gap:var(--space-3);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);position:-webkit-sticky;position:sticky;inset-block-start:var(--space-5);max-block-size:calc(100dvh - 2 * var(--space-5));overscroll-behavior:contain}.library-head{display:flex;align-items:center;gap:var(--space-2)}.library-title{font-weight:700;flex:1 1}.library-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.library-chips .chip{cursor:pointer;font-family:var(--font-sans);transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.library-chips .chip:hover{border-color:var(--color-border-strong)}.library-chips .chip[aria-pressed=true]{background-color:var(--color-primary);border-color:var(--color-primary-strong);color:var(--color-primary-contrast);font-weight:700}.library-list{flex:1 1;min-block-size:0;overflow-y:auto;flex-direction:column}.library-card,.library-list{display:flex;gap:var(--space-2)}.library-card{align-items:center;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-surface-2);cursor:-webkit-grab;cursor:grab;content-visibility:auto;contain-intrinsic-block-size:52px;transition:border-color var(--dur-fast) var(--ease-out)}.library-card:hover{border-color:var(--color-border-strong)}.library-card.is-active{border-color:var(--color-primary);box-shadow:inset 2px 0 0 var(--color-primary),inset -2px 0 0 var(--color-primary)}.library-card.is-dragging{opacity:.4}.library-card-text{flex:1 1;min-inline-size:0;display:flex;flex-direction:column;gap:2px}.library-card-name{font-size:var(--text-sm);font-weight:700}.library-card-meta,.library-card-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-card-meta{font-size:var(--text-xs);color:var(--color-text-muted)}.library-card-actions{display:flex;gap:var(--space-1)}.library-empty{display:grid;grid-gap:var(--space-3);gap:var(--space-3);justify-items:center;padding:var(--space-5);color:var(--color-text-muted);text-align:center}.library-foot{-webkit-border-before:1px solid var(--color-border);border-block-start:1px solid var(--color-border);-webkit-padding-before:var(--space-3);padding-block-start:var(--space-3)}.library-foot-label{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm);font-weight:700}.library-foot-label .field{flex:1 1}.library-drawer{position:fixed;inset-block:0;inset-inline-end:0;inline-size:min(320px,88vw);z-index:100;background-color:var(--color-surface);box-shadow:var(--shadow-3);padding:var(--space-4);display:flex;flex-direction:column}.library-drawer .library-panel{position:static;max-block-size:100%;flex:1 1;border:none;padding:0}.combo-list{list-style:none;margin:0;padding:var(--space-1);background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-2);max-block-size:320px;overflow-y:auto}.combo-option{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;min-block-size:40px}.combo-option.is-highlighted{background-color:var(--color-surface-2);box-shadow:inset -2px 0 0 var(--color-primary)}[dir=ltr] .combo-option.is-highlighted{box-shadow:inset 2px 0 0 var(--color-primary)}.combo-option-name{font-size:var(--text-sm);font-weight:700}.combo-option-meta{font-size:var(--text-xs)}.combo-option-meta,.row-grip{color:var(--color-text-muted)}.row-grip{display:inline-flex;align-items:center;justify-content:center;gap:2px;min-inline-size:44px;min-block-size:44px;padding:0 var(--space-1);border:none;border-radius:var(--radius-sm);background:none;font-family:var(--font-sans);font-size:var(--text-sm);cursor:-webkit-grab;cursor:grab}.row-grip:hover{background-color:var(--color-surface-2);color:var(--color-text)}.row-grip-dots{flex-shrink:0;opacity:.6}.row-grip:focus-visible .row-grip-dots,.row-grip:hover .row-grip-dots{opacity:1}.exercise-table tr.drop-above>td{box-shadow:inset 0 2px 0 var(--color-primary)}.exercise-table tr.drop-below>td{box-shadow:inset 0 -2px 0 var(--color-primary)}.exercise-table tr.row-dragging{opacity:.4}@keyframes row-added-flash{0%{background-color:color-mix(in srgb,var(--color-primary) 18%,transparent)}to{background-color:transparent}}.exercise-table tr.row-added>td{animation:row-added-flash 1.2s var(--ease-out)}.card.day-drop-possible{outline:2px dashed color-mix(in srgb,var(--color-primary) 45%,transparent);outline-offset:2px}.card.day-drop-over{outline-style:solid;background-color:color-mix(in srgb,var(--color-primary) 6%,var(--color-surface))}.card.is-active-day{box-shadow:inset -3px 0 0 var(--color-primary)}[dir=ltr] .card.is-active-day{box-shadow:inset 3px 0 0 var(--color-primary)}.active-day-chip{-webkit-margin-start:var(--space-2);margin-inline-start:var(--space-2)}.drag-ghost{display:flex;flex-direction:column;gap:2px;inline-size:240px;padding:var(--space-2) var(--space-3);background-color:var(--color-surface-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-3);font-family:var(--font-sans);color:var(--color-text)}.drag-ghost-name{font-size:var(--text-sm);font-weight:700}.drag-ghost-meta{font-size:var(--text-xs);color:var(--color-text-muted)}@media (prefers-reduced-motion:reduce){.exercise-table tr.row-added>td{animation:none}}.nav-memberships{-webkit-border-before:1px solid var(--color-border);border-block-start:1px solid var(--color-border);-webkit-padding-before:var(--space-4);padding-block-start:var(--space-4)}.nav-memberships ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.nav-section-title{margin:0 0 var(--space-3);font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;color:var(--color-text-faint)}.nav-membership-owner{display:block;font-size:var(--text-sm);font-weight:700;color:var(--color-text)}.nav-membership-meta{display:block;font-size:var(--text-xs);color:var(--color-text-muted)}.choice-set{border:0;margin:0 0 var(--space-5);padding:0;min-inline-size:0}.choice-legend{padding:0;-webkit-margin-after:var(--space-3);margin-block-end:var(--space-3);font-size:var(--text-sm);font-weight:700;color:var(--color-text-muted)}.choice-list{display:flex;flex-direction:column;gap:var(--space-2)}.choice-option{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.choice-option:hover{background-color:var(--color-surface-2)}.choice-option[data-selected]{border-color:var(--color-primary);background-color:color-mix(in srgb,var(--color-primary) 12%,transparent)}.choice-option input[type=radio]{-webkit-margin-before:3px;margin-block-start:3px;accent-color:var(--color-primary);inline-size:16px;block-size:16px;flex:none}.choice-title{display:block;font-weight:700}.choice-hint{display:block;font-size:var(--text-sm);color:var(--color-text-muted)}.team-assign-panel{display:grid;grid-gap:var(--space-4);gap:var(--space-4);padding:var(--space-4)}.team-assign-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:var(--space-2);gap:var(--space-2);max-block-size:320px;overflow-y:auto}.team-assign-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer}.team-assign-item:hover{background-color:var(--color-surface-2)}[dir=rtl] .icon-flip-rtl{transform:scaleX(-1)}.btn-with-icon{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}.badge svg,.btn-with-icon svg,.crumb-sep{flex-shrink:0}.crumb-sep{opacity:.6}.state-icon{--state-tint:var(--color-primary);display:inline-flex;align-items:center;justify-content:center;inline-size:64px;block-size:64px;border-radius:999px;color:var(--state-tint);background-color:color-mix(in srgb,var(--state-tint) 12%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--state-tint) 22%,transparent)}.state-icon-bad{--state-tint:var(--color-bad);inline-size:56px;block-size:56px}.state-icon-muted{--state-tint:var(--color-text-muted);inline-size:48px;block-size:48px}.avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:999px;color:var(--color-primary);background-color:color-mix(in srgb,var(--color-primary) 14%,transparent);vertical-align:middle}.avatar-sm{inline-size:26px;block-size:26px;-webkit-margin-end:var(--space-2);margin-inline-end:var(--space-2)}.avatar-lg{inline-size:40px;block-size:40px;-webkit-margin-end:var(--space-3);margin-inline-end:var(--space-3)}.page-title:has(>.avatar){display:flex;align-items:center}.billing-top{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-gap:var(--space-4);gap:var(--space-4);align-items:start;-webkit-margin-after:var(--space-6);margin-block-end:var(--space-6)}@media (max-width:1023px){.billing-top{grid-template-columns:minmax(0,1fr)}}.plan-status{display:grid;grid-gap:var(--space-3);gap:var(--space-3);justify-items:start}.plan-status>*{margin:0}.plan-headline{font-size:var(--text-xl)}.plan-ref-block,.plan-seats{display:grid;grid-gap:var(--space-2);gap:var(--space-2);inline-size:100%;-webkit-padding-before:var(--space-4);padding-block-start:var(--space-4);-webkit-border-before:1px solid var(--color-border);border-block-start:1px solid var(--color-border)}.plan-ref-block p,.plan-seats p{margin:0}.plan-ref{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.ref-code{font-family:ui-monospace,SFMono-Regular,Cascadia Code,monospace;font-size:var(--text-lg);font-weight:700;letter-spacing:.08em;padding:var(--space-2) var(--space-4);background-color:var(--color-surface-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text);direction:ltr}.plan-ref-notes{margin:0;-webkit-padding-start:var(--space-5);padding-inline-start:var(--space-5);color:var(--color-text-muted);display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.counted-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.counted-list li{display:flex;align-items:center;font-weight:700}.billing-section{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.billing-section-head{display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.billing-section-head p{margin:0}.plan-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.plan-card{display:flex;flex-direction:column;gap:var(--space-3)}.plan-card p{margin:0}.plan-card.is-current{border-color:var(--color-primary-strong);box-shadow:inset 0 0 0 1px var(--color-primary-strong),var(--shadow-1)}.plan-price{display:grid;justify-items:start;grid-gap:var(--space-1);gap:var(--space-1);min-block-size:3.5rem}.plan-price-value{font-size:var(--text-2xl);font-weight:800;line-height:var(--leading-tight)}.plan-price-unit{font-size:var(--text-sm);font-weight:700}.plan-price-custom{font-size:var(--text-lg);font-weight:700}.plan-card-cta{-webkit-margin-before:auto;margin-block-start:auto;display:grid;justify-items:start;grid-gap:var(--space-2);gap:var(--space-2)}.plan-soon{font-size:var(--text-sm);font-weight:700}.plan-contact{display:flex;flex-wrap:wrap;gap:var(--space-2)}.plan-contact .btn{padding:var(--space-2) var(--space-4)}.plan-card-cta>.btn,.plan-contact .btn{min-block-size:44px}.terms-consent{display:grid;grid-gap:var(--space-2);gap:var(--space-2);justify-items:start}.terms-consent p{margin:0}.consent-row{display:flex;align-items:center;gap:var(--space-3);min-block-size:44px;font-weight:700;cursor:pointer}.feature-card{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.feature-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.feature-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.seller-identity{-webkit-margin-before:var(--space-6);margin-block-start:var(--space-6)}.seller-identity dl{margin:0}.renewal-banner{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;-webkit-margin-after:var(--space-4);margin-block-end:var(--space-4)}.renewal-banner svg{flex-shrink:0;color:var(--color-gold-strong)}.renewal-link{font-weight:800;text-decoration:underline;text-underline-offset:3px}.calc-panel{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.calc-panel p{margin:0}.calc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.calc-field{display:flex;flex-direction:column;gap:var(--space-2)}.calc-field>span:first-child{font-weight:700;font-size:var(--text-sm)}.calc-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center}.calc-result{display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-4) var(--space-5);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background-color:var(--color-surface-2)}.calc-result h3{font-size:var(--text-lg)}.calc-result ul{margin:0;-webkit-padding-start:var(--space-5);padding-inline-start:var(--space-5);display:grid;grid-gap:var(--space-1);gap:var(--space-1);color:var(--color-text-muted);font-size:var(--text-sm)}.calc-result .stat-list,.calc-result>.stat-row{max-inline-size:28rem}