*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;height:100%}button,input,select,textarea{font:inherit;color:inherit;margin:0;padding:0;border:none;background:none;outline:revert}:focus-visible{outline:2px solid var(--jot-color-primary,#3b82f6);outline-offset:2px}a{color:inherit}ol,ul{list-style:none;padding:0;margin:0}h1,h2,h3,h4,h5,h6{margin:0;font-weight:inherit;font-size:inherit}p{margin:0}table{border-spacing:0}:root{--bg:#ffffff;--bg-alt:#f9fafb;--surface:#f9fafb;--surface-2:#f3f4f6;--surface-glass:rgba(249,250,251,0.86);--divider:#e5e7eb;--overlay-bg:rgba(0,0,0,0.4);--text:#111111;--text-2:#6b7280;--text-3:#9ca3af;--text-4:#d1d5db;--text-5:#e5e7eb;--text-ghost:rgba(17,17,17,0.25);--border:#e5e7eb;--border-strong:#9ca3af;--border-subtle:rgba(0,0,0,0.06);--border-input:#9ca3af;--primary:#3b82f6;--primary-shade:#2563eb;--primary-tint:rgba(59,130,246,0.1);--primary-glow:rgba(59,130,246,0.2);--primary-bg:#dbeafe;--primary-text:#1e40af;--secondary:#10b981;--on-primary:#ffffff;--success:#16a34a;--success-bg:#f0fdf4;--success-border:#86efac;--success-text:#166534;--warning:#d97706;--warning-bg:#fef3c7;--warning-border:#fde68a;--warning-text:#92400e;--danger:#dc2626;--danger-bg:#fef2f2;--danger-border:#fecaca;--danger-text:#991b1b;--shadow-xs:0 1px 2px rgba(0,0,0,0.05);--shadow-sm:0 1px 3px rgba(0,0,0,0.08);--shadow-md:0 4px 6px rgba(0,0,0,0.07);--shadow-lg:0 10px 15px rgba(0,0,0,0.08);--shadow-ctrl:0 2px 4px rgba(0,0,0,0.2);--shadow-inset:inset 0 1px 2px rgba(0,0,0,0.06);--contrast-bg:#0d0d0d;--contrast-text:rgba(255,255,255,0.9);--contrast-text-2:rgba(255,255,255,0.65);--contrast-border:rgba(255,255,255,0.1);--hover:#f3f4f6;--focus:rgba(59,130,246,0.1);--drop:rgba(59,130,246,0.08);--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:2rem;--space-xl:4rem;--font-xs:0.75rem;--font-sm:0.875rem;--font-base:1rem;--font-md:1.125rem;--font-lg:1.5rem;--font-xl:1.75rem;--font-2xl:2rem;--fw-normal:400;--fw-semibold:600;--fw-bold:700;--font-body:"Inter Tight",-apple-system,system-ui,sans-serif;--font-label:"JetBrains Mono",ui-monospace,monospace;--font-display:"Fraunces",Georgia,serif;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--transition:0.2s ease;--inverse-surface:#111111;--on-inverse:#ffffff;--primary-soft:#93b4f8}@media (prefers-color-scheme:dark){:root{--bg:#111111;--bg-alt:#1a1a1a;--surface:#1f1f1f;--surface-2:#2a2a2a;--surface-glass:rgba(17,17,17,0.86);--divider:#2e2e2e;--overlay-bg:rgba(0,0,0,0.6);--text:#f9fafb;--text-2:#9ca3af;--text-3:#6b7280;--text-4:#4b5563;--text-5:#374151;--text-ghost:rgba(249,250,251,0.25);--border:#2e2e2e;--border-strong:#4b5563;--border-subtle:rgba(255,255,255,0.06);--border-input:#4b5563;--primary-tint:rgba(59,130,246,0.15);--primary-glow:rgba(59,130,246,0.25);--primary-bg:#1e3a5f;--primary-text:#93c5fd;--success:#4ade80;--success-bg:#064e3b;--success-border:#166534;--success-text:#6ee7b7;--warning:#fbbf24;--warning-bg:#78350f;--warning-border:#92400e;--warning-text:#fcd34d;--danger:#f87171;--danger-bg:#7f1d1d;--danger-border:#991b1b;--danger-text:#fca5a5;--shadow-sm:0 1px 3px rgba(0,0,0,0.3);--shadow-md:0 4px 6px rgba(0,0,0,0.4);--shadow-lg:0 10px 15px rgba(0,0,0,0.5);--hover:#2a2a2a;--focus:rgba(59,130,246,0.2);--drop:rgba(59,130,246,0.12);--inverse-surface:#f9fafb;--on-inverse:#111111}}html.joy-of-training.theme-ivory{--bg:#fbf8f1;--bg-alt:#f5efe6;--surface:#f0e9dc;--surface-2:#e8dfd0;--surface-glass:rgba(251,248,241,0.86);--divider:#ddd6c8;--text:#2c2417;--text-2:#7a6a52;--text-3:#a89272;--text-4:#c9b89a;--text-5:#ddd6c8;--text-ghost:rgba(44,36,23,0.25);--border:#ddd6c8;--border-strong:#a89272;--border-subtle:rgba(44,36,23,0.06);--border-input:#a89272;--hover:#ede5d8;--focus:rgba(180,130,70,0.12);--drop:rgba(180,130,70,0.08);--inverse-surface:#2c2417;--on-inverse:#fbf8f1;--primary-soft:#e7a28b;--primary:#c8593a;--primary-shade:#a8432f;--primary-tint:rgba(200,89,58,0.10);--primary-glow:rgba(200,89,58,0.22);--secondary:#6a7244}:root{--jot-color-text:var(--text);--jot-color-text-muted:var(--text-2);--jot-color-text-secondary:var(--text-2);--jot-color-background:var(--bg);--jot-color-background-secondary:var(--surface-2);--jot-color-background-hover:var(--hover);--jot-color-border:var(--border);--jot-color-border-hover:var(--border-strong);--jot-color-primary:var(--primary);--jot-color-primary-hover:var(--primary-shade);--jot-color-primary-dark:var(--primary-shade);--jot-color-secondary:var(--text-2);--jot-color-secondary-dark:var(--text-2);--jot-color-accent:var(--secondary);--jot-color-accent-hover:var(--secondary);--jot-color-error:var(--danger);--jot-color-error-bg:var(--danger-bg);--jot-color-error-text:var(--danger-text);--jot-color-surface-inset:var(--surface-2);--jot-color-surface-inset-hover:var(--hover);--jot-font-size-xs:var(--font-xs);--jot-font-size-sm:var(--font-sm);--jot-font-size-base:var(--font-base);--jot-font-size-md:var(--font-md);--jot-font-size-lg:var(--font-lg);--jot-font-size-xl:var(--font-xl);--jot-font-size-2xl:var(--font-2xl);--jot-font-weight-normal:var(--fw-normal);--jot-font-weight-semibold:var(--fw-semibold);--jot-font-weight-bold:var(--fw-bold);--jot-line-height-base:1.55;--jot-line-height-tight:1.15;--jot-spacing-xs:var(--space-xs);--jot-spacing-sm:var(--space-sm);--jot-spacing-md:var(--space-md);--jot-spacing-lg:var(--space-lg);--jot-spacing-xl:var(--space-xl);--jot-radius-sm:var(--radius-sm);--jot-radius-md:var(--radius-md);--jot-radius-lg:var(--radius-lg);--jot-shadow-sm:var(--shadow-sm);--jot-shadow-md:var(--shadow-md);--jot-shadow-lg:var(--shadow-lg);--jot-transition-base:var(--transition);--jot-max-width:1200px;--jot-header-height:64px}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--font-base);font-weight:var(--fw-normal);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}canvas,img,picture,svg,video{display:block;max-width:100%;height:auto}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-sm);font-family:var(--font-heading,var(--font-body));font-weight:var(--fw-bold);color:var(--text);line-height:1.15;letter-spacing:-.01em}h1{font-size:var(--font-2xl);letter-spacing:-.02em}h2{font-size:var(--font-xl);letter-spacing:-.015em}h3{font-size:var(--font-lg)}h4{font-size:var(--font-md)}h4,h5{font-weight:var(--fw-semibold)}h5{font-size:var(--font-base)}h6{font-size:var(--font-sm);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-2)}p{margin:0 0 var(--space-md);color:var(--text);&:last-child{margin-bottom:0}}small{font-size:var(--font-sm);color:var(--text-2)}b,strong{font-weight:var(--fw-semibold)}code,pre{font-family:var(--font-label);font-size:.92em;background:var(--surface-2);border-radius:var(--radius-sm)}code{padding:.15em .4em}pre{padding:var(--space-md);overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md);code{background:none;padding:0}}hr{border:none;border-top:1px solid var(--divider);margin:var(--space-lg) 0}a{color:var(--primary);text-decoration:none;transition:color var(--transition);&:hover{color:var(--primary-shade);text-decoration:underline}&:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}}ol,ul{margin:0 0 var(--space-md);padding-left:1.3em;color:var(--text);li{margin-bottom:var(--space-xs)}li:last-child,ol,ul{margin-bottom:0}ol,ul{margin-top:var(--space-xs)}}ul{list-style:disc}ol{list-style:decimal}table{width:100%;border-collapse:collapse;font-size:var(--font-sm);color:var(--text)}caption{margin-bottom:var(--space-sm);font-size:var(--font-sm)}caption,th{text-align:left;color:var(--text-2)}th{font-weight:var(--fw-semibold);border-bottom:1px solid var(--border);white-space:nowrap}td,th{padding:var(--space-sm) var(--space-md)}td{border-bottom:1px solid var(--border-subtle)}tbody tr{transition:background var(--transition);&:hover{background:var(--hover)}}form{display:block}fieldset{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-md);margin:0 0 var(--space-md);min-width:0}legend{padding:0 var(--space-xs)}label,legend{font-weight:var(--fw-semibold);font-size:var(--font-sm);color:var(--text-2)}label{display:block;margin-bottom:var(--space-xs)}input,select,textarea{display:block;width:100%;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border-input);border-radius:var(--radius-md);padding:.55em .75em;margin:0 0 var(--space-md);transition:border-color var(--transition),box-shadow var(--transition);&:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--focus)}&:disabled{background:var(--surface-2);color:var(--text-3);cursor:not-allowed;opacity:.75}&::placeholder{color:var(--text-3);opacity:1}}textarea{resize:vertical;min-height:6em;line-height:1.5}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:2.2em;background-repeat:no-repeat;background-position:right .7em center;background-size:12px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%236b7280' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");cursor:pointer}input[type=checkbox],input[type=radio]{display:inline-block;width:auto;margin:0 var(--space-xs) 0 0;accent-color:var(--primary);cursor:pointer}button{font:inherit;font-weight:var(--fw-semibold);font-size:var(--font-sm);color:var(--text);background:var(--surface-2);border:1px solid transparent;border-radius:var(--radius-md);padding:.6em 1.1em;cursor:pointer;transition:background var(--transition),border-color var(--transition),color var(--transition),transform var(--transition);-webkit-appearance:none;&:hover{background:var(--hover)}&:active{transform:translateY(1px)}&:focus-visible{outline:none;box-shadow:0 0 0 3px var(--focus)}&:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}&.primary{background:var(--primary);color:var(--on-primary);&:hover{background:var(--primary-shade)}}&.ghost{background:transparent;border-color:var(--border-strong);color:var(--text);&:hover{background:var(--hover)}}&.text{background:transparent;border-color:transparent;color:var(--primary);padding-left:.3em;padding-right:.3em;&:hover{background:transparent;color:var(--primary-shade);text-decoration:underline}}}.stack{display:flex;flex-direction:column;gap:var(--jot-spacing-md)}.stack.gap-sm{gap:var(--jot-spacing-sm)}.stack.gap-lg{gap:var(--jot-spacing-lg)}.cluster{display:flex;flex-wrap:wrap;gap:var(--jot-spacing-sm);align-items:center}.sidebar{display:flex;flex-wrap:wrap;gap:var(--jot-spacing-md);>.side{flex-basis:240px;flex-shrink:0}>.main{flex:1 1;min-width:0}}.cover{display:flex;flex-direction:column;justify-content:center;min-height:100dvh;padding:var(--jot-spacing-md)}.center{max-width:var(--jot-max-width);margin-inline:auto;padding-inline:var(--jot-spacing-md)}.page-full{display:grid;grid-template-rows:auto 1fr auto;min-height:100dvh;>main{overflow-y:auto}}.page-holy-grail{display:grid;grid-template:"header header header" auto "nav    main   aside" 1fr "footer footer footer" auto/auto 1fr auto;min-height:100dvh;>header{grid-area:header}>nav{grid-area:nav}>main{grid-area:main;min-width:0}>aside{grid-area:aside}>footer{grid-area:footer}}@media (max-width:768px){.page-holy-grail{grid-template:"header" auto "nav" auto "main" 1fr "aside" auto "footer" auto/1fr}}.card{background:var(--jot-color-background-secondary);border:1px solid var(--jot-color-border);border-radius:var(--jot-radius-md);padding:var(--jot-spacing-md);>.card-header{font-weight:var(--jot-font-weight-semibold);margin-bottom:var(--jot-spacing-sm)}>.card-body,>.card-footer{color:var(--jot-color-text-muted)}>.card-footer{border-top:1px solid var(--jot-color-border);padding-top:var(--jot-spacing-sm);margin-top:var(--jot-spacing-sm);font-size:var(--jot-font-size-sm)}}.joy-of-training{.jot-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;&.flat{border-color:transparent;box-shadow:none;background:var(--surface-2)}&.interactive{cursor:pointer;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);&:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--border-strong)}}.media{line-height:0;background:var(--surface-2);img{display:block;width:100%;height:100%;object-fit:cover}}.body{padding:var(--space-md)}.title{margin:0 0 var(--space-xs);font-size:var(--font-md);font-weight:var(--fw-semibold);color:var(--text)}.subtitle{margin:0 0 var(--space-sm)}.content,.subtitle{font-size:var(--font-sm);color:var(--text-2)}.footer{padding:var(--space-sm) var(--space-md);border-top:1px solid var(--divider);display:flex;align-items:center;gap:var(--space-sm)}}.jot-modal{border:none;padding:0;border-radius:var(--radius-lg);background:var(--bg);color:var(--text);box-shadow:var(--shadow-lg);width:min(480px,calc(100vw - var(--space-lg) * 2));max-height:calc(100vh - var(--space-lg) * 2);&::-webkit-backdrop{background:var(--overlay-bg);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}&::backdrop{background:var(--overlay-bg);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}&[open]{animation:jot-modal-in .18s ease}&.sm{width:min(360px,calc(100vw - var(--space-lg) * 2))}&.lg{width:min(720px,calc(100vw - var(--space-lg) * 2))}.header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--divider);h2,h3{margin:0;font-size:var(--font-lg)}}.close{background:none;border:none;padding:var(--space-xs);font-size:var(--font-lg);line-height:1;color:var(--text-2);cursor:pointer;border-radius:var(--radius-sm);&:hover{color:var(--text);background:var(--hover)}}.body{padding:var(--space-lg);overflow-y:auto;font-size:var(--font-sm);color:var(--text-2)}.footer{padding:var(--space-md) var(--space-lg);border-top:1px solid var(--divider);display:flex;justify-content:flex-end;gap:var(--space-sm)}}.jot-alert,.jot-toast{--v-bg:var(--primary-bg);--v-border:var(--primary-glow);--v-text:var(--primary-text);--v-icon:var(--primary);&[data-variant=success]{--v-bg:var(--success-bg);--v-border:var(--success-border);--v-text:var(--success-text);--v-icon:var(--success)}&[data-variant=warning]{--v-bg:var(--warning-bg);--v-border:var(--warning-border);--v-text:var(--warning-text);--v-icon:var(--warning)}&[data-variant=danger]{--v-bg:var(--danger-bg);--v-border:var(--danger-border);--v-text:var(--danger-text);--v-icon:var(--danger)}}.jot-alert{display:flex;gap:var(--space-sm);align-items:flex-start;padding:var(--space-md);border-radius:var(--radius-md);background:var(--v-bg);border:1px solid var(--v-border);color:var(--v-text);font-size:var(--font-sm);.icon{width:18px;height:18px;border-radius:50%;background:var(--v-icon);flex-shrink:0;margin-top:2px}.content{strong{display:block;margin-bottom:2px;font-weight:var(--fw-semibold)}p{margin:0;opacity:.9}}}.jot-toast-region{position:fixed;bottom:var(--space-lg);right:var(--space-lg);z-index:1000;display:flex;flex-direction:column;gap:var(--space-sm);max-width:360px;pointer-events:none}.jot-toast{display:flex;gap:var(--space-sm);align-items:flex-start;padding:var(--space-md);border-radius:var(--radius-md);background:var(--bg);border:1px solid var(--border);border-left:3px solid var(--v-icon);box-shadow:var(--shadow-lg);color:var(--text);pointer-events:auto;animation:jot-toast-in .2s ease;&.leaving{animation:jot-toast-out .18s ease forwards}.icon{width:8px;height:8px;margin-top:6px;border-radius:50%;background:var(--v-icon);flex-shrink:0}.content{flex:1 1;strong{display:block;font-size:var(--font-sm);font-weight:var(--fw-semibold)}p{margin:2px 0 0;font-size:var(--font-xs);color:var(--text-2)}}.close{background:none;border:none;color:var(--text-3);font-size:var(--font-md);line-height:1;cursor:pointer;padding:0;&:hover{color:var(--text)}}}.jot-badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:2px 9px;border-radius:var(--radius-pill);font-size:var(--font-xs);font-weight:var(--fw-semibold);line-height:1.6;background:var(--surface-2);color:var(--text-2);white-space:nowrap;&[data-variant=primary]{background:var(--primary-bg);color:var(--primary-text)}&[data-variant=success]{background:var(--success-bg);color:var(--success-text)}&[data-variant=warning]{background:var(--warning-bg);color:var(--warning-text)}&[data-variant=danger]{background:var(--danger-bg);color:var(--danger-text)}&.dot:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}}.jot-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;overflow:visible;background:var(--primary);color:var(--on-primary);font-weight:var(--fw-semibold);font-size:var(--font-sm);flex-shrink:0;vertical-align:middle;img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}&.xs{width:22px;height:22px;font-size:10px}&.sm{width:30px;height:30px;font-size:var(--font-xs)}&.lg{width:56px;height:56px;font-size:var(--font-md)}&.xl{width:80px;height:80px;font-size:var(--font-lg)}.status{position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:50%;border:2px solid var(--bg);&.online{background:var(--success)}&.away{background:var(--warning)}&.offline{background:var(--text-4)}}}.jot-avatar-group{display:inline-flex;.jot-avatar{border:2px solid var(--bg);margin-left:-10px;&:first-child{margin-left:0}}}.jot-tabs{.list{display:flex;gap:var(--space-lg);border-bottom:1px solid var(--divider)}.tab{background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;padding:var(--space-sm) 0;font-size:var(--font-sm);font-weight:var(--fw-semibold);color:var(--text-2);cursor:pointer;transition:color var(--transition),border-color var(--transition);&:hover{color:var(--text)}&:focus-visible{outline:none;box-shadow:0 0 0 3px var(--focus);border-radius:var(--radius-sm)}&[aria-selected=true]{color:var(--primary);border-bottom-color:var(--primary)}}.panel{padding:var(--space-lg) 0;font-size:var(--font-sm);color:var(--text-2);&[hidden]{display:none}}}.jot-drawer{position:fixed;margin:0;inset:0 0 0 auto;height:100vh;max-height:100vh;width:min(400px,90vw);border:none;border-radius:0;background:var(--bg);color:var(--text);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;&::-webkit-backdrop{background:var(--overlay-bg);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}&::backdrop{background:var(--overlay-bg);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}&[open]{animation:jot-drawer-in-right .22s ease}&.left{inset:0 auto 0 0;animation-name:jot-drawer-in-left}&.bottom{inset:auto 0 0 0;width:100vw;max-width:100vw;height:min(60vh,90vh);border-radius:var(--radius-lg) var(--radius-lg) 0 0;animation-name:jot-drawer-in-bottom}.header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--divider);flex-shrink:0;h2,h3{margin:0;font-size:var(--font-lg)}}.close{background:none;border:none;padding:var(--space-xs);font-size:var(--font-lg);line-height:1;color:var(--text-2);cursor:pointer;border-radius:var(--radius-sm);&:hover{color:var(--text);background:var(--hover)}}.body{padding:var(--space-lg);overflow-y:auto;flex:1 1;font-size:var(--font-sm);color:var(--text-2)}.footer{padding:var(--space-md) var(--space-lg);border-top:1px solid var(--divider);display:flex;justify-content:flex-end;gap:var(--space-sm);flex-shrink:0}}.jot-menu{position:relative;display:inline-block;summary{list-style:none;&::-webkit-details-marker{display:none}}.trigger{display:inline-flex;align-items:center;gap:var(--space-xs);cursor:pointer;font-size:var(--font-sm);font-weight:var(--fw-semibold);color:var(--text);background:var(--surface-2);border:1px solid transparent;border-radius:var(--radius-md);padding:.55em 1em;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background var(--transition);&:hover{background:var(--hover)}}.list{position:absolute;top:calc(100% + 6px);left:0;min-width:190px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-xs);z-index:100}&.right .list{left:auto;right:0}&[open] .list{animation:jot-menu-in .12s ease}.item{display:flex;align-items:center;width:100%;text-align:left;background:none;border:none;padding:.55em var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-sm);font-weight:var(--fw-normal);color:var(--text);cursor:pointer;&:hover{background:var(--hover)}&.danger{color:var(--danger);&:hover{background:var(--danger-bg)}}}.divider{height:1px;background:var(--divider);margin:var(--space-xs) 0;border:none}}[data-tooltip]{position:relative;&:after{content:attr(data-tooltip);bottom:calc(100% + 7px);transform:translateX(-50%) translateY(4px);background:var(--inverse-surface);color:var(--on-inverse);font-size:var(--font-xs);font-weight:var(--fw-normal);line-height:1.3;padding:5px 9px;border-radius:var(--radius-sm);white-space:nowrap;max-width:240px;pointer-events:none;transition:opacity .15s ease,transform .15s ease}&:after,&:before{position:absolute;left:50%;opacity:0;z-index:200}&:before{content:"";bottom:calc(100% + 2px);transform:translateX(-50%);border:5px solid transparent;border-top:5px solid var(--inverse-surface);transition:opacity .15s ease}&:focus-visible:after,&:focus-visible:before,&:hover:after,&:hover:before{opacity:1;transform:translateX(-50%) translateY(0)}&[data-tooltip-pos=bottom]{&:after{bottom:auto;top:calc(100% + 7px);transform:translateX(-50%) translateY(-4px)}&:before{bottom:auto;top:calc(100% + 2px);border-top-color:transparent;border-bottom-color:var(--inverse-surface)}&:focus-visible:after,&:hover:after{transform:translateX(-50%) translateY(0)}}}}@keyframes jot-modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@keyframes jot-toast-in{0%{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}@keyframes jot-toast-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateX(16px)}}@keyframes jot-drawer-in-right{0%{transform:translateX(100%)}to{transform:none}}@keyframes jot-drawer-in-left{0%{transform:translateX(-100%)}to{transform:none}}@keyframes jot-drawer-in-bottom{0%{transform:translateY(100%)}to{transform:none}}@keyframes jot-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.dropzone{display:inline-block;margin:20px auto;padding:20px;border:1px solid var(--jot-color-border);border-radius:12px;text-align:center;opacity:.34;transition:opacity .15s ease,padding .2s ease,border-color .15s ease}.dropzone.hover{opacity:1;padding:32px 20px;background-color:var(--jot-color-background-hover);color:var(--jot-color-text);border-color:var(--trainer-color-cardio)}.drag-item{width:-moz-fit-content;width:fit-content;padding:12px;margin:4px 0;background-color:var(--jot-color-background-secondary);border:1px solid transparent}.drag-item:hover{background-color:var(--jot-color-background-hover);border:1px solid var(--jot-color-border-hover)}.set-drop-gap{height:4px;margin:2px 0;border-radius:4px;transition:height .2s ease,background-color .15s ease,margin .2s ease}.set-drop-gap.hover{height:28px;margin:6px 0;background-color:rgba(100,149,237,.25);border:1px dashed var(--trainer-color-cardio)}:root{--color-cardio:cornflowerblue;--color-resistance:#436596;--color-day:#ff9c05;--color-star:#f59e0b;--primary-color:orange;--secondary-color:lime}.base-layout{height:100%;width:100%;display:flex;flex-direction:column;align-items:center}.narrow{max-width:480px;width:100%}.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}#jol-app{display:flex;flex-direction:column;min-height:100vh;background-color:var(--jot-color-background)}.subnav-shell{height:44px;border-bottom:1px solid var(--divider)}#jol-main{flex:1 1;display:flex;justify-content:center;align-items:flex-start;background-position:0;background-repeat:no-repeat;background-size:cover;background-attachment:fixed}#jol-main.bg-2{background:linear-gradient(180deg,rgba(167,77,175,.03),rgba(0,0,0,.93)),linear-gradient(0deg,rgba(167,77,175,.03),rgba(0,0,0,.93)),url(/images/fitness-woman-1.jpg);background-color:var(--jot-color-background);background-position:0;background-repeat:no-repeat;background-size:cover;background-attachment:fixed}#jol-main.bg-3{background:linear-gradient(180deg,rgba(167,77,175,.03),rgba(0,0,0,.93)),linear-gradient(0deg,rgba(167,77,175,.03),rgba(0,0,0,.93)),url(/images/fitness-woman-2.jpg);background-color:var(--jot-color-background);background-position:0;background-repeat:no-repeat;background-size:cover;background-attachment:fixed}#jol-main.bg-4{background:linear-gradient(180deg,rgba(167,77,175,.03),rgba(0,0,0,.93)),linear-gradient(0deg,rgba(167,77,175,.03),rgba(0,0,0,.93)),url(/images/fitness-man-1.jpg);background-color:var(--jot-color-background);background-position:0;background-repeat:no-repeat;background-size:cover;background-attachment:fixed}#jol-main.bg-5{background:linear-gradient(180deg,rgba(167,77,175,.03),rgba(0,0,0,.93)),linear-gradient(0deg,rgba(167,77,175,.03),rgba(0,0,0,.93)),url(/images/fitness-woman-3.jpg);background-color:var(--jot-color-background);background-position:0;background-repeat:no-repeat;background-size:cover;background-attachment:fixed}#jol-main.nutrition{background:linear-gradient(180deg,rgba(167,77,175,.03),rgba(0,0,0,.93)),linear-gradient(0deg,rgba(167,77,175,.03),rgba(0,0,0,.93)),url(/images/fruit.jpg);background-color:var(--jot-color-background);background-position:0;background-repeat:no-repeat;background-size:cover;background-attachment:fixed}#jol-main>header{height:80px;padding:0 20px}#jol-app>footer{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:var(--jot-spacing-lg);gap:var(--jot-spacing-lg);padding:var(--jot-spacing-md) var(--jot-spacing-lg);background-color:var(--jot-color-background);border-top:1px solid var(--jot-color-border);font-size:var(--jot-font-size-sm);color:var(--jot-color-text-muted);.brand{font-weight:var(--jot-font-weight-semibold);color:var(--jot-color-text);letter-spacing:.02em}nav{display:flex;gap:var(--jot-spacing-md);justify-content:center;flex-wrap:wrap;a{color:var(--jot-color-text-muted);text-decoration:none;transition:color var(--jot-transition-base);&:hover{color:var(--jot-color-text)}}}}@media (max-width:600px){#jol-app>footer{grid-template-columns:1fr;text-align:center;gap:var(--jot-spacing-sm);nav{gap:var(--jot-spacing-sm)}}}.resistance-program{width:100%;max-width:550px;padding:0 10px;display:grid;grid-template-areas:"days . ." "days header ." "days desc group" "days setgrp group" "days setgrp group" "days setgrp group" "days setgrp group" ". . group";grid-template-columns:50px 1fr 50px;grid-gap:12px;gap:12px}.resistance-program h1,.resistance-program h2,.resistance-program h3{all:unset;margin:3px auto;color:var(--jot-color-text-muted)}.resistance-program button{background-color:unset;width:40px;height:40px;border-radius:20px;margin:3px}.resistance-program .resistance-days,.resistance-program .sets-select{display:flex;flex-direction:column}.resistance-program .sets-select button{border:1px solid #436596;color:#436596}.resistance-program .sets-select button.selected{background-color:#436596;color:white;font-weight:700;transform:scale(1.1)}.resistance-days button{border:1px solid #ff9c05;color:#ff9c05}.resistance-set{border-bottom:1px solid var(--jot-color-border);padding-bottom:20px;margin-bottom:20px}.resistance-days>button.selected{background-color:#ff9c05;color:white;font-weight:700;font-size:large}.resistance-set{min-height:200px}.resistance-set>.meta{display:flex;justify-content:space-between;margin-bottom:15px}.resistance-set .exercises{padding-bottom:10px;display:grid;grid-template-areas:"name name name" ". reps tempo";border-radius:10px}.resistance-set .exercises:nth-child(2n){background-color:var(--jot-color-background-hover)}.resistance-set .exercises .tempo{grid-area:tempo;width:40px;text-align:right;font-size:small}.resistance-set .exercises .reps{grid-area:reps;width:90px;text-align:center;font-size:small}.resistance-set .exercises .name{padding:10px 5px;grid-area:name;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.muscle-view{display:flex;flex-direction:row}.muscle-view>ul{width:120px;margin-right:15px;overflow-y:scroll;height:100%}.muscle-view>ul>li{padding:10px 20px}input,select{padding:10px 5px;border-radius:4px;border:1px solid var(--jot-color-border)}.button-group{margin:20px auto}.button-group>button{width:120px;border-radius:unset}.button-group>button.selected{transform:scale(1.1);background-color:#add8e6;border-color:var(--trainer-color-cardio)}.button-group>button:first-child{border-top-left-radius:5px;border-bottom-left-radius:5px;margin-left:auto}.button-group>button:last-child{border-top-right-radius:5px;border-bottom-right-radius:5px;margin-right:auto}.labelled-input{display:flex;flex-direction:column}.labelled-input>span{font-size:small;color:var(--jot-color-text-muted);padding:5px 2px}.labelled-input>input{width:100%}.labelled-input>.MuiAutocomplete-hasClearIcon .MuiAutocomplete-inputRoot{padding:unset}.labelled-input.box{flex-direction:row}form{display:flex;flex-direction:column;width:90%;margin:0 auto}form .MuiInput-root{width:100%}fieldset{background-color:unset;box-shadow:10px 10px 10px rgba(0,0,0,.1);margin-bottom:30px;border:none;border-radius:15px;padding:unset}input:active,input:focus,input:focus-visible{outline:none;background-color:var(--jot-color-surface-inset-hover)}#program-builder .set .ex-group>span>input:focus,.jol-autocomplete>*>input,input,select,textarea{background-color:var(--jot-color-background-secondary)!important;border:unset!important;border-radius:0!important;border-bottom:1px solid var(--jot-color-border)!important;color:var(--jot-color-text)!important;padding:.45rem!important;font-size:16px!important}::placeholder{color:var(--jot-color-text-muted)}.checkbox-with-label{display:flex;flex-direction:row;font-size:small;align-items:center}.checkbox-with-label>input[type=checkbox]{margin-right:8px}#exercise-tracker{overflow:hidden;display:grid;grid-template-areas:"title title" "exercise exercise" "wght reps" "button button";grid-gap:10px}#exercise-tracker>h1{grid-area:title;text-align:center}#exercise-tracker .exercise-combo{grid-area:exercise}#exercise-tracker .exercise-combo .MuiAutocomplete-endAdornment{background-color:var(--jot-color-background);height:100%;width:30px;top:0;display:flex;align-items:center}#exercise-tracker .exercise-combo input{padding:10px 5px}#exercise-tracker .exercise-combo~input{text-align:center}#exercise-tracker input[name=weight]{grid-area:wght}#exercise-tracker input[name=reps]{grid-area:reps}#exercise-tracker>button{grid-area:button;width:80px;margin:auto}#exercise-tracker input{width:100%}form.calories-burned label,form.calories-burned label>input{text-align:center}#program-builder{display:flex;flex-direction:column;min-width:600px;height:95%;overflow-y:scroll}#program-builder .add-day{width:400px;background-color:var(--trainer-color-danger);padding:20px;margin:5px;border:1px solid var(--jot-color-border)}#program-builder .set{padding:10px;background-color:var(--jot-color-background-secondary);display:flex;flex-direction:row;gap:10px;align-items:center;justify-content:space-between}#program-builder .set.invalid-type{box-shadow:5px 5px 0 darkred}#program-builder .set>ul{flex:1 1;display:flex;gap:5px;align-items:center;flex-direction:column;margin:0;padding:0}#program-builder .set .setGroup{padding-right:10px;font-weight:700;font-size:24px;color:var(--jot-color-text-muted);display:flex;flex-direction:column}#program-builder .set .setGroup>span{font-size:10px}#program-builder .set .ex-group{display:flex;justify-content:space-between;align-items:center;gap:7px;width:100%}#program-builder .set .ex-group>span{width:1fr}#program-builder .set .ex-group>span.exercise-name{width:196px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#program-builder .set .ex-group>span>input{border-color:rgba(0,0,0,0)!important;background-color:unset!important;width:100px}#program-builder .set .ex-group .del{border-radius:15px;border:none;color:var(--jot-color-text-muted);width:30px;height:30px;cursor:pointer;padding:0}form#add-exercise{display:grid;margin:20px auto}@media(max-width:600px){input,select{font-size:16px}#program-builder{min-width:unset}}#program-builder{gap:10px;padding:10px 6px}#program-builder .set{background:var(--jot-color-background-secondary);border:1px solid var(--jot-color-border);border-radius:14px;padding:12px;margin:12px 0;box-shadow:0 10px 26px rgba(0,0,0,.35)}#program-builder .set.invalid-type{box-shadow:0 0 0 2px rgba(139,0,0,.55),0 10px 26px rgba(0,0,0,.35)}#program-builder .set .setGroup{min-width:70px;padding-right:12px;gap:8px;color:var(--jot-color-text);font-size:18px;line-height:1}#program-builder .set .setGroup>span{font-size:11px;color:var(--jot-color-text-muted)}#program-builder .set>ul{gap:8px}#program-builder .set .ex-group{background:var(--jot-color-surface-inset);border:1px solid var(--jot-color-border);border-radius:12px;padding:10px;gap:10px;transition:background-color .15s ease,border-color .15s ease,transform .08s ease}#program-builder .set .ex-group:hover{background:var(--jot-color-surface-inset-hover);border-color:var(--jot-color-border-hover)}#program-builder .set .ex-group>span.exercise-name{width:240px;font-weight:700;letter-spacing:.15px;color:var(--jot-color-text)}#program-builder .set .ex-group>span:nth-of-type(3),#program-builder .set .ex-group>span:nth-of-type(4){font-size:12px;color:var(--jot-color-text-muted);background:var(--jot-color-background-secondary);border:1px solid var(--jot-color-border);padding:6px 10px;border-radius:999px;min-width:80px;text-align:center}#program-builder .set .ex-group>span:nth-of-type(2)>input{width:78px;text-align:center;border-radius:999px!important;border:1px solid var(--jot-color-border)!important;background-color:var(--jot-color-background-secondary)!important;padding:6px 10px!important}#program-builder .set .ex-group>span:nth-of-type(2)>input:focus{box-shadow:0 0 0 3px rgba(255,156,5,.18);border-color:rgba(255,156,5,.55)!important}#program-builder .set .ex-group .del{width:34px;height:34px;border-radius:10px;border:1px solid var(--jot-color-border);background:var(--jot-color-surface-inset);opacity:.55;transition:opacity .15s ease,transform .08s ease,background-color .15s ease,border-color .15s ease}#program-builder .set .ex-group:hover .del{opacity:.95}#program-builder .set .ex-group .del:hover{background:rgba(255,77,77,.12);border-color:rgba(255,77,77,.35);transform:translateY(-1px)}#program-builder .set .ex-group .del svg{width:18px;height:18px;fill:var(--jot-color-text)}#program-builder .set .ex-group .del:hover svg{fill:#ff4d4d}@media(max-width:700px){#program-builder .set{flex-direction:column;align-items:stretch}#program-builder .set .setGroup{flex-direction:row;align-items:center;justify-content:space-between;min-width:unset}#program-builder .set .ex-group{flex-wrap:wrap}#program-builder .set .ex-group>span.exercise-name{width:100%}}#jol-header>div{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:0 15px;background-color:var(--jot-color-background);width:100%;z-index:10;>h1{font-size:20px;color:var(--jot-color-text);text-shadow:2px 5px 2px rgba(252,136,28,.3)}>nav{display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--jot-color-text);a{color:var(--jot-color-text)}}}.hamburger{all:unset;display:none;cursor:pointer;font-size:26px;padding:6px;color:var(--jot-color-text);line-height:1}@media (max-width:600px){#jol-header>div{padding:0 10px;>h1{font-size:16px;white-space:nowrap}.hamburger{display:flex;align-items:center}>nav{display:none;&.open{display:flex;flex-direction:column;align-items:flex-start;gap:4px;position:fixed;top:85px;left:0;right:0;padding:12px 16px 20px;background-color:var(--jot-color-background);border-top:1px solid var(--jot-color-border);box-shadow:0 8px 16px rgb(0 0 0/40%);z-index:9;.dropmenu>.links{left:0;right:auto}a{padding:8px 4px;font-size:1rem}}}}}.dropmenu button.text{color:var(--jot-color-text);text-decoration:none}#trainer-nav{display:flex;align-items:center;gap:4px;padding-left:12px;border-left:1px solid var(--jot-color-border);a{color:var(--jot-color-text-muted);padding:4px 10px;border-radius:4px;font-size:.875rem;text-decoration:none;transition:background .15s,color .15s;&:hover{background:var(--jot-color-background-hover)}&.active,&:hover{color:var(--jot-color-text)}&.active{background:rgba(252,136,28,.25)}}}.calc-reps{scrollbar-width:none}.calc-reps::-webkit-scrollbar{display:none}.calc-reps>ol{margin:50px auto;display:grid;grid-template-columns:33% 33% 33%;grid-gap:15px}.repulator3000 h2{all:unset;font-weight:700;text-align:center}.wght{color:cornflowerblue;font-style:italic}.repulator3000{display:flex;flex-direction:column;padding:20px 40px;margin:0 0 80px}.rep-estimates{display:flex;flex-wrap:wrap;justify-content:space-between}.reps-for-weight:nth-child(odd){background-color:rgba(70,70,70,.65);border-radius:7px}.reps-for-weight{width:33%;display:grid;grid-template-columns:30px 10px 35px;grid-template-rows:40px 30px;grid-gap:2px;gap:2px;grid-template-areas:"numreps numreps numreps" "low separator high";justify-content:center;justify-items:center}.reps-for-weight>h3{grid-area:numreps}.reps-for-weight .low{grid-area:low}.reps-for-weight .separator{grid-area:separator}.reps-for-weight .high{grid-area:high}.repstimate:nth-child(odd){background:chocolate}.repstimate{width:100%;display:flex;justify-content:space-between;padding:10px}@media (max-width:799px){.repulator3000>form{width:100%;margin:0;padding:0}}.pw-with-preview{display:flex;flex-direction:row;border:1px solid darkgrey;>input{flex:1 1}.pw-toggle{border:none;border-bottom-left-radius:0;border-top-left-radius:0}}.register-form{display:flex;flex-direction:column}.register-form>*{margin-bottom:15px}.register-form>button{background-color:var(--jot-color-background-secondary);color:var(--jot-color-text);width:110px;margin:0 auto 30px}.logo{position:relative;height:400px;width:400px;padding:40px;border-radius:300px;background-color:orangered;color:white}.logo>span{font-family:Abril Fatface,cursive}.logo>h2{font-size:24px;font-family:Fascinate Inline,cursive}.logo .the{position:absolute;top:0;left:10px;color:white;font-family:Abril Fatface,cursive}.logo .joy{top:-95px;font-size:260px}.logo .joy,.logo .of{position:absolute;margin:0}.logo .of{top:190px;left:170px;font-size:44px;color:white;font-family:Abril Fatface,cursive}.logo .lifting{position:absolute;bottom:100px;line-height:0;right:35px;font-size:112px}.coming-soon{font-size:20px;font-family:Abril Fatface,cursive;color:white;text-shadow:2px 2px 2px rgb(252 136 28)}@media (max-width:800px){.logo{transform:scale(.8)}}.dropmenu{position:relative;display:flex;gap:10px}.dropmenu>.title{all:unset;margin:0;padding:10px;display:flex;align-items:center;justify-content:space-around;cursor:pointer}.dropmenu>.links,.dropmenu>.title{background-color:var(--jot-color-background)}.dropmenu>.links{display:none;flex-direction:column;align-items:flex-start;padding:8px;border:1px solid var(--jot-color-border);position:absolute;top:47px;min-width:180px;right:0;box-shadow:3px 3px 10px rgb(0 0 0/50%)}.dropmenu>.links.show{display:flex;z-index:100}.dropmenu .links>a{display:block;width:100%;padding:7px 10px;border-radius:4px;white-space:nowrap;box-sizing:border-box;&:hover{background:var(--jot-color-background-hover)}}.fade{width:100%;min-height:60vh;top:-25px;background-image:linear-gradient(0deg,transparent,var(--jot-color-background) 75%);z-index:1}.fade,.star-wars{position:relative}.star-wars{display:flex;justify-content:center;height:800px;color:#feda4a;font-size:500%;font-weight:600;letter-spacing:6px;line-height:150%;perspective:400px;text-align:justify}.crawl{position:relative;top:99999px;transform-origin:50% 100%;animation:crawl 60s linear}.crawl>.title{font-size:90%;text-align:center}.crawl>.title h1{margin:0 0 100px;text-transform:uppercase}@keyframes crawl{0%{top:-100px;transform:rotateX(20deg) translateZ(0)}to{top:-6000px;transform:rotateX(25deg) translateZ(-2500px)}}.jol-article{background-color:var(--jot-color-background);height:100%;width:100%;color:var(--jot-color-text);padding:30px}.jol-article h1{font-size:larger;color:#ff4500}.jol-article b{display:inline-block;transform:rotate(45deg)}@keyframes turn{0%{transform:rotate3d(0,0,0,0)}to{transform:rotate3d(1,1,0,1turn)}}.cube-container{width:200px;height:200px;perspective:600px;margin:40px auto}.cube-container .cube{width:100%;height:100%;position:relative;transform-style:preserve-3d;animation:turn 5s linear infinite}.cube-container .cube>.face{position:absolute;width:400px;height:400px;background-color:rgba(255,69,0,.7);display:flex;align-items:center;justify-content:space-around}.cube-container .cube>.face.front{transform:rotateY(0deg) translateZ(200px)}.cube-container .cube>.face.right{transform:rotateY(90deg) translateZ(200px)}.cube-container .cube>.face.back{transform:rotateY(180deg) translateZ(200px)}.cube-container .cube>.face.left{transform:rotateY(-90deg) translateZ(200px)}.cube-container .cube>.face.top{transform:rotateX(90deg) translateZ(200px)}.cube-container .cube>.face.bottom{transform:rotateX(-90deg) translateZ(200px)}.login-view{justify-content:space-around;max-width:350px}.login-view,form.login{display:flex;align-items:center;width:100%}form.login{flex-direction:column}form.login>*{width:100%;margin-bottom:10px}form.login>button{width:50%}form.login .login-status{border-radius:4px;padding:9px;text-align:center}form.login .login-status--loading{background-color:rgba(17,119,170,.6);border:2px solid #17a}form.login .login-status--error{background-color:rgba(170,17,34,.6);border:2px solid red}form.login .login-google{width:100%;background:#fff;color:#333;border:1px solid #ccc;margin-top:4px}form.login .login-google:hover:not(:disabled){background:#f5f5f5}.jol-modal{position:fixed;background-color:rgba(0,0,0,.5);display:flex;flex-direction:column;justify-content:center}.jol-link{color:var(--primary-color,purple)}.jol-link.secondary{color:var(--secondary-color,cornflowerblue)}.jol-link[href^=http]{position:relative;color:#6495ed}.jol-link.button{border:2px solid var(--primary-color,purple);padding:5px 7px;border-radius:5px;margin:3px;display:inline-block}.jol-link[href^=http]:after{content:"⇗";font-size:large;margin-left:4px;color:#3062bd;position:absolute;top:-6px}.grid-test,.list-detail{box-sizing:border-box;padding:20px;width:100vw;height:calc(100vh - 100px);display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(85px,250px) 1fr}.grid-test>*,.list-detail>*{border-radius:7px;text-shadow:1px 1px 1px black;display:flex;padding:15px}.grid-test>header,.list-detail>header{grid-column-start:1;grid-column-end:3;text-align:center;background-color:cornflowerblue}.grid-test>aside,.list-detail>.list-slot{height:100%;padding-bottom:20px;overflow:scroll}.grid-test>footer,.list-detail>footer{grid-column-start:1;grid-column-end:3;background-color:burlywood}@media screen and (max-width:768px){.list-detail{padding:8px;grid-template-columns:1fr;height:auto;overflow:visible;width:100%}.list-detail>*{padding:8px}.list-detail>.list-slot{height:auto;overflow:visible}.list-detail>footer,.list-detail>header{grid-column-end:2}}.carousel{box-sizing:border-box;border:1px solid #ff4500;height:800px;padding:5px 0;display:flex;flex-direction:row;gap:40px;overflow-x:scroll;scroll-snap-type:x mandatory}.carousel>.card{box-sizing:border-box;scroll-snap-align:center;min-width:450px;height:100%;border:1px solid #6495ed}body{min-height:100%;max-height:max-content}.landing-page{display:flex;flex-direction:column;height:100%;width:100%;margin:0;padding:0}.landing-page .hero{position:relative;background-image:url(/_next/static/media/fitness-woman-1.5d51424a.jpg);background-size:cover;min-height:500px;max-width:1200px;width:100%;margin:0 auto;>h1{position:absolute;text-align:center;bottom:0;right:75px;font-size:34px;text-shadow:2px 1px 10px black;>em{color:coral;&:first-of-type{display:block}}}}.landing-page .hero:before{width:100%;height:100%;position:absolute;top:0;content:" ";background:radial-gradient(circle,rgba(2,0,36,.007462359943977592) 0,rgba(3,1,49,1) 81%,rgba(3,3,52,1) 100%,rgba(0,212,255,0) 0)}.jol-card>:not(img){margin:0 20px}.jol-card{border-top-left-radius:20px;border-top-right-radius:20px;overflow:hidden;background-color:var(--jot-color-background-secondary);flex-direction:column;display:flex;gap:25px;padding-bottom:25px;&:hover{transform:scale(1.05)}>img{width:100%;height:400px;object-fit:cover}&.small{border-radius:10px;display:grid;padding:0;grid-gap:7px;gap:7px;grid-template-areas:"image title" "image body";>img{grid-area:image;width:90px;height:100%}>.heading{grid-area:title;margin-top:10px}>p{grid-area:body;margin-bottom:10px}}}.lp-wrap{max-width:1180px;margin:0 auto;padding:0 40px}.lp-eyebrow{font-family:var(--font-label);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--text-3)}.lp-accent{color:var(--primary)}.lp-sec-head{max-width:640px}.lp-sec-head h2{font-family:var(--font-display);font-weight:400;font-size:clamp(32px,4.2vw,52px);letter-spacing:-1.4px;line-height:1.02;margin:14px 0 0}.lp-sec-head h2 em{font-style:italic;color:var(--primary)}.lp-sec-head p{font-size:17px;line-height:1.55;color:var(--text-2);margin-top:18px}.lp-btn{font-family:var(--font-label);font-size:12px;letter-spacing:1.5px;text-transform:uppercase;padding:15px 26px;border-radius:var(--radius-pill);cursor:pointer;border:1px solid var(--text);background:transparent;color:var(--text);display:inline-flex;align-items:center;gap:9px;transition:transform .16s ease,background .2s,color .2s;white-space:nowrap;text-decoration:none}.lp-btn:hover{transform:translateY(-2px)}.lp-btn-solid{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.lp-btn-solid:hover{box-shadow:0 12px 30px var(--primary-glow)}.lp-btn-ghost{border-color:var(--border-strong);color:var(--text)}.lp-btn-ink{background:var(--inverse-surface);color:var(--on-inverse);border-color:var(--inverse-surface)}[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1)}[data-reveal][data-revealed]{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none}}@keyframes lp-pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes lp-ring{0%{transform:scale(1);opacity:.7}to{transform:scale(1.8);opacity:0}}@keyframes lp-caret{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes lp-wave{0%,to{transform:scaleY(.28)}50%{transform:scaleY(1)}}@keyframes lp-scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.program-deets{.program-header{display:flex;flex-direction:row;gap:12px;align-items:center}}@media screen and (max-width:600px){.program-deets{.program-header{flex-direction:column;gap:8px;align-items:unset;>*{width:100%}}}.bodypart-filter{input[type=checkbox]{width:30px;height:30px}label{display:flex;align-items:center}}}.header_header__3XWLR{position:-webkit-sticky;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:color-mix(in srgb,var(--bg) 82%,transparent);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}.header_header__3XWLR.header_scrolled__D_hfd{border-bottom-color:var(--divider)}.header_inner__OWAT3{display:flex;align-items:center;justify-content:space-between;height:74px;padding:0 24px}.header_brand__U_Ptu{font-family:var(--font-display);font-size:26px;letter-spacing:-.5px;text-decoration:none;color:var(--text);flex-shrink:0;span{color:var(--primary)}}.header_nav__pVN_D{display:flex;align-items:center;gap:4px;flex:1 1;padding:0 32px;a{font-size:14px;color:var(--text-2);text-decoration:none;transition:color .15s;padding:4px 10px;&:hover{color:var(--text)}}}.header_actions__C6M3M{display:flex;align-items:center;gap:8px;flex-shrink:0}.header_ctaPlaceholder__U4UDn{width:160px;height:34px;visibility:hidden}.header_signIn__USxCe{font-family:var(--font-label);font-size:12px;letter-spacing:1px;color:var(--text-2);text-decoration:none;transition:color .15s;&:hover{color:var(--text)}}.header_hamburger__DbSW0{all:unset;display:none;cursor:pointer;font-size:26px;padding:6px;color:var(--text);line-height:1}@media (max-width:600px){.header_hamburger__DbSW0{display:flex;align-items:center}.header_ctaPlaceholder__U4UDn{width:auto;min-width:60px}.header_nav__pVN_D{display:none;padding:0;&.header_open__5eOXo{display:flex;flex-direction:column;align-items:flex-start;gap:4px;position:fixed;top:74px;left:0;right:0;padding:12px 16px 20px;background:color-mix(in srgb,var(--bg) 95%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--divider);box-shadow:0 8px 16px rgb(0 0 0/20%);z-index:49}}}