.institution-site{--site-ink: #183732;--site-muted: #73817a;--site-paper: #f8f7f2;--site-line: #e0e4db;--site-lime: #e5edbd;background:var(--site-paper);color:var(--site-ink);width:100%;min-height:100vh;font-family:PingFang SC,Microsoft YaHei,sans-serif}.institution-site a,.institution-site button,.institution-site input,.institution-site select,.institution-site textarea{-webkit-tap-highlight-color:transparent}.institution-site :focus-visible{outline:3px solid #c49755;outline-offset:5px}.institution-site h1,.institution-site h2,.institution-site h3{font-weight:600}.institution-site h2{white-space:pre-line;font-size:clamp(27px,3vw,43px);line-height:1.55;letter-spacing:-.06em}.institution-site section[id]{scroll-margin-top:30px}.site-skip-link{position:fixed;top:-70px;left:20px;z-index:100;padding:14px;background:#fff}.site-skip-link:focus{top:10px}.site-header{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;max-width:1440px;min-height:100px;margin:0 auto;padding:20px 4.5%;gap:24px}.site-brand{display:flex;align-items:center;flex-shrink:0;gap:12px}.site-brand img{width:104px;height:43px;object-fit:contain;border-radius:5px}.site-brand>span{display:flex;flex-direction:column;padding-left:12px;border-left:1px solid var(--site-line);gap:4px}.site-brand strong{font-size:18px;letter-spacing:.08em}.site-brand small{font-size:9px;color:#7a8379;letter-spacing:.13em}.site-desktop-nav{display:flex;align-items:center;gap:30px}.site-desktop-nav a{font-size:12px;color:#53625b;transition:color .2s}.site-desktop-nav a:hover{color:#789343}.site-header-actions{display:flex;align-items:center;gap:25px}.site-portal-link{display:flex;align-items:center;gap:7px;font-size:12px;white-space:nowrap}.site-button{display:inline-flex;justify-content:center;align-items:center;min-height:51px;padding:0 24px;gap:27px;border:1px solid transparent;border-radius:3px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s,transform .2s}.site-button:hover{transform:translateY(-2px)}.site-button--dark{background:#193c34;color:#fff}.site-button--dark:hover{background:#2e5044}.site-button--lime{background:var(--site-lime);color:#1d3b33}.site-button--lime:hover{background:#f1f6d6}.site-header-consult{min-height:40px;padding:0 16px;font-size:11px;gap:15px}.site-button:disabled{cursor:wait;opacity:.55;transform:none}.site-menu-toggle{display:none;padding:8px;background:none;border:0;cursor:pointer}.site-mobile-nav{display:none}.site-preview-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#ebe5d5;color:#554222;padding:12px 5%;font-size:12px}.site-preview-bar a{display:flex;gap:8px;align-items:center;font-weight:700}.site-load-error{padding:9px 5%;color:#905c2b;background:#fff0d9;font-size:12px}.site-load-error button{background:transparent;color:inherit;border:0;text-decoration:underline;cursor:pointer}.site-preview-loading{display:grid;place-content:center;gap:20px}.site-preview-loading button{padding:12px}.site-carousel{position:relative;overflow:hidden}.site-hero{max-width:1400px;margin:0 auto;min-height:624px;background:#183c35;color:#fff;border-radius:5px}.site-hero .site-carousel-slide{min-height:624px;position:relative}.site-hero-art{position:absolute;width:620px;height:620px;top:0;right:1%}.discovery-art{display:block;width:100%;height:100%}.discovery-art--1 .discovery-art-objects{transform:rotate(8deg);transform-origin:330px 350px}.site-hero-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.site-hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(17,44,39,.25),transparent)}.site-hero-shade.has-image{background:linear-gradient(90deg,#0b221eeb,#0b221eab 47%,#0b221e24)}.site-hero-content{position:relative;z-index:1;padding:75px 7% 110px;max-width:760px}.site-kicker{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.2em;color:#d8e4b5;line-height:1.8}.site-kicker i{width:7px;height:7px;background:#d6e7a3;border-radius:50%;box-shadow:0 0 0 4px #d6e7a316}.site-hero h1{font-size:clamp(45px,5vw,69px);white-space:pre-line;line-height:1.36;letter-spacing:-.025em;margin:24px 0;font-weight:500}.site-hero-content>p{white-space:pre-line;font-size:14px;color:#c2d2c9;line-height:1.9;margin-bottom:33px;max-width:500px}.site-hero-note{display:flex;align-items:center;gap:10px;margin-top:31px;font-size:10px;letter-spacing:.08em;color:#91aaa0}.site-hero-note>span{width:26px;height:1px;background:#698980}.site-hero-scroll{position:absolute;right:7%;bottom:37px;display:flex;align-items:center;gap:15px;font-size:10px;color:#b9cdc0}.site-carousel-controls{position:absolute;bottom:31px;left:7%;z-index:2;display:flex;align-items:center;gap:10px;color:#fff}.site-carousel-controls button{display:grid;place-items:center;border:0;background:none;color:inherit;cursor:pointer}.site-carousel-dots{display:flex;align-items:center;gap:2px;margin-right:10px}.site-carousel-dots button{width:22px;min-height:34px;padding:5px}.site-carousel-dots button>span{display:block;width:6px;height:6px;border-radius:10px;background:#fff5;transition:all .2s}.site-carousel-dots button[aria-current=true]{width:40px}.site-carousel-dots button[aria-current=true]>span{width:25px;background:#e5edbd}.site-carousel-counter{margin-right:4px;font-size:10px;font-variant-numeric:tabular-nums}.site-carousel-counter i{font-style:normal;color:#fff6;margin-left:4px}.site-carousel-controls .site-carousel-arrow{width:32px;height:32px;border:1px solid #ffffff33;border-radius:50%}.site-carousel-controls .site-carousel-pause{width:26px;height:32px}.site-announcement{display:flex;align-items:center;justify-content:space-between;max-width:1240px;padding:23px 25px;margin:0 auto;gap:20px;border-bottom:1px solid var(--site-line);font-size:11px;color:#65786b}.site-announcement>span,.site-announcement>a{display:flex;align-items:center;gap:10px}.site-announcement>a{white-space:nowrap;font-size:10px;color:#294e3e}.site-section{max-width:1240px;padding:85px 25px;margin:0 auto}.site-section-label{display:flex;align-items:center;gap:25px;margin-bottom:28px}.site-section-label>span{font-size:10px;letter-spacing:.16em;color:#7c8977;flex-shrink:0}.site-section-label>i{display:block;height:1px;flex:1;background:var(--site-line)}.site-about-top{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:start}.site-about-description{padding-top:9px}.site-about-description p{color:#748076;font-size:13px;line-height:2.25}.site-text-link{display:inline-flex;align-items:center;gap:25px;padding-bottom:7px;border-bottom:1px solid #a8b6a3;color:#264e3c;font-size:12px;font-weight:600}.site-about-description .site-text-link{margin-top:24px}.site-values{display:grid;grid-template-columns:repeat(3,1fr);margin-top:50px;gap:32px}.site-values>article{position:relative;padding:25px 22px 5px 0;border-top:1px solid #d4dbc9}.site-value-number{position:absolute;top:25px;right:6px;font-family:Georgia,serif;font-size:15px;color:#9ba795}.site-values svg{color:#62805a;margin:0 0 16px}.site-values h3{font-size:17px;margin-bottom:12px}.site-values p{color:#819080;font-size:12px;line-height:1.9;max-width:320px}.site-about-image{display:block;width:100%;height:330px;margin-top:40px;object-fit:cover;border-radius:4px}.site-course-section{background:#eeeee5}.site-section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}.site-section-heading .site-text-link{flex-shrink:0;margin-bottom:8px}.site-eyebrow{color:#7b886e;font-size:10px;letter-spacing:.06em;line-height:1.8}.site-section-heading .site-eyebrow{margin-bottom:10px}.site-course-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px}.site-course-filters button{border:1px solid #d4d9ca;border-radius:40px;padding:8px 20px;background:transparent;font-size:11px;color:#6a7866;cursor:pointer}.site-course-filters button.is-active{background:#214734;color:#fff;border-color:#214734}.site-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.site-course-card{min-width:0}.site-course-cover{position:relative;aspect-ratio:1.35;border-radius:5px;overflow:hidden;background:#dce1cd}.site-course-cover>img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.site-course-card:hover .site-course-cover>img{transform:scale(1.035)}.site-course-cover>span{position:absolute;top:17px;left:17px;background:#fffdf2ee;padding:6px 10px;border-radius:2px;font-size:10px}.site-course-cover>a{position:absolute;right:18px;bottom:18px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fffdf4}.site-course-copy{padding:25px 0 0}.site-course-copy>span{color:#8a927e;font-size:10px}.site-course-copy h3{font-size:21px;margin:9px 0 12px}.site-course-copy p{font-size:12px;line-height:1.9;color:#7a8574}.site-course-copy>a{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #d5dbcc;font-size:11px;padding-top:16px;margin-top:23px}.site-course-art{position:relative;display:grid;place-items:center;height:100%;overflow:hidden}.site-course-art--code{background:#1e4946}.site-code-window{width:72%;padding:15px 20px 20px;background:#183c3b;border:1px solid #8dc3b33d;border-radius:7px;transform:rotate(-7deg);box-shadow:0 25px 35px #102f3477;font-family:monospace}.site-code-window>span{display:flex;gap:4px;margin-bottom:20px}.site-code-window i{width:5px;height:5px;border-radius:50%;background:#cfb298}.site-code-window i:nth-child(2){background:#dedbac}.site-code-window i:nth-child(3){background:#8dc3ac}.site-code-window p{font-size:11px;line-height:2;color:#b8d1c4;white-space:pre-wrap}.site-code-window b{color:#dab9a4;font-weight:400}.site-code-window em{color:#dfdba3;font-style:normal}.site-code-window>strong{display:block;font-size:12px;color:#e3edb9;font-weight:400;margin-top:12px}.site-code-spark{position:absolute;bottom:9%;right:6%;font-size:50px;transform:rotate(12deg);color:#dde9b5;font-weight:600}.site-course-art--shapes{background:#dcd0bf}.site-course-art--shapes>div:first-child{position:absolute;width:42%;aspect-ratio:1;border-radius:50% 50% 0 0;background:#b26349;bottom:-6%;left:4%;transform:rotate(-13deg)}.site-course-art--shapes>div:nth-child(2){position:absolute;width:38%;aspect-ratio:1;border-radius:50%;background:#afba79;top:6%;right:-13%}.site-course-art--shapes>div:nth-child(3){position:absolute;width:17%;aspect-ratio:1;background:#395755;bottom:11%;right:19%;transform:rotate(21deg)}.site-course-art--shapes>span{z-index:1;margin-left:-25%;margin-top:-12%;font-family:Georgia,serif;color:#243f34;line-height:1.1;font-size:29px;letter-spacing:-.05em}.site-course-art--shapes>span i{font-weight:400;color:#fbf6ea}.site-empty-courses{padding:40px 0;color:#71816e}.site-empty-courses a{display:inline-flex;gap:10px;margin-left:20px}.site-heading-note{display:flex;gap:10px;align-items:center;color:#748171;font-size:11px;padding-bottom:10px}.site-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}.site-video-grid>article:only-child{grid-column:1/-1}.site-video-player{aspect-ratio:16/9;background:#17372e;overflow:hidden;border-radius:6px}.site-video-player video{display:block;width:100%;height:100%;object-fit:contain}.site-video-grid h3{margin:20px 0 10px;font-size:21px}.site-video-grid p{color:#7c8676;font-size:12px;line-height:1.8}.site-philosophy{position:relative;display:flex;overflow:hidden;padding:75px max(7%,calc((100% - 1190px)/2));background:#253e31;color:#faf9ec}.site-philosophy>div:not(.site-philosophy-decoration){position:relative;z-index:1}.site-philosophy h2{margin:23px 0;font-size:clamp(31px,3.5vw,49px);line-height:1.5}.site-philosophy p{color:#b9c6ae;font-size:13px;margin-bottom:29px}.site-philosophy-word{position:absolute;right:5%;bottom:0;color:#c5d5a914;font-family:Georgia,serif;font-size:clamp(120px,23vw,350px);font-style:italic;line-height:1;letter-spacing:-.1em}.site-philosophy-decoration{position:absolute;right:13%;top:38px;width:240px;height:300px;transform:rotate(20deg)}.site-philosophy-decoration span{position:absolute;display:block;width:115px;height:170px;border:1px solid #abbf8433;border-radius:120px 120px 0}.site-philosophy-decoration span:nth-child(2){left:80px;top:60px;transform:rotate(100deg)}.site-philosophy-decoration span:nth-child(3){left:35px;top:115px;transform:rotate(210deg)}.site-teacher-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}.site-teacher-grid>article{min-width:0}.site-teacher-image{display:grid;place-items:center;aspect-ratio:.88;background:#e7e7d9;border-radius:5px;overflow:hidden;margin-bottom:20px}.site-teacher-image img{width:100%;height:100%;object-fit:cover}.site-teacher-image>span{font-size:40px;font-weight:300;color:#7f9276}.site-teacher-grid article>span{font-size:11px;color:#8a927c}.site-teacher-grid h3{font-size:21px;margin:7px 0 12px}.site-teacher-grid p{color:#84917c;font-size:12px;line-height:1.9}.site-contact{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-top:95px;padding-bottom:90px}.site-contact-details h2{font-size:clamp(32px,3.5vw,47px);line-height:1.5}.site-contact-details>p{max-width:360px;color:#798572;font-size:13px;line-height:2;margin:20px 0 30px}.site-contact-lines{display:grid;gap:23px}.site-contact-lines>a,.site-contact-lines>div{display:flex;align-items:center;gap:16px;font-size:14px}.site-contact-lines>a>svg:last-child{margin-left:20px;color:#8b9b7e}.site-contact-lines span:not(.site-wechat-icon){display:flex;flex-direction:column;gap:6px}.site-contact-lines small{font-size:10px;color:#98a08c}.site-contact-lines strong{font-size:13px;font-weight:500;line-height:1.6}.site-wechat-icon{font-size:16px}.site-qr{display:flex;align-items:center;gap:15px;margin:27px 0 0}.site-qr img{width:80px;height:80px;object-fit:contain}.site-qr figcaption{font-size:11px;color:#7d8c74}.site-consultation-form{padding:35px;background:#fff;border:1px solid #e2e5d9;border-radius:5px;box-shadow:0 18px 40px #2b3e2a04;min-width:0}.site-consultation-form h3{font-size:25px;margin:10px 0}.site-consultation-form>p{color:#8b9482;font-size:12px;margin-bottom:26px;line-height:1.8}.site-consultation-form label:not(.site-consent){display:flex;flex-direction:column;gap:9px;position:relative;font-size:11px;color:#52634a;margin-bottom:17px}.site-consultation-form label>span:not(:last-child){display:inline;position:absolute;top:0;left:53px;color:#a36647}.site-consultation-form input:not([type=checkbox]),.site-consultation-form select,.site-consultation-form textarea{width:100%;border:1px solid #e1e5da;border-radius:3px;background:#fafbf7;padding:12px;font-size:12px;color:#364c32;outline-offset:0;min-width:0}.site-consultation-form textarea{resize:vertical;min-height:82px}.site-consultation-form input::placeholder,.site-consultation-form textarea::placeholder{color:#a6ae9d}.site-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.site-form-row>label{min-width:0}.site-consent{display:flex;align-items:flex-start;gap:9px;font-size:10px;line-height:1.7;color:#7a8770;margin-bottom:5px;cursor:pointer}.site-consent input{margin:2px 0 0;accent-color:#2b5941;flex-shrink:0;width:14px;height:14px}.site-privacy-note{font-size:9px;color:#9aa48e;padding-left:23px}.site-consultation-form>button{width:100%;justify-content:space-between;margin-top:20px}.site-consultation-form .site-honeypot{display:none!important}.site-consultation-form .site-form-error{color:#b74939;font-size:11px;margin:12px 0 0}.site-consultation-success{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:390px;padding:45px;border:1px solid #dae3cb;background:#eef3e6;border-radius:6px}.site-consultation-success>span{display:grid;place-items:center;width:65px;height:65px;border-radius:50%;color:#567539;background:#dee9cc;margin-bottom:25px}.site-consultation-success h3{font-size:28px;margin-bottom:15px}.site-consultation-success p{font-size:13px;color:#77846a;line-height:1.9;margin-bottom:25px}.site-campuses{padding-top:0}.site-campus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.site-campus-grid>article{border:1px solid #dce2d1;background:#f1f3ea;border-radius:4px;overflow:hidden}.site-campus-grid img{display:block;width:100%;aspect-ratio:1.8;object-fit:cover}.site-campus-grid article>div{padding:25px}.site-campus-grid h3{font-size:19px;margin-bottom:16px}.site-campus-grid p,.site-campus-grid a{display:flex;gap:8px;align-items:start;color:#7b8770;font-size:11px;line-height:1.8;margin-top:10px}.site-campus-grid svg{flex-shrink:0;margin-top:2px}.site-faq{display:grid;grid-template-columns:.9fr 1fr;gap:70px;padding-top:15px}.site-faq h2{font-size:28px;margin-top:13px}.site-faq details{border-bottom:1px solid var(--site-line)}.site-faq summary{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:22px 0;font-size:13px;cursor:pointer;list-style:none}.site-faq summary::-webkit-details-marker{display:none}.site-faq summary svg{flex-shrink:0;color:#93a086}.site-faq details[open] summary svg{transform:rotate(180deg)}.site-faq details>p{padding-bottom:20px;color:#839178;line-height:1.9;font-size:12px}.site-footer{padding:60px max(5%,calc((100% - 1190px)/2)) 26px;background:#132e28;color:#e8eddf}.site-footer-top{display:flex;justify-content:space-between;gap:30px;margin-bottom:55px}.site-footer-top strong{display:flex;align-items:baseline;gap:17px;font-size:26px;letter-spacing:.09em;font-weight:500}.site-footer-top strong>span{color:#bac7a6;font-family:Georgia,serif;font-size:21px;letter-spacing:-.02em;font-style:italic}.site-footer-top p{color:#849a86;font-size:12px;margin-top:16px}.site-footer-top>a{border:1px solid #637958;width:50px;height:50px;display:grid;place-items:center;border-radius:50%}.site-footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff18;padding-top:24px;color:#7d947e;font-size:9px}.site-footer-bottom>div{display:flex;gap:25px}.site-footer-bottom a{display:inline-flex;gap:5px;align-items:center}.login-brand-panel.login-brand-carousel{padding:0;min-height:330px}.login-brand-carousel .site-carousel-slide{position:relative;min-height:330px;padding:calc(25px + env(safe-area-inset-top)) 24px 62px}.login-slide-background,.login-slide-shade{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.login-slide-shade{background:linear-gradient(90deg,#064eabc9,#064eab18)}.login-brand-carousel .login-brand-row{display:flex;justify-content:space-between;align-items:center;gap:15px}.login-brand-carousel .login-brand-row>a{font-size:11px;color:#fff;display:inline-flex;gap:4px;align-items:center;white-space:nowrap}.login-brand-carousel .login-brand-copy{margin-top:42px}.login-brand-carousel .login-brand-copy h1{white-space:pre-line}.login-brand-carousel .login-brand-copy p{max-width:75%;white-space:pre-line}.login-slide-link{display:inline-flex;align-items:center;gap:10px;margin-top:14px;padding-bottom:4px;border-bottom:1px solid #ffffff66;font-size:12px}.login-brand-carousel .site-carousel-controls{bottom:16px;left:24px;gap:5px}.login-brand-carousel .site-carousel-counter{font-size:9px}.login-brand-carousel .site-carousel-arrow{width:27px;height:27px}.login-brand-carousel:after{pointer-events:none}.login-brand-carousel .login-brand-robot{bottom:0}@media(min-width:1500px){.site-hero-content{padding-top:85px}}@media(max-width:1250px){.site-brand>span{display:none}.site-header{padding-left:4%;padding-right:4%}.site-desktop-nav{gap:22px}.site-hero{margin:0 20px}.site-hero-art{width:560px;right:-4%;top:28px}.site-hero-content{max-width:680px}.site-contact{gap:65px}.site-section,.site-announcement{margin-left:4%;margin-right:4%;padding-left:0;padding-right:0}}@media(max-width:1000px){.site-header{gap:15px;min-height:86px}.site-desktop-nav{gap:17px}.site-desktop-nav a{font-size:11px}.site-header-actions{gap:16px}.site-header-consult{display:none}.site-hero,.site-hero .site-carousel-slide{min-height:560px}.site-hero-art{width:480px;height:510px;right:-10%;top:40px;opacity:.8}.site-hero-content{padding-top:62px;max-width:550px}.site-hero h1{font-size:53px}.site-about-top{gap:45px}.site-section{padding-top:65px;padding-bottom:65px}.site-course-grid{gap:18px}.site-course-copy h3{font-size:18px}.site-code-window{padding:13px}.site-code-window p{font-size:9px}.site-course-art--shapes>span{font-size:22px}.site-contact{gap:35px}.site-consultation-form{padding:25px}.site-teacher-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.site-campuses{padding-top:0}.site-faq{gap:40px;padding-top:0}}@media(max-width:760px){.site-header{min-height:78px;padding:16px 5%}.site-brand img{width:100px;height:40px}.site-desktop-nav{display:none}.site-menu-toggle{display:grid;place-items:center}.site-header-actions{gap:14px}.site-portal-link{font-size:11px}.site-mobile-nav{position:absolute;top:100%;left:0;right:0;display:flex;flex-direction:column;background:#f8f7f2;border-top:1px solid var(--site-line);box-shadow:0 20px 25px #152d2210;padding:10px 6% 20px}.site-mobile-nav a{padding:16px 0;border-bottom:1px solid #e5e8dd;font-size:14px;display:flex;justify-content:space-between}.site-hero{margin:0 12px;border-radius:4px}.site-hero,.site-hero .site-carousel-slide{min-height:640px}.site-hero-content{padding:43px 7% 285px;max-width:100%}.site-hero h1{font-size:clamp(39px,8vw,55px);line-height:1.35;margin:19px 0}.site-hero-content>p{font-size:12px;line-height:1.9;max-width:95%;margin-bottom:23px}.site-kicker{font-size:8px;letter-spacing:.15em}.site-hero .site-button{min-height:45px;font-size:11px;padding:0 17px;gap:21px}.site-hero-note{display:none}.site-hero-art{width:370px;height:370px;right:-12%;top:auto;bottom:4px;opacity:.9}.site-hero-shade{background:linear-gradient(180deg,#183c3511,transparent)}.site-hero-shade.has-image{background:linear-gradient(180deg,#0b211fe6,#0b211f77 68%,#0b211f99)}.site-hero-scroll{right:7%;bottom:35px;font-size:8px}.site-carousel-controls{gap:7px;bottom:28px}.site-carousel-counter{display:none}.site-carousel-dots{gap:0;margin-right:3px}.site-carousel-controls .site-carousel-arrow{width:29px;height:29px}.site-carousel-controls .site-carousel-pause{width:22px}.site-announcement{padding:19px 0;margin:0 6%;font-size:10px;line-height:1.8}.site-announcement>a{display:none}.site-announcement svg{flex-shrink:0}.site-section{padding:53px 0;margin:0 6%}.site-section-label{margin-bottom:22px;gap:13px}.site-section-label>span{font-size:8px;letter-spacing:.12em}.site-about-top{grid-template-columns:1fr;gap:16px}.site-about-description{padding-top:0}.site-about-description p{font-size:12px}.site-about-description .site-text-link{margin-top:20px}.site-values{gap:20px;margin-top:32px;grid-template-columns:1fr}.site-values article{display:grid;grid-template-columns:38px 1fr;gap:9px 12px;padding:21px 27px 0 0}.site-values svg{grid-row:1 / 3;margin:0}.site-values h3{font-size:16px;margin:0}.site-values p{grid-column:2;max-width:none;font-size:11px}.site-value-number{right:0;top:22px;font-size:12px}.site-section-heading{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:23px}.site-section-heading .site-text-link{font-size:11px}.site-section-heading h2{font-size:28px}.site-course-grid{grid-template-columns:1fr;gap:34px}.site-course-cover{aspect-ratio:1.45}.site-course-copy{padding-top:20px}.site-course-copy h3{font-size:22px}.site-course-copy p{font-size:12px}.site-course-copy>a{margin-top:17px}.site-course-art--shapes>span{font-size:29px}.site-code-window{padding:16px 23px;max-width:310px}.site-code-window p{font-size:12px}.site-course-filters{gap:6px;margin-bottom:23px}.site-course-filters button{font-size:10px;padding:8px 15px}.site-video-grid{grid-template-columns:1fr;gap:28px}.site-heading-note{font-size:10px;padding:0}.site-video-grid h3{font-size:19px}.site-philosophy{padding:53px 6%}.site-philosophy h2{font-size:31px}.site-philosophy .site-kicker{font-size:7px}.site-philosophy p{font-size:12px}.site-philosophy-decoration{opacity:.7;right:-18%}.site-philosophy-word{right:3%;font-size:146px}.site-philosophy .site-button{font-size:11px;gap:17px;min-height:45px}.site-teacher-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 15px}.site-teacher-grid h3{font-size:18px}.site-teacher-grid article>span{font-size:10px}.site-teacher-grid p{font-size:11px}.site-teacher-image{margin-bottom:15px}.site-contact{display:grid;grid-template-columns:1fr;gap:36px}.site-contact-details h2{font-size:36px}.site-contact-details>p{font-size:12px}.site-consultation-form{padding:26px 20px}.site-consultation-form h3{font-size:23px}.site-form-row{grid-template-columns:1fr;gap:0}.site-consultation-form input:not([type=checkbox]),.site-consultation-form select,.site-consultation-form textarea{font-size:16px}.site-consultation-form input::placeholder,.site-consultation-form textarea::placeholder{font-size:12px}.site-consultation-form select{font-size:13px}.site-contact-lines{gap:20px}.site-campus-grid{grid-template-columns:1fr;gap:18px}.site-campuses{padding-top:0}.site-faq{grid-template-columns:1fr;gap:15px;padding-top:0}.site-faq h2{font-size:27px;margin-top:10px}.site-faq summary{font-size:12px}.site-faq details p{font-size:11px}.site-footer{padding:44px 6% 25px}.site-footer-top{margin-bottom:34px}.site-footer-top strong{font-size:22px;gap:10px;flex-wrap:wrap}.site-footer-top strong>span{font-size:17px}.site-footer-top p{font-size:10px}.site-footer-top>a{width:40px;height:40px;flex-shrink:0}.site-footer-bottom{flex-direction:column;gap:14px;line-height:1.7}.site-footer-bottom>div{justify-content:space-between}.site-preview-bar{font-size:10px;gap:10px;padding:10px 5%}.site-about-image{height:230px}.site-consultation-success{padding:30px;min-height:350px}}@media(prefers-reduced-motion:reduce){.institution-site *,.site-carousel *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.teacher-root{--teacher-ink: #111a29;--teacher-muted: #68778b;--teacher-line: #dfe8f4;--teacher-surface: #ffffff;--teacher-bg: #f4f8fd;--teacher-green: #146ff8;--teacher-green-dark: #0756c9;--teacher-green-soft: #eaf3ff;--teacher-coral: #ff7a0a;--teacher-coral-soft: #fff1e3;--teacher-yellow: #ffad20;--teacher-yellow-soft: #fff4d8;--teacher-blue: #146ff8;--teacher-blue-soft: #eaf3ff;min-height:100vh;min-height:100dvh;background:#eaf1fb;color:var(--teacher-ink)}.teacher-root *,.teacher-root *:before,.teacher-root *:after{box-sizing:border-box;letter-spacing:0}.teacher-root button,.teacher-root input,.teacher-root textarea,.teacher-root select{font:inherit}.teacher-root button,.teacher-root a{-webkit-tap-highlight-color:transparent}.teacher-frame{position:relative;width:min(100%,768px);min-height:100vh;min-height:100dvh;margin:0 auto;background:var(--teacher-bg)}.teacher-frame--detail{background:var(--teacher-surface)}.teacher-header{position:sticky;z-index:30;top:0;display:flex;align-items:center;justify-content:space-between;min-height:calc(58px + env(safe-area-inset-top));padding:calc(8px + env(safe-area-inset-top)) 16px 8px;border-bottom:1px solid rgba(221,228,223,.88);background:#fffffff5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.teacher-brand{display:flex;align-items:center;gap:9px;font-size:18px}.teacher-brand>img{width:108px;height:auto;border-radius:5px;object-fit:contain}.teacher-header__label{color:var(--teacher-muted);font-size:12px;font-weight:700}.teacher-header__message{position:relative;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;color:var(--teacher-ink)}.teacher-header__message:after{content:"";position:absolute;top:8px;right:8px;width:7px;height:7px;border:2px solid white;border-radius:50%;background:var(--teacher-coral)}.teacher-main{min-height:calc(100vh - 58px);min-height:calc(100dvh - 58px);padding-bottom:calc(70px + env(safe-area-inset-bottom))}.teacher-main--detail{min-height:100vh;padding-bottom:0}.teacher-nav{position:fixed;z-index:35;bottom:0;left:50%;display:grid;width:min(100%,768px);height:calc(70px + env(safe-area-inset-bottom));min-height:calc(70px + env(safe-area-inset-bottom));padding:7px 8px calc(6px + env(safe-area-inset-bottom));transform:translate(-50%);grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--teacher-line);background:#fffffff7;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.teacher-nav__item{display:flex;align-items:center;justify-content:center;min-width:0;flex-direction:column;gap:3px;color:#7a8580;font-size:10px;font-weight:700}.teacher-nav__item.is-active{color:var(--teacher-green)}.teacher-nav__item.is-active svg{stroke-width:2.5}.teacher-page{min-width:0;padding:20px 16px 30px}.teacher-page--flush{padding-top:0}.teacher-page-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.teacher-page-title p,.teacher-section-heading p,.teacher-eyebrow{color:var(--teacher-green);font-size:11px;font-weight:800}.teacher-page-title h1{margin-top:3px;font-size:25px;line-height:1.22}.teacher-title-icon,.teacher-avatar-fallback{display:grid;flex:0 0 auto;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--teacher-green-soft);color:var(--teacher-green)}.teacher-section{margin-top:25px}.teacher-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;margin-bottom:11px}.teacher-section-heading h2{margin-top:2px;font-size:18px;line-height:1.25}.teacher-section-link{display:inline-flex;align-items:center;gap:3px;min-height:44px;color:var(--teacher-muted);font-size:12px;font-weight:700}.teacher-dashboard-band{position:relative;min-height:185px;margin:0 -16px;padding:24px 154px 20px 18px;overflow:hidden;background:linear-gradient(135deg,#2084ff,#075ff0 70%,#68a4ff);color:#fff}.teacher-dashboard-band__date{color:#dceaff;font-size:12px;font-weight:700}.teacher-dashboard-band h1{max-width:260px;margin-top:9px;font-size:26px;line-height:1.28}.teacher-dashboard-band p{margin-top:8px;color:#ffffffc7;font-size:12px;line-height:1.45}.teacher-dashboard-band__todo{display:inline-flex;align-items:center;min-height:32px;margin-top:14px;padding:0 14px;border-radius:999px;background:var(--teacher-coral);color:#fff;font-size:11px;font-weight:850}.teacher-dashboard-band__robot{position:absolute;right:12px;bottom:0;width:140px;height:160px;object-fit:contain;object-position:bottom center}.teacher-dashboard-band__fallback{position:absolute;right:28px;bottom:28px;display:grid;place-items:center;width:94px;height:94px;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:#3f8df8;color:#fff}.teacher-metrics{display:grid;margin:0 -16px;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--teacher-line);background:#fff}.teacher-metric{display:flex;align-items:center;min-width:0;min-height:84px;padding:13px 5px;flex-direction:column;gap:3px;border-right:1px solid var(--teacher-line);text-align:center}.teacher-metric:last-child{border-right:0}.teacher-metric strong{font-size:22px}.teacher-metric strong small{margin-left:2px;font-size:10px;font-weight:800}.teacher-metric span{color:var(--teacher-muted);font-size:10px;line-height:1.25}.teacher-next-prep>.teacher-button{margin-top:9px}.teacher-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.teacher-quick-action{display:flex;align-items:center;min-width:0;min-height:84px;padding:10px 4px;flex-direction:column;gap:7px;border:0;border-radius:8px;background:#fff;color:var(--teacher-ink);font-size:11px;font-weight:750;cursor:pointer}.teacher-quick-action>span{display:grid;place-items:center;width:38px;height:38px;border-radius:7px;background:var(--teacher-green-soft);color:var(--teacher-green)}.teacher-quick-action:nth-child(2)>span{background:var(--teacher-blue-soft);color:var(--teacher-blue)}.teacher-quick-action:nth-child(3)>span{background:var(--teacher-yellow-soft);color:#8a5b00}.teacher-quick-action:nth-child(4)>span{background:var(--teacher-coral-soft);color:var(--teacher-coral)}.teacher-session-list,.teacher-class-list,.teacher-message-list,.teacher-resource-list,.teacher-assignment-list,.teacher-roster-list{display:flex;min-width:0;flex-direction:column;gap:9px}.teacher-session-card{display:grid;align-items:center;min-width:0;min-height:128px;padding:13px 11px;grid-template-columns:55px minmax(0,1fr) 18px;gap:11px;border:1px solid var(--teacher-line);border-radius:8px;background:#fff}.teacher-session-card__time{display:flex;align-items:center;min-height:78px;padding-right:8px;flex-direction:column;justify-content:center;border-right:2px solid var(--teacher-green)}.teacher-session-card__time strong{font-size:16px}.teacher-session-card__time span{margin-top:3px;color:var(--teacher-muted);font-size:10px}.teacher-session-card__body{min-width:0}.teacher-session-card__title{display:flex;align-items:flex-start;justify-content:space-between;min-width:0;gap:8px}.teacher-session-card h3{min-width:0;font-size:15px;line-height:1.3}.teacher-session-card p{display:flex;align-items:center;gap:5px;margin-top:6px;color:var(--teacher-muted);font-size:11px}.teacher-session-card__meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px;color:#55615c;font-size:10px;font-weight:700}.teacher-session-card__meta span{display:inline-flex;align-items:center;gap:4px}.teacher-status{display:inline-flex;flex:0 0 auto;align-items:center;min-height:23px;padding:0 7px;border-radius:999px;font-size:9px;font-weight:800}.teacher-status--active{background:var(--teacher-green-soft);color:var(--teacher-green-dark)}.teacher-status--done{background:var(--teacher-blue-soft);color:var(--teacher-blue)}.teacher-status--alert{background:var(--teacher-coral-soft);color:#9b3d2c}.teacher-status--pending{background:#edf0ee;color:#68736e}.teacher-button,.teacher-icon-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;gap:7px;border:1px solid transparent;border-radius:8px;background:transparent;color:inherit;font-weight:800;cursor:pointer}.teacher-button{padding:0 16px;font-size:14px}.teacher-button--primary{background:var(--teacher-green);color:#fff}.teacher-button--danger{background:#b9473b;color:#fff}.teacher-button--outline{border-color:#bfd7f8;background:#fff;color:var(--teacher-green-dark)}.teacher-button--plain{border-color:var(--teacher-line);background:#fff;color:var(--teacher-ink)}.teacher-button--wide{width:100%}.teacher-button--small{min-height:38px;padding:0 12px;font-size:12px}.teacher-button:disabled,.teacher-icon-button:disabled{cursor:not-allowed;opacity:.48}.teacher-icon-button{width:44px;min-width:44px;height:44px;padding:0;border-radius:50%}.teacher-topbar{position:sticky;z-index:30;top:0;display:grid;align-items:center;min-height:calc(57px + env(safe-area-inset-top));padding:calc(6px + env(safe-area-inset-top)) 8px 6px;grid-template-columns:44px minmax(0,1fr) 44px;border-bottom:1px solid var(--teacher-line);background:#fffffff7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.teacher-topbar h1{overflow:hidden;font-size:17px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.teacher-topbar__action{display:flex;justify-content:flex-end}.teacher-state{display:flex;align-items:center;justify-content:center;min-height:190px;padding:26px 18px;flex-direction:column;text-align:center}.teacher-state>span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--teacher-yellow-soft);color:#8a5b00}.teacher-state--error>span{background:var(--teacher-coral-soft);color:var(--teacher-coral)}.teacher-state--success>span{background:var(--teacher-green-soft);color:var(--teacher-green)}.teacher-state h2{margin-top:12px;font-size:16px}.teacher-state p{max-width:330px;margin-top:5px;color:var(--teacher-muted);font-size:12px;line-height:1.5}.teacher-loading{display:flex;flex-direction:column;gap:9px}.teacher-skeleton{display:flex;min-height:105px;padding:14px;flex-direction:column;gap:10px;border:1px solid #e4e9e6;border-radius:8px;background:#fff}.teacher-skeleton i,.teacher-skeleton b,.teacher-skeleton small{display:block;height:13px;border-radius:4px;background:#e8ece9;animation:teacher-pulse 1.2s ease-in-out infinite}.teacher-skeleton i{width:44%;height:18px}.teacher-skeleton b{width:82%}.teacher-skeleton small{width:62%}@keyframes teacher-pulse{50%{opacity:.5}}.teacher-date-toolbar,.teacher-filter-toolbar{position:sticky;z-index:15;top:calc(58px + env(safe-area-inset-top));margin:0 -16px 16px;padding:10px 16px 12px;border-bottom:1px solid var(--teacher-line);background:#f4f6f3f7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.teacher-schedule-hero{margin:-20px -16px 18px;padding:calc(20px + env(safe-area-inset-top)) 16px 22px;background:linear-gradient(145deg,#2786ff,#0a5fea);color:#fff}.teacher-page--schedule{padding-top:20px}.teacher-schedule-topline{display:grid;align-items:center;min-height:48px;grid-template-columns:42px minmax(0,1fr) 42px}.teacher-schedule-topline h1{font-size:23px;text-align:center}.teacher-schedule-date-picker{position:relative;display:grid;place-items:center;width:42px;height:42px;cursor:pointer}.teacher-schedule-date-picker input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.teacher-schedule-panel{margin-top:10px;padding:12px;border-radius:8px;background:#fff;color:var(--teacher-ink);box-shadow:0 10px 26px #00359129}.teacher-campus-picker{display:grid;align-items:center;min-height:42px;grid-template-columns:30px minmax(0,1fr) 18px;border-bottom:1px solid var(--teacher-line)}.teacher-campus-picker>span{display:grid;place-items:center;color:var(--teacher-coral)}.teacher-campus-picker select{min-width:0;border:0;outline:0;background:transparent;color:var(--teacher-ink);font-size:14px;font-weight:800;-webkit-appearance:none;-moz-appearance:none;appearance:none}.teacher-campus-picker>svg{color:var(--teacher-muted);transform:rotate(90deg)}.teacher-schedule-hero .teacher-day-strip{grid-template-columns:repeat(7,minmax(0,1fr))}.teacher-schedule-hero .teacher-day-chip{min-height:56px}.teacher-schedule-hero .teacher-day-chip span{display:block}.teacher-schedule-filters{display:grid;min-height:58px;margin-top:-4px;padding:7px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;border-radius:8px;background:#fff;box-shadow:0 7px 20px #284a7212}.teacher-schedule-filters label{min-width:0}.teacher-schedule-filters select{width:100%;height:44px;padding:0 5px;border:0;outline:0;background:transparent;color:#334255;font-size:11px;text-align:center}.teacher-schedule-status{margin-top:12px;background:#eaf1fa}.teacher-schedule-status button.is-active{color:var(--teacher-blue)}.teacher-schedule-results{margin-top:14px}.teacher-schedule-card{display:grid;align-items:center;min-width:0;min-height:130px;padding:13px;grid-template-columns:76px minmax(0,1fr) auto;gap:11px;border:1px solid var(--teacher-line);border-radius:8px;background:#fff;box-shadow:0 8px 22px #2548700f}.teacher-schedule-card__visual{display:block;width:76px;height:88px;overflow:hidden;border-radius:7px;background:var(--teacher-blue-soft)}.teacher-schedule-card__visual img{width:100%;height:100%;object-fit:cover}.teacher-schedule-card__body{min-width:0}.teacher-schedule-card__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.teacher-schedule-card__heading h2{min-width:0;font-size:14px;line-height:1.35}.teacher-schedule-card__body p{display:flex;align-items:center;gap:4px;margin-top:7px;color:var(--teacher-muted);font-size:10px}.teacher-schedule-card__action{white-space:nowrap}.teacher-schedule-hero .teacher-page-title{margin-bottom:15px}.teacher-schedule-hero .teacher-page-title p{color:#dceaff}.teacher-schedule-hero .teacher-title-icon{background:#ffffff29;color:#fff}.teacher-schedule-hero .teacher-date-toolbar{position:static;margin:0;padding:10px;border:0;border-radius:8px;background:#fff;color:var(--teacher-ink);-webkit-backdrop-filter:none;backdrop-filter:none}.teacher-date-input,.teacher-search,.teacher-field input,.teacher-field textarea,.teacher-field select{width:100%;min-height:46px;padding:0 12px;border:1px solid #d5ddd8;border-radius:8px;outline:0;background:#fff;color:var(--teacher-ink);font-size:14px}.teacher-field textarea{min-height:92px;padding-top:11px;resize:vertical}.teacher-date-input:focus,.teacher-search:focus,.teacher-field input:focus,.teacher-field textarea:focus,.teacher-field select:focus{border-color:var(--teacher-green);box-shadow:0 0 0 3px #146ff81a}.teacher-day-strip{display:grid;margin-top:10px;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.teacher-day-chip{min-height:50px;padding:5px 2px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--teacher-muted);font-size:10px;cursor:pointer}.teacher-day-chip strong{display:block;margin-top:2px;color:var(--teacher-ink);font-size:15px}.teacher-day-chip.is-active{border-color:var(--teacher-green);background:var(--teacher-green);color:#fff}.teacher-day-chip.is-active strong{color:#fff}.teacher-segmented{display:grid;min-height:42px;padding:3px;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;border-radius:8px;background:#e7ebe8}.teacher-segmented button{min-width:0;min-height:36px;padding:0 8px;border:0;border-radius:6px;background:transparent;color:var(--teacher-muted);font-size:12px;font-weight:750;cursor:pointer}.teacher-segmented button.is-active{background:#fff;color:var(--teacher-ink);box-shadow:0 2px 7px #16261f14}.teacher-class-card,.teacher-message-card,.teacher-resource-card,.teacher-assignment-card,.teacher-roster-card{display:grid;align-items:center;min-width:0;padding:13px;gap:11px;border:1px solid var(--teacher-line);border-radius:8px;background:#fff}.teacher-class-card{grid-template-columns:44px minmax(0,1fr) 18px}.teacher-class-card__icon,.teacher-list-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:7px;background:var(--teacher-blue-soft);color:var(--teacher-blue)}.teacher-class-card__body,.teacher-message-card__body,.teacher-resource-card__body,.teacher-assignment-card__body{min-width:0}.teacher-class-card h3,.teacher-message-card h3,.teacher-resource-card h3,.teacher-assignment-card h3{font-size:14px;line-height:1.35}.teacher-class-card p,.teacher-message-card p,.teacher-resource-card p,.teacher-assignment-card p{margin-top:4px;color:var(--teacher-muted);font-size:11px;line-height:1.45}.teacher-class-card__meta,.teacher-resource-card__meta,.teacher-assignment-card__meta{display:flex;flex-wrap:wrap;gap:5px 10px;margin-top:7px;color:#53605a;font-size:10px;font-weight:700}.teacher-message-card{width:100%;grid-template-columns:38px minmax(0,1fr) auto;border-color:transparent;text-align:left;cursor:pointer}.teacher-message-card.is-unread{border-color:#bed8fb;background:#f8fbff}.teacher-message-card__dot{width:7px;height:7px;border-radius:50%;background:var(--teacher-coral)}.teacher-message-card__category{color:var(--teacher-green);font-size:9px;font-weight:800}.teacher-message-card time{color:#8a948f;font-size:9px;white-space:nowrap}.teacher-message-detail{margin-top:12px;color:var(--teacher-muted);font-size:13px;line-height:1.7}.teacher-detail-hero{display:grid;align-items:center;margin:0 -16px;padding:22px 18px;grid-template-columns:minmax(0,1fr) auto;gap:14px;background:linear-gradient(135deg,#2084ff,#075ff0);color:#fff}.teacher-detail-hero p{color:#dbeaff;font-size:11px;font-weight:700}.teacher-detail-hero h1{margin-top:5px;font-size:24px;line-height:1.25}.teacher-detail-hero__time{margin-top:8px;font-size:13px}.teacher-info-list{margin-top:18px;border-top:1px solid var(--teacher-line)}.teacher-info-row{display:grid;align-items:center;min-height:60px;padding:8px 2px;grid-template-columns:30px minmax(0,1fr);gap:7px;border-bottom:1px solid var(--teacher-line)}.teacher-info-row>svg{color:var(--teacher-green)}.teacher-info-row span{display:flex;min-width:0;flex-direction:column;gap:2px}.teacher-info-row small{color:var(--teacher-muted);font-size:10px}.teacher-info-row strong{font-size:13px;line-height:1.4}.teacher-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.teacher-action-tile{display:grid;align-items:center;min-width:0;min-height:72px;padding:11px;grid-template-columns:36px minmax(0,1fr) 17px;gap:8px;border:1px solid var(--teacher-line);border-radius:8px;background:#fff}.teacher-action-tile>span:first-child{display:grid;place-items:center;width:35px;height:35px;border-radius:7px;background:var(--teacher-green-soft);color:var(--teacher-green)}.teacher-action-tile strong{display:block;font-size:12px}.teacher-action-tile small{display:block;margin-top:2px;color:var(--teacher-muted);font-size:9px}.teacher-attendance-toolbar{position:sticky;z-index:14;top:calc(57px + env(safe-area-inset-top));margin:0 -16px 14px;padding:12px 16px;border-bottom:1px solid var(--teacher-line);background:#fffffffa}.teacher-attendance-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.teacher-attendance-summary span{display:flex;align-items:center;min-height:45px;flex-direction:column;justify-content:center;border-radius:7px;background:var(--teacher-bg);color:var(--teacher-muted);font-size:9px}.teacher-attendance-summary strong{color:var(--teacher-ink);font-size:15px}.teacher-attendance-toolbar .teacher-button{margin-top:9px}.teacher-roster-card{align-items:start;grid-template-columns:42px minmax(0,1fr)}.teacher-student-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--teacher-yellow-soft);color:#825a08;font-size:12px;font-weight:850}.teacher-roster-card__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.teacher-roster-card__heading h3{font-size:14px}.teacher-roster-card__heading small{color:var(--teacher-muted);font-size:9px}.teacher-roster-card__body{min-width:0}.teacher-roster-card__body>p{margin-top:4px;color:var(--teacher-muted);font-size:10px}.teacher-attendance-choice{display:grid;margin-top:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.teacher-attendance-choice button{min-height:38px;padding:0 5px;border:1px solid var(--teacher-line);border-radius:6px;background:#fff;color:var(--teacher-muted);font-size:10px;font-weight:750;cursor:pointer}.teacher-attendance-choice button.is-present{border-color:var(--teacher-green);background:var(--teacher-green-soft);color:var(--teacher-green-dark)}.teacher-attendance-choice button.is-absent{border-color:var(--teacher-coral);background:var(--teacher-coral-soft);color:#9b3d2c}.teacher-attendance-choice button.is-undelivered{border-color:var(--teacher-yellow);background:var(--teacher-yellow-soft);color:#78530a}.teacher-attendance-extras{display:grid;margin-top:8px;grid-template-columns:92px minmax(0,1fr);gap:7px}.teacher-attendance-extras input{width:100%;min-width:0;min-height:38px;padding:0 9px;border:1px solid var(--teacher-line);border-radius:6px;outline:none;font-size:11px}.teacher-sticky-submit{position:sticky;z-index:20;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:calc(72px + env(safe-area-inset-bottom));margin:22px -16px -30px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--teacher-line);background:#fffffffa;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.teacher-sticky-submit p{color:var(--teacher-muted);font-size:10px}.teacher-sticky-submit strong{display:block;margin-top:2px;font-size:13px}.teacher-form{display:flex;flex-direction:column}.teacher-field{display:block;margin-top:14px}.teacher-field>span{display:block;margin-bottom:6px;color:#44514b;font-size:11px;font-weight:800}.teacher-form-actions{display:flex;gap:8px;margin-top:18px}.teacher-form-actions .teacher-button{flex:1}.teacher-score-row,.teacher-tag-row{display:flex;gap:7px;margin-top:8px;overflow-x:auto;scrollbar-width:none}.teacher-score-row button,.teacher-tag-row button{flex:0 0 auto;min-height:38px;padding:0 12px;border:1px solid var(--teacher-line);border-radius:999px;background:#fff;color:var(--teacher-muted);font-size:11px;font-weight:750;cursor:pointer}.teacher-score-row button.is-active,.teacher-tag-row button.is-active{border-color:var(--teacher-green);background:var(--teacher-green);color:#fff}.teacher-inline-alert,.teacher-success-band{display:flex;align-items:flex-start;gap:8px;margin-top:13px;padding:11px;border-radius:8px;font-size:11px;line-height:1.45}.teacher-inline-alert{border:1px solid #ecc1b8;background:var(--teacher-coral-soft);color:#903b2d}.teacher-success-band{border:1px solid #bfd9fb;background:var(--teacher-green-soft);color:var(--teacher-green-dark)}.teacher-inline-alert svg,.teacher-success-band svg{flex:0 0 auto}.teacher-sheet-backdrop{position:fixed;z-index:70;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;background:#0c17127a}.teacher-sheet{width:min(100%,768px);max-height:min(84vh,760px);padding:8px 17px calc(20px + env(safe-area-inset-bottom));overflow-y:auto;border-radius:8px 8px 0 0;background:#fff}.teacher-sheet__handle{display:block;width:38px;height:4px;margin:1px auto 12px;border-radius:999px;background:#d1d8d4}.teacher-sheet__heading{display:flex;align-items:center;justify-content:space-between;min-height:48px;gap:12px}.teacher-sheet__heading h2{font-size:19px}.teacher-profile-band{position:relative;display:grid;align-items:center;min-height:220px;margin:0 -16px;padding:calc(20px + env(safe-area-inset-top)) 18px 28px;grid-template-columns:1fr;gap:20px;background:linear-gradient(145deg,#2786ff,#0a5fea);color:#fff}.teacher-profile-heading{display:flex;align-items:center;justify-content:space-between}.teacher-profile-heading h1{font-size:24px}.teacher-profile-heading a{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#ffffff1f;color:#fff}.teacher-profile-identity{display:grid;align-items:center;grid-template-columns:74px minmax(0,1fr);gap:15px}.teacher-profile-identity h2{font-size:23px}.teacher-profile-identity>div>span{display:inline-block;margin-top:5px;padding:4px 10px;border-radius:99px;background:var(--teacher-coral);font-size:10px;font-weight:800}.teacher-profile-avatar-wrap{position:relative;width:70px;height:70px}.teacher-profile-avatar{position:relative;z-index:1;width:70px;height:70px;border:3px solid rgba(255,255,255,.75);border-radius:50%;object-fit:cover;background:#e5f0ff}.teacher-profile-avatar-wrap .teacher-avatar-fallback{position:absolute;top:0;right:0;bottom:0;left:0;width:70px;height:70px;background:#e5f0ff;color:var(--teacher-green-dark)}.teacher-profile-band h1{font-size:23px}.teacher-profile-band p{margin-top:5px;color:#dbeaff;font-size:11px}.teacher-profile-metrics{position:relative;z-index:2;display:grid;margin:-18px 0 0;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.teacher-profile-metrics>div{display:flex;align-items:center;min-width:0;min-height:104px;padding:12px 6px;flex-direction:column;border:1px solid var(--teacher-line);border-radius:8px;background:#fff;text-align:center;box-shadow:0 8px 22px #25487014}.teacher-profile-metrics span{font-size:11px}.teacher-profile-metrics strong{margin-top:6px;font-size:23px}.teacher-profile-metrics strong small{font-size:10px}.teacher-profile-metrics p{margin-top:5px;overflow:hidden;color:var(--teacher-muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.teacher-profile-shortcuts{display:grid;margin-top:14px;padding:13px 6px;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--teacher-line);border-radius:8px;background:#fff}.teacher-profile-shortcuts a{display:flex;align-items:center;min-width:0;min-height:70px;flex-direction:column;gap:7px;color:var(--teacher-ink);text-align:center}.teacher-profile-shortcuts a>span{display:grid;place-items:center;width:38px;height:38px;border-radius:7px;background:var(--teacher-blue);color:#fff}.teacher-profile-shortcuts a:nth-child(odd)>span{background:var(--teacher-coral)}.teacher-profile-shortcuts strong{font-size:10px;white-space:nowrap}.teacher-current-class-section>h2{margin-bottom:10px;font-size:19px}.teacher-current-class-card{display:grid;align-items:center;min-width:0;padding:14px;grid-template-columns:44px minmax(0,1fr);gap:10px;border:1px solid var(--teacher-line);border-radius:8px;background:#fff;box-shadow:0 8px 22px #2548700f}.teacher-current-class-card__icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--teacher-blue-soft);color:var(--teacher-blue)}.teacher-current-class-card__body{min-width:0}.teacher-current-class-card__body>div{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.teacher-current-class-card h3{font-size:15px}.teacher-current-class-card p{margin-top:6px;color:var(--teacher-muted);font-size:10px}.teacher-current-class-card p strong{color:var(--teacher-coral);font-size:14px}.teacher-current-class-card__body>span{display:inline-flex;align-items:center;margin:7px 8px 0 0;gap:3px;color:var(--teacher-muted);font-size:9px}.teacher-current-class-card>.teacher-button{grid-column:2;justify-self:end;margin-top:-36px}.teacher-current-class-empty{padding:24px;border:1px dashed var(--teacher-line);border-radius:8px;color:var(--teacher-muted);text-align:center}.teacher-profile-menu-section{margin-top:18px}.teacher-profile-signout{margin-top:16px}.teacher-menu-list{border-top:1px solid var(--teacher-line)}.teacher-menu-item{display:grid;align-items:center;min-height:58px;padding:5px 2px;grid-template-columns:35px minmax(0,1fr) 18px;gap:8px;border-bottom:1px solid var(--teacher-line)}.teacher-menu-item>span:first-child{display:grid;place-items:center;width:34px;height:34px;border-radius:7px;background:var(--teacher-blue-soft);color:var(--teacher-blue)}.teacher-menu-item strong{font-size:13px}.teacher-menu-item small{display:block;margin-top:2px;color:var(--teacher-muted);font-size:9px}.teacher-setting-row{display:flex;align-items:center;justify-content:space-between;min-height:70px;gap:14px;border-bottom:1px solid var(--teacher-line)}.teacher-setting-row strong{font-size:13px}.teacher-setting-row p{margin-top:3px;color:var(--teacher-muted);font-size:10px}.teacher-switch{position:relative;flex:0 0 auto;width:48px;height:28px;padding:0;border:0;border-radius:999px;background:#cdd5d1;cursor:pointer}.teacher-switch:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #14231d33;transition:transform .15s ease}.teacher-switch.is-on{background:var(--teacher-green)}.teacher-switch.is-on:after{transform:translate(20px)}.teacher-inline-meta{display:inline-flex;align-items:center;gap:4px}.teacher-page-state-offset{padding-top:20px}.teacher-search-wrap{position:relative;display:block}.teacher-search-wrap>span{position:absolute;z-index:1;top:13px;left:12px;color:var(--teacher-muted);pointer-events:none}.teacher-search-wrap .teacher-search{padding-left:39px}.teacher-resource-card--with-action{grid-template-columns:42px minmax(0,1fr) auto}.teacher-resource-card__actions{display:flex;gap:4px}.teacher-material-preview{padding:10px 2px 4px}.teacher-material-preview>span{display:grid;place-items:center;width:44px;height:44px;border-radius:8px;background:var(--teacher-blue-soft);color:var(--teacher-blue)}.teacher-material-preview h3{margin-top:12px;font-size:17px}.teacher-material-preview pre{max-height:46vh;margin:12px 0;padding:14px;overflow:auto;border:1px solid var(--teacher-line);border-radius:8px;background:#f7faff;color:#46566a;font:inherit;font-size:11px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.teacher-material-preview>div{display:flex;justify-content:flex-end;gap:8px}.teacher-assignment-card--stacked{display:block;padding:0;overflow:hidden}.teacher-assignment-toggle{display:grid;align-items:center;width:100%;min-width:0;padding:13px;grid-template-columns:42px minmax(0,1fr) 18px;gap:11px;border:0;background:#fff;color:inherit;text-align:left;cursor:pointer}.teacher-assignment-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.teacher-assignment-heading h3{min-width:0}.teacher-assignment-detail{padding:13px;border-top:1px solid var(--teacher-line);background:#f8faf8}.teacher-assignment-detail .teacher-loading{padding:2px 0}.teacher-assignment-detail .teacher-state{min-height:128px}.teacher-submission-list{display:flex;flex-direction:column;gap:8px}.teacher-submission-row{display:grid;align-items:center;min-width:0;padding:10px;grid-template-columns:42px minmax(0,1fr) auto;gap:9px;border:1px solid var(--teacher-line);border-radius:7px;background:#fff}.teacher-submission-row__body{min-width:0}.teacher-submission-row__body strong{display:block;font-size:12px}.teacher-submission-row__body small{display:block;margin-top:2px;color:var(--teacher-muted);font-size:9px}.teacher-submission-row__body p{margin-top:5px;color:#45514c;font-size:10px;line-height:1.45}.teacher-attachment-count{display:inline-flex;align-items:center;gap:3px;margin-top:5px;color:var(--teacher-blue);font-size:9px;font-weight:700}.teacher-student-picker{display:flex;gap:7px;margin:2px -16px 0;padding:0 16px 10px;overflow-x:auto;scrollbar-width:none}.teacher-student-picker::-webkit-scrollbar{display:none}.teacher-student-picker button{display:grid;align-items:center;min-width:132px;min-height:62px;padding:8px 10px;grid-template-columns:40px minmax(0,1fr);gap:8px;border:1px solid var(--teacher-line);border-radius:8px;background:#fff;color:var(--teacher-ink);text-align:left;cursor:pointer}.teacher-student-picker button.is-active{border-color:var(--teacher-green);background:var(--teacher-green-soft)}.teacher-student-picker button .teacher-student-avatar{width:38px;height:38px}.teacher-student-picker button strong{display:block;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.teacher-student-picker button small{display:block;margin-top:2px;color:var(--teacher-muted);font-size:9px}.teacher-feedback-form{margin-top:8px;padding-top:14px;border-top:1px solid var(--teacher-line)}.teacher-selected-student{display:flex;align-items:center;gap:9px;color:var(--teacher-green)}.teacher-selected-student span{display:flex;flex-direction:column}.teacher-selected-student small{color:var(--teacher-muted);font-size:9px}.teacher-selected-student strong{color:var(--teacher-ink);font-size:13px}.teacher-rating-field,.teacher-channel-field{min-width:0;margin:14px 0 0;padding:0;border:0}.teacher-rating-field legend,.teacher-channel-field legend{color:#44514b;font-size:11px;font-weight:800}.teacher-rating-row{display:flex;align-items:center;min-height:46px;margin-top:6px;padding:0 8px;gap:2px;border:1px solid #d5ddd8;border-radius:8px;background:#fff}.teacher-rating-row button{display:grid;place-items:center;width:38px;height:40px;padding:0;border:0;background:transparent;color:#bbc3bf;cursor:pointer}.teacher-rating-row button.is-active{color:var(--teacher-yellow)}.teacher-rating-row>span{margin-left:auto;padding-right:4px;color:var(--teacher-muted);font-size:10px}.teacher-feedback-form>.teacher-button{margin-top:18px}.teacher-student-summary{display:grid;align-items:center;min-height:112px;margin:-20px -16px 0;padding:20px 18px;grid-template-columns:58px minmax(0,1fr);gap:13px;background:linear-gradient(135deg,#2084ff,#075ff0);color:#fff}.teacher-student-avatar--large{width:56px;height:56px;border:2px solid rgba(255,255,255,.7);font-size:15px}.teacher-student-summary p{color:#dbeaff;font-size:10px;font-weight:700}.teacher-student-summary h1{margin-top:2px;font-size:22px}.teacher-student-summary div>span{display:block;margin-top:4px;color:#dbeaff;font-size:10px}.teacher-student-minimum{display:grid;margin:0 -16px;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid var(--teacher-line);background:#fff}.teacher-student-minimum>span{display:grid;align-items:center;min-width:0;min-height:74px;padding:11px 14px;grid-template-columns:24px minmax(0,1fr);column-gap:5px;border-right:1px solid var(--teacher-line)}.teacher-student-minimum>span:last-child{border-right:0}.teacher-student-minimum svg{grid-row:1 / 3;color:var(--teacher-green)}.teacher-student-minimum small{color:var(--teacher-muted);font-size:9px}.teacher-student-minimum strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.teacher-channel-grid{display:grid;margin-top:7px;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.teacher-channel-grid button{display:flex;align-items:center;justify-content:center;min-width:0;min-height:42px;padding:0 5px;gap:4px;border:1px solid var(--teacher-line);border-radius:7px;background:#fff;color:var(--teacher-muted);font-size:11px;font-weight:750;cursor:pointer}.teacher-channel-grid button.is-active{border-color:var(--teacher-green);background:var(--teacher-green-soft);color:var(--teacher-green-dark)}.teacher-form>.teacher-button--wide{margin-top:18px}.teacher-communication-list{display:flex;flex-direction:column}.teacher-communication-item{position:relative;padding:2px 0 20px 25px;border-left:1px solid var(--teacher-line)}.teacher-communication-item:last-child{padding-bottom:2px}.teacher-communication-item__line{position:absolute;top:1px;left:-5px;width:9px;height:9px;border:2px solid white;border-radius:50%;background:var(--teacher-green);box-shadow:0 0 0 1px var(--teacher-green)}.teacher-communication-item__heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.teacher-communication-item__heading strong{font-size:12px}.teacher-communication-item__heading time{color:var(--teacher-muted);font-size:9px;white-space:nowrap}.teacher-communication-item>p{margin-top:6px;color:#3f4a45;font-size:12px;line-height:1.55}.teacher-communication-item>div:last-child{margin-top:7px;padding:8px 10px;border-left:3px solid var(--teacher-yellow);background:var(--teacher-yellow-soft)}.teacher-communication-item>div:last-child small{display:block;color:#83621c;font-size:9px;font-weight:800}.teacher-communication-item>div:last-child span{display:block;margin-top:2px;color:#5f4a1f;font-size:10px}.teacher-settings-list{border-top:1px solid var(--teacher-line)}.teacher-setting-row{display:grid;grid-template-columns:36px minmax(0,1fr) 48px}.teacher-setting-row__icon{display:grid;place-items:center;width:34px;height:34px;border-radius:7px;background:var(--teacher-blue-soft);color:var(--teacher-blue)}.teacher-setting-row>span:nth-child(2){min-width:0}.teacher-theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.teacher-theme-options button{display:grid;align-items:center;min-width:0;min-height:82px;padding:9px;grid-template-rows:24px auto 18px;place-items:center;border:1px solid var(--teacher-line);border-radius:8px;background:#fff;color:var(--teacher-muted);font-size:11px;font-weight:750;cursor:pointer}.teacher-theme-options button.is-active{border-color:var(--teacher-green);background:var(--teacher-green-soft);color:var(--teacher-green-dark)}.teacher-theme-options button i{height:18px}.teacher-settings-save{margin-top:22px}@media(min-width:620px){.teacher-frame{box-shadow:0 12px 34px #192c2417}.teacher-page{padding-right:24px;padding-left:24px}.teacher-dashboard-band,.teacher-metrics,.teacher-profile-band,.teacher-schedule-hero,.teacher-detail-hero{margin-right:-24px;margin-left:-24px}.teacher-date-toolbar,.teacher-filter-toolbar,.teacher-attendance-toolbar{margin-right:-24px;margin-left:-24px;padding-right:24px;padding-left:24px}.teacher-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(270px,.85fr);gap:22px}.teacher-dashboard-grid .teacher-section{min-width:0}.teacher-class-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-roster-list--attendance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.teacher-sticky-submit,.teacher-student-picker{margin-right:-24px;margin-left:-24px;padding-right:24px;padding-left:24px}.teacher-student-summary,.teacher-student-minimum{margin-right:-24px;margin-left:-24px}}@media(max-width:370px){.teacher-page{padding-right:12px;padding-left:12px}.teacher-dashboard-band,.teacher-metrics,.teacher-profile-band,.teacher-schedule-hero,.teacher-detail-hero{margin-right:-12px;margin-left:-12px}.teacher-dashboard-band{padding-right:125px}.teacher-dashboard-band__robot{right:1px;width:124px}.teacher-dashboard-band__fallback{right:18px;width:82px;height:82px}.teacher-schedule-card{grid-template-columns:68px minmax(0,1fr)}.teacher-schedule-card__visual{width:68px;height:82px}.teacher-schedule-card__action{grid-column:2;justify-self:end}.teacher-quick-grid{gap:5px}.teacher-action-grid{grid-template-columns:1fr}.teacher-date-toolbar,.teacher-filter-toolbar,.teacher-attendance-toolbar,.teacher-sticky-submit,.teacher-student-picker{margin-right:-12px;margin-left:-12px;padding-right:12px;padding-left:12px}.teacher-student-summary,.teacher-student-minimum{margin-right:-12px;margin-left:-12px}.teacher-channel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-submission-row{grid-template-columns:38px minmax(0,1fr)}.teacher-submission-row>.teacher-student-avatar{width:38px;height:38px}.teacher-submission-row>.teacher-button{grid-column:2;justify-self:start}}@media(prefers-reduced-motion:reduce){.teacher-root *,.teacher-root *:before,.teacher-root *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17231f;background:#e9eeeb;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #17231f;--muted: #68736f;--soft: #f3f6f4;--line: #dfe6e2;--surface: #ffffff;--primary: #146ff8;--primary-dark: #0756c9;--primary-soft: #eaf3ff;--coral: #ff7a0a;--coral-soft: #fff2e5;--yellow: #ffad1f;--yellow-soft: #fff5db;--blue: #146ff8;--blue-soft: #eaf3ff;--danger: #bd3f36;--danger-soft: #fff0ee;--shadow: 0 12px 34px rgba(25, 44, 36, .09)}*{box-sizing:border-box;letter-spacing:0}html{background:#e9eeeb;min-width:320px}body{margin:0;min-width:320px;min-height:100vh;background:#e9eeeb;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}body.modal-open{overflow:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3,strong,span,p,small{overflow-wrap:anywhere}#root{min-height:100vh}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-frame{position:relative;width:min(100%,520px);min-height:100vh;min-height:100dvh;margin:0 auto;background:#f5f9fe}.app-frame--detail{background:var(--surface)}.app-header{position:sticky;z-index:20;top:0;display:flex;align-items:center;justify-content:space-between;min-height:calc(58px + env(safe-area-inset-top));padding:calc(8px + env(safe-area-inset-top)) 18px 8px;border-bottom:1px solid rgba(223,230,226,.8);background:#f7f9f8f5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand-mark{font-size:20px;font-weight:800;color:var(--ink)}.brand-mark span{color:var(--primary)}.brand-mark--small{flex:0 0 auto;font-size:18px}.brand-mark--light{color:#fff}.brand-mark--light span{color:#8ee3bf}.student-switch{display:flex;align-items:center;gap:7px;min-width:0;min-height:40px;padding:4px 8px 4px 4px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:14px;font-weight:700;cursor:pointer}.student-switch>span:nth-child(2){max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{display:inline-grid;flex:0 0 auto;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--yellow-soft);color:#8a5b00;font-size:13px;font-weight:800}.avatar--small{width:31px;height:31px;font-size:11px}.app-main{min-height:calc(100vh - 58px);min-height:calc(100dvh - 58px);padding-bottom:calc(64px + env(safe-area-inset-bottom))}.app-main--detail{min-height:100vh;padding-bottom:0}.bottom-nav{position:fixed;z-index:25;bottom:0;left:50%;display:grid;width:min(100%,520px);height:calc(64px + env(safe-area-inset-bottom));min-height:calc(64px + env(safe-area-inset-bottom));padding:6px 10px calc(6px + env(safe-area-inset-bottom));transform:translate(-50%);grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--line);background:#fffffff7;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.bottom-nav__item{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;min-width:0;color:#7a8580;font-size:11px;font-weight:650}.bottom-nav__item svg{transition:transform .15s ease}.bottom-nav__item--active{color:var(--primary)}.bottom-nav__item--active svg{transform:translateY(-1px);stroke-width:2.5}.page{padding:22px 16px 34px}.page-title-row,.section-heading,.sheet-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.page-title-row{margin-bottom:20px}.page-title-row h1{margin-top:4px;font-size:26px;line-height:1.22}.title-icon,.settlement-icon{display:grid;flex:0 0 auto;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--primary-soft);color:var(--primary)}.eyebrow{color:var(--primary);font-size:12px;font-weight:800}.page-section{margin-top:28px}.page-section--last{padding-bottom:20px}.section-heading{min-height:42px;margin-bottom:13px}.section-heading h2{margin-top:3px;font-size:19px;line-height:1.25}.section-link{display:inline-flex;align-items:center;gap:3px;color:var(--muted);font-size:13px;font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 18px;border:1px solid transparent;border-radius:8px;font-size:15px;font-weight:800;cursor:pointer}.button:disabled{cursor:not-allowed;opacity:.5}.button--primary{background:var(--primary);color:#fff;box-shadow:0 7px 18px #087f5b2e}.button--secondary{border-color:#b9d8cb;background:#fff;color:var(--primary-dark)}.button--danger{background:var(--danger);color:#fff}.button--danger-ghost{min-height:40px;padding:0 13px;border-color:#ecc5c0;background:#fff;color:var(--danger);font-size:13px}.button--wide{width:100%}.button--compact{min-height:38px;margin-top:14px;padding:0 13px;font-size:13px}.pagination-footer{display:grid;justify-items:center;gap:8px;padding:18px 0 4px}.pagination-footer p{color:var(--danger);font-size:12px;text-align:center}.pagination-footer .button{min-width:136px}.text-button,.demo-fill-button{padding:8px;border:0;background:transparent;color:var(--primary);font-weight:700;cursor:pointer}.icon-button,.input-icon-button,.icon-link,.search-field button{display:inline-grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}.icon-button:disabled{opacity:.45}.login-page{width:min(100%,520px);min-height:100vh;min-height:100dvh;margin:0 auto;background:#fff}.login-visual{position:relative;overflow:hidden;width:100%;min-height:31vh;max-height:340px;aspect-ratio:16 / 10;background-color:#234f40;color:#fff}.login-visual:before{content:"";position:absolute;top:28px;right:-26px;width:176px;height:118px;border:1px solid rgba(255,255,255,.16);border-radius:8px;transform:rotate(-7deg)}.login-visual__motif{position:absolute;top:22px;right:22px;width:126px;height:94px}.login-visual__book,.login-visual__calendar{position:absolute;display:grid;place-items:center;border-radius:8px}.login-visual__book{top:0;right:24px;bottom:10px;left:0;border:1px solid rgba(255,255,255,.2);background:#2d6b56;color:#bdebd7}.login-visual__calendar{right:0;bottom:0;width:50px;height:50px;border:4px solid #234f40;background:#f0b33a;color:#243f35}.login-visual__content{position:absolute;z-index:1;inset:auto 22px 22px}.login-visual h1{max-width:330px;margin-top:20px;font-size:28px;line-height:1.25}.login-visual p{margin-top:6px;color:#ffffffd9;font-size:14px}.login-form-section{padding:27px 22px calc(28px + env(safe-area-inset-bottom))}.login-heading{margin-bottom:22px}.login-heading h2{margin-top:4px;font-size:24px}.field-label{display:block;margin:15px 0 7px;color:#3f4b47;font-size:13px;font-weight:750}.input-shell,.search-field{display:flex;align-items:center;gap:10px;min-height:50px;padding:0 13px;border:1px solid #d8e1dc;border-radius:8px;background:#f9fbfa;color:#7c8983;transition:border-color .15s ease,box-shadow .15s ease}.input-shell:focus-within,.search-field:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #087f5b1a}.input-shell input,.search-field input{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:16px}.input-icon-button,.search-field button{flex:0 0 36px;width:36px;height:36px;color:#6f7b76}.login-form-section .button--wide{margin-top:22px}.demo-fill-button{display:block;margin:8px auto 0;font-size:13px}.form-error,.submit-error{display:flex;align-items:flex-start;gap:8px;margin-top:13px;padding:11px 12px;border:1px solid #f1c4bf;border-radius:8px;background:var(--danger-soft);color:#8f2f28;font-size:13px;line-height:1.45}.form-error{flex-direction:column;gap:2px}.form-error small{opacity:.72}.login-security{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:18px;color:#84908b;font-size:11px}.login-initial-password{margin-top:7px;color:#68778b;font-size:11px;line-height:1.55;text-align:center}.login-initial-password strong{color:#17231f;font-size:12px}.change-password-page{background:#f6f9fe}.change-password-hero{position:relative;min-height:258px;overflow:hidden;padding:calc(24px + env(safe-area-inset-top)) 24px 28px;background:#146ff8;color:#fff}.change-password-hero:after{content:"";position:absolute;right:-62px;bottom:-94px;width:230px;height:230px;border:38px solid rgba(255,255,255,.08);border-radius:50%}.change-password-hero>img{position:relative;z-index:1;display:block;width:142px;height:auto;border-radius:6px}.change-password-hero__icon{position:absolute;z-index:1;top:calc(25px + env(safe-area-inset-top));right:24px;display:grid;place-items:center;width:50px;height:50px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:#ffffff24}.change-password-hero>p{position:relative;z-index:1;margin-top:42px;color:#ffffffc7;font-size:12px;font-weight:800}.change-password-hero>h1{position:relative;z-index:1;margin-top:7px;font-size:26px;line-height:1.3}.change-password-hero>span:last-child{position:relative;z-index:1;display:block;margin-top:9px;color:#ffffffd6;font-size:12px}.change-password-form-section{padding-top:22px}.password-notice{display:grid;align-items:start;padding:13px;grid-template-columns:22px minmax(0,1fr);gap:9px;border:1px solid #cfe0fb;border-radius:8px;background:#edf5ff;color:#1460ca}.password-notice>div{display:flex;min-width:0;flex-direction:column;gap:3px}.password-notice strong{font-size:13px}.password-notice span{color:#4f6d96;font-size:11px;line-height:1.55}.password-rules{margin-top:11px;color:#718096;font-size:11px;line-height:1.55}.change-password-signout{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:44px;margin-top:8px;border:0;background:transparent;color:#6d7c90;font-size:12px;font-weight:750;cursor:pointer}.change-password-signout:disabled{cursor:not-allowed;opacity:.55}.screen-loader,.standalone-state{display:flex;align-items:center;justify-content:center;flex-direction:column;width:min(100%,520px);min-height:100vh;margin:0 auto;padding:28px;background:#f7f9f8;color:var(--muted)}.screen-loader{gap:12px;font-size:13px}.standalone-state .brand-mark{margin-bottom:36px}.standalone-state .text-button{margin-top:14px}.spinner{display:inline-block;width:23px;height:23px;border:2px solid #c5d6cf;border-top-color:var(--primary);border-radius:50%;animation:spin .75s linear infinite}.spinner--button{width:17px;height:17px;border-color:#ffffff73;border-top-color:#fff}@keyframes spin{to{transform:rotate(360deg)}}.welcome-band{margin:-22px -16px 0;padding:28px 20px 22px;background:#174f3d;color:#fff}.welcome-band>p{color:#a9d9c5;font-size:13px;font-weight:700}.welcome-band>h1{margin-top:5px;font-size:25px;line-height:1.28}.welcome-stats{display:grid;align-items:center;margin-top:22px;grid-template-columns:1fr 1px 1fr}.welcome-stats a{display:flex;align-items:flex-start;flex-direction:column;gap:4px;min-width:0}.welcome-stats a:last-child{padding-left:22px}.welcome-stats span{display:inline-flex;align-items:center;gap:6px;color:#b9dfcf;font-size:12px}.welcome-stats strong{font-size:25px}.welcome-stats__divider{width:1px;height:35px;background:#ffffff38}.home-actions{display:grid;gap:8px;margin-top:17px;grid-template-columns:repeat(3,1fr)}.home-actions a{display:flex;align-items:center;flex-direction:column;gap:8px;padding:10px 4px;color:#46534e;font-size:12px;font-weight:750}.quick-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:8px}.quick-icon--green{background:var(--primary-soft);color:var(--primary)}.quick-icon--coral{background:var(--coral-soft);color:var(--coral)}.quick-icon--yellow{background:var(--yellow-soft);color:#956800}.session-list,.booking-list{display:flex;flex-direction:column;gap:10px}.session-card{display:grid;min-width:0;padding:11px;grid-template-columns:84px minmax(0,1fr);gap:12px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 3px 14px #182e250a}.session-artwork{position:relative;display:grid;place-items:center;width:84px;height:112px;overflow:hidden;border-radius:7px}.session-artwork img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.session-artwork--large{width:104px;height:122px}.session-artwork--tone-1{background:#dff4eb;color:#087f5b}.session-artwork--tone-2{background:#fff0eb;color:#d84b2f}.session-artwork--tone-3{background:#eaf1fc;color:#3971c6}.session-artwork--tone-4{background:#fff6d9;color:#956800}.session-artwork--tone-5{background:#eee9f8;color:#7251a3}.session-card__content{display:flex;min-width:0;flex-direction:column}.session-card__title-row,.booking-row__title,.account-option__top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-width:0}.session-card h3,.booking-row h3{min-width:0;font-size:16px;line-height:1.3}.session-card__time,.session-card__meta,.booking-row p{display:flex;align-items:center;gap:5px;margin-top:7px;color:var(--muted);font-size:12px;line-height:1.3}.session-card__time{color:#35433d;font-weight:700}.session-card__footer{display:flex;align-items:center;gap:12px;min-height:31px;margin-top:auto;padding-top:8px;border-top:1px solid #edf1ef;color:#59655f;font-size:11px}.session-card__footer>span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.session-card__footer .icon-link{width:30px;height:30px;margin-left:auto;background:var(--primary);color:#fff}.pill{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:23px;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.pill--positive{background:var(--primary-soft);color:var(--primary-dark)}.pill--muted{background:#edf0ee;color:#69736f}.pill--accent{background:var(--blue-soft);color:#275a9f}.pill--warning{background:var(--yellow-soft);color:#855d00}.pill--neutral{background:#f0ecf7;color:#6a4d93}.booking-row{position:relative;display:grid;align-items:center;min-width:0;padding:13px 36px 13px 12px;grid-template-columns:48px minmax(0,1fr);gap:12px;border:1px solid var(--line);border-radius:8px;background:#fff}.booking-row__date{display:flex;align-items:center;justify-content:center;flex-direction:column;width:48px;height:58px;border-radius:7px;background:var(--primary-soft);color:var(--primary-dark)}.booking-row__date span{font-size:10px}.booking-row__date strong{font-size:21px;line-height:1.1}.booking-row__body{min-width:0}.booking-row__chevron{position:absolute;right:11px;color:#96a19c}.state-panel{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:170px;padding:22px;text-align:center}.state-panel__icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:11px;border-radius:50%;background:#edf3f0;color:var(--primary)}.state-panel--error .state-panel__icon,.state-panel--stale .state-panel__icon{background:var(--danger-soft);color:var(--danger)}.state-panel--success .state-panel__icon{background:var(--primary-soft);color:var(--primary)}.state-panel h2{font-size:16px}.state-panel p{max-width:300px;margin-top:6px;color:var(--muted);font-size:13px;line-height:1.5}.inline-error .state-panel{min-height:140px;padding:14px}.skeleton-list{display:flex;flex-direction:column;gap:10px}.skeleton-row{display:flex;gap:12px;min-height:134px;padding:11px;border:1px solid #e6ebe8;border-radius:8px;background:#fff}.skeleton-row--compact{min-height:96px}.skeleton{display:block;border-radius:6px;background:#e9eeeb;animation:pulse 1.3s ease-in-out infinite}.skeleton--media{flex:0 0 84px;min-height:78px}.skeleton-row__body{display:flex;flex:1;flex-direction:column;gap:10px;padding-top:4px}.skeleton--title{width:66%;height:17px}.skeleton--line{width:91%;height:12px}.skeleton--short{width:48%;height:12px}@keyframes pulse{50%{opacity:.55}}.catalog-controls{position:sticky;z-index:10;top:calc(58px + env(safe-area-inset-top));margin:0 -16px 16px;padding:0 16px 12px;background:#f7f9f8f5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.search-field{min-height:46px;background:#fff}.chip-row{display:flex;gap:8px;margin:12px -16px 0;padding:0 16px;overflow-x:auto;scrollbar-width:none}.chip-row::-webkit-scrollbar,.account-switcher::-webkit-scrollbar{display:none}.filter-chip,.category-chip{flex:0 0 auto;min-height:34px;padding:0 13px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#59655f;font-size:12px;font-weight:700;cursor:pointer}.filter-chip--active{border-color:var(--primary);background:var(--primary);color:#fff}.chip-row--subtle{margin-top:8px}.category-chip{min-height:30px;border-color:transparent;background:#edf1ef}.category-chip--active{background:var(--yellow-soft);color:#7d5700}.segmented-control{display:grid;height:42px;margin-bottom:17px;padding:3px;grid-template-columns:1fr 1fr;border-radius:8px;background:#e9eeeb}.segmented-control button{border:0;border-radius:6px;background:transparent;color:#6b7671;font-size:13px;font-weight:750;cursor:pointer}.segmented-control button.is-active{background:#fff;color:var(--ink);box-shadow:0 2px 7px #182e2514}.segmented-control button span{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:4px;border-radius:999px;background:#eef2f0;font-size:10px}.credit-summary-band{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 -16px 20px;padding:21px 18px;background:#1d4d63;color:#fff}.credit-summary-band>div:first-child{display:flex;flex-direction:column;gap:3px}.credit-summary-band>div:first-child span{color:#b9d6e2;font-size:12px}.credit-summary-band>div:first-child strong{font-size:34px;line-height:1}.credit-summary-band__stats{display:flex;flex-direction:column;gap:8px}.credit-summary-band__stats span{display:flex;align-items:center;gap:5px;color:#cee1e9;font-size:11px}.credit-summary-band__stats b{color:#fff}.account-switcher{display:flex;gap:10px;margin:0 -16px;padding:0 16px 3px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity}.account-option{display:flex;flex:0 0 min(82vw,330px);align-items:stretch;flex-direction:column;min-height:142px;padding:15px;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:left;scroll-snap-align:start;cursor:pointer}.account-option--active{border-color:var(--primary);box-shadow:0 0 0 2px #087f5b14}.account-option__top strong{font-size:14px}.account-option__top small{color:var(--primary);font-size:10px;font-weight:800}.account-option__balance{margin-top:16px;font-size:27px;font-weight:850}.account-option__balance small{color:var(--muted);font-size:11px;font-weight:600}.account-option__expiry{display:inline-flex;align-items:center;gap:5px;margin-top:auto;color:var(--muted);font-size:11px}.account-detail-section{padding:15px;border:1px solid var(--line);border-radius:8px;background:#fff}.account-balance-line{display:grid;grid-template-columns:repeat(3,1fr)}.account-balance-line>div{display:flex;align-items:center;flex-direction:column;gap:3px;border-right:1px solid var(--line)}.account-balance-line>div:last-child{border-right:0}.account-balance-line span{color:var(--muted);font-size:10px}.account-balance-line strong{font-size:17px}.credit-progress{display:flex;height:7px;margin-top:16px;overflow:hidden;border-radius:999px;background:#e7eee9}.credit-progress__consumed{background:var(--coral)}.credit-progress__held{background:var(--yellow)}.scope-copy{margin-top:9px;color:var(--muted);font-size:11px}.ledger-list{border-top:1px solid var(--line)}.ledger-row{display:grid;align-items:center;min-width:0;padding:13px 0;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;border-bottom:1px solid var(--line)}.ledger-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--coral-soft);color:var(--coral)}.ledger-icon--positive{background:var(--primary-soft);color:var(--primary)}.ledger-row__copy{display:flex;min-width:0;flex-direction:column}.ledger-row__copy strong{font-size:13px}.ledger-row__copy small{margin-top:2px;color:var(--muted);font-size:11px}.ledger-row__copy time{margin-top:2px;color:#929c97;font-size:10px}.ledger-delta{font-size:15px;font-weight:850}.ledger-delta--positive{color:var(--primary)}.ledger-delta--negative{color:var(--coral)}.page-topbar{position:sticky;z-index:20;top:0;display:grid;align-items:center;min-height:calc(56px + env(safe-area-inset-top));padding:calc(7px + env(safe-area-inset-top)) 10px 7px;grid-template-columns:44px minmax(0,1fr) 44px;border-bottom:1px solid var(--line);background:#fffffff7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.page-topbar h1{overflow:hidden;font-size:17px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.page-topbar__action{display:flex;justify-content:flex-end}.detail-content{padding:18px 16px 34px}.detail-content--bottom-space{padding-bottom:calc(38px + env(safe-area-inset-bottom))}.confirm-session,.booking-hero{display:grid;align-items:center;min-width:0;grid-template-columns:104px minmax(0,1fr);gap:16px}.confirm-session h1,.booking-hero h1{margin-top:5px;font-size:23px;line-height:1.25}.confirm-session p:not(.eyebrow),.booking-hero p{display:flex;align-items:center;gap:5px;margin-top:8px;color:var(--muted);font-size:13px}.info-list,.detail-block{margin-top:21px;padding:5px 15px;border:1px solid var(--line);border-radius:8px;background:#fff}.info-list>div,.detail-line{display:grid;align-items:center;min-height:62px;grid-template-columns:30px minmax(0,1fr);gap:8px;border-bottom:1px solid var(--line)}.info-list>div:last-child,.detail-line:last-child{border-bottom:0}.info-list svg,.detail-line>svg{color:var(--primary)}.info-list span,.detail-line span{display:flex;min-width:0;flex-direction:column;gap:2px}.info-list small,.detail-line small{color:var(--muted);font-size:10px}.info-list strong,.detail-line strong{font-size:13px;line-height:1.35}.confirm-section{margin-top:25px}.credit-cost{color:var(--coral);font-size:13px}.quote-account-list{display:flex;flex-direction:column;gap:9px}.quote-account{display:grid;align-items:center;min-width:0;min-height:74px;padding:11px 12px;grid-template-columns:39px minmax(0,1fr) 24px;gap:9px;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:left;cursor:pointer}.quote-account--active{border-color:var(--primary);background:#fbfefd}.quote-account:disabled{cursor:not-allowed;opacity:.58}.quote-account__icon{display:grid;place-items:center;width:38px;height:38px;border-radius:7px;background:var(--primary-soft);color:var(--primary)}.quote-account__copy{display:flex;min-width:0;flex-direction:column;gap:3px}.quote-account__copy strong{font-size:13px}.quote-account__copy small{color:var(--muted);font-size:11px}.quote-account__copy em{color:var(--danger);font-size:10px;font-style:normal}.radio-mark{display:grid;place-items:center;width:20px;height:20px;border:1.5px solid #b8c3be;border-radius:50%}.radio-mark span{width:10px;height:10px;border-radius:50%;background:var(--primary)}.policy-band{display:flex;align-items:flex-start;gap:10px;margin-top:22px;padding:13px;border-left:3px solid var(--primary);background:var(--primary-soft);color:var(--primary-dark)}.policy-band svg{flex:0 0 auto}.policy-band strong{font-size:12px}.policy-band p{margin-top:3px;color:#41695a;font-size:11px;line-height:1.45}.sticky-action{position:sticky;z-index:18;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:calc(74px + env(safe-area-inset-bottom));padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffffff7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.sticky-action>div{display:flex;flex-direction:column}.sticky-action small{color:var(--muted);font-size:10px}.sticky-action strong{margin-top:2px;color:var(--coral);font-size:15px}.sticky-action .button{min-width:146px}.success-banner{display:flex;align-items:flex-start;gap:9px;margin-bottom:18px;padding:12px;border:1px solid #bfe4d4;border-radius:8px;background:var(--primary-soft);color:var(--primary-dark);font-size:12px;line-height:1.45}.success-banner svg{flex:0 0 auto}.success-banner span{display:flex;flex-direction:column}.booking-hero{padding:4px 0 2px}.booking-hero__copy .pill{width:fit-content}.settlement-block,.booking-record-block{padding:14px 15px}.settlement-block .section-heading{margin-bottom:14px}.settlement-grid{display:grid;gap:10px;grid-template-columns:1.5fr 1fr}.settlement-grid>div{display:flex;min-width:0;padding:11px;flex-direction:column;border-radius:7px;background:var(--soft)}.settlement-grid small{color:var(--muted);font-size:10px}.settlement-grid strong{margin-top:3px;font-size:13px}.detail-note{margin-top:11px;color:var(--muted);font-size:11px;line-height:1.5}.mono-value{overflow:hidden;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.cancel-entry{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;padding:15px 0 3px;border-top:1px solid var(--line)}.cancel-entry strong{font-size:13px}.cancel-entry p{margin-top:3px;color:var(--muted);font-size:11px}.sheet-backdrop{position:fixed;z-index:60;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;padding:0;background:#0e191575;animation:fade-in .15s ease-out}.bottom-sheet{width:min(100%,520px);max-height:min(82vh,720px);padding:8px 18px calc(20px + env(safe-area-inset-bottom));overflow-y:auto;border-radius:8px 8px 0 0;background:#fff;box-shadow:0 -10px 40px #12241d2e;animation:sheet-up .18s ease-out}.sheet-handle{width:38px;height:4px;margin:1px auto 13px;border-radius:999px;background:#d3dad6}.sheet-heading{min-height:48px;margin-bottom:13px}.sheet-heading h2{margin-top:3px;font-size:20px}.student-list{display:flex;flex-direction:column;gap:7px}.student-option{display:grid;align-items:center;width:100%;min-height:66px;padding:8px 10px;grid-template-columns:46px minmax(0,1fr) 22px;gap:10px;border:1px solid transparent;border-radius:8px;background:#f6f8f7;text-align:left;cursor:pointer}.student-option--active{border-color:#b9ddce;background:var(--primary-soft)}.student-option__copy{display:flex;min-width:0;flex-direction:column}.student-option__copy strong{font-size:14px}.student-option__copy small{margin-top:2px;color:var(--muted);font-size:11px}.sheet-logout{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:46px;margin-top:16px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--danger);font-weight:700;cursor:pointer}.cancel-impact{display:flex;align-items:flex-start;gap:11px;padding:14px;border-radius:8px}.cancel-impact--release{background:var(--primary-soft);color:var(--primary-dark)}.cancel-impact--consume{background:var(--danger-soft);color:var(--danger)}.cancel-impact svg{flex:0 0 auto}.cancel-impact strong{font-size:16px}.cancel-impact p{margin-top:3px;font-size:11px;opacity:.8}.quote-validity{margin-top:8px;color:var(--muted);font-size:10px;text-align:right}.cancellation-recovery{margin-top:14px;padding:12px;border:1px solid #e7c27a;border-radius:8px;background:var(--yellow-soft);color:#6e4c08}.cancellation-recovery>div:first-child{display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.45}.cancellation-recovery>div:first-child svg{flex:0 0 auto}.cancellation-recovery>div:first-child span{display:flex;flex-direction:column}.cancellation-recovery__actions{display:grid;margin-top:10px;grid-template-columns:1fr 1fr;gap:8px}.cancellation-recovery__actions .button{min-height:40px;padding:0 8px;font-size:12px}.select-field,.textarea-field{width:100%;min-height:48px;padding:0 12px;border:1px solid #d8e1dc;border-radius:8px;outline:0;background:#f9fbfa;color:var(--ink);font-size:14px}.select-field:focus,.textarea-field:focus{border-color:var(--primary);box-shadow:0 0 0 3px #087f5b1a}.select-field:disabled,.textarea-field:disabled{cursor:not-allowed;opacity:.68}.textarea-field{min-height:76px;padding-top:11px;resize:vertical}.cancel-sheet .button--wide{margin-top:18px}.not-found-page{display:grid;min-height:calc(100vh - 140px);place-items:center}@keyframes fade-in{0%{opacity:0}}@keyframes sheet-up{0%{transform:translateY(28px);opacity:.75}}@media(min-width:700px){.app-frame,.login-page,.screen-loader,.standalone-state{box-shadow:var(--shadow)}.app-frame,.login-page{min-height:100vh}}@media(max-width:359px){.page{padding-right:12px;padding-left:12px}.welcome-band,.credit-summary-band{margin-right:-12px;margin-left:-12px}.session-card{grid-template-columns:76px minmax(0,1fr);gap:9px}.session-artwork{width:76px}.session-card__footer{gap:7px}.sticky-action{padding-right:12px;padding-left:12px}.sticky-action .button{min-width:132px;padding:0 13px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.learner-frame{--learner-blue: #146ff8;--learner-blue-dark: #0756c9;--learner-orange: #ff7a0a;--learner-bg: #f4f8fd;background:var(--learner-bg)}.learner-frame .app-main:not(.app-main--detail){padding-bottom:calc(72px + env(safe-area-inset-bottom))}.learner-header{min-height:calc(70px + env(safe-area-inset-top));padding:calc(12px + env(safe-area-inset-top)) 20px 10px;border-bottom:0;background:#fffffffa}.learner-brand,.login-brand-row{display:flex;align-items:center}.learner-brand img{width:118px;height:auto;border-radius:5px;object-fit:contain}.login-brand-row img{width:158px;height:auto;border-radius:6px;object-fit:contain}.standalone-brand-logo{display:block;width:176px;height:auto;margin:0 auto;border-radius:7px}.learner-header__actions{display:flex;align-items:center;gap:6px}.learner-student-button,.learner-bell-button{position:relative;display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:#111722;cursor:pointer}.learner-student-button .avatar{background:#fff3d9;color:#9d6300}.learner-bell-button i{position:absolute;top:5px;right:5px;width:8px;height:8px;border:2px solid white;border-radius:50%;background:var(--learner-orange)}.learner-frame .bottom-nav{height:calc(72px + env(safe-area-inset-bottom));min-height:calc(72px + env(safe-area-inset-bottom));padding:7px 10px calc(6px + env(safe-area-inset-bottom));border-color:#e5edf7;background:#fffffffa;box-shadow:0 -8px 24px #2555910f}.learner-frame .bottom-nav__item{gap:4px;font-size:11px;font-weight:600}.learner-home-page{padding:8px 18px 36px}.learner-hero{position:relative;min-height:205px;overflow:hidden;padding:32px 20px 24px;border-radius:8px;background:linear-gradient(135deg,#2086ff,#075df0 68%,#4d92fb);color:#fff;box-shadow:0 15px 30px #146ff838}.learner-hero__copy{position:relative;z-index:2;width:62%}.learner-hero__copy p{font-size:22px;font-weight:900;line-height:1.25}.learner-hero__copy h1{margin-top:8px;color:#ffffffe0;font-size:15px;font-weight:600;line-height:1.4}.learner-hero__copy a{display:inline-flex;align-items:center;gap:3px;min-height:39px;margin-top:20px;padding:0 14px;border-radius:999px;background:var(--learner-orange);font-size:14px;font-weight:800}.learner-hero>img{position:absolute;z-index:1;right:8px;bottom:-2px;width:43%;height:94%;object-fit:contain;object-position:bottom center}.learner-hero__dots{position:absolute;z-index:3;right:48%;bottom:12px;display:flex;gap:4px}.learner-hero__dots span{width:7px;height:4px;border-radius:4px;background:#fff6}.learner-hero__dots span:first-child{width:18px;background:#fff}.learner-category-grid{display:grid;gap:9px;margin-top:20px;grid-template-columns:repeat(4,minmax(0,1fr))}.learner-category-grid a{display:flex;align-items:center;flex-direction:column;gap:10px;min-width:0;padding:14px 5px;border:1px solid #e6eef8;border-radius:8px;background:#fff;text-align:center;box-shadow:0 8px 20px #2a53820f}.learner-category-grid strong{width:100%;color:#101621;font-size:11px;line-height:1.25}.learner-category-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:50%}.learner-category-icon--blue{background:#eaf3ff;color:#1676ff}.learner-category-icon--cyan{background:#e4f7ff;color:#198fda}.learner-category-icon--orange{background:#fff2d9;color:#ff840e}.learner-category-icon--indigo{background:#edf0ff;color:#536ee9}.learner-age-banner{position:relative;display:block;min-height:118px;margin-top:18px;overflow:hidden;padding:26px 16px;border-radius:8px;background:#1471f6;color:#fff}.learner-age-banner>div{position:relative;z-index:2;width:60%}.learner-age-banner h2{font-size:20px;line-height:1.25}.learner-age-banner p{margin-top:8px;color:#ffffffe6;font-size:11px;line-height:1.45}.learner-age-banner img{position:absolute;right:-5px;bottom:0;width:51%;height:100%;object-fit:cover;object-position:62% center}.learner-recent-section{margin-top:26px}.learner-section-title,.learner-list-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:14px}.learner-section-title>div>span,.learner-list-heading>div>span{display:flex;align-items:center;gap:4px;color:var(--learner-blue);font-size:11px;font-weight:800}.learner-section-title h2,.learner-list-heading h2{margin-top:3px;color:#0b111c;font-size:21px}.learner-section-title>a{display:flex;align-items:center;color:#788696;font-size:11px}.learner-recent-card{display:grid;align-items:center;min-width:0;padding:13px;grid-template-columns:82px minmax(0,1fr);gap:12px;border:1px solid #e4edf8;border-radius:8px;background:#fff;box-shadow:0 10px 24px #27518014}.learner-recent-card .session-artwork{width:82px;height:92px}.learner-recent-card h3{font-size:16px}.learner-recent-card p{margin-top:7px;color:#5f6c7a;font-size:11px}.learner-primary-link{grid-column:2;justify-self:end;display:inline-flex;align-items:center;justify-content:center;min-height:36px;margin-top:-42px;padding:0 13px;border-radius:999px;background:var(--learner-blue);color:#fff;font-size:12px;font-weight:800}.learner-catalog-page{padding:0 16px 34px}.learner-blue-topbar{position:relative;min-height:240px;margin:0 -16px;padding:calc(17px + env(safe-area-inset-top)) 18px 20px;background:linear-gradient(145deg,#2488ff,#0865f4);color:#fff}.learner-blue-topbar>button{position:absolute;top:calc(15px + env(safe-area-inset-top));display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;background:transparent;color:#fff;cursor:pointer}.learner-blue-topbar>button:first-child{left:10px}.learner-blue-topbar>button:nth-of-type(2){right:10px}.learner-blue-topbar>h1{padding-top:8px;font-size:24px;text-align:center}.learner-booking-picker{position:absolute;right:16px;bottom:32px;left:16px;display:grid;min-height:70px;grid-template-columns:1fr 1.4fr;border-radius:8px;background:#fff;box-shadow:0 12px 26px #0436872e}.learner-booking-picker label{display:flex;align-items:center;gap:5px;padding:0 12px;color:#172030}.learner-booking-picker label+label{border-left:1px solid #e4ebf4}.learner-booking-picker select,.learner-booking-picker input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#172030;font-size:13px;font-weight:700}.catalog-filter-panel{position:relative;z-index:2;display:grid;align-items:center;min-height:72px;margin:-20px 3px 0;padding:8px;grid-template-columns:1fr 1fr .8fr;gap:4px;border-radius:8px;background:#fff;box-shadow:0 10px 25px #2d527d1a}.catalog-filter-panel label,.catalog-filter-panel button{height:46px;padding:0 8px;border:0;border-right:1px solid #e8edf4;background:transparent;color:#303b48;font-size:12px;font-weight:700}.catalog-filter-panel label select{width:100%;height:100%;border:0;outline:0;background:transparent}.catalog-filter-panel button{display:flex;align-items:center;justify-content:center;gap:4px;border-right:0;cursor:pointer}.catalog-filter-panel button.is-active{color:var(--learner-blue)}.learner-course-search{margin-top:14px;background:#fff;border-color:#dde8f5}.learner-list-heading{margin-top:24px}.learner-list-heading button{padding:7px 0;border:0;background:transparent;color:var(--learner-blue);font-size:12px;cursor:pointer}.learner-catalog-page .result-count{margin:-4px 0 10px;color:#778594;font-size:12px}.learner-catalog-page .session-card{min-height:144px;padding:12px;grid-template-columns:100px minmax(0,1fr);gap:13px;border:0;box-shadow:0 9px 26px #22497814}.learner-catalog-page .session-artwork{width:100px;height:120px}.learner-catalog-page .session-card h3{font-size:17px}.session-guidance-badge{flex:0 0 auto;padding:5px 8px;border-radius:999px;background:var(--learner-orange);color:#fff;font-size:10px;font-weight:800}.session-card__age{margin-top:5px;color:#495765;font-size:11px}.session-card__footer{gap:6px;padding-top:5px}.session-book-link{display:inline-flex;align-items:center;justify-content:center;min-height:34px;margin-left:auto;padding:0 11px;border-radius:999px;background:var(--learner-blue);color:#fff;font-size:11px;font-weight:800}.learner-page-topbar{display:grid;align-items:center;min-height:56px;margin:-14px 0 18px;grid-template-columns:42px minmax(0,1fr) 42px}.learner-page-topbar button{display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;background:transparent;cursor:pointer}.learner-page-topbar h1{font-size:22px;text-align:center}.learner-page-topbar>span{display:grid;place-items:center;color:var(--learner-blue)}.learner-sub-page{padding-top:18px}.learning-summary{display:grid;min-height:104px;padding:20px 10px;grid-template-columns:repeat(3,1fr);border-radius:8px;background:linear-gradient(135deg,#2184ff,#0964f4);color:#fff;box-shadow:0 12px 24px #1365e433}.learning-summary>div{display:flex;align-items:center;flex-direction:column;gap:7px;border-right:1px solid rgba(255,255,255,.2)}.learning-summary>div:last-child{border:0}.learning-summary span{font-size:11px;opacity:.86}.learning-summary strong{font-size:24px}.learning-summary small{font-size:11px}.learner-tabs{margin:18px 0}.progress-course-list{display:flex;flex-direction:column;gap:12px}.progress-course-card{display:grid;align-items:center;padding:13px;grid-template-columns:88px minmax(0,1fr);gap:12px;border-radius:8px;background:#fff;box-shadow:0 9px 25px #244d7b14}.progress-course-card>img{width:88px;height:108px;border-radius:7px;object-fit:cover}.progress-course-card>div{min-width:0}.progress-course-card>div>span{color:var(--learner-orange);font-size:10px;font-weight:800}.progress-course-card h2{margin-top:3px;font-size:17px}.progress-course-card p{margin-top:5px;color:#68788b;font-size:11px}.progress-course-card small{display:block;margin-top:5px;color:#6c7c8d;font-size:10px}.course-progress{height:6px;margin-top:12px;overflow:hidden;border-radius:8px;background:#e8eff7}.course-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--learner-blue),#38a0ff)}.progress-course-card>a{grid-column:2;justify-self:end;min-height:34px;margin-top:-39px;padding:0 12px;border-radius:999px;background:var(--learner-blue);color:#fff;font-size:11px;font-weight:800;line-height:34px}.learner-action-grid{display:grid;gap:10px}.learner-action-grid--two{grid-template-columns:1fr 1fr}.learner-action-grid a{display:flex;align-items:flex-start;flex-direction:column;gap:6px;min-height:112px;padding:16px;border-radius:8px;background:#fff;color:var(--learner-blue);box-shadow:0 8px 20px #244d7b12}.learner-action-grid a strong{color:#14202f}.learner-action-grid a span{color:#758393;font-size:11px}.classroom-hero{display:flex;align-items:center;gap:16px;padding:18px;border-radius:8px;background:linear-gradient(135deg,#1b7dff,#0a61ed);color:#fff}.classroom-hero img{width:108px;height:108px;border-radius:8px;object-fit:cover}.classroom-hero span{display:inline-block;padding:4px 8px;border-radius:99px;background:var(--learner-orange);font-size:10px}.classroom-hero h2{margin-top:8px;font-size:19px}.classroom-hero p{margin-top:6px;font-size:12px;opacity:.82}.lesson-roadmap{margin:18px 0;padding:18px;border-radius:8px;background:#fff}.lesson-roadmap h2{margin-bottom:14px;font-size:18px}.lesson-roadmap>div{display:grid;align-items:center;min-height:52px;grid-template-columns:34px 1fr;gap:10px}.lesson-roadmap>div>span{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#edf1f6;color:#758393;font-size:11px;font-weight:800}.lesson-roadmap>div.is-complete>span{background:#e7f7ef;color:#16a063}.lesson-roadmap>div.is-current>span{background:var(--learner-blue);color:#fff}.lesson-roadmap>div>div{display:flex;justify-content:space-between;gap:10px;padding:15px 0;border-bottom:1px solid #edf1f5}.lesson-roadmap small{color:#7b8793}.topbar-count{display:grid;place-items:center;min-width:28px;height:25px;padding:0 7px;border-radius:99px;background:var(--learner-orange);color:#fff;font-size:11px;font-weight:800}.message-category-row{display:grid;gap:8px;margin-bottom:20px;grid-template-columns:repeat(4,1fr)}.message-category-row>span{display:flex;align-items:center;flex-direction:column;gap:6px;min-width:0;text-align:center}.message-category-row i{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#eaf3ff;color:var(--learner-blue);font-style:normal}.message-category-row strong{font-size:10px}.message-category-row small{color:#8a96a3;font-size:8px}.message-list{display:flex;flex-direction:column;gap:9px}.message-list>a{position:relative;display:grid;align-items:center;min-height:92px;padding:13px;grid-template-columns:42px minmax(0,1fr) 18px;gap:11px;border:1px solid #e7edf5;border-radius:8px;background:#fff;text-align:left}.message-list>a.is-unread{border-color:#cfe2ff;box-shadow:0 7px 20px #2166c514}.message-list__icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#edf4ff;color:var(--learner-blue)}.message-list__content{min-width:0}.message-list__content strong{font-size:14px}.message-list__content p{display:-webkit-box;margin-top:5px;overflow:hidden;color:#606e7e;font-size:11px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.message-list__content small{display:block;margin-top:5px;color:#9aa4ae;font-size:9px}.message-list>a>i{position:absolute;top:13px;right:13px;width:7px;height:7px;border-radius:50%;background:var(--learner-orange)}.learner-profile-page{padding:0 16px 34px}.profile-hero{margin:0 -16px;padding:calc(20px + env(safe-area-inset-top)) 20px 28px;background:linear-gradient(145deg,#2786ff,#0a5fea);color:#fff}.profile-hero__title{display:flex;align-items:center;justify-content:space-between}.profile-hero__title h1{font-size:24px}.profile-hero__title a{display:grid;place-items:center;width:42px;height:42px;color:#fff}.profile-identity{display:flex;align-items:center;gap:15px;margin-top:18px}.profile-identity img{width:78px;height:78px;border:4px solid white;border-radius:50%;object-fit:cover}.profile-identity>div{min-width:0}.profile-identity strong{font-size:22px}.profile-identity span{display:inline-block;margin-left:8px;padding:4px 10px;border-radius:99px;background:var(--learner-orange);font-size:11px;font-weight:800}.profile-identity p{margin-top:7px;font-size:13px;opacity:.85}.profile-stats{display:grid;gap:8px;margin-top:22px;grid-template-columns:repeat(3,1fr)}.profile-stats a{display:flex;align-items:center;flex-direction:column;gap:7px;padding:14px 4px;border-radius:8px;background:#fff;color:#172030}.profile-stats span{font-size:10px}.profile-stats strong{color:var(--learner-orange);font-size:22px}.profile-stats small{font-size:10px}.profile-shortcuts{display:grid;margin:16px 0;padding:17px 6px;grid-template-columns:repeat(4,1fr);border-radius:8px;background:#fff}.profile-shortcuts a{display:flex;align-items:center;flex-direction:column;gap:8px;color:var(--learner-blue);text-align:center}.profile-shortcuts span{color:#263240;font-size:10px}.profile-current-course{margin:24px 0 14px}.profile-current-course .learner-section-title h2{font-size:20px}.profile-current-course article{display:grid;align-items:center;padding:12px;grid-template-columns:90px minmax(0,1fr);gap:13px;border-radius:8px;background:#fff}.profile-current-course article>img{width:90px;height:82px;border-radius:7px;object-fit:cover}.profile-current-course h3{font-size:15px}.profile-current-course p{margin-top:5px;color:#657384;font-size:10px}.profile-current-course article>a{grid-column:2;justify-self:end;min-height:34px;margin-top:-38px;padding:0 12px;border-radius:99px;background:var(--learner-blue);color:#fff;font-size:10px;font-weight:800;line-height:34px}.profile-menu{overflow:hidden;border-radius:8px;background:#fff}.profile-menu a{display:grid;align-items:center;min-height:58px;margin:0 14px;grid-template-columns:36px minmax(0,1fr) 22px;gap:6px;border-bottom:1px solid #e9edf2}.profile-menu a:last-child{border:0}.profile-menu a>span{color:#65778a}.profile-menu a strong{font-size:14px}.profile-menu a>svg{color:#9da7b2}.growth-points-hero{position:relative;min-height:154px;overflow:hidden;padding:24px;border-radius:8px;background:linear-gradient(135deg,#2084ff,#0962ed);color:#fff;box-shadow:0 12px 26px #1365e433}.growth-points-hero>span{display:block;font-size:12px;opacity:.86}.growth-points-hero>strong{display:block;margin-top:8px;font-size:42px;line-height:1}.growth-points-hero>p{display:inline-flex;min-height:26px;margin-top:12px;padding:0 10px;align-items:center;border-radius:99px;background:var(--learner-orange);font-size:11px;font-weight:800}.growth-points-hero>svg{position:absolute;right:25px;bottom:30px;color:#ffffffbd}.growth-level-card{margin-top:14px;padding:17px;border-radius:8px;background:#fff;box-shadow:0 8px 22px #244d7b12}.growth-level-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:14px}.growth-level-card h2{font-size:16px}.growth-level-card strong{color:var(--learner-orange);font-size:13px}.growth-level-progress{height:8px;margin-top:17px;overflow:hidden;border-radius:8px;background:#e8eff7}.growth-level-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--learner-orange),#ffae25)}.growth-level-card p{margin-top:9px;color:#738191;font-size:10px}.growth-footprint-section{margin-top:24px}.growth-footprint-section .learner-section-title h2{font-size:20px}.growth-footprint-list{overflow:hidden;border-radius:8px;background:#fff}.growth-footprint-list a{display:grid;align-items:center;min-height:69px;margin:0 14px;grid-template-columns:42px minmax(0,1fr) auto 18px;gap:10px;border-bottom:1px solid #e9edf2}.growth-footprint-list a:last-child{border:0}.growth-footprint-list a>span{display:grid;place-items:center;width:42px;height:42px;border-radius:8px;background:#eaf3ff;color:var(--learner-blue)}.growth-footprint-list a:nth-child(2n)>span{background:#fff1df;color:var(--learner-orange)}.growth-footprint-list a>div{display:flex;min-width:0;flex-direction:column;gap:4px}.growth-footprint-list strong{font-size:13px}.growth-footprint-list small{color:#7f8c99;font-size:9px}.growth-footprint-list b{color:var(--learner-orange);font-size:12px;white-space:nowrap}.growth-footprint-list a>svg{color:#a0aab5}.badge-summary-card{display:flex;align-items:center;min-height:118px;gap:17px;padding:20px;border-radius:8px;background:linear-gradient(135deg,#2184ff,#0964f4);color:#fff;box-shadow:0 12px 26px #1365e433}.badge-summary-card>span{display:grid;flex:0 0 auto;place-items:center;width:68px;height:68px;border-radius:50%;background:var(--learner-orange)}.badge-summary-card>div{min-width:0}.badge-summary-card small{display:block;font-size:11px;opacity:.82}.badge-summary-card strong{display:block;margin-top:3px;font-size:32px}.badge-summary-card strong i{font-size:13px;font-style:normal}.badge-summary-card p{margin-top:4px;font-size:10px;opacity:.82}.badge-collection-section{margin-top:24px}.badge-collection-section .learner-section-title{align-items:center}.badge-collection-section .learner-section-title h2{font-size:20px}.badge-collection-section .learner-section-title>span{color:var(--learner-blue);font-size:11px;font-weight:800}.badge-collection-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.badge-collection-grid article{display:flex;align-items:center;min-height:178px;padding:17px 12px;flex-direction:column;border:1px solid #e5edf7;border-radius:8px;background:#fff;text-align:center;box-shadow:0 8px 20px #244d7b0f}.badge-collection-grid article>span{display:grid;place-items:center;width:60px;height:60px;border-radius:50%}.badge-collection-grid .badge-tone--blue>span{background:#eaf3ff;color:var(--learner-blue)}.badge-collection-grid .badge-tone--orange>span{background:#fff1df;color:var(--learner-orange)}.badge-collection-grid h2{margin-top:10px;font-size:14px}.badge-collection-grid p{margin-top:5px;color:#738191;font-size:9px;line-height:1.45}.badge-collection-grid small{margin-top:auto;padding-top:8px;color:var(--learner-orange);font-size:9px;font-weight:800}.badge-collection-grid article.is-locked{border-style:dashed;box-shadow:none;opacity:.58}.badge-collection-grid article.is-locked>span{background:#eef1f5;color:#788592}.badge-collection-grid article.is-locked small{color:#707d89}.badge-growth-link{margin-top:16px}.my-courses-summary{display:grid;min-height:104px;padding:20px 8px;grid-template-columns:repeat(3,minmax(0,1fr));border-radius:8px;background:linear-gradient(135deg,#2184ff,#0964f4);color:#fff;box-shadow:0 12px 24px #1365e433}.my-courses-summary>div{display:flex;align-items:center;min-width:0;flex-direction:column;gap:7px;border-right:1px solid rgba(255,255,255,.2)}.my-courses-summary>div:last-child{border:0}.my-courses-summary span{font-size:10px;opacity:.86}.my-courses-summary strong{font-size:23px}.my-courses-summary small{font-size:10px}.my-courses-heading{align-items:center;margin-top:24px}.my-courses-heading h2{font-size:20px}.my-courses-heading>span{color:var(--learner-blue);font-size:11px;font-weight:800}.my-courses-list{display:flex;flex-direction:column;gap:12px}.my-courses-list article{display:grid;align-items:center;min-width:0;padding:13px;grid-template-columns:88px minmax(0,1fr);gap:12px;border-radius:8px;background:#fff;box-shadow:0 9px 25px #244d7b14}.my-courses-list article>img{width:88px;height:108px;border-radius:7px;object-fit:cover}.my-courses-list article>div{min-width:0}.my-courses-list article>div>span{color:var(--learner-orange);font-size:10px;font-weight:800}.my-courses-list h2{margin-top:3px;font-size:17px}.my-courses-list p{margin-top:5px;color:#68788b;font-size:11px}.my-courses-list small{display:block;margin-top:5px;color:#6c7c8d;font-size:10px}.my-courses-list article>a{grid-column:2;justify-self:end;min-height:34px;margin-top:-39px;padding:0 12px;border-radius:99px;background:var(--learner-blue);color:#fff;font-size:11px;font-weight:800;line-height:34px}.my-courses-book-link{margin-top:16px}.portal-record-list{display:flex;flex-direction:column;gap:10px}.portal-record-list article{display:grid;align-items:center;padding:14px;grid-template-columns:44px minmax(0,1fr) auto;gap:11px;border-radius:8px;background:#fff;box-shadow:0 7px 20px #234c790f}.record-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:8px;background:#eaf3ff;color:var(--learner-blue)}.record-icon--orange{background:#fff1df;color:var(--learner-orange)}.portal-record-list h2{font-size:14px}.portal-record-list p{margin-top:4px;color:#607082;font-size:11px;line-height:1.45}.portal-record-list small{display:block;margin-top:5px;color:#929da8;font-size:9px}.portal-record-list article>b{align-self:start;color:var(--learner-blue);font-size:10px}.portal-record-list article>strong{color:var(--learner-orange);font-size:13px}.portal-list-page>.button{margin-top:16px}.settings-group{margin-bottom:14px;padding:17px;border-radius:8px;background:#fff}.settings-group h2{margin-bottom:8px;font-size:16px}.settings-group label,.settings-group>div{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:62px;border-bottom:1px solid #edf1f5}.settings-group label:last-child,.settings-group>div:last-child{border:0}.settings-group label>span{display:flex;flex-direction:column;gap:5px}.settings-group strong{font-size:13px}.settings-group small{color:#7f8c99;font-size:10px}.settings-group input[type=checkbox]{width:42px;height:23px;accent-color:var(--learner-blue)}.settings-account-action{display:flex;align-items:center;justify-content:space-between;min-height:62px;gap:12px;color:#24364a}.settings-account-action>span{display:flex;align-items:center;gap:10px}.settings-account-action>span>svg{color:var(--learner-blue)}.settings-account-action>span>span{display:flex;flex-direction:column;gap:5px}.settings-account-action>svg{color:#8a98a8}.settings-switch-role{margin-top:20px}.settings-logout{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:48px;margin-top:10px;border:0;background:transparent;color:#d34a41;font-weight:800;cursor:pointer}.message-detail-page article{padding:20px;border-radius:8px;background:#fff}.message-detail-page article>span{color:var(--learner-blue);font-size:11px;font-weight:800}.message-detail-page article h1{margin-top:8px;font-size:21px}.message-detail-page article small{display:block;margin-top:8px;color:#909ba7;font-size:10px}.message-detail-page article p{margin-top:22px;color:#455464;font-size:14px;line-height:1.75;white-space:pre-line}.message-detail-page article a{display:inline-flex;align-items:center;gap:4px;min-height:38px;margin-top:20px;padding:0 13px;border-radius:99px;background:var(--learner-blue);color:#fff;font-size:12px;font-weight:800}.login-page--blue{--learner-blue: #146ff8;background:#f6f9fe}.login-brand-panel{position:relative;min-height:330px;overflow:hidden;padding:calc(25px + env(safe-area-inset-top)) 24px 26px;background:linear-gradient(145deg,#2787ff,#0b60eb);color:#fff}.login-brand-panel:after{content:"";position:absolute;right:-55px;bottom:-85px;width:260px;height:260px;border-radius:50%;background:#ffffff14}.login-brand-row{position:relative;z-index:2}.login-brand-copy{position:relative;z-index:2;margin-top:56px}.login-brand-copy>span{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700}.login-brand-copy h1{margin-top:12px;font-size:28px;line-height:1.3}.login-brand-copy p{margin-top:10px;color:#fffc;font-size:12px}.login-brand-robot{position:absolute;z-index:1;right:12px;bottom:-9px;width:min(39%,152px);height:210px;object-fit:contain;object-position:bottom center}.success-banner--with-action{display:grid;align-items:center;grid-template-columns:auto minmax(0,1fr) auto}.success-banner--with-action a{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 10px;border-radius:999px;background:var(--primary);color:#fff;font-size:11px;font-weight:800;white-space:nowrap}.role-selector{display:grid;gap:6px;margin-bottom:18px;padding:5px;grid-template-columns:repeat(3,1fr);border-radius:8px;background:#eaf1fb}.role-selector button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:42px;padding:0 4px;border:0;border-radius:6px;background:transparent;color:#657487;font-size:12px;font-weight:800;cursor:pointer}.role-selector button.is-active{background:#fff;color:var(--learner-blue);box-shadow:0 3px 10px #20487a17}.login-page--blue .input-shell{border-color:#dce7f4;background:#fff}.login-page--blue .button--primary{background:var(--learner-blue, #146ff8);color:#fff;box-shadow:0 8px 18px #146ff838}.login-page--blue .eyebrow{color:var(--learner-blue)}@media(max-width:359px){.learner-category-grid{gap:5px}.learner-category-grid a{padding-right:2px;padding-left:2px}.learner-category-grid strong{font-size:10px}.learner-hero{min-height:192px;padding-left:16px}.learner-hero__copy p{font-size:19px}.learner-catalog-page .session-card{grid-template-columns:88px minmax(0,1fr)}.learner-catalog-page .session-artwork{width:88px}.message-category-row{gap:4px}}@media(max-width:380px){.login-brand-robot{right:8px;width:min(38%,138px);height:188px}}
