@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+Bengali:wght@400;500;600;700&family=Noto+Sans+Devanagari:wght@400;500;600;700&family=Noto+Sans:wght@400;500;600;700&family=Sora:wght@600;700;800&display=swap";
@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-border-style:solid}}}@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}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.table{display:table}.grow{flex-grow:1}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}}:root{--ink:#0b1f14;--muted:#2c3a31;--line:#e5eae6;--paper:#fff;--soft:#f1f4f2;--brand:#0e7c5a;--brand-dark:#084633;--brand-pale:#d6f2e2;--green:#0e7c5a;--sunshine:#f5b700;--coral:#ff6b5b;--indigo:#5b5bd6;--whatsapp:#25d366}*{box-sizing:border-box}html{background:var(--paper);-webkit-text-size-adjust:100%}html,body{max-width:100%;overflow-x:hidden}body{color:var(--ink);background:var(--paper);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);margin:0;font-family:Manrope,ui-sans-serif,system-ui,sans-serif;font-weight:500}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}.theme-berry{--brand:#ff6b5b;--brand-dark:#b73c31;--brand-pale:#fff0ed}.theme-ocean{--brand:#5b5bd6;--brand-dark:#39399a;--brand-pale:#eef}.theme-forest{--brand:#084633;--brand-dark:#052f22;--brand-pale:#d6f2e2}.site-shell{background:linear-gradient(#fff 0 50%,#f7faf8 100%);min-height:100vh}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1280px;height:72px;margin:0 auto;padding:0 32px;display:flex}@supports (color:color-mix(in lab, red, red)){.topbar{border-bottom:1px solid color-mix(in srgb, var(--line) 70%, transparent)}}.topbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe6}.brand{letter-spacing:-.035em;align-items:center;gap:11px;font-family:Sora,ui-sans-serif,sans-serif;font-size:17px;font-weight:800;display:inline-flex}.brand em{color:var(--brand);font-style:normal}.brand-mark{color:#fff;letter-spacing:-.03em;background:#0e7c5a;border:2px solid #f5b700;border-radius:12px;place-items:center;width:37px;height:37px;font-family:Sora,sans-serif;font-size:9px;font-weight:800;display:grid;position:relative;box-shadow:0 7px 18px #08463333}.brand-mark:after{content:"";background:#f5b700;border-radius:50%;width:5px;height:5px;position:absolute;top:3px;right:3px}.top-actions{align-items:center;gap:24px;display:flex}.timezone-pill{border:1px solid var(--line);color:var(--muted);background:#ffffffa6;border-radius:999px;align-items:center;gap:7px;padding:8px 13px;font-size:12px;display:inline-flex}.quiet-link{color:var(--muted);font-size:13px;font-weight:650}.quiet-link:hover{color:var(--brand-dark)}.student-hero{color:#fff;text-align:center;background:radial-gradient(circle at 84% 22%,#5b5bd685,#0000 25rem),radial-gradient(circle at 8% 0,#0e7c5acc,#0000 30rem),#084633;border-radius:0 0 36px 36px;max-width:1280px;margin:0 auto 42px;padding:72px 28px 58px;position:relative;overflow:hidden}.student-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#f5b7002e,#0000 68%);height:260px;position:absolute;inset:auto -8% -170px 48%}.eyebrow,.section-kicker{color:var(--brand);text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:800}.student-hero .eyebrow{color:#fff;background:#ffffff1c;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}.live-dot{background:#d6f2e2;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #d6f2e226}.student-hero h1{z-index:1;letter-spacing:-.045em;max-width:900px;margin:20px auto 13px;font-family:Sora,ui-sans-serif,sans-serif;font-size:clamp(40px,5.5vw,68px);font-weight:800;line-height:1.04;position:relative}.student-hero h1:after{content:"";background:var(--sunshine);border-radius:99px;width:92px;height:7px;margin:17px auto 0;display:block}.student-hero>p{z-index:1;color:#ffffffd1;max-width:650px;margin:0 auto;font-size:17px;line-height:1.65;position:relative}.promise-row{z-index:1;color:#ffffffc7;justify-content:center;align-items:center;gap:16px;margin-top:30px;font-size:13px;display:flex;position:relative}.promise-row span{align-items:center;gap:7px;display:flex}.promise-row b{background:var(--sunshine);width:23px;height:23px;color:var(--ink);border:0;border-radius:50%;place-items:center;display:grid}.promise-row i{background:#ffffff47;width:28px;height:1px}.scheduler-wrap{max-width:1180px;margin:0 auto;padding:0 28px 88px}.schedule-head{justify-content:space-between;align-items:end;margin-bottom:24px;display:flex}.schedule-head h2,.my-booking h2,.panel h2{letter-spacing:-.035em;margin:6px 0 0;font-family:Sora,ui-sans-serif,sans-serif;font-size:28px;font-weight:700}.week-switcher{border:1px solid var(--line);background:#ffffffeb;border-radius:999px;align-items:center;display:inline-flex;overflow:hidden;box-shadow:0 8px 24px -16px #0e241659}.week-switcher button{cursor:pointer;background:0 0;border:0;place-items:center;width:42px;height:40px;display:grid}.week-switcher button:hover{background:var(--brand-pale);color:var(--brand-dark)}.week-switcher span{text-align:center;min-width:128px;padding:0 6px;font-size:12px;font-weight:730}.loading-card,.empty-state{min-height:150px;color:var(--muted);border:1px dashed var(--line);background:#fff;border-radius:20px;place-items:center;display:grid}.days-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;display:grid}.day-column{min-width:0}.day-column h3{color:var(--muted);margin:0 0 10px;padding:0 4px;font-size:12px;font-weight:740}.slot-stack{gap:10px;display:grid}.slot-card{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:20px;min-height:126px;padding:20px 17px;transition:transform .18s,border-color .18s,box-shadow .18s;position:relative;box-shadow:0 1px 2px #0e24160a,0 8px 24px -16px #0e24162e}.slot-card:hover:not(:disabled){border-color:var(--brand);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.slot-card:hover:not(:disabled){border-color:color-mix(in srgb, var(--brand) 55%, white)}}.slot-card:hover:not(:disabled){box-shadow:0 16px 32px -18px #08463373}.slot-card.selected{border:2px solid var(--brand);background:linear-gradient(145deg, white, var(--brand-pale));box-shadow:0 14px 30px -16px var(--brand);padding:19px 16px}@supports (color:color-mix(in lab, red, red)){.slot-card.selected{box-shadow:0 14px 30px -16px color-mix(in srgb, var(--brand) 50%, transparent)}}.slot-card.full{opacity:.62;cursor:not-allowed;background:#f1f4f2}.slot-time{font-family:Sora,ui-sans-serif,sans-serif;font-size:21px;font-weight:700;display:block}.slot-duration{color:var(--muted);margin-top:3px;font-size:11px;display:block}.availability{color:var(--brand-dark);background:var(--brand-pale);text-transform:uppercase;letter-spacing:.06em;border-radius:999px;margin-top:17px;padding:5px 8px;font-size:10px;font-weight:800;display:inline-block}.availability.low{color:#8a6200;background:#fff6d8}.slot-check{border:1px solid var(--line);width:24px;height:24px;color:var(--muted);border-radius:8px;place-items:center;font-weight:800;display:grid;position:absolute;top:14px;right:14px}.selected .slot-check{background:var(--brand);border-color:var(--brand);color:#fff}.booking-bar{z-index:5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;border:1px solid #08463324;border-radius:20px;grid-template-columns:minmax(220px,1fr) minmax(210px,300px) auto;align-items:end;gap:17px;margin:28px auto 0;padding:17px;display:grid;position:sticky;bottom:18px;box-shadow:0 20px 55px #08463329}.booking-progress{align-items:center;gap:12px;display:flex}.selection-count{background:var(--brand-dark);color:#fff;border-radius:14px;place-items:center;width:48px;height:48px;font-family:Sora,sans-serif;font-weight:800;display:grid}.booking-progress strong,.booking-progress small{display:block}.booking-progress strong{font-size:14px}.booking-progress small{color:var(--muted);margin-top:4px;font-size:11px}label>span{color:var(--muted);margin-bottom:7px;font-size:11px;font-weight:750;display:block}input,select,textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:11px;outline:none;padding:11px 13px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand)}@supports (color:color-mix(in lab, red, red)){input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 14%, transparent)}}.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:999px;padding:12px 19px;font-family:Sora,ui-sans-serif,sans-serif;font-weight:700}.primary-button{background:var(--sunshine);color:var(--ink);box-shadow:0 8px 20px #f5b70040}.primary-button:hover:not(:disabled){background:#ffd24a;transform:translateY(-1px)}.primary-button:disabled{opacity:.5;cursor:not-allowed}.secondary-button{color:var(--brand-dark);background:var(--brand-pale);border:1px solid var(--brand)}@supports (color:color-mix(in lab, red, red)){.secondary-button{border:1px solid color-mix(in srgb, var(--brand) 30%, white)}}.notice{max-width:720px;color:var(--brand-dark);background:var(--brand-pale);text-align:center;border-radius:10px;margin:12px auto 0;padding:12px 15px;font-size:13px;font-weight:650}.my-booking{border:1px solid var(--line);background:#fff;border-radius:20px;grid-template-columns:1fr 1.6fr auto;align-items:center;gap:22px;max-width:1124px;margin:-54px auto 70px;padding:24px 28px;display:grid;box-shadow:0 8px 24px -16px #0e24162e}.booking-chips{flex-wrap:wrap;gap:8px;display:flex}.booking-chips span{background:var(--soft);border-radius:9px;padding:9px 11px;font-size:12px;font-weight:650}footer{border-top:1px solid var(--line);max-width:1180px;color:var(--muted);justify-content:space-between;margin:0 auto;padding:26px 28px;font-size:11px;display:flex}.admin-login-shell{background:radial-gradient(circle at 75% 18%,#5b5bd661,#0000 28rem),radial-gradient(circle at 20% 10%,#0e7c5aa6,#0000 30rem),#084633;place-items:center;min-height:100vh;padding:34px;display:grid}.admin-login-shell .brand{color:#fff}.admin-login-shell>.brand{position:absolute;top:25px;left:32px}.login-card{text-align:center;background:#fffffff5;border:1px solid #ffffff59;border-radius:24px;width:min(440px,100%);padding:42px;box-shadow:0 28px 80px #041f154d}.lock-badge{width:44px;height:44px;color:var(--brand);background:var(--brand-pale);border-radius:13px;place-items:center;margin:0 auto 20px;display:grid}.login-card h1{letter-spacing:-.04em;margin:8px 0;font-family:Sora,sans-serif;font-size:36px;font-weight:800}.login-card p{color:var(--muted);line-height:1.6}.login-card form{text-align:left;gap:14px;margin:26px 0 20px;display:grid}.login-card form .primary-button{width:100%}.admin-shell{background:#f1f4f2;grid-template-columns:230px minmax(0,1fr);min-height:100vh;display:grid}.admin-sidebar{color:#fff;background:#084633;flex-direction:column;height:100vh;padding:26px 20px;display:flex;position:sticky;top:0}.admin-sidebar .brand em{color:#f5b700}.admin-sidebar .brand{padding:0 8px 28px}.admin-sidebar nav{gap:6px;display:grid}.admin-sidebar nav button{color:#b9d7ca;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:11px;width:100%;padding:12px;font-size:13px;font-weight:700;display:flex}.admin-sidebar nav button>svg{stroke-width:2.15px;flex:none;width:23px;height:23px}.admin-sidebar nav button.active,.admin-sidebar nav button:hover{color:#fff;background:#ffffff1a}.admin-sidebar nav button.active{box-shadow:inset 3px 0 #f5b700}.sidebar-bottom{gap:12px;margin-top:auto;display:grid}.sidebar-bottom .view-site{background:#ffffff14;border-radius:10px;justify-content:space-between;align-items:center;gap:7px;padding:12px;font-size:12px;font-weight:650;display:flex}.sidebar-bottom button{color:#aaa69c;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:4px 12px;font-size:12px;display:flex}.admin-main{min-width:0;padding:42px clamp(24px,5vw,70px) 70px}.admin-header{justify-content:space-between;align-items:end;margin-bottom:30px;display:flex}.admin-header h1{letter-spacing:-.04em;margin:5px 0 0;font-family:Sora,sans-serif;font-size:36px;font-weight:800}.admin-notice{text-align:left;margin:-15px 0 24px}.stats-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px;display:grid}.stats-grid article{border:1px solid var(--line);background:#fff;border-radius:20px;padding:20px;box-shadow:0 1px 2px #0e24160a,0 8px 24px -16px #0e24162e}.stats-grid span,.stats-grid small{color:var(--muted);font-size:11px;display:block}.stats-grid strong{margin:5px 0 2px;font-family:Sora,sans-serif;font-size:34px;font-weight:800;display:block}.admin-grid{grid-template-columns:minmax(0,1.7fr) minmax(270px,.8fr);align-items:start;gap:20px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:20px;padding:24px;box-shadow:0 1px 2px #0e24160a,0 8px 24px -16px #0e24162e}.panel-head{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.admin-slot-list{gap:9px;display:grid}.weekly-reset-note{color:var(--muted);background:#f6f8f7;border-radius:10px;margin:-7px 0 18px;padding:10px 12px;font-size:10px;font-weight:650;line-height:1.5}.admin-slot-card{border:1px solid var(--line);background:#fff;border-radius:13px;overflow:hidden}.admin-slot-card .admin-slot-row{border:0;border-radius:0}.slot-roster-bar{justify-content:space-between;gap:10px;padding:0 12px 10px 77px;display:flex}.slot-roster-bar button{color:var(--brand);cursor:pointer;background:0 0;border:0;padding:2px 0;font-size:9px;font-weight:800}.slot-roster-bar button.danger-text{color:#a84a40}.slot-student-list{background:var(--soft);border-radius:10px;gap:8px;margin:0 11px 11px;padding:10px;display:grid}.slot-student-list>span,.slot-student-row{background:#fff;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:10px 12px;display:grid}.slot-student-copy{gap:2px;min-width:0;display:grid}.slot-student-list b{color:var(--ink);background:0 0;font-size:13px;font-weight:800}.slot-student-list small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.slot-student-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.slot-student-list .text-button{padding:6px 8px;font-size:12px}.whatsapp-remind{color:#0b5c3a;cursor:pointer;background:#d8f5e4;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:32px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.whatsapp-remind:hover{color:#fff;background:#25d366}.whatsapp-remind.sent,.whatsapp-remind[data-sent=true],.whatsapp-remind.sent:hover,.whatsapp-remind[data-sent=true]:hover,.whatsapp-remind.sent:focus,.admin-app .whatsapp-remind.sent,.admin-app .whatsapp-remind[data-sent=true],.teacher-app .whatsapp-remind.sent,.teacher-app .whatsapp-remind[data-sent=true]{color:#fff!important;background:#e25748!important}.roster-name-cell{gap:4px;min-width:0;display:grid}.roster-name-cell b{font-weight:750}.roster-board{gap:10px;display:grid}.roster-card{border:1px solid var(--line);background:#fff;border-radius:16px;gap:12px;padding:14px;display:grid}.roster-card-id{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.roster-card-id strong,.roster-card-id small{overflow-wrap:anywhere;display:block}.roster-card-id small{color:var(--muted);font-size:13px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.roster-course-field{margin-top:4px;display:block}.roster-course-select{border:1px solid var(--line);width:100%;max-width:100%;min-height:36px;color:var(--ink);background:#fff;border-radius:10px;padding:4px 28px 4px 8px;font-size:13px;font-weight:650}.roster-booking-note{color:#7a4a12;background:#fff6e8;border:1px solid #f0d9b5;border-radius:10px;align-items:flex-start;gap:8px;margin:0;padding:8px 10px;font-size:12px;line-height:1.4;display:flex}.roster-booking-note svg{flex:none;margin-top:1px}.roster-card-contact{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:8px;display:grid}.roster-phone{border:1px solid var(--line);border-radius:12px;width:100%;min-height:44px;padding:8px 12px;font-size:14px}.save-phone{color:#07513b;cursor:pointer;background:#d8f5e4;border:1px solid #0e7c5a;border-radius:12px;justify-content:center;align-items:center;gap:6px;min-width:44px;height:44px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.save-phone.dirty{color:#fff;background:#0e7c5a;border-color:#0e7c5a}.save-phone.saved{opacity:.85}.roster-card-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:13px;display:flex}.roster-card-meta strong{color:var(--ink);letter-spacing:.04em;font-family:Sora,sans-serif}.roster-card-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.roster-login{border:1px solid var(--line);background:#f4f8f6;border-radius:12px;gap:4px;padding:8px 10px;display:grid}.roster-login-head{letter-spacing:.05em;text-transform:uppercase;color:var(--brand-dark);font-size:10px;font-weight:800}.roster-login-latest{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px 8px;display:grid}.roster-login-latest svg{color:var(--brand)}.roster-login-latest strong,.roster-login-latest small{overflow-wrap:anywhere;display:block}.roster-login-latest strong{color:var(--ink);font-size:13px;line-height:1.3}.roster-login-latest small{color:var(--muted);margin-top:1px;font-size:12px;line-height:1.35}.roster-login-more{white-space:nowrap;align-self:center}.roster-login-empty{color:var(--muted);font-size:12px}.roster-login-history{gap:8px;margin:0;padding:0;list-style:none;display:grid}.roster-login-history li{border:1px solid var(--line);background:#fff;border-radius:10px;gap:2px;padding:8px 10px;display:grid}.roster-login-history strong{font-size:13px}.roster-login-history small{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.admin-slot-row{border:1px solid var(--line);border-radius:13px;grid-template-columns:54px minmax(150px,1fr) 74px 68px 48px;align-items:center;gap:12px;padding:11px;display:grid}.date-tile{text-align:center;background:var(--brand-pale);height:49px;color:var(--brand-dark);border-radius:10px;place-content:center;display:grid}.date-tile strong{font-size:19px;line-height:1}.date-tile span{color:var(--muted);text-transform:uppercase;margin-top:3px;font-size:9px;font-weight:800}.slot-admin-copy strong,.slot-admin-copy small{display:block}.slot-admin-copy small{color:var(--muted);margin-top:4px;font-size:10px}.capacity-control span{margin-bottom:3px;font-size:9px}.capacity-control input{padding:7px}.status-button,.save-mini{cursor:pointer;border:0;border-radius:8px;padding:8px;font-size:10px;font-weight:800}.status-button.open{color:var(--brand-dark);background:var(--brand-pale)}.status-button.closed{color:#8f5545;background:#f7eae5}.save-mini{background:var(--soft);color:var(--muted)}.add-panel>p{color:var(--muted);margin:6px 0 22px;font-size:12px}.add-panel label{margin-bottom:14px;display:block}.split-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.add-panel .primary-button{width:100%}.helper-copy{color:var(--muted);margin-top:12px;line-height:1.5;display:block}.roster-panel{max-width:1050px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.08em;padding:11px 14px;font-size:10px}td{border-bottom:1px solid var(--line);padding:14px;font-size:13px}th,td{font-weight:650}.student-avatar{background:var(--brand-pale);width:29px;height:29px;color:var(--brand-dark);border-radius:9px;place-items:center;margin-right:10px;font-family:Sora,sans-serif;font-weight:800;display:inline-grid}.confirmed-pill{color:var(--green);background:#eaf6f1;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800}.empty-cell{text-align:center;color:var(--muted);padding:45px}.customize-panel{gap:17px;max-width:680px;display:grid}.customize-panel fieldset{border:0;margin:0;padding:0}.customize-panel legend{color:var(--muted);margin-bottom:8px;font-size:11px;font-weight:750}.theme-picker{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.theme-choice{border:1px solid var(--line);text-transform:capitalize;cursor:pointer;background:#fff;border-radius:11px;padding:10px;font-size:11px}.theme-choice span{background:#0e7c5a;border-radius:50%;width:18px;height:18px;margin:0 auto 5px;display:block}.theme-choice.berry span{background:#ff6b5b}.theme-choice.ocean span{background:#5b5bd6}.theme-choice.forest span{background:#084633}.theme-choice.active{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-pale)}.customize-panel .primary-button{justify-self:start}@media (max-width:960px){.days-grid{grid-template-columns:repeat(3,1fr)}.booking-bar{grid-template-columns:1fr 1fr}.booking-bar .primary-button{grid-column:2}.my-booking,.admin-grid{grid-template-columns:1fr}.admin-slot-row{grid-template-columns:50px minmax(130px,1fr) 70px 62px 46px}}@media (max-width:720px){.topbar{height:66px;padding:0 18px}.timezone-pill{display:none}.student-hero{padding:54px 20px 40px}.student-hero>p{font-size:15px}.promise-row{gap:7px;font-size:11px}.promise-row i{width:10px}.promise-row span{display:block}.promise-row b{margin:0 auto 5px}.scheduler-wrap{padding:0 16px 70px}.schedule-head{flex-direction:column;align-items:start;gap:16px}.days-grid{scroll-snap-type:x mandatory;padding-bottom:8px;display:flex;overflow-x:auto}.day-column{scroll-snap-align:start;flex:0 0 74vw}.booking-bar{grid-template-columns:1fr;position:static}.booking-bar .primary-button{grid-column:auto}.my-booking{margin:-42px 16px 50px}footer{flex-direction:column;gap:8px}.admin-shell{display:block}.admin-sidebar{flex-direction:row;align-items:center;width:100%;height:auto;padding:15px;position:static;overflow-x:auto}.admin-sidebar .brand span:last-child,.sidebar-bottom{display:none}.admin-sidebar .brand{padding:0 12px 0 0}.admin-sidebar nav{display:flex}.admin-sidebar nav button{white-space:nowrap}.admin-main{padding:26px 15px 50px}.admin-header{flex-direction:column;align-items:start;gap:18px}.stats-grid{grid-template-columns:1fr}.admin-slot-row{grid-template-columns:48px 1fr 62px}.admin-slot-row .status-button,.admin-slot-row .save-mini{grid-column:auto}.capacity-control{grid-area:1/3}.status-button{grid-column:2!important}.save-mini{grid-column:3!important}.panel{padding:17px}.panel-head{flex-direction:column;align-items:start;gap:12px}.theme-picker{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.logo-lockup{letter-spacing:-.035em;align-items:center;gap:11px;font-family:Sora,ui-sans-serif,sans-serif;font-size:16px;font-weight:800;display:inline-flex}.logo-lockup img{flex:none}.logo-lockup.inverse{color:#fff}.student-login-shell{background:radial-gradient(circle at 18% 12%,#0e7c5ab8,#0000 30rem),radial-gradient(circle at 82% 20%,#5b5bd661,#0000 28rem),#084633;place-items:center;min-height:100vh;padding:92px 24px 64px;display:grid;position:relative}.student-login-shell:after{content:"";pointer-events:none;background:linear-gradient(#0000,#0000001c);height:25%;position:fixed;inset:auto 0 0}.student-login-brand{color:#fff;align-items:center;gap:10px;font-family:Sora,sans-serif;font-weight:800;display:flex;position:absolute;top:24px;left:30px}.student-login-card{z-index:1;text-align:center;background:#fffffffa;border-radius:28px;width:min(460px,100%);padding:39px;position:relative;box-shadow:0 35px 95px #011d1357}.login-illustration{background:#f2f8f5;border-radius:25px;place-items:center;width:88px;height:88px;margin:-4px auto 18px;display:grid}.student-login-card h1{letter-spacing:-.045em;margin:9px 0 10px;font:800 36px/1.13 Sora,sans-serif}.student-login-card>p{max-width:340px;color:var(--muted);margin:0 auto;font-size:14px;line-height:1.6}.student-login-card form{text-align:left;gap:14px;margin:25px 0 17px;display:grid}.login-mode-switch{background:var(--soft);border-radius:12px;grid-template-columns:1fr 1fr;gap:4px;margin:22px 0 -10px;padding:4px;display:grid}.login-mode-switch button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;padding:9px 7px;font-size:10px;font-weight:800}.login-mode-switch button.active{color:var(--brand-dark);background:#fff;box-shadow:0 3px 10px #08463314}.student-login-card form .primary-button{width:100%;margin-top:5px}.student-login-card>small{color:var(--muted);font-size:10px}.install-home{margin:6px 0 16px}.install-home-button{color:#fff;cursor:pointer;text-align:left;background:radial-gradient(circle at 92% 18%,#f5b70052,#0000 9rem),radial-gradient(circle at 8% 88%,#5b5bd647,#0000 8rem),linear-gradient(145deg,#0e7c5a 0%,#084633 58%,#052f22 100%);border:1px solid #f5b70061;border-radius:22px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:92px;padding:14px 14px 14px 12px;display:grid;position:relative;overflow:hidden;box-shadow:0 16px 34px #08463347}.install-home-spark{pointer-events:none;background:linear-gradient(90deg,#0000,#ffd96b2e,#0000);width:38%;animation:2.8s ease-in-out infinite install-shine;position:absolute;inset:0 auto 0 -40%;transform:skew(-18deg)}@keyframes install-shine{0%{left:-45%}55%,to{left:120%}}.install-home-button:hover{transform:translateY(-2px);box-shadow:0 20px 40px #0846335c}.install-home-mark{z-index:1;background:#ffffff1a;border-radius:16px;flex:none;place-items:center;width:56px;height:56px;display:grid;position:relative;box-shadow:0 0 0 2px #f5b7008c}.install-home-copy{z-index:1;min-width:0;position:relative}.install-home-copy em{color:#ffd96b;letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-style:normal;font-weight:800;display:block}.install-home-copy strong{letter-spacing:-.03em;margin-top:4px;font:800 17px/1.15 Sora,sans-serif;display:block}.install-home-copy small{color:#d6f2e2;margin-top:4px;font-size:12px;font-weight:700;line-height:1.35;display:block}.install-home-cta{z-index:1;color:#1a2e20;background:linear-gradient(#ffe27a,#f5b700);border-radius:999px;place-items:center;min-height:40px;padding:0 14px;font:800 13px/1 Sora,sans-serif;display:grid;position:relative;box-shadow:0 8px 16px #f5b70059}.unbooked-remind{margin-bottom:18px}.unbooked-remind .panel-head{align-items:center;gap:12px}.unbooked-remind .panel-head p{color:var(--muted);margin:6px 0 0;font-size:13px}.unbooked-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.unbooked-course select{border:1px solid var(--line);min-width:220px;max-width:280px;min-height:44px;color:var(--ink);background:#fff;border-radius:999px;padding:0 32px 0 14px;font:700 13px/1 Sora,sans-serif}.unbooked-next{color:#1a2e20;cursor:pointer;background:linear-gradient(#ffe27a,#f5b700);border:0;border-radius:999px;align-items:center;gap:8px;min-height:44px;padding:0 16px;font:800 13px/1 Sora,sans-serif;display:inline-flex;box-shadow:0 8px 16px #f5b70047}.unbooked-next:disabled{opacity:.55;cursor:default;box-shadow:none}.unbooked-list{gap:8px;display:grid}.unbooked-row{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.unbooked-row strong,.unbooked-row small{overflow-wrap:anywhere;display:block}.unbooked-row small{color:var(--muted);font-size:12px}.cancel-slot-overlay{z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#08463385;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.cancel-slot-dialog{background:#fff;border-radius:22px;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;width:min(520px,100%);max-height:min(88vh,720px);padding:22px;display:grid;overflow:hidden;box-shadow:0 28px 80px #08463347}.cancel-slot-dialog h2{letter-spacing:-.03em;margin:4px 0 6px;font:800 22px/1.2 Sora,sans-serif}.cancel-slot-dialog header p{color:var(--muted);margin:0;font-size:14px;line-height:1.45}.cancel-slot-body{gap:10px;min-height:0;display:grid;overflow:auto}.cancel-slot-error{color:#8b342c;margin:0;font-size:13px;font-weight:700}.cancel-slot-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:flex-end;gap:10px;padding-top:6px;display:flex}.cancel-slot-delete{color:#fff;cursor:pointer;background:#b73c31;border:0;border-radius:999px;align-items:center;gap:8px;min-height:44px;padding:0 16px;font:800 13px/1 Sora,sans-serif;display:inline-flex}.cancel-slot-delete:disabled,.cancel-slot-actions .secondary-button:disabled{opacity:.6;cursor:default}.pin-input{letter-spacing:.35em;font-family:Sora,sans-serif;font-size:19px}.login-admin-link{z-index:1;color:#ffffffb3;font-size:11px;font-weight:700;position:absolute;bottom:24px}.error-notice{color:#8b342c;background:#fff0ed}.booking-app{background:#f5f8f6;min-height:100vh}.booking-topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:18px;min-height:72px;padding:11px clamp(18px,4vw,58px);display:flex}.student-profile{align-items:center;gap:9px;display:flex}.student-profile-copy{text-align:right}.student-profile-copy strong,.student-profile-copy small{display:block}.student-profile-copy strong{font-size:12px}.student-profile-copy small{color:var(--muted);margin-top:2px;font-size:9px}.student-profile .avatar{color:#fff;background:var(--brand);text-transform:uppercase;border-radius:50%;place-items:center;width:36px;height:36px;font-family:Sora,sans-serif;font-weight:800;display:grid}.student-profile button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:700}.booking-heading{justify-content:space-between;align-items:end;gap:24px;max-width:1320px;margin:0 auto;padding:34px 28px 23px;display:flex}.booking-heading h1{letter-spacing:-.045em;margin:5px 0;font:800 clamp(28px,4vw,42px)/1.12 Sora,sans-serif}.booking-heading p{color:var(--muted);margin:0;font-size:13px}.calendly-shell{grid-template-columns:minmax(220px,.68fr) minmax(430px,1.45fr) minmax(260px,.78fr);align-items:stretch;max-width:1320px;margin:0 auto;padding:0 28px 72px;display:grid}.course-summary,.date-time-panel,.review-panel{border:1px solid var(--line);background:#fff}.course-summary{background:linear-gradient(165deg, #fff 55%, var(--course));border-radius:23px 0 0 23px;padding:32px 25px;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.course-summary{background:linear-gradient(165deg, #fff 55%, color-mix(in srgb, var(--course) 9%, white))}}.course-summary:after{content:"";background:var(--course);border-radius:50%;width:170px;height:170px;position:absolute;bottom:-70px;left:-65px}@supports (color:color-mix(in lab, red, red)){.course-summary:after{background:color-mix(in srgb, var(--course) 8%, transparent)}}.course-dot{background:var(--course);width:12px;height:12px;box-shadow:0 0 0 7px var(--course);border-radius:50%;margin-bottom:26px;display:block}@supports (color:color-mix(in lab, red, red)){.course-dot{box-shadow:0 0 0 7px color-mix(in srgb, var(--course) 12%, white)}}.course-summary h2,.date-time-panel h2,.review-panel h2{letter-spacing:-.035em;margin:6px 0 0;font:700 23px/1.22 Sora,sans-serif}.course-summary dl{gap:15px;margin:27px 0;display:grid}.course-summary dl div{border-bottom:1px solid var(--line);padding-bottom:13px}.course-summary dt{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:800}.course-summary dd{margin:4px 0 0;font-size:12px;font-weight:750}.booking-steps{gap:13px;display:grid}.booking-steps span{color:#8a948e;align-items:center;gap:9px;font-size:11px;font-weight:700;display:flex;position:relative}.booking-steps span:not(:last-child):after{content:"";border-left:1px dashed var(--line);height:13px;position:absolute;top:25px;left:12px}.booking-steps b{border:1px solid var(--line);background:#fff;border-radius:50%;place-items:center;width:25px;height:25px;display:grid}.booking-steps .done{color:var(--ink)}.booking-steps .done b{color:#fff;border-color:var(--brand);background:var(--brand)}.lock-note{z-index:1;color:var(--muted);background:#ffffffb3;border-radius:10px;align-items:flex-start;gap:7px;margin-top:28px;padding:11px;font-size:10px;line-height:1.5;display:flex;position:relative}.lock-note>svg{color:var(--brand);flex:none;margin-top:1px}.date-time-panel{border-left:0;border-right:0;padding:30px}.calendar-title,.times-title{justify-content:space-between;align-items:center;gap:15px;display:flex}.calendar-title h2,.times-title h2{font-size:20px}.date-strip{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-x;cursor:grab;gap:8px;margin:21px 0 29px;display:flex;overflow-x:auto}.date-strip.dragging{cursor:grabbing}.date-strip button{border:1px solid var(--line);cursor:pointer;scroll-snap-align:start;background:#fff;border-radius:13px;flex:0 0 78px;min-width:78px;min-height:88px;padding:13px 6px;transition:all .15s}.date-strip button.empty{opacity:.58;background:#f7faf8}.date-strip button:hover,.date-strip button.active{border-color:var(--brand);border-color:var(--brand);background:#eff9f4;box-shadow:0 0 0 2px #0e7c5a14}.date-strip span,.date-strip strong,.date-strip small{display:block}.date-strip span{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:800}.date-strip strong{margin:3px 0;font:700 20px Sora,sans-serif}.date-strip small{color:var(--muted);font-size:8px}.times-title>span{color:var(--brand-dark);background:var(--brand-pale);border-radius:999px;padding:6px 9px;font-size:9px;font-weight:800}.time-grid{grid-template-columns:1fr 1fr;gap:9px;margin-top:16px;display:grid}.time-choice{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:13px;grid-template-columns:minmax(0,1fr) auto 25px;align-items:center;gap:7px;min-width:0;min-height:73px;padding:12px 12px 12px 15px;display:grid}.time-choice:hover:not(:disabled),.time-choice.active{border-color:var(--brand);background:#f2fbf7}.time-choice:disabled{opacity:.48;cursor:not-allowed}.time-choice strong,.time-choice small{display:block}.time-choice strong{font:700 15px Sora,sans-serif}.time-choice small{color:var(--muted);margin-top:3px;font-size:9px}.places{color:var(--brand);background:var(--brand-pale);white-space:nowrap;border-radius:999px;padding:4px 6px;font-size:8px;font-weight:800}.places.low{color:#855e00;background:#fff4cc}.choice-icon{border:1px solid var(--line);border-radius:8px;place-items:center;width:24px;height:24px;display:grid}.time-choice.active>.choice-icon{color:#fff;border-color:var(--brand);background:var(--brand)}.review-panel{border-radius:0 23px 23px 0;padding:32px 24px}.review-panel>p{color:var(--muted);font-size:11px;line-height:1.55}.review-list{align-content:start;gap:8px;min-height:150px;margin:19px 0;display:grid}.review-list>button{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;grid-template-columns:1fr auto auto;align-items:center;gap:7px;padding:11px;display:grid}.review-list strong,.review-list small{display:block}.review-list strong{font-size:11px}.review-list small{color:var(--muted);font-size:9px}.review-list em{text-transform:capitalize}.review-list .remove-icon{width:26px;height:26px;color:var(--muted);border-radius:8px;place-items:center;display:grid}.review-list button:hover .remove-icon{color:#8b342c;background:#fff0ed}.review-empty{min-height:145px;color:var(--muted);border:1px dashed var(--line);text-align:center;border-radius:13px;align-content:center;place-items:center;gap:5px;display:grid}.review-empty>svg{color:var(--brand)}.review-empty strong{color:var(--ink);font-size:11px}.review-empty small{font-size:9px}.review-submit{width:100%}.privacy-note{color:var(--muted);text-align:center;margin-top:14px;font-size:8px;line-height:1.5;display:block}.compact-empty{min-height:90px;color:var(--muted);border:1px dashed var(--line);text-align:center;border-radius:13px;grid-column:1/-1;place-items:center;padding:20px;font-size:11px;display:grid}.admin-login-shell>.logo-lockup{position:absolute;top:23px;left:30px}.admin-sidebar>.logo-lockup{padding:0 4px 30px}.admin-sidebar nav button b{color:#3b2d00;background:var(--sunshine);border-radius:999px;place-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 5px;font-size:9px;display:grid}.stats-grid.four{grid-template-columns:repeat(4,1fr)}.overview-grid{grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:20px;display:grid}.legend{color:var(--muted);align-items:center;gap:6px;font-size:9px;display:flex}.legend i{background:var(--brand);border-radius:50%;width:8px;height:8px}.legend i.requested{background:var(--sunshine);margin-left:7px}.coverage-list{gap:13px;display:grid}.coverage-row{grid-template-columns:minmax(170px,.8fr) minmax(120px,1.2fr) 38px;align-items:center;gap:13px;display:grid}.coverage-row>div:first-child{align-items:center;min-width:0;display:flex}.coverage-row>div:first-child>span:last-child{min-width:0}.coverage-row strong,.coverage-row small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.coverage-row small{color:var(--muted);font-size:8px}.coverage-track{background:var(--soft);border-radius:999px;height:9px;position:relative;overflow:hidden}.coverage-track i,.coverage-track b{background:var(--brand);position:absolute;inset:0 auto 0 0}.coverage-track b{background:var(--sunshine)}.coverage-row>em{color:var(--muted);text-align:right;font-size:10px;font-style:normal;font-weight:800}.previous-card{color:#fff;background:radial-gradient(circle at 100% 0,#5b5bd67a,#0000 19rem),#084633;overflow:hidden}.previous-card .section-kicker{color:#9ee0c4}.previous-card h2{color:#fff}.previous-metrics{gap:10px;margin:23px 0;display:grid}.previous-metrics div{background:#ffffff14;border-radius:12px;align-items:center;gap:12px;padding:13px;display:flex}.previous-metrics strong{width:47px;color:var(--sunshine);font:800 27px Sora,sans-serif}.previous-metrics span{color:#ffffffbf;font-size:10px}.previous-card>p{color:#ffffffab;font-size:10px;line-height:1.6}.slot-admin-copy small{align-items:center;gap:5px;display:flex}.slot-admin-copy small i{border-radius:50%;width:7px;height:7px}.requests-panel{max-width:1100px}.history-panel{max-width:1180px}.history-filter{width:min(330px,100%)}.history-filter select{padding-block:9px}.filter-grid{border:1px solid var(--line);background:#f8faf9;border-radius:13px;gap:9px;margin:-2px 0 18px;padding:13px;display:grid}.filter-grid.history-filters{grid-template-columns:1.2fr 1.15fr 1fr .82fr .82fr}.filter-grid.roster-filters{grid-template-columns:1.2fr 1fr .72fr .85fr}.filter-grid label>span{margin-bottom:5px}.filter-grid input,.filter-grid select{padding:9px 10px;font-size:10px}.history-summary{grid-template-columns:repeat(3,minmax(120px,1fr));gap:9px;margin:-3px 0 19px;display:grid}.history-summary span{color:var(--muted);background:var(--soft);border-radius:11px;align-items:center;gap:9px;padding:12px;font-size:9px;font-weight:750;display:flex}.history-summary strong{color:var(--ink);font:800 20px Sora,sans-serif}.history-pager{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.history-pager>span{color:var(--muted);font-size:13px;font-weight:650}.history-pager-actions{gap:8px;display:flex}.history-pager-actions .primary-button,.history-pager-actions .secondary-button{min-height:40px;padding:0 14px}.table-subline{color:var(--muted);margin-top:3px;font-size:9px;font-weight:600;display:block}.request-list{gap:8px;display:grid}.request-list article{border:1px solid var(--line);border-radius:13px;grid-template-columns:auto minmax(130px,.8fr) minmax(180px,1fr) auto minmax(145px,auto);align-items:center;gap:12px;min-width:0;padding:12px;display:grid}.request-list article div strong,.request-list article div small{display:block}.request-list article div strong{font-size:12px}.request-list article div small,.request-list time{color:var(--muted);font-size:9px}.request-status{color:#775400;text-transform:capitalize;background:#fff4cc;border-radius:999px;padding:5px 7px;font-size:8px;font-style:normal;font-weight:800}.request-status.approved,.request-status.booked{color:#075139;background:#dff4ea}.request-status.declined{color:#8b342c;background:#fff0ed}.request-status.new{color:var(--indigo);background:#eef}.request-actions{gap:6px;display:flex}.request-actions button,.review-again{background:var(--soft);cursor:pointer;border:0;border-radius:8px;padding:7px 9px;font-size:9px;font-weight:800}.request-actions button.approve,.review-again{color:#fff;background:var(--brand)}.roster-grid{grid-template-columns:1fr;align-items:start;gap:16px;width:100%;min-width:0;display:grid}.roster-grid>*{min-width:0;max-width:100%}.add-student-panel{min-width:0;max-width:100%;height:auto;position:static;overflow:visible}.add-student-panel h2,.add-student-panel>p,.add-student-panel>small{white-space:normal;overflow-wrap:anywhere;word-break:break-word;width:100%;min-width:0;max-width:100%;height:auto;display:block;overflow:visible}.add-student-panel>p{color:var(--muted);font-size:13px;line-height:1.5}.add-student-panel form{gap:13px;min-width:0;max-width:100%;margin:21px 0 13px;display:grid}.pin-mode{min-width:0;min-inline-size:0;border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;max-width:100%;margin:0;padding:0;display:grid}.pin-mode-label,.pin-mode legend{color:var(--muted);grid-column:1/-1;margin:0 0 2px;font-size:11px;font-weight:750}.pin-mode button{border:1px solid var(--line);cursor:pointer;white-space:normal;text-align:center;background:#fff;border-radius:12px;width:100%;min-width:0;min-height:42px;padding:10px 8px;font-size:13px;font-weight:750}.pin-mode button.active{color:var(--brand-dark);border-color:var(--brand);background:var(--brand-pale)}.add-student-panel form .primary-button{width:100%}.add-student-panel form label,.add-student-panel form input,.add-student-panel form select{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.add-student-panel>small{color:var(--muted);font-size:9px;line-height:1.5}.add-student-panel label em{font-weight:500}.muted-row{opacity:.55}.access-toggle{color:#8b342c;cursor:pointer;background:#fff0ed;border:0;border-radius:999px;min-width:55px;padding:5px 7px;font-size:8px;font-weight:800}.access-toggle.active{color:var(--brand-dark);background:var(--brand-pale)}.text-button{color:var(--brand);cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:800}.text-button.subtle{color:var(--muted)}.pin-cell{min-width:175px}.pin-cell>strong{letter-spacing:.05em;margin-bottom:4px;font:700 12px Sora,sans-serif;display:block}.pin-cell>span{flex-wrap:wrap;gap:5px;display:flex}.pin-cell .text-button{padding:0;font-size:8px}.settings-grid{grid-template-columns:1fr;align-items:start;gap:16px;width:100%;min-width:0;display:grid}.settings-grid>*{min-width:0;max-width:100%}.courses-panel{gap:12px;display:grid}.course-editor{border:1px solid var(--line);border-radius:13px;grid-template-columns:minmax(170px,1fr) minmax(130px,.7fr) 82px 48px;align-items:end;gap:10px;padding:13px;display:grid}.course-editor>div{align-items:center;gap:9px;min-width:0;padding-bottom:8px;display:flex}.course-editor>div>i{border-radius:50%;flex:none;width:10px;height:10px}.course-editor strong,.course-editor small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.course-editor small{color:var(--muted);font-size:8px}.course-editor input{padding:8px;font-size:10px}button,input,select,textarea{font-weight:600}.button-with-icon,.icon-link{justify-content:center;align-items:center;gap:7px;display:inline-flex}.button-with-icon>svg,.icon-link>svg{flex:none}@media (max-width:1100px){.calendly-shell{grid-template-columns:minmax(210px,.55fr) minmax(430px,1.3fr)}.review-panel{border:1px solid var(--line);border-top:0;border-radius:0 0 23px 23px;grid-column:1/-1}.review-list{grid-template-columns:repeat(2,1fr);min-height:0}.course-summary{border-radius:23px 0 0}.date-time-panel{border-right:1px solid var(--line);border-radius:0 23px 0 0}.stats-grid.four{grid-template-columns:1fr 1fr}.roster-grid,.settings-grid{grid-template-columns:1fr}.add-student-panel{position:static}.filter-grid.history-filters,.filter-grid.roster-filters{grid-template-columns:1fr 1fr}}@media (max-width:780px){.student-login-brand{left:18px}.student-login-card{padding:29px 22px}.student-login-card h1{font-size:29px}.booking-topbar{min-height:65px}.booking-topbar .logo-lockup span,.student-profile-copy{display:none}.booking-heading{padding:25px 18px 18px}.booking-heading .timezone-pill{display:none}.calendly-shell{grid-template-columns:1fr;padding:0 14px 50px}.course-summary,.date-time-panel,.review-panel{border:1px solid var(--line);border-radius:0}.course-summary{border-radius:19px 19px 0 0}.course-summary dl{grid-template-columns:repeat(3,1fr);gap:8px}.course-summary dl div{border-bottom:0;border-right:1px solid var(--line)}.course-summary dl div:last-child{border:0}.booking-steps{display:flex}.booking-steps span{text-align:center;flex:1;font-size:9px;display:block}.booking-steps span:not(:last-child):after{border-left:0;border-top:1px dashed var(--line);width:calc(100% - 34px);height:auto;top:12px;left:calc(50% + 17px)}.booking-steps b{margin:0 auto 6px}.date-time-panel{padding:22px 16px}.calendar-title{flex-direction:column;align-items:start}.date-strip{padding-bottom:5px;display:flex;overflow-x:auto}.date-strip button{flex:0 0 75px}.review-panel{border-radius:0 0 19px 19px}.review-list{grid-template-columns:1fr}.admin-sidebar>.logo-lockup{padding:0 10px 0 0}.admin-sidebar>.logo-lockup span{display:none}.overview-grid{grid-template-columns:1fr}.request-list article{grid-template-columns:auto 1fr auto}.request-list article time{grid-column:2}.request-list article>.request-status{grid-area:1/3}.request-list .request-actions,.request-list .review-again{grid-column:2/-1}.course-editor{grid-template-columns:1fr 90px 45px}.course-editor>div{grid-column:1/-1}.course-editor>label:first-of-type{grid-column:1}.slot-roster-bar{padding-left:12px}}@media (max-width:520px){.student-login-shell{padding-inline:13px}.student-login-brand span{font-size:13px}.booking-heading h1{font-size:27px}.course-summary dl{grid-template-columns:1fr}.course-summary dl div{border-right:0;border-bottom:1px solid var(--line);padding-bottom:9px}.time-grid,.stats-grid.four{grid-template-columns:1fr}.coverage-row{grid-template-columns:minmax(125px,1fr) minmax(80px,.8fr) 29px;gap:7px}.admin-header .week-switcher{justify-content:space-between;width:100%}.admin-slot-row{grid-template-columns:48px 1fr 61px}.roster-panel{padding-inline:8px}.history-summary,.filter-grid.history-filters,.filter-grid.roster-filters{grid-template-columns:1fr}}:focus-visible{outline:3px solid var(--brand)}@supports (color:color-mix(in lab, red, red)){:focus-visible{outline:3px solid color-mix(in srgb, var(--brand) 35%, transparent)}}:focus-visible{outline-offset:2px}button,a,input,select,textarea{touch-action:manipulation}button{transition:transform .16s,background-color .16s,border-color .16s,color .16s,box-shadow .16s}.admin-main{width:100%;max-width:1600px;margin-inline:auto}.panel{transition:border-color .18s,box-shadow .18s}.table-wrap{border:1px solid var(--line);scrollbar-width:thin;scrollbar-color:#a8b8af transparent;overscroll-behavior-inline:contain;border-radius:13px}.table-wrap table{min-width:680px}.table-wrap th{z-index:2;background:#f8faf9;position:sticky;top:0}.table-wrap tr:last-child td{border-bottom:0}.table-wrap tbody tr:hover{background:#fbfdfc}.primary-button,.secondary-button{min-height:44px}.review-submit{min-height:48px}.review-panel{align-self:start}.student-profile button{border-radius:999px;min-height:38px;padding-inline:10px}.date-strip{scrollbar-width:none}.date-strip::-webkit-scrollbar{display:none}.admin-sidebar nav::-webkit-scrollbar{display:none}@media (min-width:1101px){.review-panel{position:sticky;top:18px}}@media (max-width:1024px){.admin-shell{display:block}.admin-sidebar{z-index:50;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#084633f7;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px 12px;width:100%;height:auto;padding:10px 16px 0;display:grid;position:sticky;top:0;overflow:visible;box-shadow:0 10px 30px #04261a29}.admin-sidebar>.logo-lockup{min-width:0;padding:0}.admin-sidebar>.logo-lockup img{width:37px;height:37px}.admin-sidebar>.logo-lockup span{white-space:nowrap;display:inline}.admin-sidebar nav{scroll-snap-type:x proximity;grid-column:1/-1;gap:4px;padding:1px 0 9px;display:flex;overflow-x:auto}.admin-sidebar nav button{white-space:nowrap;scroll-snap-align:start;border-radius:10px;flex:1 0 auto;justify-content:center;gap:7px;width:auto;min-width:92px;min-height:42px;padding:8px 10px;font-size:11px}.admin-sidebar nav button>svg{width:22px;height:22px}.admin-sidebar nav button.active{color:#fff;box-shadow:inset 0 -3px var(--sunshine);background:#ffffff24}.admin-sidebar .sidebar-bottom{align-items:center;margin:0;display:flex}.admin-sidebar .sidebar-bottom .view-site{display:none}.admin-sidebar .sidebar-bottom button{color:#d9e9e1;white-space:nowrap;border:1px solid #ffffff29;border-radius:999px;min-height:38px;padding:7px 10px}.admin-main{padding:28px clamp(16px,3vw,30px) 64px}.admin-header{margin-bottom:24px}.admin-header h1{font-size:clamp(29px,4vw,36px)}.admin-grid{grid-template-columns:1fr}.overview-grid{grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr)}.roster-grid,.settings-grid{grid-template-columns:1fr}.add-student-panel{position:static}.stats-grid.four{grid-template-columns:repeat(2,1fr)}.panel{padding:clamp(18px,2.6vw,24px)}}@media (min-width:781px) and (max-width:1024px){.calendly-shell{grid-template-columns:minmax(205px,.55fr) minmax(420px,1.2fr);padding-inline:20px}.booking-heading{padding-inline:22px}.course-summary{padding:27px 20px}.date-time-panel{padding:26px 22px}.review-panel{padding:25px 22px}.review-list{grid-template-columns:repeat(2,minmax(0,1fr))}.date-strip button{padding-inline:4px}}@media (max-width:780px){.booking-topbar{z-index:40;padding:9px 14px;position:sticky;top:0;box-shadow:0 5px 18px #08463312}.booking-topbar .logo-lockup img{width:39px;height:39px}.student-profile{gap:5px}.student-profile .avatar{width:34px;height:34px}.student-profile button{border:1px solid var(--line);background:#fff;align-items:center;display:inline-flex}.booking-heading{padding:22px 16px 16px}.booking-heading p{max-width:38rem;line-height:1.55}.calendly-shell{padding-inline:10px;padding-bottom:42px}.course-summary{padding:23px 18px 20px}.course-dot{margin-bottom:20px}.course-summary dl{grid-template-columns:1fr;gap:0;margin:20px 0}.course-summary dl div{border:0;border-bottom:1px solid var(--line);min-width:0;padding:10px 0}.course-summary dl div:last-child{border-bottom:0}.course-summary dd{overflow-wrap:anywhere;font-size:10px}.lock-note{margin-top:20px}.date-time-panel{padding:20px 14px}.calendar-title .week-switcher{justify-content:space-between;width:100%}.calendar-title .week-switcher button{min-width:44px;min-height:44px}.date-strip{scroll-snap-type:x mandatory;gap:7px;margin:18px -2px 25px}.date-strip button{scroll-snap-align:start;flex-basis:78px;min-height:73px}.time-choice{min-height:70px}.review-panel{padding:23px 16px calc(24px + env(safe-area-inset-bottom))}.review-list{min-height:0}.review-empty{min-height:115px}footer{padding-bottom:calc(26px + env(safe-area-inset-bottom))}.admin-sidebar{padding-inline:11px}.admin-sidebar>.logo-lockup span{font-size:13px;display:inline}.admin-sidebar nav button{min-width:82px;padding-inline:7px;font-size:9px}.admin-sidebar nav button>svg{width:23px;height:23px}.admin-sidebar .sidebar-bottom button{font-size:9px}.admin-main{padding:22px 12px 54px}.admin-header{align-items:stretch;gap:15px}.admin-header .week-switcher{justify-content:space-between;width:100%}.admin-header .week-switcher button{min-width:44px}.panel{border-radius:16px}.panel-head{gap:12px}.stats-grid.four{gap:9px}.stats-grid article{border-radius:15px;padding:16px}.stats-grid strong{font-size:28px}.filter-grid{padding:10px}.request-list article{padding:11px}.table-wrap{margin-inline:-3px}.slot-roster-bar button{min-height:34px}.slot-student-list>span{min-height:36px}}@media (max-width:560px){.student-login-shell{min-height:100svh;padding:78px 10px 52px}.student-login-brand{top:14px;left:14px}.student-login-brand img{width:43px;height:43px}.student-login-card{border-radius:22px;padding:25px 17px}.login-illustration{width:68px;height:68px;margin-bottom:14px}.login-illustration img{width:66px;height:66px}.student-login-card h1{font-size:27px}.student-login-card form{margin-top:20px}.student-login-card input{min-height:48px}.login-mode-switch button{min-height:42px}.login-admin-link{bottom:16px}.booking-heading h1{font-size:25px}.course-summary h2,.date-time-panel h2,.review-panel h2{font-size:20px}.booking-steps span{font-size:8px}.time-grid{grid-template-columns:1fr}.time-choice{min-height:66px}.stats-grid.four{grid-template-columns:1fr 1fr}.overview-grid{grid-template-columns:1fr}.admin-sidebar>.logo-lockup span{text-overflow:ellipsis;max-width:145px;overflow:hidden}.admin-sidebar nav{margin-inline:-11px;padding-inline:11px}.admin-sidebar nav button{flex-basis:78px;min-width:78px}.admin-header h1{font-size:28px}.admin-slot-row{grid-template-columns:48px minmax(0,1fr) 62px;gap:8px;padding:9px}.admin-slot-row .status-button{grid-column:2;min-height:36px}.admin-slot-row .save-mini{grid-column:3;min-height:36px}.capacity-control{grid-area:1/3}.slot-roster-bar{padding:0 10px 8px}.history-summary{gap:7px}.history-summary span{padding:10px}.filter-grid.history-filters,.filter-grid.roster-filters{grid-template-columns:1fr}.course-editor{grid-template-columns:minmax(0,1fr) 86px 48px}.request-list article{grid-template-columns:auto minmax(0,1fr) auto}}@media (max-width:380px){.stats-grid.four{grid-template-columns:1fr}.student-profile .avatar{display:none}.course-summary dl{grid-template-columns:1fr}.course-summary dl div{border-right:0;border-bottom:1px solid var(--line);padding:8px 0}.course-summary dl div:last-child{border-bottom:0}.admin-sidebar>.logo-lockup span{display:none}.admin-sidebar nav button{flex-basis:74px;min-width:74px}}.timezone-control{color:#5f7468;background:#fff;border:1px solid #dce6e0;border-radius:16px;flex-direction:column;align-items:stretch;gap:6px;width:min(280px,100%);min-width:220px;padding:10px 12px 12px;display:flex;box-shadow:0 10px 24px -20px #0e241673}.timezone-kicker{color:#0e7c5a;letter-spacing:.12em;text-transform:uppercase;padding-left:2px;font-size:11px;font-weight:800}.timezone-field{background:#f3f7f4;border-radius:12px;align-items:center;min-width:0;min-height:40px;padding:0 8px 0 10px;display:flex;position:relative}.timezone-field svg{color:#0e7c5a;flex:none}.timezone-field select{color:#12251c;appearance:none;cursor:pointer;background:0 0;border:0;border-radius:12px;flex:1;min-width:0;min-height:40px;padding:0 28px 0 8px;font-size:14px;font-weight:700;line-height:1.2}.timezone-field:after{content:"";pointer-events:none;border-bottom:2px solid #0e7c5a;border-right:2px solid #0e7c5a;width:8px;height:8px;position:absolute;right:12px;transform:rotate(45deg)translateY(-2px)}.timezone-control.is-compact{width:auto;min-width:0;max-width:100%;color:inherit;box-shadow:none;background:0 0;border:0;border-radius:0;align-items:stretch;gap:0;padding:0;display:inline-flex;position:relative}.timezone-control.is-compact select{z-index:2;opacity:0;cursor:pointer;width:100%;min-width:0;min-height:0;margin:0;padding:0;font-size:16px;position:absolute;inset:0}.timezone-chip{color:#12251c;pointer-events:none;background:#fff;border:1px solid #dce6e0;border-radius:999px;align-items:center;gap:8px;max-width:100%;min-height:42px;padding:0 14px 0 12px;transition:border-color .16s,background .16s,box-shadow .16s;display:inline-flex;box-shadow:0 8px 18px -16px #0e241680}.timezone-chip svg{color:#0e7c5a;flex:none}.timezone-chip-copy{align-items:baseline;gap:8px;min-width:0;display:inline-flex}.timezone-chip-copy strong{letter-spacing:-.01em;white-space:nowrap;font-size:13px;font-weight:800}.timezone-chip-copy em{color:#5f7468;font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-style:normal;font-weight:700;display:inline-flex}.timezone-chip-copy em span{color:#c3d2ca}.timezone-chip-caret{border-bottom:2px solid #0e7c5a;border-right:2px solid #0e7c5a;flex:none;width:7px;height:7px;margin-left:2px;transform:rotate(45deg)translateY(-1px)}.timezone-control.is-compact:hover .timezone-chip,.timezone-control.is-compact:focus-within .timezone-chip{background:#f7fbf8;border-color:#b7ddc8;box-shadow:0 0 0 3px #087a551f}.demo-app .timezone-control.is-compact{flex:none}@media (prefers-reduced-motion:reduce){.timezone-chip{transition:none}}.admin-header-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.add-date-time-grid{grid-template-columns:1.25fr .75fr;gap:10px;display:grid}.database-protection-card{background:linear-gradient(135deg,#f3fbf6,#fff);border-color:#b9dfca;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:16px;margin-bottom:14px;display:grid}.database-protection-icon{background:var(--brand-pale);width:48px;height:48px;color:var(--brand-dark);border-radius:14px;place-items:center;display:grid}.database-protection-card h2{margin:4px 0 5px;font-size:20px}.database-protection-card p{max-width:690px;color:var(--muted);margin:0;font-size:11px;line-height:1.55}.database-protection-card dl{gap:20px;margin:0;display:flex}.database-protection-card dl div{min-width:82px}.database-protection-card dt,.database-protection-card dd{display:block}.database-protection-card dt{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:9px;font-weight:750}.database-protection-card dd{margin:4px 0 0;font-size:12px;font-weight:800}.backup-card{gap:16px;margin-bottom:14px;display:grid}.backup-card-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:14px;display:grid}.backup-card-icon{color:#8a6400;background:#fff4d6;border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.backup-card h2{margin:4px 0 6px;font-size:20px}.backup-card-head p{max-width:720px;color:var(--muted);margin:0;font-size:12px;line-height:1.55}.backup-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;display:grid}.backup-stats div{border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 12px}.backup-stats dt{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:9px;font-weight:750}.backup-stats dd{margin:4px 0 0;font-size:13px;font-weight:800}.backup-columns{grid-template-columns:1fr 1fr;gap:12px;display:grid}.backup-columns.three{grid-template-columns:repeat(3,minmax(0,1fr))}.backup-columns article,.backup-full-row{background:#f8fbf9;border:1px dashed #d7e4db;border-radius:14px;padding:14px}.backup-columns article>span,.backup-full-row small{color:var(--muted)}.backup-columns article>span{letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:800}.backup-columns h3{margin:4px 0 6px;font-size:16px}.backup-columns p{color:var(--muted);margin:0 0 12px;font-size:12px;line-height:1.5}.backup-actions{flex-wrap:wrap;gap:8px;display:flex}.backup-actions .primary-button,.backup-actions .secondary-button{min-height:40px;padding:8px 13px;font-size:11px}.backup-full-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.backup-full-row strong,.backup-full-row small{display:block}.backup-full-row small{margin-top:4px;font-size:11px;line-height:1.45}.backup-card .notice{text-align:left;max-width:none;margin:0}.backup-history-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.backup-history ul{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:grid}.backup-history li{border:1px solid var(--line);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.backup-history strong,.backup-history small{display:block}.backup-history small{color:var(--muted);margin-top:3px;font-size:11px}@media (max-width:720px){.backup-card-head,.backup-columns,.backup-columns.three,.backup-stats,.backup-history-grid{grid-template-columns:1fr}.backup-card-head>button{justify-self:start}}.demo-app{min-height:100vh;color:var(--ink);background:radial-gradient(circle at 100% 0,#fff0df 0,#0000 34%),#f7faf8}.demo-topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffdb;justify-content:space-between;align-items:center;gap:20px;min-height:82px;padding:14px clamp(18px,5vw,72px);display:flex}.demo-hero{text-align:center;max-width:780px;margin:0 auto;padding:54px 22px 30px}.demo-hero h1{letter-spacing:-.045em;margin:8px 0 12px;font-size:clamp(34px,5vw,58px);line-height:1.02}.demo-hero p{max-width:620px;color:var(--muted);margin:auto;font-size:15px;line-height:1.7}.demo-flow{grid-template-columns:.78fr 1.35fr .9fr;align-items:start;gap:14px;width:min(1320px,100% - 40px);margin:0 auto 54px;display:grid}.demo-flow .panel{min-width:0}.demo-summary{position:sticky;top:18px}.demo-summary .course-dot{background:var(--course)}.demo-summary h2,.demo-picker h2,.demo-contact h2{margin:6px 0 16px}.demo-summary dl{gap:12px;margin:24px 0;display:grid}.demo-summary dl div{border-bottom:1px solid var(--line);justify-content:space-between;gap:14px;padding-bottom:10px;display:flex}.demo-summary dt{color:var(--muted)}.demo-summary dd{text-align:right;margin:0;font-weight:750}.demo-picker .date-strip{margin:18px 0}.demo-contact{position:sticky;top:18px}.demo-contact>p{color:var(--muted);line-height:1.6}.demo-contact label{gap:6px;margin-top:14px;display:grid}.demo-contact label span{color:var(--muted);font-size:10px;font-weight:800}.demo-contact .primary-button{width:100%;margin-top:14px}.demo-contact select,.demo-contact input{width:100%}.demo-week-toggle{grid-template-columns:1fr 1fr;gap:8px;margin:16px 0 8px;display:grid}.demo-week-toggle button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;min-height:44px;font-weight:750}.demo-week-toggle button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.demo-review{border:1px solid var(--line);background:#fffaf3;border-radius:12px;align-items:center;gap:10px;min-height:68px;margin-top:18px;padding:12px;display:flex}.demo-review span,.demo-review strong,.demo-review small{display:block}.demo-review small{color:var(--muted)}.demo-success{text-align:center;width:min(560px,100% - 40px);margin:22px auto 80px;padding:42px}.demo-success-icon{width:58px;height:58px;color:var(--green);background:#e5f6ed;border-radius:50%;place-items:center;margin:0 auto 18px;display:grid}.demo-success p{color:var(--muted);line-height:1.65}@media (max-width:1050px){.demo-flow{grid-template-columns:.75fr 1.25fr}.demo-contact{grid-column:1/-1;position:static}}@media (max-width:720px){.database-protection-card{grid-template-columns:auto 1fr}.database-protection-card dl{grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.demo-topbar{flex-direction:column;align-items:stretch;gap:10px}.demo-app .timezone-control.is-compact{width:100%;max-width:none;display:block}.demo-app .timezone-chip{border-radius:16px;justify-content:space-between;width:100%;min-height:48px;padding:0 16px 0 14px}.demo-app .timezone-chip-copy{flex:1;justify-content:space-between;align-items:center}.demo-app .timezone-chip-copy strong{font-size:15px}.demo-app .timezone-chip-copy em{font-size:13px}.demo-hero{padding-top:36px}.demo-flow{grid-template-columns:1fr;width:min(100% - 24px,620px)}.demo-summary,.demo-contact{grid-column:auto;position:static}.demo-picker .calendar-title{flex-direction:column;align-items:flex-start}}.selected-day-preview{color:var(--brand-dark);background:var(--brand-pale);border-radius:11px;align-items:center;gap:9px;margin:-2px 0 14px;padding:11px;display:flex}.selected-day-preview>svg{flex:none}.selected-day-preview strong,.selected-day-preview small{display:block}.selected-day-preview strong{font-size:11px}.selected-day-preview small{color:var(--muted);margin-top:2px;font-size:8px}.slot-roster-actions{flex-wrap:wrap;align-items:center;gap:14px;display:inline-flex}.slot-time-editor{background:var(--soft);border-radius:11px;grid-template-columns:1.15fr .8fr 70px minmax(145px,1fr) auto;align-items:end;gap:9px;margin:0 11px 11px;padding:12px;display:grid}.slot-time-editor label span{color:var(--muted);margin-bottom:4px;font-size:8px;font-weight:800;display:block}.slot-time-editor input{min-width:0;padding:8px;font-size:10px}.slot-time-preview{min-width:0;padding-bottom:5px}.slot-time-preview strong,.slot-time-preview small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.slot-time-preview strong{font-size:10px}.slot-time-preview small{color:var(--muted);margin-top:3px;font-size:8px}.slot-time-editor .save-mini{white-space:nowrap;color:#fff;background:var(--brand);min-height:35px}.slot-time-editor .meet-link-field{grid-column:1/-1}.slot-time-editor .meet-link-field input{width:100%}.calendar-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.calendar-actions a{border:1px solid var(--line);min-height:36px;color:var(--brand-dark);background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:7px 11px;font-size:12px;font-weight:800;display:inline-flex}.calendar-actions a:hover{border-color:var(--brand);background:var(--brand-pale)}.calendar-actions .meet-button{color:#fff;border-color:var(--brand);background:var(--brand)}.calendar-actions .meet-button:hover{color:#fff;background:var(--brand-dark)}.meet-pending{color:var(--muted);font-size:12px;font-weight:700}.review-panel>.calendar-actions{margin:4px 0 10px}.student-booking-card>.calendar-actions{grid-column:1/-1}.student-history-list .calendar-actions{margin-top:7px}.demo-success .calendar-actions{justify-content:center;margin:20px 0}.review-saved-actions{gap:10px;margin-top:12px;display:grid}.review-saved-class{border:1px solid var(--line);text-align:left;background:#f7fbf8;border-radius:14px;gap:8px;padding:12px;display:grid}.review-saved-class strong,.review-saved-class small{display:block}.review-saved-class small{color:var(--muted);margin-top:3px}.student-booking-records{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;max-width:1320px;margin:-38px auto 70px;padding:0 28px;display:grid}.student-record-panel{border:1px solid var(--line);background:#fff;border-radius:20px;min-width:0;padding:24px;box-shadow:0 12px 32px -26px #08463380}.student-record-head{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:17px;display:flex}.student-record-head h2{letter-spacing:-.035em;margin:5px 0 4px;font:750 21px/1.2 Sora,sans-serif}.student-record-head p{color:var(--muted);margin:0;font-size:10px;line-height:1.5}.student-record-head .secondary-button{white-space:nowrap;min-height:38px;padding:8px 10px;font-size:9px}.current-booking-grid,.student-history-list{gap:8px;display:grid}.student-booking-card{border:1px solid var(--line);background:#fbfdfc;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px;display:grid}.student-booking-card.approved,.student-booking-card.booked{background:#f3fbf7;border-color:#b7dfcd}.student-booking-card.declined{background:#fff8f6;border-color:#f0cbc5}.booking-status-icon{color:#855e00;background:#fff4cc;border-radius:11px;place-items:center;width:35px;height:35px;display:grid}.student-booking-card.approved .booking-status-icon,.student-booking-card.booked .booking-status-icon{color:#075139;background:#dff4ea}.student-booking-card.declined .booking-status-icon{color:#8b342c;background:#fff0ed}.student-booking-card>div{min-width:0}.student-booking-card>div strong,.student-booking-card>div small,.booking-course{display:block}.booking-course{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;font-size:8px;font-weight:800}.student-booking-card>div strong{font-size:11px}.student-booking-card>div small{color:var(--muted);margin-top:3px;font-size:8px}.student-booking-card>p{color:var(--muted);grid-column:2/-1;margin:-2px 0 0;font-size:8px}.student-status-pill{color:#775400;white-space:nowrap;background:#fff4cc;border-radius:999px;justify-content:center;align-items:center;gap:4px;padding:6px 8px;font-size:8px;font-weight:850;display:inline-flex}.student-status-pill.approved,.student-status-pill.booked{color:#075139;background:#dff4ea}.student-status-pill.declined{color:#8b342c;background:#fff0ed}.history-count{color:var(--muted);background:var(--soft);white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:8px;font-weight:800}.student-history-list{scrollbar-width:thin;max-height:355px;padding-right:3px;overflow-y:auto}.student-history-list>article{border:1px solid var(--line);border-radius:12px;grid-template-columns:47px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.history-date{background:var(--soft);text-align:center;border-radius:9px;place-items:center;padding:6px 3px;display:grid}.history-date strong,.history-date small,.student-history-list article>div strong,.student-history-list article>div small{display:block}.history-date strong{font:750 16px Sora,sans-serif}.history-date small{color:var(--muted);font-size:7px}.student-history-list article>div{min-width:0}.student-history-list article>div strong{white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.student-history-list article>div small{color:var(--muted);margin-top:3px;font-size:8px}.record-empty{min-height:125px;color:var(--muted);border:1px dashed var(--line);text-align:center;border-radius:13px;align-content:center;place-items:center;gap:5px;display:grid}.record-empty.compact{min-height:118px}.record-empty>svg{color:var(--brand)}.record-empty strong{color:var(--ink);font-size:10px}.record-empty small{font-size:8px}@media (max-width:1024px){.admin-header-tools{justify-content:space-between;width:100%}.slot-time-editor{grid-template-columns:1fr 1fr 72px}.slot-time-preview{grid-column:1/3}.slot-time-editor .save-mini{grid-column:3}.student-booking-records{grid-template-columns:1fr}}@media (max-width:780px){.booking-heading{flex-direction:column;align-items:stretch;gap:14px}.booking-heading .timezone-control{width:100%}.timezone-control{min-width:210px}.admin-header-tools{flex-direction:column;align-items:stretch}.admin-header-tools .timezone-control,.admin-header-tools .week-switcher{width:100%}.slot-roster-bar{flex-direction:column;align-items:flex-start}.slot-time-editor{grid-template-columns:1fr 1fr}.slot-time-editor>label:nth-of-type(3){grid-column:1}.slot-time-preview{grid-column:2}.slot-time-editor .save-mini{grid-column:1/-1!important}.student-booking-records{margin-top:-24px;padding-inline:10px}.student-record-panel{border-radius:17px;padding:18px 14px}}@media (max-width:520px){.add-date-time-grid{grid-template-columns:1fr;gap:0}.student-record-head{flex-direction:column}.student-record-head .secondary-button{width:100%}.student-booking-card{grid-template-columns:auto minmax(0,1fr)}.student-booking-card>.student-status-pill{grid-column:2;justify-self:start}.student-booking-card>p{grid-column:2}.student-history-list>article{grid-template-columns:43px minmax(0,1fr)}.student-history-list article>.student-status-pill{grid-column:2;justify-self:start}.slot-time-editor{grid-template-columns:1fr}.slot-time-editor>label:nth-of-type(3),.slot-time-preview,.slot-time-editor .save-mini{grid-column:1!important}}.mobile-booking-dock{display:none}@media (max-width:780px){html,body{overflow-x:hidden}button,a,input,select,textarea{touch-action:manipulation}input,select,textarea{min-height:48px;font-size:16px!important}.primary-button,.secondary-button{justify-content:center;min-height:48px}.review-submit,.student-login-card .primary-button,.demo-contact .primary-button,.login-card .primary-button,.add-student-panel .primary-button,.add-panel .primary-button{width:100%}.week-switcher{justify-content:space-between;width:100%}.week-switcher button{min-width:44px;min-height:44px}.week-switcher span{flex:1;min-width:0;font-size:13px}.student-login-shell{min-height:100svh;padding:calc(18px + env(safe-area-inset-top)) 16px calc(28px + env(safe-area-inset-bottom));align-content:start;place-items:start center}.student-login-brand{margin:0 0 18px;position:static}.student-login-card{border-radius:22px;width:100%;padding:22px 18px}.student-login-card h1{font-size:26px}.student-login-card>p{font-size:14px}.login-mode-switch button{min-height:44px;font-size:13px}.student-login-card form .primary-button{min-height:52px}.install-home-button{gap:10px;min-height:88px;padding:12px}.install-home-copy strong{font-size:15px}.install-home-cta{min-height:36px;padding:0 12px}.pin-input{letter-spacing:.28em;font-size:22px}.login-admin-link{text-align:center;margin-top:22px;display:block;position:static}.booking-app{min-height:100svh;padding-bottom:calc(96px + env(safe-area-inset-bottom))}.booking-topbar{z-index:40;min-height:56px;padding:calc(8px + env(safe-area-inset-top)) 14px 8px;gap:10px;position:sticky;top:0}.booking-topbar .logo-lockup{min-width:0}.booking-topbar .logo-lockup img{width:36px;height:36px}.booking-topbar .logo-lockup span{text-overflow:ellipsis;white-space:nowrap;max-width:42vw;font-size:14px;display:inline;overflow:hidden}.student-profile{gap:8px;min-width:0}.student-profile-copy{min-width:0;display:block}.student-profile-copy strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.student-profile-copy small{display:none}.student-profile .avatar{width:32px;height:32px;font-size:13px}.student-profile button{border:1px solid var(--line);background:#fff;min-width:44px;min-height:44px;padding:8px 10px;font-size:12px}.booking-heading{gap:12px;padding:16px 14px 12px}.booking-heading h1{overflow-wrap:anywhere;font-size:24px}.booking-heading p{font-size:14px;line-height:1.5}.timezone-control{width:100%;min-width:0}.timezone-field,.timezone-field select{min-height:44px}.timezone-field select{font-size:16px!important}.calendly-shell{grid-template-columns:1fr;padding:0 12px 24px}.course-summary,.date-time-panel,.review-panel{border-radius:18px}.course-summary{padding:16px 16px 14px}.course-dot,.course-summary .booking-steps{display:none}.course-summary h2{font-size:20px}.course-summary dl{grid-template-columns:1fr;gap:0;margin:12px 0 0}.course-summary dl div{border:0;min-width:0;padding:8px 8px 0 0}.course-summary dt{font-size:11px}.course-summary dd{overflow-wrap:anywhere;font-size:13px}.lock-note{margin-top:12px;font-size:13px;line-height:1.45}.date-time-panel{border:1px solid var(--line);padding:16px 14px 18px}.calendar-title,.times-title{flex-direction:column;align-items:stretch;gap:10px}.calendar-title h2,.times-title h2,.review-panel h2{font-size:20px}.times-title>span{align-self:start;padding:7px 10px;font-size:12px}.date-strip{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;gap:8px;margin:14px 0 18px;padding-bottom:4px;display:flex;overflow-x:auto}.date-strip button{scroll-snap-align:start;flex:0 0 86px;min-height:84px;padding:12px 8px}.date-strip span{font-size:12px}.date-strip strong{font-size:22px}.date-strip small{font-size:11px}.time-grid{grid-template-columns:1fr 1fr;gap:8px}.time-choice{min-height:64px;padding:12px}.time-choice strong{font-size:16px}.time-choice small{font-size:12px}.teacher-chip{font-size:11px}.teacher-filter-row{margin-bottom:10px}.places{padding:5px 8px;font-size:11px}.choice-icon{width:28px;height:28px}.review-panel{display:none}.mobile-booking-dock{z-index:80;padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;display:block;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 32px #0846331f}.mobile-booking-dock .notice{text-align:left;max-width:none;margin:0 0 8px;font-size:13px}.mobile-dock-bar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.mobile-dock-copy{min-width:0}.mobile-dock-copy strong,.mobile-dock-copy small{display:block}.mobile-dock-copy strong{font-size:14px}.mobile-dock-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;line-height:1.35;overflow:hidden}.mobile-booking-dock .primary-button{width:auto;min-width:108px;min-height:48px;padding:12px 16px}.student-booking-records{grid-template-columns:1fr;margin:8px auto 24px;padding:0 12px}.student-record-head{flex-direction:column}#this-week-bookings{scroll-margin-top:72px;scroll-margin-bottom:110px}.student-record-panel{border-radius:18px;padding:16px 14px}.student-record-head h2{font-size:20px}.student-record-head p{font-size:13px}.student-booking-card{grid-template-columns:auto minmax(0,1fr);gap:10px;padding:14px}.student-booking-card>.student-status-pill{grid-column:2;justify-self:start;min-height:28px;font-size:12px}.student-booking-card>p{grid-column:1/-1;font-size:13px;line-height:1.45}.student-booking-card>div strong{overflow-wrap:anywhere;font-size:15px}.student-booking-card>div small{font-size:12px}.booking-course{font-size:11px}.student-history-list{max-height:none}.student-history-list>article{grid-template-columns:48px minmax(0,1fr)}.student-history-list article>.student-status-pill{grid-column:2;justify-self:start}.student-history-list article>div strong{white-space:normal;font-size:14px}.student-history-list article>div small{font-size:12px}.calendar-actions{grid-template-columns:1fr;gap:8px;display:grid}.calendar-actions a{width:100%;min-height:44px;padding:10px 12px;font-size:13px}.record-empty strong{font-size:14px}.record-empty small{font-size:12px}footer{padding:18px 14px calc(20px + env(safe-area-inset-bottom));font-size:12px}.demo-app{min-height:100svh;padding-bottom:env(safe-area-inset-bottom)}.demo-topbar{min-height:56px;padding:calc(8px + env(safe-area-inset-top)) 14px 10px;flex-direction:column;align-items:stretch;gap:10px}.demo-hero{padding:22px 16px 16px}.demo-hero h1{font-size:28px}.demo-hero p{font-size:15px}.demo-flow{grid-template-columns:1fr;gap:12px;width:calc(100% - 24px);margin-bottom:28px}.demo-summary,.demo-contact{position:static}.demo-summary .booking-steps{display:none}.demo-summary dl{margin:14px 0 0}.demo-picker .calendar-title{flex-direction:column;align-items:stretch}.demo-contact{padding-bottom:20px}.demo-contact input{min-height:48px}.demo-contact .primary-button{min-height:52px}.demo-success{width:calc(100% - 24px);padding:24px 18px}.demo-success .secondary-button{width:100%}.admin-login-shell{padding:calc(18px + env(safe-area-inset-top)) 16px 24px}.admin-login-shell>.logo-lockup,.admin-login-shell>.brand{margin-bottom:18px;position:static}.login-card{padding:24px 18px}.login-card h1{font-size:28px}.admin-sidebar{padding-top:env(safe-area-inset-top)}.admin-sidebar nav button{min-height:44px;font-size:12px}.admin-main{padding:18px 12px calc(32px + env(safe-area-inset-bottom))}.admin-header h1{overflow-wrap:anywhere;font-size:26px}.filter-grid input,.filter-grid select{min-height:44px;font-size:16px!important}.access-toggle,.text-button{min-height:36px;font-size:12px}.admin-slot-row input,.capacity-control input,.slot-time-editor input,.course-editor input{min-height:40px}.table-wrap{max-width:100%}}@media (max-width:400px){.booking-topbar .logo-lockup span,.student-profile .avatar{display:none}.time-grid,.course-summary dl{grid-template-columns:1fr}.course-summary dl div{border-bottom:1px solid var(--line);padding:8px 0}.course-summary dl div:last-child{border-bottom:0}.mobile-dock-bar{grid-template-columns:1fr}.mobile-booking-dock .primary-button{width:100%}}.demo-app[lang=hi],.demo-app[lang=mr],.demo-lang-bar button[lang=hi] span,.demo-lang-bar button[lang=mr] span{font-family:Noto Sans Devanagari,Manrope,ui-sans-serif,sans-serif}.demo-app[lang=bn],.demo-lang-bar button[lang=bn] span{font-family:Noto Sans Bengali,Manrope,ui-sans-serif,sans-serif}.demo-app:not([lang=en]) h1,.demo-app:not([lang=en]) h2{letter-spacing:0;font-family:inherit;line-height:1.25}.demo-lang-switcher{gap:10px;width:min(560px,100% - 40px);margin:16px auto 0;display:grid}.demo-lang-bar{border:1px solid var(--line);background:var(--soft);border-radius:18px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;display:grid}.demo-lang-bar button{min-height:48px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:14px;place-items:center;gap:1px;padding:6px 8px;transition:background .18s,color .18s,box-shadow .18s,transform .15s ease-out;display:grid}.demo-lang-bar button:hover{color:var(--ink);background:#fff}@supports (color:color-mix(in lab, red, red)){.demo-lang-bar button:hover{background:color-mix(in srgb, #fff 70%, var(--soft))}}.demo-lang-bar button:active{transform:scale(.98)}.demo-lang-bar button span{font-size:15px;font-weight:750;line-height:1.2}.demo-lang-bar button small{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:700}.demo-lang-bar button.active{color:var(--brand-dark);box-shadow:0 1px 1px #0846330a, 0 8px 18px -14px #0846338c, 0 0 0 1px var(--brand);background:#fff}@supports (color:color-mix(in lab, red, red)){.demo-lang-bar button.active{box-shadow:0 1px 1px #0846330a, 0 8px 18px -14px #0846338c, 0 0 0 1px color-mix(in srgb, var(--brand) 22%, white)}}.demo-lang-bar button.active small{color:var(--brand)}.demo-lang-caption{color:var(--muted);text-wrap:pretty;margin:0 6px;font-size:13px;line-height:1.45}.demo-copy-swap{animation:.28s cubic-bezier(.2,0,0,1) demo-copy-in}.demo-link-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.demo-link-actions code{text-overflow:ellipsis;white-space:nowrap;background:var(--soft);border-radius:8px;max-width:220px;padding:7px 10px;font-size:12px;display:inline-block;overflow:hidden}.demo-link-actions .primary-button,.demo-link-actions .secondary-button{min-height:40px;padding:8px 14px;font-size:12px}.demo-visitors-panel{margin-bottom:20px}.demo-visitors-panel .panel-head{align-items:start;gap:12px}.demo-history-panel{margin-top:20px}@keyframes demo-copy-in{0%{opacity:0;filter:blur(4px);transform:translateY(8px)}to{opacity:1;filter:none;transform:none}}@media (max-width:900px){.demo-visitors-panel .panel-head{flex-direction:column}.demo-link-actions{justify-content:flex-start;width:100%}}@media (max-width:780px){.demo-lang-switcher{width:calc(100% - 24px);margin-top:12px}.demo-lang-bar button{min-height:46px;padding:6px 4px}.demo-lang-bar button span{font-size:14px}.demo-link-actions{width:100%}.demo-link-actions .primary-button,.demo-link-actions .secondary-button{justify-content:center;min-height:44px}}@media (prefers-reduced-motion:reduce){.demo-lang-bar button,.demo-copy-swap{transition:none;animation:none}}.login-footer-links{z-index:1;color:#ffffffbd;flex-wrap:wrap;justify-content:center;gap:16px;font-size:11px;font-weight:700;display:flex;position:absolute;bottom:24px}.login-footer-links a:hover{color:#fff}.admin-login-links{color:var(--muted);margin-top:18px;position:static}.admin-login-links a{color:var(--muted)}.time-choice.waitlist-choice{border-style:dashed}.time-choice.waitlisted{background:#fff8e0;border-color:#e0b000}.time-choice.locked{cursor:default}.teacher-chip{border-radius:999px;align-items:center;gap:6px;max-width:100%;margin-top:6px;padding:3px 8px 3px 3px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.teacher-chip b{color:#fff;border-radius:50%;place-items:center;width:18px;height:18px;font-size:8px;font-weight:800;display:grid}.teacher-chip em{text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}.teacher-sunanda{color:#084633;background:#d6f2e2}.teacher-sunanda b,.teacher-dots .teacher-sunanda{background:#0e7c5a}.teacher-soumya{color:#39399a;background:#eef}.teacher-soumya b,.teacher-dots .teacher-soumya{background:#5b5bd6}.teacher-other{color:#7a3b12;background:#fff0e4}.teacher-other b,.teacher-dots .teacher-other{background:#d97706}.time-choice.teacher-sunanda{box-shadow:inset 4px 0 #0e7c5a}.time-choice.teacher-soumya{box-shadow:inset 4px 0 #5b5bd6}.time-choice.teacher-other{box-shadow:inset 4px 0 #d97706}.time-choice.teacher-soumya.active{background:#f4f4ff;border-color:#5b5bd6}.time-choice.teacher-soumya.active>.choice-icon{background:#5b5bd6;border-color:#5b5bd6}.teacher-filter-row{flex-wrap:wrap;gap:8px;margin:0 0 12px;display:flex}.teacher-filter-row button{border:1px solid var(--line);min-height:36px;color:var(--ink);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.teacher-filter-row button b{color:#fff;border-radius:50%;place-items:center;width:18px;height:18px;font-size:8px;display:grid}.teacher-filter-row button.teacher-sunanda b{background:#0e7c5a}.teacher-filter-row button.teacher-soumya b{background:#5b5bd6}.teacher-filter-row button.active{border-color:currentColor}.teacher-filter-row button.active.teacher-sunanda{color:#084633;background:#d6f2e2}.teacher-filter-row button.active.teacher-soumya{color:#39399a;background:#eef}.teacher-dots{justify-content:center;gap:4px;margin-top:6px;display:flex}.teacher-dots i{border-radius:50%;width:7px;height:7px}.time-choice.locked .choice-icon{color:#855e00;background:#fff4cc;border-color:#f0d789}.request-status.locked{color:#855e00;background:#fff4cc}.slot-waitlist-list{background:#fff8e0;border-radius:10px;flex-wrap:wrap;gap:7px;margin:0 11px 11px;padding:10px;display:flex}.slot-waitlist-list>small{color:#855e00;text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:6px;width:100%;font-size:9px;font-weight:800;display:inline-flex}.slot-waitlist-list>span{background:#fff;border-radius:9px;align-items:center;gap:8px;padding:7px 8px;display:inline-flex}.slot-waitlist-list b{font-size:10px}.slot-waitlist-list small{color:var(--muted);font-size:9px}.teacher-body{max-width:1320px;margin:0 auto;padding:0 28px 72px}.teacher-request-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;margin-top:12px;display:grid}.teacher-request-form label{gap:6px;min-width:0;margin:0;display:grid}.teacher-request-form label span{margin:0}.teacher-request-form .span-all,.teacher-request-form .primary-button{grid-column:1/-1}.teacher-request-form textarea{resize:vertical;min-height:84px}.teacher-request-form .primary-button{justify-self:start;width:auto;margin:0}.teacher-time-open{margin-top:12px}.teacher-time-waiting{color:#855e00;margin:12px 0 0;font-size:13px;font-weight:650}.teacher-time-form{background:var(--soft);border-radius:14px;grid-template-columns:1fr 1fr;align-items:end;gap:12px;margin-top:12px;padding:12px;display:grid}.teacher-time-form label{gap:6px;min-width:0;margin:0;display:grid}.teacher-time-form label span{margin:0}.teacher-time-form .span-all{grid-column:1/-1}.teacher-time-form textarea{resize:vertical;min-height:72px}.teacher-time-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;display:flex}.teacher-time-form .primary-button{width:auto;margin:0}.teacher-columns{grid-template-columns:1fr;gap:18px;margin-top:18px;display:grid}.teacher-slot-list{gap:12px;display:grid}.teacher-slot-card{border:1px solid var(--line);background:#fbfdfc;border-radius:16px;padding:14px}.teacher-slot-head{grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:10px;display:grid}.teacher-slot-head strong,.teacher-slot-head small{display:block}.teacher-slot-head small{color:var(--muted);margin-top:3px;font-size:11px}.teacher-slot-head em{color:var(--brand-dark);font-size:12px;font-style:normal;font-weight:800}.teacher-slot-card .meet-button{color:#fff;background:var(--brand);border-radius:9px;align-items:center;gap:6px;min-height:36px;margin-bottom:10px;padding:7px 10px;font-size:11px;font-weight:800;display:inline-flex}.teacher-pin-panel{margin:18px 0}.teacher-pin-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}.teacher-pin-grid article{border:1px solid var(--line);background:var(--soft);border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.teacher-pin-grid strong,.teacher-pin-grid small{display:block}.teacher-pin-grid small{color:var(--muted);letter-spacing:.12em;margin-top:3px;font-size:12px}.student-booking-records .booking-history-panel{grid-column:1/-1}.student-booking-card>.text-button{grid-column:2/-1;justify-self:start;min-height:36px}@media (max-width:1024px){.teacher-columns,.teacher-pin-grid{grid-template-columns:1fr}}@media (max-width:780px){.teacher-body{padding-inline:10px}.teacher-request-form{grid-template-columns:1fr}.teacher-request-form .primary-button{width:100%}.teacher-time-form{grid-template-columns:1fr}.teacher-time-form .primary-button{width:100%}.login-footer-links{margin-top:22px;position:static}.teacher-slot-head{grid-template-columns:48px minmax(0,1fr)}.teacher-slot-head em{grid-column:2}}.admin-shell{grid-template-columns:248px minmax(0,1fr)}.admin-sidebar nav{gap:8px}.admin-sidebar nav button{min-height:44px;padding:12px 14px;font-size:14px}.admin-sidebar nav button b{font-variant-numeric:tabular-nums;min-width:22px;height:22px;font-size:11px}.sidebar-bottom .view-site,.sidebar-bottom button{min-height:42px;font-size:13px}.admin-main label>span{font-size:12px}.admin-header{align-items:flex-start}.admin-header-sub{max-width:42rem;color:var(--muted);text-wrap:pretty;margin:8px 0 0;font-size:14px;line-height:1.5}.admin-load-bar{z-index:8;background:var(--brand);border-radius:99px;height:3px;margin:-12px 0 18px;position:sticky;top:0;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.admin-load-bar{background:color-mix(in srgb, var(--brand) 16%, white)}}.admin-load-bar:after{content:"";background:var(--brand);width:40%;height:100%;animation:1.1s ease-in-out infinite admin-load-slide;display:block}@keyframes admin-load-slide{0%{transform:translate(-120%)}to{transform:translate(320%)}}.admin-notice{text-align:left;justify-content:space-between;align-items:flex-start;gap:12px;max-width:none;margin:0 0 22px;font-size:14px;display:flex}.notice-dismiss{width:36px;height:36px;color:var(--brand-dark);cursor:pointer;background:0 0;border:0;border-radius:10px;flex:none;place-items:center;display:grid}.notice-dismiss:hover{background:var(--brand)}@supports (color:color-mix(in lab, red, red)){.notice-dismiss:hover{background:color-mix(in srgb, var(--brand) 12%, white)}}.admin-progress{background:var(--brand-pale);border-radius:99px;width:100%;height:6px;margin:22px 0 0;overflow:hidden}.admin-progress:after{content:"";background:var(--brand);width:36%;height:100%;animation:1.1s ease-in-out infinite admin-load-slide;display:block}.admin-status-card .primary-button{width:100%;margin-top:18px}.login-card input{min-height:44px;font-size:16px}.admin-empty-action{gap:10px;padding:32px 20px;font-size:14px}.admin-empty-action strong{color:var(--ink);font-size:16px}.admin-empty-action p{max-width:28rem;margin:0;line-height:1.5}.stats-grid article span,.stats-grid article small{font-size:12px}.stats-grid article strong{font-variant-numeric:tabular-nums}.weekly-reset-note{padding:12px 14px;font-size:13px}.slot-roster-bar{align-items:center;padding:0 12px 12px 77px}.slot-roster-bar button,.slot-roster-bar .button-with-icon{min-height:40px;padding:8px 10px;font-size:13px}.slot-student-list b,.slot-waitlist-list b{font-size:13px}.slot-student-list small,.slot-waitlist-list small{font-size:12px}.slot-student-list .text-button,.slot-waitlist-list .text-button{min-height:36px;padding:6px 8px;font-size:12px}.slot-waitlist-list>small{font-size:11px}.slot-admin-copy strong{font-size:14px}.slot-admin-copy small{font-size:12px}.date-tile span,.capacity-control span{font-size:11px}.capacity-control input{min-height:40px;padding:8px;font-size:13px}.status-button,.save-mini{min-height:40px;padding:8px 10px;font-size:12px}.admin-slot-row{grid-template-columns:54px minmax(150px,1fr) 78px 86px 58px}.coverage-row strong{font-size:14px}.coverage-row small{font-size:12px}.coverage-row>em{font-variant-numeric:tabular-nums;font-size:12px}.legend{font-size:12px}.previous-metrics span,.previous-card>p{font-size:13px}.filter-grid input,.filter-grid select{min-height:40px;padding:10px 12px;font-size:13px}.history-summary span{font-size:12px}.history-summary strong{font-variant-numeric:tabular-nums}.table-subline{font-size:12px}th{font-size:11px}td{font-size:14px}.pin-mode button{min-height:40px;font-size:13px}.add-student-panel>p,.add-student-panel>small{font-size:13px}.access-toggle{min-width:76px;min-height:36px;padding:6px 10px;font-size:12px}.pin-cell .text-button{min-height:36px;padding:6px 8px;font-size:12px}.course-editor strong{font-size:14px}.course-editor small{font-size:12px}.course-editor input{min-height:40px;font-size:13px}.database-protection-card p{font-size:13px}.database-protection-card dt{font-size:11px}.database-protection-card dd{font-size:13px}.settings-stack{gap:20px;display:grid}.settings-stack .teacher-pin-panel,.settings-stack .backup-card,.settings-stack .database-protection-card{margin:0}.compact-empty{min-height:110px;font-size:14px}.helper-copy{font-size:13px}@media (max-width:780px){.admin-sidebar nav button{min-height:44px;font-size:13px}.admin-sidebar nav button b{font-size:11px}.slot-roster-bar{flex-wrap:wrap;padding-left:12px}}@media (max-width:520px){.admin-sidebar nav button{min-width:86px;font-size:12px}.admin-sidebar .sidebar-bottom button{font-size:12px}.admin-slot-row{grid-template-columns:48px minmax(0,1fr) 62px}.admin-header-sub{font-size:13px}}@media (prefers-reduced-motion:reduce){.admin-load-bar:after,.admin-progress:after{width:100%;animation:none}}:root{--ink:#12251c;--muted:#607068;--line:#dfe8e2;--soft:#f3f7f4;--paper:#fffefa;--brand:#087a55;--brand-dark:#07513b;--brand-pale:#e2f5ec;--sunshine:#ffc83d;--surface-shadow:0 18px 50px -34px #0a3a2859}body{background:#f6faf7}input,select,textarea{border-color:#d7e3dc;border-radius:13px;min-height:46px}.primary-button{border-radius:13px;min-height:46px;padding-inline:22px;box-shadow:0 10px 24px -14px #a06f00bf}.secondary-button{border-radius:13px;min-height:46px}.section-kicker{color:var(--brand);letter-spacing:.16em}.student-login-shell,.admin-login-shell{isolation:isolate;background:radial-gradient(circle at 14% 20%,#ffc83d30 0 8rem,#0000 8.1rem),radial-gradient(circle at 88% 16%,#5fcf9e36,#0000 27rem),linear-gradient(145deg,#063d2d 0%,#07543d 52%,#0b6d50 100%)}.student-login-shell:before,.admin-login-shell:before{content:"";z-index:-1;opacity:.16;pointer-events:none;background-image:radial-gradient(#ffffffb3 1px,#0000 1px);background-size:25px 25px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(110deg,#000,#0000 68%);mask-image:linear-gradient(110deg,#000,#0000 68%)}.student-login-card,.login-card{border:1px solid #ffffffb8;box-shadow:0 32px 90px #001c134d}.student-login-card{padding:42px}.login-illustration{background:linear-gradient(145deg,#f4fbf7,#e2f4ea);box-shadow:inset 0 0 0 1px #deebe3,0 14px 30px -20px #07513b}.login-mode-switch{border:1px solid #e2eae5;padding:5px}.login-mode-switch button{min-height:40px}.booking-app{background:linear-gradient(#f5faf7 0,#fbfcfb 46rem)}.booking-topbar{z-index:40;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffce6;min-height:76px;padding-inline:max(22px,50vw - 720px);position:sticky;top:0}.booking-heading{max-width:1400px;padding-top:46px;padding-bottom:28px}.booking-heading h1{font-size:clamp(32px,4vw,48px)}.calendly-shell{filter:drop-shadow(0 22px 34px #0a3a2814);grid-template-columns:minmax(230px,.68fr) minmax(470px,1.5fr) minmax(280px,.82fr);max-width:1400px}.course-summary,.date-time-panel,.review-panel{border-color:#dce6e0}.course-summary{background:linear-gradient(155deg, #fff 42%, var(--course))}@supports (color:color-mix(in lab, red, red)){.course-summary{background:linear-gradient(155deg, #fff 42%, color-mix(in srgb, var(--course) 11%, #f4f9f6))}}.date-time-panel{padding:34px}.date-strip{gap:10px}.date-strip button{border-radius:16px;min-height:88px}.date-strip button:hover,.date-strip button.active{transform:translateY(-2px);box-shadow:0 12px 26px -18px #087a55b3}.time-grid{gap:11px}.time-choice{border-radius:15px;min-height:78px}.time-choice:hover:not(:disabled),.time-choice.active{transform:translateY(-1px);box-shadow:0 12px 26px -20px #087a55cc}.review-panel{padding:34px 27px}.review-list>button{border-radius:14px}.student-booking-records{max-width:1400px}.student-record-panel,.panel,.stats-grid article{box-shadow:var(--surface-shadow);border-color:#dce6e0}.student-booking-card{box-shadow:0 12px 32px -27px #0a3a2880}.admin-shell{background:#f4f8f5}.admin-sidebar{background:linear-gradient(#064734 0%,#043326 100%);box-shadow:12px 0 42px #04332614}.admin-main{padding-top:48px}.admin-header h1{font-size:clamp(32px,4vw,42px)}.stats-grid article{padding:24px;position:relative;overflow:hidden}.stats-grid article:after{content:"";background:var(--brand-pale);opacity:.75;border-radius:50%;width:72px;height:72px;position:absolute;top:-28px;right:-28px}.panel{border-radius:22px}.table-wrap{background:#fff}.admin-slot-card,.request-list article,.course-editor{border-radius:15px}@media (max-width:1100px){.calendly-shell{grid-template-columns:minmax(220px,.55fr) minmax(430px,1.3fr)}}@media (max-width:780px){body{background:#f7faf8}.student-login-shell,.admin-login-shell{place-items:start center;min-height:100svh;padding:82px 12px 28px}.student-login-brand,.admin-login-shell>.logo-lockup{top:14px;left:16px}.student-login-card,.login-card{border-radius:24px;margin-top:8px;padding:28px 20px}.login-illustration{width:72px;height:72px;margin-bottom:13px}.login-illustration img{width:70px;height:70px}.student-login-card h1,.login-card h1{font-size:28px}.login-footer-links{margin-top:18px}.booking-topbar{min-height:64px;padding-inline:12px}.booking-heading{padding:26px 16px 20px}.booking-heading h1{margin-block:7px;font-size:30px}.calendly-shell{filter:none;gap:12px;padding-inline:12px}.course-summary,.date-time-panel,.review-panel{box-shadow:var(--surface-shadow);border-radius:20px}.course-summary{padding:22px 18px}.course-summary dl{overflow-x:auto}.date-time-panel{padding:22px 16px}.date-strip{margin-block:18px 24px;margin-inline:-16px;padding:2px 16px 8px;scroll-padding-inline:16px}.date-strip button{flex-basis:82px;min-height:84px}.time-choice{min-height:74px}.review-panel{padding:23px 18px}.student-booking-records{padding-inline:12px}.student-record-panel{border-radius:20px}.mobile-booking-dock{padding-bottom:max(10px, env(safe-area-inset-bottom));background:linear-gradient(#0000,#f6faf7f5 24%)}.mobile-dock-bar{border-radius:17px;box-shadow:0 16px 45px #053f2b38}.admin-main{padding:26px 12px 54px}.admin-sidebar{padding-inline:12px}.admin-header h1{font-size:31px}.panel{border-radius:19px;padding:18px 15px}.stats-grid{gap:10px}.stats-grid article{border-radius:17px;padding:18px}}@media (max-width:420px){.student-login-card h1{font-size:25px}.student-login-card>p{font-size:13px}.login-mode-switch button{font-size:9px}.booking-heading h1{font-size:27px}.calendar-title .week-switcher{justify-content:space-between;width:100%}.calendar-title .week-switcher span{min-width:0}.student-record-panel{padding-inline:14px}}.admin-shell{isolation:isolate;flex-direction:row;align-items:stretch;min-height:100dvh;display:flex!important}.admin-sidebar{z-index:4;box-sizing:border-box;width:260px;max-width:260px;height:100dvh;box-shadow:none;flex-direction:column;flex:0 0 260px;gap:14px;padding:22px 16px 18px;top:0;overflow:hidden auto;display:flex!important;position:sticky!important}.admin-sidebar>.logo-lockup{flex:none;min-width:0;padding:0 4px 8px}.admin-sidebar>.logo-lockup span{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:inline;overflow:hidden}.admin-sidebar nav{flex:auto;align-content:start;gap:6px;min-width:0;overflow:visible;display:grid!important}.admin-sidebar nav button{justify-content:flex-start;width:100%;min-width:0}.admin-sidebar .sidebar-bottom{flex:none;gap:8px;min-width:0;margin-top:auto;display:grid!important}.admin-sidebar .sidebar-bottom .view-site,.admin-sidebar .sidebar-bottom button{justify-content:space-between;align-items:center;width:100%;min-width:0;display:flex!important}.admin-main{flex:auto;min-width:0;width:auto!important;max-width:none!important;margin-inline:0!important}@media (max-width:1280px){.admin-shell{flex-direction:column}.admin-sidebar{z-index:40;flex:none;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand actions""nav nav";align-items:center;gap:8px 10px;width:100%;max-width:none;height:auto;padding:10px 14px 12px;top:0;overflow:visible;box-shadow:0 10px 30px #04261a29;display:grid!important}.admin-sidebar>.logo-lockup{grid-area:brand;padding:0}.admin-sidebar nav{flex:none;grid-area:nav;gap:4px;padding:2px 0 0;overflow-x:auto;display:flex!important}.admin-sidebar nav button{white-space:nowrap;flex:1 0 auto;justify-content:center;width:auto;min-width:92px}.admin-sidebar .sidebar-bottom{flex-wrap:wrap;grid-area:actions;justify-content:flex-end;gap:6px;margin:0;display:flex!important}.admin-sidebar .sidebar-bottom .view-site,.admin-sidebar .sidebar-bottom button{border-radius:999px;width:auto;min-height:38px;padding:7px 10px;font-size:12px}.admin-main{padding:24px clamp(16px,3vw,36px) 64px}}@media (max-width:720px){.admin-sidebar{grid-template-columns:minmax(0,1fr) auto;padding-inline:12px}.admin-sidebar>.logo-lockup span{display:none}.admin-sidebar nav button{min-width:82px;font-size:12px}.admin-sidebar .sidebar-bottom .view-site span{display:none}.admin-sidebar .sidebar-bottom .view-site,.admin-sidebar .sidebar-bottom button{padding:8px}}.admin-app{color:#12251c;background:radial-gradient(circle at 12% -8%,#087a5514,#0000 28rem),#eef4f0;min-height:100dvh}.admin-topbar{z-index:40;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffdfaeb;border-bottom:1px solid #d7e4dc;position:sticky;top:0}.admin-topbar-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand signout""tabs tabs";align-items:center;gap:8px 16px;max-width:1440px;margin:0 auto;padding:10px 22px 12px;display:grid;overflow:visible}.admin-brand{grid-area:brand;align-items:center;gap:10px;min-width:0;display:flex}.admin-brand img{border-radius:10px}.admin-brand strong,.admin-brand small{line-height:1.15;display:block}.admin-brand strong{letter-spacing:-.03em;font-family:Sora,sans-serif;font-size:14px;font-weight:800}.admin-brand small{color:#5f7468;letter-spacing:.12em;text-transform:uppercase;margin-top:2px;font-size:11px;font-weight:700}.admin-tabs{flex-wrap:wrap;grid-area:tabs;gap:4px;min-width:0;display:flex}.admin-tabs button{color:#4d6358;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:11px;align-items:center;gap:8px;min-height:40px;padding:0 12px;font-size:13px;font-weight:750;display:inline-flex}.admin-tabs button svg{flex:none}.admin-tabs button:hover{color:#07513b;background:#e7f3ec}.admin-tabs button.active{color:#fff;background:#07513b}.admin-tabs button b{color:#3b2d00;font-variant-numeric:tabular-nums;background:#ffc83d;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;display:grid}.admin-tabs button.active b{color:#3b2d00;background:#ffc83d}.admin-signout{color:#355246;cursor:pointer;white-space:nowrap;background:#fff8e8;border:1px solid #f0d48a;border-radius:999px;grid-area:signout;min-height:36px;padding:0 14px;font-size:12px;font-weight:750}.admin-signout:hover{color:#07513b;border-color:#07513b}.admin-workspace{width:100%;min-width:0;max-width:1440px;margin:0 auto;padding:28px 22px 72px}.admin-pagehead{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:24px;display:flex}.admin-pagehead h1{letter-spacing:-.045em;margin:6px 0 0;font-family:Sora,sans-serif;font-size:clamp(28px,3.4vw,40px);font-weight:800}.admin-app .admin-header-sub{color:#5f7468;max-width:38rem;margin:8px 0 0;font-size:15px;line-height:1.5}.admin-app .admin-header-tools{flex-wrap:wrap;justify-content:flex-end;align-items:stretch;gap:10px;display:flex}.admin-app .timezone-control{width:280px}.admin-app .admin-load-bar,.admin-app .admin-notice{margin:0 0 18px}.admin-app .stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.admin-app .stats-grid article{background:#fffefb;border:1px solid #dce6e0;border-radius:18px;padding:18px 18px 16px;position:relative;overflow:hidden;box-shadow:0 10px 28px -24px #0a3a2866}.admin-app .stats-grid article:after{display:none}.admin-app .stats-grid span,.admin-app .stats-grid small{color:#61756a;font-size:12px;font-weight:700}.admin-app .stats-grid strong{color:#0f241b;letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin:6px 0 4px;font-family:Sora,sans-serif;font-size:30px;font-weight:800}.admin-app .panel{background:#fffefb;border:1px solid #dce6e0;border-radius:20px;padding:22px;box-shadow:0 14px 36px -30px #0a3a2873}.admin-app .panel-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.admin-app .panel-head h2{letter-spacing:-.03em;margin:4px 0 0;font-family:Sora,sans-serif;font-size:22px}.admin-app .demo-link-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.admin-app .demo-link-actions code{text-overflow:ellipsis;white-space:nowrap;color:#355246;background:#f3f7f4;border-radius:10px;max-width:280px;padding:8px 10px;font-size:12px;overflow:hidden}.admin-app .demo-link-actions .primary-button,.admin-app .demo-link-actions .secondary-button{min-height:40px;padding-inline:14px}.admin-app .table-wrap{border:1px solid #e3ebe6;border-radius:14px;overflow-x:auto}.admin-app .overview-grid,.admin-app .admin-grid{grid-template-columns:minmax(0,1.55fr) minmax(280px,.8fr);align-items:start;gap:16px;display:grid}.admin-app .overview-grid{grid-template-columns:minmax(0,1fr) minmax(260px,300px)}.admin-app .overview-grid>*{min-width:0}.admin-app .previous-card{color:#12251c;background:#fffefb;min-width:0}.admin-app .previous-card .section-kicker{color:#07513b}.admin-app .previous-card h2{color:#0f241b;overflow-wrap:anywhere}.admin-app .previous-metrics{margin:16px 0}.admin-app .previous-metrics div{background:#f3f7f4;border:1px solid #e3ebe6;grid-template-columns:auto minmax(0,1fr);align-items:center;min-width:0;display:grid}.admin-app .previous-metrics strong{color:#0e7c5a;width:auto;min-width:2.6ch}.admin-app .previous-metrics span{color:#5f7468;min-width:0;font-size:13px;line-height:1.3}.admin-app .previous-card>p{color:#5f7468;overflow-wrap:anywhere;font-size:13px}.admin-app .demo-workspace,.admin-app .demo-visitors-panel,.admin-app .demo-waitlist-panel{margin-bottom:16px}.admin-app .visitor-day-group+.visitor-day-group{margin-top:16px}.admin-app .visitor-day{color:#07513b;letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:800}.admin-app .visitor-board{gap:8px;display:grid}.admin-app .visitor-card{background:#fff;border:1px solid #e3ebe6;border-radius:14px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.admin-app .visitor-card-copy{min-width:0}.admin-app .visitor-card-copy strong,.admin-app .visitor-card-copy small{display:block}.admin-app .visitor-card-copy strong{font-size:15px}.admin-app .visitor-card-copy small{color:#5f7468;margin-top:2px;font-size:12px}.admin-app .visitor-contacts{flex-wrap:wrap;gap:10px;margin-top:6px;font-size:13px;font-weight:750;display:flex}.admin-app .visitor-contacts a{color:#07513b}.admin-app .visitor-card-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.admin-app .whatsapp-remind{min-height:36px}.admin-app .history-pager{margin-top:16px}.admin-app .demo-history-board{margin-top:4px}.admin-app .admin-slot-card{--slot-color:#0e7c5a;--course-color:#0e7c5a;border:1px solid var(--slot-color);min-width:0;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.admin-app .admin-slot-card{border:1px solid color-mix(in srgb, var(--slot-color) 42%, #d7e4dc)}}.admin-app .admin-slot-card{background:linear-gradient(105deg, var(--slot-color) 0%, var(--slot-color) 42%, #fff 100%)}@supports (color:color-mix(in lab, red, red)){.admin-app .admin-slot-card{background:linear-gradient(105deg, color-mix(in srgb, var(--slot-color) 22%, #fff) 0%, color-mix(in srgb, var(--slot-color) 7%, #fff) 42%, #fff 100%)}}.admin-app .admin-slot-card{box-shadow:inset 7px 0 0 var(--slot-color)}.admin-app .admin-slot-card.slot-teacher-soumya{background:linear-gradient(105deg,#ecebff 0%,#f7f6ff 48%,#fff 100%)}.admin-app .admin-slot-card.slot-teacher-sunanda{background:linear-gradient(105deg,#d9f3e6 0%,#f3fbf6 48%,#fff 100%)}.admin-app .admin-slot-card.slot-teacher-other{background:linear-gradient(105deg,#ffefd6 0%,#fffaf2 48%,#fff 100%)}.admin-app .admin-slot-card .date-tile{background:var(--slot-color)}@supports (color:color-mix(in lab, red, red)){.admin-app .admin-slot-card .date-tile{background:color-mix(in srgb, var(--slot-color) 18%, #fff)}}.admin-app .admin-slot-card .date-tile,.admin-app .admin-slot-card .slot-admin-copy strong{color:var(--slot-color)}@supports (color:color-mix(in lab, red, red)){.admin-app .admin-slot-card .slot-admin-copy strong{color:color-mix(in srgb, var(--slot-color) 72%, #12251c)}}.admin-app .course-pill{background:var(--course-color);border-radius:999px;align-items:center;max-width:100%;padding:4px 8px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.admin-app .course-pill{background:color-mix(in srgb, var(--course-color) 16%, #fff)}}.admin-app .course-pill{color:var(--course-color);font-size:11px;font-weight:800}.demo-tag{color:#c45c26;letter-spacing:.03em;text-transform:uppercase;vertical-align:middle;background:#fff1e6;border-radius:999px;align-items:center;margin-left:6px;padding:2px 7px;font-size:10px;font-weight:800;display:inline-flex}.admin-app .trial-visitor-card{align-items:start}.admin-app .trial-edit{border-top:1px solid #e3ebe6;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:8px;display:grid}.admin-app .trial-edit label{gap:4px;display:grid}.admin-app .trial-edit label span{color:#5f7468;font-size:10px;font-weight:800}.admin-app .trial-edit .primary-button{grid-column:1/-1}@media (max-width:720px){.admin-app .trial-edit{grid-template-columns:1fr}}.admin-app .schedule-filters{gap:8px;margin:0 0 14px;display:grid}.admin-app .course-filter-row .course-swatch{border-radius:50%;width:10px;height:10px;display:inline-block}.admin-app .admin-slot-row{grid-template-columns:56px minmax(0,1fr);align-items:center;gap:12px;display:grid}.admin-app .slot-admin-copy{min-width:0}.admin-app .slot-admin-copy strong,.admin-app .slot-admin-copy small{white-space:normal}.admin-app .slot-controls{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;align-items:end;gap:8px;display:flex}.admin-app .slot-controls .capacity-control{min-width:68px;margin:0}.admin-app .slot-controls .status-button,.admin-app .slot-controls .save-mini{min-height:40px;padding:0 12px;font-size:12px}.admin-app .slot-roster-bar{padding:0 14px 12px}.admin-app .weekly-reset-note{font-size:13px}.admin-app .coverage-list{gap:6px}.admin-app .coverage-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;min-width:0;padding:8px 4px}.admin-app .coverage-row>div:first-child{grid-area:1/1;gap:10px}.admin-app .coverage-row>em{grid-area:1/2;align-self:center}.admin-app .coverage-track{background:#e7eeea;grid-area:2/1/auto/-1;height:8px}.admin-app .coverage-row strong,.admin-app .coverage-row small{white-space:normal;text-overflow:unset;overflow-wrap:anywhere;overflow:visible}.admin-app .roster-grid{grid-template-columns:1fr;align-items:start;gap:16px;width:100%;min-width:0;display:grid}.admin-app .add-student-panel,.admin-app .roster-panel{width:100%;min-width:0;max-width:100%;position:static;overflow:visible}.admin-app .add-student-panel>p,.admin-app .add-student-panel h2,.admin-app .add-student-panel>small{white-space:normal;overflow-wrap:anywhere;word-break:break-word;width:100%;max-width:100%;display:block;overflow:visible}.admin-app .pin-mode{width:100%;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));min-inline-size:0}.admin-app .roster-delete-note{color:#5f7468;margin:6px 0 0;font-size:13px;line-height:1.45}.admin-app .settings-stack{gap:16px;max-width:none;display:grid}.admin-app .settings-grid{grid-template-columns:1fr;align-items:start;gap:16px;width:100%;min-width:0;display:grid}.admin-app .teacher-pin-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.admin-app .teacher-pin-grid article{grid-template-columns:auto minmax(0,1fr);gap:8px 12px;min-width:0;display:grid}.admin-app .teacher-pin-grid article strong{white-space:normal;overflow-wrap:anywhere}.admin-app .teacher-pin-grid article button{grid-column:2;justify-self:start;min-height:36px;padding:0 12px}.admin-app .course-editor{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr) 88px auto;align-items:end;gap:10px;min-width:0;display:grid}.admin-app .course-editor>*{min-width:0}.admin-app .course-editor strong,.admin-app .course-editor small{white-space:normal;text-overflow:unset;overflow:visible}.admin-app .course-editor .save-mini{min-height:40px;padding:0 12px}@media (min-width:1100px){.admin-pagehead{border-bottom:1px solid #d7e4dc;align-items:center;margin-bottom:20px;padding-bottom:18px}.admin-pagehead h1{margin:0;font-size:30px}.admin-app .admin-grid{grid-template-columns:minmax(0,1.7fr) minmax(0,340px);gap:18px}.admin-app .overview-grid{grid-template-columns:minmax(0,1fr) minmax(260px,300px);gap:18px}.admin-app .overview-grid>*{min-width:0}.admin-app .roster-grid,.admin-app .settings-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr)}.admin-app .add-panel,.admin-app .previous-card{position:sticky;top:76px}}@media (max-width:1100px){.admin-topbar-inner{padding:10px 14px 12px}.admin-workspace{padding:22px 14px 64px}.admin-pagehead{flex-direction:column;align-items:stretch}.admin-app .admin-header-tools{justify-content:flex-start}.admin-app .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-app .overview-grid,.admin-app .admin-grid{grid-template-columns:1fr}.admin-app .panel-head{flex-direction:column}.admin-app .demo-link-actions{justify-content:flex-start}.admin-app .demo-link-actions code{max-width:100%}}@media (max-width:640px){.admin-brand small{display:none}.admin-tabs button{padding:0 10px;font-size:12px}.admin-app .stats-grid{grid-template-columns:1fr 1fr}.admin-pagehead h1{font-size:28px}}@media (max-width:780px){.admin-app{overflow-x:clip}.admin-topbar{padding-top:env(safe-area-inset-top)}.admin-topbar-inner{padding:8px 10px 10px}.admin-tabs{margin-inline:-10px;padding:0 10px}.admin-tabs button{min-height:44px;padding:0 12px;font-size:13px}.admin-signout{min-height:40px}.admin-workspace{padding:16px 12px calc(36px + env(safe-area-inset-bottom))}.admin-pagehead{margin-bottom:16px}.admin-pagehead h1{overflow-wrap:anywhere;font-size:26px}.admin-app .admin-header-sub{font-size:14px}.admin-app .admin-header-tools .timezone-control,.admin-app .admin-header-tools .week-switcher{width:100%}.admin-app .stats-grid{grid-template-columns:1fr 1fr;gap:8px}.admin-app .stats-grid article{border-radius:16px;padding:14px 12px}.admin-app .stats-grid strong{font-size:24px}.admin-app .stats-grid span,.admin-app .stats-grid small{font-size:11px}.admin-app .panel{border-radius:18px;padding:16px 14px}.admin-app .panel-head h2{overflow-wrap:anywhere;font-size:20px}.admin-app .panel-head .secondary-button,.admin-app .panel-head .primary-button{width:100%}.admin-app .weekly-reset-note{font-size:13px}.admin-app .admin-slot-row{grid-template-columns:52px minmax(0,1fr);gap:10px}.admin-app .slot-controls{grid-column:1/-1;grid-template-columns:1fr 1fr auto;align-items:end;width:100%;display:grid}.admin-app .capacity-control,.admin-app .status-button,.admin-app .save-mini{grid-column:auto;min-height:44px}.admin-app .slot-admin-copy strong{overflow-wrap:anywhere;font-size:14px}.admin-app .slot-admin-copy small{white-space:normal;font-size:12px}.admin-app .schedule-filters .teacher-filter-row{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.admin-app .slot-roster-bar{flex-direction:column;align-items:stretch;padding:0 12px 12px}.admin-app .slot-roster-bar button{min-height:40px;font-size:13px}.admin-app .slot-time-editor,.admin-app .split-fields,.admin-app .add-date-time-grid{grid-template-columns:1fr}.admin-app .coverage-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.admin-app .coverage-track{grid-column:1/-1}.admin-app .coverage-row strong{font-size:14px}.admin-app .coverage-row small{font-size:12px}.admin-app .filter-grid.history-filters,.admin-app .filter-grid.roster-filters,.admin-app .settings-grid,.admin-app .roster-grid,.admin-app .teacher-pin-grid{grid-template-columns:1fr}.admin-app .course-editor{grid-template-columns:minmax(0,1fr) 88px auto}.admin-app .course-editor>div{grid-column:1/-1}.admin-app .theme-picker{grid-template-columns:1fr 1fr}.admin-app .database-protection-card{grid-template-columns:1fr;gap:12px}.admin-app .database-protection-card dl{grid-template-columns:1fr 1fr;gap:10px;display:grid}.admin-app .database-protection-card dd{overflow-wrap:anywhere}.admin-app .teacher-pin-grid{grid-template-columns:1fr}.admin-app .table-wrap{-webkit-overflow-scrolling:touch;margin-inline:-4px}.admin-app .table-wrap table{min-width:540px}.admin-app .demo-link-actions code{max-width:100%}.teacher-app .booking-heading h1{overflow-wrap:anywhere}.teacher-app .teacher-body{padding:0 12px calc(28px + env(safe-area-inset-bottom))}.teacher-app .stats-grid{grid-template-columns:1fr 1fr}.teacher-columns{grid-template-columns:1fr}.teacher-slot-head{grid-template-columns:48px minmax(0,1fr)}.teacher-slot-head em{grid-column:2}.demo-lang-switcher{width:calc(100% - 24px)}.demo-lang-bar{gap:3px;padding:3px}.demo-lang-bar button{min-height:46px}.demo-lang-caption{font-size:12px}}@media (max-width:420px){.admin-app .stats-grid{gap:7px}.admin-app .stats-grid strong{font-size:22px}.admin-tabs button{padding:0 9px}.demo-lang-bar button{min-height:44px}.time-grid{grid-template-columns:1fr}}@media (max-width:900px){html,body{max-width:100vw!important;overflow-x:clip!important}.admin-app,.demo-app,.teacher-app,.student-login-shell,.admin-login-shell{width:100%!important;max-width:100vw!important;overflow-x:clip!important}.booking-app{width:100%!important;min-width:0!important;max-width:100vw!important;overflow-x:hidden!important}.unbooked-remind .panel-head{grid-template-columns:minmax(0,1fr)!important;display:grid!important}.unbooked-actions,.unbooked-course,.unbooked-course select,.unbooked-next{max-width:none;width:100%!important}.unbooked-next{justify-content:center!important}.unbooked-row{grid-template-columns:auto minmax(0,1fr)!important}.unbooked-row .whatsapp-remind,.unbooked-row .text-button{justify-self:start}.cancel-slot-overlay{z-index:200!important;align-items:end!important;padding:12px!important}.cancel-slot-dialog{border-radius:22px 22px 0 0!important;width:100%!important}.cancel-slot-actions{grid-template-columns:1fr 1fr!important;display:grid!important}.cancel-slot-delete{justify-content:center!important;width:100%!important}.install-home-button{grid-template-columns:auto minmax(0,1fr) auto!important;width:100%!important;min-width:0!important}.install-home-copy{overflow-wrap:anywhere!important;min-width:0!important}.admin-topbar{padding-top:env(safe-area-inset-top);position:sticky!important;top:0!important}.admin-topbar-inner{grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"brand signout""tabs tabs"!important;gap:8px 10px!important;padding:8px 12px 10px!important;display:grid!important;overflow:visible!important}.admin-tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap!important;grid-area:tabs!important;width:100%!important;max-width:100%!important;display:flex!important;overflow-x:auto!important}.admin-tabs button{flex:none!important;min-height:44px!important}.admin-workspace{width:100%!important;max-width:100%!important;padding:16px 12px calc(28px + env(safe-area-inset-bottom))!important;display:block!important}.admin-pagehead,.admin-header-tools,.panel-head,.booking-heading,.calendar-title{flex-direction:column!important;align-items:stretch!important;width:100%!important;display:flex!important}.timezone-control,.week-switcher,.admin-app .panel-head .primary-button,.admin-app .panel-head .secondary-button{width:100%!important;min-width:0!important;max-width:100%!important}.timezone-control:not(.is-compact){flex-direction:column!important;display:flex!important}.timezone-control.is-compact{width:100%!important;max-width:100%!important;display:block!important}.timezone-control.is-compact .timezone-chip{justify-content:space-between;width:100%;min-height:48px}.stats-grid,.stats-grid.four,.admin-app .stats-grid{grid-template-columns:1fr 1fr!important;width:100%!important;display:grid!important}.overview-grid,.admin-grid,.admin-app .overview-grid,.admin-app .admin-grid,.calendly-shell,.demo-flow,.teacher-columns,.roster-grid,.settings-grid,.filter-grid,.backup-stats,.backup-columns,.backup-columns.three,.backup-card-head,.database-protection-card,.teacher-pin-grid{grid-template-columns:1fr!important;width:100%!important;max-width:100%!important;display:grid!important}.course-editor{grid-template-columns:minmax(0,1fr) 88px auto!important;width:100%!important;display:grid!important}.course-editor>div{grid-column:1/-1!important}.demo-flow{gap:12px!important;width:100%!important;margin-inline:0!important;padding-inline:12px!important}.add-student-panel{width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;position:static!important;overflow:visible!important}.add-student-panel h2,.add-student-panel p,.add-student-panel small,.add-student-panel form,.add-student-panel label,.add-student-panel input,.add-student-panel select,.pin-mode{white-space:normal!important;width:100%!important;min-width:0!important;max-width:100%!important;min-inline-size:0!important;height:auto!important;overflow:visible!important}.pin-mode{grid-template-columns:repeat(2,minmax(0,1fr))!important;display:grid!important}.roster-card-contact{grid-template-columns:minmax(0,1fr) auto!important}.roster-card-contact .save-phone,.roster-card-contact .whatsapp-remind{justify-self:start}.roster-login-latest{grid-template-columns:auto minmax(0,1fr)!important}.roster-login-more{grid-column:2;justify-self:start}.roster-course-select{min-height:40px}.demo-lang-switcher{width:calc(100% - 24px)!important;max-width:100%!important}.demo-lang-bar button{min-width:0!important}.date-strip{display:none!important}.time-grid{grid-template-columns:1fr 1fr!important}.admin-slot-row{grid-template-columns:52px minmax(0,1fr)!important;width:100%!important;display:grid!important}.slot-controls{grid-column:1/-1!important;grid-template-columns:1fr 1fr auto!important;width:100%!important;display:grid!important}.capacity-control,.status-button,.save-mini{grid-column:auto!important;width:100%!important}.table-wrap{-webkit-overflow-scrolling:touch;width:100%!important;max-width:100%!important;display:block!important;overflow-x:auto!important}.panel,.admin-app .panel{width:100%!important;max-width:100%!important}input,select,textarea{max-width:100%!important;min-height:44px!important;font-size:16px!important}.primary-button,.secondary-button{min-height:44px!important}.booking-topbar,.demo-topbar{flex-wrap:wrap!important;width:100%!important;max-width:100%!important}.teacher-body,.calendly-shell{width:100%!important;max-width:100%!important;padding-inline:12px!important}.admin-app .visitor-card{grid-template-columns:40px minmax(0,1fr)!important}.admin-app .visitor-card-actions{grid-column:1/-1;justify-content:flex-start!important}.admin-app .visitor-booked-on{text-align:left}.history-pager{flex-direction:column!important;align-items:stretch!important}.history-pager-actions{width:100%}.history-pager-actions .primary-button,.history-pager-actions .secondary-button{flex:1}}@media (max-width:420px){.stats-grid,.stats-grid.four,.admin-app .stats-grid{grid-template-columns:1fr 1fr!important}.time-grid{grid-template-columns:1fr!important}}.student-day-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;width:100%;margin:16px 0 22px;display:grid;overflow:visible}.student-day-grid button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:14px;width:100%;min-width:0;min-height:88px;padding:10px 4px}.student-day-grid button.empty{opacity:.58;background:#f7faf8}.student-day-grid button.active,.student-day-grid button:hover{border-color:var(--brand);background:#eff9f4;box-shadow:0 0 0 2px #0e7c5a14}.student-day-grid span,.student-day-grid strong,.student-day-grid small{display:block}.student-day-grid span{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.student-day-grid strong{margin:3px 0;font:700 18px Sora,sans-serif}.student-day-grid small{color:var(--muted);font-size:10px}@media (max-width:900px){.student-day-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin:14px 0 18px!important}.student-day-grid button{min-height:82px!important;padding:10px 4px!important}.student-day-grid span{font-size:11px!important}.student-day-grid strong{font-size:20px!important}.student-day-grid small{font-size:10px!important}.student-course-facts,.course-summary dl{grid-template-columns:1fr!important;display:grid!important}.booking-app{padding-bottom:calc(118px + env(safe-area-inset-bottom))!important}.student-record-head{grid-template-columns:1fr!important;gap:10px!important;display:grid!important}}.admin-app .roster-grid{grid-template-columns:1fr;gap:0}.admin-app .roster-panel{border-radius:24px;padding:22px 22px 18px}.admin-app .roster-hero{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.admin-app .roster-hero h2{letter-spacing:-.04em;margin:6px 0;font:750 28px/1.15 Sora,sans-serif}.admin-app .roster-hero-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.admin-app .roster-stats{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.admin-app .roster-stats span{background:var(--soft);color:var(--muted);border-radius:999px;padding:7px 12px;font-size:12px;font-weight:700}.admin-app .roster-stats strong{color:var(--ink);font-variant-numeric:tabular-nums;margin-right:4px}.admin-app .add-student-inline{background:var(--soft);border:1px solid var(--line);border-radius:18px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px;padding:16px;display:grid}.admin-app .add-student-inline label span,.admin-app .filter-grid label>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:800;display:block}.admin-app .add-student-inline input,.admin-app .add-student-inline select,.admin-app .filter-grid input,.admin-app .filter-grid select{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);background:#fff;border-radius:12px;padding:8px 12px;font-size:14px;font-weight:650}.admin-app .add-student-inline .pin-mode{grid-template-columns:1fr 1fr;margin:0}.admin-app .add-student-inline .primary-button{align-self:end;min-height:42px}.admin-app .filter-grid.roster-filters{background:#f6faf7;border-radius:16px;grid-template-columns:1.4fr 1fr .8fr .9fr;gap:12px;margin:0 0 16px;padding:14px}.admin-app .roster-board{gap:10px}.admin-app .roster-card{border:1px solid var(--line);background:#fff;border-radius:20px;gap:10px;padding:14px 16px 10px;transition:box-shadow .15s,border-color .15s;display:grid;box-shadow:0 0 0 1px #08463305,0 1px 2px #0846330a}.admin-app .roster-card:hover{border-color:var(--brand,#087a55)}@supports (color:color-mix(in lab, red, red)){.admin-app .roster-card:hover{border-color:color-mix(in srgb, var(--brand,#087a55) 22%, var(--line))}}.admin-app .roster-card:hover{box-shadow:0 0 0 1px #0846330a,0 10px 28px -20px #08463373}.admin-app .roster-card.has-bookings{box-shadow:inset 3px 0 #e0b15a,0 1px 2px #0846330a}.admin-app .roster-card.is-paused{opacity:.78;background:#fbfcfb}.admin-app .roster-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.admin-app .who{min-width:0}.admin-app .who-top{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.admin-app .who h3{letter-spacing:-.03em;margin:0;font:700 17px/1.15 Sora,sans-serif}.admin-app .course-chip{background:var(--soft);border-radius:999px;align-items:center;gap:8px;max-width:min(100%,320px);min-height:28px;margin-top:6px;padding:0 10px 0 8px;display:inline-flex}.admin-app .course-chip i{border-radius:50%;flex:none;width:8px;height:8px}.admin-app .course-chip select{appearance:none;color:var(--brand-dark);text-overflow:ellipsis;background:0 0;border:0;min-width:0;max-width:100%;min-height:28px;padding:0 14px 0 0;font-size:12px;font-weight:700}.admin-app .access-toggle{letter-spacing:.06em;text-transform:uppercase;min-width:68px;min-height:26px;padding:4px 10px;font-size:10px;font-weight:800}.admin-app .roster-sessions{background:var(--soft);color:var(--muted);text-align:center;border-radius:999px;min-width:88px;padding:6px 10px;font-size:11px;font-weight:800;position:relative;overflow:hidden}.admin-app .roster-sessions i{background:var(--brand-pale);position:absolute;inset:0 auto 0 0}.admin-app .roster-sessions em{font-variant-numeric:tabular-nums;font-style:normal;position:relative}.admin-app .roster-booking-note{border-radius:12px;padding:8px 12px;font-size:13px}.admin-app .roster-body{flex-direction:column;gap:8px;padding-left:54px;display:flex}.admin-app .contact-line{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.admin-app .ghost-field{background:var(--soft);max-width:100%;min-height:40px;color:var(--muted);border-radius:12px;align-items:center;gap:8px;padding:0 8px 0 12px;display:inline-flex}.admin-app .ghost-field.is-dirty{box-shadow:inset 0 0 0 1px var(--brand);color:var(--brand-dark);background:#fff}.admin-app .ghost-input{width:148px;min-width:0;color:var(--ink);background:0 0;border:0;outline:none;font-size:14px;font-weight:650}.admin-app .save-inline{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:999px;align-items:center;gap:4px;min-height:28px;padding:0 10px;font-size:11px;font-weight:800;display:inline-flex}.admin-app .roster-card .whatsapp-remind{color:#146c43;background:#edfdf3;border:0;border-radius:999px;align-items:center;min-height:36px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.admin-app .facts{flex-wrap:wrap;align-items:center;gap:8px 14px;min-width:0;margin:0;display:flex}.admin-app .meta-line{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;display:flex}.admin-app .fact{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.admin-app .pin-value,.admin-app .pin-pending,.admin-app .roster-login-empty{color:var(--ink);letter-spacing:.12em;font-variant-numeric:tabular-nums;background:0 0;border:0;align-items:center;gap:6px;padding:0;font:800 12px/1.2 Sora,sans-serif;display:inline-flex}.admin-app .pin-pending,.admin-app .roster-login-empty{color:var(--muted);letter-spacing:0;font-family:inherit;font-weight:650}.admin-app .roster-login-latest{min-width:0;color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:650;display:inline-flex}.admin-app .roster-login-history{margin:0 0 0 54px}.admin-app .roster-card-meta{border:0;justify-content:flex-end;margin:0;padding:0;display:flex}.admin-app .roster-card-actions .text-button{min-height:32px;padding:4px 6px;font-size:12px}.admin-app .student-avatar{border-radius:14px;width:42px;height:42px;margin-right:0;font:750 16px Sora,sans-serif}@media (max-width:900px){.admin-app .roster-hero{flex-direction:column}.admin-app .add-student-inline,.admin-app .filter-grid.roster-filters{grid-template-columns:1fr}.admin-app .roster-head{grid-template-columns:auto minmax(0,1fr)}.admin-app .roster-sessions{grid-column:2;justify-self:start}.admin-app .roster-body,.admin-app .roster-card-meta,.admin-app .roster-login-history{margin-left:0;padding-left:0}}@media (prefers-reduced-motion:reduce){.admin-app .roster-card{transition:none}}.receipt-layout{grid-template-columns:minmax(280px,400px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.receipt-form{margin:0}.receipt-help{color:var(--muted);margin:0 0 14px;font-size:14px;line-height:1.5}.receipt-fields{gap:12px;display:grid}.receipt-field span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:800;display:block}.receipt-field input,.receipt-field select{width:100%;color:var(--ink);background:#fff;font-size:16px}.receipt-kind{grid-template-columns:1fr 1fr;gap:8px;margin:14px 0;display:grid}.receipt-kind button{border:1px solid var(--line);min-height:44px;color:var(--ink);cursor:pointer;background:#fff;border-radius:12px;font-weight:750}.receipt-kind button.active{color:#fff;background:#07513b;border-color:#07513b}.receipt-kind button:disabled{opacity:.45;cursor:not-allowed}.pay-options{gap:8px;margin:14px 0 10px;display:grid}.pay-options label{border:1.5px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;align-items:flex-start;gap:10px;margin:0;padding:10px 12px;display:flex}.pay-options label.checked{background:#f3faf6;border-color:#084633}.pay-options input{accent-color:#087a55;flex:none;width:16px;height:16px;margin-top:3px;min-height:16px!important}.pay-options b{font-size:14px;display:block}.pay-options small{color:var(--muted);margin-top:2px;font-size:12px;line-height:1.35;display:block}.receipt-amount{background:#f8f6f0;border:1px solid #e7e1d4;border-radius:16px;gap:2px;margin:0 0 14px;padding:12px 14px;display:grid}.receipt-amount>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.receipt-amount .amount-row{border-bottom:1px dashed #e4eee8;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.receipt-amount .amount-row>span{color:#3d5c4c;font-size:13px}.receipt-amount label{align-items:center;gap:4px;margin:0;font-weight:750;display:flex}.receipt-amount input{text-align:right;width:92px;min-height:40px;padding:6px 8px;font-weight:750}.receipt-amount .total-row{border-top:1.5px solid #084633;justify-content:space-between;align-items:baseline;margin-top:8px;padding-top:8px;display:flex}.receipt-amount .total-row strong{letter-spacing:-.03em;color:#084633;font-family:Sora,sans-serif;font-size:26px}.receipt-amount>small{color:var(--muted);line-height:1.4}.receipt-late{color:var(--ink);align-items:flex-start;gap:10px;margin:2px 0;font-size:14px;line-height:1.45;display:flex}.receipt-late input{accent-color:#087a55;flex:none;width:18px;height:18px;min-height:18px;margin-top:2px}.receipt-fee-card{background:#f3faf6;border:1px solid #d5eadf;border-radius:16px;gap:4px;margin:14px 0;padding:14px;display:grid}.receipt-fee-card>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.receipt-fee-card>strong{letter-spacing:-.03em;font-family:Sora,sans-serif;font-size:22px}.receipt-fee-card>small{color:var(--muted);line-height:1.4}.receipt-catalogue{color:var(--muted);margin:0 0 14px;font-size:13px}.receipt-catalogue summary{cursor:pointer;color:#07513b;font-weight:750}.receipt-catalogue ul{gap:8px;margin:10px 0;padding:0;list-style:none;display:grid}.receipt-catalogue li{grid-template-columns:1fr auto;gap:2px 10px;display:grid}.receipt-catalogue small{grid-column:1/-1}.receipt-error,.receipt-warn{border-radius:12px;margin:0 0 12px;padding:10px 12px;font-size:14px;line-height:1.45}.receipt-error{color:#8b342c;background:#fff0ed}.receipt-warn{color:#7a4a12;background:#fff6e8}.receipt-actions{flex-wrap:wrap;gap:8px;display:flex}.receipt-layout:not(.email-layout) .receipt-actions{grid-template-columns:1.3fr .8fr .9fr;display:grid}.receipt-actions .primary-button,.receipt-actions .secondary-button{min-height:44px}.receipt-actions .primary-button:disabled,.receipt-actions .secondary-button:disabled{opacity:.45;cursor:default}@media (max-width:700px){.receipt-layout:not(.email-layout) .receipt-actions{grid-template-columns:1fr}}.receipt-search{position:relative}.receipt-search-list{z-index:6;border:1px solid var(--line);background:#fff;border-radius:14px;max-height:280px;padding:6px;position:absolute;top:calc(100% - 4px);left:0;right:0;overflow:auto;box-shadow:0 16px 40px -24px #08463373}.receipt-search-list button{width:100%;min-height:44px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:8px 10px;display:grid}.receipt-search-list button strong{font-size:14px}.receipt-search-list button small{color:var(--muted);font-size:12px}.receipt-search-list button:hover,.receipt-search-list button[aria-selected=true]{background:#e7f3ec}.receipt-search-list p{color:var(--muted);margin:8px 10px;font-size:13px}.receipt-search-custom{font-weight:750;color:#07513b!important}.receipt-sheet{color:#14261c;background:#fff;border:1px solid #d5e3db;border-radius:16px;padding:22px 24px 18px;font-size:13.5px;line-height:1.4;box-shadow:0 18px 50px -36px #08463359}.receipt-head{border-bottom:2px solid #084633;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:8px 14px;padding-bottom:14px;display:grid}.receipt-head img{border-radius:12px;width:52px;height:52px}.receipt-id strong{letter-spacing:-.03em;font-family:Sora,sans-serif;font-size:22px;line-height:1.1;display:block}.receipt-id span{color:#3d5c4c;margin-top:2px;font-size:12.5px;line-height:1.35;display:block}.receipt-gstin{font-weight:800;color:#084633!important;margin-top:4px!important}.receipt-doc{text-align:right}.receipt-doc b{color:#084633;letter-spacing:.16em;text-transform:uppercase;font-family:Sora,sans-serif;font-size:12px;font-weight:800;display:block}.receipt-doc em{margin-top:6px;font-size:16px;font-style:normal;font-weight:800;display:block}.receipt-meta,.receipt-party{gap:12px 20px;margin:14px 0 0;display:grid}.receipt-meta{grid-template-columns:1.5fr 1fr .8fr}.receipt-party{grid-template-columns:1fr 1fr}.receipt-party .wide{grid-column:1/-1}.receipt-meta div,.receipt-party div{min-width:0}.receipt-meta dt,.receipt-party dt{color:#607068;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.receipt-meta dd,.receipt-party dd{overflow-wrap:anywhere;margin:2px 0 0;font-size:15px;font-weight:750}.receipt-notes{background:#f4faf7;border:1px solid #d7e8df;border-radius:10px;margin:14px 0 0;padding:10px 12px;list-style:none}.receipt-notes li{margin:0;font-weight:700}.receipt-notes li+li{margin-top:3px}.receipt-table{border-collapse:collapse;width:100%;margin-top:16px}.receipt-table th{color:#fff;letter-spacing:.06em;text-align:left;text-transform:uppercase;background:#084633;padding:8px 10px;font-size:10px;font-weight:800}.receipt-table td{vertical-align:top;border-bottom:1px solid #e4eee8;padding:10px}.receipt-table tbody tr:nth-child(2n){background:#fbfaf6}.item-name{font-weight:750}.item-desc{color:#607068;margin-top:2px;font-size:12px;line-height:1.35}.receipt-grand{color:#fff;background:#084633;border-radius:10px;justify-content:space-between;align-items:center;width:min(100%,280px);margin:14px 0 0 auto;padding:12px 14px;display:flex}.receipt-grand span{letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.receipt-grand strong{letter-spacing:-.03em;font-family:Sora,sans-serif;font-size:22px}.receipt-table th:last-child,.receipt-table td:last-child{text-align:right}.receipt-table tbody td:last-child,.receipt-table tfoot td{white-space:nowrap;font-family:Sora,sans-serif;font-weight:800}.receipt-table tfoot th,.receipt-table tfoot td{color:#084633;border-top:1px solid #084633;padding-top:10px;font-size:16px}.receipt-table tfoot th{text-align:left;letter-spacing:0;text-transform:none;font-size:13px}.nowrap{white-space:nowrap}.receipt-words{margin:8px 0 0;font-weight:750}.receipt-warn.on-sheet{margin-top:8px}.receipt-foot{border-top:1px solid #e4eee8;margin-top:14px;padding-top:10px}.receipt-foot p{color:#3d5c4c;margin:0 0 6px;font-size:12px;line-height:1.45}.receipt-norefund{font-weight:750;color:#14261c!important}.receipt-links{flex-wrap:wrap;gap:8px 18px;margin-top:4px;display:flex}.receipt-links a{color:#087a55;font-size:13px;font-weight:800;text-decoration:none}.receipt-links a span{color:#607068;font-size:11px;font-weight:650;display:block}.receipt-placeholder{color:#607068;padding:22px 0 8px}.receipt-placeholder strong{color:#14261c;margin-bottom:6px;font-family:Sora,sans-serif;display:block}@media (max-width:900px){.receipt-layout{grid-template-columns:1fr}.receipt-sheet{padding:18px 16px 14px}.receipt-meta,.receipt-party{grid-template-columns:1fr 1fr}.receipt-party .wide{grid-column:1/-1}}@media print{@page{size:A4;margin:12mm}body{background:#fff!important}.admin-topbar,.admin-pagehead,.admin-notice,.admin-load-bar,.receipt-form,.receipt-pagehead{display:none!important}.admin-workspace{max-width:none!important;margin:0!important;padding:0!important}.receipt-layout{display:block!important}.receipt-sheet{break-inside:avoid;page-break-inside:avoid;width:100%!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important}.receipt-head{grid-template-columns:auto minmax(0,1fr) auto!important;display:grid!important}.receipt-doc{text-align:right!important}.receipt-meta{grid-template-columns:1.5fr 1fr .8fr!important;display:grid!important}.receipt-party{grid-template-columns:1fr 1fr!important;display:grid!important}.receipt-links{display:flex!important}.receipt-notes,.receipt-doc em,.receipt-table thead th,.receipt-grand{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.email-split{grid-template-columns:1fr 1fr;gap:12px;display:grid}.email-layout .receipt-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;display:grid}.email-layout .receipt-actions .primary-button,.email-layout .receipt-actions .secondary-button{white-space:nowrap;justify-content:center;align-items:center;width:100%;min-height:48px;padding-inline:12px;display:inline-flex}.email-sheet{color:#14261c;box-shadow:none;background:0 0;border:0;border-radius:0;gap:12px;padding:0;display:grid}.email-snippet{background:0 0;border:0;border-radius:0;overflow:visible}.email-snippet.is-copied .email-snippet-frame{border-color:#087a55;box-shadow:0 0 0 3px #087a5529}.email-snippet-label{color:#607068;letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px 2px;font-size:13px;font-weight:700}.email-snippet-frame{background:#f6faf8;border:1px solid #e1ebe6;border-radius:14px;position:relative}.email-snippet-frame .email-copy{float:right;background:#fff;min-height:32px;margin:8px 8px 0 12px}.email-snippet-frame:after{content:"";clear:both;display:block}.email-snippet-text{overflow-wrap:anywhere;margin:0;padding:14px 16px;font-family:Manrope,Arial,Helvetica,sans-serif;font-size:16px;font-weight:450;line-height:1.5}.email-snippet-body{padding:16px 18px 6px}.email-snippet .email-letter{font-size:16px;line-height:1.6}.email-snippet .email-letter p{margin:0 0 16px}.email-copy-status{margin:0}.email-copy-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.email-copy-row h2{margin:4px 0 0}.email-body-row{border-top:1px solid #d7e8df;align-items:center;margin:2px 0 12px;padding-top:10px}.email-copy{color:#07513b;cursor:pointer;background:#f3faf6;border:1px solid #cfe3d8;border-radius:999px;flex:none;align-items:center;gap:6px;min-height:36px;margin-top:2px;padding:0 12px;font:750 13px Manrope,ui-sans-serif,sans-serif;display:inline-flex}.email-copy:hover{background:#e7f3ec}.email-copy.is-copied{color:#fff;background:#087a55;border-color:#087a55;animation:.28s email-copy-pop}.email-copy-row.is-copied{background:#e8f6ee;border-radius:12px;margin-inline:-8px;padding:8px 8px 6px}.email-copy-status{color:#07513b;background:#e8f6ee;border-radius:10px;margin:8px 0 0;padding:8px 12px;font-size:13px;font-weight:750}.email-copy-status.is-error{color:#8b342c;background:#fff0ed}.email-letter-flash{background:#f4fbf7;border-radius:12px;animation:.28s email-copy-pop;box-shadow:inset 0 0 0 2px #087a55}@keyframes email-copy-pop{0%{transform:scale(.985)}55%{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.email-copy.is-copied,.email-letter-flash{animation:none}}.email-layout .receipt-actions .secondary-button:only-child{grid-column:1/-1}.email-kicker{color:#607068;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:10px;font-weight:800}.email-sheet h2{letter-spacing:-.03em;margin:4px 0 12px;font-family:Sora,sans-serif;font-size:20px;line-height:1.3}.email-sheet .email-copy-row>div{min-width:0}.email-sheet .email-copy-row h2{overflow-wrap:anywhere;margin:4px 0 0}.email-letter{color:#14261c;font-family:Manrope,Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}.email-letter p{margin:0 0 14px}.email-link-label{color:#14261c;margin-bottom:2px;font-family:Manrope,ui-sans-serif,system-ui,sans-serif;font-size:16px;font-weight:700;display:block}.email-letter a{color:#087a55;overflow-wrap:anywhere;font-weight:700;text-decoration:underline}.email-fees{margin:0 0 16px}.email-fees p,.email-snippet .email-fees p{margin:0 0 4px}.email-fees em{font-style:italic}.email-fees h3{margin:0 0 10px;font-family:Manrope,Arial,Helvetica,sans-serif;font-size:16px;font-weight:700;line-height:1.45}.email-fees table{border-collapse:collapse;width:100%;font-size:16px}.email-fees td{vertical-align:top;padding:6px 0}.email-fees td:first-child{color:#084633;white-space:nowrap;width:6.2rem;padding-right:12px;font-weight:700}.email-fees tr:last-child td{border-top:1px solid #d7e8df;padding-top:8px;font-weight:700}.email-fees p{color:#14261c;margin:12px 0 2px;font-size:16px;line-height:1.55}.email-sign{border-top:1px solid #d7e8df;margin-top:6px;padding-top:12px}@media (max-width:700px){.email-split,.email-layout .receipt-actions{grid-template-columns:1fr}.email-sheet{padding:0}.email-fees td:first-child{width:5.2rem}}.teachers-admin{gap:16px;display:grid}.teachers-admin .add-student-inline{margin-top:12px}.teachers-admin .roster-board{margin:0}:root{--att-present:#0e7c5a;--att-late:#b26b00;--att-absent:#c2410c;--att-excused:#5b5bd6}.attendance-sheet{border:1px solid var(--line);background:#fbfcfb;border-radius:12px;margin:0 11px 11px;padding:10px 12px}.teacher-slot-card .attendance-sheet{margin:10px 0 0}.attendance-sheet.needs-marking{border-color:var(--sunshine)}@supports (color:color-mix(in lab, red, red)){.attendance-sheet.needs-marking{border-color:color-mix(in srgb, var(--sunshine) 60%, white)}}.attendance-sheet.needs-marking{background:#fffaf0}.attendance-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.attendance-head-copy{min-width:0;color:var(--brand-dark);flex-wrap:wrap;align-items:center;gap:7px;display:inline-flex}.attendance-head-copy strong{font-size:13px;font-weight:800}.attendance-head-copy small{color:var(--muted);font-size:12px;font-weight:600}.attendance-toggle{border:1px solid var(--brand);min-height:34px;padding:6px 14px}@supports (color:color-mix(in lab, red, red)){.attendance-toggle{border:1px solid color-mix(in srgb, var(--brand) 30%, white)}}.attendance-toggle{background:var(--brand-pale);color:var(--brand-dark);cursor:pointer;border-radius:999px;font-size:12px;font-weight:800}.needs-marking .attendance-toggle{background:var(--sunshine);border-color:var(--sunshine);color:var(--ink)}.attendance-list{gap:6px;margin:10px 0 0;padding:0;list-style:none;display:grid}.attendance-list li{border-left:3px solid var(--line);background:#fff;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.attendance-list li.is-present{border-left-color:var(--att-present)}.attendance-list li.is-late{border-left-color:var(--att-late)}.attendance-list li.is-absent{border-left-color:var(--att-absent)}.attendance-list li.is-excused{border-left-color:var(--att-excused)}.attendance-name{align-items:center;gap:6px;min-width:0;display:inline-flex}.attendance-name b{color:var(--ink);overflow-wrap:anywhere;font-size:13px;font-weight:800}.attendance-choices{flex-wrap:wrap;gap:4px;display:inline-flex}.attendance-choice{border:1px solid var(--line);min-width:44px;min-height:36px;color:var(--muted);cursor:pointer;background:#fff;border-radius:9px;padding:6px 10px;font-size:12px;font-weight:750;transition:background .12s,color .12s,border-color .12s}.attendance-choice:hover{border-color:var(--brand)}@supports (color:color-mix(in lab, red, red)){.attendance-choice:hover{border-color:color-mix(in srgb, var(--brand) 40%, white)}}.attendance-choice:focus-visible,.attendance-toggle:focus-visible{outline:3px solid var(--brand)}@supports (color:color-mix(in lab, red, red)){.attendance-choice:focus-visible,.attendance-toggle:focus-visible{outline:3px solid color-mix(in srgb, var(--brand) 35%, transparent)}}.attendance-choice:focus-visible,.attendance-toggle:focus-visible{outline-offset:1px}.attendance-choice.selected{color:#fff}.attendance-choice.present.selected{background:var(--att-present);border-color:var(--att-present)}.attendance-choice.late.selected{background:var(--att-late);border-color:var(--att-late)}.attendance-choice.absent.selected{background:var(--att-absent);border-color:var(--att-absent)}.attendance-choice.excused.selected{background:var(--att-excused);border-color:var(--att-excused)}.attendance-short{display:none}.attendance-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;display:flex}.attendance-actions .text-button{padding:6px 0;font-size:12px}.attendance-actions .save-mini:not(:disabled){background:var(--brand);color:#fff}.attendance-error{color:#8b342c;margin-top:8px;font-size:12px;font-weight:650;display:block}.attendance-setting{align-items:flex-start;gap:10px;display:flex}.attendance-setting input{width:18px;height:18px;accent-color:var(--brand);flex:none;margin-top:3px;padding:0}.attendance-setting span{margin:0;font-size:12px;line-height:1.5}.attendance-setting strong{color:var(--ink);font-size:13px;display:block}.attendance-admin{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.attendance-admin>*{min-width:0}.attendance-admin .stats-grid{margin-bottom:0}.filter-grid.attendance-filters{grid-template-columns:1fr 1fr 1.3fr auto;align-items:end}.attendance-low-filter{align-items:center;gap:8px;min-height:44px;display:flex}.admin-app .filter-grid .attendance-low-filter input{width:18px;height:18px;min-height:0;accent-color:var(--brand);flex:none;padding:0}.admin-app .filter-grid .attendance-low-filter>span{color:var(--ink);text-transform:none;letter-spacing:0;margin:0;font-size:13px;font-weight:700}.attendance-table td{vertical-align:middle}.attendance-table tr.is-low td{background:#fff7f2}.attendance-rate{background:var(--brand-pale);min-width:52px;color:var(--brand-dark);text-align:center;border-radius:999px;padding:4px 8px;font-weight:800;display:inline-block}.attendance-rate.low{color:var(--att-absent);background:#ffe4d6}.attendance-pending{gap:8px;display:grid}.attendance-pending article{border:1px solid var(--line);border-left:4px solid var(--course-color,var(--brand));border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.attendance-pending article>span{gap:3px;min-width:0;display:grid}.attendance-pending small{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:inline-flex}.attendance-pending em{color:var(--att-late);white-space:nowrap;font-size:12px;font-style:normal;font-weight:800}.attendance-pending .text-button{font-size:12px}@media (max-width:700px){.attendance-long{display:none}.attendance-short{display:inline}.attendance-list li{align-items:stretch}.attendance-choices{grid-template-columns:repeat(4,1fr);width:100%;display:grid}.filter-grid.attendance-filters{grid-template-columns:1fr 1fr}.attendance-low-filter{grid-column:1/-1}.attendance-pending article{grid-template-columns:1fr auto}.attendance-pending .text-button{grid-column:1/-1;justify-self:start}}:root{--bill-due:#c2410c;--bill-due-bg:#fff1ea;--bill-upcoming:#a16207;--bill-upcoming-bg:#fff8db;--bill-ok:#0e7c5a;--bill-ok-bg:#e6f6ee}.admin-console{grid-template-columns:248px minmax(0,1fr);align-items:start;display:grid}.admin-rail{background:#fffdfaf5;border-right:1px solid #d7e4dc;flex-direction:column;gap:18px;height:100dvh;padding:18px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.admin-sidebar-top{flex-direction:column;gap:14px;display:flex}.admin-sidebar-signout{color:#4d6358;cursor:pointer;background:#fff;border:1px solid #e3ebe6;border-radius:11px;order:3;align-items:center;gap:8px;min-height:40px;padding:0 12px;font-size:13px;font-weight:750;display:inline-flex}.admin-sidebar-signout:hover{color:#07513b;border-color:#07513b}.admin-nav{flex-direction:column;gap:14px;display:flex}.admin-nav-group{flex-direction:column;gap:2px;display:flex}.admin-nav-label{color:#6b7f74;letter-spacing:.12em;text-transform:uppercase;padding:0 10px 4px;font-size:11px;font-weight:800}.admin-nav-item{color:#33493e;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;align-items:center;gap:10px;min-height:42px;padding:0 10px;font-size:14px;font-weight:700;display:flex}.admin-nav-item span{flex:1}.admin-nav-item:hover{color:#07513b;background:#e7f3ec}.admin-nav-item.active{color:#fff;background:#07513b}.admin-nav-item b{color:#3b2d00;font-variant-numeric:tabular-nums;background:#ffc83d;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 6px;font-size:12px;display:grid}.admin-nav-item.alert b{background:var(--bill-due);color:#fff}.admin-nav-item:focus-visible,.admin-sidebar-signout:focus-visible{outline:3px solid var(--brand)}@supports (color:color-mix(in lab, red, red)){.admin-nav-item:focus-visible,.admin-sidebar-signout:focus-visible{outline:3px solid color-mix(in srgb, var(--brand) 35%, transparent)}}.admin-nav-item:focus-visible,.admin-sidebar-signout:focus-visible{outline-offset:2px}.admin-console .admin-workspace{max-width:1240px;padding-top:28px}.admin-console .text-button{font-size:13px}.admin-console .weekly-reset-note,.admin-console .slot-roster-bar button{font-size:12px}@media (max-width:1000px){.admin-console{display:block}.admin-rail{z-index:40;height:auto;padding:10px 14px;padding-top:max(10px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdfaf0;border-bottom:1px solid #d7e4dc;border-right:0;flex-direction:column;gap:8px;position:sticky;top:0;overflow:visible}.admin-sidebar-top{flex-direction:row;justify-content:space-between;align-items:center}.admin-sidebar-signout{order:0;min-height:36px}.admin-nav{scrollbar-width:none;flex-direction:row;gap:4px;margin:0 -14px;padding:0 14px 2px;overflow-x:auto}.admin-nav::-webkit-scrollbar{display:none}.admin-nav-group{flex-direction:row;gap:4px}.admin-nav-group+.admin-nav-group{border-left:1px solid #e3ebe6;padding-left:6px}.admin-nav-label{display:none}.admin-nav-item{white-space:nowrap;flex:none;min-height:40px;font-size:13px}.admin-console .admin-workspace{padding-top:20px}}.billing{gap:16px;display:grid}.billing-toast{margin:0}.billing-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.billing-stat{border:1px solid var(--line);text-align:left;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:18px;flex-direction:column;gap:4px;padding:16px 18px;display:flex;box-shadow:0 1px 2px #0e24160a}.billing-stat span{color:var(--muted);align-items:center;gap:8px;font-size:13px;font-weight:800;display:inline-flex}.billing-stat span i{background:currentColor;border-radius:50%;width:10px;height:10px}.billing-stat strong{font-family:Sora,sans-serif;font-size:30px;font-weight:800;line-height:1.1}.billing-stat small{color:var(--muted);font-size:12px}.billing-stat.tone-due span i{background:var(--bill-due)}.billing-stat.tone-upcoming span i{background:var(--bill-upcoming)}.billing-stat.tone-ok span i{background:var(--bill-ok)}.billing-stat.tone-due.active{border-color:var(--bill-due);background:var(--bill-due-bg)}.billing-stat.tone-upcoming.active{border-color:var(--bill-upcoming);background:var(--bill-upcoming-bg)}.billing-stat.tone-ok.active{border-color:var(--bill-ok);background:var(--bill-ok-bg)}.billing-stat.collected{cursor:default;color:#fff;background:#07513b;border-color:#07513b}.billing-stat.collected span,.billing-stat.collected small{color:#fffc;font-size:13px;font-weight:700}.billing-stat:focus-visible{outline:3px solid var(--brand)}@supports (color:color-mix(in lab, red, red)){.billing-stat:focus-visible{outline:3px solid color-mix(in srgb, var(--brand) 35%, transparent)}}.billing-stat:focus-visible{outline-offset:2px}.billing-list-panel{padding:18px}.billing-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.billing-toolbar label{margin:0}.billing-toolbar input,.billing-toolbar select{min-height:44px;font-size:14px}.billing-search{flex:220px}.billing-check{min-height:44px;color:var(--muted);align-items:center;gap:8px;font-size:13px;font-weight:700;display:inline-flex}.billing-check input{width:18px;height:18px;min-height:0;accent-color:var(--brand);flex:none;padding:0}.billing-check span{text-transform:none!important;letter-spacing:0!important;color:var(--ink)!important;margin:0!important;font-size:13px!important}.billing-add{min-height:44px;margin-left:auto}.billing-rows{gap:8px;margin:0;padding:0;list-style:none;display:grid}.billing-row{border:1px solid var(--line);border-left:4px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:minmax(200px,1.4fr) minmax(130px,.8fr) auto minmax(0,1.6fr);align-items:center;gap:12px;padding:12px 14px;display:grid}.billing-row.tone-due{border-left-color:var(--bill-due)}.billing-row.tone-upcoming{border-left-color:var(--bill-upcoming)}.billing-row.tone-ok{border-left-color:var(--bill-ok)}.billing-row.is-paused{opacity:.6}.billing-who{text-align:left;cursor:pointer;min-width:0;color:inherit;font:inherit;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.billing-who-copy{gap:2px;min-width:0;display:grid}.billing-who-copy strong{overflow-wrap:anywhere;font-size:15px;font-weight:800}.billing-who-copy strong small{color:var(--muted);font-size:13px;font-weight:600}.billing-who-copy>small,.billing-dates small{color:var(--muted);font-size:12px}.billing-dates{gap:2px;display:grid}.renewal-pill{white-space:nowrap;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800;display:inline-block}.renewal-pill.tone-due{background:var(--bill-due-bg);color:var(--bill-due)}.renewal-pill.tone-upcoming{background:var(--bill-upcoming-bg);color:var(--bill-upcoming)}.renewal-pill.tone-ok{background:var(--bill-ok-bg);color:var(--bill-ok)}.billing-actions,.billing-status-actions,.billing-history-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.billing-actions{grid-template-columns:repeat(2,max-content);justify-content:end;display:grid}.billing-actions .billing-action{justify-content:center}.billing-action{border:1px solid var(--line);min-height:38px;color:var(--ink);cursor:pointer;white-space:nowrap;background:#fff;border-radius:10px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:750;display:inline-flex}.billing-action:hover:not(:disabled){border-color:var(--brand);color:var(--brand-dark)}.billing-action.primary{background:var(--brand-dark);border-color:var(--brand-dark);color:#fff}.billing-action.primary:hover:not(:disabled){background:var(--brand);color:#fff}.billing-action.whatsapp{color:#0b6b3a}.billing-action:disabled{opacity:.45;cursor:not-allowed}.billing-action:focus-visible,.billing-who:focus-visible{outline:3px solid var(--brand)}@supports (color:color-mix(in lab, red, red)){.billing-action:focus-visible,.billing-who:focus-visible{outline:3px solid color-mix(in srgb, var(--brand) 35%, transparent)}}.billing-action:focus-visible,.billing-who:focus-visible{outline-offset:2px}.billing-sheet-backdrop{z-index:80;background:#08181061;justify-content:flex-end;display:flex;position:fixed;inset:0}.billing-sheet{background:#fbfdfc;flex-direction:column;width:min(640px,100%);height:100%;display:flex;box-shadow:-18px 0 40px -20px #08181073}.billing-sheet-head{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 22px 14px;display:flex}.billing-sheet-head h2{letter-spacing:-.03em;margin:4px 0 0;font-family:Sora,sans-serif;font-size:22px}.billing-sheet-body{flex:1;align-content:start;gap:16px;padding:18px 22px 40px;display:grid;overflow-y:auto}.billing-status-card{border:1px solid var(--line);border-left:4px solid var(--line);background:#fff;border-radius:14px;gap:12px;padding:14px;display:grid}.billing-status-card.tone-due{border-left-color:var(--bill-due)}.billing-status-card.tone-upcoming{border-left-color:var(--bill-upcoming)}.billing-status-card.tone-ok{border-left-color:var(--bill-ok)}.billing-status-card>div:first-child{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.billing-status-card small{color:var(--muted);font-size:13px}.billing-status-actions{justify-content:flex-start}.billing-form{gap:14px;display:grid}.billing-form fieldset{border:1px solid var(--line);background:#fff;border-radius:14px;gap:12px;margin:0;padding:14px;display:grid}.billing-form legend{padding:0 6px;font-size:14px;font-weight:800}.billing-inline-form{border:1px solid var(--line);background:#fff;border-radius:14px;padding:16px}.billing-inline-form h3,.billing-history h3{margin:0;font-size:16px;font-weight:800}.billing-history h3 small{color:var(--muted);font-size:13px;font-weight:600}.billing-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.billing-form-grid label span,.billing-form label>span{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:800;display:block}.billing-form-grid label span em{color:#7a8c82;font-style:normal;font-weight:600}.billing-form input,.billing-form select{min-height:44px;font-size:15px}.billing-form .span-all{grid-column:1/-1}.billing-note{color:var(--muted);margin:0;font-size:13px;line-height:1.5;display:block}.billing-form-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.billing-form-actions .text-button{font-size:14px}.billing-history{gap:10px;display:grid}.billing-history ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.billing-history li{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px;display:grid}.billing-history li>span:first-child{gap:2px;min-width:0;display:grid}.billing-history li strong{font-size:14px}.billing-history li small{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.billing-history li em{font-variant-numeric:tabular-nums;font-style:normal;font-weight:800}.billing-history .danger-text{font-size:13px}@media (max-width:1100px){.billing-row{grid-template-columns:minmax(0,1fr) auto}.billing-dates{display:none}.billing-actions{grid-column:1/-1;justify-content:flex-start;display:flex}}@media (max-width:700px){.billing-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-stat strong{font-size:26px}.billing-add{justify-content:center;width:100%;margin-left:0}.billing-form-grid{grid-template-columns:1fr}.billing-actions .billing-action span{display:none}.billing-actions .billing-action.primary span{display:inline}.billing-history li{grid-template-columns:minmax(0,1fr) auto}.billing-history-actions{grid-column:1/-1;justify-content:flex-start}.billing-sheet-body,.billing-sheet-head{padding-left:16px;padding-right:16px}}.billing-dates b{color:var(--ink);font-weight:800}.billing-pill-stack{justify-items:start;gap:4px;display:grid}.billing-unpaid{color:var(--bill-due);font-size:12px;font-weight:750}.billing-quickset{border:1px dashed var(--bill-due);flex-wrap:wrap;grid-column:1/-1;align-items:end;gap:10px 14px;margin-top:4px;padding:12px 14px;display:flex}@supports (color:color-mix(in lab, red, red)){.billing-quickset{border:1px dashed color-mix(in srgb, var(--bill-due) 40%, var(--line))}}.billing-quickset{background:var(--bill-due-bg);border-radius:12px}.billing-quickset label:first-child{color:#5f7468;gap:4px;min-width:170px;font-size:12px;font-weight:750;display:grid}.billing-quickset input[type=date]{min-height:40px;padding:7px 10px}.billing-quickset .billing-check{margin:0 0 10px}.billing-quickset>small{color:#4d6358;flex:220px;margin-bottom:11px;font-size:13px}.billing-quickset>small b{color:var(--ink)}.billing-quickset .primary-button{min-height:40px;padding:0 20px}.billing-quickset-error{color:var(--bill-due);flex-basis:100%;font-size:13px;font-weight:700}.billing-covers{background:var(--bill-ok-bg);color:#24493a;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin:2px 0 0;padding:10px 12px;font-size:13px;line-height:1.45;display:flex}.billing-covers>svg{color:var(--bill-ok);flex:none}.billing-covers>span{flex:200px}.billing-covers.warn{background:var(--bill-due-bg);color:#6b2a0a;margin-bottom:12px}.billing-covers.warn>svg{color:var(--bill-due)}.billing-status-card small+small{margin-top:2px;display:block}@media (max-width:700px){.billing-quickset{padding:10px 12px}.billing-quickset label:first-child,.billing-quickset .primary-button{flex:100%}}.tp{min-height:100dvh;color:var(--ink);background:#f4f8f5}.tp-topbar{z-index:30;padding:12px max(16px,50vw - 640px);padding-top:max(12px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdfaf0;border-bottom:1px solid #d7e4dc;justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.tp-brand{align-items:center;gap:10px;min-width:0;display:flex}.tp-brand img{border-radius:10px}.tp-brand strong,.tp-brand small{line-height:1.15;display:block}.tp-brand strong{letter-spacing:-.03em;white-space:nowrap;font-family:Sora,sans-serif;font-size:14px;font-weight:800}.tp-brand small{color:#5f7468;letter-spacing:.12em;text-transform:uppercase;margin-top:2px;font-size:11px;font-weight:800}.tp-user{align-items:center;gap:10px;min-width:0;display:flex}.tp-avatar,.ta-avatar{letter-spacing:.02em;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-size:13px;font-weight:800;display:grid}.tp-user-copy strong,.tp-user-copy small{line-height:1.2;display:block}.tp-user-copy strong{font-size:14px}.tp-user-copy small{color:#5f7468;font-size:12px}.tp-signout{color:#4d6358;cursor:pointer;background:#fff;border:1px solid #e3ebe6;border-radius:11px;align-items:center;gap:7px;min-height:38px;padding:0 12px;font-size:13px;font-weight:750;display:inline-flex}.tp-signout:hover{border-color:var(--brand-dark);color:var(--brand-dark)}.tp-body{max-width:1280px;margin:0 auto;padding:24px 24px 64px}.tp-hero{grid-template-columns:minmax(0,1fr) minmax(280px,380px);align-items:stretch;gap:18px;display:grid}.tp-hero-main h1{letter-spacing:-.04em;margin:6px 0 14px;font-family:Sora,sans-serif;font-size:clamp(26px,3.2vw,36px);line-height:1.1}.tp-next{--course:var(--brand);border:1px solid var(--line);border-left:6px solid var(--course);background:#fff;border-radius:18px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:18px 20px;display:grid;box-shadow:0 14px 34px -26px #08463380}.tp-next.is-live{background:linear-gradient(90deg,#fff5f3,#fff 55%);border-color:#f2b6b1 #f2b6b1 #f2b6b1 #d92d20}.tp-next-when{gap:3px;min-width:0;display:grid}.tp-next-label{color:#5f7468;letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:7px;font-size:12px;font-weight:800;display:inline-flex}.tp-next.is-live .tp-next-label{color:#b42318}.tp-next-when strong{letter-spacing:-.03em;font-family:Sora,sans-serif;font-size:20px}.tp-next-when small{color:#4d6358;font-size:14px}.tp-live-dot{background:#d92d20;border-radius:50%;width:9px;height:9px;animation:1.6s infinite tp-pulse;box-shadow:0 0 #d92d2080}@keyframes tp-pulse{70%{box-shadow:0 0 0 9px #d92d2000}to{box-shadow:0 0 #d92d2000}}@media (prefers-reduced-motion:reduce){.tp-live-dot{animation:none}}.tp-next-people{justify-items:center;padding:0 6px;display:grid}.tp-next-people strong{font-family:Sora,sans-serif;font-size:28px;line-height:1}.tp-next-people strong small{color:#6b7f74;font-size:15px}.tp-next-people span{color:#5f7468;font-size:12px;font-weight:700}.tp-join{border:1px solid var(--brand);border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 18px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.tp-join{border:1px solid color-mix(in srgb, var(--brand) 35%, white)}}.tp-join{background:var(--brand-pale);color:var(--brand-dark);white-space:nowrap;font-weight:800}.tp-join.is-ready{border-color:var(--brand-dark);background:var(--brand-dark);color:#fff}.tp-join.is-missing{color:#6b7f74;background:#fff;border-style:dashed;font-size:13px;font-weight:700}.tp-next-empty{color:#4d6358;grid-template-columns:auto 1fr;font-weight:650}.tp-next-empty svg{color:var(--brand)}.tp-stats{grid-template-columns:1fr 1fr;gap:10px;margin:0;display:grid}.tp-stats>div{border:1px solid var(--line);background:#fff;border-radius:16px;align-content:start;gap:2px;padding:14px 16px;display:grid}.tp-stats dt{color:#5f7468;letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:800}.tp-stats dd{margin:0;font-family:Sora,sans-serif;font-size:28px;font-weight:800;line-height:1.1}.tp-stats small{color:#6b7f74;font-size:12px}.tp-stats .is-alert{border-color:var(--sunshine)}@supports (color:color-mix(in lab, red, red)){.tp-stats .is-alert{border-color:color-mix(in srgb, var(--sunshine) 55%, white)}}.tp-stats .is-alert{background:#fffaf0}.tp-stats .is-alert dd{color:#8a5a00}.tp-stats .is-waiting dd{color:var(--indigo)}.tp-weekbar{flex-wrap:wrap;align-items:center;gap:10px 14px;margin:26px 0 16px;display:flex}.tp-weekbar .week-switcher span{padding:0 12px;font-size:14px;font-weight:750}.tp-weekbar-zone{margin-left:auto}.tp-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px;display:grid}.tp-timetable{gap:14px;min-width:0;display:grid}.tp-day{gap:10px;display:grid}.tp-day-head{letter-spacing:-.01em;align-items:baseline;gap:10px;margin:6px 0 0;font-size:15px;font-weight:800;display:flex}.tp-day-head em{background:var(--brand-dark);color:#fff;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 8px;font-size:11px;font-style:normal;font-weight:800}.tp-day-head small{color:#6b7f74;margin-left:auto;font-size:12px;font-weight:700}.tp-day.is-empty .tp-day-head{color:#6b7f74;border:1px dashed #d7e4dc;border-radius:12px;padding:10px 14px;font-weight:700}.tp-day.is-past:not(.is-empty) .tp-day-head span{color:#5f7468}.tp-class{--course:var(--brand);border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:100px minmax(0,1fr);display:grid;overflow:hidden;box-shadow:0 10px 26px -24px #08463380}.tp-class-time{border-right:1px solid var(--line);background:var(--course);align-content:start;gap:2px;padding:16px 12px;display:grid}@supports (color:color-mix(in lab, red, red)){.tp-class-time{background:color-mix(in srgb, var(--course) 9%, white)}}.tp-class-time{box-shadow:inset 4px 0 0 var(--course)}.tp-class-time strong{letter-spacing:-.02em;white-space:nowrap;font-family:Sora,sans-serif;font-size:16px}.tp-class-time small{color:#5f7468;font-size:12px;font-weight:700}.tp-class-main{gap:12px;min-width:0;padding:14px 16px;display:grid}.tp-class-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.tp-class-head h3{letter-spacing:-.01em;margin:0 0 6px;font-size:16px}.tp-class-meta{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.tp-chip{color:#34503f;background:#eef3f0;border-radius:999px;align-items:center;min-height:24px;padding:0 9px;font-size:12px;font-weight:800;display:inline-flex}.tp-chip.is-live{color:#b42318;background:#fde9e7}.tp-chip.is-done{color:#5f7468;background:#f0f2f1}.tp-chip.is-closed{color:#5f7468;background:#f0f2f1;text-decoration:line-through}.tp-chip.is-alert{color:#7a5200;background:#fff4cc}.tp-seats{color:#4d6358;align-items:center;gap:5px;font-size:13px;font-weight:750;display:inline-flex}.tp-meet{border:1px solid var(--brand);border-radius:11px;flex:none;align-items:center;gap:7px;min-height:38px;padding:0 14px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.tp-meet{border:1px solid color-mix(in srgb, var(--brand) 35%, white)}}.tp-meet{background:var(--brand-pale);color:var(--brand-dark);font-size:13px;font-weight:800}.tp-meet.is-live{color:#fff;background:#d92d20;border-color:#d92d20}.tp-people{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.tp-people li{border:1px solid var(--line);background:#fbfcfb;border-radius:999px;align-items:center;gap:6px;min-height:32px;padding:0 10px 0 4px;font-size:13px;font-weight:700;display:inline-flex}.tp-person-initial{background:var(--course);border-radius:50%;place-items:center;width:24px;height:24px;display:grid}@supports (color:color-mix(in lab, red, red)){.tp-person-initial{background:color-mix(in srgb, var(--course) 16%, white)}}.tp-person-initial{color:var(--brand-dark);font-size:11px;font-weight:800}.tp-people em{color:var(--indigo);background:#eef;border-radius:999px;padding:2px 6px;font-size:11px;font-style:normal;font-weight:800}.tp-people .tp-people-empty{color:#6b7f74;background:0 0;border-style:dashed;padding:0 12px;font-weight:650}.tp-class.is-done{background:#fcfdfc}.tp-class.is-done .tp-class-time{background:#f3f5f4;box-shadow:inset 4px 0 #b8c4bd}.tp-class.needs-register{border-color:var(--sunshine)}@supports (color:color-mix(in lab, red, red)){.tp-class.needs-register{border-color:color-mix(in srgb, var(--sunshine) 60%, white)}}.tp-class .attendance-sheet{margin:0}.tp-class .teacher-time-open{justify-self:start;min-height:36px;margin:0;padding:0 12px;font-size:13px}.tp-class .teacher-time-form{margin-top:0}.tp-class .teacher-time-waiting{background:#fff8db;border-radius:10px;margin:0;padding:8px 12px;font-size:13px}.tp-side{gap:16px;display:grid;position:sticky;top:88px}.tp-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:18px}.tp-card-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.tp-card-head h2{letter-spacing:-.03em;margin:4px 0 0;font-family:Sora,sans-serif;font-size:19px}.tp-card-head .primary-button{min-height:38px;padding:0 14px;font-size:13px}.tp-muted{color:#5f7468;margin:8px 0 0;font-size:13px;line-height:1.5}.tp-request-form{grid-template-columns:1fr 1fr;margin-top:14px}.tp-request-form .notice{margin:0}.tp-form-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.tp-request-form .tp-form-actions .primary-button{grid-column:auto}.tp-request-list{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.tp-request-list h3{margin:0 0 10px;font-size:14px}.tp-request-list ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.tp-request-list li{border:1px solid var(--line);border-radius:12px;gap:3px;padding:10px 12px;display:grid}.tp-request-list li.is-pending{border-color:var(--sunshine)}@supports (color:color-mix(in lab, red, red)){.tp-request-list li.is-pending{border-color:color-mix(in srgb, var(--sunshine) 55%, white)}}.tp-request-list li.is-pending{background:#fffcf2}.tp-request-list li .request-status{justify-self:start;font-size:11px}.tp-request-list strong{font-size:14px}.tp-request-list small{color:#4d6358;font-size:13px}.tp-request-note{font-style:italic}.tp-footer{color:#6b7f74;flex-wrap:wrap;justify-content:space-between;gap:8px;max-width:1280px;margin:0 auto;padding:0 24px 32px;font-size:12px;display:flex}@media (max-width:1100px){.tp-layout{grid-template-columns:1fr}.tp-side{position:static}}@media (max-width:860px){.tp-hero{grid-template-columns:1fr}.tp-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:640px){.tp-topbar{padding-left:16px;padding-right:16px}.tp-brand span,.tp-user-copy small,.tp-signout span{display:none}.tp-body{padding:18px 16px 48px}.tp-next{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:16px}.tp-join{grid-column:1/-1}.tp-stats{grid-template-columns:1fr 1fr}.tp-stats dd{font-size:24px}.tp-weekbar{margin-top:20px}.tp-weekbar-zone{width:100%;margin-left:0}.tp-class{grid-template-columns:1fr}.tp-class-time{border-right:0;border-bottom:1px solid var(--line);box-shadow:inset 0 4px 0 var(--course);grid-auto-flow:column;justify-content:start;align-items:baseline;gap:8px;padding:10px 14px}.tp-class-head{flex-wrap:wrap}.tp-request-form{grid-template-columns:1fr}.tp-footer{padding:0 16px 28px}}.ta{gap:22px;display:grid}.ta-summary{grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr);align-items:stretch;gap:16px;display:grid}.ta-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;display:grid}.ta-stats>div{border:1px solid var(--line);background:#fff;border-radius:16px;align-content:start;gap:2px;padding:16px;display:grid}.ta-stats dt{color:#5f7468;letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:800}.ta-stats dd{margin:0;font-family:Sora,sans-serif;font-size:30px;font-weight:800;line-height:1.1}.ta-stats small{color:#6b7f74;font-size:12px}.ta-stats .is-alert{border-color:var(--sunshine)}@supports (color:color-mix(in lab, red, red)){.ta-stats .is-alert{border-color:color-mix(in srgb, var(--sunshine) 55%, white)}}.ta-stats .is-alert{background:#fffaf0}.ta-stats .is-alert dd{color:#8a5a00}.ta-add{border:1px solid var(--line);background:#fff;border-radius:16px;align-content:start;gap:10px;padding:16px;display:grid}.ta-add>.primary-button{justify-self:start}.ta-add p{color:#5f7468;margin:0;font-size:13px;line-height:1.5}.ta-add-form{gap:10px;display:grid}.ta-add-form label{gap:6px;font-size:13px;font-weight:750;display:grid}.ta-add-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.ta-section{gap:12px;display:grid}.ta-section-head h2{letter-spacing:-.03em;margin:4px 0 0;font-family:Sora,sans-serif;font-size:21px}.ta-requests{grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:12px;display:grid}.ta-request{border:1px solid var(--sunshine);gap:12px;padding:16px;display:grid}@supports (color:color-mix(in lab, red, red)){.ta-request{border:1px solid color-mix(in srgb, var(--sunshine) 55%, white)}}.ta-request{background:#fffcf3;border-radius:16px}.ta-request header{align-items:center;gap:10px;display:flex}.ta-request header>div{flex:1;min-width:0}.ta-request header strong,.ta-request header small{display:block}.ta-request header small{color:#5f7468;font-size:12px}.ta-avatar.small{border-radius:10px;width:32px;height:32px;font-size:12px}.ta-kind{border-radius:999px;flex:none;padding:4px 9px;font-size:11px;font-weight:800}.ta-kind.is-add{color:#075139;background:#e6f6ee}.ta-kind.is-move{color:#39399a;background:#eef}.ta-request-times{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ta-request-times>svg{color:#6b7f74}.ta-time{border:1px solid var(--line);background:#fff;border-radius:12px;gap:1px;padding:9px 12px;display:grid}.ta-time small{color:#6b7f74;font-size:11px;font-weight:700}.ta-time b{font-size:14px}.ta-time.is-old b{color:#6b7f74;text-decoration:line-through}.ta-time.is-new{border-color:var(--brand)}@supports (color:color-mix(in lab, red, red)){.ta-time.is-new{border-color:color-mix(in srgb, var(--brand) 35%, white)}}.ta-request blockquote{color:#4d4a3a;border-left:3px solid #e0d3a3;margin:0;padding:8px 12px;font-size:14px;font-style:italic}.ta-request-actions{justify-content:flex-end;gap:8px;display:flex}.ta-request-actions .primary-button,.ta-request-actions .secondary-button{min-height:40px;padding:0 16px;font-size:14px}.ta-request-actions .secondary-button.danger{color:#a3372c;background:#fff;border-color:#f1c7c1}.ta-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:14px;display:grid}.ta-card{border:1px solid var(--line);background:#fff;border-radius:18px;align-content:start;gap:12px;padding:16px;display:grid;box-shadow:0 12px 30px -28px #0846338c}.ta-card-head{align-items:center;gap:12px;display:flex}.ta-card-who{flex:1;min-width:0}.ta-card-who h3{letter-spacing:-.01em;margin:0;font-size:16px}.ta-card-who small{color:#5f7468;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;display:block;overflow:hidden}.ta-badge{color:#7a5200;background:#fff4cc;border-radius:999px;flex:none;padding:4px 9px;font-size:11px;font-weight:800}.ta-load{border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid;overflow:hidden}.ta-load>div{text-align:center;padding:10px}.ta-load>div+div{border-left:1px solid var(--line)}.ta-load dt{color:#6b7f74;letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:800}.ta-load dd{margin:2px 0 0;font-family:Sora,sans-serif;font-size:20px;font-weight:800}.ta-load dd small{color:#6b7f74;font-size:12px}.ta-next{color:#4d6358;align-items:center;gap:6px;margin:0;font-size:13px;display:flex}.ta-next svg{color:var(--brand);flex:none}.ta-pin{background:#f4f8f5;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;display:flex}.ta-pin-label{color:#5f7468;letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:5px;font-size:12px;font-weight:800;display:inline-flex}.ta-pin code{border:1px solid var(--line);letter-spacing:.18em;background:#fff;border-radius:8px;padding:3px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:17px;font-weight:800}.ta-pin>small{color:#5f7468;font-size:13px}.ta-pin-actions{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.ta-icon-button{border:1px solid var(--line);min-height:34px;color:var(--brand-dark);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:6px;padding:0 10px;font-size:13px;font-weight:750;display:inline-flex}.ta-icon-button:hover{border-color:var(--brand)}.ta-card-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-top:10px;display:flex}.ta-card-foot .text-button{font-size:13px}.ta-logins{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ta-logins li{border:1px solid var(--line);background:#fbfcfb;border-radius:10px;gap:1px;padding:8px 10px;display:grid}.ta-logins strong{font-size:13px}.ta-logins small{color:#5f7468;font-size:12px}.ta-history{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ta-history li{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:12px;padding:10px 14px;display:flex}.ta-history li .request-status{flex:none;font-size:11px}.ta-history strong,.ta-history small{display:block}.ta-history small{color:#5f7468;font-size:13px}@media (max-width:1100px){.ta-summary{grid-template-columns:1fr}}@media (max-width:700px){.ta-stats{grid-template-columns:1fr 1fr}.ta-stats dd{font-size:26px}.ta-pin-actions{width:100%;margin-left:0}.ta-request-actions>*{flex:1;justify-content:center}}.ta-card-foot .danger-text{color:#a3372c}.dtf{width:100%;min-width:0;display:block;position:relative}.dtf-trigger{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:11px;justify-content:space-between;align-items:center;gap:10px;padding:0 13px;font-size:15px;font-weight:600;transition:border-color .15s,box-shadow .15s;display:flex}.dtf-trigger>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dtf-trigger>svg{color:var(--brand);flex:none}.dtf-trigger.is-empty>span{color:#7b8c82;font-weight:500}.dtf-trigger:hover:not(:disabled){border-color:var(--brand)}@supports (color:color-mix(in lab, red, red)){.dtf-trigger:hover:not(:disabled){border-color:color-mix(in srgb, var(--brand) 45%, var(--line))}}.dtf-trigger:focus-visible,.dtf-trigger[aria-expanded=true]{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand);outline:none}@supports (color:color-mix(in lab, red, red)){.dtf-trigger:focus-visible,.dtf-trigger[aria-expanded=true]{box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 18%, transparent)}}.dtf-trigger:disabled{color:#8a978f;cursor:not-allowed;background:#f3f5f4}.dtf-proxy{opacity:0;pointer-events:none;border:0;width:1px;height:1px;padding:0;position:absolute;bottom:0;left:12px}.dtf-panel{z-index:1000;color:var(--ink);background:#fff;border:1px solid #dbe6df;border-radius:16px;padding:12px;position:fixed;box-shadow:0 24px 60px -18px #08281a59,0 2px 6px #08281a0f}.dtf-backdrop{z-index:1000;background:#0818106b;align-items:flex-end;display:flex;position:fixed;inset:0}.dtf-panel.is-sheet{width:100%;max-height:88dvh;padding:14px 16px calc(16px + env(safe-area-inset-bottom));border-bottom:0;border-radius:22px 22px 0 0;position:relative;overflow:auto}.dtf-sheet-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.dtf-sheet-head strong{font-size:16px}.dtf-head{grid-template-columns:38px 1fr 38px;align-items:center;gap:4px;margin-bottom:8px;display:grid}.dtf-icon{width:38px;height:38px;color:var(--brand-dark);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;display:grid}.dtf-icon:hover:not(:disabled){background:#eef5f1}.dtf-icon:disabled{color:#c3cdc7;cursor:default}.dtf-title{min-height:38px;color:var(--ink);letter-spacing:-.02em;cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:6px;font-family:Sora,sans-serif;font-size:15px;font-weight:800;display:inline-flex}.dtf-title span{color:var(--brand);font-size:11px}.dtf-title:hover{background:#eef5f1}.dtf-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.dtf-weekday{color:#6b7f74;place-items:center;height:28px;font-size:12px;font-weight:800;display:grid}.dtf-day{aspect-ratio:1;min-height:36px;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;font-size:14px;font-weight:700;display:grid}.dtf-day:hover:not(:disabled){background:#eef5f1}.dtf-day.is-outside{color:#9aa8a0;font-weight:600}.dtf-day.is-today{box-shadow:inset 0 0 0 1.5px var(--brand);color:var(--brand-dark)}.dtf-day.is-selected,.dtf-day.is-selected:hover{background:var(--brand-dark);color:#fff;box-shadow:none}.dtf-day:disabled{color:#cfd8d2;cursor:not-allowed;font-weight:500}.dtf-day:focus-visible,.dtf-option:focus-visible,.dtf-months button:focus-visible,.dtf-panel button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.dtf-months{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:4px 0;display:grid}.dtf-months button{border:1px solid var(--line);min-height:52px;font:inherit;cursor:pointer;background:#fff;border-radius:12px;font-weight:750}.dtf-months button:hover:not(:disabled){border-color:var(--brand)}.dtf-months button.is-selected{border-color:var(--brand-dark);background:var(--brand-dark);color:#fff}.dtf-months button:disabled{color:#c3cdc7;cursor:not-allowed}.dtf-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;margin-top:10px;padding-top:10px;display:flex}.dtf-foot-right{align-items:center;gap:6px;display:inline-flex}.dtf-link{min-height:34px;color:var(--brand-dark);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:0 10px;font-size:14px;font-weight:800}.dtf-link:hover{background:#eef5f1}.dtf-done{background:var(--brand-dark);color:#fff;min-height:36px;font:inherit;cursor:pointer;border:0;border-radius:10px;padding:0 16px;font-size:14px;font-weight:800}.dtf-time-preview{text-align:center;letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:0 0 10px;font-family:Sora,sans-serif;font-size:24px;font-weight:800}.dtf-time{grid-template-columns:1fr 1fr .9fr;gap:6px;display:grid}.dtf-column{scrollbar-width:thin;overscroll-behavior:contain;align-content:start;gap:3px;max-height:210px;padding:2px;display:grid;position:relative;overflow-y:auto}.dtf-column.is-period{align-content:center}.dtf-option{min-height:38px;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:#f4f8f5;border:0;border-radius:10px;font-size:15px;font-weight:750}.dtf-option:hover{background:#e6f1eb}.dtf-option.is-selected{background:var(--brand-dark);color:#fff}.dtf-panel.is-sheet .dtf-day{min-height:42px;font-size:15px}.dtf-panel.is-sheet .dtf-column{max-height:46dvh}.dtf-panel.is-sheet .dtf-option{min-height:44px}.dtf.dtf.dtf{color:var(--ink);letter-spacing:normal;text-transform:none;margin:0;font-size:15px;font-weight:600;display:block}.dtf.dtf .dtf-trigger>.dtf-value{color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:normal;text-transform:none;margin:0;display:block}.dtf.dtf .dtf-trigger.is-empty>.dtf-value{color:#7b8c82;font-weight:500}.admin-app.admin-console{background:linear-gradient(90deg,#fffdfa 0 248px,#f4f8f5 248px)}.admin-app.admin-console .admin-rail{background:#fffdfa}.admin-app.admin-console .admin-workspace{max-width:1320px;padding:30px 32px 80px}.admin-app.admin-console .admin-pagehead{border-bottom:1px solid #dfe8e2;flex-wrap:wrap;align-items:flex-end;gap:14px 24px;margin:0 0 24px;padding-bottom:20px}.admin-app.admin-console .admin-pagehead h1{margin:0;font-size:clamp(28px,2.6vw,34px);line-height:1.1}.admin-app.admin-console .admin-header-sub{margin-top:6px;font-size:15px}.admin-app.admin-console .admin-header-tools{align-items:center;gap:10px}.admin-app.admin-console .admin-header-tools .timezone-control{width:auto}.admin-app.admin-console .admin-header-tools .timezone-chip{min-height:44px;box-shadow:none;border-radius:12px}.admin-app.admin-console .admin-header-tools .week-switcher{height:44px;box-shadow:none;background:#fff;border-radius:12px}.admin-app.admin-console .admin-header-tools .week-switcher button{width:42px;height:42px}.admin-app.admin-console .admin-header-tools .week-switcher span{text-align:center;white-space:nowrap;min-width:112px;padding:0 6px;font-size:14px;font-weight:750}.admin-app.admin-console .admin-workspace .panel{background:#fff;border:1px solid #e1e9e4;border-radius:18px;padding:22px;box-shadow:0 1px 2px #08281a0a,0 14px 34px -30px #08281a73}.admin-app.admin-console .admin-workspace .panel-head{align-items:flex-start;gap:12px 16px;margin-bottom:16px}.admin-app.admin-console .admin-workspace h2{letter-spacing:-.03em;font-size:21px;line-height:1.2}.admin-app.admin-console .admin-workspace .section-kicker{letter-spacing:.14em;font-size:11px}.admin-app.admin-console .admin-workspace .weekly-reset-note{font-size:13px;line-height:1.5}.admin-app.admin-console .admin-grid{gap:20px}.admin-app.admin-console .admin-workspace .stats-grid{gap:14px;margin-bottom:20px}.admin-app.admin-console .admin-workspace .stats-grid article{box-shadow:none;background:#fff;border-color:#e1e9e4;border-radius:16px;padding:18px}.admin-app.admin-console .admin-workspace .panel-head .secondary-button,.admin-app.admin-console .admin-workspace .panel-head .primary-button,.admin-app.admin-console .admin-workspace .history-pager-actions .secondary-button,.admin-app.admin-console .admin-workspace .history-pager-actions .primary-button{border-radius:11px;min-height:40px;padding:0 16px;font-size:14px}.admin-app.admin-console .admin-workspace .panel-head .button-with-icon svg{width:16px;height:16px}@media (max-width:700px){.admin-app.admin-console .teacher-filter-row{scrollbar-width:none;flex-wrap:nowrap;margin:0 -22px;padding:2px 22px 6px;overflow-x:auto}.admin-app.admin-console .teacher-filter-row::-webkit-scrollbar{display:none}.admin-app.admin-console .teacher-filter-row button{white-space:nowrap;flex:none}}.admin-app.admin-console .roster-booking-note{border-radius:999px;place-self:start;align-items:center;gap:6px;width:fit-content;max-width:100%;margin:0 0 10px;padding:4px 10px;font-size:12px;font-weight:700;line-height:1.3;display:inline-flex}@media (max-width:1000px){.admin-app.admin-console{background:#f4f8f5}.admin-app.admin-console .admin-workspace{padding:22px 20px 64px}}@media (max-width:700px){.admin-app.admin-console .admin-workspace{padding:18px 16px 56px}.admin-app.admin-console .admin-pagehead{margin-bottom:18px;padding-bottom:16px}.admin-app.admin-console .admin-pagehead h1{font-size:26px}.admin-app.admin-console .admin-header-sub{font-size:14px}.admin-app.admin-console .admin-header-tools{flex-wrap:nowrap;width:100%}.admin-app.admin-console .admin-header-tools .timezone-control{flex:auto;min-width:0}.admin-app.admin-console .admin-header-tools .timezone-chip{width:100%}.admin-app.admin-console .admin-header-tools .week-switcher{flex:none}.admin-app.admin-console .admin-header-tools .week-switcher span{min-width:92px;font-size:13px}.admin-app.admin-console .admin-workspace .panel{border-radius:16px;padding:18px 16px}.admin-app.admin-console .admin-workspace h2{font-size:19px}.admin-app.admin-console .teacher-filter-row{margin:0 -16px;padding:2px 16px 6px}}@media (min-width:1101px){.admin-app.admin-console .admin-slot-row{grid-template-columns:56px minmax(0,1fr) auto}.admin-app.admin-console .slot-controls{flex-wrap:nowrap;grid-column:auto;align-self:center;align-items:center}.admin-app.admin-console .slot-controls .capacity-control{align-items:center;gap:6px;min-width:0;display:inline-flex}.admin-app.admin-console .slot-controls .capacity-control span{margin:0;font-size:12px}.admin-app.admin-console .slot-controls .capacity-control input{width:64px;min-height:38px}}@media (max-width:700px){.admin-app.admin-console .admin-header-tools{flex-direction:row!important;align-items:center!important}.admin-app.admin-console .admin-header-tools .week-switcher,.admin-app.admin-console .admin-header-tools .timezone-control{width:auto!important}.admin-app.admin-console .admin-header-tools .week-switcher~.timezone-control .timezone-chip em{display:none}.admin-app.admin-console .admin-header-tools .timezone-control:has(~.week-switcher) .timezone-chip em{display:none}}.admin-app.admin-console .settings-stack,.admin-app.admin-console .ta,.admin-app.admin-console .attendance-admin{grid-template-columns:minmax(0,1fr)}.admin-app.admin-console .settings-stack>*,.admin-app.admin-console .ta>*,.admin-app.admin-console .attendance-admin>*,.admin-app.admin-console .settings-grid>*{min-width:0}.ta-card{grid-template-columns:minmax(0,1fr)}.ta-card>*{min-width:0}.ta-pin-actions{flex-wrap:wrap}.admin-app.admin-console :is(.filter-grid,.receipt-fields,.email-split,.course-editor,.add-date-time-grid,.split-fields,.add-panel,.customize-panel,.slot-time-editor) label>span:not([class]){letter-spacing:normal;font-size:12px}.admin-app.admin-console .selected-day-preview strong{font-size:13px}.admin-app.admin-console .selected-day-preview small{font-size:12px}.admin-app.admin-console .backup-columns article>span,.admin-app.admin-console .backup-stats dt{font-size:11px}.admin-app.admin-console .backup-history small,.admin-app.admin-console .ta-time small,.admin-app.admin-console .visitor-day{font-size:12px}.admin-app.admin-console .demo-tag{font-size:11px}.admin-app.admin-console .access-toggle{min-height:28px;padding:0 10px;font-size:12px}.admin-app.admin-console .backup-actions button{min-height:40px;font-size:13px}.admin-app.admin-console .backup-actions button span{font-size:inherit}.admin-app.admin-console :is(.teacher-chip,.teacher-filter-row button) b{width:20px;min-width:20px;height:20px;font-size:10px}@media (max-width:700px){.admin-app.admin-console .access-toggle{min-height:36px}.admin-app.admin-console .roster-card-actions .text-button,.admin-app.admin-console .email-snippet-frame .email-copy{min-height:38px;padding:0 12px}}@media (max-width:1280px){.admin-app.admin-console .database-protection-card{grid-template-columns:auto minmax(0,1fr)}.admin-app.admin-console .database-protection-card dl{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;display:grid}.admin-app.admin-console .database-protection-card dl div{min-width:0}}.admin-app.admin-console .database-protection-card dd{overflow-wrap:anywhere}@media (max-width:700px){.admin-app.admin-console .visitor-contacts a{align-items:center;min-height:34px;display:inline-flex}}@media (min-width:701px) and (max-width:1100px){.admin-app.admin-console .admin-pagehead{justify-content:space-between;flex-direction:row!important;align-items:flex-end!important}.admin-app.admin-console .admin-header-tools{justify-content:flex-end;width:auto;margin-left:auto}}@media (max-width:700px){.admin-app.admin-console .admin-pagehead{flex-direction:column!important;align-items:stretch!important}}.att-panel{--att-present:#0e7c5a;--att-late:#c98a04;--att-absent:#c2410c;--att-excused:#5b5bd6}.att-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.att-ranges,.att-filter{border:1px solid var(--line);background:#f6f9f7;border-radius:12px;flex-wrap:wrap;gap:4px;padding:4px;display:inline-flex}.att-ranges button,.att-filter button{color:#4d6358;min-height:34px;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:9px;padding:0 12px;font-size:13px;font-weight:750}.att-ranges button:hover,.att-filter button:hover{color:var(--brand-dark);background:#fff}.att-ranges button.active,.att-filter button.active{color:var(--brand-dark);background:#fff;box-shadow:0 1px 2px #08281a1f,0 0 0 1px #dfe8e2}.att-filter button{align-items:center;gap:7px;display:inline-flex}.att-filter button b{color:#34503f;font-variant-numeric:tabular-nums;background:#e6efe9;border-radius:999px;place-items:center;min-width:22px;height:20px;padding:0 6px;font-size:12px;display:inline-grid}.att-filter button.has-low b{color:#9a3412;background:#fde4d8}.att-course{flex:0 230px}.att-search{flex:200px}.att-course select,.att-search input{min-height:42px}.att-custom{grid-template-columns:repeat(2,minmax(0,220px));gap:10px;margin:0 0 10px;display:grid}.att-custom label>span{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:800;display:block}.att-subbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:4px 0 12px;display:flex}.att-sort{align-items:center;gap:8px;margin:0;display:inline-flex}.att-sort>span{color:var(--muted);margin:0;font-size:12px;font-weight:800}.att-sort select{width:auto;min-height:38px;padding:0 34px 0 12px;font-size:13px;font-weight:700}.att-legend{color:#4d6358;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0 0 12px;padding:0;font-size:12px;font-weight:700;list-style:none;display:flex}.att-legend li{align-items:center;gap:6px;display:inline-flex}.att-legend .att-legend-note{color:#6b7f74;font-weight:600}.att-swatch{border-radius:3px;width:14px;height:10px}.att-swatch.present,.att-seg.present{background:var(--att-present)}.att-swatch.late,.att-seg.late{background:var(--att-late)}.att-swatch.absent,.att-seg.absent{background:var(--att-absent)}.att-swatch.excused,.att-seg.excused{background:var(--att-excused)}.att-swatch.unmarked,.att-seg.unmarked{background:repeating-linear-gradient(135deg,#b9c5be 0 2px,#eef2ef 2px 5px)}.att-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.att-row{border:1px solid var(--line);border-left:4px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:minmax(170px,1.1fr) 116px minmax(220px,2.2fr) minmax(0,auto);align-items:center;gap:12px 18px;padding:12px 16px;display:grid}.att-row.is-low{border-left-color:var(--att-absent);background:linear-gradient(90deg,#fff7f3,#fff 40%)}.att-row.is-ok{border-left-color:var(--att-present)}.att-row.is-inactive{opacity:.65}.att-who{align-items:center;gap:12px;min-width:0;display:flex}.att-who .student-avatar{flex:none}.att-who-copy{min-width:0;display:grid}.att-who-copy strong{font-size:15px}.att-who-copy small{color:#5f7468;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.att-rate{justify-items:start;gap:3px;display:grid}.att-rate strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-family:Sora,sans-serif;font-size:22px;line-height:1}.att-state{color:#5f7468;white-space:nowrap;align-items:center;gap:4px;font-size:12px;font-weight:750;display:inline-flex}.att-state.is-low{color:#9a3412}.att-state.is-ok{color:#075139}.att-bar-cell{gap:6px;min-width:0;display:grid}.att-bar{background:#f1f4f2;border-radius:5px;gap:2px;height:10px;display:flex;overflow:hidden}.att-seg{flex-basis:0;min-width:4px;height:100%}.att-counts{color:#4d6358;font-size:12px;font-weight:650;line-height:1.4}.att-action{justify-content:flex-end;min-width:0;display:flex}@media (max-width:1100px){.att-row{grid-template-columns:minmax(0,1fr) auto}.att-bar-cell{grid-column:1/-1}.att-action{grid-column:1/-1;justify-content:flex-start}.att-rate{justify-items:end}}@media (max-width:700px){.att-toolbar{align-items:stretch}.att-ranges{scrollbar-width:none;flex-wrap:nowrap;width:100%;overflow-x:auto}.att-ranges button{flex:1 0 auto}.att-course,.att-search{flex:100%}.att-custom{grid-template-columns:1fr 1fr}.att-subbar{align-items:stretch}.att-filter{width:100%}.att-filter button{flex:auto;justify-content:center;padding:0 8px}.att-sort{width:100%}.att-sort select{flex:1}.att-row{padding:12px}.att-legend .att-legend-note{flex-basis:100%}}.att-row{grid-template-columns:minmax(170px,1.1fr) 116px minmax(220px,2.2fr) 112px}.att-action:empty{display:flex}.admin-app.admin-console .attendance-pending{gap:6px;display:grid}.admin-app.admin-console .attendance-pending article{border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px 16px;min-height:0;padding:10px 14px;display:grid}.admin-app.admin-console .attendance-pending article>span{flex-wrap:wrap;align-items:center;gap:4px 12px;min-width:0;display:flex}.admin-app.admin-console .attendance-pending article>span strong{font-size:14px}.admin-app.admin-console .attendance-pending article>span small{align-items:center;gap:6px;font-size:13px;display:inline-flex}.admin-app.admin-console .attendance-pending em{color:#7a5200;white-space:nowrap;background:#fff4cc;border-radius:999px;padding:3px 9px;font-size:12px;font-style:normal;font-weight:800}.att-more{margin-top:10px;font-size:14px}@media (max-width:1100px){.att-row{grid-template-columns:minmax(0,1fr) auto}.att-action:empty{display:none}}@media (max-width:700px){.att-ranges{grid-template-columns:1fr 1fr;display:grid;overflow:visible}.admin-app.admin-console .attendance-pending article{grid-template-columns:minmax(0,1fr) auto}.admin-app.admin-console .attendance-pending article>button{grid-column:1/-1;justify-self:start}}.hx-filters{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin:0 0 12px;display:grid}.hx-filters select{min-height:42px}.hx-summary{color:#4d6358;margin:0 0 14px;font-size:13px}.hx-summary b{color:var(--ink);font-variant-numeric:tabular-nums}.hx-days{gap:18px;display:grid}.hx-day h3{letter-spacing:-.01em;align-items:baseline;gap:10px;margin:0 0 8px;font-size:15px;display:flex}.hx-day h3 small{color:#6b7f74;font-size:12px;font-weight:700}.hx-day.is-today h3 span{background:var(--brand-dark);color:#fff;letter-spacing:.03em;text-transform:uppercase;border-radius:999px;padding:2px 9px;font-size:12px}.hx-day ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.hx-row{--course-color:var(--brand);border:1px solid var(--line);border-left:4px solid var(--course-color);background:#fff;border-radius:12px;grid-template-columns:82px minmax(180px,1.4fr) minmax(110px,.8fr) 116px minmax(90px,auto);align-items:center;gap:10px 16px;padding:10px 14px;display:grid}.hx-time{display:grid}.hx-time strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:14px}.hx-time small{color:#6b7f74;white-space:nowrap;font-size:12px}.hx-who{align-items:center;gap:10px;min-width:0;display:flex}.hx-who>span:last-child{min-width:0;display:grid}.hx-who strong{font-size:14px}.hx-who small{color:#5f7468;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:inline-flex;overflow:hidden}.hx-who .course-swatch{border-radius:50%;flex:none;width:8px;height:8px}.hx-teacher{min-width:0}.hx-mark{white-space:nowrap;border-radius:999px;justify-self:start;padding:3px 10px;font-size:12px;font-weight:800}.hx-mark.is-present{color:#075139;background:#e6f6ee}.hx-mark.is-late{color:#7a5200;background:#fff4cc}.hx-mark.is-absent{color:#9a3412;background:#fdecea}.hx-mark.is-excused{color:#39399a;background:#eef}.hx-mark.is-unmarked{color:#5f7468;background:#f0f2f1}.hx-mark.is-upcoming{color:#1f4f86;background:#e8f1fb}.hx-booked{color:#6b7f74;white-space:nowrap;justify-self:end;font-size:12px}.hx .history-pager{margin-top:16px}@media (max-width:900px){.hx-row{grid-template-columns:70px minmax(0,1fr) auto}.hx-teacher{grid-column:2}.hx-mark{grid-area:1/3}.hx-booked{grid-column:3;justify-self:end}}@media (max-width:700px){.hx-filters{grid-template-columns:1fr}.hx-row{padding:10px 12px}}.tp-notes{gap:8px;display:grid}.tp-note{background:#fbfcfb;border:1px solid #dfe8e2;border-radius:12px;gap:6px;padding:10px 12px;display:grid}.tp-note header{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.tp-note-cat{color:#075139;background:#eef5f1;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:800}.tp-note-about{color:#34503f;font-size:13px;font-weight:700}.tp-note-status{color:#5f7468;margin-left:auto;font-size:12px;font-weight:750}.tp-note-status.is-done{color:#075139}.tp-note p{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.5}.tp-note blockquote,.tp-notes-reply{border-left:3px solid var(--indigo);color:#2e2e72;background:#f4f4ff;border-radius:0 8px 8px 0;margin:0;padding:6px 10px;font-size:13px}.tp-note-actions{gap:12px;display:flex}.tp-note-actions .text-button{font-size:13px}.tp-note-open{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.tp-note-open small{color:#6b7f74;font-size:12px}.tp-note-add{border:1px dashed var(--brand);align-items:center;gap:7px;min-height:36px;padding:0 12px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.tp-note-add{border:1px dashed color-mix(in srgb, var(--brand) 45%, white)}}.tp-note-add{color:var(--brand-dark);font:inherit;cursor:pointer;background:#fff;border-radius:10px;font-size:13px;font-weight:800}.tp-note-add:hover{background:#eef5f1}.tp-note-form{background:#f6faf7;border:1px solid #dfe8e2;border-radius:12px;gap:10px;padding:12px;display:grid}.tp-note-form fieldset{border:0;margin:0;padding:0}.tp-note-form legend,.tp-note-form label>span{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:800}.tp-note-form label{display:grid;position:relative}.tp-note-cats{flex-wrap:wrap;gap:6px;display:flex}.tp-note-cats button{color:#34503f;min-height:34px;font:inherit;cursor:pointer;background:#fff;border:1px solid #dce6e0;border-radius:999px;padding:0 12px;font-size:13px;font-weight:750}.tp-note-cats button.active{border-color:var(--brand-dark);background:var(--brand-dark);color:#fff}.tp-note-hint{color:#6b7f74;margin-top:6px;font-size:12px;display:block}.tp-note-form textarea{resize:vertical;min-height:80px}.tp-note-count{color:#6b7f74;justify-self:end;margin-top:4px;font-size:12px}.tp-note-form-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.tp-note-form-actions .primary-button{min-height:40px;padding:0 16px;font-size:14px}.tp-note-error{color:#9a3412;font-size:13px;font-weight:700}.tp-notes-list{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.tp-notes-list li{border:1px solid var(--line);border-radius:12px;gap:4px;padding:10px 12px;display:grid}.tp-notes-list li .tp-note-cat{justify-self:start}.tp-notes-list strong{font-size:13px}.tp-notes-list small{color:#4d6358;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;display:-webkit-box;overflow:hidden}.tp-notes-list .tp-note-status{margin:0}.ta-notes-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px 16px;display:flex}.ta-notes-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ta-notes-tools select{width:auto;min-height:42px}.ta-notes{grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:12px;display:grid}.ta-note{border:1px solid var(--line);border-left:4px solid var(--indigo);background:#fff;border-radius:16px;align-content:start;gap:10px;padding:16px;display:grid}.ta-note.is-done{background:#fbfcfb;border-left-color:#b8c4bd}.ta-note header{align-items:center;gap:10px;display:flex}.ta-note header>div{flex:1;min-width:0}.ta-note header strong,.ta-note header small{display:block}.ta-note header small{color:#5f7468;font-size:12px}.ta-note-cat{color:#39399a;background:#eef;border-radius:999px;flex:none;padding:3px 10px;font-size:12px;font-weight:800}.ta-note.cat-timing .ta-note-cat{color:#075139;background:#e6f6ee}.ta-note.cat-concern .ta-note-cat,.ta-note.cat-attendance .ta-note-cat{color:#9a3412;background:#fdecea}.ta-note-about{color:#34503f;margin:0;font-size:13px}.ta-note-body{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.55}.ta-note-reply{border-left:3px solid var(--brand);color:#24493a;background:#f2f8f4;border-radius:0 10px 10px 0;margin:0;padding:8px 12px;font-size:13px}.ta-note-reply-form{gap:8px;display:grid}.ta-note-reply-form>div{justify-content:flex-end;align-items:center;gap:10px;display:flex}.ta-note-reply-form .primary-button{min-height:38px;padding:0 14px;font-size:13px}.ta-note .ta-note-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:10px;display:flex}.ta-note .ta-note-foot small{color:#6b7f74;font-size:12px}.ta-note .ta-note-foot>span{align-items:center;gap:12px;display:inline-flex}.ta-note .ta-note-foot .secondary-button{min-height:36px;padding:0 12px;font-size:13px}.ta-note .ta-note-foot .text-button{font-size:13px}.teacher-assign{flex-wrap:wrap;align-items:center;gap:6px 8px;margin:10px 0 2px;display:flex}.teacher-assign-label{color:var(--muted);margin-right:2px;font-size:12px;font-weight:800}.teacher-toggle{min-height:32px;font:inherit;cursor:pointer;border:1px dashed #c9d6ce;border-radius:999px;align-items:center;gap:6px;padding:0 10px 0 4px;font-size:13px;font-weight:750;display:inline-flex;color:#4d6358!important;background:#fff!important}.teacher-toggle b{color:#34503f;background:#e6efe9;border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.teacher-toggle.on{border-style:solid;border-color:currentColor}.teacher-toggle.on.teacher-sunanda{color:#084633!important;background:#d6f2e2!important}.teacher-toggle.on.teacher-soumya{color:#39399a!important;background:#eef!important}.teacher-toggle.on.teacher-other{color:#7a3b12!important;background:#fff0e4!important}.teacher-assign small{color:#6b7f74;font-size:12px}@media (max-width:700px){.teacher-toggle{min-height:36px}}.courses-panel .panel-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.new-course-form{border:1px solid var(--brand);grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:10px 12px;margin:0 0 14px;padding:14px;display:grid}@supports (color:color-mix(in lab, red, red)){.new-course-form{border:1px solid color-mix(in srgb, var(--brand) 30%, var(--line))}}.new-course-form{background:#f6faf7;border-radius:14px}.new-course-form label{gap:6px;margin:0;display:grid}.new-course-form .span-2{grid-column:span 2}.new-course-form .span-all{grid-column:1/-1}.course-colors{border:0;flex-wrap:wrap;grid-column:span 2;gap:6px;margin:0;padding:0;display:flex}.course-colors legend{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:800}.course-colors button{cursor:pointer;border:2px solid #fff;border-radius:50%;width:28px;height:28px;box-shadow:0 0 0 1px #d7e4dc}.course-colors button.active{box-shadow:0 0 0 2px var(--ink)}.new-course-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.course-editor-actions{align-items:center;gap:10px;display:inline-flex}.course-editor-actions .danger-text{font-size:13px}.course-editor.is-deleting{border-color:#f1c7c1}.course-delete{color:#5c2a1d;background:#fff5f3;border-radius:12px;grid-column:1/-1;gap:10px;padding:12px;font-size:13px;display:grid}.course-delete p{margin:0;line-height:1.5}.course-delete label{gap:6px;max-width:320px;display:grid}.danger-button{color:#fff;min-height:38px;font:inherit;cursor:pointer;background:#b42318;border:0;border-radius:10px;justify-self:start;padding:0 16px;font-size:14px;font-weight:800}.danger-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width:700px){.new-course-form{grid-template-columns:1fr 1fr}.new-course-form .span-2,.course-colors{grid-column:1/-1}}.teacher-toggle.on.teacher-sunanda b{color:#fff;background:#0e7c5a}.teacher-toggle.on.teacher-soumya b{color:#fff;background:#5b5bd6}.teacher-toggle.on.teacher-other b{color:#fff;background:#d97706}.course-editor-actions .danger-text{color:#a3372c}.ae{gap:16px;display:grid}.ae-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.ae-steps li{color:#607068;background:#fff;border:1px solid #e1ebe6;border-radius:14px;align-items:flex-start;gap:10px;min-width:0;padding:12px 14px;font-size:14px;font-weight:750;line-height:1.35;display:flex}.ae-steps li>b{color:#607068;background:#eef3f0;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:13px;display:grid}.ae-steps li>span{gap:2px;min-width:0;display:grid}.ae-steps li small{color:#607068;font-size:12px;font-weight:600}.ae-steps li.is-current{color:#14261c;border-color:#087a55;box-shadow:0 0 0 3px #087a551a}.ae-steps li.is-current>b{color:#fff;background:#087a55}.ae-steps li.is-done{color:#07513b;background:#f3faf6}.ae-steps li.is-done>b{color:#07513b;background:#d9efe3}.ae-layout{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.ae-form{gap:0;margin:0;padding:8px 22px;display:grid}.ae-group{padding:18px 0}.ae-group+.ae-group{border-top:1px solid #edf2ef}.ae-group-title{color:#14261c;letter-spacing:-.01em;align-items:center;gap:10px;margin:0 0 14px;font:800 16px/1.3 Sora,Manrope,sans-serif;display:flex}.ae-group-title>b{color:#07513b;background:#e7f3ec;border-radius:8px;place-items:center;width:24px;height:24px;font:800 12px Manrope,sans-serif;display:grid}.ae-group-body{gap:14px;display:grid}.ae-two{grid-template-columns:1fr 1fr;gap:12px;display:grid}.ae-field{gap:6px;min-width:0;display:grid}.ae-field input,.ae-field select{width:100%;min-width:0}.ae-field input[aria-invalid=true]{border-color:#c4655b;box-shadow:0 0 0 3px #c4655b1f}.ae .ae-hint{color:#607068;font-size:12.5px;font-weight:600;line-height:1.4}.ae .ae-hint.is-warn{color:#8b342c}.ae-toggle{background:#fbfcfb;border:1px solid #e1ebe6;border-radius:14px;gap:12px;padding:12px 14px;display:grid}.ae-toggle.is-on{background:#f3faf6;border-color:#bfe0cd}.ae-toggle-row{cursor:pointer;align-items:flex-start;gap:12px;margin:0;display:flex}.ae-toggle-row input{accent-color:#087a55;flex:none;width:20px;height:20px;min-height:20px;margin:1px 0 0}.ae-toggle-row>div{gap:2px;display:grid}.ae-toggle-row strong{color:#14261c;font-size:14.5px}.ae-toggle-row small{color:#607068;font-size:12.5px;line-height:1.4}.ae-sum{flex-wrap:wrap;gap:8px;margin:0;display:flex}.ae-sum>div{background:#f4f7f5;border-radius:12px;flex:1 1 0;min-width:96px;padding:10px 12px}.ae-sum dt{color:#607068;letter-spacing:.04em;text-transform:uppercase;font-size:11.5px;font-weight:800}.ae-sum dd{color:#14261c;letter-spacing:-.02em;margin:2px 0 0;font:800 18px/1.25 Sora,Manrope,sans-serif}.ae-sum dd small{color:#607068;letter-spacing:0;font:650 12px Manrope,sans-serif}.ae-sum .is-total{background:#084633}.ae-sum .is-total dt{color:#bfe0cd}.ae-sum .is-total dd{color:#fff}.ae-preview{gap:12px;min-width:0;display:grid}.ae-actions{background:#fff;border:1px solid #e1ebe6;border-radius:18px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:10px;padding:14px;display:grid;box-shadow:0 8px 24px -18px #0e241659}.ae .ae-actions .primary-button,.ae .ae-actions .secondary-button,.ae .ae-dock .primary-button,.ae .ae-handoff-actions .primary-button,.ae .ae-handoff-actions .secondary-button{white-space:nowrap;justify-content:center;align-items:center;gap:8px;min-height:48px;margin:0;padding:0 16px;text-decoration:none;display:inline-flex}.ae .ae-actions .primary-button:disabled,.ae .ae-actions .secondary-button:disabled{opacity:.45;cursor:default}.ae .ae-copy.is-copied{color:#07513b;background:#e8f6ee;border-color:#087a55}.ae-actions-note{color:#607068;overflow-wrap:anywhere;grid-column:1/-1;margin:0;font-size:13px;line-height:1.45}.ae-actions-note b{color:#14261c}.ae-toast{color:#07513b;background:#e8f6ee;border-radius:12px;margin:0;padding:10px 14px;font-size:13.5px;font-weight:750}.ae-toast.is-error{color:#8b342c;background:#fff0ed}.ae-handoff{color:#14261c;background:#f3faf6;border:1.5px solid #087a55;border-radius:18px;gap:10px;padding:16px;animation:.28s email-copy-pop;display:grid}.ae-handoff.is-warn{background:#fff8ea;border-color:#d9a441}.ae-handoff-head{align-items:center;gap:10px;display:flex}.ae-handoff-head strong{flex:1;font:800 16px/1.3 Sora,Manrope,sans-serif}.ae-handoff-icon{color:#fff;background:#087a55;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;display:grid}.ae-handoff.is-warn .ae-handoff-icon{background:#b7791f}.ae .ae-handoff-close{color:#607068;cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;width:36px;height:36px;min-height:36px;padding:0;display:grid}.ae .ae-handoff-close:hover{background:#0000000d}.ae-handoff p{margin:0;font-size:14px;line-height:1.5}.ae-handoff-steps{gap:6px;margin:0;padding-left:22px;font-size:14.5px;line-height:1.45;display:grid}.ae-handoff-steps li::marker{color:#087a55;font-weight:800}.ae-handoff-blocked{color:#8b342c;font-weight:750}.ae-handoff-actions{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.ae .ae-handoff-actions .primary-button,.ae .ae-handoff-actions .secondary-button{min-height:44px}.ae-link{color:#07513b;text-underline-offset:3px;font-size:13.5px;font-weight:750;text-decoration:underline}.ae-mail{color:#202124;background:#fff;border:1px solid #dfe6e2;border-radius:18px;overflow:hidden;box-shadow:0 1px 2px #0e24160a,0 12px 32px -22px #0e241659}.ae-mail-bar{color:#1f1f1f;background:#f2f6fc;justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;font-size:14px;font-weight:750;display:flex}.ae-mail-tag{color:#5f6368;font-size:12px;font-weight:650}.ae-mail-row{border-bottom:1px solid #eceff1;align-items:center;gap:12px;min-height:46px;padding:6px 16px;font-size:15px;display:flex}.ae-mail-key{color:#5f6368;flex:0 0 58px;font-size:14px}.ae-mail-to{overflow-wrap:anywhere;flex:1;min-width:0}.ae-mail-to.is-empty{color:#9aa0a6;font-style:italic}.ae-subject-text{overflow-wrap:anywhere;flex:1;min-width:0;line-height:1.45}.ae-mail-row .email-copy{min-height:34px;margin:0}.ae-mail-body{padding:20px 20px 8px}.ae-mail-body .email-letter{color:#202124;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.6}.ae-mail-body .email-letter p{margin:0 0 15px}.ae-mail-body .email-link{justify-items:start;gap:2px;display:grid}.ae-mail-body .email-link-label{color:#202124;letter-spacing:0;text-transform:none;font-size:15px;font-weight:700}.ae-mail-body .email-letter a{color:#087a55;overflow-wrap:anywhere}.ae-mail-body .email-letter a.email-cta{color:#fff;background:#087a55;border-radius:8px;margin:6px 0;padding:10px 20px;text-decoration:none;display:inline-block}.ae-mail-body .email-letter a.email-cta:hover{background:#07513b}.ae-mail-body .email-fees p{color:#202124;margin:0 0 4px;font-size:15px}.ae-mail-body .email-sign{border-top-color:#eceff1}.ae-mail-empty{color:#607068;text-align:center;justify-items:center;gap:8px;padding:48px 24px;display:grid}.ae-mail-empty strong{color:#14261c;font-family:Sora,sans-serif}.ae-mail-empty p{margin:0}.ae-dock{display:none}@media (min-width:1101px){.ae-actions{z-index:3;position:sticky;top:12px}}@media (max-width:1100px){.ae-layout{grid-template-columns:1fr}}@media (max-width:780px){.ae-steps li{padding:10px;font-size:13px}.ae-steps li small{display:none}.ae-form{padding:4px 16px}.ae-dock{z-index:5;padding:10px 16px calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;border-top:1px solid #e1ebe6;margin:0 -16px;display:block;position:sticky;bottom:0}.ae .ae-dock .primary-button{width:100%}}@media (max-width:560px){.ae-two{grid-template-columns:1fr}.ae-actions{grid-template-columns:1fr;padding:12px}.ae-steps{grid-template-columns:1fr;gap:6px}.ae-steps li{align-items:center;padding:8px 12px}.ae-steps li>b{width:24px;height:24px}.ae-mail-body{padding:16px 14px 6px}.ae-mail-row{padding:6px 12px}.ae-mail-key{flex-basis:52px}.ae-mail-tag{display:none}}@media (prefers-reduced-motion:reduce){.ae-handoff{animation:none}}.ae-stack{gap:14px;display:grid}@media (min-width:561px) and (max-width:1100px){.ae-stack{grid-template-columns:1fr 1fr;gap:12px}}@media (max-width:560px){.ae-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.ae-steps li{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;font-size:12.5px}}.ae-side{gap:16px;min-width:0;display:grid}.ae .ae-send.is-sent{color:#fff;background:#087a55;border-color:#087a55}.ae .ae-send[aria-busy=true]{cursor:progress;opacity:.8}.ae .ae-inline-link{color:#07513b;cursor:pointer;min-height:0;font:inherit;text-underline-offset:3px;background:0 0;border:0;margin:0;padding:0;font-weight:750;text-decoration:underline;display:inline}.ae .ae-inline-link:disabled{opacity:.5;cursor:default}.ae-sent{margin:0;padding:18px 20px}.ae-sent-title{color:#14261c;margin:0 0 10px;font:800 15px/1.3 Sora,Manrope,sans-serif}.ae-sent-list{margin:0;padding:0;list-style:none;display:grid}.ae-sent-list li{border-top:1px solid #edf2ef;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;padding:10px 0;display:grid}.ae-sent-list li:first-child{border-top:0;padding-top:2px}.ae-sent-icon{color:#07513b;background:#e7f3ec;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.ae-sent-list li.is-failed .ae-sent-icon{color:#8b342c;background:#fff0ed}.ae-sent-list li>div{gap:2px;min-width:0;display:grid}.ae-sent-list strong{color:#14261c;overflow-wrap:anywhere;font-size:14px}.ae-sent-list small{color:#607068;overflow-wrap:anywhere;font-size:12.5px;line-height:1.4}.ae-sent-list .ae-sent-error{color:#8b342c}.ae-sent-list time{color:#607068;white-space:nowrap;font-size:12.5px;font-weight:700}.ae-sent-empty{color:#607068;margin:0;font-size:13.5px;line-height:1.5}.ae-connect{margin:0;padding:0}.ae-connect summary{cursor:pointer;color:#07513b;align-items:center;gap:12px;padding:16px 20px;list-style:none;display:flex}.ae-connect summary::-webkit-details-marker{display:none}.ae-connect summary>span{gap:2px;font-size:14.5px;font-weight:800;display:grid}.ae-connect summary small{color:#607068;font-size:12.5px;font-weight:600}.ae-connect summary:after{content:"›";color:#607068;margin-left:auto;font-size:22px;line-height:1;transition:transform .2s}.ae-connect[open] summary:after{transform:rotate(90deg)}.ae-connect ol{color:#14261c;gap:8px;margin:0;padding:0 20px 0 42px;font-size:14px;line-height:1.5;display:grid}.ae-connect p{color:#607068;margin:12px 20px 18px;font-size:13px;line-height:1.5}.ae-connect a{color:#07513b;overflow-wrap:anywhere;font-weight:750}.ae-connect code{color:#07513b;background:#eef3f0;border-radius:6px;padding:1px 6px;font-size:12.5px}@media (max-width:560px){.ae-sent{padding:16px}.ae-connect summary{padding:14px 16px}.ae-connect ol{padding:0 16px 0 36px}.ae-connect p{margin:12px 16px 16px}}@media (max-width:1100px){.ae-side{display:contents}.ae-preview{order:2}.ae-sent,.ae-connect{order:3}}.ae-mail-body .email-letter .email-footer{color:#5f6368;border-top:1px solid #eceff1;margin-top:18px;padding-top:12px;font-size:13px}.ae-mail-body .email-letter a.email-cta{border:1px solid #06694a;border-radius:10px;margin:2px 0 6px;padding:13px 28px;line-height:1.25;box-shadow:0 1px 2px #06694a40}.ae-mail-body .email-link.is-cta{gap:6px}.ae-mail-body .email-cta-fallback{color:#5f6368;font-size:13.5px;line-height:1.5}.ae-mail-body .email-cta-fallback a{color:#087a55;font-weight:400}.ae-mail-body .email-letter a.email-cta{text-align:center;min-width:240px;box-shadow:none;border-radius:12px;margin:4px 0;padding:14px 26px;font-size:16px;line-height:1.3}.ae-mail-body .email-letter a.email-cta.is-secondary{color:#065c41;background:#e8f5ee;border-color:#087a55}.ae-mail-body .email-letter a.email-cta.is-secondary:hover{background:#d9efe3}.ae-mail-body .email-cta-fallback{font-size:13px}.ae-mail-body .email-letter .email-legal{color:#5f6368;margin:6px 0 0;font-size:13px}.ae-mail-body .email-letter .email-legal a{color:#5f6368}.ae-mail-body .email-letter .email-footer{margin-bottom:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
