/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-font-weight:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%}}}@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;--color-amber-50:oklch(98.7% .022 95.277);--color-amber-900:oklch(41.4% .112 45.904);--color-teal-500:oklch(70.4% .14 182.503);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-600:oklch(58.8% .158 241.966);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-900:oklch(20.8% .042 265.755);--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@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%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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{.td-card{border-radius:var(--radius-xl);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-slate-200);background-color:var(--color-white);padding:calc(var(--spacing) * 4);--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media(min-width:48rem){.td-card{padding:calc(var(--spacing) * 6)}}.td-label{margin-bottom:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--color-slate-700);display:block}.td-input{border-radius:var(--radius-lg);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-slate-300);width:100%;max-width:100%;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.td-input:focus{border-color:var(--color-sky-500);--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-ring-color:var(--color-sky-200);--tw-outline-style:none;outline-style:none}@media(min-width:48rem){.td-input{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}.td-btn-primary{border-radius:var(--radius-lg);--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops));--tw-gradient-from:var(--color-sky-600);--tw-gradient-to:var(--color-teal-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));width:100%;padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2.5);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--color-white);--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media(hover:hover){.td-btn-primary:hover{opacity:.95}}@media(min-width:40rem){.td-btn-primary{width:auto}}}@layer utilities{.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}.relative{position:relative}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mt-auto{margin-top:auto}.flex{display:flex}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.h-full{height:100%}.w-fit{width:fit-content}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:3.40282e38px}.bg-amber-50{background-color:var(--color-amber-50)}.bg-slate-100{background-color:var(--color-slate-100)}.px-2{padding-inline:calc(var(--spacing) * 2)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.text-center{text-align:center}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.break-words{overflow-wrap:break-word}.text-amber-900{color:var(--color-amber-900)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-900{color:var(--color-slate-900)}.capitalize{text-transform:capitalize}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}:root{--primary: #1d4ed8;--primary-dark: #1e3a8a;--primary-light: #3b82f6;--accent: #16a34a;--accent-dark: #15803d;--accent-warm: #f59e0b;--gradient: linear-gradient(135deg, #1e40af 0%, #2563eb 50%, #3b82f6 100%);--gradient-soft: linear-gradient(165deg, #f0f7ff 0%, #e8f2ff 42%, #f5f3ff 78%, #fafafa 100%);--text: #0f172a;--text-muted: #475569;--bg: #ffffff;--bg-soft: #f8fafc;--bg-muted: #eff6ff;--bg-dark: #0f172a;--border: #bfdbfe;--glass: rgba(255, 255, 255, .92);--shadow-sm: 0 1px 3px rgb(29 78 216 / .06);--shadow: 0 6px 24px rgb(29 78 216 / .1);--shadow-lg: 0 16px 40px rgb(29 78 216 / .14);--shadow-xl: 0 24px 50px rgb(15 23 42 / .1);--radius: 12px;--radius-lg: 20px;--radius-xl: 28px;--header-height: 76px;--font: "Plus Jakarta Sans", system-ui, sans-serif;--transition: .25s cubic-bezier(.4, 0, .2, 1);--muted: var(--text-muted);--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--bp-mobile-max: 639px;--bp-tablet-min: 640px;--bp-tablet-max: 1023px;--bp-desktop-min: 1024px;--dash-gap-sm: .75rem;--dash-gap-md: 1.25rem;--dash-gap-lg: 1.5rem;--dash-pad-sm: .75rem;--dash-pad-md: 1rem;--dash-pad-lg: 1.5rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}ul{list-style:none}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1.5rem}.section{padding:5rem 0}.section-header{text-align:center;max-width:640px;margin:0 auto 3rem}.section-badge{display:inline-block;padding:.35rem 1rem;background:#eff6ff;color:var(--primary-dark);font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;margin-bottom:1rem;border:1px solid var(--border)}.section-title{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;letter-spacing:-.03em;line-height:1.2;color:var(--primary-dark);margin-bottom:.75rem}.section-subtitle{color:var(--text-muted);font-size:1.05rem}.gradient-text{background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.6rem;font-size:.95rem;font-weight:600;border-radius:999px;border:2px solid transparent;cursor:pointer;transition:all var(--transition);font-family:inherit;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;border-color:transparent;box-shadow:0 4px 18px #1d4ed852}.btn-primary:hover{background:linear-gradient(135deg,#1e40af,#1d4ed8);transform:translateY(-2px);box-shadow:0 8px 26px #1d4ed861}.btn-outline{background:#fff;color:var(--primary);border-color:var(--border);box-shadow:var(--shadow-sm)}.btn-outline:hover{border-color:var(--primary-light);background:#eff6ff;transform:translateY(-2px)}.btn-ghost{background:#fff;color:var(--primary-dark);border:1.5px solid var(--border);box-shadow:var(--shadow-sm)}.btn-ghost:hover{background:#eff6ff;border-color:var(--primary-light)}.btn-whatsapp{background:#25d366;color:#fff;border-color:#20bd5a;box-shadow:0 4px 16px #25d36659}.btn-whatsapp:hover{background:#20bd5a;transform:translateY(-2px);box-shadow:0 8px 24px #25d36673;color:#fff}.btn-lg{padding:1rem 1.75rem;font-size:1rem}.btn-sm{padding:.5rem 1rem;font-size:.85rem}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none!important}.form-page{padding:2rem 0 5rem;background:var(--gradient-soft);min-height:calc(100vh - var(--header-height) - 120px)}.form-page--register{padding:.75rem 0 2.5rem;min-height:0}.form-card--stepper{padding:1.25rem 1.35rem 1.5rem}.form-subtitle--tight{margin:0 0 .85rem;font-size:.88rem;line-height:1.4}.form-card{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:2.5rem;max-width:720px;margin:0 auto;border:1px solid rgb(255 255 255 / .8)}.form-card h1{font-size:1.85rem;font-weight:800;letter-spacing:-.02em;color:var(--primary-dark);margin-bottom:.35rem}.form-card .form-subtitle{color:var(--text-muted);margin-bottom:1.75rem}.form-group{margin-bottom:1.35rem}.form-group label{display:block;font-weight:600;margin-bottom:.45rem;font-size:.9rem;color:var(--text)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.85rem 1.1rem;border:1.5px solid var(--border);border-radius:var(--radius);font-size:1rem;font-family:inherit;transition:all var(--transition);background:var(--bg-soft)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-light);background:#fff;box-shadow:0 0 0 4px #6366f11f}.form-group textarea{min-height:110px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.alert{padding:1rem 1.15rem;border-radius:var(--radius);margin-bottom:1.25rem;font-size:.9rem;font-weight:500}.alert-success{background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:#065f46;border:1px solid #6ee7b7}.alert-error{background:linear-gradient(135deg,#fef2f2,#fee2e2);color:#991b1b;border:1px solid #fca5a5}.breadcrumb-bar{background:var(--bg-soft);border-bottom:1px solid var(--border)}.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem .4rem;padding:.55rem 0;font-size:.85rem;color:var(--text-muted);line-height:1.35}.breadcrumb a{color:var(--primary);font-weight:600}.breadcrumb a:hover{text-decoration:underline}.breadcrumb__sep{opacity:.45;-webkit-user-select:none;user-select:none}.breadcrumb__current{color:var(--text);font-weight:600}.page-hero{position:relative;background:linear-gradient(135deg,#1e40af,#2563eb,#3b82f6);color:#fff;padding:3.5rem 0;text-align:center;overflow:hidden}.page-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.06'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.5}.page-hero .container{position:relative;z-index:1}.page-hero h1{font-size:clamp(1.75rem,4vw,2.75rem);font-weight:800;letter-spacing:-.03em}.page-hero p,.page-hero-lead{margin-top:.5rem;opacity:.9;font-size:1.05rem}.page-hero--demo{padding-bottom:2.5rem}.page-hero--demo .page-hero-lead{margin-bottom:1.75rem}.skeleton{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.animate-fade-up{animation:fadeUp .7s ease forwards}@media(max-width:768px){.container{padding-left:max(1rem,var(--safe-left));padding-right:max(1rem,var(--safe-right))}.form-row{grid-template-columns:1fr}.section{padding:3.5rem 0}.form-card{padding:1.25rem 1rem}input,select,textarea{font-size:16px}.btn,.btn-phone,.btn-track-booking{min-height:44px}}@media(max-width:480px){.page-hero h1{font-size:clamp(1.5rem,6vw,2rem)}}.header{position:sticky;top:0;z-index:1000;overflow:visible;background:var(--glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgb(226 232 240 / .8);height:var(--header-height)}.header-inner{display:flex;align-items:center;height:var(--header-height);gap:.65rem;min-width:0}.header-center{flex:1 1 0;min-width:0;display:flex;justify-content:center;padding:0 .25rem;overflow:hidden}.header-end{display:none;align-items:center;gap:.5rem;flex-shrink:0;margin-left:auto}.logo{display:flex;align-items:center;gap:.65rem;font-weight:800;font-size:1.4rem;letter-spacing:-.03em;color:var(--text);flex-shrink:0}.logo-icon{width:44px;height:44px;background:linear-gradient(145deg,#1d4ed8,#3b82f6);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.35rem;box-shadow:0 4px 14px #1d4ed847}.nav{display:flex;align-items:center;gap:.15rem;background:#eff6ff;padding:.3rem;border-radius:999px;border:1px solid var(--border);max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}.nav::-webkit-scrollbar{display:none}.nav a{font-weight:600;font-size:.82rem;color:var(--text-muted);padding:.45rem .7rem;border-radius:999px;transition:all var(--transition);white-space:nowrap;flex-shrink:0}.nav a:hover{color:var(--primary);background:#fff}.nav a.active{color:#fff;background:linear-gradient(135deg,#1d4ed8,#2563eb);box-shadow:0 2px 10px #1d4ed847}.header-actions{display:flex;align-items:center;gap:.5rem;flex:0 0 auto}.btn-phone--header-compact{display:none;padding:.5rem .65rem}.btn-phone--header-compact .btn-phone__num{display:none}.header-login-btn{white-space:nowrap;padding:.5rem .85rem;font-size:.8rem}.header-login-btn--teacher{border-color:var(--accent);color:var(--accent-dark)}.btn-track-booking{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1rem;font-size:.82rem;font-weight:600;color:#0d9488;background:linear-gradient(135deg,#f0fdfa,#ecfdf5);border:1.5px solid #99f6e4;border-radius:999px;white-space:nowrap;transition:all var(--transition);box-shadow:0 1px 4px #0d94881f}.btn-track-booking__icon{width:16px;height:16px;flex-shrink:0}.btn-track-booking:hover{color:#0f766e;background:#ccfbf1;border-color:#5eead4;box-shadow:0 4px 12px #0d948833}.btn-track-booking.active{color:#fff;background:linear-gradient(135deg,#14b8a6,#0d9488);border-color:transparent;box-shadow:0 4px 14px #0d948859}.btn-track-booking--drawer{width:100%;justify-content:center;padding:.85rem 1.25rem;margin-bottom:1rem;font-size:.95rem}.btn-phone{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem 1rem;font-size:.88rem;font-weight:700;color:var(--primary-dark);background:#fff;border:1.5px solid var(--border);border-radius:999px;transition:all var(--transition);white-space:nowrap;flex-shrink:0}.btn-phone__icon{font-size:1rem;line-height:1}.btn-phone:hover{border-color:var(--primary-light);background:#eff6ff;box-shadow:var(--shadow-sm)}.menu-toggle{display:none;width:44px;height:44px;background:var(--bg-muted);border:none;border-radius:12px;font-size:1.35rem;cursor:pointer;color:var(--text)}.mobile-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1001}.mobile-drawer{position:fixed;top:0;right:-320px;width:320px;max-width:90vw;height:100vh;background:#fff;z-index:1002;padding:1.5rem;transition:right .35s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-xl);overflow-y:auto}.mobile-drawer.open{right:0}.mobile-drawer-logins{display:flex;flex-direction:column;gap:.65rem;margin:1.25rem 0 .5rem}.mobile-drawer-logins .btn{width:100%;justify-content:center;min-height:44px}.mobile-drawer .nav,.mobile-drawer .mobile-drawer-nav{flex-direction:column;align-items:stretch;background:transparent;padding:0;margin:1rem 0 1.25rem;border-radius:0}.mobile-drawer .nav a,.mobile-drawer .mobile-drawer-nav a{border-radius:var(--radius);padding:.85rem 1rem;color:var(--text);font-weight:600;background:var(--bg-soft);margin-bottom:.35rem}.mobile-drawer .nav a.active,.mobile-drawer .mobile-drawer-nav a.active{color:#fff;background:var(--gradient)}.mobile-drawer .header-actions{flex-direction:column;width:100%}.mobile-drawer .header-actions .btn,.mobile-drawer .header-actions .btn-phone{width:100%;justify-content:center}.drawer-close{width:40px;height:40px;background:var(--bg-muted);border:none;border-radius:10px;font-size:1.25rem;cursor:pointer;color:var(--text)}.hero{position:relative;padding:4rem 0 5rem;overflow:hidden;background:var(--gradient-soft)}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.hero-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5}.hero-orb-1{width:420px;height:420px;background:#93c5fd;top:-18%;right:-8%;opacity:.45;animation:float 8s ease-in-out infinite}.hero-orb-2{width:360px;height:360px;background:#c4b5fd;bottom:-28%;left:-12%;opacity:.35;animation:float 10s ease-in-out infinite reverse}.hero-orb-3{width:220px;height:220px;background:#60a5fa;top:42%;left:32%;opacity:.2;animation:float 6s ease-in-out infinite}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:3.5rem;align-items:center}.hero-content{color:var(--text)}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem 1rem .45rem .65rem;background:#fff;border:1px solid #bfdbfe;border-radius:999px;font-size:.85rem;font-weight:600;margin-bottom:1.5rem;color:var(--primary-dark);box-shadow:var(--shadow-sm)}.hero-badge-dot{width:8px;height:8px;background:#34d399;border-radius:50%;box-shadow:0 0 12px #34d399;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.hero h1{font-size:clamp(2rem,5vw,3.25rem);font-weight:800;line-height:1.15;letter-spacing:-.04em;margin-bottom:1.25rem}.hero h1 .highlight{background:linear-gradient(135deg,#1d4ed8,#2563eb,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero .tagline{font-size:1.2rem;font-weight:700;color:var(--primary-dark);margin-bottom:1rem}.hero-desc{color:var(--text-muted);font-size:1.05rem;max-width:520px;margin-bottom:2rem;line-height:1.7}.hero-buttons{display:flex;flex-wrap:wrap;gap:.85rem;margin-bottom:2.5rem}.hero-btn-light{color:var(--primary-dark)!important;border-color:#93c5fd!important;background:#fff!important}.hero-btn-light:hover{background:#eff6ff!important;border-color:var(--primary-light)!important}.about-text-block .section-title{text-align:left}.about-text-block p{color:var(--text-muted);margin-bottom:1rem;line-height:1.75}.about-text-block a:not(.btn){color:var(--primary);font-weight:600}.about-text-block .btn-primary{color:#fff;margin-top:.75rem}.about-text-block .btn-primary:hover{color:#fff}.hero-stats{display:flex;flex-wrap:wrap;gap:1.5rem;padding-top:2rem;border-top:1px solid #bfdbfe}.hero-stat strong{display:block;font-size:1.75rem;font-weight:800;letter-spacing:-.02em;color:var(--primary-dark)}.hero-stat span{font-size:.85rem;color:var(--text-muted)}.hero-visual{position:relative}.hero-image-wrap{position:relative;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl);aspect-ratio:4/3}.hero-image-wrap img{width:100%;height:100%;object-fit:cover}.hero-image-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 50%,rgb(15 23 42 / .4) 100%)}.hero-float-card{position:absolute;background:#fff;border-radius:var(--radius-lg);padding:1rem 1.25rem;box-shadow:var(--shadow-xl);display:flex;align-items:center;gap:.75rem;animation:float 5s ease-in-out infinite}.hero-float-card-1{bottom:-12px;left:-20px;z-index:2}.hero-float-card-2{top:20px;right:-16px;z-index:2;animation-delay:1s}.hero-float-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.hero-float-icon.green{background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.hero-float-icon.purple{background:linear-gradient(135deg,#ede9fe,#ddd6fe)}.hero-float-card strong{display:block;font-size:.95rem;color:var(--text)}.hero-float-card span{font-size:.8rem;color:var(--text-muted)}.features-section{background:var(--bg-soft);position:relative}.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.feature-card{background:#fff;border-radius:var(--radius-xl);padding:2rem 1.5rem;text-align:center;border:1px solid var(--border);transition:all var(--transition);position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#1d4ed8,#3b82f6);transform:scaleX(0);transition:transform var(--transition)}.feature-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:transparent}.feature-card:hover:before{transform:scaleX(1)}.feature-icon{width:64px;height:64px;margin:0 auto 1.25rem;background:var(--gradient-soft);border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:1.75rem}.feature-card h3{font-size:1.15rem;font-weight:700;color:var(--text);margin-bottom:.5rem}.feature-card p{font-size:.9rem;color:var(--text-muted);line-height:1.6}.cta-strip{background:linear-gradient(135deg,#1e40af,#2563eb 55%,#3b82f6);padding:3.5rem 0;position:relative;overflow:hidden}.cta-strip:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M0 0h20v20H0V0zm20 20h20v20H20V20z'/%3E%3C/g%3E%3C/svg%3E")}.cta-strip-inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;color:#fff}.cta-strip h2{font-size:clamp(1.5rem,3vw,2rem);font-weight:800;letter-spacing:-.02em}.cta-strip p{opacity:.9;margin-top:.35rem}.cta-strip-actions{display:flex;gap:.85rem;flex-wrap:wrap}.teachers-page{background:var(--gradient-soft)}.teachers-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:2rem}.teachers-count{font-weight:700;color:var(--text);font-size:1.1rem}.info-banner{background:#fff;border:1px solid #c7d2fe;border-left:4px solid var(--primary);border-radius:var(--radius-lg);padding:1.15rem 1.35rem;margin-bottom:2rem;color:var(--text);font-size:.95rem;box-shadow:var(--shadow-sm);display:flex;align-items:flex-start;gap:.75rem}.info-banner:before{content:"ℹ️";flex-shrink:0}.paid-banner{border-left-color:var(--accent-warm);background:linear-gradient(135deg,#fffbeb,#fef3c7)}.demo-page-login-hint{margin-top:1rem;font-size:.95rem;opacity:.95}.demo-page-login-hint a{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px}.demo-track-panel{display:flex;align-items:center;gap:1.25rem;max-width:820px;margin:0 auto;padding:1.15rem 1.35rem;text-align:left;background:#fffffff7;border:1px solid rgb(255 255 255 / .5);border-radius:var(--radius-lg);box-shadow:0 12px 40px #0f172a2e;color:var(--text)}.demo-track-panel__icon{flex-shrink:0;width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ccfbf1,#99f6e4);border-radius:14px;color:#0f766e}.demo-track-panel__icon svg{width:26px;height:26px}.demo-track-panel__body{flex:1;min-width:0}.demo-track-panel__title{margin:0;font-size:1.05rem;font-weight:700;color:var(--text);letter-spacing:-.02em}.demo-track-panel__desc{margin:.35rem 0 0;font-size:.88rem;color:var(--text-muted);line-height:1.5}.demo-track-panel__btn{flex-shrink:0;display:inline-flex;align-items:center;gap:.35rem;padding:.7rem 1.25rem;font-size:.9rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#14b8a6,#0d9488);border-radius:999px;white-space:nowrap;box-shadow:0 4px 16px #0d948866;transition:transform var(--transition),box-shadow var(--transition)}.demo-track-panel__btn:hover{color:#fff;transform:translateY(-2px);box-shadow:0 8px 24px #0d948873}@media(max-width:720px){.demo-track-panel{flex-direction:column;align-items:stretch;text-align:center;padding:1.25rem}.demo-track-panel__icon{margin:0 auto}.demo-track-panel__btn{justify-content:center;width:100%}}.text-center{text-align:center;color:var(--text-muted);padding:3rem}.loading-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.loading-card{height:380px}.teachers-grid,.demo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.75rem}.teacher-card{position:relative;background:#fff;border-radius:var(--radius-xl);overflow:hidden;border:1px solid #e0e7ff;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);display:flex;flex-direction:column;box-shadow:0 8px 28px #2563eb14}.teacher-card--public:hover{transform:translateY(-8px);box-shadow:0 22px 48px #0ea5e92e;border-color:#93c5fd}.teacher-card-top{position:relative;flex-shrink:0}.teacher-card-header{position:relative;height:108px;background:linear-gradient(125deg,#4f46e5,#2563eb 38%,#0ea5e9 72%,#14b8a6)}.teacher-card-header:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.1'%3E%3Ccircle cx='3' cy='3' r='3'/%3E%3C/g%3E%3C/svg%3E")}.teacher-avatar{position:absolute;bottom:-34px;left:1.35rem;width:76px;height:76px;border-radius:22px;background:linear-gradient(145deg,#fff,#f0f9ff);color:#1d4ed8;display:flex;align-items:center;justify-content:center;font-size:1.35rem;font-weight:800;letter-spacing:.04em;border:4px solid #fff;box-shadow:0 10px 24px #0f172a26;z-index:2}.teacher-card-body{padding:2.85rem 1.35rem 1.35rem;flex:1;display:flex;flex-direction:column;gap:.65rem;background:linear-gradient(180deg,#fff,#f8fafc)}.teacher-card-intro h3{font-size:1.28rem;font-weight:800;letter-spacing:-.02em;color:#0f172a;margin:0;line-height:1.25}.teacher-card-qual{margin:.2rem 0 0;font-size:.88rem;font-weight:600;color:#475569}.teacher-meta-row,.teacher-boards{display:flex;flex-wrap:wrap;gap:.45rem}.teacher-pill{font-size:.72rem;font-weight:700;padding:.3rem .7rem;border-radius:999px;line-height:1.2}.teacher-pill--exp{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:1px solid #fcd34d}.teacher-pill--class{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;border:1px solid #93c5fd}.teacher-pill--board{background:linear-gradient(135deg,#ede9fe,#ddd6fe);color:#5b21b6;border:1px solid #c4b5fd}.teacher-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.teacher-badge{font-size:.75rem;font-weight:600;padding:.25rem .65rem;border-radius:999px;background:#eef2ff;color:var(--primary)}.teacher-badge.exp{background:#fef3c7;color:#b45309}.teacher-area{display:flex;align-items:flex-start;gap:.45rem;color:#475569;font-size:.9rem;margin:.15rem 0 0}.teacher-area svg{flex-shrink:0;margin-top:.1rem;color:#ef4444}.teacher-subjects{margin:0}.tag-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.tag{background:linear-gradient(135deg,#e0f2fe,#dbeafe);color:#1e3a8a;padding:.32rem .75rem;border-radius:999px;font-size:.78rem;font-weight:700;border:1px solid #bae6fd}.tag--more{background:#f1f5f9;color:#64748b;border-color:#e2e8f0}.teacher-bio{font-size:.9rem;color:#64748b;margin:0;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.availability-block{background:var(--bg-soft);padding:1rem;border-radius:var(--radius);margin-bottom:1rem;font-size:.85rem;border:1px dashed var(--border)}.availability-block strong{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.5rem}.avail-chips{display:flex;flex-wrap:wrap;gap:.35rem}.avail-chip{background:#fff;border:1px solid var(--border);padding:.25rem .55rem;border-radius:6px;font-size:.75rem;color:var(--text)}.no-direct-contact{font-size:.8rem;color:#92400e;background:linear-gradient(135deg,#fffbeb,#fef3c7);padding:.55rem .8rem;border-radius:10px;margin:.25rem 0 0;display:flex;align-items:center;gap:.45rem;border:1px solid #fde68a}.teacher-card .btn-primary,.teacher-card-cta{margin-top:auto;width:100%;padding:.85rem 1rem;font-size:.95rem;font-weight:700;border-radius:14px;box-shadow:0 8px 20px #2563eb47}.teacher-card-cta:hover{box-shadow:0 12px 28px #0ea5e959}.suggested-teacher-demos{background:var(--bg-soft);border:1px dashed var(--border);border-radius:var(--radius);padding:.75rem;margin-bottom:.85rem}.suggested-teacher-demos__label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.5rem}.suggested-teacher-demos__btn{display:block;width:100%;margin-top:.35rem;text-align:center}.demo-card{position:relative;background:#fff;border-radius:var(--radius-xl);overflow:hidden;border:1px solid #e0e7ff;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);display:flex;flex-direction:column;box-shadow:0 8px 28px #2563eb12}.demo-card:hover{transform:translateY(-6px);box-shadow:0 20px 44px #0ea5e924;border-color:#93c5fd}.demo-card--offline .demo-card-top{background:linear-gradient(125deg,#fef3c7,#fde68a 55%,#fcd34d)}.demo-card--preview .demo-card-top{background:linear-gradient(125deg,#e0e7ff,#c7d2fe 55%,#a5b4fc)}.demo-card-top{padding:.75rem 1.15rem;position:relative}.demo-card-badge{display:inline-flex;align-items:center;gap:.4rem;background:#fff;font-size:.78rem;font-weight:800;padding:.4rem .9rem;border-radius:999px;box-shadow:0 4px 14px #0f172a1a;letter-spacing:.02em}.demo-card-badge--offline{color:#92400e}.demo-card-badge--preview{color:#3730a3}.paid-label{display:inline-flex;align-items:center;gap:.35rem;background:#fff;color:#b45309;font-size:.75rem;font-weight:800;padding:.35rem .85rem;border-radius:999px;box-shadow:var(--shadow-sm)}.demo-card-body{padding:1.1rem 1.15rem 1rem;flex:1;display:flex;flex-direction:column;gap:.65rem;background:#fff}.demo-card-head h3{font-size:1.05rem;font-weight:800;margin:0 0 .25rem;letter-spacing:-.02em;color:#0f172a;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.demo-subject{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;color:#2563eb;font-weight:600;font-size:.85rem;margin:0}.demo-subject__dot{color:#94a3b8;font-weight:400}.demo-subject__time{display:inline-flex;align-items:center;gap:.25rem}.demo-preview-note{margin:0;font-size:.82rem;font-weight:600;color:#4338ca;background:#eef2ff;padding:.45rem .65rem;border-radius:8px;border:1px solid #c7d2fe}.demo-desc{font-size:.84rem;color:#64748b;margin:0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.demo-teacher-box{display:flex;align-items:center;gap:.65rem;padding:.55rem .7rem;background:#f8fafc;border-radius:10px;border:1px solid #e2e8f0}.demo-teacher-box__text{display:flex;flex-direction:column;gap:.2rem;min-width:0}.demo-teacher-box__text strong{font-size:.95rem;color:#0f172a}.demo-teacher-box__text span{font-size:.82rem;color:#64748b;line-height:1.4}.demo-packages--compact{margin:0}.demo-packages__row{display:flex;flex-wrap:nowrap;gap:.4rem;width:100%}.demo-package-chip{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;gap:.3rem;padding:.4rem .25rem;border-radius:8px;background:#f1f5f9;border:1px solid #e2e8f0}.demo-package-chip__label{font-size:.7rem;font-weight:700;color:#64748b;text-transform:uppercase}.demo-package-chip__price{font-size:.82rem;font-weight:800;color:#1d4ed8;white-space:nowrap}.demo-packages__note{margin:.35rem 0 0;font-size:.7rem;color:#94a3b8;text-align:center;line-height:1.3}.demo-free-tag{display:inline-flex;align-items:center;gap:.45rem;margin:0;font-size:.9rem;font-weight:700;color:#059669;background:linear-gradient(135deg,#ecfdf5,#d1fae5);padding:.55rem .85rem;border-radius:10px;border:1px solid #6ee7b7}.demo-duration--accent{font-weight:600;color:var(--accent)}.portal-back-bar{display:inline-flex;align-items:center;margin-bottom:1rem;padding:.45rem .85rem;font-size:.9rem;font-weight:600;color:var(--primary);background:#fff;border:1px solid var(--border);border-radius:999px;cursor:pointer;text-decoration:none;transition:background var(--transition),border-color var(--transition)}.portal-back-bar:hover{background:var(--bg-soft);border-color:var(--primary);color:var(--primary-dark)}.demo-grid--portal,.portal-main--student .demo-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.portal-main--student .demo-card{min-width:0;height:100%}.portal-main--student .demo-footer__btn{min-width:0}.book-demo-modal--portal{max-width:100%;margin:0;box-shadow:var(--shadow-md)}.portal-book-demo{max-width:100%;min-width:0}.demo-teacher-avatar{width:36px;height:36px;border-radius:10px;background:linear-gradient(145deg,#4f46e5,#2563eb);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.85rem;flex-shrink:0}.demo-footer{display:flex;flex-direction:column;gap:0;padding-top:.5rem;border-top:1px solid #f1f5f9;margin-top:.15rem}.demo-footer__pricing{display:flex;flex-direction:column;gap:.2rem;min-width:0}.demo-footer__btn{width:100%;text-align:center;padding:.7rem 1rem;font-size:.9rem;font-weight:700;border-radius:10px}.demo-book-btn{background:#1e293b;color:#fff;border:2px solid #1e293b;box-shadow:0 4px 14px #0f172a38;letter-spacing:.02em}.demo-book-btn:hover{background:#334155;border-color:#334155;color:#fff;transform:translateY(-1px);box-shadow:0 6px 18px #0f172a47}.demo-book-btn:active{transform:translateY(0);box-shadow:0 2px 8px #0f172a33}.demo-card--offline .demo-footer__btn.demo-book-btn:focus-visible{outline:2px solid #94a3b8;outline-offset:2px}.demo-price{display:block;font-size:1.15rem;font-weight:800;line-height:1.3;color:var(--primary-dark);background:none;-webkit-text-fill-color:unset}.demo-duration{display:block;font-size:.8rem;color:var(--text-muted)}.footer{background:linear-gradient(180deg,#0f172a,#1e293b);color:#94a3b8;padding:4rem 0 0}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:2.5rem;padding-bottom:2.5rem}.footer .logo{color:#fff;margin-bottom:1.25rem}.footer-about{font-size:.95rem;line-height:1.75;margin-bottom:1.25rem;max-width:320px}.footer-contact p{font-size:.9rem;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.footer h4{color:#fff;font-size:1rem;font-weight:700;margin-bottom:1.25rem}.footer-links{list-style:none;margin:0;padding:0}.footer-links li{margin:0;padding:0}.footer-links a{display:block;padding:.2rem 0;line-height:1.35;transition:color var(--transition)}.footer-links a:hover{color:#fff}.social-icons{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.social-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;transition:transform var(--transition),box-shadow var(--transition),filter var(--transition);box-shadow:0 2px 10px #0003}.social-icon__glyph,.social-icon svg{width:17px;height:17px;flex-shrink:0}.social-icons--footer .social-icon{width:32px;height:32px;border-radius:8px;box-shadow:0 2px 6px #0000002e}.social-icons--footer .social-icon__glyph,.social-icons--footer .social-icon svg{width:16px!important;height:16px!important}.social-icon:hover{transform:translateY(-1px) scale(1.03);filter:brightness(1.06);box-shadow:0 4px 12px #0000003d}.social-icon--facebook{background:linear-gradient(145deg,#1877f2,#0d65d9)}.social-icon--instagram{background:linear-gradient(145deg,#f58529,#dd2a7b 45%,#8134af 75%,#515bd4)}.social-icon--youtube{background:linear-gradient(145deg,red,#c00)}.social-icon--whatsapp{background:linear-gradient(145deg,#25d366,#128c7e)}.social-icons--contact .social-icon{width:36px;height:36px;border-radius:9px}.social-icons--contact .social-icon__glyph,.social-icons--contact .social-icon svg{width:17px!important;height:17px!important}.footer-bottom{border-top:1px solid rgb(255 255 255 / .08);padding:1.5rem 0;text-align:center;font-size:.88rem}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;margin-bottom:3rem}.about-image{border-radius:var(--radius-xl);overflow:hidden;aspect-ratio:16/10;box-shadow:var(--shadow-lg)}.about-image img{width:100%;height:100%;object-fit:cover}.mvv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:3rem}.mvv-card{background:#fff;border-radius:var(--radius-xl);padding:2rem 1.5rem;text-align:center;border:1px solid var(--border);transition:all var(--transition)}.mvv-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.mvv-card .icon{width:56px;height:56px;margin:0 auto 1rem;background:var(--gradient-soft);border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.mvv-card h3{font-weight:700;margin-bottom:.5rem}.stats-bar{background:var(--gradient);padding:3rem 0;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;text-align:center;color:#fff}.stat-item strong{display:block;font-size:2.25rem;font-weight:800}.stat-item span{font-size:.9rem;opacity:.9}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.contact-info-card,.contact-form-card{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow);padding:2rem;border:1px solid var(--border)}.contact-info-card h2,.contact-form-card h2{font-weight:800;margin-bottom:1.5rem;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.contact-detail{display:flex;gap:1rem;margin-bottom:1.25rem}.contact-detail .icon{width:48px;height:48px;background:var(--gradient-soft);border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.map-container{border-radius:var(--radius-xl);overflow:hidden;margin-top:2rem;height:380px;box-shadow:var(--shadow)}.map-container iframe{width:100%;height:100%;border:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-card-wide{max-width:560px}.modal-card{background:#fff;border-radius:var(--radius-xl);padding:2rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:var(--shadow-xl);animation:fadeUp .3s ease}.modal-close{position:absolute;top:1rem;right:1rem;width:36px;height:36px;background:var(--bg-muted);border:none;border-radius:10px;font-size:1.1rem;cursor:pointer;transition:background var(--transition)}.modal-close:hover{background:var(--border)}.modal-card h3{font-weight:800;font-size:1.35rem;margin-bottom:.5rem;padding-right:2.5rem;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.modal-note{font-size:.9rem;color:var(--text-muted);margin-bottom:1.25rem;line-height:1.6}.paid-badge{background:linear-gradient(135deg,#fffbeb,#fef3c7);padding:.75rem 1rem;border-radius:var(--radius);color:#92400e;font-weight:500;border:1px solid #fcd34d}.checkbox-label{display:flex;align-items:flex-start;gap:.65rem;font-size:.9rem;margin-top:.75rem;cursor:pointer}.form-card-wide{max-width:840px}.reg-stepper__meta{margin-bottom:.75rem}.reg-stepper__count{display:block;font-size:.78rem;font-weight:700;color:var(--primary);margin-bottom:.35rem;text-transform:uppercase;letter-spacing:.04em}.reg-stepper__bar{height:6px;background:#e0e7ff;border-radius:999px;overflow:hidden}.reg-stepper__bar-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-light));border-radius:999px;transition:width .25s ease}.reg-stepper__head{margin-bottom:.85rem}.reg-stepper__title{font-size:1.15rem;font-weight:800;color:var(--text);margin:0 0 .25rem}.reg-stepper__subtitle{margin:0;font-size:.92rem;color:var(--text-muted);line-height:1.45}.reg-stepper__body .form-group{margin-bottom:.9rem}.reg-stepper__body .form-group:last-child{margin-bottom:0}.reg-stepper__nav{display:flex;align-items:stretch;gap:.75rem;margin-top:1.1rem;padding-top:.85rem;border-top:1px solid var(--border)}.reg-stepper__back-spacer{flex:0 0 88px}.reg-stepper__back{flex:0 0 auto;min-width:88px;min-height:48px}.reg-stepper__next{flex:1;min-height:48px;margin:0}.reg-review__intro{margin:0 0 1rem;font-size:.9rem;color:var(--text-muted)}.reg-review__list{margin:0;padding:0}.reg-review__row{display:grid;grid-template-columns:minmax(0,38%) minmax(0,1fr);gap:.5rem 1rem;padding:.75rem 0;border-bottom:1px solid var(--border);font-size:.9rem}.reg-review__row:last-child{border-bottom:none}.reg-review__row dt{margin:0;font-weight:600;color:var(--text-muted)}.reg-review__row dd{margin:0;font-weight:600;color:var(--text);word-break:break-word}.reg-success{text-align:center;padding:1.5rem .5rem .5rem}.reg-success__icon{font-size:3rem;line-height:1;margin-bottom:.75rem}.reg-success h2{margin:0 0 .5rem;font-size:1.35rem}.reg-success p{margin:0 0 1.25rem;color:var(--text-muted);font-size:.95rem;line-height:1.5}.reg-success .btn{min-height:48px}@media(max-width:520px){.reg-review__row{grid-template-columns:1fr;gap:.2rem}.reg-stepper__nav{flex-direction:column-reverse}.reg-stepper__back-spacer{display:none}.reg-stepper__back{width:100%;min-width:0}}.form-hint{font-size:.85rem;color:var(--text-muted);margin-bottom:.5rem}.subject-picker__select{width:100%;min-height:44px}.subject-picker__other{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.65rem;align-items:stretch}.subject-picker__other input{flex:1 1 160px;min-width:0;min-height:44px;padding:.65rem .85rem;border:1.5px solid var(--border);border-radius:var(--radius);font-size:16px}.subject-picker__other .btn{flex-shrink:0;min-height:44px}.subject-picker__tags{list-style:none;margin:.75rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.subject-picker__tags li{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .5rem .35rem .75rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;font-size:.82rem;font-weight:600;color:var(--primary-dark);max-width:100%}.subject-picker__tags li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subject-picker__tags li button{border:none;background:transparent;color:var(--text-muted);font-size:1.1rem;line-height:1;cursor:pointer;padding:0 .15rem;min-width:24px;min-height:24px}.subject-picker__hint{margin-top:.35rem;font-size:.82rem}.board-picker__select{width:100%;min-height:44px;font-size:16px}.board-picker__tags{list-style:none;margin:.75rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.board-picker__tags li{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .5rem .35rem .75rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;font-size:.82rem;font-weight:600;color:var(--primary-dark);max-width:100%}.board-picker__tags li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-picker__tags li button{border:none;background:transparent;color:var(--text-muted);font-size:1.1rem;line-height:1;cursor:pointer;padding:0 .15rem;min-width:28px;min-height:28px}.board-picker__hint{margin-top:.35rem;font-size:.82rem}.availability-picker__head{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.25rem}@media(min-width:480px){.availability-picker__head{flex-direction:row;align-items:center;justify-content:space-between;gap:.75rem}.availability-picker__head label{margin-bottom:0}}.availability-picker__actions{display:flex;flex-wrap:wrap;gap:.5rem 1rem}.availability-picker__link{border:none;background:none;padding:0;font-size:.85rem;font-weight:600;color:var(--primary);cursor:pointer;text-decoration:underline;min-height:36px;display:inline-flex;align-items:center}.availability-picker__link--muted{color:var(--text-muted)}.availability-picker__select{width:100%;min-height:44px;font-size:16px}.availability-picker__tags{list-style:none;margin:.75rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.availability-picker__tags li{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .5rem .35rem .75rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;font-size:.82rem;font-weight:600;color:var(--primary-dark);max-width:100%}.availability-picker__tags li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.availability-picker__tags li button{border:none;background:transparent;color:var(--text-muted);font-size:1.1rem;line-height:1;cursor:pointer;padding:0 .15rem;min-width:28px;min-height:28px}.availability-picker__summary{margin-top:.65rem;font-size:.85rem;line-height:1.45;word-break:break-word}.availability-picker__hint{margin-top:.35rem;font-size:.82rem}.chip-group{display:flex;flex-wrap:wrap;gap:.5rem}.chip{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .9rem;border:1.5px solid var(--border);border-radius:999px;cursor:pointer;font-size:.85rem;background:#fff;transition:all var(--transition)}.chip-active{border-color:var(--primary);background:#eef2ff;color:var(--primary-dark);font-weight:600}.availability-list{margin-top:.85rem}.availability-list li{display:flex;align-items:center;gap:.5rem;padding:.65rem .85rem;background:var(--bg-soft);border-radius:var(--radius);margin-bottom:.4rem;font-size:.9rem}.availability-list button{margin-left:auto;background:none;border:none;cursor:pointer;color:#ef4444;font-size:1rem}.muted{color:var(--text-muted);font-size:.85rem}.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:var(--radius-xl);border:2px dashed var(--border)}.empty-state-icon{font-size:3.5rem;margin-bottom:1rem}.empty-state h3{font-weight:700;margin-bottom:.5rem}.upi-payment-box{background:var(--gradient-soft);border:1px solid #c7d2fe;border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:1.5rem}.upi-payment-box h4,.form-step-title{font-size:.95rem;font-weight:700;color:var(--primary-dark);margin-bottom:.75rem}.upi-qr-row{display:flex;gap:1.25rem;align-items:center;flex-wrap:wrap}.upi-qr{width:180px;height:180px;border-radius:var(--radius);border:4px solid white;box-shadow:var(--shadow)}.upi-id{font-size:.9rem;color:var(--text-muted);margin-top:.25rem;word-break:break-all}.upi-steps{margin-top:1rem;padding-left:1.25rem;font-size:.85rem;color:var(--text-muted);line-height:1.7}.token-box{background:#0f172a;color:#a5b4fc;padding:1rem;border-radius:var(--radius);font-family:monospace;font-size:.85rem;word-break:break-all;margin:1rem 0}.portal-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.portal-form{margin-bottom:2rem}.demo-card.inactive{opacity:.65}.booking-steps{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.booking-step-indicator{display:flex;flex-direction:column;align-items:center;gap:.35rem;opacity:.45}.booking-step-indicator span{width:36px;height:36px;border-radius:50%;background:var(--bg-muted);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem}.booking-step-indicator small{font-size:.75rem;color:var(--text-muted)}.booking-step-indicator.active span{background:var(--gradient);color:#fff}.booking-step-indicator.done span{background:var(--accent);color:#fff}.booking-step-indicator.active,.booking-step-indicator.done{opacity:1}.booking-card{margin:0 auto}.review-box{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:1.5rem;line-height:1.8}.booking-success-panel{text-align:center;padding:.5rem 0}.booking-ref-badge{display:inline-block;background:var(--bg-soft);border:1px solid var(--border);padding:.5rem 1rem;border-radius:var(--radius);margin:.75rem 0;font-size:.95rem}.booking-success-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;margin-top:1.5rem}.student-track-card{margin-bottom:2rem}.student-track-search{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap;margin-top:1rem}.student-track-empty{margin-top:1rem}.student-bookings-list{display:flex;flex-direction:column;gap:1.25rem}.student-booking-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm)}.student-booking-card__head{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.student-booking-card__head h3{margin:.25rem 0 0;font-size:1.15rem}.student-booking-ref{font-size:.8rem;font-weight:600;color:var(--primary);letter-spacing:.03em}.student-booking-date{font-size:.85rem;color:var(--text-muted);white-space:nowrap}.student-booking-statuses{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.student-status{display:inline-block;padding:.35rem .75rem;border-radius:999px;font-size:.8rem;font-weight:600}.student-status--pending{background:#fef3c7;color:#92400e}.student-status--approved{background:#d1fae5;color:#065f46}.student-status--rejected{background:#fee2e2;color:#991b1b}.student-status--free{background:#e0e7ff;color:#3730a3}.student-booking-detail{font-size:.9rem;color:var(--text-muted);margin-bottom:1rem}.student-booking-details{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem 1.5rem;margin:0 0 1rem;font-size:.9rem}.student-booking-details dt{font-weight:600;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.student-booking-details dd{margin:.15rem 0 0}.student-track-tip{margin-top:.5rem;font-size:.9rem}.student-booking-video{margin-top:1rem}.alert-warning{background:#fffbeb;border:1px solid #fde68a;color:#78350f}.demo-section-title{font-size:1.25rem;margin-bottom:1.25rem;font-weight:700}.preview-label{background:#e0e7ff!important;color:#3730a3!important}.offline-label{background:#fef3c7!important;color:#92400e!important}.demo-card--preview{border-color:#c7d2fe}.book-demo-page-bg{min-height:calc(100vh - var(--header-height));background:linear-gradient(160deg,#f8fafc,#eef2ff,#f0fdfa);padding:2rem 1rem 3rem}.book-demo-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#0f172a8c;display:flex;align-items:flex-start;justify-content:center;padding:1.5rem;overflow-y:auto}.book-demo-modal,.book-demo-prompt-modal{background:#fff;border-radius:var(--radius-lg);box-shadow:0 24px 60px #0f172a33;width:100%;max-width:720px;position:relative}.book-demo-page-bg .book-demo-modal{max-width:800px;margin:0 auto}.book-demo-prompt-modal{max-width:480px;padding:2rem;text-align:center}.book-demo-modal__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.5rem 1.5rem 0;border-bottom:1px solid var(--border)}.book-demo-modal__header h1{font-size:1.35rem;margin:.25rem 0 0}.book-demo-modal__tag{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#0d9488}.book-demo-modal__close{width:40px;height:40px;border-radius:50%;border:1px solid var(--border);background:#fff;font-size:1.1rem;cursor:pointer;flex-shrink:0}.book-demo-modal__body{padding:1.5rem}.booking-steps--compact{padding:1rem 1.5rem 0;margin-bottom:0}.book-demo-prompt-actions{display:flex;flex-direction:column;gap:.65rem;margin-top:1.5rem}.demo-package-picker{margin:1rem 1.5rem 0}.demo-package-picker__label{font-weight:700;font-size:.9rem;margin-bottom:.65rem}.demo-package-options{display:grid;gap:.65rem}.demo-package-option{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:.15rem .65rem;align-items:center;padding:.85rem 1rem;border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color .15s,background .15s}.demo-package-option input{grid-row:1 / 3}.demo-package-option.selected{border-color:var(--primary);background:#eff6ff}.demo-package-option__title{font-weight:700;font-size:.95rem}.demo-package-option__desc{grid-column:2;font-size:.8rem;color:var(--muted)}.demo-package-option__fee{grid-row:1 / 3;grid-column:3;font-weight:800;color:var(--primary)}.demo-reg-accordion{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin:1rem 0}.demo-reg-accordion__head{width:100%;text-align:left;padding:.85rem 1rem;font-weight:700;font-size:.95rem;background:#f1f5f9;border:none;border-bottom:1px solid var(--border);cursor:pointer;color:var(--text)}.demo-reg-accordion__head.open{background:#dbeafe;color:#1e40af}.demo-reg-accordion__body{padding:1rem 1.25rem;background:#eff6ff;border-bottom:1px solid #bfdbfe;font-size:.9rem;line-height:1.7}.demo-reg-accordion__body--note{background:#fffbeb;border-bottom-color:#fde68a}.demo-reg-accordion__body ul{margin:0;padding-left:1.2rem}.demo-upi-list{list-style:none;padding:0!important}.demo-upi-list li{padding:.35rem 0}.free-preview-video video{width:100%;border-radius:var(--radius);max-height:360px;background:#000}.free-preview-label{font-weight:600;margin-bottom:.5rem}.admin-teacher-pricing{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.admin-teacher-pricing h4{margin:0 0 .5rem}.admin-layout{display:grid;grid-template-columns:240px 1fr;min-height:100vh;background:var(--bg-soft)}.admin-sidebar{background:var(--bg-dark);color:#94a3b8;padding:1.5rem;display:flex;flex-direction:column;min-height:100vh}.admin-sidebar h2{color:#fff;font-size:1.2rem;margin-bottom:1rem}.admin-stats-mini{display:flex;flex-direction:column;gap:.35rem;font-size:.8rem;margin-bottom:1.5rem}.admin-sidebar nav{display:flex;flex-direction:column;gap:.35rem;flex:1}.admin-sidebar nav button{text-align:left;padding:.65rem .85rem;border:none;background:transparent;color:inherit;border-radius:var(--radius);cursor:pointer;font-family:inherit;font-size:.9rem}.admin-sidebar nav button.active,.admin-sidebar nav button:hover{background:#ffffff1a;color:#fff}.admin-home-link{display:block;margin-top:1rem;font-size:.85rem;color:#64748b}.admin-sidebar-footer{margin-top:auto;padding-top:1rem;display:flex;flex-direction:column;gap:.25rem}.admin-sidebar-link{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#64748b;text-decoration:none;padding:.5rem .65rem;border-radius:8px;transition:color .2s ease,background .2s ease}.admin-sidebar-link:hover{color:#cbd5e1;background:#ffffff0d}.btn-admin-logout{width:100%;margin-bottom:.35rem;padding:.65rem .75rem;display:flex;align-items:center;gap:.65rem;font-size:.9rem;font-weight:500;font-family:inherit;color:#cbd5e1;background:#ffffff0f;border:1px solid rgb(255 255 255 / .1);border-radius:10px;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.btn-admin-logout-icon{width:18px;height:18px;flex-shrink:0;opacity:.85}.btn-admin-logout:hover{color:#fff;background:#ffffff1f;border-color:#ffffff2e}.btn-admin-logout:hover .btn-admin-logout-icon{opacity:1}.btn-admin-logout:active{background:#ffffff14}.admin-main{padding:2rem;overflow-x:hidden;max-width:100%;min-width:0}.admin-main h1{font-size:1.5rem;margin-bottom:1.25rem}.admin-table-wrap{background:#fff;border-radius:var(--radius-lg);overflow-x:auto;box-shadow:var(--shadow)}.admin-table{width:100%;border-collapse:collapse;font-size:.88rem}.admin-table th,.admin-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border)}.admin-table th{background:var(--bg-soft);font-weight:600}.btn-admin-delete{background:#fee2e2;color:#991b1b;border:none;padding:.35rem .75rem;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:600}.btn-admin-delete:hover{background:#fecaca}.admin-footer-link{margin-left:1rem;font-size:.8rem;opacity:.6}.admin-footer-link:hover{opacity:1;color:#fff}.admin-login-page{min-height:85vh;display:flex;align-items:center;background:var(--gradient-soft);padding:3rem 0}.admin-login-card{max-width:480px;margin:0 auto}.portal-login-card{max-width:440px}.portal-login-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1.25rem}.portal-login-tab{padding:.65rem .75rem;border-radius:10px;border:1.5px solid var(--border);background:var(--bg-soft);font-family:inherit;font-size:.85rem;font-weight:700;color:var(--text-muted);cursor:pointer;transition:all .2s ease}.portal-login-tab--active{background:#eef2ff;border-color:var(--primary-light);color:var(--primary)}.portal-login-tab--team.portal-login-tab--active{background:#ecfdf5;border-color:#6ee7b7;color:#059669}.portal-login-switch{margin-top:1.25rem;text-align:center;font-size:.88rem;color:var(--text-muted)}.portal-login-switch__btn{background:none;border:none;padding:0;font-family:inherit;font-size:inherit;font-weight:700;color:var(--primary);cursor:pointer;text-decoration:underline}.portal-login-footer-links{margin-top:1rem;text-align:center}.admin-overview--team .admin-overview-pipeline__row{padding:.6rem .75rem}.admin-login-badge{display:inline-block;background:#eef2ff;color:var(--primary);padding:.35rem .85rem;border-radius:999px;font-size:.8rem;font-weight:700;margin-bottom:1rem}.admin-login-info{background:var(--bg-soft);border-radius:var(--radius);padding:1rem;margin-bottom:1.25rem;font-size:.9rem;color:var(--text-muted);line-height:1.6}.admin-login-info p{margin-bottom:.5rem}.admin-user-email{font-size:.8rem;color:#64748b;margin-bottom:1.25rem}.admin-welcome{color:var(--text-muted);margin-bottom:1.5rem}.admin-stat-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;margin-bottom:2rem}.admin-stat-card{background:#fff;border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow);cursor:pointer;transition:transform var(--transition);border:1px solid var(--border)}.admin-stat-card:hover{transform:translateY(-4px);border-color:var(--primary-light)}.admin-stat-card strong{display:block;font-size:2rem;font-weight:800;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.admin-stat-card span{font-size:.85rem;color:var(--text-muted)}.nav-badge{margin-left:auto;font-style:normal;background:#ffffff26;padding:.1rem .45rem;border-radius:999px;font-size:.7rem}.admin-sidebar nav button{display:flex;align-items:center;gap:.5rem;width:100%}.type-badge{display:inline-block;padding:.2rem .55rem;border-radius:6px;font-size:.75rem;font-weight:700}.type-contact{background:#dbeafe;color:#1d4ed8}.type-inquiry{background:#ede9fe;color:#6d28d9}.type-booking{background:#fef3c7;color:#b45309}.type-student{background:#d1fae5;color:#047857}.btn-view{background:#eef2ff;color:var(--primary);border:none;padding:.35rem .65rem;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:600;margin-right:.35rem}.admin-actions{white-space:nowrap}.admin-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:3000;display:flex;align-items:center;justify-content:center;padding:1rem}.admin-detail-panel{background:#fff;border-radius:var(--radius-xl);padding:2rem;max-width:560px;width:100%;max-height:85vh;overflow-y:auto;position:relative}.admin-detail-list{margin-top:1rem}.admin-detail-row{display:grid;grid-template-columns:140px 1fr;gap:.5rem;padding:.65rem 0;border-bottom:1px solid var(--border);font-size:.9rem}.admin-detail-row dt{font-weight:600;color:var(--text-muted);text-transform:capitalize}.admin-detail-row dd{word-break:break-word;white-space:pre-wrap}.portal-layout{grid-template-columns:268px 1fr}.portal-sidebar{--portal-accent: #10b981;--portal-accent-light: #6ee7b7;--portal-accent-soft: rgb(16 185 129 / .14);--portal-accent-border: rgb(16 185 129 / .35);--portal-glow: rgb(16 185 129 / .18);--portal-avatar-from: #a7f3d0;--portal-avatar-to: #6ee7b7;--portal-badge-bg: rgb(16 185 129 / .08);--portal-badge-border: rgb(16 185 129 / .2);background:linear-gradient(165deg,#0f172a,#1a2332,#0f172a)!important;border-right:1px solid rgb(255 255 255 / .06);padding:1.35rem 1rem!important;position:relative;overflow:hidden}.portal-sidebar--student{--portal-accent: #3b82f6;--portal-accent-light: #93c5fd;--portal-accent-soft: rgb(59 130 246 / .16);--portal-accent-border: rgb(59 130 246 / .4);--portal-glow: rgb(59 130 246 / .2);--portal-avatar-from: #bfdbfe;--portal-avatar-to: #60a5fa;--portal-badge-bg: rgb(59 130 246 / .1);--portal-badge-border: rgb(59 130 246 / .28)}.portal-main--student{min-height:60vh}.portal-main--student.dashboard-content{padding-top:.75rem}.portal-sidebar--teacher{--portal-accent: #f59e0b;--portal-accent-light: #fcd34d;--portal-accent-soft: rgb(245 158 11 / .16);--portal-accent-border: rgb(245 158 11 / .4);--portal-glow: rgb(245 158 11 / .2);--portal-avatar-from: #fde68a;--portal-avatar-to: #fbbf24;--portal-badge-bg: rgb(245 158 11 / .1);--portal-badge-border: rgb(245 158 11 / .28)}.portal-main--teacher{min-height:60vh}.portal-role-badge--teacher{font-size:.78rem}.teacher-portal-stats{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.teacher-portal-quick-actions{margin-top:1rem}.teacher-portal-quick-actions h3{font-size:1rem;margin-bottom:.75rem}.teacher-profile-details{margin:1.25rem 0 0;display:grid;gap:.65rem}.teacher-profile-details__row{display:grid;grid-template-columns:minmax(7rem,32%) 1fr;gap:.5rem 1rem;padding-bottom:.65rem;border-bottom:1px solid var(--border);font-size:.92rem}.teacher-profile-details__row dt{font-weight:600;color:var(--text-muted)}.teacher-profile-details__row dd{margin:0;word-break:break-word}.teacher-profile-availability{margin-top:1.25rem}.teacher-profile-availability h3{font-size:1rem;margin-bottom:.5rem}.teacher-portal-demos__head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.portal-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem}.portal-filter-row label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500}.portal-filter-row select{padding:.4rem .65rem;border-radius:8px;border:1px solid var(--border)}.portal-filter-badge{font-size:.85rem;font-weight:600;color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,#fff);padding:.35rem .75rem;border-radius:999px}.teacher-session-list{display:grid;gap:1rem}.teacher-session-card__head{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.teacher-session-card__head h3{margin:0;font-size:1.05rem}.teacher-session-card__meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem 1rem;margin:0;font-size:.88rem}.teacher-session-card__meta dt{font-weight:600;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.03em}.teacher-session-card__meta dd{margin:.15rem 0 0}.teacher-session-card__address{grid-column:1 / -1}.teacher-portal-app{min-height:100vh;background:var(--bg-muted, #f1f5f9)}.teacher-portal-app.portal-layout{margin:0;max-width:none}.portal-profile--teacher .portal-profile-text{display:flex;flex-direction:column;gap:.15rem;min-width:0}.portal-profile-id{font-size:.72rem;font-weight:600;color:var(--portal-accent-light);letter-spacing:.04em}.portal-profile-mobile{font-size:.78rem;color:#ffffffd9}.portal-profile-qual{font-size:.75rem;color:#ffffffa6;line-height:1.3}.teacher-profile-hero{background:linear-gradient(135deg,#fff,#fffbeb);border:1px solid color-mix(in srgb,#f59e0b 25%,var(--border));border-radius:var(--radius-xl);padding:1.25rem 1.5rem;margin-bottom:1.25rem;box-shadow:var(--shadow-sm)}.teacher-profile-hero__main{display:flex;gap:1.25rem;align-items:flex-start;flex-wrap:wrap}.teacher-profile-hero__avatar{width:5.5rem;height:5.5rem;font-size:2rem;flex-shrink:0}.teacher-profile-hero__info{flex:1;min-width:min(100%,220px)}.teacher-profile-hero__eyebrow{margin:0 0 .25rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#b45309}.teacher-profile-hero__name{margin:0 0 .5rem;font-size:clamp(1.35rem,4vw,1.75rem);font-weight:800;line-height:1.2}.teacher-profile-hero__ids{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;font-size:.88rem;margin-bottom:.5rem}.teacher-profile-hero__ids strong{color:var(--text-muted);font-weight:600;margin-right:.35rem}.teacher-profile-hero__ids a{color:var(--primary);text-decoration:none}.teacher-profile-hero__meta{margin:0 0 .65rem;font-size:.92rem}.teacher-profile-hero__chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}.teacher-profile-hero__chip{font-size:.72rem;font-weight:600;padding:.2rem .55rem;border-radius:999px;background:color-mix(in srgb,#f59e0b 15%,#fff);color:#92400e;border:1px solid color-mix(in srgb,#f59e0b 30%,transparent)}.teacher-profile-hero__area{margin:0 0 .75rem;font-size:.85rem}.teacher-profile-hero__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border)}.teacher-profile-hero__stat{text-align:center;padding:.65rem .5rem;background:#fff;border-radius:12px;border:1px solid var(--border)}.teacher-profile-hero__stat-value{display:block;font-size:1.35rem;font-weight:800;color:var(--primary);line-height:1.2}.teacher-profile-hero__stat--email .teacher-profile-hero__stat-value{font-size:.75rem;font-weight:600;word-break:break-all}.teacher-profile-hero__stat-label{display:block;font-size:.72rem;color:var(--text-muted);margin-top:.2rem}.teacher-track-status{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.15rem 1.25rem}.teacher-track-status__head{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem}.teacher-track-status__head h3{margin:0;font-size:1rem;font-weight:700}.teacher-track-status__pill{font-size:.72rem;font-weight:700;text-transform:capitalize;padding:.25rem .65rem;border-radius:999px;background:var(--bg-muted)}.teacher-track-status__pill--approved,.teacher-track-status__pill--ongoing{background:#dcfce7;color:#166534}.teacher-track-status__pill--pending,.teacher-track-status__pill--interview{background:#fef3c7;color:#92400e}.teacher-track-status__pill--rejected{background:#fee2e2;color:#991b1b}.teacher-track-status__steps{list-style:none;margin:0;padding:0;display:grid;gap:.65rem}.teacher-track-status__step{display:flex;align-items:flex-start;gap:.75rem;opacity:.45}.teacher-track-status__step.is-done,.teacher-track-status__step.is-active{opacity:1}.teacher-track-status__step.is-active .teacher-track-status__dot{background:#f59e0b;box-shadow:0 0 0 4px #f59e0b40}.teacher-track-status__step.is-done .teacher-track-status__dot{background:#22c55e}.teacher-track-status__dot{width:12px;height:12px;border-radius:50%;background:var(--border);flex-shrink:0;margin-top:.35rem}.teacher-track-status__text{display:flex;flex-direction:column;gap:.1rem;font-size:.85rem}.teacher-track-status__text strong{font-size:.92rem}.teacher-track-status__text span{color:var(--text-muted);font-size:.8rem}.teacher-track-status__note,.teacher-track-status__rejected{margin:1rem 0 0;font-size:.88rem;line-height:1.5;padding:.75rem;background:var(--bg-muted);border-radius:8px}.student-dashboard-hero{background:linear-gradient(135deg,#fff,#eff6ff);border:1px solid color-mix(in srgb,#3b82f6 22%,var(--border));border-radius:var(--radius-xl);padding:1rem 1.1rem;margin-bottom:1rem;box-shadow:var(--shadow-sm)}.student-dashboard-hero__profile{display:flex;gap:.85rem;align-items:flex-start}.student-dashboard-hero__avatar{width:3.5rem;height:3.5rem;font-size:1.35rem;flex-shrink:0}.student-dashboard-hero__body{flex:1;min-width:0;text-align:left}.student-dashboard-hero__eyebrow{margin:0 0 .15rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#1d4ed8}.student-dashboard-hero__name{margin:0 0 .4rem;font-size:clamp(1.1rem,4.5vw,1.45rem);font-weight:800;line-height:1.2;color:var(--text)}.student-dashboard-hero__facts{list-style:none;margin:0 0 .45rem;padding:0;display:flex;flex-direction:column;gap:.2rem;font-size:.8rem}.student-dashboard-hero__facts li{display:flex;flex-wrap:wrap;gap:.25rem .5rem;align-items:baseline;line-height:1.35}.student-dashboard-hero__fact-label{font-weight:600;color:var(--text-muted);flex-shrink:0}.student-dashboard-hero__facts a{color:var(--primary);text-decoration:none;font-weight:600}.student-dashboard-hero__fact--email{display:none}.student-dashboard-hero__school{margin:0 0 .4rem;font-size:.82rem;color:var(--text);line-height:1.4}.student-dashboard-hero__chips{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.35rem}.student-dashboard-hero__chip{font-size:.68rem;font-weight:600;padding:.15rem .5rem;border-radius:999px;background:#3b82f61a;color:#1e40af;border:1px solid rgb(59 130 246 / .22)}.student-dashboard-hero__location{margin:0;font-size:.78rem;color:var(--text-muted);line-height:1.35}.student-dashboard-hero__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-top:.85rem;padding-top:.75rem;border-top:1px solid var(--border)}.student-dashboard-hero__stat{text-align:center;padding:.55rem .35rem;background:#fff;border-radius:10px;border:1px solid var(--border);min-width:0}.student-dashboard-hero__stat-value{display:block;font-size:1.2rem;font-weight:800;color:var(--primary);line-height:1.15}.student-dashboard-hero__stat-label{display:block;font-size:.65rem;color:var(--text-muted);margin-top:.15rem;line-height:1.25}.student-portal-overview .portal-dash-card{padding:.9rem 1rem}.student-portal-overview .portal-dash-card h3{font-size:.95rem;margin-bottom:.35rem}.student-portal-overview .portal-dash-card .muted{font-size:.82rem;margin-bottom:.65rem}.student-portal-overview .teacher-track-status{border-color:color-mix(in srgb,#3b82f6 18%,var(--border))}@media(min-width:640px){.student-dashboard-hero{padding:1.1rem 1.25rem}.student-dashboard-hero__avatar{width:4.25rem;height:4.25rem;font-size:1.6rem}.student-dashboard-hero__stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}.student-dashboard-hero__stat-value{font-size:1.25rem}}.teacher-portal-overview__grid{display:grid;gap:1rem;grid-template-columns:1fr;margin-bottom:1.25rem}@media(min-width:900px){.teacher-portal-overview__grid{grid-template-columns:1.2fr 1fr}}.teacher-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.85rem 1.25rem;margin:0 0 1rem}.teacher-details-grid dt{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.2rem}.teacher-details-grid dd{margin:0;font-size:.9rem}.teacher-details-grid--full{grid-column:1 / -1}.teacher-portal-profile-card__ids{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border);font-size:.9rem}.teacher-portal-demos__grid{max-width:100%}.teacher-portal-demos .demo-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.teacher-portal-empty{text-align:center;padding:2rem 1.5rem}.teacher-portal-empty p{margin-bottom:1rem}.teacher-demo-modal-overlay{z-index:2100;align-items:flex-end;padding:0}@media(min-width:640px){.teacher-demo-modal-overlay{align-items:center;padding:1rem}}.teacher-demo-modal__panel{width:100%;max-width:520px;max-height:88vh;margin:0 auto;display:flex;flex-direction:column}@media(min-width:640px){.teacher-demo-modal__panel{border-radius:var(--radius-xl);overflow:hidden}}.teacher-demo-modal{max-width:none;width:100%;max-height:88vh;margin:0;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:1.35rem 1.25rem 1.5rem;overflow-y:auto}@media(min-width:640px){.teacher-demo-modal{border-radius:var(--radius-xl)}}@media(max-width:639px){.teacher-profile-hero__stats{grid-template-columns:1fr}.teacher-profile-hero__main{flex-direction:column;align-items:center;text-align:center}.teacher-profile-hero__ids,.teacher-profile-hero__chips{justify-content:center}}.portal-sidebar--owner{--portal-accent: #6366f1;--portal-accent-light: #a5b4fc;--portal-accent-soft: rgb(99 102 241 / .16);--portal-accent-border: rgb(99 102 241 / .4);--portal-glow: rgb(99 102 241 / .2);--portal-avatar-from: #c7d2fe;--portal-avatar-to: #818cf8;--portal-badge-bg: rgb(99 102 241 / .1);--portal-badge-border: rgb(99 102 241 / .28)}.portal-sidebar:before{content:"";position:absolute;top:-30%;right:-50%;width:260px;height:260px;background:radial-gradient(circle,var(--portal-glow) 0%,transparent 68%);pointer-events:none}.portal-sidebar:after{content:"";position:absolute;bottom:10%;left:-40%;width:200px;height:200px;background:radial-gradient(circle,rgb(99 102 241 / .1) 0%,transparent 70%);pointer-events:none}.portal-sidebar>*{position:relative;z-index:1}.portal-sidebar-brand{display:flex;align-items:center;gap:.75rem;margin-bottom:1.35rem}.portal-brand-icon{width:42px;height:42px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--portal-accent),color-mix(in srgb,var(--portal-accent) 80%,#000));border-radius:12px;box-shadow:0 4px 14px color-mix(in srgb,var(--portal-accent) 40%,transparent)}.portal-brand-tag{display:block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--portal-accent-light);margin-bottom:.1rem}.portal-brand-title{color:#f8fafc!important;font-size:1.15rem!important;font-weight:700;margin:0!important;line-height:1.2}.portal-profile{display:flex;align-items:center;gap:.75rem;padding:.85rem;margin-bottom:1rem;background:#ffffff0d;border:1px solid rgb(255 255 255 / .08);border-radius:14px}.portal-avatar{width:40px;height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;color:#0f172a;background:linear-gradient(135deg,var(--portal-avatar-from),var(--portal-avatar-to));border-radius:50%}.portal-profile-text{display:flex;flex-direction:column;min-width:0}.portal-profile-text strong{color:#f1f5f9;font-size:.9rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-profile-text span{font-size:.75rem;color:#64748b}.portal-role-badge{display:flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:500;color:#94a3b8;background:var(--portal-badge-bg);border:1px solid var(--portal-badge-border);padding:.55rem .7rem;border-radius:10px;margin-bottom:1.25rem;line-height:1.35}.portal-badge-dot{width:7px;height:7px;flex-shrink:0;border-radius:50%;background:var(--portal-accent-light);box-shadow:0 0 8px color-mix(in srgb,var(--portal-accent-light) 80%,transparent);animation:portal-pulse 2s ease-in-out infinite}@keyframes portal-pulse{0%,to{opacity:1}50%{opacity:.5}}.portal-nav{display:flex;flex-direction:column;gap:.3rem;flex:1}.portal-nav button{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.7rem .75rem!important;border-radius:10px!important;border:1px solid transparent;font-size:.85rem!important;color:#94a3b8!important;transition:all .2s ease}.portal-nav-label{display:flex;align-items:center;gap:.55rem;min-width:0}.portal-nav-icon{font-size:1rem;line-height:1;opacity:.9}.portal-nav-count{flex-shrink:0;min-width:1.6rem;padding:.15rem .45rem;font-size:.72rem;font-weight:600;text-align:center;color:#cbd5e1;background:#ffffff14;border-radius:999px}.portal-nav button:hover{background:#ffffff0f!important;color:#e2e8f0!important;border-color:#ffffff0f}.portal-nav button.active{background:var(--portal-accent-soft)!important;color:#f8fafc!important;border-color:var(--portal-accent-border)!important;box-shadow:inset 3px 0 0 var(--portal-accent)}.portal-nav button.active .portal-nav-count{background:color-mix(in srgb,var(--portal-accent) 45%,transparent);color:#f8fafc}.portal-sidebar .admin-sidebar-footer{border-top:none;padding-top:.75rem;margin-top:.5rem}.portal-sidebar .admin-sidebar-link{color:#64748b}.portal-sidebar .admin-sidebar-link:hover{color:#cbd5e1}.portal-sidebar .btn-admin-logout{background:#ffffff0f;border-color:#ffffff1a;color:#cbd5e1}.portal-sidebar .btn-admin-logout:hover{background:#ffffff1f;border-color:#ffffff2e;color:#fff}.portal-main{background:linear-gradient(180deg,#f8fafc,#f1f5f9)}.portal-main--team .subadmin-banner{display:flex;align-items:flex-start;gap:.65rem;background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:#065f46;border:1px solid #a7f3d0;padding:.85rem 1rem;border-radius:12px;margin-bottom:1.25rem;font-size:.88rem;line-height:1.5}.portal-main--team .subadmin-banner:before{content:"💬";font-size:1.1rem;flex-shrink:0}.portal-page-title{display:flex;align-items:center;gap:.5rem}.portal-page-icon{font-size:1.35rem}.subadmin-login-badge{background:#ecfdf5!important;color:#047857!important}.admin-login-badge.portal-login-badge--owner{background:#eef2ff!important;color:#4338ca!important}.message-list{display:flex;flex-direction:column;gap:1rem}.message-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm)}.message-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem}.message-meta{font-size:.8rem;color:var(--text-muted);margin-bottom:.75rem}.message-body{white-space:pre-wrap;line-height:1.55;margin-bottom:.5rem}.message-review-note{font-size:.85rem;color:var(--primary-dark);font-style:italic}.message-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.message-review-input{flex:1;min-width:180px;padding:.5rem .75rem;border:1px solid var(--border);border-radius:8px;font-family:inherit}.message-status{font-size:.72rem;font-weight:700;text-transform:uppercase;padding:.2rem .55rem;border-radius:999px}.status-pending{background:#fef3c7;color:#92400e}.status-approved{background:#d1fae5;color:#065f46}.status-rejected{background:#fee2e2;color:#991b1b}.row-pending-payment{background:#fffbeb!important}.row-pending-payment td{border-bottom-color:#fde68a!important}.portal-nav-count--alert{background:#ef4444!important;color:#fff!important}.admin-stat-card--alert{border-color:#f59e0b;background:#fffbeb}.admin-stat-card--alert strong{color:#b45309}.protected-video-wrap{background:#0f172a;border-radius:var(--radius-lg);padding:1rem;max-width:720px}.protected-video{width:100%;border-radius:10px;background:#000}.protected-video-title{color:#e2e8f0;margin-bottom:.75rem}.protected-video-note{color:#94a3b8;font-size:.8rem;margin-top:.65rem}.demo-preview-note{font-size:.85rem;color:#059669;font-weight:600;margin-bottom:.35rem}.demo-video-tag{font-size:.8rem;color:var(--primary);margin-bottom:.35rem}.video-upload-group{background:#eef2ff;border:1px dashed #a5b4fc;border-radius:var(--radius);padding:1rem}.team-bio{font-size:.88rem;color:var(--text-muted);margin:.5rem 0;line-height:1.45}.team-details{font-size:.8rem;color:var(--text-muted);margin-bottom:.75rem}.btn-whatsapp-sm{display:inline-flex;align-items:center;gap:.25rem;padding:.35rem .65rem;background:#10b981;color:#fff!important;border-radius:8px;font-size:.8rem;font-weight:600;text-decoration:none}.btn-whatsapp-sm:hover{background:#059669}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}.team-card{text-align:center;padding:1.5rem;background:var(--bg);border-radius:var(--radius-lg);border:1px solid var(--border);transition:transform var(--transition),box-shadow var(--transition)}.team-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.team-avatar{width:64px;height:64px;margin:0 auto 1rem;border-radius:50%;background:linear-gradient(135deg,var(--primary),#7c3aed);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700}.team-role{color:var(--text-muted);font-size:.9rem;margin-bottom:1rem}.header-staff-link{font-size:.8rem;font-weight:600;color:var(--text-muted);text-decoration:none;padding:.35rem .5rem;border-radius:6px}.header-staff-link:hover{color:var(--primary);background:var(--bg)}.header-staff-link.sub{color:#6d28d9}.footer-staff-links{margin-left:1rem;display:inline-flex;gap:1rem}.whatsapp-float{position:fixed;bottom:max(1.25rem,var(--safe-bottom));right:max(1.25rem,var(--safe-right));z-index:900;display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .85rem .5rem .65rem;background:#25d366;color:#fff;border-radius:999px;box-shadow:0 6px 20px #25d36661;transition:transform var(--transition),box-shadow var(--transition);max-width:calc(100vw - 2rem)}.whatsapp-float__icon{width:22px;height:22px;flex-shrink:0}.whatsapp-float__label{font-size:.88rem;font-weight:700;letter-spacing:.01em}.whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 12px 32px #25d36680;color:#fff}@media(max-width:1400px){.header-login-btn--teacher{display:none}}@media(max-width:1280px){.header-center,.header-actions{display:none!important}.header-end{display:flex}.menu-toggle{display:flex;align-items:center;justify-content:center}.mobile-overlay.show{display:block}.mobile-drawer .mobile-drawer-nav{display:flex!important;flex-direction:column;align-items:stretch}.mobile-drawer .header-actions{display:flex!important}}@media(max-width:992px){.hero-grid{grid-template-columns:1fr;text-align:center}.hero-desc{margin-left:auto;margin-right:auto}.hero-buttons,.hero-stats{justify-content:center}.hero-visual{max-width:520px;margin:0 auto}.hero-float-card-1{left:10px}.features-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.about-grid,.contact-grid{grid-template-columns:1fr}.mvv-grid,.stats-grid{grid-template-columns:repeat(2,1fr)}.cta-strip-inner{flex-direction:column;text-align:center}}@media(max-width:768px){.whatsapp-float__label{display:none}.whatsapp-float{width:44px;height:44px;padding:0;justify-content:center;border-radius:12px;box-shadow:0 4px 14px #25d36659}.whatsapp-float__icon{width:20px;height:20px}.features-grid,.footer-grid,.mvv-grid,.stats-grid,.teachers-grid,.demo-grid{grid-template-columns:1fr}.hero-float-card-2{display:none}}.admin-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem}.admin-filter-bar select{min-height:44px;min-width:180px}.admin-status-select{min-width:9.5rem;max-width:100%;padding:.35rem .5rem;font-size:.8125rem;border:1px solid var(--border, #e2e8f0);border-radius:6px;background:#fff;color:var(--text, #1e293b)}.admin-status-field{display:flex;flex-direction:column;gap:.25rem;width:100%;margin-bottom:.35rem}.admin-status-field__label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted, #64748b)}.admin-table .admin-status-select{min-width:8rem}.student-demo-booking-list{display:flex;flex-direction:column;gap:1rem}.student-demo-booking-card__head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.student-demo-booking-card__ref{font-size:.75rem;color:var(--muted, #64748b);margin:0 0 .25rem}.student-demo-booking-card__grid{margin-top:.5rem}.admin-status-actions__row{display:flex;flex-wrap:wrap;gap:.5rem}.admin-assign-form{margin-bottom:1.5rem;padding:1rem}.teachers-toolbar--filter{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:.75rem;margin-bottom:1.5rem}.teachers-toolbar__filters{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem;width:100%}.teachers-toolbar--filter .teachers-class-filter{flex:none;margin-bottom:0;min-width:0}.teachers-class-filter__hint{display:block;font-size:.78rem;font-weight:500;color:var(--text-muted);margin:-.25rem 0 .4rem;line-height:1.3}.teachers-class-filter select{width:100%;min-height:44px;font-size:16px}.teachers-smart-match{display:flex;align-items:flex-start;gap:.55rem;font-size:.88rem;font-weight:600;color:var(--text);cursor:pointer;flex:none;width:100%;margin:0;padding:.15rem 0;line-height:1.4}.teachers-smart-match input{width:1.125rem;height:1.125rem;margin-top:.15rem;flex-shrink:0;accent-color:var(--primary)}.teachers-smart-match span{flex:1;min-width:0}.teachers-toolbar__footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem 1rem;width:100%;padding-top:.15rem}.teachers-toolbar--filter .teachers-count{margin:0;font-size:1rem;flex:1 1 auto;min-width:0}.teachers-toolbar__cta{flex-shrink:0}@media(max-width:640px){.teachers-toolbar__filters{grid-template-columns:1fr;gap:.5rem}.teachers-toolbar--filter{gap:.6rem}.teachers-toolbar__footer{flex-direction:column;align-items:stretch;gap:.5rem}.teachers-toolbar--filter .teachers-count{text-align:left;font-size:.95rem}.teachers-toolbar__cta{width:100%;justify-content:center}}.teachers-smart-match-panel{padding:1.25rem}@media(max-width:768px){.admin-table--cards thead{display:none}.admin-table--cards tbody tr{display:block;margin-bottom:1rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.admin-table--cards tbody td{display:flex;justify-content:space-between;gap:.5rem;padding:.35rem 0;border:none;text-align:right}.admin-table--cards tbody td:before{content:attr(data-label);font-weight:700;text-align:left;color:var(--text-muted);flex-shrink:0;max-width:45%}.admin-table--cards tbody td>*{text-align:right;flex:1;min-width:0}.admin-table--cards .admin-actions{flex-wrap:wrap;justify-content:flex-end}.admin-stat-cards{grid-template-columns:repeat(2,1fr)}.btn,.btn-view,.chip,.menu-toggle,.portal-nav button{min-height:44px}}@media(max-width:480px){.admin-stat-cards{grid-template-columns:1fr}}.admin-ongoing__toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:.75rem}.admin-ongoing__title{font-size:1.4rem;margin-bottom:.25rem;color:var(--text)}.admin-ongoing__subtitle{color:var(--muted);font-size:.85rem}.admin-ongoing__assign-btn{display:inline-flex;align-items:center;gap:.5rem}.admin-ongoing__plus{font-size:1.1rem;font-weight:700;line-height:1}.admin-ongoing__search-card{background:#fff;border-radius:14px;padding:1rem 1.25rem;border:1.5px solid var(--border);margin-bottom:1.25rem}.admin-ongoing__search-wrap{position:relative;max-width:380px}.admin-ongoing__search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:.95rem}.admin-ongoing__search-input{width:100%;padding:.55rem .75rem .55rem 2.1rem;border:1.5px solid var(--border);border-radius:8px;font-size:.88rem;outline:none;background:var(--bg-soft)}.admin-ongoing__search-input:focus{border-color:var(--primary-light)}.admin-ongoing__empty{text-align:center;padding:3.5rem 1.5rem;color:var(--muted)}.admin-ongoing__empty--card{background:#fff;border-radius:16px;border:1.5px solid var(--border)}.admin-ongoing__empty-icon{display:block;font-size:2.5rem;margin-bottom:1rem}.admin-ongoing{max-width:100%;overflow-x:hidden}.admin-ongoing__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:1.25rem;width:100%}.ongoing-session-card{display:flex;flex-direction:column;background:#fff;border-radius:16px;border:1.5px solid var(--border);overflow:visible;box-shadow:var(--shadow-sm);transition:box-shadow .2s;max-width:100%;min-width:0;width:100%}.ongoing-session-card:hover{box-shadow:var(--shadow-md)}.ongoing-session-card__head{order:0;flex-shrink:0;background:linear-gradient(135deg,#1746c8,#3b6ff5);padding:.85rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:nowrap;border-radius:14px 14px 0 0;overflow:hidden}.ongoing-session-card__tags{display:flex;gap:.4rem;flex-wrap:wrap;flex:1;min-width:0}.ongoing-session-card__tag{background:#fff3;color:#fff;padding:.2rem .65rem;border-radius:100px;font-size:.72rem;font-weight:600}.ongoing-session-card__days{display:flex;align-items:center;gap:.35rem;color:#ffffffe6;font-size:.75rem;flex-shrink:0}.ongoing-session-card__body{order:1;padding:1rem 1.1rem;display:grid;grid-template-columns:1fr 1fr;gap:.75rem;min-width:0}.ongoing-session-card__body--reference{align-items:stretch}.ongoing-session-card__person{border-radius:12px;padding:.85rem .9rem;min-width:0}.ongoing-session-card__person--student{background:#f1f5f9;border:1px solid #e2e8f0}.ongoing-session-card__person--teacher{background:#f0fdf4;border:1px solid #bbf7d0}.ongoing-session-card__person-label{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.ongoing-session-card__person--student .ongoing-session-card__person-label{color:var(--primary)}.ongoing-session-card__person--teacher .ongoing-session-card__person-label{color:#166534}.ongoing-session-card__avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem}.ongoing-session-card__avatar--student{background:#dbeafe}.ongoing-session-card__avatar--teacher{background:#dcfce7}.ongoing-session-card__name{font-weight:700;font-size:.92rem;margin-bottom:.25rem;overflow-wrap:anywhere;word-break:break-word}.ongoing-session-card__meta-row{display:flex;align-items:flex-start;gap:.45rem;font-size:.8rem;color:var(--text-muted);line-height:1.4;margin-bottom:.3rem}.ongoing-session-card__meta-row span:last-child{flex:1;min-width:0;overflow-wrap:anywhere;word-break:break-word}.ongoing-session-card__meta-icon{flex-shrink:0;width:1.1rem;text-align:center;font-size:.85rem;line-height:1.35;opacity:.85}.ongoing-session-card__notes{padding:0 1.25rem .75rem;font-size:.82rem;color:var(--muted)}.ongoing-session-card__foot{order:2;flex-shrink:0;padding:.9rem 1.1rem 1.1rem;border-top:1px solid var(--border);display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1rem;background:#fff;border-radius:0 0 14px 14px}.ongoing-session-card__foot-info{display:flex;flex-direction:column;gap:.25rem}.ongoing-session-card__status-live{display:flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;color:#166534}.ongoing-session-card__dot{width:8px;height:8px;border-radius:50%;background:#0ea271}.ongoing-session-card__actions{display:flex;flex:1 1 200px;gap:.55rem;min-width:min(100%,280px);max-width:100%}.ongoing-session-card__actions .ongoing-session-card__btn-complete,.ongoing-session-card__actions .ongoing-session-card__btn-cancel{flex:1 1 0;min-width:0}.ongoing-session-card__btn-complete{width:100%;min-height:44px;padding:.7rem .75rem;font-size:.88rem;font-weight:700;border-radius:10px;white-space:nowrap}.ongoing-session-card__btn-cancel{width:100%;min-height:44px;padding:.7rem .75rem;font-size:.88rem;font-weight:700;border-radius:10px;border:none;cursor:pointer;font-family:inherit;background:#fee2e2;color:#991b1b;transition:background .2s ease}.ongoing-session-card__btn-cancel:hover{background:#fecaca}.ongoing-session-card__person--compact{position:relative}.ongoing-session-card__preview{margin-bottom:.15rem}.ongoing-session-card__extra{margin-top:.25rem;padding-top:.35rem;border-top:1px dashed color-mix(in srgb,var(--border) 80%,transparent)}.ongoing-session-card__more-btn{display:inline-flex;align-items:center;justify-content:center;margin-top:.5rem;padding:.35rem .75rem;font-size:.75rem;font-weight:700;color:var(--primary);background:#eff6ff;border:1px solid color-mix(in srgb,var(--primary) 20%,var(--border));border-radius:999px;cursor:pointer;font-family:inherit;width:auto;min-height:32px;transition:background .15s ease}.ongoing-session-card__more-btn:hover{background:#dbeafe}.admin-data-mobile{display:none}.admin-data-desktop{display:block}.admin-mobile-card{background:#fff;border:1.5px solid var(--border);border-radius:14px;padding:.9rem 1rem;margin-bottom:.85rem;box-shadow:var(--shadow-sm)}.admin-mobile-card__head{display:flex;justify-content:space-between;align-items:flex-start;gap:.65rem;margin-bottom:.65rem}.admin-mobile-card__titles{min-width:0;flex:1}.admin-mobile-card__title{font-size:1rem;font-weight:700;margin:0;line-height:1.3;overflow-wrap:anywhere}.admin-mobile-card__subtitle{font-size:.8rem;color:var(--text-muted);margin:.2rem 0 0}.admin-mobile-card__status{flex-shrink:0}.admin-mobile-card__fields{display:grid;gap:.4rem;margin:0 0 .5rem}.admin-mobile-card__field{display:flex;justify-content:space-between;gap:.75rem;font-size:.82rem}.admin-mobile-card__field dt{color:var(--text-muted);font-weight:600;flex-shrink:0}.admin-mobile-card__field dd{margin:0;text-align:right;overflow-wrap:anywhere;word-break:break-word;color:var(--text)}.admin-mobile-card__more{display:inline-flex;margin-bottom:.65rem;padding:.35rem .85rem;font-size:.78rem;font-weight:700;color:var(--primary);background:#eff6ff;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));border-radius:999px;cursor:pointer;font-family:inherit}.admin-mobile-card__actions{display:flex;flex-direction:column;gap:.45rem;padding-top:.65rem;border-top:1px solid var(--border)}.admin-mobile-card__actions .btn,.admin-mobile-card__actions .btn-view,.admin-mobile-card__actions .btn-admin-delete{width:100%;justify-content:center;min-height:42px}.ongoing-session-card__started{font-size:.75rem;color:var(--text-muted)}.ongoing-assign-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:300;display:flex;align-items:center;justify-content:center;padding:1.25rem}.ongoing-assign-modal{background:#fff;border-radius:20px;padding:2rem;max-width:480px;width:100%;box-shadow:0 32px 80px #0003}.ongoing-assign-modal__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.ongoing-assign-modal__head h3{font-size:1.2rem}.ongoing-assign-modal__close{background:none;border:none;cursor:pointer;color:var(--muted);font-size:1.25rem;padding:.25rem}.ongoing-assign-modal .form-control{width:100%;padding:.65rem .75rem;border:1.5px solid var(--border);border-radius:8px;font-size:.9rem;background:var(--bg-soft)}.ongoing-assign-modal .required{color:#dc2626}.form-hint--warn{display:block;margin-top:.35rem;font-size:.8rem;color:#b45309}.ongoing-assign-modal__actions{display:flex;gap:.75rem;margin-top:.5rem}.success-alert-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:400;display:flex;align-items:center;justify-content:center;padding:1.25rem}.success-alert-dialog{background:#fff;border-radius:18px;padding:2rem 1.75rem;max-width:400px;width:100%;text-align:center;box-shadow:0 24px 64px #0000002e;animation:success-pop .25s ease}@keyframes success-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.success-alert-dialog__icon{width:56px;height:56px;margin:0 auto 1rem;border-radius:50%;background:#dcfce7;color:#166534;font-size:1.75rem;font-weight:800;display:flex;align-items:center;justify-content:center}.success-alert-dialog__title{font-size:1.15rem;margin-bottom:.5rem}.success-alert-dialog__message{color:var(--muted);font-size:.9rem;margin-bottom:1.25rem;line-height:1.5}.success-alert-dialog__btn{min-width:120px}.notify-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5000;display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:#0f172a73;animation:notify-fade-in .2s ease}.notify-popup-overlay--error{background:#0f172a8c}.notify-popup{background:#fff;border-radius:18px;padding:1.75rem 1.5rem 1.5rem;max-width:min(400px,100%);width:100%;text-align:center;box-shadow:0 24px 64px #0003;animation:notify-pop .28s cubic-bezier(.34,1.4,.64,1)}.notify-popup__icon{width:56px;height:56px;margin:0 auto 1rem;border-radius:50%;font-size:1.75rem;font-weight:800;display:flex;align-items:center;justify-content:center}.notify-popup__icon--success{background:#dcfce7;color:#166534}.notify-popup__icon--error{background:#fee2e2;color:#991b1b}.notify-popup__title{font-size:1.15rem;font-weight:700;margin-bottom:.5rem;color:var(--text)}.notify-popup__message{color:var(--text-muted);font-size:.92rem;margin-bottom:1.25rem;line-height:1.55;word-break:break-word}.notify-popup__btn{min-width:120px;width:100%;max-width:200px}@keyframes notify-fade-in{0%{opacity:0}to{opacity:1}}@keyframes notify-pop{0%{opacity:0;transform:scale(.9) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}@media(max-width:480px){.notify-popup-overlay{align-items:flex-end}.notify-popup{border-radius:20px 20px 0 0;max-width:100%}}@media(max-width:340px){.ongoing-session-card__body--reference{grid-template-columns:1fr}}.portal-mobile-bar{display:none}.portal-sidebar-backdrop{display:none;border:none;background:transparent;cursor:pointer}body.portal-nav-body-lock{overflow:hidden;overscroll-behavior:none}.portal-menu-toggle{flex-shrink:0;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--border);border-radius:10px;background:#fff;color:var(--text);font-size:1.15rem;cursor:pointer;box-shadow:var(--shadow-sm);transition:background .2s ease,border-color .2s ease}.portal-menu-toggle:hover{border-color:var(--primary-light);background:var(--bg-soft)}.portal-mobile-bar__title{font-size:1rem;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:1200px){.teachers-grid,.demo-grid,.loading-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.form-card-wide{padding:1.25rem}}@media(max-width:1024px){.portal-mobile-bar{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;padding:.5rem 0;position:sticky;top:0;z-index:200;background:#f8fafc;border-bottom:1px solid var(--border)}.portal-layout,.admin-layout{grid-template-columns:1fr!important}.portal-sidebar,.admin-sidebar.portal-sidebar{position:fixed;top:0;left:0;bottom:0;width:min(300px,88vw);max-height:100dvh;z-index:2600;transform:translate(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-top:max(1.25rem,var(--safe-top))!important;padding-bottom:max(1rem,var(--safe-bottom))!important;padding-left:max(1rem,var(--safe-left))!important}.portal-layout--nav-open .portal-sidebar{transform:translate(0);box-shadow:12px 0 48px #00000059}.portal-sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:2550;background:#0f172a8c;opacity:0;pointer-events:none;transition:opacity .25s ease}.portal-layout--nav-open .portal-sidebar-backdrop{opacity:1;pointer-events:auto}.portal-nav{flex-direction:column!important;flex-wrap:nowrap!important;max-height:none;overflow:visible}.portal-nav button{flex:none!important;min-width:0!important;width:100%}.admin-main,.portal-main{padding:1rem max(1rem,var(--safe-right)) 1.75rem max(1rem,var(--safe-left));min-width:0;width:100%}.portal-page-title,.admin-main h1{font-size:1.25rem;flex-wrap:wrap}.admin-stat-cards{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.admin-table-wrap{border-radius:var(--radius);-webkit-overflow-scrolling:touch}.subadmin-banner{font-size:.82rem}}@media(max-width:768px){.admin-detail-overlay{align-items:flex-end;padding:0;padding-bottom:var(--safe-bottom)}.admin-detail-panel{max-height:min(92dvh,92vh);padding:1.25rem 1rem 1.5rem;border-radius:20px 20px 0 0;margin:0;width:100%;max-width:100%}.admin-detail-row{grid-template-columns:1fr;gap:.2rem}.admin-detail-row dt{font-size:.75rem}.admin-status-actions__row .btn,.admin-status-actions__row .btn-view{flex:1 1 auto;min-width:calc(50% - .25rem)}.ongoing-assign-overlay,.success-alert-overlay{padding:max(1rem,var(--safe-top)) max(1rem,var(--safe-right)) max(1rem,var(--safe-bottom)) max(1rem,var(--safe-left));align-items:flex-end}.ongoing-assign-modal,.success-alert-dialog{max-height:90dvh;overflow-y:auto;border-radius:20px 20px 0 0;width:100%;max-width:100%}.ongoing-assign-modal__actions{flex-direction:column}.ongoing-assign-modal__actions .btn{width:100%}.admin-ongoing__assign-btn{width:100%;justify-content:center}.portal-toolbar,.portal-form .form-row,.message-card-head{flex-direction:column}.message-actions{flex-direction:column;align-items:stretch}.message-review-input{width:100%;min-width:0}.whatsapp-float{right:max(1rem,var(--safe-right));bottom:max(1rem,var(--safe-bottom))}}@media(max-width:480px){.admin-ongoing__toolbar{flex-direction:column;align-items:stretch}.admin-ongoing__search-wrap{max-width:none}.portal-mobile-bar__title{font-size:.92rem}}@media(min-width:1025px){.admin-table-wrap{overflow-x:auto}}.admin-overview{--dash-primary: #1746c8;--dash-green: #0ea271;--dash-orange: #f97316;--dash-red: #e53e3e;--dash-purple: #8b5cf6;width:100%;max-width:100%;min-width:0;overflow-x:hidden}.admin-overview__loading{text-align:center;padding:3.5rem 1rem;color:var(--text-muted)}.admin-overview__header{margin-bottom:1.75rem}.admin-overview__title{font-size:1.5rem;font-weight:800;margin-bottom:.25rem;color:var(--text)}.admin-overview__lead{color:var(--text-muted);font-size:.88rem}.admin-overview__stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:1.25rem;margin-bottom:2rem;width:100%}.admin-overview-stat{display:flex;align-items:flex-start;gap:1rem;width:100%;text-align:left;padding:1.35rem 1.2rem;background:#fff;border-radius:16px;border:1.5px solid var(--border);box-shadow:var(--shadow-sm);cursor:pointer;font-family:inherit;transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease}.admin-overview-stat:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:color-mix(in srgb,var(--stat-accent, var(--dash-primary)) 35%,var(--border))}.admin-overview-stat__icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:color-mix(in srgb,var(--stat-accent, var(--dash-primary)) 10%,transparent);color:var(--stat-accent, var(--dash-primary))}.admin-overview-stat__body{display:flex;flex-direction:column;min-width:0}.admin-overview-stat__label{font-size:.78rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.25rem}.admin-overview-stat__value{font-weight:800;font-size:2rem;line-height:1;color:var(--text);margin-bottom:.2rem}.admin-overview-stat__sub{font-size:.78rem;color:var(--text-muted)}.admin-overview__columns{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.admin-overview-panel{background:#fff;border-radius:16px;padding:1.5rem;border:1.5px solid var(--border);box-shadow:var(--shadow-sm)}.admin-overview-panel__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;gap:.75rem}.admin-overview-panel__head h3{font-size:1rem;font-weight:700;margin:0}.admin-overview-link{display:inline-flex;align-items:center;gap:.25rem;font-size:.78rem;color:var(--dash-primary);font-weight:600;background:none;border:none;cursor:pointer;font-family:inherit;padding:0;white-space:nowrap}.admin-overview-link:hover{text-decoration:underline}.admin-overview-pipeline{list-style:none;display:flex;flex-direction:column;gap:.75rem;margin:0;padding:0}.admin-overview-pipeline__row{display:flex;align-items:center;gap:.75rem;width:100%;padding:.65rem .85rem;border-radius:10px;background:var(--bg-soft);border:none;cursor:pointer;font-family:inherit;text-align:left;transition:background .15s ease}.admin-overview-pipeline__row:hover{background:var(--bg-muted)}.admin-overview-pipeline__icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.admin-overview-pipeline__label{flex:1;min-width:0;font-size:.85rem;font-weight:500;color:var(--text);overflow-wrap:anywhere;word-break:break-word;text-align:left}.admin-overview-pipeline__count{font-weight:800;font-size:1.1rem}.admin-overview-bar-block{margin-bottom:1.1rem}.admin-overview-bar-block__head{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:.4rem;padding:0;background:none;border:none;cursor:pointer;font-family:inherit;font-size:.83rem;font-weight:500;color:var(--text);text-align:left}.admin-overview-bar-block__head:hover span:first-child{color:var(--dash-primary)}.admin-overview-bar-block__pct{color:var(--text-muted);font-weight:400}.admin-overview-bar-track{height:8px;background:#f1f5f9;border-radius:100px;overflow:hidden}.admin-overview-bar-fill{height:100%;border-radius:100px;transition:width .6s ease}.admin-overview-panel__footer{border-top:1px solid var(--border);padding-top:1rem;margin-top:.25rem;display:flex;justify-content:space-between;align-items:center}.admin-overview-panel__footer span{font-size:.83rem;color:var(--text-muted)}.admin-overview-total{font-weight:800;font-size:1.3rem;color:var(--dash-primary)}.admin-overview-panel--actions h3{font-size:1rem;font-weight:700;margin:0 0 1.1rem}.admin-overview-actions{display:flex;flex-wrap:wrap;gap:.75rem}.admin-overview-action{padding:.65rem 1.25rem;border-radius:10px;font-weight:600;font-size:.85rem;border:1.5px solid color-mix(in srgb,var(--action-color) 15%,transparent);background:color-mix(in srgb,var(--action-color) 7%,transparent);color:var(--action-color);cursor:pointer;font-family:inherit;transition:background .15s ease,color .15s ease,border-color .15s ease}.admin-overview-action:hover{background:var(--action-color);color:#fff;border-color:var(--action-color)}.admin-overview-recent{margin-top:1.5rem}.admin-overview-recent .admin-overview-panel__head{margin-bottom:1rem}.admin-overview-recent h3{font-size:1rem;font-weight:700;margin:0}@media(max-width:900px){.admin-overview__columns{grid-template-columns:1fr}}@media(max-width:639px){.admin-overview-stat__value{font-size:1.5rem}}.auth-section{padding-top:0}.auth-card{max-width:440px;margin:0 auto}.auth-card__divider{display:flex;align-items:center;gap:.75rem;margin:1.25rem 0;color:var(--text-muted);font-size:.85rem}.auth-card__divider:before,.auth-card__divider:after{content:"";flex:1;height:1px;background:var(--border)}.auth-card__footer{margin-top:1.25rem;text-align:center;font-size:.9rem;color:var(--text-muted)}.auth-card__footer a{color:var(--primary);font-weight:700}.auth-card__footer--tight{margin-top:.75rem;font-size:.85rem}.page-hero--compact{padding:2rem 0 1.25rem}.page-hero--register{padding:1.35rem 0 1rem}.page-hero--register h1{font-size:clamp(1.25rem,5vw,1.65rem);margin:0}.portal-page-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem}.portal-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1.25rem}.portal-dash-card{background:#fff;border:1.5px solid var(--border);border-radius:16px;padding:1.25rem;box-shadow:var(--shadow-sm);min-width:0}.portal-dash-card--highlight{border-color:color-mix(in srgb,var(--primary) 25%,var(--border));background:linear-gradient(135deg,#eff6ff,#fff)}.portal-dash-card--track,.portal-dash-card--full{grid-column:1 / -1}.portal-dash-card--track{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:linear-gradient(135deg,#ecfdf5,#fff)}.portal-dash-card--track .btn{margin-top:.5rem}.portal-approval-banner{margin-bottom:1.25rem}.portal-form--locked{opacity:.92}.portal-form-fieldset{border:none;margin:0;padding:0;min-width:0}.portal-form-fieldset:disabled{opacity:.65;pointer-events:none}.portal-dash-card h3{font-size:1rem;margin-bottom:.75rem}.portal-dash-note{margin-top:.75rem;font-size:.88rem;line-height:1.5;color:var(--text-muted)}.portal-dash-meta{margin-top:.5rem;font-size:.88rem}.portal-dash-list{list-style:none;margin:0;padding:0}.portal-dash-list li{display:flex;justify-content:space-between;gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--border);font-size:.88rem}.portal-dash-list li span{color:var(--text-muted)}.portal-dash-feed{list-style:none;margin:0;padding:0}.portal-dash-feed li{padding:.65rem 0;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:.2rem;font-size:.88rem}.portal-dash-feed li span{color:var(--text-muted);font-size:.8rem}.portal-main{overflow-x:hidden}.portal-avatar-img{object-fit:cover;border-radius:50%;flex-shrink:0}.portal-avatar--lg{width:3.5rem;height:3.5rem;font-size:1.35rem}.portal-toolbar--teacher{align-items:flex-start}.portal-toolbar-profile{display:flex;gap:1rem;align-items:flex-start}.portal-profile-photo{padding:0 1rem 1rem;border-bottom:1px solid var(--border);margin-bottom:.5rem}.portal-profile-photo .profile-photo-upload__hint{font-size:.72rem}.profile-photo-upload{margin-bottom:1rem}.profile-photo-upload__label{font-size:.85rem;font-weight:600;margin-bottom:.5rem}.profile-photo-upload__row{display:flex;gap:1rem;align-items:flex-start;flex-wrap:wrap}.profile-photo-upload__preview{width:4.5rem;height:4.5rem;border-radius:50%;overflow:hidden;background:linear-gradient(180deg,#dbeafe,#eff6ff 55%,#fff);display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid color-mix(in srgb,var(--primary) 20%,#fff)}.profile-photo-upload__preview img{width:100%;height:100%;object-fit:cover}.profile-photo-upload__initial{font-size:1.5rem;font-weight:700;color:var(--primary)}.profile-photo-upload__actions{display:flex;flex-direction:column;gap:.35rem;align-items:flex-start;min-width:0;flex:1}.profile-photo-upload__hint{margin:.25rem 0 0;line-height:1.4}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.professional-team-section{padding-top:2rem;padding-bottom:2.5rem;background:#fff}.professional-team-title{text-align:center;font-size:clamp(1.35rem,4vw,1.75rem);font-weight:800;color:#111;margin:0 0 1.25rem;letter-spacing:-.02em}.professional-team-track{display:flex;gap:.65rem;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;padding:.25rem .5rem 1rem;margin:0 -.5rem;scrollbar-width:thin}.professional-team-lead{text-align:center;font-size:.88rem;margin:-.5rem 0 1rem}.professional-team-card{flex:0 0 auto;width:clamp(5.5rem,22vw,7.25rem);scroll-snap-align:start;text-align:center;border:none;padding:0;background:transparent;cursor:pointer;font:inherit;color:inherit;transition:transform var(--transition)}.professional-team-card:hover{transform:translateY(-3px)}.professional-team-card:focus-visible{outline:2px solid var(--primary);outline-offset:4px;border-radius:6px}.professional-team-photo-wrap{margin:0 auto .5rem;width:100%;aspect-ratio:3 / 4;max-height:7.5rem;border-radius:4px;overflow:hidden;background:radial-gradient(ellipse at 50% 30%,#3b82f6,#93c5fd 45%,#eff6ff 85%);box-shadow:0 2px 8px #0f172a14}.professional-team-photo{width:100%;height:100%;object-fit:cover;display:block}.professional-team-photo--placeholder{display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:800;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.15)}.professional-team-name{margin:0;font-size:clamp(.7rem,2.8vw,.82rem);font-weight:700;color:#dc2626;line-height:1.2}.professional-team-detail{margin:.15rem 0 0;font-size:clamp(.58rem,2.2vw,.68rem);color:#111;line-height:1.25}.professional-team-rule{height:3px;max-width:100%;margin:.5rem auto 0;background:#dc2626;border-radius:2px}@media(min-width:768px){.professional-team-track{justify-content:center;flex-wrap:nowrap;overflow-x:auto;gap:1rem;padding-bottom:.5rem}.professional-team-card{width:7.5rem}.professional-team-photo-wrap{max-height:8.5rem}}@media(min-width:1024px){.professional-team-track{gap:1.25rem}.professional-team-card{width:8.5rem}}.featured-teacher-modal{padding:1.35rem 1.25rem 1.5rem}.featured-teacher-modal__hero{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.15rem}.featured-teacher-modal__photo-wrap{flex-shrink:0;width:96px;height:120px;border-radius:10px;overflow:hidden;background:linear-gradient(145deg,#3b82f6,#93c5fd);box-shadow:var(--shadow-sm)}.featured-teacher-modal__photo{width:100%;height:100%;object-fit:cover;display:block}.featured-teacher-modal__photo--placeholder{display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:800;color:#fff}.featured-teacher-modal__intro{flex:1;min-width:0}.featured-teacher-modal__eyebrow{margin:0 0 .25rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--primary)}.featured-teacher-modal__intro h2{margin:0 0 .35rem;font-size:1.35rem;font-weight:800;line-height:1.2}.featured-teacher-modal__qual{margin:0 0 .2rem;font-size:.92rem;color:var(--text);font-weight:600}.featured-teacher-modal__exp{margin:0;font-size:.85rem;color:var(--text-muted)}.featured-teacher-modal__facts{display:grid;gap:.65rem;margin:0 0 1rem}.featured-teacher-modal__facts>div{display:grid;grid-template-columns:minmax(0,28%) 1fr;gap:.35rem .75rem;font-size:.88rem;padding-bottom:.55rem;border-bottom:1px solid var(--border)}.featured-teacher-modal__facts dt{margin:0;font-weight:600;color:var(--text-muted)}.featured-teacher-modal__facts dd{margin:0;font-weight:600;color:var(--text);word-break:break-word}.featured-teacher-modal__facts dd svg{vertical-align:-2px;margin-right:.15rem}.featured-teacher-modal__bio{margin:0 0 .85rem;font-size:.9rem;line-height:1.55;color:var(--text-muted)}.featured-teacher-modal__note{margin:0 0 1rem;font-size:.82rem;line-height:1.45}.featured-teacher-modal__actions{display:flex;flex-wrap:wrap;gap:.65rem}.featured-teacher-modal__actions .btn{width:100%}@media(max-width:520px){.featured-teacher-modal__hero{flex-direction:column;align-items:center;text-align:center}.featured-teacher-modal__photo-wrap{width:100%;max-width:200px;height:auto;aspect-ratio:3 / 4}.featured-teacher-modal__facts>div{grid-template-columns:1fr;gap:.15rem}.featured-teacher-modal__actions{flex-direction:column}.featured-teacher-modal__actions .btn{width:100%}}.admin-layout,.portal-layout{width:100%;max-width:100vw;overflow-x:hidden}.dashboard-content,.admin-overview,.admin-ongoing{width:100%;max-width:100%;min-width:0}.admin-table-wrap{max-width:100%;width:100%}.dash-w-full{width:100%;max-width:100%}.dash-max-w-full{max-width:100%}.dash-overflow-hidden{overflow:hidden}.dash-break-words{overflow-wrap:anywhere;word-break:break-word}.dash-flex-col{display:flex;flex-direction:column}.dash-flex-wrap{flex-wrap:wrap}.dash-gap-3{gap:var(--dash-gap-sm)}.dash-gap-6{gap:var(--dash-gap-lg)}.dashboard-btn-row{display:flex;flex-wrap:wrap;gap:.75rem;width:100%;max-width:100%}.dashboard-btn-row--sm{gap:.5rem}@media(max-width:639px){.admin-main,.portal-main{padding:var(--dash-pad-md) max(.75rem,var(--safe-right)) 1.5rem max(.75rem,var(--safe-left))}.portal-page-title,.admin-main h1,.admin-overview__title{font-size:1.15rem;line-height:1.35}.admin-overview__lead,.admin-welcome,.portal-dash-note{font-size:.82rem}.admin-overview__header{margin-bottom:.85rem}.admin-overview__title{font-size:1.05rem;font-weight:700}.admin-overview__lead{margin-top:.15rem;line-height:1.4}.admin-overview__stats-grid--kpi{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-bottom:1rem}.admin-overview-stat{flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:.75rem .5rem;gap:.35rem;border-radius:12px;min-height:0}.admin-overview-stat:hover{transform:none}.admin-overview-stat__icon{width:36px;height:36px;border-radius:10px;margin-bottom:.1rem}.admin-overview-stat__icon svg{width:18px;height:18px}.admin-overview-stat__body{align-items:center;width:100%}.admin-overview-stat__label{font-size:.62rem;letter-spacing:.05em;margin-bottom:.1rem;line-height:1.2}.admin-overview-stat__value{font-size:1.35rem;margin-bottom:.1rem}.admin-overview-stat__sub{font-size:.65rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:100%}.admin-overview-panel{padding:.85rem 1rem;border-radius:14px}.admin-overview-panel__head h3{font-size:.92rem}.admin-overview-panel__head{flex-wrap:wrap;align-items:flex-start;margin-bottom:.85rem}.portal-mobile-bar{margin-bottom:.65rem;padding:.25rem 0;background:#f8fafc;border-bottom:1px solid var(--border);margin-left:calc(-1*max(.75rem,var(--safe-left)));margin-right:calc(-1*max(.75rem,var(--safe-right)));padding-left:max(.75rem,var(--safe-left));padding-right:max(.75rem,var(--safe-right))}.admin-overview-pipeline__row{padding:.55rem .65rem;gap:.5rem}.admin-overview-pipeline__count{font-size:1rem;flex-shrink:0}.admin-overview-actions{flex-direction:column;gap:.5rem}.admin-overview-action{width:100%;text-align:center;padding:.75rem 1rem;font-size:.82rem}.admin-overview-total{font-size:1.15rem}.admin-stat-cards{grid-template-columns:1fr;gap:var(--dash-gap-sm)}.admin-stat-card{padding:1rem}.admin-stat-card strong{font-size:1.5rem}.admin-filter-bar{flex-direction:column;align-items:stretch;gap:.5rem}.admin-filter-bar label{width:100%}.admin-filter-bar select{width:100%;min-width:0;max-width:100%}.dashboard-content .btn:not(.portal-menu-toggle):not(.modal-close):not(.ongoing-assign-modal__close):not(.ongoing-session-card__btn-complete),.dashboard-content .btn-view,.dashboard-content .btn-admin-delete:not(.ongoing-session-card__btn-cancel),.dashboard-content .btn-whatsapp-sm,.admin-ongoing__assign-btn,.admin-ongoing__empty .btn,.portal-toolbar .btn,.dashboard-btn-row .btn,.dashboard-btn-row .btn-admin-delete{width:100%;max-width:100%;white-space:normal;text-align:center;justify-content:center}.student-dashboard-hero{padding:.85rem .9rem;margin-bottom:.75rem}.student-dashboard-hero__profile{gap:.75rem}.student-dashboard-hero__avatar{width:3.25rem;height:3.25rem;font-size:1.2rem}.student-dashboard-hero__name{font-size:1.1rem;margin-bottom:.3rem}.student-dashboard-hero__facts{font-size:.78rem}.student-dashboard-hero__fact--email{display:flex}.student-dashboard-hero__school{font-size:.8rem}.student-dashboard-hero__stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin-top:.7rem;padding-top:.65rem}.student-dashboard-hero__stat{padding:.45rem .3rem}.student-dashboard-hero__stat-value{font-size:1.1rem}.student-dashboard-hero__stat-label{font-size:.62rem}.student-portal-overview__grid{gap:.75rem;margin-bottom:.85rem}.student-portal-overview .teacher-track-status{padding:.85rem .9rem}.student-portal-overview .teacher-track-status__head h3{font-size:.92rem}.student-portal-overview .teacher-portal-details-preview .teacher-details-grid{grid-template-columns:1fr 1fr;gap:.5rem .75rem}.student-portal-overview .teacher-details-grid dt{font-size:.72rem}.student-portal-overview .teacher-details-grid dd{font-size:.82rem}.dashboard-btn-row{flex-direction:column}.portal-toolbar{flex-direction:column;align-items:stretch}.portal-toolbar>div{min-width:0;width:100%}.portal-toolbar .btn{align-self:stretch}.portal-page-head{flex-direction:column;align-items:stretch}.portal-page-head .btn{width:100%}.admin-ongoing__grid{grid-template-columns:1fr;gap:1.15rem}.ongoing-session-card{border-radius:14px}.ongoing-session-card__head{flex-wrap:wrap;padding:.75rem .85rem}.ongoing-session-card__days{font-size:.7rem;white-space:nowrap}.ongoing-session-card__tag{font-size:.68rem;padding:.18rem .55rem}.ongoing-session-card__body,.ongoing-session-card__body--reference{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:.75rem .65rem;gap:.5rem}.ongoing-session-card__person{width:100%;padding:.65rem .55rem}.ongoing-session-card__person-label{margin-bottom:.45rem;font-size:.58rem;gap:.35rem}.ongoing-session-card__avatar{width:26px;height:26px;font-size:.8rem}.ongoing-session-card__name{font-size:.82rem;margin-bottom:.3rem;line-height:1.25}.ongoing-session-card__meta-row{font-size:.68rem;margin-bottom:.2rem;gap:.35rem}.ongoing-session-card__meta-icon{width:.95rem;font-size:.72rem}.ongoing-session-card__notes{padding:0 .85rem .65rem;font-size:.8rem}.ongoing-session-card__foot{flex-direction:column;align-items:stretch;padding:.75rem .65rem .85rem;gap:.65rem;border-radius:0 0 14px 14px}.ongoing-session-card__foot-info{width:100%}.ongoing-session-card__actions{display:grid!important;grid-template-columns:1fr 1fr;gap:.45rem;width:100%!important;min-width:0!important;flex:none!important}.ongoing-session-card__btn-complete,.ongoing-session-card__btn-cancel{display:inline-flex!important;width:100%!important;min-height:42px!important;font-size:.8rem;padding:.6rem .5rem!important}.admin-tab-sessions .portal-page-title{display:none}.admin-ongoing__title{font-size:1.05rem;margin-bottom:.15rem}.admin-ongoing__subtitle{font-size:.78rem}.admin-ongoing__toolbar{margin-bottom:1rem;gap:.65rem}.admin-ongoing__search-card{padding:.85rem 1rem}.admin-ongoing__search-wrap{max-width:none;width:100%}.admin-table--cards tbody td{flex-direction:column;align-items:flex-start;text-align:left;gap:.25rem}.admin-table--cards tbody td:before{max-width:100%;margin-bottom:.15rem}.admin-table--cards tbody td>*{text-align:left;width:100%}.admin-table--cards .admin-actions{flex-direction:column;align-items:stretch;width:100%}.admin-table--cards .admin-actions .btn,.admin-table--cards .admin-actions .btn-view,.admin-table--cards .admin-actions a{width:100%}.type-badge{max-width:100%;overflow-wrap:anywhere}.admin-status-actions__row{flex-direction:column}.admin-status-actions__row .btn,.admin-status-actions__row .btn-view,.admin-status-actions__row .btn-admin-delete{width:100%;min-width:0}.teacher-card,.demo-card{min-width:0;max-width:100%}.teacher-card-body,.demo-card-body{min-width:0}.teachers-grid,.demo-grid,.portal-dashboard-grid,.admin-ongoing__grid{grid-template-columns:1fr}.portal-dash-list li{flex-direction:column;align-items:flex-start;gap:.2rem}.chip-group{gap:.4rem}.chip{font-size:.8rem;padding:.4rem .65rem}.avail-chips{flex-wrap:wrap}.form-card-wide.portal-form,.admin-payment-settings .form-card{padding:1rem;max-width:100%}.message-actions .btn,.message-actions .btn-whatsapp-sm{width:100%}.subadmin-banner{padding:.75rem;font-size:.78rem;line-height:1.45}.admin-detail-panel{padding:1.15rem 1rem}.admin-detail-row dd{overflow-wrap:anywhere;word-break:break-word}.admin-teacher-pricing .form-row{grid-template-columns:1fr}}@media(min-width:640px)and (max-width:1023px){.admin-main,.portal-main{padding:1.25rem 1.25rem 1.75rem}.admin-overview__stats-grid--kpi{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--dash-gap-md)}.admin-overview-stat{flex-direction:row;align-items:center;text-align:left;padding:1rem;gap:.85rem}.admin-overview-stat__body{align-items:flex-start}.admin-overview-stat__icon{width:44px;height:44px;margin-bottom:0}.admin-overview-stat__value{font-size:1.65rem}.admin-overview__stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--dash-gap-md)}.admin-overview__columns{grid-template-columns:1fr;gap:var(--dash-gap-md)}.admin-stat-cards,.admin-ongoing__grid,.teachers-grid,.demo-grid,.portal-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-btn-row{flex-direction:row}.dashboard-btn-row .btn{width:auto;flex:1 1 auto;min-width:min(100%,140px)}.admin-overview-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-overview-action{width:100%;text-align:center}.ongoing-session-card__body{grid-template-columns:1fr 1fr;gap:.85rem}.admin-ongoing__grid{grid-template-columns:1fr}}@media(max-width:639px){.admin-data-mobile{display:block}.admin-data-desktop{display:none}}@media(max-width:639px){.dashboard-content .portal-page-title{font-size:1.1rem;margin-bottom:.65rem;gap:.35rem}.dashboard-content .admin-welcome{font-size:.82rem;margin-bottom:1rem;line-height:1.45}.dashboard-content .admin-table--cards tbody tr{padding:.85rem;border-radius:12px}.dashboard-content .admin-overview-recent{margin-top:1rem}.dashboard-content .admin-overview-recent .admin-table-wrap{margin-top:.5rem}.admin-detail-panel h3{font-size:1.05rem}.message-card{padding:.85rem}.form-card.portal-form{margin-bottom:1.25rem}}@media(min-width:1024px){.admin-overview__stats-grid--kpi{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-overview-stat{flex-direction:row;align-items:flex-start;text-align:left;padding:1.35rem 1.2rem;gap:1rem}.admin-overview-stat__body{align-items:flex-start}.admin-overview-stat__icon{width:52px;height:52px;margin-bottom:0}.admin-overview-stat__value{font-size:2rem}.admin-overview-stat__sub{display:block;-webkit-line-clamp:unset}.admin-overview__stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-overview__columns{grid-template-columns:1fr 1fr}.admin-ongoing__grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}.dashboard-btn-row .btn{width:auto}}.admin-overview-stat,.admin-overview-panel,.admin-stat-card,.ongoing-session-card,.teacher-card,.demo-card,.portal-dash-card,.portal-nav button,.portal-sidebar{transition:padding .2s ease,gap .2s ease,box-shadow .2s ease,transform .2s ease,grid-template-columns .25s ease}@media(prefers-reduced-motion:reduce){.admin-overview-stat,.ongoing-session-card,.portal-sidebar{transition:none}}#root{min-width:0;overflow-x:clip}main{min-width:0;overflow-x:clip}.page-loading-center{padding:3rem 1rem;text-align:center}@media(max-width:639px){.page-loading-center{padding:2rem 1rem}}.teachers-grid,.demo-grid,.loading-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}@media(max-width:639px){:root{--header-height: 64px}.container{padding-left:max(.85rem,var(--safe-left));padding-right:max(.85rem,var(--safe-right))}.section{padding:2.75rem 0}.logo{font-size:1.1rem;gap:.5rem;min-width:0}.logo span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:42vw}.logo-icon{width:38px;height:38px;font-size:1.1rem;border-radius:12px;flex-shrink:0}.header-inner{gap:.5rem}.hero{padding:2.25rem 0 2.75rem}.hero h1{font-size:clamp(1.45rem,7vw,2rem);line-height:1.2}.hero .tagline{font-size:1rem}.hero-desc{font-size:.95rem;margin-bottom:1.5rem}.hero-buttons{flex-direction:column;align-items:stretch;gap:.65rem;margin-bottom:1.75rem}.hero-buttons .btn{width:100%;justify-content:center;margin:0}.hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem .75rem;padding-top:1.5rem;text-align:center}.hero-stat strong{font-size:1.35rem}.hero-visual{max-width:100%;padding:0 .25rem}.hero-float-card-1{left:.5rem;bottom:.5rem;max-width:calc(100% - 1rem)}.hero-float-card-2{right:.5rem;top:.5rem;max-width:calc(100% - 1rem)}.hero-float-card{padding:.75rem 1rem;font-size:.85rem}.features-grid{gap:1rem}.feature-card{padding:1.35rem 1.15rem}.cta-strip{padding:2.5rem 0}.cta-strip-actions{flex-direction:column;width:100%;align-items:stretch}.cta-strip-actions .btn{width:100%;justify-content:center}.page-hero{padding:2.25rem 0}.page-hero--register{padding:1rem 0 .75rem}.page-hero--register h1{font-size:1.2rem}.form-page--register{padding:.5rem 0 2rem}.form-card--stepper{padding:1rem .85rem 1.15rem}.form-subtitle--tight{margin-bottom:.65rem;font-size:.84rem}.reg-stepper__meta{margin-bottom:.55rem}.reg-stepper__head{margin-bottom:.65rem}.reg-stepper__title{font-size:1.05rem}.reg-stepper__subtitle{font-size:.84rem}.reg-stepper__body .form-group{margin-bottom:.75rem}.reg-stepper__nav{margin-top:.85rem;padding-top:.65rem}.form-group label{margin-bottom:.3rem}.form-group input,.form-group select,.form-group textarea{padding:.7rem .85rem}.form-group textarea{min-height:88px}.page-hero h1{font-size:clamp(1.35rem,6vw,1.85rem)}.page-hero p,.page-hero-lead{font-size:.92rem;padding:0 .25rem}.teachers-toolbar:not(.teachers-toolbar--filter){flex-direction:column;align-items:stretch;gap:.75rem}.teachers-toolbar:not(.teachers-toolbar--filter) .btn{width:100%;justify-content:center}.teachers-toolbar:not(.teachers-toolbar--filter) .teachers-count{font-size:1rem;text-align:center}.info-banner{padding:1rem;font-size:.88rem;flex-direction:column;align-items:flex-start}.teacher-card:hover,.demo-card:hover{transform:none}.teacher-card-body{padding:2.75rem 1.15rem 1.25rem;min-width:0}.teacher-badges .teacher-badge,.tag-list .tag{max-width:100%;overflow:hidden;text-overflow:ellipsis}.demo-package-options{grid-template-columns:1fr}.demo-package-option{width:100%}.booking-steps{gap:.5rem;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.25rem;flex-wrap:nowrap;margin-left:-.25rem;margin-right:-.25rem;padding-left:.25rem;padding-right:.25rem}.booking-step-indicator small{font-size:.68rem;text-align:center;max-width:4.5rem}.booking-success-actions{flex-direction:column;align-items:stretch}.booking-success-actions .btn{width:100%}.chip-group{gap:.4rem}.chip{max-width:100%;word-break:break-word;text-align:center;justify-content:center}.modal-overlay{align-items:flex-end;padding:0;padding-bottom:var(--safe-bottom)}.modal-card,.modal-card-wide{width:100%;max-width:100%;max-height:min(92dvh,92vh);overflow-y:auto;border-radius:20px 20px 0 0;margin:0;padding:1.25rem 1rem 1.5rem}.form-card-wide{padding:1.15rem 1rem}.breadcrumb{font-size:.8rem;padding:.45rem 0}.footer{padding:1.75rem 0 0}.footer-grid{gap:1rem;padding-bottom:1.25rem}.footer .logo{margin-bottom:.5rem}.footer-about{margin-bottom:.65rem;font-size:.88rem;line-height:1.5}.footer-contact p{margin-bottom:.3rem;font-size:.85rem}.footer h4{margin:0 0 .45rem;font-size:.92rem}.footer-links a{padding:.12rem 0;font-size:.88rem}.footer-bottom{padding:1rem 0;font-size:.8rem}.social-icons--footer{gap:.4rem}.social-icons--footer .social-icon{width:30px;height:30px;border-radius:7px}.social-icons--footer .social-icon__glyph,.social-icons--footer .social-icon svg{width:15px!important;height:15px!important}.whatsapp-float{right:max(.65rem,var(--safe-right));bottom:max(.65rem,var(--safe-bottom));width:42px;height:42px;border-radius:11px}.whatsapp-float__icon{width:19px;height:19px}.auth-card{margin-left:auto;margin-right:auto;width:100%}.portal-login-tabs{flex-direction:column}.portal-login-tabs button{width:100%}}@media(max-width:380px){.hero-stats{grid-template-columns:1fr}}@media(min-width:640px)and (max-width:1023px){.hero-buttons .btn-lg{padding:.75rem 1.25rem;font-size:.95rem}}
