/*! tailwindcss v4.2.1 | 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)))){*,:before,:after,::backdrop{--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-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}}}@layer theme{:root,:host{--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;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{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}html,:host{-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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{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}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.\!start{inset-inline-start:var(--spacing)!important}.start{inset-inline-start:var(--spacing)}.\!end{inset-inline-end:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.table-row{display:table-row}.h-8{height:calc(var(--spacing) * 8)}.h-11{height:calc(var(--spacing) * 11)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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,)}.grayscale{--tw-grayscale:grayscale(100%);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,)}.invert{--tw-invert:invert(100%);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,)}.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,)}}:root{--navy:#123e53;--blue:#1688be;--ink:#183544;--muted:#72828b;--line:#e6ecef;--soft:#f4f8fa;--orange:#f4a523}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#f5f8f9;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);z-index:10;background:#fff;flex-direction:column;width:244px;padding:20px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand{justify-content:center;align-items:center;height:104px;margin-bottom:24px;display:flex;overflow:hidden}.brand img{object-fit:cover;object-position:center;width:185px;height:132px}nav{flex-direction:column;gap:6px;display:flex}.nav-item{color:#6e7b82;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:13px;padding:13px 16px;font-weight:650;display:flex}.nav-item span{color:#8ba0aa;width:20px;font-size:18px}.nav-item.active{color:#176f99;background:#e7f3f8}.nav-item.active span{color:#1688be}.sidebar-bottom{margin-top:auto}.support{text-align:center;background:linear-gradient(145deg,#edf7fa,#f7fbfc);border-radius:12px;flex-direction:column;align-items:center;gap:5px;padding:18px;display:flex}.support-icon{width:34px;height:34px;color:var(--blue);background:#fff;border-radius:50%;place-items:center;font-weight:800;display:grid;box-shadow:0 4px 12px #b8dbe866}.support strong{margin-top:3px;font-size:13px}.support small{color:var(--muted);font-size:11px}.support button{color:#18769f;background:#fff;border:1px solid #badce8;border-radius:7px;margin-top:7px;padding:7px 11px;font-size:11px;font-weight:700}.support-email{color:#537681;overflow-wrap:anywhere;max-width:100%;font-size:9px;text-decoration:none}.support-manager{color:#294f60;font-size:10px;font-weight:750}.support-contact{color:#18769f;background:#fff;border:1px solid #badce8;border-radius:7px;margin-top:5px;padding:7px 11px;font-size:11px;font-weight:700;text-decoration:none}.support-contact:hover,.support-email:hover{color:#0f5e80}.logout{color:#87949a;background:0 0;border:0;width:100%;padding:19px 10px 4px;font-size:12px}.workspace{width:calc(100% - 244px);margin-left:244px}.topbar{border-bottom:1px solid var(--line);z-index:8;background:#fff;justify-content:flex-end;align-items:center;height:76px;padding:0 4.3%;display:flex;position:sticky;top:0}.mobile-brand{display:none}.role-switch{background:#eff3f5;border-radius:9px;margin-right:auto;padding:4px;display:flex}.role-switch button{color:#7d8a91;background:0 0;border:0;border-radius:7px;padding:8px 15px;font-size:12px;font-weight:700}.role-switch button.selected{color:#156f98;background:#fff;box-shadow:0 2px 7px #1e536b18}.user{align-items:center;gap:10px;font-size:12px;display:flex}.user strong,.user small{display:block}.user small{color:#89959b;margin-top:2px}.user>span{color:#8a969c;margin-left:4px}.bell{color:#78909b;background:0 0;border:0;margin-right:8px;font-size:20px;position:relative}.bell i{background:#f59e22;border:1px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;top:1px;right:3px}.avatar{color:#fff;background:linear-gradient(135deg,#237ca0,#10394e);border-radius:50%;place-items:center;width:39px;height:39px;font-size:11px;font-weight:800;display:grid}.avatar.small{flex:none;width:36px;height:36px}.content{max-width:1300px;margin:auto;padding:42px 4.3% 64px}.welcome{justify-content:space-between;align-items:end;margin-bottom:30px;display:flex}.eyebrow,.section-kicker{color:#849198;letter-spacing:1.5px;margin:0 0 8px;font-size:10px;font-weight:800}.welcome h1{color:#173b4d;letter-spacing:-.8px;margin:0;font-size:30px}.welcome h1 span{font-size:23px}.welcome p:not(.eyebrow){color:#77878f;margin:7px 0 0;font-size:13px}.primary{color:#fff;background:linear-gradient(135deg,#1c8fc0,#15739e);border:0;border-radius:8px;padding:13px 18px;font-size:12px;font-weight:750;box-shadow:0 7px 16px #167aa02b}.stats-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px;display:grid}.stat{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:flex-start;gap:17px;min-height:130px;padding:24px;display:flex;position:relative;overflow:hidden;box-shadow:0 6px 25px #204c6008}.stat:after{content:"";opacity:.045;background:currentColor;border-radius:50%;width:120px;height:120px;position:absolute;top:-65px;right:-65px}.stat-icon{width:38px;height:38px;color:inherit;background:currentColor;border-radius:9px;place-items:center;font-weight:900;display:grid}.stat.blue{color:#1688be}.stat.violet{color:#785bc6}.stat.orange{color:#e99b1f}.stat>div:last-child{flex:1}.stat small{color:#7f8d94;letter-spacing:1px;font-size:9px;font-weight:800}.stat strong{color:#173b4d;margin-top:4px;font-size:28px;line-height:1.15;display:block}.stat strong em{margin-left:2px;font-size:15px;font-style:normal}.stat p{color:#93a0a6;margin:3px 0 0;font-size:10px}.bar{background:#edf0f3;border-radius:10px;height:4px;margin-top:9px;overflow:hidden}.bar i{background:currentColor;border-radius:10px;min-width:4px;height:100%;display:block}.dashboard-grid,.trainer-grid{grid-template-columns:1.2fr 1fr;gap:18px;margin-bottom:22px;display:grid}.panel,.booking-panel{border:1px solid var(--line);background:#fff;border-radius:12px;padding:24px;box-shadow:0 8px 28px #18394a08}.panel-head{justify-content:space-between;align-items:flex-start;display:flex}.panel h2,.booking-panel h2{color:#183d50;margin:0;font-size:17px}.status{color:#2a9b61;background:#e9f7ef;border-radius:20px;padding:5px 9px;font-size:9px;font-weight:800}.lesson-time{align-items:center;gap:15px;margin:22px 0;display:flex}.date-tile{color:#187ba5;background:#e9f4f8;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.date-tile b{font-size:23px;line-height:1}.date-tile span{letter-spacing:1px;font-size:8px;font-weight:800}.lesson-time strong{font-size:16px}.lesson-time p{color:#6f8088;margin:5px 0;font-size:11px}.lesson-time small{color:#95a1a7;font-size:10px}.instructor{border-top:1px solid var(--line);align-items:center;gap:10px;padding-top:14px;display:flex}.instructor div:nth-child(2){flex-direction:column;display:flex}.instructor small{color:#98a3a8;letter-spacing:1px;font-size:8px}.instructor strong{font-size:11px}.instructor button,.link-button{color:#167ca8;background:0 0;border:0;margin-left:auto;font-size:10px;font-weight:750}.goal-body{align-items:center;gap:23px;margin-top:24px;display:flex}.ring{background:conic-gradient(#2187b1 var(--progress),#edf2f4 0);border-radius:50%;flex:none;place-items:center;width:112px;height:112px;display:grid;position:relative}.ring:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:9px}.ring>div{z-index:1;text-align:center}.ring strong,.ring small{display:block}.ring strong{font-size:22px}.ring small{color:#89979d;font-size:8px}.goal-body h3{margin:0 0 6px;font-size:14px}.goal-body p{color:#78888f;margin:0 0 11px;font-size:10px;line-height:1.6}.goal-body>div>small{color:#9aa5aa;font-size:8px}.booking-panel{padding:28px}.booking-title{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.hours{color:#829097;background:#f2f6f7;border-radius:7px;padding:9px 12px;font-size:10px}.hours b{color:#295063;margin-left:8px}.step{color:#536b77;align-items:center;gap:9px;margin:18px 0 10px;font-size:11px;font-weight:750;display:flex}.step b{color:#1683b1;background:#e5f2f7;border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.duration-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.duration-row button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:9px;padding:13px;position:relative}.duration-row button.active{background:#f2fafd;border-color:#1888b6;box-shadow:inset 0 0 0 1px #1888b6}.duration-row strong,.duration-row small{display:block}.duration-row strong{color:#284d5f;font-size:12px}.duration-row small{color:#95a1a7;margin-top:3px;font-size:9px}.week-nav{justify-content:center;align-items:center;gap:20px;margin:8px 0;display:flex}.week-nav strong{font-size:11px}.week-nav button{color:#78909b;background:0 0;border:0;font-size:18px}.day-row{grid-template-columns:repeat(5,1fr);gap:7px;margin-bottom:10px;display:grid}.day-row button{border:1px solid var(--line);color:#7f8d94;background:#fff;border-radius:8px;padding:8px}.day-row span,.day-row b{display:block}.day-row span{font-size:9px}.day-row b{font-size:13px}.day-row button.active{color:#fff;background:#1685b2;border-color:#1685b2}.slots{grid-template-columns:repeat(5,1fr);gap:7px;display:grid}.slots button{color:#315565;background:#fbfdfd;border:1px solid #dfe8eb;border-radius:8px;padding:10px 5px}.slots span,.slots small{display:block}.slots span{font-size:12px;font-weight:750}.slots small{color:#55a679;margin-top:3px;font-size:7px}.slots button.active{color:#147ca8;background:#eaf7fb;border-color:#1888b6;box-shadow:inset 0 0 0 1px #1888b6}.booking-footer{background:#f4f8f9;border-radius:9px;justify-content:space-between;align-items:center;margin-top:20px;padding:16px;display:flex}.booking-footer div span,.booking-footer div strong{display:block}.booking-footer div span{color:#8b999f;text-transform:uppercase;letter-spacing:1px;font-size:8px;font-weight:800}.booking-footer div strong{margin-top:4px;font-size:11px}.booking-footer .primary{padding:11px 16px}.rule-note{text-align:right;color:#72a189;margin:8px 2px 0;font-size:8px}.trainer-grid{grid-template-columns:1.15fr 1fr}.agenda-row{border-bottom:1px solid var(--line);grid-template-columns:43px 2px 36px 1fr auto;align-items:center;gap:12px;padding:16px 0;display:grid}.agenda-row>div:first-child b,.agenda-row>div:first-child span{font-size:10px;display:block}.agenda-row>div:first-child span{color:#9aa5aa;margin-top:3px}.agenda-row>i{background:#248bb5;border-radius:2px;height:38px}.agenda-row div:nth-child(4) strong,.agenda-row div:nth-child(4) small{display:block}.agenda-row div:nth-child(4) strong{font-size:11px}.agenda-row div:nth-child(4) small{color:#929fa4;margin-top:4px;font-size:9px}.student-row{border-bottom:1px solid var(--line);grid-template-columns:36px 1fr auto;align-items:center;gap:11px;padding:13px 0;display:grid}.student-row>div:nth-child(2) strong{font-size:11px}.student-row .bar{color:#288cb5}.student-row>span{color:#8b989e;font-size:9px}.student-row>span b{color:#285063}.add-student{color:#167ca8;background:#f5fbfd;border:1px dashed #a9cddc;border-radius:8px;width:100%;margin-top:14px;padding:10px;font-size:10px;font-weight:750}.modal-backdrop{z-index:30;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#092434aa;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.payment-modal{background:#fff;border-radius:16px;width:min(440px,100%);padding:32px;position:relative;box-shadow:0 25px 70px #00162155}.close{color:#8c999f;background:0 0;border:0;font-size:25px;position:absolute;top:13px;right:17px}.secure{color:#21905a;background:#e5f6ed;border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:15px;font-weight:900;display:grid}.payment-modal h2{margin:0 0 6px}.payment-modal>p{color:#7d8c93;font-size:11px}.payment-summary{background:#f4f8f9;border-radius:9px;justify-content:space-between;margin:20px 0;padding:14px;display:flex}.payment-summary span{font-size:11px}.payment-summary strong{color:#167ca8}.payment-modal label{color:#78878e;margin-bottom:12px;font-size:9px;font-weight:750;display:block}.payment-modal input{color:#315160;border:1px solid #dce5e9;border-radius:8px;outline:none;width:100%;margin-top:6px;padding:12px;display:block}.payment-modal input:focus{border-color:#1888b6}.card-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.pay{width:100%;margin-top:4px}.payment-note{text-align:center;color:#8b989e;margin-top:10px;font-size:8px;display:block}.toast{z-index:40;color:#fff;background:#163f50;border-radius:9px;padding:14px 18px;font-size:11px;animation:.25s ease-out slideIn;position:fixed;bottom:24px;right:24px;box-shadow:0 14px 40px #0a273855}@keyframes slideIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}@media (width<=900px){.sidebar{display:none}.workspace{width:100%;margin-left:0}.mobile-brand{width:100px;height:54px;margin-right:auto;display:block;overflow:hidden}.mobile-brand img{object-fit:cover;width:100px;height:70px}.role-switch{margin-right:14px}.content{padding:28px 20px}.stats-grid,.dashboard-grid,.trainer-grid{grid-template-columns:1fr}.topbar{padding:0 20px}.user>div:not(.avatar),.user>span{display:none}}@media (width<=620px){.welcome{flex-direction:column;align-items:flex-start;gap:18px}.welcome .primary{width:100%}.topbar{flex-wrap:wrap;height:auto;min-height:68px;padding:7px 14px}.role-switch{order:3;width:100%;margin:4px 0 0}.role-switch button{flex:1}.stats-grid{gap:10px}.duration-row{grid-template-columns:1fr}.day-row{gap:4px}.slots{grid-template-columns:repeat(2,1fr)}.booking-title{align-items:flex-start;gap:15px}.hours{display:none}.booking-footer{flex-direction:column;align-items:flex-start;gap:15px}.booking-footer .primary{width:100%}.goal-body{flex-direction:column;align-items:flex-start}.booking-panel{padding:20px}.agenda-row{grid-template-columns:42px 2px 34px 1fr}.agenda-row>.status{display:none}.user{margin-left:auto}.mobile-brand{margin-right:0}.trainer-grid{display:block}.trainer-grid>.panel{margin-bottom:12px}}.login-page{background:radial-gradient(circle at 15% 15%,#dff2f8 0,#0000 28%),radial-gradient(circle at 85% 80%,#fff0ce 0,#0000 26%),#f4f8f9;place-items:center;min-height:100vh;padding:28px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:18px;width:min(440px,100%);padding:34px;box-shadow:0 25px 70px #123e5320}.login-logo{justify-content:center;height:105px;margin:-10px 0 18px;display:flex;overflow:hidden}.login-logo img{object-fit:cover;width:210px;height:145px}.login-card h1{color:#173d50;margin:0 0 8px;font-size:26px}.login-card>p{color:#788890;margin:0 0 24px;font-size:12px;line-height:1.6}.login-card label,.student-modal label{color:#526c78;margin:0 0 13px;font-size:10px;font-weight:750;display:block}.login-card input,.student-modal input{color:#254a5c;background:#fff;border:1px solid #dbe5e9;border-radius:8px;outline:none;width:100%;margin-top:6px;padding:12px 13px;display:block}.login-card input:focus,.student-modal input:focus{border-color:#1688be;box-shadow:0 0 0 3px #1688be18}.login-button{width:100%;margin-top:4px}.login-button:disabled{opacity:.6;cursor:wait}.form-error{color:#b84b4b;background:#fff0f0;border-radius:8px;margin-bottom:12px;padding:10px 12px;font-size:10px}.demo-access{color:#66808c;background:#f2f8fa;border-radius:9px;flex-direction:column;gap:3px;margin-top:22px;padding:13px 15px;font-size:9px;display:flex}.demo-access strong{color:#285469;margin-bottom:2px}.loading-mark{letter-spacing:8px;color:#176f99;font-weight:800;animation:1s infinite alternate pulse}@keyframes pulse{50%{opacity:.5}}.space-badge{color:#1779a2;background:#e9f4f8;border-radius:7px;margin-right:auto;padding:8px 13px;font-size:10px;font-weight:800}.credential-notice{color:#247c50;background:#eaf8f1;border:1px solid #bfe8d2;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-bottom:18px;padding:14px 18px;font-size:10px;display:flex}.credential-notice b{font-size:11px}.credential-notice span{font-weight:750}.credential-notice small{color:#5b8b72;width:100%}.count-pill{color:#54727f;background:#eef5f7;border-radius:20px;padding:5px 10px;font-size:9px;font-weight:800}.student-directory{padding:26px}.empty-state{text-align:center;padding:50px 20px}.empty-state>div{color:#1885b1;background:#eaf5f9;border-radius:50%;place-items:center;width:48px;height:48px;margin:0 auto 12px;font-size:21px;display:grid}.empty-state h3{margin:0 0 6px;font-size:15px}.empty-state p{color:#84949b;margin:0 0 17px;font-size:10px}.students-table{margin-top:20px}.table-head,.table-row{grid-template-columns:1.25fr 1.4fr 1fr .55fr;align-items:center;gap:16px;display:grid}.table-head{color:#8e9aa0;letter-spacing:1px;padding:0 10px 8px;font-size:8px;font-weight:800}.table-row{border-top:1px solid var(--line);padding:13px 10px;font-size:10px}.student-identity{align-items:center;gap:10px;display:flex}.table-row>span{color:#6f828b}.table-row>div:nth-child(3)>b{font-size:9px}.table-row .bar{color:#2189b3}.student-modal{background:#fff;border-radius:16px;width:min(460px,100%);padding:30px;position:relative;box-shadow:0 25px 70px #00162155}.student-modal h2{margin:0 0 5px}.student-modal>p{color:#829198;margin:0 0 20px;font-size:10px}.student-modal label small{color:#99a4a9;font-weight:400}.panel-copy{color:#778991;margin:12px 0 20px;font-size:11px;line-height:1.65}.dashboard-student-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:118px;padding-right:4px;overflow-y:auto}.dashboard-student-scroll .table-row{min-height:59px}.student-scroll-hint{color:#7d9099;text-align:right;margin-top:8px;font-size:8px;display:block}@media (width<=720px){.table-head{display:none}.table-row{grid-template-columns:1fr auto}.table-row>span,.table-row>div:nth-child(3){grid-column:1/-1;padding-left:46px}.dashboard-student-scroll{-webkit-overflow-scrolling:touch;max-height:216px}.dashboard-student-scroll .table-row{min-height:108px}.student-scroll-hint{text-align:left}.login-card{padding:25px}.student-modal{padding:24px}}.mobile-nav{display:none}.slot-editor{margin-bottom:18px}.slot-editor>form{grid-template-columns:1.4fr 1fr 1fr auto;align-items:end;gap:12px;margin-top:18px;display:grid}.slot-editor label{color:#71838c;font-size:9px;font-weight:800}.slot-editor input{color:#294e60;background:#fff;border:1px solid #dce5e9;border-radius:8px;width:100%;margin-top:6px;padding:10px;display:block}.inline-success{color:#238352;background:#eaf7f0;border-radius:7px;margin-top:12px;padding:9px 12px;font-size:10px}.rule-note.left{text-align:left}.planning-list{padding:26px}.slot-list{margin-top:18px}.slot-card{border-top:1px solid var(--line);grid-template-columns:145px 1fr auto;align-items:center;gap:18px;padding:15px 8px;display:grid}.slot-date b,.slot-date span,.slot-card>div:nth-child(2) strong,.slot-card>div:nth-child(2) small{display:block}.slot-date b{text-transform:capitalize;font-size:12px}.slot-date span,.slot-card small{color:#87959b;margin-top:3px;font-size:9px}.slot-card>div:nth-child(2) strong{font-size:13px}.danger-button{color:#b94e4e;background:#fff7f7;border:1px solid #efcaca;border-radius:7px;padding:8px 10px;font-size:9px;font-weight:750}.primary.compact{padding:9px 14px}.profile-card{grid-template-columns:90px repeat(2,1fr);align-items:center;gap:24px;display:grid}.profile-avatar{color:#fff;background:linear-gradient(135deg,#208bb8,#123e53);border-radius:50%;grid-row:span 2;place-items:center;width:72px;height:72px;font-size:20px;font-weight:800;display:grid}.profile-card>div:not(.profile-avatar){border-bottom:1px solid var(--line);padding:12px 0}.profile-card span,.profile-card strong{display:block}.profile-card span{color:#89979d;margin-bottom:4px;font-size:9px}.profile-card strong{font-size:12px}@media (width<=900px){.mobile-nav{z-index:7;border-bottom:1px solid var(--line);background:#fff;padding:5px 10px;display:flex;position:sticky;top:0;overflow:auto}.mobile-nav .nav-item{white-space:nowrap;flex:1;justify-content:center;padding:9px 8px;font-size:10px}.mobile-nav .nav-item span{width:auto}.slot-editor>form{grid-template-columns:1fr 1fr}.profile-card{grid-template-columns:70px 1fr}.profile-avatar{grid-row:span 4}}@media (width<=600px){.slot-editor>form{grid-template-columns:1fr}.slot-card{grid-template-columns:1fr auto}.slot-card>div:nth-child(2){grid-column:1}.slot-card>button{grid-area:1/2/3}.profile-card{grid-template-columns:1fr}.profile-avatar{grid-row:auto}.mobile-nav .nav-item span{display:none}}.with-cart{padding-right:min(360px,31vw)}.notice-wide{margin-bottom:16px}.selected-slot{background:#f0f9fc;border-top-color:#b9deeb;border-radius:9px}.cart-added{color:#268357;background:#eaf7f0;border:1px solid #78bd9b;border-radius:7px;padding:8px 11px;font-size:9px;font-weight:800}.cart-panel{z-index:9;border-left:1px solid var(--line);background:#fff;width:330px;padding:24px;position:fixed;top:76px;bottom:0;right:0;overflow:auto;box-shadow:-12px 0 35px #173c4f10}.cart-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:16px;display:flex}.cart-title span{letter-spacing:1.4px;color:#8b989e;font-size:8px;font-weight:800}.cart-title h2{margin:3px 0 0;font-size:17px}.cart-title>b{color:#1683b1;font-size:19px}.cart-items>div{border-bottom:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:14px 0;display:grid}.cart-items strong,.cart-items small{display:block}.cart-items strong{text-transform:capitalize;font-size:10px}.cart-items small{color:#85949b;margin-top:3px;font-size:9px}.cart-items span{font-size:10px;font-weight:800}.cart-items button{color:#a1aaae;background:0 0;border:0;font-size:17px}.cart-total{justify-content:space-between;align-items:center;padding:18px 0 12px;font-size:11px;display:flex}.cart-total strong{font-size:16px}.checkout-button{width:100%}.cart-panel>small{text-align:center;color:#91a0a6;margin-top:9px;font-size:8px;display:block}.booked .status{justify-self:end}@media (width<=1100px){.with-cart{padding-bottom:320px;padding-right:4.3%}.cart-panel{width:auto;height:285px;top:auto;left:244px}.cart-items{gap:20px;display:flex;overflow:auto}.cart-items>div{min-width:220px}.cart-title{padding-bottom:10px}.cart-total{padding:10px 0}.checkout-button{float:right;width:auto}.cart-panel>small{text-align:left}}@media (width<=900px){.cart-panel{left:0}.with-cart{padding-bottom:330px}}@media (width<=600px){.cart-panel{height:315px;padding:18px}.checkout-button{float:none;width:100%}.with-cart{padding-bottom:355px}}.trainer-planning{padding-bottom:0}.trainer-calendar{margin-bottom:18px;padding:25px}.calendar-toolbar{justify-content:space-between;align-items:center;gap:20px;display:flex}.calendar-toolbar h2{margin:0;font-size:18px}.calendar-controls{align-items:center;gap:7px;display:flex}.calendar-controls>button{border:1px solid var(--line);color:#55717e;background:#fff;border-radius:7px;width:32px;height:32px;font-size:17px}.calendar-controls input{border:1px solid var(--line);color:#315263;border-radius:7px;padding:7px 9px}.view-toggle{background:#eef3f5;border-radius:8px;margin-left:8px;padding:3px;display:flex}.view-toggle button{color:#72838b;background:0 0;border:0;border-radius:6px;padding:7px 11px;font-size:9px;font-weight:800}.view-toggle button.active{color:#167da8;background:#fff;box-shadow:0 2px 7px #143c5015}.calendar-summary{border-top:1px solid var(--line);color:#73858e;align-items:center;gap:20px;margin-top:15px;padding:14px 0;font-size:9px;display:flex}.calendar-summary b{color:#294f61;margin-left:auto}.legend-dot{border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.legend-dot.available{background:#2ba06a}.legend-dot.reserved{background:#ec9b22}.calendar-grid{gap:10px;display:grid}.calendar-grid.week{grid-template-columns:repeat(5,minmax(145px,1fr));overflow-x:auto}.calendar-day{border:1px solid var(--line);background:#f9fbfc;border-radius:10px;min-width:0;overflow:hidden}.calendar-day>header{text-transform:capitalize;background:#eef5f7;justify-content:space-between;align-items:center;padding:11px 13px;display:flex}.calendar-day>header strong{font-size:10px}.calendar-day>header span{color:#7e8d94;font-size:9px}.calendar-slot{border-left:4px solid;border-radius:8px;grid-template-columns:52px 1fr auto;align-items:center;gap:10px;margin:8px;padding:11px;display:grid}.calendar-slot.available{background:#edf8f3;border-color:#2ba06a}.calendar-slot.reserved{background:#fff5e6;border-color:#ec9b22}.calendar-slot time{font-size:11px;font-weight:800}.calendar-slot time small{color:#84949b;margin-top:3px;font-size:8px;display:block}.calendar-slot>div strong,.calendar-slot>div span{display:block}.calendar-slot>div strong{font-size:10px}.calendar-slot>div span{color:#778990;margin-top:3px;font-size:8px}.calendar-slot>b{text-transform:uppercase;color:#66808a;font-size:8px}.calendar-grid.week .calendar-slot{grid-template-columns:1fr}.calendar-grid.week .calendar-slot>b{justify-self:start}.calendar-grid.week .calendar-slot time small{margin-left:4px;display:inline}.trainer-planning+.content{padding-top:18px}.trainer-planning+.content>.welcome{display:none}@media (width<=760px){.calendar-toolbar{flex-direction:column;align-items:flex-start}.calendar-controls{flex-wrap:wrap;width:100%}.calendar-grid.week{grid-template-columns:repeat(5,190px)}.calendar-slot{grid-template-columns:45px 1fr}.calendar-slot>b{grid-column:2}.calendar-summary{flex-wrap:wrap}.calendar-summary b{width:100%;margin-left:0}}.student-lessons-layout{grid-template-columns:300px 1fr;gap:18px;display:grid}.student-selector{height:max-content;padding:20px}.student-selector h2{margin:0 0 15px;font-size:17px}.student-selector>button{border:0;border-top:1px solid var(--line);text-align:left;color:#345767;background:#fff;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;width:100%;padding:12px 8px;display:grid}.student-selector>button.active{background:#eaf6fa;border-top-color:#0000;border-radius:8px}.student-selector>button strong,.student-selector>button small{display:block}.student-selector>button strong{font-size:10px}.student-selector>button small{color:#87969d;margin-top:3px;font-size:8px}.student-selector>button>span{color:#8da0a8;font-size:18px}.student-bookings{padding:24px}.managed-bookings{margin-top:18px}.managed-bookings article{border-top:1px solid var(--line);grid-template-columns:105px 1fr auto auto;align-items:center;gap:16px;padding:14px 8px;display:grid}.managed-bookings article.cancelled{opacity:.65;background:#f7f8f8}.managed-date b,.managed-date span,.managed-bookings article>div:nth-child(2) strong,.managed-bookings article>div:nth-child(2) small{display:block}.managed-date b{text-transform:capitalize;font-size:11px}.managed-date span,.managed-bookings article>div:nth-child(2) small{color:#87969d;margin-top:3px;font-size:8px}.managed-bookings article>div:nth-child(2) strong{font-size:11px}.cancelled-status{color:#75858c;background:#edf0f1;border-radius:20px;padding:5px 9px;font-size:8px;font-weight:800}.student-credit-banner{color:#815c18;background:linear-gradient(135deg,#fff4dc,#fffaf1);border:1px solid #f0d39a;border-radius:11px;align-items:center;gap:22px;margin:20px 4.3% 0;padding:15px 20px;display:flex}.student-credit-banner div{white-space:nowrap;align-items:baseline;gap:10px;display:flex}.student-credit-banner span{letter-spacing:1px;font-size:8px;font-weight:800}.student-credit-banner strong{font-size:22px}.student-credit-banner p{margin:0;font-size:10px;line-height:1.5}.student-credit-banner+.content{padding-top:22px}@media (width<=850px){.student-lessons-layout{grid-template-columns:1fr}.student-selector{gap:8px;display:flex;overflow:auto}.student-selector>.section-kicker,.student-selector>h2{display:none}.student-selector>button{border:1px solid var(--line);border-radius:8px;min-width:220px}.managed-bookings article{grid-template-columns:80px 1fr}.managed-bookings article>.status,.managed-bookings article>.cancelled-status,.managed-bookings article>.danger-button{grid-column:2;justify-self:start}.student-credit-banner{flex-direction:column;align-items:flex-start;gap:6px;margin:14px 20px 0}}.student-search-header{padding-bottom:0}.student-search-header+.content{padding-top:20px}.student-search-header>.welcome{margin-bottom:16px}.student-search{background:#fff;border:1px solid #cfdee4;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;width:min(570px,100%);padding:0 13px;display:grid;box-shadow:0 8px 24px #143b4e0b}.student-search>span{color:#6f8995;font-size:19px}.student-search input{color:#294e60;background:0 0;border:0;outline:0;padding:13px 11px}.student-search button{color:#6f818a;background:#eef3f5;border:0;border-radius:50%;place-items:center;width:25px;height:25px;display:grid}.student-search-header>small{color:#86969d;margin-top:8px;font-size:9px;display:block}.no-search-result{color:#87969d;padding:15px 4px;font-size:10px}.lesson-with-comments{flex-wrap:wrap}.lesson-comments{border-top:1px solid #e8edf2;flex:0 0 100%;margin-top:12px;padding-top:10px}.lesson-comments summary{color:#31566c;cursor:pointer;font-weight:700;list-style-position:inside}.comment-thread{gap:9px;margin:12px 0;display:grid}.no-comment{color:#7b8992;margin:0;font-size:.9rem}.comment{background:#f4f7f9;border-left:3px solid #55add5;border-radius:8px;padding:10px 12px}.comment.trainer{border-left-color:#f5ad3d}.comment>div{flex-wrap:wrap;align-items:baseline;gap:7px;display:flex}.comment strong{color:#274b60;font-size:.9rem}.comment span{color:#7b8992;font-size:.75rem}.comment p{white-space:pre-wrap;margin:6px 0 0}.comment-form textarea{resize:vertical;width:100%;min-height:76px;font:inherit;border:1px solid #ccd9e1;border-radius:9px;padding:10px}.comment-form>div{justify-content:flex-end;align-items:center;gap:12px;margin-top:8px;display:flex}.comment-form .primary{padding:9px 16px}.managed-bookings article{flex-wrap:wrap}.managed-bookings .lesson-comments{width:100%}.monthly-goal{color:#fff;background:linear-gradient(135deg,#244d63,#337995);margin-bottom:20px}.monthly-goal-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.monthly-goal .section-kicker{color:#aee3f3}.monthly-goal h2{color:#fff;margin:4px 0 0}.goal-percent{background:#ffffff26;border:1px solid #fff3;border-radius:999px;padding:8px 13px;font-weight:800}.monthly-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0 16px;display:grid}.monthly-values>div{background:#ffffff1a;border-radius:12px;padding:15px}.monthly-values small{color:#cbe8f1;letter-spacing:.06em;font-weight:700;display:block}.monthly-values strong{margin-top:6px;font-size:1.55rem;display:block}.monthly-values em{color:#cbe8f1;font-size:.9rem;font-style:normal;font-weight:600}.goal-bar{background:#ffffff2e;border-radius:99px;height:10px;overflow:hidden}.goal-bar i{border-radius:inherit;background:linear-gradient(90deg,#f5ad3d,#ffd173);height:100%;transition:width .3s;display:block}.monthly-goal>p{color:#d9edf4;margin:10px 0 0;font-size:.9rem}@media (width<=650px){.monthly-values{grid-template-columns:1fr}}.annual-chart{margin-bottom:20px;overflow:hidden}.chart-totals{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.chart-totals span{color:#657985;background:#f4f7f9;border-radius:9px;padding:7px 10px;font-size:.78rem}.chart-totals b{color:#274b60}.chart-legend{color:#5f737f;flex-wrap:wrap;gap:18px;margin:18px 0 10px;font-size:.82rem;font-weight:700;display:flex}.chart-legend span:before{content:"";border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.chart-legend .hours:before,.month-bars .hours{background:#54acd3}.chart-legend .registrations:before,.month-bars .registrations{background:#f5ad3d}.chart-legend .revenue:before,.month-bars .revenue{background:#6558bd}.bars-chart{border-bottom:1px solid #dce5ea;grid-template-columns:repeat(12,minmax(42px,1fr));gap:8px;height:290px;padding-top:30px;display:grid;position:relative;overflow-x:auto}.chart-grid{pointer-events:none;flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:30px 0 28px}.chart-grid i{border-top:1px dashed #e1e8ec;display:block}.month-group{z-index:1;text-align:center;grid-template-rows:1fr 24px;min-width:42px;display:grid}.month-bars{justify-content:center;align-items:flex-end;gap:3px;height:230px;display:flex}.month-bars i{border-radius:5px 5px 1px 1px;width:29%;min-height:2px;transition:height .35s,filter .2s;display:block;position:relative}.month-bars i:hover{filter:brightness(.9)}.month-bars i span{color:#536a77;white-space:nowrap;opacity:0;font-size:.62rem;font-style:normal;font-weight:700;transition:opacity .15s;position:absolute;top:-20px;left:50%;transform:translate(-50%)}.month-bars i:hover span{opacity:1}.month-group>b{color:#6a7c86;align-self:end;font-size:.72rem}@media (width<=800px){.annual-chart .panel-head{align-items:flex-start}.chart-totals{justify-content:flex-start}.bars-chart{grid-template-columns:repeat(12,54px)}}.student-record-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.delete-student-button{color:#b72f2f;cursor:pointer;background:#fff4f4;border:1px solid #d95050;border-radius:9px;padding:8px 11px;font-weight:750}.delete-student-button:hover{color:#fff;background:#b72f2f}.student-directory-tabs{flex-wrap:wrap;gap:8px;margin:18px 0 14px;display:flex}.student-directory-tabs button{color:#607985;cursor:pointer;background:#fff;border:1px solid #d8e4e9;border-radius:999px;padding:9px 14px;font-size:10px;font-weight:800}.student-directory-tabs button b{color:#31566c;background:#eef3f5;border-radius:50%;place-items:center;min-width:20px;height:20px;margin-left:6px;display:inline-grid}.student-directory-tabs button.active{color:#126f96;background:#eaf6fa;border-color:#1683b1}.student-directory-tabs button.active b{color:#fff;background:#1683b1}.archived-account-label{color:#697b83;background:#edf0f1;border-radius:999px;margin-top:6px;padding:5px 9px;font-size:8px;font-weight:800;display:inline-block}.cancellation-resolution{border-radius:9px;justify-content:space-between;align-items:center;gap:14px;margin:10px 0;padding:12px 14px;display:flex}.cancellation-resolution.credit{color:#805d1e;background:#fff7e6;border:1px solid #efd39b}.cancellation-resolution.refund{color:#285f79;background:#eef6fb;border:1px solid #c4deeb}.cancellation-resolution strong,.cancellation-resolution span,.cancellation-resolution small{display:block}.cancellation-resolution strong{font-size:10px}.cancellation-resolution span{margin-top:3px;font-size:9px;font-weight:750}.cancellation-resolution small{opacity:.8;margin-top:4px;font-size:8px}.cancellation-resolution button{color:#fff;white-space:nowrap;background:#207da6;border:0;border-radius:7px;padding:8px 11px;font-size:9px;font-weight:800}.cancellation-choice-dialog{color:#183d50;border:0;border-radius:16px;width:min(520px,100% - 28px);padding:28px;box-shadow:0 25px 75px #09243455}.cancellation-choice-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#092434aa}.cancellation-choice-dialog h2{margin:0 0 7px;font-size:20px}.cancellation-choice-dialog p{color:#31566c;text-transform:capitalize;margin:0 0 5px;font-size:12px;font-weight:800}.cancellation-choice-dialog>small{color:#788a92;margin-bottom:20px;font-size:10px;line-height:1.5;display:block}.cancellation-choice-dialog label{color:#5f747e;font-size:9px;font-weight:800;display:block}.cancellation-choice-dialog textarea{resize:vertical;color:#274e60;width:100%;min-height:76px;font:inherit;border:1px solid #d8e4e9;border-radius:9px;margin-top:7px;padding:11px;display:block}.cancellation-choice-buttons{grid-template-columns:1fr 1fr;gap:9px;margin-top:18px;display:grid}.cancellation-choice-buttons button{cursor:pointer;border:0;border-radius:9px;min-height:44px;padding:10px 12px;font-size:10px;font-weight:850}.cancellation-choice-buttons .credit-choice{color:#26764e;background:#eaf7f0}.cancellation-choice-buttons .refund-choice{color:#196c94;background:#e9f4fa}.cancellation-choice-buttons .back-choice{color:#667981;background:#f1f3f4;grid-column:1/-1}.cancellation-choice-buttons button:disabled{opacity:.55;cursor:wait}@media (width<=520px){.cancellation-choice-dialog{padding:22px}.cancellation-choice-buttons{grid-template-columns:1fr}.cancellation-choice-buttons .back-choice{grid-column:auto}}.cancellation-notifications{background:linear-gradient(135deg,#fffaf0,#fff);border:1px solid #e9c77c;border-radius:13px;margin-bottom:20px;padding:20px;box-shadow:0 8px 28px #7b5a1609}.cancellation-notifications-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.cancellation-notifications-head span{color:#a37622;letter-spacing:1.2px;font-size:8px;font-weight:850}.cancellation-notifications-head h2{color:#674a16;margin:4px 0 0;font-size:17px}.cancellation-notifications-head>b{color:#fff;background:#e09a22;border-radius:999px;padding:6px 10px;font-size:9px}.cancellation-notifications article{border-top:1px solid #f0dfba;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;padding:14px 4px;display:grid}.cancellation-notifications article.read{opacity:.65}.notification-mark{color:#a36500;background:#ffe7b8;border-radius:50%;place-items:center;width:32px;height:32px;font-size:16px;font-weight:900;display:grid}.cancellation-notifications article.unread .notification-mark{color:#fff;background:#e09a22}.cancellation-notifications article span{color:#a37622;letter-spacing:1px;font-size:7px;font-weight:850}.cancellation-notifications article h3{color:#4f4432;text-transform:capitalize;margin:3px 0;font-size:11px}.cancellation-notifications article p{color:#706451;margin:0;font-size:10px;font-weight:750}.cancellation-notifications article small{color:#8b7b62;margin-top:5px;font-size:8px;display:block}.cancellation-notifications article button{color:#87621d;white-space:nowrap;background:#fff;border:1px solid #d9b566;border-radius:8px;padding:8px 10px;font-size:8px;font-weight:850}@media (width<=650px){.cancellation-notifications article{grid-template-columns:34px 1fr}.cancellation-notifications article button{grid-column:2;justify-self:start}.cancellation-notifications-head{align-items:flex-start}}.reset-password-button{color:#176f96;cursor:pointer;background:#eef8fc;border:1px solid #278bb6;border-radius:9px;padding:8px 11px;font-weight:750}.reset-password-button:hover{color:#fff;background:#176f96}.bulk-cancel-button{color:#b45309;cursor:pointer;background:#fff7ed;border:1px solid #d97706;border-radius:9px;padding:8px 11px;font-weight:750}.bulk-cancel-button:hover{color:#fff;background:#b45309}.bulk-cancellation-dialog{width:min(620px,100vw - 28px)}.bulk-cancellation-list{gap:8px;max-height:310px;margin:16px 0;padding:4px;display:grid;overflow:auto}.bulk-cancellation-list label{cursor:pointer;background:#f8fbfc;border:1px solid #dbe6ea;border-radius:9px;align-items:center;gap:11px;padding:11px;display:flex}.bulk-cancellation-list input{accent-color:#167da8;flex:none;width:18px;height:18px}.bulk-cancellation-list span{color:#315263;font-size:12px;font-weight:700}@media (width<=620px){.bulk-cancel-button{width:100%}.bulk-cancellation-list{max-height:260px}.bulk-cancellation-dialog .cancellation-choice-buttons{grid-template-columns:1fr}}.student-modal:not(.edit-student-modal){grid-template-columns:minmax(210px,300px) minmax(280px,1fr);grid-auto-flow:row;align-items:start;column-gap:22px;width:min(880px,100%);max-height:calc(100vh - 36px);display:grid;overflow-y:auto}.student-modal:not(.edit-student-modal)>.section-kicker,.student-modal:not(.edit-student-modal)>h2{grid-column:1/-1}.student-modal:not(.edit-student-modal)>.student-photo-picker{text-align:center;grid-area:3/1/span 7;grid-template-columns:1fr;justify-items:center;margin:12px 0 0;position:sticky;top:0}.student-modal:not(.edit-student-modal)>.student-photo-picker .photo-actions{justify-content:center}.student-modal:not(.edit-student-modal)>label{grid-column:2;margin-bottom:9px}.student-modal:not(.edit-student-modal)>.form-error,.student-modal:not(.edit-student-modal)>.login-button{grid-column:2}.student-modal:not(.edit-student-modal)>.login-button{margin-top:3px}@media (width<=720px) and (pointer:coarse){.student-modal:not(.edit-student-modal){width:min(460px,100%);max-height:calc(100vh - 24px);display:block;overflow-y:auto}.student-modal:not(.edit-student-modal)>.student-photo-picker{margin:16px 0 18px;display:grid;position:static}.student-modal:not(.edit-student-modal)>.login-button{position:sticky;bottom:0;box-shadow:0 -10px 18px #fff}}.weekly-booking-panel{padding:24px}.weekly-booking-toolbar{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px;display:flex}.duration-selector{gap:7px;display:flex}.duration-selector button{color:#52717f;cursor:pointer;background:#f5fafb;border:1px solid #cfe0e6;border-radius:9px;padding:9px 16px;font-size:10px;font-weight:800}.duration-selector button.active{color:#fff;background:#167da8;border-color:#167da8}.week-navigation{align-items:center;gap:12px;display:flex}.week-navigation button{color:#167da8;cursor:pointer;background:#fff;border:1px solid #d3e0e5;border-radius:50%;width:34px;height:34px;font-size:21px}.week-navigation button:disabled{opacity:.35;cursor:not-allowed}.week-navigation strong{text-align:center;text-transform:capitalize;color:#315263;min-width:220px;font-size:11px}.mobile-day-tabs{display:none}.weekly-days{grid-template-columns:repeat(6,minmax(95px,1fr));gap:10px;display:grid}.weekly-day{text-align:center;min-width:0}.weekly-day header{text-transform:capitalize;border-bottom:1px solid #dbe7eb;margin-bottom:9px;padding:9px 5px}.weekly-day header strong,.weekly-day header span{display:block}.weekly-day header strong{color:#294e60;font-size:11px}.weekly-day header span{color:#819198;margin-top:3px;font-size:9px}.weekly-day>div{gap:8px;display:grid}.weekly-slot-wrap{gap:5px;display:grid}.weekly-slot{color:#164d65;cursor:pointer;background:#e6f6fb;border:0;border-radius:10px;width:100%;padding:12px 6px;box-shadow:inset 0 0 0 1px #caeaf4}.weekly-slot:hover{background:#d8f0f8}.weekly-slot.selected{color:#fff;box-shadow:none;background:#167da8}.weekly-slot strong,.weekly-slot small{display:block}.weekly-slot strong{font-size:14px}.weekly-slot small{margin-top:3px;font-size:8px}.weekly-no-slot{color:#a3afb4;padding:15px}.weekly-limit-message{color:#b45309;font-size:8px;font-weight:750;line-height:1.35}.weekly-booking-rule{color:#788b94;margin:18px 0 0;font-size:9px}.student-weekly-booking.with-cart{padding-right:344px}@media (width<=900px){.student-weekly-booking.with-cart{padding-right:28px}.weekly-booking-toolbar{flex-direction:column;align-items:flex-start}.week-navigation{justify-content:space-between;width:100%}.weekly-days{-webkit-overflow-scrolling:touch;grid-template-columns:repeat(5,minmax(118px,1fr));padding-bottom:8px;overflow-x:auto}}@media (width<=620px){.weekly-booking-panel{padding:17px}.duration-selector{width:100%}.duration-selector button{flex:1;min-height:44px;padding:9px 7px;font-size:11px}.week-navigation{border-top:1px solid #e4ecef;border-bottom:1px solid #e4ecef;justify-content:space-between;width:100%;padding:9px 0;display:flex}.week-navigation button{flex:none;width:42px;height:42px}.week-navigation strong{min-width:0;padding:0 7px;font-size:10px;line-height:1.4}.mobile-day-tabs{grid-template-columns:repeat(3,1fr);gap:7px;margin:2px 0 16px;display:grid}.mobile-day-tabs button{color:#53717e;background:#f7fafb;border:1px solid #d5e4e9;border-radius:9px;min-height:52px;padding:7px 4px}.mobile-day-tabs strong,.mobile-day-tabs span{text-transform:capitalize;display:block}.mobile-day-tabs strong{font-size:11px}.mobile-day-tabs span{margin-top:3px;font-size:9px}.mobile-day-tabs button.active{color:#fff;background:#167da8;border-color:#167da8}.weekly-days{padding:0;display:block;overflow:visible}.weekly-day{display:none}.weekly-day.mobile-active{display:block}.weekly-day.mobile-active>header{display:none}.weekly-day>div{gap:10px}.weekly-slot{min-height:58px;padding:12px 16px}.weekly-slot strong{font-size:18px}.weekly-slot small{margin-top:4px;font-size:10px}.weekly-no-slot{border:1px dashed #d7e3e8;border-radius:10px;padding:28px 10px;display:block}.weekly-booking-rule{line-height:1.5}.student-weekly-booking.with-cart{padding-bottom:370px}}.trainer-week-panel{margin-top:20px}.trainer-week-toolbar{justify-content:center;align-items:center;gap:14px;margin-bottom:20px;display:flex}.trainer-week-toolbar button{color:#167da8;background:#fff;border:1px solid #d3e0e5;border-radius:50%;width:38px;height:38px;font-size:22px}.trainer-week-toolbar strong{text-align:center;text-transform:capitalize;min-width:270px;font-size:12px}.trainer-mobile-days{display:none}.trainer-doctolib-grid{grid-template-columns:repeat(6,minmax(95px,1fr));gap:9px;display:grid}.trainer-doctolib-grid>section{text-align:center}.trainer-doctolib-grid header{text-transform:capitalize;border-bottom:1px solid #dbe7eb;gap:3px;margin-bottom:9px;padding:9px 4px;display:grid}.trainer-doctolib-grid header strong{font-size:11px}.trainer-doctolib-grid header span{color:#819198;font-size:9px}.trainer-doctolib-grid section>div{gap:8px;display:grid}.trainer-time-slot{color:#164d65;background:#e6f6fb;border:1px solid #caeaf4;border-radius:10px;gap:3px;min-height:58px;padding:10px 5px;display:grid}.trainer-time-slot strong{font-size:15px}.trainer-time-slot span{font-size:8px}.trainer-time-slot.reserved{color:#7b5c24;background:#fff4df;border-color:#eadcbf}.trainer-time-slot.selected{color:#fff;background:#167da8;border-color:#167da8}.trainer-time-slot:disabled{cursor:default;opacity:1}.trainer-empty-day{color:#a3afb4;padding:18px}.trainer-slot-actions{justify-content:space-between;align-items:center;gap:18px;margin-top:18px;display:flex}.trainer-slot-actions h2{text-transform:capitalize;font-size:15px}.trainer-slot-actions>div:last-child{flex-wrap:wrap;gap:8px;display:flex}.trainer-slot-actions button,.trainer-duration-buttons button{color:#315d70;background:#f7fafb;border:1px solid #cbdde5;border-radius:8px;padding:9px 13px;font-size:10px;font-weight:800}.trainer-slot-actions .danger-button{color:#b72f2f;background:#fff4f4;border-color:#e4b3b3}.trainer-action-panel{margin-top:12px}.trainer-action-panel h2{margin-bottom:16px}.trainer-action-panel>p{color:#788b94;font-size:9px}.trainer-duration-buttons{gap:8px;display:flex}.trainer-duration-buttons button.active{color:#fff;background:#167da8;border-color:#167da8}.trainer-duplicate-days{grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:15px;display:grid}.trainer-duplicate-days label{border:1px solid #d7e4e9;border-radius:8px;align-items:center;gap:6px;padding:10px 8px;font-size:10px;display:flex}.trainer-duplicate-days input{accent-color:#167da8}.trainer-weeks-select{color:#5c737f;align-items:center;gap:9px;margin-bottom:14px;font-size:10px;font-weight:800;display:flex}.trainer-weeks-select select{background:#fff;border:1px solid #cadbe2;border-radius:8px;padding:9px}.trainer-action-panel>.primary{margin-bottom:4px}@media (width<=700px){.trainer-week-panel{padding:17px}.trainer-week-toolbar{justify-content:space-between}.trainer-week-toolbar button{width:42px;height:42px}.trainer-week-toolbar strong{min-width:0;padding:0 6px;font-size:10px}.trainer-mobile-days{grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:16px;display:grid}.trainer-mobile-days button{color:#53717e;background:#f7fafb;border:1px solid #d5e4e9;border-radius:9px;padding:8px 4px}.trainer-mobile-days strong,.trainer-mobile-days span{text-transform:capitalize;display:block}.trainer-mobile-days strong{font-size:11px}.trainer-mobile-days span{margin-top:3px;font-size:9px}.trainer-mobile-days button.active{color:#fff;background:#167da8;border-color:#167da8}.trainer-doctolib-grid{display:block}.trainer-doctolib-grid>section{display:none}.trainer-doctolib-grid>section.mobile-active{display:block}.trainer-doctolib-grid>section.mobile-active>header{display:none}.trainer-time-slot{min-height:62px;padding:12px}.trainer-time-slot strong{font-size:18px}.trainer-time-slot span{font-size:10px}.trainer-slot-actions{flex-direction:column;align-items:flex-start}.trainer-slot-actions>div:last-child{width:100%}.trainer-slot-actions button{flex:1;min-height:42px}.trainer-duplicate-days{grid-template-columns:repeat(2,1fr)}.trainer-duration-buttons button{flex:1;min-height:44px}}.edit-student-button{color:#966315;cursor:pointer;background:#fff8e9;border:1px solid #d79a35;border-radius:9px;padding:8px 11px;font-weight:750}.edit-student-button:hover{color:#fff;background:#d99025}.edit-student-modal{max-height:calc(100vh - 30px);overflow-y:auto}@media (width<=650px){.student-record-actions{justify-content:flex-start;width:100%}}.cart-credit{color:#2d7b58;border-top:1px solid #d9e4e9;justify-content:space-between;gap:12px;margin-top:10px;padding:10px 0;display:flex}.cart-credit strong{color:#21814f}.login-logo{height:150px;margin:-16px 0 18px}.login-logo img{width:300px;height:205px}.slot-booking-action{justify-content:flex-end;align-items:center;gap:10px;display:flex}.slot-limit-message{color:#b43b3b;max-width:190px;font-size:9px;font-weight:750;line-height:1.35}.completion-alerts{margin-bottom:20px}.completion-alert-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:18px;list-style:none;display:flex}.completion-alert-summary::-webkit-details-marker{display:none}.completion-alert-summary h2{margin:3px 0 2px}.completion-alert-summary small{color:#7c8d95;font-size:9px}.completion-summary-status{flex-shrink:0;align-items:center;gap:10px;display:flex}.completion-chevron{color:#287b9d;background:#edf5f8;border-radius:50%;place-items:center;width:30px;height:30px;font-size:19px;font-weight:800;transition:transform .2s;display:grid}.completion-alerts[open] .completion-chevron{transform:rotate(180deg)}.completion-alert-empty{color:#70858f;text-align:center;background:#f8fbfc;border:1px dashed #cbdce3;border-radius:9px;padding:22px;font-size:10px}.completion-alerts[open] .completion-alert-summary{border-bottom:1px solid #e2e9ec;padding-bottom:13px}.completion-alert-list{gap:9px;margin-top:16px;display:grid}.completion-alert-list article{background:#f8fafb;border:1px solid #dce7eb;border-radius:10px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.completion-alert-list article.unread{background:#fff8e9;border-color:#efbf72}.completion-alert-list article.acknowledged{opacity:.72;background:#f1f7f4}.completion-alert-list article>div:nth-child(2){flex-direction:column;gap:3px;display:flex}.completion-alert-list article span{color:#71858f;font-size:10px}.completion-alert-list article>b{color:#a26b15;font-size:9px}.completion-alert-list article.read>b{color:#48809a}.completion-alert-list article.acknowledged>b{color:#2d8158}.completion-alert-list button{color:#276b89;cursor:pointer;background:#fff;border:1px solid #8bb7ca;border-radius:7px;padding:7px 9px;font-size:9px;font-weight:750}.completion-alert-list button.acknowledge{color:#26724d;border-color:#70b08e}@media (width<=700px){.completion-alert-summary{align-items:flex-start}.completion-summary-status{flex-direction:column;align-items:flex-end}.completion-alert-list article{grid-template-columns:auto 1fr}.completion-alert-list article>b,.completion-alert-list article>div:last-child{grid-column:2;justify-self:start}}.student-important-message{background:linear-gradient(135deg,#fff9eb,#fff3d4);border:1px solid #efbd68;border-left:5px solid #ed9d21;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:16px;margin:0 0 20px;padding:20px 22px;display:grid;box-shadow:0 10px 28px #b46e1515}.student-important-message .important-icon{color:#fff;background:#ed9d21;border-radius:50%;place-items:center;width:42px;height:42px;font-size:23px;font-weight:900;display:grid}.student-important-message span{color:#a36a14;letter-spacing:1.2px;font-size:9px;font-weight:850;display:block}.student-important-message h2{color:#714b12;white-space:pre-wrap;margin:5px 0 3px;font-size:17px;line-height:1.4}.student-important-message small{color:#9b783f;font-size:9px}.important-message-editor{background:#fffaf0;border:1px solid #efc77e;border-radius:11px;margin:16px 0 22px;padding:18px}.important-message-editor h3{color:#684b1f;margin:4px 0 3px;font-size:14px}.important-message-editor p{color:#8a7656;margin:0 0 11px;font-size:9px}.important-message-editor textarea{resize:vertical;color:#344e5a;width:100%;min-height:94px;font:inherit;background:#fff;border:1px solid #dfcfb2;border-radius:8px;outline:none;padding:11px 12px;line-height:1.5}.important-message-editor textarea:focus{border-color:#df9e31;box-shadow:0 0 0 3px #df9e3120}.important-message-editor>div:last-child{justify-content:space-between;align-items:center;gap:12px;margin-top:9px;display:flex}.important-message-editor>div:last-child small{color:#9b8664;font-size:8px}@media (width<=650px){.student-important-message{grid-template-columns:1fr}.important-message-editor>div:last-child{flex-direction:column;align-items:stretch}}.avatar.has-photo,.profile-avatar.has-photo{padding:0;overflow:hidden}.avatar.has-photo img,.profile-avatar.has-photo img{object-fit:cover;width:100%;height:100%;display:block}.clickable-photo{cursor:zoom-in;transition:transform .18s,box-shadow .18s}.clickable-photo:hover{transform:scale(1.06);box-shadow:0 5px 16px #163d5060}.clickable-photo:focus-visible{outline-offset:2px;outline:3px solid #e4a136}.photo-lightbox{z-index:60;cursor:zoom-out;background:#04141de0;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.photo-lightbox>button{color:#fff;cursor:pointer;background:#ffffff20;border:1px solid #fff5;border-radius:50%;width:43px;height:43px;font-size:28px;line-height:1;position:fixed;top:20px;right:22px}.photo-lightbox figure{text-align:center;cursor:default;max-width:min(760px,92vw);margin:0}.photo-lightbox figure img{object-fit:contain;border:5px solid #fff;border-radius:18px;max-width:100%;max-height:78vh;margin:auto;display:block;box-shadow:0 26px 80px #000a}.photo-lightbox figcaption{color:#fff;margin-top:13px;font-size:14px;font-weight:800}.student-photo-picker{background:#f7fafb;border:1px solid #d8e6eb;border-radius:12px;grid-template-columns:108px 1fr;align-items:center;gap:18px;margin:18px 0 20px;padding:16px;display:grid}.student-photo-preview{color:#79909b;background:#fff;border:2px dashed #b8d1dc;border-radius:50%;place-items:center;width:108px;height:108px;font-size:10px;font-weight:800;display:grid;overflow:hidden}.student-photo-preview.has-photo{border-style:solid;border-color:#56a7c8}.student-photo-preview img{object-fit:cover;width:100%;height:100%}.student-photo-picker strong,.student-photo-picker small{display:block}.student-photo-picker>div:last-child>strong{color:#315468;font-size:12px}.student-photo-picker>div:last-child>small{color:#7d9099;margin:4px 0 11px;font-size:9px;line-height:1.45}.photo-actions{flex-wrap:wrap;gap:7px;display:flex}.photo-action,.remove-photo{cursor:pointer;background:#eef8fc;border:1px solid #2c8bb2;border-radius:8px;align-items:center;padding:8px 10px;color:#176f96!important;width:auto!important;margin:0!important;font-size:9px!important;font-weight:800!important;display:inline-flex!important}.photo-action.camera{background:#287fa3;color:#fff!important}.photo-action input{opacity:0;height:1px;position:absolute;overflow:hidden;width:1px!important;margin:-1px!important;padding:0!important}.remove-photo{background:#fff5f5;border-color:#d8a8a8;color:#aa4747!important}.photo-error{color:#b43b3b;margin-top:8px;font-size:9px;font-weight:700;display:block}.webcam-overlay{z-index:30;background:#081f2ac2;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.webcam-dialog{text-align:left;background:#fff;border-radius:16px;width:min(520px,100%);padding:24px;position:relative;box-shadow:0 28px 80px #00192366}.webcam-dialog h3{color:#284f62;margin:4px 0 16px;font-size:17px}.webcam-close{color:#5b737e;cursor:pointer;background:#edf3f5;border:0;border-radius:50%;width:32px;height:32px;font-size:20px;position:absolute;top:12px;right:12px}.webcam-frame{aspect-ratio:1;background:#173440;border:4px solid #dcecf2;border-radius:50%;width:min(390px,100%);margin:auto;overflow:hidden}.webcam-frame video{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.webcam-actions{justify-content:center;gap:10px;margin-top:18px;display:flex}.webcam-actions>button:not(.primary){color:#54707d;cursor:pointer;background:#fff;border:1px solid #ccdce2;border-radius:8px;padding:10px 15px;font-weight:750}@media (width<=520px){.student-photo-picker{text-align:center;grid-template-columns:1fr;justify-items:center}.photo-actions{justify-content:center}}.student-credit-banner>section{flex:1}.student-credit-banner .credit-lesson-details{white-space:normal;flex-wrap:wrap;gap:7px;margin-top:9px;display:flex}.credit-lesson-details article{background:#fffdf7;border:1px solid #e7c681;border-radius:8px;padding:8px 10px}.credit-lesson-details b,.credit-lesson-details span{display:block}.credit-lesson-details b{text-transform:capitalize;font-size:9px}.credit-lesson-details span{color:#94702c;letter-spacing:0;margin-top:3px;font-size:8px}.pdf-download-button{white-space:nowrap;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.pdf-download-button:before{content:"↓";margin-right:7px;font-size:14px}.pdf-download-button:disabled{opacity:.78;cursor:wait}.pdf-download-button:has(.pdf-spinner):before{display:none}.pdf-spinner{border:2px solid #ffffff70;border-top-color:#fff;border-radius:50%;width:15px;height:15px;margin-right:8px;animation:.7s linear infinite pdf-spin}.pdf-generation-overlay{z-index:70;background:#051c27b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.pdf-generation-card{text-align:center;background:#fff;border-radius:16px;width:min(390px,100%);padding:28px;box-shadow:0 25px 70px #00192366}.pdf-generation-card img{object-fit:cover;width:210px;height:115px;margin:-12px auto 5px}.pdf-generation-card h2{color:#234d61;margin:0 0 7px;font-size:18px}.pdf-generation-card p{color:#71848d;margin:0 0 18px;font-size:10px}.pdf-progress{background:#e3edf1;border-radius:99px;height:7px;overflow:hidden}.pdf-progress i{border-radius:inherit;background:linear-gradient(90deg,#2189b3,#f0aa37);width:42%;height:100%;animation:1.15s ease-in-out infinite pdf-progress;display:block}.pdf-download-error{color:#b43b3b;max-width:240px;margin-top:7px;font-size:9px;font-weight:750;display:block}@keyframes pdf-spin{to{transform:rotate(360deg)}}@keyframes pdf-progress{0%{transform:translate(-110%)}to{transform:translate(245%)}}@media (width<=900px){.app-shell{flex-direction:column;min-height:100vh;display:flex}.workspace{order:1}.sidebar{border:0;border-top:1px solid var(--line);background:#f4f8f9;order:2;width:100%;padding:14px 20px 24px;display:block;position:static}.sidebar>.brand,.sidebar>nav{display:none}.sidebar-bottom{grid-template-columns:1fr auto;align-items:center;gap:10px;margin:0;display:grid}.sidebar .support{padding:16px}.sidebar .logout{background:#fff;border:1px solid #d5e1e5;border-radius:8px;width:auto;padding:12px 14px}}@media (width<=520px){.sidebar-bottom{grid-template-columns:1fr}.sidebar .logout{width:100%}}@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-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}
