/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}}:root{--ink:#241733;--cream:#f7f3ed;--paper:#fffdf8;--blue:#6b35ad;--deep-blue:#45216f;--yellow:#dff2a9;--coral:#a875d1;--mint:#ddf4c7;--line:#4327582e;--serif:Georgia, "Times New Roman", serif;--cjk-sans:"Noto Sans KR", "Noto Sans JP", "Apple SD Gothic Neo", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Malgun Gothic", sans-serif;--sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--cream);font-family:var(--sans);margin:0;line-height:1.5}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}::selection{background:var(--yellow);color:var(--ink)}.site-header{z-index:50;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f7f3edf0;grid-template-columns:minmax(190px,1fr) auto minmax(330px,1fr);align-items:center;min-height:78px;padding:0 4.5vw;display:grid;position:sticky;top:0}.brand{letter-spacing:-.03em;align-items:center;gap:11px;width:fit-content;font-weight:800;display:inline-flex}.brand-mark{background:var(--blue);color:#fff;width:34px;height:34px;font-family:var(--serif);border-radius:50% 48% 44% 56%;place-items:center;font-size:20px;font-style:italic;display:grid}.desktop-nav{gap:24px;font-size:13px;font-weight:650;display:flex}.desktop-nav a{position:relative}.desktop-nav a:after{background:var(--blue);content:"";height:2px;transition:transform .18s;position:absolute;bottom:-7px;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{transform:scaleX(1)}.header-actions{justify-self:end;align-items:center;gap:20px;display:flex}.language-switcher{border:1px solid var(--line);background:var(--paper);border-radius:999px;gap:3px;padding:3px;display:flex}.language-switcher button{width:30px;height:30px;color:var(--ink);cursor:pointer;font:750 10px/1 var(--sans);background:0 0;border:0;border-radius:50%;place-items:center;transition:background .16s,color .16s;display:grid}.language-switcher button:hover{background:#6b35ad1a}.language-switcher button[aria-pressed=true]{background:var(--blue);color:#fff}.language-switcher button:focus-visible{outline:2px solid var(--deep-blue);outline-offset:2px}.header-cta{white-space:nowrap;border-bottom:1px solid;font-size:13px;font-weight:750}.header-cta span{margin-left:5px}.header-login{color:var(--blue);white-space:nowrap;font-size:11px;font-weight:800}.hero{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);min-height:calc(100svh - 78px);display:grid;overflow:hidden}.hero-copy{flex-direction:column;justify-content:center;padding:8vw 5vw 6vw 7vw;display:flex}.eyebrow{color:var(--deep-blue);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:10px;margin:0 0 28px;font-size:12px;font-weight:850;display:flex}.dot{background:var(--coral);width:9px;height:9px;box-shadow:14px 0 0 var(--yellow);border-radius:50%;margin-right:14px;display:inline-block}.hero h1{max-width:790px;font-family:var(--serif);letter-spacing:-.067em;margin:0;font-size:clamp(4rem,7vw,7.4rem);font-weight:400;line-height:.86}.hello-line{color:var(--ink);font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px;font-size:.21em;font-weight:850;line-height:1.2;display:block}.hero h1 em{color:var(--blue);font-weight:400;display:inline-block;position:relative}.hero h1 em:after{z-index:-1;background:var(--yellow);content:"";opacity:.85;border-radius:50%;height:20%;position:absolute;bottom:-8%;left:2%;right:-2%;transform:rotate(-2deg)}html[lang=ko] .hero h1,html[lang=ja] .hero h1,html[lang=zh] .hero h1{font-family:var(--cjk-sans);letter-spacing:-.04em;line-height:1.03}html[lang=ko] .hero h1 em,html[lang=ja] .hero h1 em,html[lang=zh] .hero h1 em{padding:.06em 0 .12em;font-style:normal;line-height:1.08}html[lang=ko] .hero h1 em:after,html[lang=ja] .hero h1 em:after,html[lang=zh] .hero h1 em:after{bottom:0}.hero-lede{max-width:610px;margin:34px 0 0;font-size:clamp(1.05rem,1.7vw,1.34rem);line-height:1.6}.hero-actions{align-items:center;gap:32px;margin-top:38px;display:flex}.button{border:1px solid #0000;justify-content:space-between;align-items:center;gap:28px;min-height:54px;padding:0 22px;font-size:14px;font-weight:800;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.button:hover,.button:focus-visible{transform:translateY(-3px);box-shadow:0 7px #17201d2e}.button-primary{background:var(--blue);color:#fff}.button-primary:hover{background:var(--deep-blue)}.text-link{border-bottom:1px solid var(--ink);font-size:14px;font-weight:750}.text-link span{padding-left:6px}.trust-row{border-top:1px solid var(--line);gap:clamp(28px,4vw,70px);margin-top:64px;padding-top:24px;display:flex}.trust-row div{flex-direction:column;display:flex}.trust-row strong{font-family:var(--serif);font-size:29px;line-height:1}.trust-row span{color:#5f6764;letter-spacing:.08em;text-transform:uppercase;margin-top:7px;font-size:11px;font-weight:700}.hero-visual{background:var(--mint);place-items:center;display:grid;position:relative;overflow:hidden}.hero-visual:before{aspect-ratio:1;content:"";border:1px solid #193bae2e;border-radius:50%;width:70%;position:absolute}.orbit{border:1px solid #193bae47;border-radius:50%;position:absolute}.orbit-one{aspect-ratio:1;width:88%;transform:rotate(12deg)}.orbit-two{width:115%;height:55%;transform:rotate(-31deg)}.portrait-card{z-index:2;border:1px solid var(--ink);background:var(--paper);width:min(59%,420px);box-shadow:14px 15px 0 var(--deep-blue);padding:12px 12px 0;position:absolute;top:8%;left:7%;transform:rotate(-3deg)}.portrait-card img{aspect-ratio:1;border:1px solid var(--line);object-fit:cover;width:100%;height:auto;display:block}.portrait-caption{justify-content:space-between;align-items:center;gap:14px;padding:13px 2px 12px;display:flex}.portrait-caption strong{font-family:var(--serif);font-size:15px;font-style:italic}.portrait-caption span{color:#685d70;letter-spacing:.06em;text-align:right;text-transform:uppercase;font-size:9px;font-weight:850}.lesson-card{z-index:4;border:1px solid var(--ink);background:var(--paper);width:min(54%,375px);box-shadow:11px 12px 0 var(--blue);padding:24px;position:absolute;bottom:7%;right:6%;transform:rotate(2.5deg)}.card-topline{border-bottom:1px solid var(--line);color:#616966;letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;padding-bottom:18px;font-size:11px;font-weight:800;display:flex}.live-pill{background:var(--yellow);color:var(--ink);border-radius:999px;padding:4px 9px}.lesson-card h2{font-family:var(--serif);letter-spacing:-.04em;margin:20px 0;font-size:clamp(1.65rem,2.6vw,2.7rem);font-weight:400;line-height:.98}.lesson-list{gap:10px;display:grid}.lesson-list>div{border-top:1px solid var(--line);align-items:center;gap:13px;padding:8px 0;display:flex}.check{background:var(--yellow);width:36px;height:36px;font-family:var(--serif);border-radius:50%;flex:0 0 36px;place-items:center;font-weight:800;display:grid}.check.coral{background:var(--coral);color:#fff;font-size:13px}.check.blue{background:var(--blue);color:#fff}.lesson-list p{flex-direction:column;margin:0;display:flex}.lesson-list strong{font-size:14px}.lesson-list small{color:#68716d;font-size:12px}.lesson-footer{border-top:1px solid var(--ink);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;margin-top:20px;padding-top:15px;font-size:10px;font-weight:850;display:flex}.word-card{z-index:4;border:1px solid var(--ink);background:var(--coral);color:#fff;box-shadow:5px 5px 0 var(--ink);font-family:var(--serif);padding:11px 17px;font-size:20px;font-style:italic;position:absolute}.word-one{top:12%;right:5%;transform:rotate(8deg)}.word-two{background:var(--yellow);color:var(--ink);font-family:var(--sans);font-size:12px;font-style:normal;font-weight:800;bottom:8%;left:3%;transform:rotate(-5deg)}.spark{z-index:2;color:var(--blue);font-size:42px;position:absolute}.spark-one{top:10%;left:14%}.spark-two{font-size:28px;bottom:12%;right:9%}.language-strip{background:var(--yellow);text-align:center;justify-content:center;align-items:center;min-height:86px;padding:20px 5vw;display:flex}.language-strip strong{font-family:var(--serif);font-size:clamp(1rem,1.8vw,1.5rem);font-style:italic;font-weight:400}.section{padding:120px 7vw}.section-label{color:var(--blue);letter-spacing:.14em;text-transform:uppercase;margin-bottom:52px;font-size:11px;font-weight:850}.section-label.light{color:var(--yellow)}.about{background:var(--paper)}.about-grid{grid-template-columns:1fr 1fr;gap:10vw;display:grid}.about-title h2,.approach-heading h2,.method h2,.pricing h2,.faq h2,.booking h2{font-family:var(--serif);letter-spacing:-.055em;margin:0;font-size:clamp(3rem,5.5vw,6rem);font-weight:400;line-height:.98}.scribble{border:2px solid var(--coral);width:fit-content;color:var(--coral);font-family:var(--serif);border-radius:50%;margin:45px 0 0 9%;padding:7px 19px;font-size:17px;font-style:italic;transform:rotate(-6deg)}.about-copy{padding-top:7px}.about-copy p{color:#505956;max-width:650px;font-size:16px;line-height:1.85}.about-copy .large-copy{color:var(--ink);font-family:var(--serif);margin-top:0;font-size:clamp(1.6rem,2.3vw,2.35rem);line-height:1.35}.mini-values{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:18px;margin-top:46px;padding-top:20px;display:grid}.mini-values span{flex-direction:column;gap:8px;font-size:12px;font-weight:750;display:flex}.mini-values b{color:var(--coral);font-size:10px}.approach{background:var(--blue);color:#fff}.approach-heading{grid-template-columns:1.2fr .65fr;align-items:end;gap:8vw;display:grid}.approach-heading p{color:#ffffffbf;margin:0 0 8px;font-size:17px;line-height:1.75}.learner-grid{border-top:1px solid #ffffff47;border-bottom:1px solid #ffffff47;grid-template-columns:repeat(3,1fr);margin-top:75px;display:grid}.learner-grid article{border-right:1px solid #ffffff47;min-height:390px;padding:30px clamp(25px,3vw,48px) 45px;position:relative}.learner-grid article:last-child{border-right:0}.number{color:#ffffff8c;font-size:10px;font-weight:800}.learner-icon{width:92px;height:92px;color:var(--ink);font-family:var(--serif);place-items:center;margin:50px 0 38px;font-size:32px;font-weight:800;display:grid}.sun{background:var(--yellow);border-radius:50%}.coral-shape{background:var(--coral);color:#fff;border-radius:15px 60px 20px;transform:rotate(8deg)}.arch{background:var(--mint);border-radius:46px 46px 0 0}.learner-grid h3{font-family:var(--serif);margin:0 0 14px;font-size:28px;font-weight:400}.learner-grid p{color:#ffffffb8;margin:0;font-size:14px;line-height:1.7}.method{background:var(--cream)}.method-intro{grid-template-columns:1fr .7fr;align-items:end;gap:10vw;display:grid}.kicker{color:var(--coral);letter-spacing:.12em;text-transform:uppercase;margin:0 0 20px;font-size:11px;font-weight:850}.method h2{color:var(--blue)}.method-lede{color:#665b6e;max-width:650px;margin:0 0 8px;font-size:17px;line-height:1.75}.lesson-options{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:70px;display:grid}.lesson-options article{border:1px solid var(--ink);background:var(--paper);flex-direction:column;min-height:370px;padding:31px;display:flex;position:relative;overflow:hidden}.lesson-options article:nth-child(2){background:var(--mint)}.lesson-options article:nth-child(3){background:#eee5f8}.option-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-bottom:20px;display:flex}.option-top>span{color:var(--blue);font-family:var(--serif);font-size:20px;font-style:italic}.option-top small{background:var(--yellow);letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:850}.lesson-options article:nth-child(2) .option-top small{background:var(--blue);color:#fff}.lesson-options h3{z-index:2;max-width:310px;font-family:var(--serif);letter-spacing:-.035em;margin:34px 0 18px;font-size:clamp(1.7rem,2.3vw,2.5rem);font-weight:400;line-height:1.05;position:relative}.lesson-options p{z-index:2;color:#625a68;max-width:360px;margin:0;font-size:14px;line-height:1.75;position:relative}.option-mark{color:#6b35ad17;font-family:var(--serif);font-size:150px;line-height:1;position:absolute;bottom:-43px;right:-8px}.steps{margin:0;padding:0;list-style:none}.steps li{border-top:1px solid var(--line);grid-template-columns:70px 1fr;gap:18px;padding:30px 0;display:grid}.steps li:last-child{border-bottom:1px solid var(--line)}.steps>li>span{color:var(--coral);font-family:var(--serif);font-size:22px;font-style:italic}.steps h3{font-family:var(--serif);margin:0 0 8px;font-size:24px;font-weight:400}.steps p{color:#606966;margin:0;font-size:14px;line-height:1.7}.pricing{background:var(--paper)}.pricing-intro{text-align:center}.pricing-intro .section-label{margin-bottom:30px}.pricing-intro h2{max-width:850px;margin:0 auto}.pricing-intro>p{color:#626a67}.pricing-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:70px;display:grid}.price-card{border:1px solid var(--ink);background:var(--cream);flex-direction:column;min-height:570px;padding:38px;display:flex;position:relative}.price-card.featured{background:var(--yellow);box-shadow:9px 9px 0 var(--ink);transform:translateY(-12px)}.best-value{background:var(--blue);color:#fff;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:6px 10px;font-size:9px;font-weight:850;position:absolute;top:18px;right:18px}.plan-name{color:#565f5b;letter-spacing:.1em;text-transform:uppercase;margin:0 0 18px;font-size:12px;font-weight:850}.price{font-family:var(--serif);letter-spacing:-.06em;margin:0;font-size:70px;line-height:1}.per-lesson{color:#5d6662;margin:10px 0 0;font-size:13px;font-weight:700}.price-details{border-top:1px solid var(--line);gap:10px;margin-top:38px;padding-top:24px;display:grid}.price-details p{gap:10px;margin:0;font-size:13px;display:flex}.price-details span{color:var(--blue);font-weight:900}.plan-note{color:#616a66;font-family:var(--serif);margin:28px 0;font-size:17px;font-style:italic}.price-button{border-color:var(--ink);background:0 0;width:100%;margin-top:auto}.featured .price-button{background:var(--ink);color:#fff}.pricing-footnote{color:#707875;text-align:center;margin:35px 0 0;font-size:11px}.faq{background:var(--cream);grid-template-columns:.7fr 1fr;gap:11vw;display:grid}.faq .section-label{margin-bottom:34px}.faq-list{border-top:1px solid var(--ink)}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-family:var(--serif);justify-content:space-between;align-items:center;gap:20px;padding:25px 0;font-size:21px;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary span{color:var(--blue);font-family:var(--sans);font-size:25px;transition:transform .16s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{color:#5b6460;margin:-8px 45px 25px 0;font-size:14px;line-height:1.75}.booking{background:var(--mint);color:var(--ink);grid-template-columns:1fr auto;align-items:end;gap:6vw;padding:110px 7vw;display:grid;position:relative;overflow:hidden}.booking-copy{z-index:2;max-width:860px;position:relative}.eyebrow.pale{color:var(--ink)}.eyebrow.pale .dot{background:var(--blue)}.booking-copy>p:last-child{max-width:670px;margin:28px 0 0;font-size:17px}.booking-action{z-index:2;flex-direction:column;gap:12px;width:270px;display:flex;position:relative}.booking-button{background:var(--paper);width:100%}.booking-action small{opacity:.75;line-height:1.45}.booking-word{color:#ffffff2e;font-family:var(--serif);white-space:nowrap;font-size:clamp(6rem,14vw,13rem);font-style:italic;position:absolute;bottom:-10%;right:4%;transform:rotate(-5deg)}footer{background:var(--ink);color:#fff;grid-template-columns:1fr auto 1fr;align-items:center;gap:25px;padding:35px 5vw;font-size:11px;display:grid}.footer-brand{color:#fff;font-size:14px}footer>p:first-of-type{color:#ffffffa6}footer>p:last-child{color:#ffffffa6;justify-self:end}.registration-page{background:#f4f0e9;min-height:100svh}.registration-header{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;min-height:76px;padding:0 4.5vw;display:flex}.registration-progress{background:#e4dce8;height:4px}.registration-progress span{background:var(--blue);height:100%;transition:width .32s;display:block}.registration-shell{border:1px solid var(--ink);background:var(--paper);grid-template-columns:350px minmax(0,1fr);width:min(1260px,100% - 48px);min-height:720px;margin:46px auto 70px;display:grid;box-shadow:14px 14px #45216f1f}.registration-sidebar{background:var(--deep-blue);color:#fff;flex-direction:column;padding:38px 32px 30px;display:flex}.registration-back{border-bottom:1px solid #ffffff73;align-items:center;gap:9px;width:fit-content;margin-bottom:54px;font-size:11px;font-weight:750;display:inline-flex}.registration-eyebrow{color:var(--yellow);letter-spacing:.12em;text-transform:uppercase;margin:0 0 16px;font-size:10px;font-weight:850}.registration-sidebar h1{font-family:var(--serif);letter-spacing:-.045em;margin:0;font-size:39px;font-weight:400;line-height:1.02}.registration-intro{color:#ffffffb3;margin:20px 0 0;font-size:13px;line-height:1.7}.registration-steps{gap:0;margin:46px 0 35px;padding:0;list-style:none;display:grid}.registration-steps li{color:#ffffff73;align-items:center;gap:13px;min-height:58px;font-size:12px;display:flex;position:relative}.registration-steps li:not(:last-child):after{content:"";background:#fff3;width:1px;position:absolute;top:42px;bottom:-7px;left:15px}.registration-steps li>span{z-index:2;border:1px solid #ffffff59;border-radius:50%;flex:0 0 31px;place-items:center;width:31px;height:31px;font-size:10px;display:grid;position:relative}.registration-steps li.active{color:#fff}.registration-steps li.active>span{border-color:var(--yellow);background:var(--yellow);color:var(--ink)}.registration-steps li.complete{color:#ffffffbf}.registration-steps li.complete>span{border-color:var(--mint);background:var(--mint);color:var(--ink)}.registration-teacher{border-top:1px solid #fff3;align-items:center;gap:12px;margin-top:auto;padding-top:23px;display:flex}.registration-teacher img{border:2px solid var(--mint);object-fit:cover;border-radius:50%;width:52px;height:52px}.registration-teacher div{flex-direction:column;display:flex}.registration-teacher strong{font-family:var(--serif);font-size:15px;font-style:italic}.registration-teacher span{color:#ffffff8c;letter-spacing:.05em;text-transform:uppercase;margin-top:3px;font-size:9px;font-weight:750}.registration-card{padding:58px clamp(34px,5vw,78px) 52px}.form-heading{grid-template-columns:46px 1fr;align-items:start;gap:18px;margin-bottom:40px;display:grid}.form-heading>span{background:var(--mint);width:42px;height:42px;color:var(--deep-blue);font-family:var(--serif);border-radius:50%;place-items:center;font-size:16px;font-style:italic;display:grid}.form-heading h2,.payment-placeholder h2{color:var(--ink);font-family:var(--serif);letter-spacing:-.045em;margin:0;font-size:clamp(2rem,3.5vw,3.4rem);font-weight:400;line-height:1.05}.form-heading p{color:#736a78;margin:9px 0 0;font-size:12px;line-height:1.65}.plan-selector{border:1px solid var(--ink);background:var(--yellow);grid-template-columns:1fr minmax(220px,300px);align-items:center;gap:22px;margin-bottom:34px;padding:18px 20px;display:grid}.plan-selector>span{font-family:var(--serif);font-size:18px;font-style:italic}.form-grid{grid-template-columns:1fr 1fr;gap:24px 20px;display:grid}.form-grid label,.code-field{flex-direction:column;gap:8px;display:flex}.form-grid label>span:first-child,.code-field>span,.plan-selector>span:first-child{letter-spacing:.07em;text-transform:uppercase;font-size:10px;font-weight:850}.form-grid input,.form-grid select,.plan-selector select,.code-field input{width:100%;min-height:48px;color:var(--ink);font:500 14px/1.3 var(--sans);background:#fff;border:1px solid #b9aebe;border-radius:0;outline:none}.form-grid input,.code-field input{padding:0 14px}.form-grid select,.plan-selector select{padding:0 38px 0 14px}.form-grid input:focus,.form-grid select:focus,.plan-selector select:focus,.code-field input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #6b35ad1f}.form-grid input:disabled{color:#756c79;background:#eee9ef}.form-grid label>small{color:#786f7c;font-size:10px}.guardian-field{position:relative}.check-label{color:#665d6a;align-items:center;gap:7px;display:flex;letter-spacing:0!important;text-transform:none!important;font-size:10px!important;font-weight:650!important}.check-label input{width:15px;min-height:15px;accent-color:var(--blue)}.form-actions{border-top:1px solid var(--line);justify-content:flex-end;margin-top:38px;padding-top:26px;display:flex}.form-actions.split{justify-content:space-between;gap:18px}.form-primary,.form-secondary{cursor:pointer;min-height:51px;font:800 12px/1 var(--sans);justify-content:center;align-items:center;gap:28px;padding:0 22px;display:inline-flex}.form-primary{border:1px solid var(--blue);background:var(--blue);color:#fff}.form-primary:hover{background:var(--deep-blue)}.form-secondary{border:1px solid var(--ink);color:var(--ink);background:0 0}.student-id-card{border:1px solid var(--deep-blue);background:var(--mint);margin-bottom:35px;padding:22px 24px;display:grid;position:relative}.student-id-card span{letter-spacing:.09em;text-transform:uppercase;font-size:9px;font-weight:850}.student-id-card strong{color:var(--deep-blue);font-family:var(--serif);letter-spacing:.03em;margin-top:7px;font-size:29px}.student-id-card small{background:var(--paper);text-transform:uppercase;border-radius:999px;padding:5px 8px;font-size:8px;font-weight:850;position:absolute;top:18px;right:18px}.account-grid label:first-child{grid-column:1/-1}.form-error,.form-notice{color:#812739;background:#fff0f2;border-left:3px solid #b4344b;margin:22px 0 0;padding:12px 15px;font-size:12px}.form-notice{color:#326145;background:#effaf1;border-left-color:#4f8c68}.verification-form{max-width:670px}.confirmation-link-card{border:1px solid var(--line);background:#f4fbe9;align-items:center;gap:18px;margin:0 0 28px;padding:22px;display:flex}.confirmation-link-card>span{background:var(--mint);width:48px;height:48px;color:var(--deep-blue);border-radius:50%;flex:0 0 48px;place-items:center;font-size:21px;display:grid}.confirmation-link-card p{color:#514759;margin:0;font-size:13px;line-height:1.65}.resend-button{color:var(--blue);cursor:pointer;font:750 11px/1.4 var(--sans);background:0 0;border:0;border-bottom:1px solid;margin-top:20px;padding:0}.payment-placeholder{max-width:720px;padding:15px 0}.success-mark{background:var(--mint);width:70px;height:70px;color:var(--deep-blue);border-radius:50%;place-items:center;margin-bottom:28px;font-size:31px;display:grid}.payment-kicker{color:var(--blue);letter-spacing:.12em;text-transform:uppercase;margin:0 0 16px;font-size:10px;font-weight:850}.payment-placeholder>p:not(.payment-kicker){color:#675e6b;font-size:14px;line-height:1.75}.completion-summary{border:1px solid var(--line);background:#f8f5f0;grid-template-columns:145px 1fr;gap:9px 18px;margin:28px 0 35px;padding:22px;display:grid}.completion-summary span{color:#716876;letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:850}.completion-summary strong{font-size:12px}.paypal-checkout-button{color:#173f75;background:#ffc439;border:1px solid #173f75;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;margin:0 0 20px;padding:17px 20px;text-decoration:none;transition:transform .18s,box-shadow .18s;display:grid;box-shadow:4px 4px #173f75}.paypal-checkout-button:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #173f75}.paypal-checkout-button:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.paypal-checkout-button>span:not(.paypal-wordmark){font-size:13px;font-weight:850}.paypal-checkout-button>strong{white-space:nowrap;font-size:11px}.paypal-wordmark{letter-spacing:-.04em;border-right:1px solid #173f7559;padding-right:15px;font-size:18px;font-style:italic;font-weight:900}.account-open-link{justify-content:space-between;margin:0 0 16px}@media (width<=900px){.registration-shell{grid-template-columns:1fr;width:min(720px,100% - 32px);margin-top:28px}.registration-sidebar{padding:28px}.registration-back{margin-bottom:36px}.registration-sidebar h1{font-size:34px}.registration-steps{grid-template-columns:repeat(4,1fr);margin:36px 0 30px}.registration-steps li{text-align:center;flex-direction:column;align-items:center;gap:8px;min-height:auto}.registration-steps li:not(:last-child):after{width:100%;height:1px;inset:15px -50% auto 50%}.registration-steps li strong{font-size:9px}.registration-teacher{display:none}}@media (width<=620px){.registration-header{min-height:68px;padding:0 18px}.registration-shell{width:calc(100% - 20px);box-shadow:none;margin:10px auto 40px}.registration-sidebar{padding:25px 20px}.registration-card{padding:38px 20px 34px}.form-heading{grid-template-columns:38px 1fr;gap:13px}.form-heading>span{width:36px;height:36px}.form-heading h2,.payment-placeholder h2{font-size:2.2rem}.plan-selector{grid-template-columns:1fr;gap:12px}.form-grid{grid-template-columns:1fr}.account-grid label:first-child{grid-column:auto}.paypal-checkout-button{grid-template-columns:auto 1fr}.paypal-checkout-button>strong{white-space:normal;grid-column:2}.form-actions.split{flex-direction:column-reverse;align-items:stretch}.form-actions button{width:100%}.student-id-card strong{font-size:22px}.completion-summary{grid-template-columns:1fr}.completion-summary strong{margin-bottom:10px}}@media (width<=1160px){.site-header{grid-template-columns:1fr auto}.desktop-nav{display:none}.hero{grid-template-columns:1fr}.hero-copy{min-height:720px;padding:100px 7vw 70px}.hero-visual{min-height:680px}.about-grid,.faq{grid-template-columns:1fr}.about-grid{gap:60px}.approach-heading{grid-template-columns:1fr}.approach-heading p{max-width:630px}.learner-grid{grid-template-columns:1fr}.learner-grid article{border-bottom:1px solid #ffffff47;border-right:0;min-height:auto}.learner-grid article:last-child{border-bottom:0}.learner-icon{margin:34px 0 25px}.pricing-grid{grid-template-columns:1fr;gap:25px}.price-card{min-height:520px}.price-card.featured{transform:none}.booking{grid-template-columns:1fr;align-items:start}.booking-action{margin-top:30px}}@media (width<=900px){.method-intro{grid-template-columns:1fr;gap:35px}.lesson-options{grid-template-columns:1fr}.lesson-options article{min-height:310px}}@media (width<=640px){.site-header{min-height:68px;padding:0 20px}.brand{font-size:14px}.brand-mark{width:30px;height:30px;font-size:17px}.header-actions{gap:10px}.header-cta{display:none}.language-switcher button{width:28px;height:28px}.hero{min-height:auto}.hero-copy{min-height:auto;padding:80px 22px 55px}.hero h1{font-size:clamp(3.8rem,18vw,5.3rem)}.hero-lede{font-size:16px}.hero-actions{flex-direction:column;align-items:flex-start;gap:22px}.trust-row{gap:23px;margin-top:50px}.trust-row strong{font-size:24px}.trust-row span{max-width:74px;font-size:9px}.hero-visual{min-height:760px}.portrait-card{width:72%;box-shadow:9px 10px 0 var(--deep-blue);padding:9px 9px 0;top:6%;left:5%}.portrait-caption{padding:10px 1px 9px}.portrait-caption strong{font-size:13px}.portrait-caption span{font-size:8px}.lesson-card{width:76%;box-shadow:9px 10px 0 var(--blue);padding:22px;bottom:5%;right:4%}.lesson-card h2{font-size:2.25rem}.word-one{top:9%;right:2%}.word-two{bottom:3%;left:2%}.language-strip{min-height:74px}.section{padding:85px 22px}.section-label{margin-bottom:38px}.about-title h2,.approach-heading h2,.method h2,.pricing h2,.faq h2,.booking h2{font-size:clamp(2.75rem,13vw,4.2rem)}.mini-values{grid-template-columns:1fr}.approach-heading{gap:30px}.learner-grid{margin-top:50px}.learner-grid article{padding:28px 26px 40px}.method-intro{gap:30px}.lesson-options{margin-top:45px}.lesson-options article{min-height:335px;padding:26px}.steps li{grid-template-columns:48px 1fr}.price-card{min-height:540px;padding:30px 25px}.price{font-size:62px}.faq{gap:52px}.faq summary{font-size:18px}.booking{padding:85px 22px}.booking-action{width:100%}footer{text-align:left;grid-template-columns:1fr}footer>p:last-child{justify-self:start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}.portal-loading{background:var(--cream);place-content:center;justify-items:center;gap:18px;min-height:100vh;display:grid}.portal-loading p{color:#706777;margin:0;font-size:13px;font-weight:700}.student-login-page{background:var(--paper);grid-template-columns:minmax(420px,58%) 42%;min-height:100vh;display:grid}.student-login-panel{flex-direction:column;justify-content:center;min-height:100vh;padding:42px clamp(30px,7vw,110px);display:flex}.student-login-panel>.brand{position:absolute;top:38px}.student-login-copy{max-width:660px}.portal-kicker,.portal-section-heading p,.portal-topbar p,.profile-identity-card p{color:var(--blue);letter-spacing:.13em;text-transform:uppercase;margin:0 0 10px;font-size:10px;font-weight:850}.student-login-copy h1{max-width:620px;font:400 clamp(3.1rem, 6vw, 6.3rem)/.95 var(--serif);letter-spacing:-.055em;margin:0}.student-login-copy>p:last-child{color:#6d6471;max-width:580px;margin:30px 0 0;font-size:15px;line-height:1.8}.student-login-form{gap:20px;max-width:560px;margin-top:45px;display:grid}.student-login-form label,.portal-form-card label{gap:8px;display:grid}.student-login-form label>span,.portal-form-card label>span,.portal-form-grid label>span{letter-spacing:.07em;text-transform:uppercase;font-size:10px;font-weight:800}.student-login-form input,.portal-form-card input,.portal-form-card select,.portal-form-card textarea,.portal-form-grid input{border:1px solid var(--line);width:100%;color:var(--ink);font:500 14px/1.3 var(--sans);background:#fff;border-radius:0;padding:14px 15px}.student-login-form input:focus,.portal-form-card input:focus,.portal-form-card select:focus,.portal-form-card textarea:focus{border-color:var(--blue);outline:2px solid #6b35ad21}.student-login-form .form-primary{justify-content:space-between;margin-top:4px}.student-login-links{gap:26px;margin-top:25px;font-size:11px;font-weight:750;display:flex}.student-login-links a{border-bottom:1px solid}.student-login-portrait{background:radial-gradient(circle at 18% 15%,#c7ef9fbf,#0000 24%),radial-gradient(circle at 86% 10%,#ffffffbf,#0000 22%),linear-gradient(145deg,#eee2f8,#d9bff0 58%,#c9efa3);place-items:center;min-height:100vh;padding:70px 34px 125px;display:grid;position:relative;overflow:hidden}.student-login-portrait:before{content:"";border:34px solid #6b35ad1c;border-radius:50%;width:260px;height:260px;position:absolute;top:7%;right:-80px}.student-login-portrait:after{content:"";background:0 0;border:1px dashed #482b572e;border-radius:50%;width:180px;height:180px;position:absolute;bottom:8%;left:-55px}.student-login-portrait img{z-index:1;aspect-ratio:1;object-fit:cover;border:8px solid #ffffffc7;border-radius:38px;width:min(100%,700px);height:auto;display:block;position:relative;box-shadow:0 28px 70px #3d204f33}.student-login-portrait>div{z-index:2;color:var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;border:1px solid #4b2c5d21;border-radius:18px;gap:6px;padding:18px 20px;display:grid;position:absolute;bottom:34px;left:34px;right:34px;box-shadow:0 12px 32px #371e461f}.student-login-portrait strong{font:400 30px/1.1 var(--serif)}.student-login-portrait span{color:#65596b;letter-spacing:.05em;font-size:11px;font-weight:700}.student-portal{background:#f5f2ec;grid-template-columns:250px 1fr;min-height:100vh;display:grid}.portal-sidebar{border-right:1px solid var(--line);background:var(--ink);color:#fff;flex-direction:column;height:100vh;padding:30px 22px 24px;display:flex;position:sticky;top:0}.portal-brand{color:#fff;font-size:14px}.portal-student-mini{border-block:1px solid #ffffff24;grid-template-columns:45px 1fr;align-items:center;gap:12px;margin:38px 0 28px;padding:18px 0;display:grid}.portal-student-mini>div:last-child{gap:2px;min-width:0;display:grid}.portal-student-mini strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.portal-student-mini span{color:#ffffff94;letter-spacing:.06em;font-size:9px}.portal-avatar{border:3px solid var(--mint);background:var(--blue);color:#fff;width:116px;height:116px;font:400 36px/1 var(--serif);border-radius:50%;place-items:center;display:grid;overflow:hidden}.portal-avatar.small{border-width:2px;width:45px;height:45px;font-size:16px}.portal-avatar img{object-fit:cover;width:100%;height:100%}.portal-nav{gap:7px;display:grid}.portal-nav button{color:#ffffffad;cursor:pointer;width:100%;font:700 12px/1.2 var(--sans);text-align:left;background:0 0;border:0;grid-template-columns:26px 1fr auto;align-items:center;padding:12px 13px;display:grid;position:relative}.portal-nav button>span{font-size:15px}.portal-nav button b{background:var(--yellow);min-width:20px;height:20px;color:var(--ink);border-radius:99px;place-items:center;padding:0 5px;font-size:9px;display:grid}.portal-nav button:hover,.portal-nav button.active{color:#fff;background:#ffffff1a}.portal-sidebar-footer{gap:10px;margin-top:auto;font-size:10px;font-weight:700;display:grid}.portal-sidebar-footer a,.portal-sidebar-footer button{color:#ffffff94;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:8px 0}.portal-sidebar-footer a:hover,.portal-sidebar-footer button:hover{color:#fff}.portal-main{min-width:0;padding:42px clamp(25px,4vw,64px) 70px}.portal-topbar{justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:34px;display:flex}.portal-topbar h1{font:400 clamp(2.7rem, 5vw, 5.2rem)/.92 var(--serif);letter-spacing:-.052em;margin:0}.level-card{border:1px solid var(--line);background:var(--mint);gap:6px;min-width:220px;padding:16px 18px;display:grid}.level-card span{letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:800}.level-card strong{font:italic 20px/1.2 var(--serif)}.portal-message{border:1px solid;margin:0 0 24px;padding:14px 45px 14px 16px;font-size:12px;font-weight:700;position:relative}.portal-message.error{color:#79283a;background:#fff0f2;border-color:#9e3f52}.portal-message.success{color:#315f34;background:#eef9ea;border-color:#467748}.portal-message button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:20px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.portal-metrics{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.portal-metrics article{border:1px solid var(--line);background:var(--paper);min-height:166px;padding:22px;display:grid}.portal-metrics span{letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:850}.portal-metrics strong{font:400 62px/.9 var(--serif);letter-spacing:-.05em;align-self:end}.portal-metrics small{color:#746b77;margin-top:8px;font-size:10px}.portal-overview-grid{grid-template-columns:1.25fr .75fr;gap:18px;margin-top:18px;display:grid}.next-lesson-card,.package-summary-card,.buy-more-section,.portal-form-card,.bookings-section,.profile-identity-card{border:1px solid var(--line);background:var(--paper);padding:28px}.portal-section-heading{justify-content:space-between;align-items:flex-start;gap:25px;display:flex}.portal-section-heading h2{font:400 clamp(1.8rem, 3vw, 2.8rem)/1 var(--serif);letter-spacing:-.035em;margin:0}.portal-section-heading>span{color:#746b77;text-align:right;max-width:310px;font-size:10px;line-height:1.5}.portal-section-heading.large{margin-bottom:28px}.portal-status{color:#655d69;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;background:#ece8ef;border-radius:999px;width:fit-content;padding:6px 8px;font-size:8px;font-weight:850;display:inline-flex}.status-confirmed,.status-active,.status-approved{background:var(--mint);color:#315d37}.status-pending,.status-requested,.status-reviewing{color:#745c09;background:#fff0bd}.status-missed-teacher,.status-skipped-student,.status-declined,.status-cancelled,.status-refunded{color:#7d3443;background:#f7dce2}.next-lesson-card>time{font:400 clamp(2rem, 4vw, 4.4rem)/1 var(--serif);letter-spacing:-.04em;margin-top:34px;display:block}.next-lesson-meta{color:#746b77;gap:18px;margin:15px 0 30px;font-size:10px;font-weight:700;display:flex}.portal-primary-link,.portal-action{border:1px solid var(--ink);background:var(--ink);color:#fff;width:100%;font:800 11px/1.2 var(--sans);justify-content:space-between;align-items:center;padding:15px 17px;display:flex}.portal-action{cursor:pointer}.portal-action:disabled{cursor:wait;opacity:.58}.zoom-pending,.portal-fineprint,.portal-card-intro{color:#746b77;margin:20px 0 0;font-size:11px;line-height:1.65}.package-list{gap:13px;margin-top:28px;display:grid}.package-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:15px 0;display:flex}.package-list>div>div{gap:4px;display:grid}.package-list strong{font:400 18px/1.2 var(--serif)}.package-list span{color:#746b77;font-size:9px}.portal-empty{justify-items:start;gap:8px;padding:35px 0 8px;display:grid}.portal-empty>span{color:var(--blue);font-size:22px}.portal-empty h3{font:400 22px/1.2 var(--serif);margin:0}.portal-empty p{color:#746b77;max-width:430px;margin:0;font-size:11px;line-height:1.6}.buy-more-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:26px;display:grid}.buy-more-grid a{border:1px solid var(--ink);background:#fff;min-height:130px;padding:18px;transition:transform .18s,box-shadow .18s;display:grid;position:relative}.buy-more-grid a:hover{box-shadow:0 5px 0 var(--ink);transform:translateY(-3px)}.buy-more-grid a.featured{background:var(--yellow)}.buy-more-grid a>b{background:var(--ink);color:#fff;text-transform:uppercase;padding:4px 6px;font-size:7px;position:absolute;top:10px;right:10px}.buy-more-grid span{text-transform:uppercase;font-size:10px;font-weight:800}.buy-more-grid strong{font:400 36px/1 var(--serif);align-self:end}.buy-more-grid small{color:#746b77;margin-top:5px;font-size:9px}.schedule-view{gap:18px;display:grid}.portal-form-card form{gap:18px;margin-top:28px;display:grid}.portal-form-card textarea{resize:vertical}.portal-form-card label small{color:#746b77;font-size:9px}.bookings-section .portal-section-heading{margin-bottom:22px}.booking-list{gap:10px;display:grid}.booking-list>article{border:1px solid var(--line);background:#fff;grid-template-columns:62px 1fr auto;align-items:center;gap:20px;padding:17px;display:grid}.booking-date{background:var(--mint);align-content:center;place-items:center;width:62px;height:62px;display:grid}.booking-date span{text-transform:uppercase;font-size:8px;font-weight:850}.booking-date strong{font:400 28px/1 var(--serif)}.booking-info h3{font:400 18px/1.2 var(--serif);margin:0}.booking-info p{color:#746b77;margin:5px 0 0;font-size:10px}.booking-info small{color:var(--blue);margin-top:8px;font-size:9px;font-weight:750;display:block}.booking-actions{justify-items:end;gap:8px;display:grid}.booking-actions button{color:var(--blue);cursor:pointer;font:800 9px/1.3 var(--sans);background:0 0;border:0;border-bottom:1px solid;padding:0}.reschedule-form{border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px;margin-top:5px;padding-top:15px;display:grid}.reschedule-form>div{gap:7px;display:flex}.reschedule-form button{border:1px solid var(--ink);cursor:pointer;font:800 9px/1 var(--sans);background:#fff;padding:13px 14px}.reschedule-form button[type=submit]{background:var(--ink);color:#fff}.feedback-list{gap:16px;display:grid}.feedback-list article{border:1px solid var(--line);background:var(--paper);padding:28px}.feedback-list header{justify-content:space-between;gap:20px;display:flex}.feedback-list header span{color:var(--blue);text-transform:uppercase;font-size:9px;font-weight:800}.feedback-list header h3{font:400 28px/1.1 var(--serif);margin:6px 0 0}.feedback-list header b{background:var(--yellow);text-transform:uppercase;height:fit-content;padding:5px 7px;font-size:8px}.feedback-list article>p{color:#514959;max-width:900px;margin:23px 0;font-size:14px;line-height:1.75}.feedback-details{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.feedback-details div{background:#f6f2f8;padding:16px}.feedback-details span{color:var(--blue);letter-spacing:.07em;text-transform:uppercase;font-size:8px;font-weight:850}.feedback-details p{margin:7px 0 0;font-size:11px;line-height:1.55}.profile-view{gap:18px;display:grid}.profile-identity-card{grid-template-columns:auto 1fr auto;align-items:center;gap:25px;display:grid}.profile-identity-card h2{font:400 40px/1 var(--serif);margin:0}.profile-identity-card>div:nth-child(2)>span{color:#746b77;font-size:10px}.avatar-upload{cursor:pointer;justify-items:end;gap:5px;display:grid}.avatar-upload input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.avatar-upload>span{border:1px solid var(--ink);padding:11px 15px;font-size:10px;font-weight:800}.avatar-upload small{color:#746b77;font-size:8px}.portal-form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.portal-form-grid label{align-content:start;gap:8px;display:grid}.portal-form-grid label.wide{grid-column:1/-1}.portal-form-grid input:disabled{color:#777078;cursor:not-allowed;background:#eeeae5}.portal-form-grid label>small{color:#746b77;align-items:center;gap:8px;font-size:10px;display:flex}.portal-form-grid label>small input{width:auto}.profile-form .portal-action{margin-top:10px}.support-grid{grid-template-columns:1fr 1fr;align-items:start;gap:18px;display:grid}.appeal-history{border-top:1px solid var(--line);gap:10px;margin-top:30px;padding-top:22px;display:grid}.appeal-history h3{font:400 20px/1.2 var(--serif);margin:0 0 5px}.appeal-history>div{background:#f6f2f8;grid-template-columns:1fr auto;gap:6px 12px;padding:13px;display:grid}.appeal-history span{color:#746b77;font-size:8px}.appeal-history p{grid-column:1;margin:0;font-size:10px}.appeal-history small{color:var(--blue);grid-column:1/-1;font-size:9px}.security-note{background:var(--mint);gap:5px;margin-top:30px;padding:18px;display:grid}.security-note strong{text-transform:uppercase;font-size:9px}.security-note span{font:400 18px/1.2 var(--serif)}.security-note p{color:#5f6859;margin:6px 0 0;font-size:9px;line-height:1.5}@media (width<=1050px){.student-portal{grid-template-columns:82px 1fr}.portal-sidebar{padding-inline:13px}.portal-brand>span:last-child,.portal-student-mini>div:last-child,.portal-nav button:not(.active) b,.portal-nav button{font-size:0}.portal-brand{justify-content:center}.portal-student-mini{justify-content:center;display:flex}.portal-nav button{grid-template-columns:1fr;justify-items:center;padding:13px}.portal-nav button>span{font-size:17px}.portal-sidebar-footer{text-align:center}.portal-overview-grid,.support-grid{grid-template-columns:1fr}}@media (width<=760px){.student-login-page{grid-template-columns:1fr}.student-login-panel{min-height:100vh;padding:105px 24px 45px}.student-login-panel>.brand{top:28px}.student-login-portrait{display:none}.student-portal{padding-bottom:76px;display:block}.portal-sidebar{z-index:60;border-top:1px solid #ffffff26;border-right:0;width:100%;height:70px;padding:8px 10px;display:block;position:fixed;inset:auto 0 0}.portal-brand,.portal-student-mini,.portal-sidebar-footer{display:none}.portal-nav{grid-template-columns:repeat(5,1fr);gap:2px;display:grid}.portal-nav button,.portal-nav button.active{color:#ffffffb8;text-align:center;background:0 0;grid-template-columns:1fr;gap:3px;padding:7px 2px;font-size:7px;display:grid}.portal-nav button>span{font-size:15px}.portal-nav button b{font-size:7px;position:absolute;top:1px;right:7px}.portal-main{padding:28px 16px 40px}.portal-topbar{flex-direction:column;align-items:stretch}.level-card{min-width:0}.portal-metrics,.buy-more-grid,.feedback-details,.portal-form-grid{grid-template-columns:1fr}.portal-metrics article{min-height:135px}.portal-section-heading{flex-direction:column;align-items:flex-start;gap:10px}.portal-section-heading>span{text-align:left}.next-lesson-card,.package-summary-card,.buy-more-section,.portal-form-card,.bookings-section,.profile-identity-card,.feedback-list article{padding:21px}.booking-list>article{grid-template-columns:52px 1fr;gap:13px}.booking-date{width:52px;height:52px}.booking-actions{grid-column:1/-1;grid-template-columns:auto 1fr;justify-items:start}.reschedule-form{grid-template-columns:1fr}.profile-identity-card{grid-template-columns:auto 1fr}.portal-avatar{width:78px;height:78px;font-size:26px}.profile-identity-card h2{font-size:28px}.avatar-upload{grid-column:1/-1;justify-items:start}.portal-form-grid label.wide{grid-column:auto}}.recovery-page{background:#fbf9f5;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);min-height:100vh;display:grid}.recovery-card{flex-direction:column;justify-content:center;width:min(620px,100%);margin:0 auto;padding:64px clamp(28px,7vw,88px);display:flex}.recovery-card .brand{width:fit-content;margin-bottom:58px}.recovery-lock{color:#462264;background:#c9efa3;border-radius:17px;place-items:center;width:50px;height:50px;margin-bottom:23px;font-size:22px;display:grid;transform:rotate(-4deg);box-shadow:0 10px 24px #517b2c24}.recovery-card h1{color:#2d1939;max-width:540px;font:400 clamp(2.8rem, 5vw, 5rem)/.95 var(--serif);letter-spacing:-.045em;margin:8px 0 16px}.recovery-card>p:not(.portal-kicker){color:#756c7b;max-width:520px;margin:0;font-size:12px;line-height:1.75}.recovery-form{gap:15px;margin-top:30px;display:grid}.recovery-form label{color:#54465d;gap:8px;font-size:9px;font-weight:850;display:grid}.recovery-form input{color:#2d1939;min-height:52px;font:600 12px/1 var(--sans);background:#fff;border:1px solid #ddd5e1;border-radius:13px;outline:0;padding:13px 15px}.recovery-form input:focus{border-color:#7542c8;box-shadow:0 0 0 4px #7542c81a}.recovery-form small{color:#8b818f;font-size:8px;font-weight:600}.recovery-form .form-primary{color:#fff;cursor:pointer;min-height:54px;font:850 10px/1 var(--sans);background:linear-gradient(135deg,#7542c8,#5d2ca9);border:0;border-radius:13px;justify-content:space-between;align-items:center;padding:14px 18px;display:flex;box-shadow:0 9px 22px #5e2ca933}.recovery-form .form-primary:disabled{cursor:wait;opacity:.68}.form-success{color:#46652d;background:#eef9e4;border-left:4px solid #78a84e;border-radius:0 10px 10px 0;margin:0;padding:13px 15px;font-size:10px;line-height:1.55}.recovery-actions{flex-wrap:wrap;gap:10px;margin-top:30px;display:flex}.recovery-actions a{color:#fff;background:#6b35ad;border-radius:12px;padding:14px 17px;font-size:9px;font-weight:850}.recovery-actions a:last-child{color:#5d2ca9;background:#fff;border:1px solid #d8cde0}.recovery-foot{color:#8a808e;border-top:1px solid #e8e1ea;justify-content:space-between;gap:20px;margin-top:48px;padding-top:18px;font-size:8px;display:flex}.recovery-foot a{color:#6530ad;font-weight:850}.recovery-aside{color:#fff;background:radial-gradient(circle at 75% 15%,#c7ef9f4d,#0000 24%),linear-gradient(145deg,#2b153b,#54257a 58%,#6939a5);flex-direction:column;justify-content:flex-end;min-height:100vh;padding:clamp(48px,7vw,96px);display:flex;position:relative;overflow:hidden}.recovery-aside:before{content:"";border:1px solid #ffffff21;border-radius:50%;width:340px;height:340px;position:absolute;top:12%;right:-100px}.recovery-aside:after{content:"";border:28px solid #c7ef9f1f;border-radius:50%;width:150px;height:150px;position:absolute;bottom:24%;right:18%;transform:rotate(12deg)}.recovery-aside span{z-index:1;color:#c9efa3;letter-spacing:.15em;text-transform:uppercase;font-size:9px;font-weight:900;position:relative}.recovery-aside h2{z-index:1;max-width:560px;font:400 clamp(3rem, 5vw, 5.8rem)/.94 var(--serif);letter-spacing:-.05em;margin:16px 0 20px;position:relative}.recovery-aside p{z-index:1;color:#ffffffab;max-width:520px;margin:0;font-size:11px;line-height:1.75;position:relative}@media (width<=860px){.recovery-page{grid-template-columns:1fr}.recovery-card{width:100%;min-height:100vh}.recovery-aside{display:none}}@media (width<=540px){.recovery-card{padding:36px 22px}.recovery-card .brand{margin-bottom:38px}.recovery-foot{flex-direction:column}}.teacher-gate{color:#2b1837;background:radial-gradient(circle at 12% 12%,#c8efa08c,#0000 22%),radial-gradient(circle at 88% 2%,#d2b8f58c,#0000 27%),#f8f5fa;place-items:center;min-height:100vh;padding:42px 18px;display:grid}.teacher-gate:before{pointer-events:none;opacity:.28;content:"";background-image:radial-gradient(#6c3aad 1px,#0000 1px);background-size:24px 24px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 54%);mask-image:linear-gradient(#000,#0000 54%)}.teacher-gate-card{z-index:1;background:#fffffff0;border:1px solid #4225521a;border-radius:28px;width:min(100%,530px);padding:38px;position:relative;box-shadow:0 28px 80px #331b4224}.teacher-gate-card>.brand{margin-bottom:45px}.teacher-gate-icon{color:#fff;background:linear-gradient(145deg,#7d48cb,#5b2c99);border-radius:20px;place-items:center;width:64px;height:64px;margin-bottom:22px;display:grid;box-shadow:0 12px 26px #5c2c9c40}.teacher-kicker{color:#6b36ad;letter-spacing:.16em;text-transform:uppercase;margin:0 0 9px;font-size:9px;font-weight:900}.teacher-gate h1{max-width:440px;font:400 clamp(2.6rem, 7vw, 4.35rem)/.95 var(--serif);letter-spacing:-.055em;margin:0 0 14px}.teacher-gate h1+p{color:#716777;margin:0 0 28px;font-size:11px;line-height:1.7}.teacher-gate form{gap:15px;display:grid}.teacher-gate label,.teacher-admin-card label,.teacher-booking-manager form label{color:#55495c;gap:7px;font-size:9px;font-weight:850;display:grid}.teacher-gate input,.teacher-admin-card input,.teacher-admin-card select,.teacher-admin-card textarea,.teacher-booking-manager input,.teacher-booking-manager select{color:#2c1b35;width:100%;font:600 11px/1.3 var(--sans);background:#fff;border:1px solid #dcd4df;border-radius:11px;outline:0;padding:13px 14px;transition:border-color .16s,box-shadow .16s}.teacher-gate input:focus,.teacher-admin-card input:focus,.teacher-admin-card select:focus,.teacher-admin-card textarea:focus,.teacher-booking-manager input:focus,.teacher-booking-manager select:focus{border-color:#7b47c6;box-shadow:0 0 0 4px #7b47c61a}.teacher-gate form>button,.teacher-primary{color:#fff;cursor:pointer;min-height:49px;font:850 10px/1 var(--sans);background:linear-gradient(135deg,#7441bf,#56268f);border:0;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:13px 17px;transition:transform .17s,box-shadow .17s,opacity .17s;display:flex;box-shadow:0 9px 20px #56268f33}.teacher-gate form>button:hover:not(:disabled),.teacher-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 13px 26px #56268f47}.teacher-gate button:disabled,.teacher-admin button:disabled{cursor:wait;opacity:.6}.teacher-security-foot{color:#42632b;background:#f2faea;border:1px solid #d8edc4;border-radius:14px;gap:11px;margin-top:23px;padding:14px;display:flex}.teacher-security-foot .teacher-admin-mark{background:#c8ecaa;border-radius:9px;place-items:center;width:29px;height:29px;display:grid}.teacher-security-foot>span{gap:3px;font-size:8px;line-height:1.4;display:grid}.teacher-back-link{color:#766d7b;text-align:center;text-underline-offset:3px;margin-top:19px;font-size:9px;text-decoration:underline;display:block}.teacher-gate-loading{align-content:center;gap:12px}.teacher-gate-loading p{color:#675d6c;font-size:10px}.teacher-mfa-card{text-align:center}.teacher-security-badge{color:#3f6526;background:#e5f6d7;border-radius:99px;margin-bottom:22px;padding:7px 10px;font-size:8px;font-weight:850;display:inline-flex}.teacher-mfa-qr{background:#fff;border:1px solid #ddd4e2;border-radius:18px;width:210px;height:210px;margin:0 auto 16px;padding:10px;display:block}.teacher-mfa-secret{background:#f2edf6;border-radius:12px;gap:7px;margin:0 0 22px;padding:13px;display:grid}.teacher-mfa-secret span{color:#716779;text-transform:uppercase;font-size:8px;font-weight:800}.teacher-mfa-secret code{overflow-wrap:anywhere;color:#47255c;font-size:10px}.teacher-mfa-card form label{text-align:left}.teacher-mfa-card form input{letter-spacing:.3em;text-align:center;font-size:23px}.teacher-text-button{color:#706575;cursor:pointer;font:800 9px/1 var(--sans);text-underline-offset:3px;background:0 0;border:0;margin-top:18px;text-decoration:underline}.teacher-admin{color:#2e1d38;background:#f6f3f8;grid-template-columns:262px minmax(0,1fr);min-height:100vh;display:grid}.teacher-admin-sidebar{color:#fff;background:linear-gradient(165deg,#251333,#321944 58%,#20112d);flex-direction:column;height:100vh;padding:27px 20px 22px;display:flex;position:sticky;top:0;overflow:hidden}.teacher-admin-sidebar:after{content:"";border:28px solid #c7ef9f12;border-radius:50%;width:190px;height:190px;position:absolute;bottom:110px;right:-85px}.teacher-admin-brand{z-index:1;color:#fff;gap:11px;position:relative}.teacher-admin-brand>span:last-child{gap:3px;display:grid}.teacher-admin-brand small{color:#c6ef9e;letter-spacing:.13em;text-transform:uppercase;font-size:7px;font-weight:850}.teacher-secure-chip{z-index:1;color:#c6ef9e;text-transform:uppercase;background:#c6ef9e14;border:1px solid #c6ef9e2e;border-radius:99px;align-items:center;gap:7px;width:fit-content;margin:25px 0 18px;padding:7px 9px;font-size:7px;font-weight:850;display:flex;position:relative}.teacher-secure-chip>span{background:#bdf087;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #bdf0871a}.teacher-admin-sidebar nav{z-index:1;gap:7px;display:grid;position:relative}.teacher-admin-sidebar nav button{color:#ffffffab;cursor:pointer;min-height:50px;font:800 10px/1 var(--sans);text-align:left;background:0 0;border:1px solid #0000;border-radius:13px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:6px 11px 6px 7px;display:grid}.teacher-admin-sidebar nav button .teacher-admin-mark{color:#fff;background:#ffffff0f;border-radius:10px;place-items:center;width:36px;height:36px;font-size:16px;display:grid}.teacher-admin-sidebar nav button b{color:#d8cfe0;background:#ffffff1a;border-radius:99px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:7px;display:grid}.teacher-admin-sidebar nav button:hover,.teacher-admin-sidebar nav button.active{color:#fff}.teacher-admin-sidebar nav button.active{background:linear-gradient(135deg,#7d49cf,#6331a6);border-color:#ffffff21;box-shadow:0 10px 22px #0003}.teacher-admin-sidebar nav button.active .teacher-admin-mark{color:#2c1937;background:#c7ef9f}.teacher-admin-side-note{z-index:1;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:15px;gap:10px;margin-top:auto;padding:14px;display:flex;position:relative}.teacher-admin-side-note .teacher-admin-mark{color:#c7ef9f;font-size:16px}.teacher-admin-side-note>span{color:#ffffff80;gap:4px;font-size:7px;line-height:1.5;display:grid}.teacher-admin-side-note strong{color:#fff;font-size:8px}.teacher-admin-sidebar-footer{z-index:1;gap:5px;margin-top:15px;display:grid;position:relative}.teacher-admin-sidebar-footer a,.teacher-admin-sidebar-footer button{color:#ffffff8c;cursor:pointer;font:750 8px/1 var(--sans);text-align:left;background:0 0;border:0;border-radius:8px;padding:8px 9px}.teacher-admin-sidebar-footer a:hover,.teacher-admin-sidebar-footer button:hover{color:#fff;background:#ffffff0f}.teacher-admin-main{background:radial-gradient(circle at 95% 0,#cbeea959,#0000 20%),radial-gradient(circle at 65% -7%,#d8c4f261,#0000 20%),#f7f5f9;min-width:0;padding:38px clamp(22px,3.6vw,56px) 80px}.teacher-admin-topbar{justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:28px;display:flex}.teacher-admin-topbar p,.teacher-admin-card-heading p,.teacher-caption-meta p,.teacher-student-hero p{color:#6c39ad;letter-spacing:.14em;text-transform:uppercase;margin:0 0 7px;font-size:8px;font-weight:900}.teacher-admin-topbar h1{font:400 clamp(2.5rem, 4.7vw, 4.6rem)/.95 var(--serif);letter-spacing:-.055em;margin:0}.teacher-admin-summary{gap:8px;display:flex}.teacher-admin-summary span{color:#756d79;background:#fffc;border:1px solid #ded6e2;border-radius:15px;gap:3px;min-width:92px;padding:12px 15px;font-size:8px;display:grid}.teacher-admin-summary strong{color:#392545;font:400 24px/1 var(--serif)}.teacher-admin-message{z-index:10;border-radius:13px;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px;padding:13px 16px;font-size:9px;font-weight:750;display:flex;position:sticky;top:12px;box-shadow:0 10px 25px #2a1c321a}.teacher-admin-message.success{color:#365f1d;background:#eef9e4;border:1px solid #cae9ad}.teacher-admin-message.error{color:#8d282e;background:#fff0f1;border:1px solid #efc3c5}.teacher-admin-message button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:18px}.teacher-admin-card{background:#ffffffed;border:1px solid #3b244817;border-radius:22px;padding:25px;box-shadow:0 10px 30px #3520420e}.teacher-admin-card-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.teacher-admin-card-heading h2{font:400 27px/1.02 var(--serif);letter-spacing:-.035em;margin:0}.teacher-admin-card-heading>span,.teacher-admin-card-heading>strong{color:#6a35a9;background:#f0e8f7;border-radius:9px;padding:7px 9px;font-size:8px}.teacher-admin-card .teacher-admin-mark{color:#476d2e;background:#eaf7dd;border-radius:12px;place-items:center;width:37px;height:37px;font-size:16px;display:grid}.teacher-admin-profile-grid{grid-template-columns:minmax(0,1.22fr) minmax(310px,.78fr);align-items:start;gap:18px;display:grid}.teacher-caption-card{gap:15px;display:grid}.teacher-caption-preview{background:linear-gradient(145deg,#faf4ff,#f5fbef);border:1px dashed #cbbbd6;border-radius:17px;grid-template-columns:62px 1fr;gap:14px;padding:18px;display:grid}.teacher-caption-preview>span{color:#8b7f90;text-transform:uppercase;grid-column:1/-1;font-size:7px;font-weight:850}.teacher-caption-preview img{object-fit:cover;border-radius:18px;width:62px;height:62px}.teacher-caption-preview>div{align-self:center}.teacher-caption-preview strong{font:400 22px/1 var(--serif)}.teacher-caption-preview p{color:#665c6c;margin:7px 0 0;font-size:9px;line-height:1.5}.teacher-admin-stack{gap:18px;display:grid}.teacher-security-card{color:#fff;background:linear-gradient(145deg,#2c173b,#45235d);overflow:hidden}.teacher-security-illustration{color:#2b1738;background:#c7ef9f;border-radius:17px;place-items:center;width:54px;height:54px;margin-bottom:25px;display:grid}.teacher-security-illustration .teacher-admin-mark{color:inherit;background:0 0;font-size:22px}.teacher-security-card p{color:#c7ef9f;text-transform:uppercase;font-size:8px;font-weight:850}.teacher-security-card h2{font:400 29px/1.05 var(--serif);margin:5px 0 18px}.teacher-security-card ul{gap:11px;margin:0;padding:0;list-style:none;display:grid}.teacher-security-card li{color:#ffffffa6;padding-left:19px;font-size:8px;line-height:1.5;position:relative}.teacher-security-card li:before{color:#c7ef9f;content:"✓";position:absolute;left:0}.teacher-caption-meta{background:linear-gradient(145deg,#fff2b7,#f8dd75)}.teacher-caption-meta strong{font:400 23px/1.1 var(--serif);margin:8px 0;display:block}.teacher-caption-meta span{color:#665727;font-size:8px;line-height:1.5}.teacher-calendar-layout{grid-template-columns:minmax(0,1.52fr) minmax(300px,.48fr);align-items:start;gap:18px;display:grid}.teacher-calendar-card{padding:0;overflow:hidden}.teacher-calendar-toolbar{border-bottom:1px solid #ebe5ee;justify-content:space-between;align-items:center;gap:15px;padding:24px 25px;display:flex}.teacher-calendar-toolbar p{color:#6d39ad;text-transform:uppercase;margin:0 0 5px;font-size:8px;font-weight:850}.teacher-calendar-toolbar h2{font:400 29px/1 var(--serif);margin:0}.teacher-calendar-toolbar>div:last-child{gap:6px;display:flex}.teacher-calendar-toolbar button{color:#513062;cursor:pointer;min-width:37px;height:37px;font:800 9px/1 var(--sans);background:#fff;border:1px solid #ddd5e2;border-radius:10px;padding:0 10px}.teacher-calendar-weekdays,.teacher-calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.teacher-calendar-weekdays{background:#faf8fb;border-bottom:1px solid #eee8f1;padding:0 12px}.teacher-calendar-weekdays span{color:#8d8491;text-align:center;text-transform:uppercase;padding:12px 8px;font-size:7px;font-weight:850}.teacher-calendar-grid>div{background:#fffc;border-bottom:1px solid #eee9f0;border-right:1px solid #eee9f0;min-height:116px;padding:8px;overflow:hidden}.teacher-calendar-grid>div:nth-child(7n){border-right:0}.teacher-calendar-grid>div.muted{color:#b5acb8;background:#faf8fa}.teacher-calendar-grid>div.today{box-shadow:inset 0 0 0 2px #83c44f}.teacher-calendar-day-number{width:25px;height:25px;color:inherit;cursor:pointer;font:800 8px/1 var(--sans);background:0 0;border:0;border-radius:8px;place-items:center;margin:0 0 5px auto;display:grid}.teacher-calendar-grid>div.today .teacher-calendar-day-number{color:#35521f;background:#c9eea8}.calendar-booking,.calendar-block{color:#5d2e8d;cursor:pointer;width:100%;font:750 7px/1 var(--sans);text-align:left;background:#ede3f7;border:0;border-radius:7px;align-items:center;gap:5px;margin-top:4px;padding:5px 6px;display:flex;overflow:hidden}.calendar-booking time{font-weight:900}.calendar-booking span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-booking.status-confirmed{color:#426629;background:#e4f4d7}.calendar-booking.status-completed{color:#38647b;background:#e6f2f7}.calendar-block{color:#756c79;cursor:default;background:#f2eeee}.teacher-calendar-grid>div>small{color:#8b818f;text-align:center;margin-top:4px;font-size:6px;display:block}.teacher-calendar-side{gap:18px;display:grid}.teacher-block-form{gap:13px;display:grid}.teacher-upcoming-list{gap:9px;display:grid}.teacher-upcoming-list article{border:1px solid #e7e0ea;border-radius:13px;grid-template-columns:1fr auto;gap:5px 8px;padding:12px;display:grid}.teacher-upcoming-list article>div{gap:4px;display:grid}.teacher-upcoming-list time{color:#7e7483;font-size:7px}.teacher-upcoming-list article>button{color:#6d38ae;cursor:pointer;width:fit-content;font:800 7px/1 var(--sans);background:0 0;border:0;border-bottom:1px solid;grid-column:1/-1;padding:5px 0 2px}.teacher-status{color:#663898;text-transform:uppercase;background:#eee6f4;border-radius:99px;align-self:start;padding:5px 7px;font-size:6px;font-weight:850}.teacher-status.status-confirmed{color:#426827;background:#e2f2d5}.teacher-status.status-completed{color:#367;background:#e1f1f6}.teacher-status.status-cancelled,.teacher-status.status-skipped_student,.teacher-status.status-missed_teacher{color:#8d3539;background:#f7e1e2}.teacher-block-list{gap:9px;display:grid}.teacher-block-list article{border-top:1px solid #eee8f0;justify-content:space-between;align-items:center;gap:10px;padding:11px 0;display:flex}.teacher-block-list article>div{gap:4px;display:grid}.teacher-block-list span{color:#837a87;font-size:7px;line-height:1.4}.teacher-block-list button{color:#8c3740;cursor:pointer;font:800 7px/1 var(--sans);background:0 0;border:0}.teacher-empty{color:#8b828f;margin:15px 0;font-size:9px;line-height:1.5}.teacher-students-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:18px;display:grid}.teacher-student-list{max-height:calc(100vh - 36px);padding:20px;position:sticky;top:18px;overflow:hidden}.teacher-search{align-items:center;margin-bottom:13px;position:relative;display:flex!important}.teacher-search .teacher-admin-mark{z-index:1;color:#7b6f80;background:0 0;width:auto;height:auto;font-size:17px;position:absolute;left:10px}.teacher-search input{padding-left:34px}.teacher-student-list>div:last-child{gap:5px;max-height:calc(100vh - 195px);display:grid;overflow-y:auto}.teacher-student-list>div>button{color:#3b2a44;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:13px;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:9px;display:grid}.teacher-student-list>div>button:hover,.teacher-student-list>div>button.active{background:#f4edf9;border-color:#dfd1e9}.teacher-student-initials{color:#fff;width:42px;height:42px;font:400 16px/1 var(--serif);background:linear-gradient(145deg,#8552cf,#6031a1);border-radius:13px;place-items:center;display:grid}.teacher-student-list button>span:nth-child(2){gap:4px;min-width:0;display:grid}.teacher-student-list button strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.teacher-student-list button small{color:#857b89;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.teacher-student-list button b{color:#923842;background:#f7dfe1;border-radius:7px;padding:5px 6px;font-size:6px}.teacher-student-workspace{gap:17px;min-width:0;display:grid}.teacher-student-hero{color:#fff;background:linear-gradient(135deg,#6d38b4,#8550ce 58%,#57288f);border-radius:23px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:16px;padding:23px;display:grid;box-shadow:0 14px 32px #52258b30}.teacher-student-avatar{width:68px;height:68px;font:400 26px/1 var(--serif);background:#ffffff1f;border:2px solid #c8ef9f;border-radius:20px;place-items:center;display:grid}.teacher-student-hero h2{font:400 35px/1 var(--serif);margin:0}.teacher-student-hero>div:nth-child(2)>span{color:#ffffffa6;margin-top:5px;font-size:8px;display:block}.teacher-student-hero p{color:#d5fbb0}.teacher-student-balance{text-align:center;gap:2px;min-width:90px;display:grid}.teacher-student-balance span{color:#ffffffa6;text-transform:uppercase;font-size:7px;font-weight:800}.teacher-student-balance strong{font:400 39px/1 var(--serif)}.teacher-nudge{color:#2d1938;cursor:pointer;min-height:43px;font:850 8px/1 var(--sans);background:#c7ef9f;border:0;border-radius:12px;align-items:center;gap:8px;padding:10px 13px;display:flex}.teacher-nudge .teacher-admin-mark{background:#2d193814;border-radius:8px;place-items:center;width:25px;height:25px;display:grid}.teacher-student-info-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.teacher-student-info-grid article{background:#fff;border:1px solid #e2dbe6;border-radius:14px;gap:5px;padding:13px 15px;display:grid}.teacher-student-info-grid span{color:#8a808e;text-transform:uppercase;font-size:6px;font-weight:850}.teacher-student-info-grid strong,.teacher-student-info-grid a{color:#3c2948;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.teacher-student-info-grid a{color:#6a35a8;text-underline-offset:2px;text-decoration:underline}.teacher-student-controls{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:17px;display:grid}.teacher-rating-scale{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.teacher-rating-scale button{color:#51325f;cursor:pointer;background:#faf8fb;border:1px solid #ded5e3;border-radius:10px;place-items:center;gap:3px;min-height:52px;padding:6px 3px;display:grid}.teacher-rating-scale button span{font:400 19px/1 var(--serif)}.teacher-rating-scale button small{text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:5px;overflow:hidden}.teacher-rating-scale button:hover,.teacher-rating-scale button.active{color:#fff;background:linear-gradient(145deg,#7944c5,#5c2b99);border-color:#7843c2;transform:translateY(-1px);box-shadow:0 7px 14px #5c2b992e}.teacher-rating-selected{color:#776d7c;min-height:40px;margin:14px 0;font-size:8px;line-height:1.5}.teacher-rating-selected strong{color:#5f3098}.teacher-purchase-toggle{cursor:pointer;background:#faf8fb;border:1px solid #e4dce7;border-radius:13px;align-items:center;margin:0 0 15px;padding:13px;gap:11px!important;display:flex!important}.teacher-purchase-toggle input{accent-color:#6c38af;width:18px;height:18px}.teacher-purchase-toggle>span{gap:3px;display:grid}.teacher-purchase-toggle small{color:#817787;font-size:7px}.teacher-booking-manager>div:last-child{gap:10px;max-height:480px;display:grid;overflow-y:auto}.teacher-booking-manager form{background:#fbf9fc;border:1px solid #e6dfe9;border-radius:14px;grid-template-columns:.8fr 1fr 1fr auto;align-items:end;gap:8px;padding:13px;display:grid}.teacher-booking-manager form header{grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;display:flex}.teacher-booking-manager form header>div{gap:3px;display:grid}.teacher-booking-manager form header span:not(.teacher-status){color:#857b89;font-size:7px}.teacher-booking-manager form input,.teacher-booking-manager form select{padding:10px;font-size:8px}.teacher-booking-manager form>button{color:#fff;cursor:pointer;min-height:36px;font:800 7px/1 var(--sans);background:#342040;border:0;border-radius:9px;padding:9px 10px}.teacher-student-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:17px;display:grid}.teacher-student-actions-grid form{gap:12px;display:grid}.teacher-mini-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.teacher-file-input input{padding:8px;font-size:8px}.teacher-no-student{text-align:center;place-content:center;justify-items:center;min-height:300px;display:grid}.teacher-no-student h2{font:400 28px/1 var(--serif);margin:15px 0 5px}.teacher-no-student p{color:#7f7584;font-size:9px}@media (width<=1180px){.teacher-admin{grid-template-columns:88px minmax(0,1fr)}.teacher-admin-sidebar{padding-inline:13px}.teacher-admin-brand>span:last-child,.teacher-secure-chip,.teacher-admin-side-note{display:none}.teacher-admin-sidebar nav{margin-top:30px}.teacher-admin-sidebar nav button{grid-template-columns:1fr;justify-items:center;padding:7px;font-size:0}.teacher-admin-sidebar nav button b{margin:-34px 0 0 32px;font-size:6px;position:absolute}.teacher-admin-sidebar-footer a,.teacher-admin-sidebar-footer button{text-align:center;font-size:0}.teacher-admin-sidebar-footer a:after{content:"Site";font-size:7px}.teacher-admin-sidebar-footer button:after{content:"Sign out";font-size:7px}.teacher-calendar-layout,.teacher-admin-profile-grid{grid-template-columns:1fr}.teacher-calendar-side{grid-template-columns:repeat(2,1fr)}.teacher-block-form{grid-row:span 2}.teacher-students-layout{grid-template-columns:235px minmax(0,1fr)}.teacher-student-controls{grid-template-columns:1fr}.teacher-student-hero{grid-template-columns:auto 1fr auto}.teacher-nudge{grid-column:1/-1;justify-content:center;justify-self:stretch}}@media (width<=820px){.teacher-admin{padding-bottom:72px;display:block}.teacher-admin-sidebar{z-index:50;width:100%;height:67px;padding:7px 9px;display:block;position:fixed;inset:auto 0 0}.teacher-admin-sidebar .teacher-admin-brand,.teacher-admin-sidebar-footer{display:none}.teacher-admin-sidebar nav{grid-template-columns:repeat(3,1fr);gap:3px;margin:0;display:grid}.teacher-admin-sidebar nav button,.teacher-admin-sidebar nav button.active{min-height:53px;box-shadow:none;text-align:center;border:0;grid-template-columns:1fr;gap:2px;padding:3px;font-size:6px}.teacher-admin-sidebar nav button .teacher-admin-mark{width:28px;height:28px;font-size:14px}.teacher-admin-sidebar nav button b{margin:0;top:7px;right:24%}.teacher-admin-main{padding:25px 14px 38px}.teacher-admin-topbar{flex-direction:column;align-items:stretch}.teacher-admin-topbar h1{font-size:2.75rem}.teacher-admin-summary{grid-template-columns:1fr 1fr;display:grid}.teacher-admin-summary span{min-width:0}.teacher-calendar-grid>div{min-height:72px;padding:4px}.calendar-booking{padding:4px}.calendar-booking span,.calendar-booking time{font-size:0}.calendar-booking:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.calendar-block{font-size:0}.calendar-block:after{content:"Blocked";font-size:7px}.teacher-calendar-side{grid-template-columns:1fr}.teacher-students-layout{grid-template-columns:1fr;display:grid}.teacher-student-list{max-height:none;position:static}.teacher-student-list>div:last-child{max-height:280px}.teacher-student-info-grid,.teacher-student-actions-grid{grid-template-columns:1fr}.teacher-booking-manager form{grid-template-columns:1fr 1fr}.teacher-booking-manager form>button{grid-column:1/-1}}@media (width<=540px){.teacher-gate-card{border-radius:22px;padding:27px 20px}.teacher-gate-card>.brand{margin-bottom:32px}.teacher-admin-card{padding:19px}.teacher-calendar-toolbar{flex-direction:column;align-items:flex-start;padding:19px}.teacher-calendar-grid>div{min-height:59px}.teacher-calendar-day-number{margin:0 auto 2px}.teacher-calendar-weekdays span{padding-inline:1px;font-size:6px}.teacher-student-hero{grid-template-columns:auto 1fr;padding:18px}.teacher-student-avatar{border-radius:16px;width:54px;height:54px}.teacher-student-balance{grid-column:1/-1;justify-content:center;align-items:baseline;gap:8px;display:flex}.teacher-student-balance strong{font-size:30px}.teacher-rating-scale{grid-template-columns:repeat(4,1fr)}.teacher-mini-grid,.teacher-booking-manager form{grid-template-columns:1fr}.teacher-student-info-grid{grid-template-columns:1fr 1fr}}.student-notification-center,.teacher-reschedule-inbox{background:linear-gradient(145deg,#fff,#fbf7ff);border:1px solid #43285217;border-radius:23px;margin-bottom:16px;padding:24px;box-shadow:0 11px 28px #331f400e}.student-notification-center>div:last-child,.teacher-reschedule-inbox>div:last-child{gap:9px;display:grid}.student-notification-center article{background:#fff;border:1px solid #e7dfea;border-radius:15px;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:13px;display:grid}.student-notification-icon{color:#6633a3;background:#eee4f7;border-radius:13px;place-items:center;width:43px;height:43px;display:grid}.student-notification-icon.type-nudge{color:#705a0d;background:#fff1b3}.student-notification-icon.type-reschedule{color:#426b26;background:#e7f5da}.student-notification-center article>div{min-width:0}.student-notification-center strong{font:400 18px/1.15 var(--serif)}.student-notification-center p{color:#6f6575;margin:5px 0;font-size:9px;line-height:1.5}.student-notification-center time{color:#988f9c;font-size:7px}.student-notification-center article>button{color:#6432a0;cursor:pointer;font:800 7px/1 var(--sans);background:#faf8fb;border:1px solid #dcd3e1;border-radius:9px;padding:8px 10px}.purchases-paused{background:linear-gradient(145deg,#fff,#fbf8fd)}.purchases-paused-message{background:#fff4f4;border:1px solid #ead9dc;border-radius:16px;align-items:center;gap:15px;padding:18px;display:flex}.purchases-paused-message>span{color:#8a3540;background:#f2dfe2;border-radius:14px;place-items:center;width:46px;height:46px;display:grid}.purchases-paused-message strong{font:400 20px/1.1 var(--serif)}.purchases-paused-message p{color:#7b676b;margin:6px 0 0;font-size:9px}.teacher-reschedule-inbox{background:linear-gradient(145deg,#f2fae9,#fff)}.teacher-reschedule-inbox article{background:#fff;border:1px solid #d9e9ca;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:15px;display:grid}.teacher-reschedule-icon{color:#3c6222;background:#caeda9;border-radius:15px;place-items:center;width:48px;height:48px;display:grid}.teacher-reschedule-inbox article>div:nth-child(2){min-width:0}.teacher-reschedule-inbox strong{font:400 19px/1.1 var(--serif)}.teacher-reschedule-inbox p{color:#6c626f;margin:5px 0;font-size:9px;line-height:1.45}.teacher-reschedule-inbox small{color:#8f8692;font-size:7px}.teacher-reschedule-inbox article>div:last-child{gap:7px;display:flex}.teacher-reschedule-inbox button{color:#654f6f;cursor:pointer;min-height:38px;font:800 7px/1 var(--sans);background:#fff;border:1px solid #d9d0dd;border-radius:10px;padding:9px 11px}.teacher-reschedule-inbox button:last-child{color:#fff;background:#6b37ad;border-color:#6333a0}.teacher-daily-caption{background:#f4fdebd1;border:1px solid #5e31791f;border-left:4px solid #79aa50;border-radius:0 14px 14px 0;max-width:620px;margin:20px 0 0;padding:14px 16px}.teacher-daily-caption span{color:#5f873f;letter-spacing:.12em;text-transform:uppercase;font-size:7px;font-weight:900}.teacher-daily-caption p{color:#46384e;font:italic 400 17px/1.4 var(--serif);margin:6px 0 0}@media (width<=760px){.student-notification-center,.teacher-reschedule-inbox{padding:19px}.student-notification-center article,.teacher-reschedule-inbox article{grid-template-columns:auto 1fr}.student-notification-center article>button,.teacher-reschedule-inbox article>div:last-child{grid-column:2;width:fit-content}}.portal-icon{flex:none;display:block}.student-login-page{background:#fbf9f5}.student-login-form input,.portal-form-card input,.portal-form-card select,.portal-form-card textarea,.portal-form-grid input{border-color:#ddd6e2;border-radius:12px;transition:border-color .18s,box-shadow .18s,transform .18s;box-shadow:0 1px #26163108}.student-login-form input:focus,.portal-form-card input:focus,.portal-form-card select:focus,.portal-form-card textarea:focus{border-color:#7542c8;outline:0;box-shadow:0 0 0 4px #7542c81a}.student-login-form .form-primary{background:linear-gradient(135deg,#7542c8,#5d2ca9);border-radius:12px;box-shadow:0 8px 22px #5e2ca933}.student-portal{background:#f8f6fb;grid-template-columns:282px 1fr}.portal-sidebar{z-index:2;background:linear-gradient(165deg,#241333 0%,#2f1742 58%,#1f1230 100%);border-right:0;padding:28px 22px 22px;overflow:hidden;box-shadow:10px 0 35px #24133314}.portal-sidebar:after{content:"";border:1px solid #bef4921f;border-radius:50%;width:190px;height:190px;position:absolute;bottom:120px;right:-80px}.portal-sidebar-glow{z-index:-1;background:radial-gradient(circle,#8249d06b,#0000 68%);border-radius:50%;width:250px;height:250px;position:absolute;top:-100px;left:-80px}.portal-brand{gap:12px}.portal-brand .brand-mark{background:linear-gradient(145deg,#8e54e9,#6b35ad);width:38px;height:38px;box-shadow:0 0 0 4px #ffffff0f,0 8px 18px #0003}.portal-brand>span:last-child{gap:2px;display:grid}.portal-brand strong{font-size:13px}.portal-brand small{color:#bce995;letter-spacing:.12em;text-transform:uppercase;font-size:8px;font-weight:800}.portal-student-mini{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff12;border:1px solid #ffffff1c;border-radius:18px;grid-template-columns:52px 1fr;gap:13px;margin:30px 0 24px;padding:14px;position:relative}.portal-avatar.small{background:linear-gradient(145deg,#8750df,#6630af);border:2px solid #c7ef9f;width:52px;height:52px;box-shadow:0 8px 20px #0000002e}.portal-student-mini strong{font-size:14px}.portal-student-mini span{color:#ffffff9e;margin-top:2px}.portal-nav{gap:7px}.portal-nav button{color:#ffffffad;border:1px solid #0000;border-radius:14px;grid-template-columns:38px 1fr auto;gap:10px;min-height:50px;padding:6px 12px 6px 7px;font-size:11px;transition:color .18s,background .18s,transform .18s,border-color .18s}.portal-nav button>span{color:#ffffffc7;background:#ffffff0f;border-radius:11px;place-items:center;width:36px;height:36px;display:grid}.portal-nav button:hover{color:#fff;background:#ffffff12;border-color:#ffffff17;transform:translate(2px)}.portal-nav button.active{color:#fff;background:linear-gradient(135deg,#7d49d2,#6130ab);border-color:#ffffff21;box-shadow:0 9px 24px #00000038}.portal-nav button.active>span{color:#2b173a;background:#c7ef9f;box-shadow:0 5px 13px #1c0f272e}.portal-nav button b{background:#f8de72;box-shadow:0 4px 10px #00000026}.portal-sidebar-tip{color:#c7ef9f;background:#c7ef9f14;border:1px solid #c7ef9f29;border-radius:16px;align-items:center;gap:10px;margin-top:auto;padding:14px;display:flex}.portal-sidebar-tip>div{gap:2px;display:grid}.portal-sidebar-tip strong{color:#fff;font-size:10px}.portal-sidebar-tip span{color:#ffffff8c;font-size:8px}.portal-sidebar-footer{gap:2px;margin-top:16px}.portal-sidebar-footer a,.portal-sidebar-footer button{border-radius:9px;align-items:center;gap:9px;padding:8px 10px;display:flex}.portal-sidebar-footer a:hover,.portal-sidebar-footer button:hover{background:#ffffff0f}.portal-main{background:radial-gradient(circle at 96% 1%,#caefa652,#0000 23%),radial-gradient(circle at 68% -5%,#e1cdfa52,#0000 23%),#f8f6fb;padding:42px clamp(26px,4vw,62px) 80px;position:relative;overflow:hidden}.portal-main:before{z-index:0;content:"";border:1px dashed #6b35ad26;border-radius:50%;width:70px;height:70px;position:absolute;top:115px;right:30px}.portal-main>*{z-index:1;position:relative}.portal-topbar{align-items:center;margin-bottom:32px}.portal-topbar h1{font-size:clamp(2.6rem,4.7vw,4.8rem)}.portal-topbar h1>span{font:400 .55em/1 var(--sans);display:inline-block;transform:rotate(-8deg)}.portal-topbar>div:first-child>small{color:#756c7c;margin-top:12px;font-size:11px;display:block}.level-card{background:linear-gradient(135deg,#e8f8d8,#c9efa2);border:1px solid #c9eaa9;border-radius:18px;min-width:238px;padding:16px 18px;box-shadow:0 9px 24px #5a84311f}.level-card>span{color:#46672f;align-items:center;gap:7px;display:flex}.portal-message{border-radius:12px}.portal-view{max-width:1440px}.portal-metrics{gap:16px}.portal-metrics article{border:1px solid #351f4314;border-radius:24px;min-height:184px;padding:22px;position:relative;overflow:hidden;box-shadow:0 12px 32px #36224312}.portal-metrics article:after{content:"";border:18px solid #ffffff47;border-radius:50%;width:120px;height:120px;position:absolute;bottom:-35px;right:-24px}.portal-metrics article:first-child{background:linear-gradient(145deg,#fff0a9,#f8da70)}.portal-metrics article:nth-child(2){background:linear-gradient(145deg,#eee1fa,#dbc3f4)}.portal-metrics article:nth-child(3){background:linear-gradient(145deg,#dff4cd,#bfe99e)}.portal-metrics .metric-icon{color:#412054;background:#ffffff94;border-radius:13px;place-items:center;width:40px;height:40px;margin-bottom:14px;display:grid;box-shadow:0 6px 16px #3f1f5314}.portal-metrics strong{z-index:1;position:relative}.portal-metrics small{z-index:1;color:#62576a;position:relative}.portal-overview-grid{gap:16px;margin-top:16px}.next-lesson-card,.package-summary-card,.buy-more-section,.portal-form-card,.bookings-section,.profile-identity-card,.classroom-section{background:#ffffffe6;border:1px solid #351f4317;border-radius:24px;box-shadow:0 12px 34px #341f420e}.portal-section-heading h2{font-size:clamp(1.65rem,2.5vw,2.5rem)}.portal-status{padding:7px 10px}.portal-primary-link,.portal-action{background:linear-gradient(135deg,#7542c8,#5b2aa4);border:0;border-radius:13px;min-height:50px;padding:14px 17px;transition:box-shadow .18s,transform .18s;box-shadow:0 8px 20px #5d2ba633}.portal-primary-link:hover,.portal-action:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 26px #5d2ba647}.portal-primary-link>span,.portal-action>span{align-items:center;gap:9px;display:flex}.package-list>div{border-color:#e8e2ec}.portal-empty{padding:34px 0 10px}.portal-empty-icon{color:#6b35ad;background:#eee3fa;border-radius:15px;place-items:center;width:48px;height:48px;display:grid}.buy-more-section{margin-top:16px}.buy-more-grid a{background:linear-gradient(145deg,#fff,#faf7fc);border:1px solid #dcd3e2;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:5px 10px;min-height:152px;padding:19px;box-shadow:0 5px 15px #361f440a}.buy-more-grid a:hover{border-color:#7b46cc;transform:translateY(-4px);box-shadow:0 11px 25px #522a6e1f}.buy-more-grid a.featured{background:linear-gradient(145deg,#fff1aa,#f6d668);border-color:#e0be40}.buy-more-grid a>.portal-icon{color:#6b35ad;grid-area:1/1}.buy-more-grid a>span{grid-column:2}.buy-more-grid a>strong{grid-column:1/3;align-self:end}.buy-more-grid a>small{grid-column:1/3}.buy-more-grid a>i{color:#fff;background:#2d1939;border-radius:50%;grid-area:2/3/4;place-items:center;width:34px;height:34px;display:grid}.buy-more-grid a>b{border-radius:7px}.booking-list>article{border-color:#e3dce7;border-radius:16px;box-shadow:0 4px 13px #361f4409}.booking-date{background:linear-gradient(145deg,#e5f7d5,#c4eba4);border-radius:15px}.reschedule-form button{border-radius:10px}.profile-identity-card{background:linear-gradient(135deg,#fff,#faf3ff)}.avatar-upload>span{color:#5e2ba9;background:#eee3fa;border:0;border-radius:11px;align-items:center;gap:8px;padding:11px 15px;display:flex}.security-note{border-radius:15px}.classroom-view{gap:18px;display:grid}.classroom-hero{color:#fff;background:linear-gradient(135deg,#6d38b7 0%,#8554d0 52%,#53278f 100%);border-radius:28px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;min-height:210px;padding:34px;display:grid;position:relative;overflow:hidden;box-shadow:0 16px 38px #54279038}.classroom-hero:before{content:"";border:1px solid #ffffff21;border-radius:50%;width:260px;height:260px;position:absolute;top:-100px;right:140px}.classroom-hero:after{content:"";border:40px solid #c7ef9f1f;border-radius:50%;width:220px;height:220px;position:absolute;bottom:-110px;right:85px}.classroom-hero-icon{z-index:1;color:#2d1939;background:#c7ef9f;border-radius:22px;place-items:center;width:72px;height:72px;display:grid;position:relative;transform:rotate(-4deg);box-shadow:0 10px 24px #23113133}.classroom-hero>div:nth-child(2){z-index:1;position:relative}.classroom-hero p{color:#d9ffb5;letter-spacing:.15em;text-transform:uppercase;margin:0 0 8px;font-size:9px;font-weight:900}.classroom-hero h2{max-width:720px;font:400 clamp(2.1rem, 4vw, 4.2rem)/.96 var(--serif);letter-spacing:-.045em;margin:0}.classroom-hero div>span{color:#ffffffb8;max-width:610px;margin-top:16px;font-size:11px;line-height:1.65;display:block}.classroom-doodle{z-index:1;border:2px dashed #ffffff4d;border-radius:50%;place-items:center;width:120px;height:120px;display:grid;position:relative;transform:rotate(8deg)}.classroom-doodle span{color:#fff!important;font:italic 38px/1 var(--serif)!important;margin:0!important}.classroom-doodle i{color:#f7df72;font-size:23px;font-style:normal;position:absolute;top:1px;right:4px}.classroom-summary{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.classroom-summary article{background:#fff;border:1px solid #351f4314;border-radius:18px;grid-template-columns:1fr auto;gap:3px 18px;padding:19px 21px;display:grid;box-shadow:0 7px 20px #331f400b}.classroom-summary span{color:#6b35ad;text-transform:uppercase;align-items:center;gap:8px;font-size:9px;font-weight:850;display:flex}.classroom-summary strong{font:400 35px/1 var(--serif);grid-area:1/2/3;align-self:center}.classroom-summary small{color:#817788;font-size:9px}.classroom-section{padding:28px}.teacher-note-list{gap:15px;display:grid}.teacher-note-card{background:linear-gradient(145deg,#fff,#fdfbff);border:1px solid #e4dce9;border-radius:20px;padding:25px;position:relative;overflow:hidden}.teacher-note-card:before{content:"";background:linear-gradient(#8450d4,#c7ef9f);width:5px;position:absolute;top:0;bottom:0;left:0}.teacher-note-card header{justify-content:space-between;align-items:center;gap:20px;display:flex}.teacher-note-author{align-items:center;gap:11px;display:flex}.teacher-note-avatar{color:#fff;width:40px;height:40px;font:italic 19px/1 var(--serif);background:linear-gradient(145deg,#8a52da,#6330a8);border-radius:13px;place-items:center;display:grid}.teacher-note-author>div{gap:3px;display:grid}.teacher-note-author strong{font-size:11px}.teacher-note-author small{color:#847b89;font-size:8px}.teacher-note-card header>b{text-transform:uppercase;background:#f8df75;border-radius:99px;padding:6px 9px;font-size:8px}.teacher-note-card>h3{font:400 27px/1.1 var(--serif);margin:20px 0 8px}.teacher-note-card>p{color:#554c5b;max-width:920px;margin:0 0 20px;font-size:13px;line-height:1.75}.feedback-details{gap:11px}.feedback-details div{border-radius:15px}.feedback-details .detail-strength{background:#eef9e4}.feedback-details .detail-focus{background:#f1e9fa}.feedback-details .detail-homework{background:#fff5c9}.feedback-details span{align-items:center;gap:6px;display:flex}.classroom-columns{grid-template-columns:1.08fr .92fr;align-items:start;gap:18px;display:grid}.resource-list,.homework-list{gap:11px;margin-top:22px;display:grid}.resource-card{background:#fff;border:1px solid #e4dde8;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:15px;transition:border-color .18s,transform .18s,box-shadow .18s;display:grid}.resource-card:hover{border-color:#b996dc;transform:translateY(-2px);box-shadow:0 8px 20px #41225414}.resource-icon{color:#6b35ad;background:#eee4f8;border-radius:14px;place-items:center;width:46px;height:46px;display:grid}.resource-link .resource-icon{color:#477526;background:#e7f6d8}.resource-card>div{min-width:0}.resource-card small,.homework-list small{color:#6b35ad;letter-spacing:.08em;text-transform:uppercase;font-size:7px;font-weight:850}.resource-card h3,.homework-list h3{font:400 18px/1.15 var(--serif);margin:4px 0 0}.resource-card p,.homework-list p{color:#756c7b;margin:6px 0 0;font-size:9px;line-height:1.55}.resource-card time{color:#958d99;margin-top:7px;font-size:7px;display:block}.resource-card>button,.resource-card>a{color:#fff;cursor:pointer;font:800 8px/1 var(--sans);background:#2d1939;border:0;border-radius:10px;align-items:center;gap:6px;padding:9px 10px;display:flex}.resource-card>button:disabled{opacity:.55}.homework-section{background:linear-gradient(145deg,#fff,#fffdf3)}.homework-list>article{background:#fffdf5;border:1px solid #eadfba;border-radius:16px;grid-template-columns:auto 1fr;gap:12px;padding:15px;display:grid}.homework-check{color:#6c5711;background:#fff4ba;border:2px solid #e7cf72;border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.homework-list button,.homework-list a{color:#6b35ad;cursor:pointer;width:fit-content;font:800 8px/1 var(--sans);background:0 0;border:0;border-bottom:1px solid;align-items:center;gap:6px;margin-top:10px;padding:0 0 3px;display:flex}@media (width<=1050px){.student-portal{grid-template-columns:92px 1fr}.portal-sidebar{padding-inline:14px}.portal-brand>span:last-child,.portal-student-mini>div:last-child,.portal-sidebar-tip{display:none}.portal-student-mini{justify-content:center;padding:10px;display:flex}.portal-nav button{grid-template-columns:1fr;justify-items:center;padding:7px;font-size:0}.portal-nav button>span{width:39px;height:39px}.portal-sidebar-footer a,.portal-sidebar-footer button{justify-content:center;font-size:0}.classroom-columns{grid-template-columns:1fr}}@media (width<=760px){.portal-sidebar{background:#281638;padding:7px 8px}.portal-sidebar:after,.portal-sidebar-glow{display:none}.portal-nav button,.portal-nav button.active{min-height:54px;box-shadow:none;border:0;border-radius:10px;padding:4px 2px;font-size:7px}.portal-nav button>span,.portal-nav button.active>span{color:currentColor;width:28px;height:28px;box-shadow:none;background:0 0;border-radius:8px}.portal-nav button .portal-icon{width:17px;height:17px}.portal-nav button.active{color:#fff;background:#7442c0}.portal-main{padding:25px 15px 42px}.portal-main:before{display:none}.portal-topbar{gap:18px}.portal-topbar h1{font-size:2.65rem}.portal-topbar>div:first-child>small{font-size:10px}.portal-metrics{grid-template-columns:1fr}.portal-metrics article{min-height:145px}.buy-more-grid{grid-template-columns:1fr}.classroom-hero{border-radius:22px;grid-template-columns:auto 1fr;min-height:0;padding:24px 20px}.classroom-hero-icon{border-radius:17px;width:56px;height:56px}.classroom-hero h2{font-size:2.2rem}.classroom-doodle{display:none}.classroom-summary{grid-template-columns:1fr}.classroom-section{padding:20px}.feedback-details{grid-template-columns:1fr}.resource-card{grid-template-columns:auto 1fr}.resource-card>button,.resource-card>a{grid-column:2;width:fit-content}.resource-card>button span,.resource-card>a span{display:inline}}.teacher-gate{font-size:16px}.teacher-gate-card{border-radius:32px;width:min(100%,620px);padding:48px;box-shadow:0 32px 90px #331b422e}.teacher-gate-icon{border-radius:22px;width:72px;height:72px}.teacher-gate-icon .teacher-admin-mark{font-size:26px}.teacher-kicker{margin-bottom:12px;font-size:13px;line-height:1.4}.teacher-gate h1{max-width:510px;margin-bottom:20px}.teacher-gate h1+p{margin-bottom:34px;font-size:17px;line-height:1.7}.teacher-gate label,.teacher-admin-card label,.teacher-booking-manager form label{gap:9px;font-size:14px;line-height:1.35}.teacher-gate input,.teacher-admin-card input,.teacher-admin-card select,.teacher-admin-card textarea,.teacher-booking-manager input,.teacher-booking-manager select{min-height:50px;font:600 16px/1.4 var(--sans);border-radius:13px;padding:14px 16px}.teacher-admin-card textarea{resize:vertical;min-height:118px}.teacher-gate form>button,.teacher-primary{min-height:54px;font:850 15px/1.2 var(--sans);border-radius:14px;padding:15px 20px}.teacher-security-foot{padding:17px}.teacher-security-foot .teacher-admin-mark{width:36px;height:36px}.teacher-security-foot>span{gap:5px;font-size:13px}.teacher-security-foot strong{font-size:15px}.teacher-back-link,.teacher-text-button{font-size:14px;line-height:1.3}.teacher-gate-loading p{font-size:15px}.teacher-security-badge{padding:9px 13px;font-size:13px}.teacher-mfa-secret{padding:16px}.teacher-mfa-secret span{font-size:12px}.teacher-mfa-secret code{font-size:14px;line-height:1.5}.teacher-admin{background:#f5f2f7;grid-template-columns:300px minmax(0,1fr);font-size:16px}.teacher-admin-sidebar{padding:32px 24px 26px}.teacher-admin-brand>span:last-child{display:grid}.teacher-admin-brand strong{font-size:18px}.teacher-admin-brand small{font-size:11px;line-height:1.35}.teacher-secure-chip{letter-spacing:.08em;margin:30px 0 22px;padding:9px 12px;font-size:11px;display:flex}.teacher-admin-sidebar nav{gap:9px;margin:0}.teacher-admin-sidebar nav button{min-height:58px;font:800 15px/1.25 var(--sans);border-radius:15px;grid-template-columns:44px 1fr auto;padding:7px 13px 7px 8px;position:relative}.teacher-admin-sidebar nav button .teacher-admin-mark{border-radius:12px;width:42px;height:42px;font-size:19px}.teacher-admin-sidebar nav button b{min-width:24px;height:24px;font-size:12px}.teacher-admin-side-note{padding:17px;display:flex}.teacher-admin-side-note>span{font-size:12px;line-height:1.55}.teacher-admin-side-note strong{font-size:14px}.teacher-admin-sidebar-footer a,.teacher-admin-sidebar-footer button{font:750 13px/1.25 var(--sans);text-align:left;padding:11px}.teacher-admin-main{padding:46px clamp(28px,4vw,68px) 90px}.teacher-admin-topbar{margin-bottom:34px}.teacher-admin-topbar p,.teacher-admin-card-heading p,.teacher-caption-meta p,.teacher-student-hero p{margin-bottom:9px;font-size:12px;line-height:1.4}.teacher-admin-topbar h1{font-size:clamp(3.25rem,5vw,5.25rem)}.teacher-admin-summary{gap:12px}.teacher-admin-summary span{border-radius:18px;gap:6px;min-width:118px;padding:16px 19px;font-size:13px;line-height:1.3}.teacher-admin-summary strong{font-size:32px}.teacher-admin-message{border-radius:15px;padding:17px 20px;font-size:15px;line-height:1.5}.teacher-admin-card{border-color:#3b24481c;border-radius:24px;padding:30px;box-shadow:0 15px 42px #35204213}.teacher-admin-card-heading{margin-bottom:24px}.teacher-admin-card-heading h2{font-size:32px;line-height:1.05}.teacher-admin-card-heading>span,.teacher-admin-card-heading>strong{border-radius:10px;padding:8px 11px;font-size:13px;line-height:1.3}.teacher-admin-card .teacher-admin-mark{border-radius:14px;width:44px;height:44px;font-size:19px}.teacher-admin-profile-grid{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:24px}.teacher-caption-card{gap:18px}.teacher-caption-preview{border-radius:20px;grid-template-columns:76px 1fr;gap:18px;padding:22px}.teacher-caption-preview>span{font-size:12px}.teacher-caption-preview img{border-radius:20px;width:76px;height:76px}.teacher-caption-preview strong{font-size:27px}.teacher-caption-preview p{margin-top:9px;font-size:15px;line-height:1.6}.teacher-admin-stack{gap:24px}.teacher-security-card p{font-size:12px}.teacher-security-card h2{font-size:34px}.teacher-security-card li{padding-left:24px;font-size:14px;line-height:1.65}.teacher-caption-meta strong{font-size:28px}.teacher-caption-meta span{font-size:14px;line-height:1.6}.teacher-calendar-layout{grid-template-columns:minmax(660px,1.5fr) minmax(360px,.5fr);gap:24px}.teacher-calendar-toolbar{padding:28px 30px}.teacher-calendar-toolbar p{font-size:12px}.teacher-calendar-toolbar h2{font-size:35px}.teacher-calendar-toolbar button{min-width:46px;height:46px;font:800 14px/1 var(--sans);border-radius:12px;padding:0 14px}.teacher-calendar-weekdays{padding:0 14px}.teacher-calendar-weekdays span{padding:15px 8px;font-size:12px}.teacher-calendar-grid>div{min-height:145px;padding:10px}.teacher-calendar-day-number{width:34px;height:34px;font:800 14px/1 var(--sans);margin-bottom:7px}.calendar-booking,.calendar-block{font:750 12px/1.25 var(--sans);border-radius:9px;gap:7px;margin-top:6px;padding:8px}.teacher-calendar-grid>div>small{margin-top:6px;font-size:11px}.teacher-calendar-side{gap:24px}.teacher-block-form{gap:16px}.teacher-upcoming-list{gap:12px}.teacher-upcoming-list article{border-radius:15px;gap:8px 10px;padding:16px}.teacher-upcoming-list strong{font-size:15px}.teacher-upcoming-list time{font-size:13px;line-height:1.4}.teacher-upcoming-list article>button{font:800 13px/1.3 var(--sans)}.teacher-status{padding:6px 9px;font-size:11px;line-height:1.25}.teacher-block-list strong{font-size:15px}.teacher-block-list span{font-size:13px;line-height:1.5}.teacher-block-list button{font:800 13px/1.3 var(--sans)}.teacher-empty{font-size:14px;line-height:1.6}.teacher-students-layout{grid-template-columns:330px minmax(0,1fr);gap:24px}.teacher-student-list{padding:24px}.teacher-student-list>div:last-child{gap:8px}.teacher-student-list>div>button{border-radius:15px;grid-template-columns:50px 1fr auto;gap:12px;min-height:68px;padding:10px}.teacher-student-initials{border-radius:15px;width:50px;height:50px;font-size:19px}.teacher-student-list button strong{font-size:15px;line-height:1.3}.teacher-student-list button small{font-size:12px;line-height:1.35}.teacher-student-list button b{padding:6px 8px;font-size:10px}.teacher-student-workspace{gap:22px}.teacher-student-hero{border-radius:25px;gap:20px;padding:28px}.teacher-student-avatar{border-radius:22px;width:76px;height:76px;font-size:30px}.teacher-student-hero h2{font-size:41px}.teacher-student-hero>div:nth-child(2)>span{margin-top:8px;font-size:14px;line-height:1.4}.teacher-student-balance{gap:5px;min-width:110px}.teacher-student-balance span{font-size:12px}.teacher-student-balance strong{font-size:46px}.teacher-nudge{min-height:50px;font:850 14px/1.2 var(--sans);border-radius:14px;padding:12px 16px}.teacher-student-info-grid{gap:12px}.teacher-student-info-grid article{border-radius:16px;gap:8px;min-height:82px;padding:17px 18px}.teacher-student-info-grid span{font-size:11px}.teacher-student-info-grid strong,.teacher-student-info-grid a{font-size:15px;line-height:1.4}.teacher-student-controls{gap:22px}.teacher-rating-scale{grid-template-columns:repeat(4,1fr);gap:9px}.teacher-rating-scale button{border-radius:12px;gap:6px;min-height:76px;padding:9px 6px}.teacher-rating-scale button span{font-size:24px}.teacher-rating-scale button small{text-overflow:clip;white-space:normal;font-size:11px;line-height:1.15;overflow:visible}.teacher-rating-selected{min-height:48px;margin:18px 0;font-size:14px;line-height:1.6}.teacher-purchase-toggle{padding:17px;gap:14px!important}.teacher-purchase-toggle input{min-height:auto}.teacher-purchase-toggle b{font-size:15px}.teacher-purchase-toggle small{font-size:13px;line-height:1.45}.teacher-booking-manager>div:last-child{gap:14px;max-height:620px}.teacher-booking-manager form{border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:18px}.teacher-booking-manager form header{grid-column:1/-1}.teacher-booking-manager form header strong{font-size:15px}.teacher-booking-manager form header span:not(.teacher-status){font-size:13px}.teacher-booking-manager form input,.teacher-booking-manager form select{min-height:46px;padding:11px 12px;font-size:15px}.teacher-booking-manager form>button{min-height:46px;font:800 14px/1.2 var(--sans);border-radius:11px;grid-column:1/-1;padding:12px 15px}.teacher-pending-payments{background:linear-gradient(145deg,#fff9dc,#fff1ad);border:1px solid #ebd98a;border-radius:17px;gap:11px;margin:18px 0;padding:18px;display:grid}.teacher-pending-payments>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.teacher-pending-payments>header p{color:#805f15;letter-spacing:.1em;text-transform:uppercase;margin:0 0 4px;font-size:10px;font-weight:900}.teacher-pending-payments>header h3{font:400 24px/1 var(--serif);margin:0}.teacher-pending-payments>header>span{color:#fff;background:#342040;border-radius:10px;padding:7px 10px;font-size:11px;font-weight:850}.teacher-pending-payments article{background:#ffffffb8;border:1px solid #664c142e;border-radius:13px;justify-content:space-between;align-items:center;gap:18px;padding:14px;display:flex}.teacher-pending-payments article strong,.teacher-pending-payments article span,.teacher-pending-payments article small{display:block}.teacher-pending-payments article strong{margin-bottom:5px;font-size:14px}.teacher-pending-payments article span{color:#62533a;margin-bottom:4px;font-size:12px}.teacher-pending-payments article small{color:#817359;font-size:10px;line-height:1.45}.teacher-pending-payments article button{color:#fff;cursor:pointer;min-height:42px;font:800 12px/1.2 var(--sans);background:#6333a5;border:0;border-radius:11px;flex:none;padding:0 14px}.teacher-student-actions-grid{gap:22px}.teacher-student-actions-grid form{gap:16px}.teacher-mini-grid{gap:12px}.teacher-file-input input{font-size:14px}.teacher-no-student p{font-size:15px;line-height:1.6}.teacher-reschedule-inbox{padding:28px}.teacher-reschedule-inbox>div:last-child{gap:12px}.teacher-reschedule-inbox article{gap:17px;padding:18px}.teacher-reschedule-inbox strong{font-size:23px}.teacher-reschedule-inbox p{margin:7px 0;font-size:15px;line-height:1.55}.teacher-reschedule-inbox small{font-size:13px;line-height:1.45}.teacher-reschedule-inbox button{min-height:44px;font:800 14px/1.2 var(--sans);padding:11px 14px}@media (width<=1280px){.teacher-admin{grid-template-columns:260px minmax(0,1fr)}.teacher-admin-sidebar{padding-inline:18px}.teacher-calendar-layout,.teacher-admin-profile-grid,.teacher-student-controls{grid-template-columns:1fr}.teacher-calendar-side{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-students-layout{grid-template-columns:290px minmax(0,1fr)}}@media (width<=980px){.teacher-admin{padding-bottom:88px;display:block}.teacher-admin-sidebar{z-index:50;width:100%;height:82px;padding:8px 12px;display:block;position:fixed;inset:auto 0 0}.teacher-admin-sidebar .teacher-admin-brand,.teacher-admin-sidebar .teacher-secure-chip,.teacher-admin-sidebar .teacher-admin-side-note,.teacher-admin-sidebar-footer{display:none}.teacher-admin-sidebar nav{grid-template-columns:repeat(3,1fr);gap:7px}.teacher-admin-sidebar nav button,.teacher-admin-sidebar nav button.active{min-height:66px;box-shadow:none;text-align:center;border:0;grid-template-columns:1fr;gap:3px;padding:5px;font-size:12px}.teacher-admin-sidebar nav button .teacher-admin-mark{width:31px;height:31px;font-size:16px}.teacher-admin-sidebar nav button b{margin:0;font-size:10px;position:absolute;top:4px;right:21%}.teacher-admin-main{padding:32px 20px 52px}.teacher-admin-topbar{flex-direction:column;align-items:stretch}.teacher-calendar-card{overflow-x:auto}.teacher-calendar-toolbar,.teacher-calendar-weekdays,.teacher-calendar-grid{min-width:760px}.calendar-booking span,.calendar-booking time,.calendar-block{font-size:12px}.calendar-block:after{content:none}.teacher-students-layout{grid-template-columns:1fr}.teacher-student-list{max-height:none;position:static}.teacher-student-list>div:last-child{max-height:330px}}@media (width<=680px){.teacher-gate{padding:24px 14px}.teacher-gate-card{border-radius:24px;padding:30px 22px}.teacher-gate-card>.brand{margin-bottom:34px}.teacher-gate h1{font-size:3rem}.teacher-admin-main{padding-inline:14px}.teacher-admin-topbar h1{font-size:3rem}.teacher-admin-summary{grid-template-columns:1fr 1fr;display:grid}.teacher-admin-summary span{min-width:0}.teacher-admin-card{border-radius:20px;padding:22px}.teacher-admin-card-heading h2{font-size:28px}.teacher-calendar-side,.teacher-student-actions-grid,.teacher-student-info-grid,.teacher-mini-grid,.teacher-booking-manager form{grid-template-columns:1fr}.teacher-student-hero{grid-template-columns:auto 1fr;padding:22px}.teacher-student-avatar{border-radius:18px;width:62px;height:62px}.teacher-student-hero h2{font-size:34px}.teacher-student-balance{grid-column:1/-1;justify-content:center;align-items:baseline;gap:10px;display:flex}.teacher-nudge{grid-column:1/-1;justify-content:center}.teacher-rating-scale{grid-template-columns:repeat(2,1fr)}.teacher-pending-payments article{flex-direction:column;align-items:stretch}.teacher-pending-payments article button{width:100%}.teacher-reschedule-inbox article{grid-template-columns:1fr}.teacher-reschedule-inbox article>div:last-child{flex-wrap:wrap;grid-column:1}}.teacher-student-panel-tabs{background:#ffffffe6;border:1px solid #4427541c;border-radius:22px;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;padding:12px;display:grid;box-shadow:0 14px 36px #35204212}.teacher-student-panel-tabs button{color:#584661;cursor:pointer;min-height:58px;font:800 14px/1.2 var(--sans);text-align:left;background:#faf8fc;border:1px solid #e4dce9;border-radius:14px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:9px 12px 9px 9px;transition:border-color .18s,box-shadow .18s,color .18s,transform .18s,background .18s;display:grid;position:relative}.teacher-student-panel-tabs button:hover{color:#5f2e9b;background:#f5effa;border-color:#bca4d1;transform:translateY(-1px)}.teacher-student-panel-tabs button:focus-visible{outline-offset:2px;outline:3px solid #703eb73b}.teacher-student-panel-tabs button.active{color:#fff;background:linear-gradient(135deg,#7d47c8,#5d2998);border-color:#6d38b3;box-shadow:0 10px 22px #5b299738}.teacher-student-panel-tabs .teacher-admin-mark{color:#47702d;background:#e8f6db;border-radius:11px;place-items:center;width:38px;height:38px;font-size:17px;display:grid}.teacher-student-panel-tabs button.active .teacher-admin-mark{color:#2d1938;background:#c9efa4}.teacher-student-panel-tabs button b{color:#6533a0;background:#eee4f7;border-radius:99px;place-items:center;min-width:24px;height:24px;padding:0 6px;font-size:11px;display:grid}.teacher-student-panel-tabs button.active b{color:#fff;background:#ffffff2e}.teacher-student-panel-card{justify-self:start;width:min(100%,1000px);min-height:430px;animation:.2s ease-out teacher-panel-enter}form.teacher-student-panel-card{align-content:start;gap:18px;display:grid}.teacher-student-panel-card .teacher-admin-card-heading{border-bottom:1px solid #ece5ef;padding-bottom:20px}.teacher-student-panel-card .teacher-primary{width:fit-content;min-width:220px;margin-top:4px}.teacher-student-panel-card.teacher-rating-card .teacher-rating-scale{grid-template-columns:repeat(6,minmax(100px,1fr))}@keyframes teacher-panel-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=1420px){.teacher-student-panel-card.teacher-rating-card .teacher-rating-scale{grid-template-columns:repeat(4,minmax(100px,1fr))}}@media (width<=680px){.teacher-student-panel-tabs{border-radius:18px;grid-template-columns:repeat(2,minmax(0,1fr));padding:9px}.teacher-student-panel-tabs button{grid-template-columns:34px 1fr auto;gap:7px;min-height:54px;padding:7px;font-size:12px}.teacher-student-panel-tabs .teacher-admin-mark{width:34px;height:34px}.teacher-student-panel-card{min-height:0}.teacher-student-panel-card .teacher-primary{width:100%;min-width:0}.teacher-student-panel-card.teacher-rating-card .teacher-rating-scale{grid-template-columns:repeat(2,minmax(0,1fr))}}.home-page .about,.home-page .method,.home-page .pricing,.home-page .booking{isolation:isolate;position:relative;overflow:hidden}.home-page .about>:not(.pet-doodle),.home-page .method>:not(.pet-doodle),.home-page .pricing>:not(.pet-doodle),.home-page .booking>:not(.pet-doodle){z-index:1;position:relative}.pet-doodle{z-index:0;opacity:.075;pointer-events:none;-webkit-user-select:none;user-select:none;width:clamp(170px,20vw,340px);height:auto;position:absolute}.pet-doodle-about{bottom:-5%;right:1%;transform:rotate(-7deg)}.pet-doodle-method{top:5%;left:-4%;transform:rotate(9deg)}.pet-doodle-pricing{bottom:1%;right:-2%;transform:rotate(6deg)}.pet-doodle-booking{opacity:.11;width:clamp(220px,26vw,430px);bottom:-16%;right:23%;transform:rotate(-4deg)}.booking-window-note{color:#506342;letter-spacing:0;text-transform:none;background:#f2faea;border:1px solid #d9ebc8;border-radius:13px;align-items:flex-start;gap:9px;margin-top:2px;padding:13px 14px;font-size:13px;font-weight:650;line-height:1.55;display:flex}.booking-window-note .portal-icon{color:#6b35ad;flex:none;margin-top:2px}.availability-first-cta{background:linear-gradient(135deg,#f4fbe9,#e3f5d1);border:1px solid #dbecca;border-radius:17px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin-top:22px;padding:18px;display:grid}.availability-first-cta>span{color:#6733ad;background:#fff;border-radius:15px;place-items:center;width:48px;height:48px;display:grid}.availability-first-cta strong{margin-bottom:5px;font-size:14px;display:block}.availability-first-cta p{color:#665c6d;margin:0;font-size:11px;line-height:1.55}.availability-first-cta button{color:#fff;cursor:pointer;min-height:44px;font:800 10px/1 var(--sans);background:#2d1939;border:0;border-radius:12px;align-items:center;gap:8px;padding:0 15px;display:flex}.teacher-hours-banner{color:#415a31;background:linear-gradient(135deg,#f3faeb,#e2f4d0);border:1px solid #d8ecc5;border-radius:15px;align-items:center;gap:13px;margin-top:22px;padding:16px 17px;display:flex}.teacher-hours-banner .portal-icon{color:#6b35ad;flex:none}.teacher-hours-banner strong,.teacher-hours-banner span{display:block}.teacher-hours-banner strong{margin-bottom:4px;font-size:12px}.teacher-hours-banner span{color:#607251;font-size:10px;line-height:1.5}.availability-picker{border:0;min-width:0;margin:0;padding:0}.availability-picker legend{letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;font-size:10px;font-weight:850}.student-login-brand-row{justify-content:space-between;align-items:center;gap:18px;display:flex}.portal-language-switcher{background:#ffffff12;border:1px solid #ffffff29;border-radius:13px;grid-template-columns:repeat(4,1fr);gap:4px;padding:5px;display:grid}.portal-language-switcher button{min-width:36px;height:32px;color:inherit;cursor:pointer;font:850 10px/1 var(--sans);background:0 0;border:0;border-radius:9px;padding:0 7px}.portal-language-switcher button:hover{background:#ffffff1a}.portal-language-switcher button[aria-pressed=true]{color:#382047;background:#c9efa4;box-shadow:0 4px 12px #1f122626}.student-login-brand-row .portal-language-switcher{color:#57366d;background:#f8f3fb;border-color:#ddd2e4}.portal-sidebar>.portal-language-switcher{margin:14px 0}.booking-timezone-selector{background:#fbf8fd;border:1px solid #ddd3e4;border-radius:15px;grid-template-columns:minmax(0,1fr) minmax(220px,320px);align-items:center;gap:7px 18px;margin-top:22px;padding:16px 17px;display:grid!important}.booking-timezone-selector>span{color:#53316b;align-items:center;gap:8px;display:flex}.booking-timezone-selector select{color:#352342;min-height:44px;font:750 12px/1 var(--sans);background:#fff;border:1px solid #d5cadc;border-radius:11px;padding:0 38px 0 12px}.booking-timezone-selector small{color:#7c7083;grid-column:1/-1;font-size:10px}.availability-calendar-heading,.availability-time-heading{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.availability-calendar-heading{margin:4px 0 12px}.availability-calendar-heading strong{font:400 25px/1.1 var(--serif)}.availability-calendar-heading span,.availability-time-heading span{color:#796e7e;font-size:10px}.availability-calendar-weekdays,.availability-calendar{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.availability-calendar-weekdays{margin-bottom:5px}.availability-calendar-weekdays span{color:#85798b;text-align:center;text-transform:uppercase;padding:8px 2px;font-size:9px;font-weight:850}.availability-calendar{gap:6px}.availability-calendar>button,.availability-calendar>.calendar-blank{min-height:68px}.availability-calendar>button{color:#9c929f;font-family:var(--sans);background:#f8f5f9;border:1px solid #e3dce7;border-radius:12px;align-content:center;justify-items:center;gap:3px;padding:7px;display:grid;position:relative}.availability-calendar>button small{text-transform:uppercase;font-size:8px;font-weight:750}.availability-calendar>button strong{font-size:16px}.availability-calendar>button>span{color:#486230;background:#dff1cf;border-radius:9px;place-items:center;min-width:18px;height:18px;font-size:8px;font-weight:850;display:grid;position:absolute;top:5px;right:6px}.availability-calendar>button.available{color:#3f592d;cursor:pointer;background:#f2faeb;border-color:#cfe6bb}.availability-calendar>button.available:hover{border-color:#7a45bd;transform:translateY(-1px)}.availability-calendar>button.active{color:#fff;background:linear-gradient(145deg,#8050ca,#6030a3);border-color:#6e39b3;box-shadow:0 8px 18px #5b2aa433}.availability-calendar>button.active>span{color:#33203f;background:#c9efa4}.availability-time-heading{margin:22px 0 2px}.availability-time-heading strong{color:#513265;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:850}.english-only-note{align-items:center;gap:6px;margin:6px 0 8px;color:#6b35ad!important;letter-spacing:0!important;text-transform:none!important;font-size:10px!important;font-weight:750!important;display:flex!important}.english-only-banner{color:#62379a;background:#f7f0fb;border:1px solid #dac9e8;border-radius:11px;align-items:center;gap:8px;margin:0 0 16px;padding:11px 13px;font-size:11px;font-weight:800;display:flex}.availability-days{scrollbar-width:thin;gap:9px;padding:2px 2px 10px;display:flex;overflow-x:auto}.availability-days button{color:#4a3658;cursor:pointer;text-align:left;background:#fff;border:1px solid #ded5e5;border-radius:14px;flex:0 0 92px;padding:12px 9px}.availability-days button strong,.availability-days button span{display:block}.availability-days button strong{color:#7650a5;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:9px}.availability-days button span{font:600 11px/1.25 var(--sans)}.availability-days button.active{color:#fff;background:linear-gradient(145deg,#8150ce,#6030a6);border-color:#6f39b9;box-shadow:0 8px 18px #5b2aa42e}.availability-days button.active strong{color:#dfffc2}.availability-times{grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:9px;margin-top:12px;display:grid}.availability-times button{color:#352342;cursor:pointer;min-height:48px;font:800 12px/1 var(--sans);background:#fff;border:1px solid #ddd4e4;border-radius:12px;justify-content:space-between;align-items:center;gap:8px;padding:0 13px;display:flex}.availability-times button small{color:#8a7d91;font-size:8px;font-weight:800}.availability-times button:hover,.availability-times button.active{color:#5f2ca6;background:#eee3fa;border-color:#6e38b8}.availability-times button.active{box-shadow:inset 0 0 0 1px #6e38b8}.selected-slot{color:#3e592b;background:#eff9e6;border:1px solid #cbe7b1;border-radius:13px;align-items:center;gap:11px;padding:14px 15px;display:flex}.selected-slot>.portal-icon{flex:none}.selected-slot small,.selected-slot strong{display:block}.selected-slot small{color:#718260;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:8px;font-weight:850}.selected-slot strong{font-size:12px}.booking-payment-step{background:linear-gradient(145deg,#fff,#fbf6ff);border:1px solid #d8c7e8;border-radius:24px;padding:28px;position:relative;overflow:hidden;box-shadow:0 14px 36px #42225714}.payment-step-number{color:#6b35ad14;font:800 100px/1 var(--serif);position:absolute;top:-18px;right:24px}.reserved-slot-summary{color:#405a2e;background:#f1fae9;border:1px solid #d6eac3;border-radius:15px;align-items:center;gap:12px;margin-top:22px;padding:16px;display:flex}.reserved-slot-summary .portal-icon{color:#6b35ad;flex:none}.reserved-slot-summary small,.reserved-slot-summary strong{display:block}.reserved-slot-summary small{color:#6f8061;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:8px;font-weight:850}.reserved-slot-summary strong{font-size:13px}.payment-reassurance{color:#6e6474;max-width:760px;margin:14px 0 0;font-size:11px;line-height:1.65}.checkout-grid{margin-top:20px}.buy-more-grid button{min-height:152px;color:var(--ink);cursor:pointer;font-family:var(--sans);text-align:left;background:linear-gradient(145deg,#fff,#faf7fc);border:1px solid #dcd3e2;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:5px 10px;padding:19px;transition:transform .18s,box-shadow .18s;display:grid;position:relative;box-shadow:0 5px 15px #361f440a}.buy-more-grid button:hover:not(:disabled){border-color:#7b46cc;transform:translateY(-4px);box-shadow:0 11px 25px #522a6e1f}.buy-more-grid button:disabled{cursor:wait;opacity:.65}.buy-more-grid button.featured{background:linear-gradient(145deg,#fff1aa,#f6d668);border-color:#e0be40}.buy-more-grid button>b{background:var(--ink);color:#fff;text-transform:uppercase;border-radius:7px;padding:4px 6px;font-size:7px;position:absolute;top:10px;right:10px}.buy-more-grid button>.portal-icon{color:#6b35ad;grid-area:1/1}.buy-more-grid button>span{grid-column:2}.buy-more-grid button>strong{font:400 36px/1 var(--serif);grid-column:1/3;align-self:end}.buy-more-grid button>small{color:#746b77;grid-column:1/3;margin-top:5px;font-size:9px}.buy-more-grid button>i{color:#fff;background:#2d1939;border-radius:50%;grid-area:2/3/4;place-items:center;width:34px;height:34px;display:grid}.teacher-calendar-grid>div.selected{background:#f2eafb;box-shadow:inset 0 0 0 2px #7441b8}.teacher-calendar-day-number:disabled{cursor:not-allowed;opacity:.28}.teacher-availability-manager{gap:16px;display:grid}.teacher-availability-manager>label{gap:7px;display:grid}.teacher-availability-manager>label>span{color:#6d6272;text-transform:uppercase;font-size:11px;font-weight:850}.teacher-availability-manager input[type=date]{color:#372340;min-height:46px;font:750 13px/1 var(--sans);background:#fff;border:1px solid #dbd2df;border-radius:12px;padding:0 13px}.teacher-availability-date-row{background:#f5f0f8;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:14px;display:grid}.teacher-availability-date-row strong,.teacher-availability-date-row span{display:block}.teacher-availability-date-row strong{margin-bottom:5px;font-size:13px}.teacher-availability-date-row span{color:#7b7080;font-size:10px}.teacher-availability-date-row button{cursor:pointer;min-height:40px;font:850 10px/1 var(--sans);border:0;border-radius:10px;padding:0 13px}.teacher-availability-date-row button.lock{color:#fff;background:#3f2452}.teacher-availability-date-row button.unlock{color:#30431f;background:#c9efa4}.teacher-availability-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.teacher-availability-slot-grid button{color:#405b2d;cursor:pointer;text-align:center;background:#f2f9ec;border:1px solid #d5e7c5;border-radius:11px;place-content:center;gap:4px;min-height:58px;display:grid}.teacher-availability-slot-grid button strong{font-size:12px}.teacher-availability-slot-grid button span{text-transform:uppercase;font-size:9px;font-weight:800}.teacher-availability-slot-grid button.locked{color:#6a3b95;background:#f5eef9;border-color:#ddcce9}.teacher-availability-slot-grid button.booked{color:#8b5d23;background:#fff5e8;border-color:#ead3b7}.teacher-availability-slot-grid button:disabled{cursor:not-allowed;opacity:.7}.teacher-availability-help{color:#746a79;margin:0;font-size:10px;line-height:1.6}@media (width<=760px){.pet-doodle{opacity:.06;width:190px}.pet-doodle-method{left:-75px}.pet-doodle-booking{width:230px;bottom:-7%;right:-45px}.availability-first-cta{grid-template-columns:auto 1fr}.availability-first-cta button{grid-column:1/-1;justify-content:center}.teacher-hours-banner span{line-height:1.7}.availability-days button{flex-basis:84px}.availability-times{grid-template-columns:repeat(2,minmax(0,1fr))}.student-login-brand-row{flex-direction:column;align-items:flex-start}.booking-timezone-selector{grid-template-columns:1fr}.booking-timezone-selector small{grid-column:1}.availability-calendar{gap:4px}.availability-calendar>button,.availability-calendar>.calendar-blank{min-height:54px}.availability-calendar>button{border-radius:9px}.availability-calendar>button small{display:none}.availability-calendar>button>span{min-width:15px;height:15px;font-size:7px;top:3px;right:3px}.availability-calendar-heading,.availability-time-heading{flex-direction:column;align-items:flex-start}.teacher-availability-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-payment-step{padding:21px}}
