:root{--blue:#06398e;--green:#078c3e;--yellow:#ffd21f;--ink:#111827;--muted:#5f6b7a;--line:#c8d6ea;--soft:#f7fafc}body{min-height:100vh;color:var(--ink);background:#e8eef5;margin:0;font-family:Arial,Helvetica,sans-serif}.shell{width:min(1120px,100% - 32px);margin:0 auto;padding:32px 0 56px}header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;display:flex}.logo{width:220px;max-width:52vw}.brand-logo{align-items:center;gap:2px;width:max-content;max-width:100%;line-height:0;display:inline-flex}.brand-logo img{object-fit:cover;object-position:center center;max-width:none;display:block}.brand-logo .brand-mark{width:82px;height:82px;transform:translateY(-8px)}.brand-logo .brand-text{width:252px;height:94px;transform:translateY(2px)}.brand-logo.logo{width:auto;max-width:52vw}.brand-logo.cover-logo{width:auto}.brand-logo.cover-logo .brand-mark{width:104px;height:104px}.brand-logo.cover-logo .brand-text{width:320px;height:118px}.brand-logo.auth-logo{width:auto}.brand-logo.auth-logo .brand-mark{width:82px;height:82px}.brand-logo.auth-logo .brand-text{width:252px;height:94px}.badge{background:var(--blue);color:#fff;border-radius:999px;padding:10px 18px;font-weight:900}h1{color:var(--blue);margin:18px 0 8px;font-size:42px;line-height:1.05}.intro{max-width:760px;margin:0 0 28px;font-size:18px;line-height:1.45}.course-hero{text-align:center;background:linear-gradient(160deg,#fff 0%,#f3f8ff 58%,#edf7f1 100%);border:1px solid #c9d7eb;border-radius:16px;max-width:920px;margin:0 auto 30px;padding:26px 30px 24px;box-shadow:0 16px 34px #06398e1a}.course-hero h1{letter-spacing:-.6px;color:var(--blue);margin:0 0 10px;font-size:54px;line-height:1.04}.course-hero .intro{color:#1f4481;text-wrap:balance;max-width:780px;margin:0 auto;font-size:20px;font-weight:800;line-height:1.4}.modules{gap:22px;display:grid}.module{border:1px solid var(--line);background:#fff;border-radius:8px;padding:20px;box-shadow:0 12px 26px #06398e14}.module-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;display:flex}.module h2{color:var(--blue);margin:0;font-size:24px;line-height:1.1}.module p{color:var(--muted);margin:6px 0 0;font-size:15px;line-height:1.35}.count{color:var(--blue);background:#f0f6ff;border-radius:999px;flex:none;padding:8px 12px;font-size:13px;font-weight:900}.lesson-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;display:grid}.lesson{background:var(--soft);min-height:86px;color:inherit;border:1px solid #d7e2f0;border-radius:8px;align-items:flex-start;gap:12px;padding:14px;text-decoration:none;display:flex}.lesson:hover{border-color:var(--blue)}.lesson.ready{background:#fff;border-color:#9ec4f3}.lesson.ready:hover{transform:translateY(-1px);box-shadow:0 8px 20px #06398e1f}.num{background:var(--blue);color:#fff;border-radius:50%;flex:0 0 40px;place-items:center;width:40px;height:40px;font-size:13px;font-weight:900;display:grid}.lesson:not(.ready) .num{color:#4d5b6d;background:#d8e2ef}.text{min-width:0}.text strong{color:var(--blue);font-size:15px;line-height:1.22;display:block}.text span{color:var(--green);text-transform:uppercase;margin-top:7px;font-size:12px;font-weight:900;display:block}.lesson:not(.ready) .text span{color:var(--muted)}@media (max-width:620px){.shell{width:min(100% - 20px,1120px);padding-top:22px}header,.module-head{flex-direction:column;align-items:flex-start}h1{font-size:34px}.course-hero{border-radius:12px;margin-bottom:22px;padding:20px 16px}.course-hero h1{font-size:40px}.course-hero .intro{font-size:16px}.badge{font-size:14px}.module{padding:16px}.lesson-grid{grid-template-columns:1fr}}.course-nav{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#e8eef5cc;flex-wrap:wrap;justify-content:center;gap:8px;padding:12px;display:flex;position:sticky;top:0;box-shadow:0 2px 14px #06398e1a}.course-nav a:hover,.course-nav a.active,.course-nav button:hover:not(:disabled),.course-nav span.active{background:var(--blue);border-color:var(--blue);color:#fff}.card,.practice{z-index:3;background:#fbfffb;border:1.5px solid #81c69d;border-radius:18px;margin:16px 0;padding:18px 22px;position:relative}.mascot-mini{width:190px;margin-left:auto;display:block}.media-note{z-index:3;grid-template-columns:1fr 210px;align-items:center;gap:20px;display:grid;position:relative}.triple td:nth-child(3){color:var(--ink);font-weight:500}.listening td{font-size:14px}.dialogue{border:2px solid var(--blue);z-index:3;background:#fff;border-radius:18px;margin:16px 0;padding:16px 22px;position:relative}.dialogue p{margin:8px 0;font-size:17px}.dialogue b{color:var(--blue)}.dialogue mark{color:var(--green);background:0 0;font-weight:900}.final .banner{margin-top:30px}@page{size:A4;margin:0}@media print{body{background:#fff}.course-nav{display:none}.book{padding:0}.page{width:210mm;height:auto;min-height:297mm;box-shadow:none;page-break-after:always;break-after:page;-webkit-print-color-adjust:exact;print-color-adjust:exact;border-radius:0;margin:0;overflow:visible}.pdf-viewer-shell>header,.pdf-viewer-actions,.lesson-pdf-download-button,.pdf-supplements-panel,.pdf-render-loading-overlay,.pdf-render-status,.pdf-render-error{display:none!important}.pdf-viewer-shell{width:100%!important;margin:0!important;padding:0!important}.pdf-renderer{min-height:0!important;box-shadow:none!important;background:#fff!important;border:0!important;border-radius:0!important;padding:0!important;overflow:visible!important}.pdf-render-pages{gap:0!important}.pdf-lesson-page-card{page-break-after:always;break-after:page;overflow:visible!important}.pdf-lesson-page-card:last-child{page-break-after:auto;break-after:auto}}.landing-page{color:#0e1b2d;background:#f4f8fc;min-height:100vh}.landing-whatsapp-float{z-index:90;color:#fff;background:#078c3e;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;text-decoration:none;display:inline-flex;position:fixed;bottom:18px;right:18px;box-shadow:0 16px 34px #078c3e52}.landing-whatsapp-float:hover{background:#0a7b39}.landing-whatsapp-float svg{fill:currentColor;width:30px;height:30px;display:block}.landing-header{z-index:80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #d8e6f5;justify-content:space-between;align-items:center;gap:18px;min-height:74px;padding:10px clamp(18px,4vw,54px);display:flex;position:fixed;top:0;left:0;right:0}.landing-logo{align-items:center;line-height:0;text-decoration:none;display:inline-flex}.landing-logo img{object-fit:contain;width:210px;height:auto;display:block}.landing-menu-toggle{display:none}.landing-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.landing-nav a{color:#06398e;border-radius:999px;justify-content:center;align-items:center;min-height:38px;padding:0 14px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.landing-nav a:hover{background:#eef5ff}.landing-hero{color:#fff;background:#081321;align-items:center;min-height:82vh;padding:118px clamp(18px,6vw,86px) 70px;display:flex;position:relative;overflow:hidden}.landing-hero-media{object-fit:cover;object-position:center right;opacity:.5;filter:saturate(1.08);width:100%;height:100%;position:absolute;inset:0}.landing-hero-overlay{background:linear-gradient(90deg,#071321 0%,#071321f2 43%,#071321c9 72%,#07132199 100%);position:absolute;inset:0}.landing-hero-macaw{z-index:1;object-fit:contain;object-position:center center;filter:drop-shadow(0 30px 38px #0009);width:min(54vw,760px);max-height:96%;position:absolute;top:52%;right:clamp(-120px,-4vw,-44px);transform:translateY(-50%)}.landing-hero-content{z-index:2;width:min(760px,100%);position:relative}.landing-hero-logo{width:min(300px,82vw);height:auto;margin:0 0 24px;display:block}.landing-language-picker{color:#e8f2ff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff12;border:1px solid #ffffff26;border-radius:999px;flex-wrap:wrap;align-items:center;gap:10px;width:max-content;max-width:100%;margin:0 0 22px;padding:6px;display:flex}.landing-language-picker>span{color:#b8c9dd;text-transform:uppercase;padding:0 8px;font-size:12px;font-weight:900}.landing-language-picker div{flex-wrap:wrap;gap:4px;display:flex}.landing-language-picker button{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:999px;min-height:34px;padding:0 12px;font-size:12px;font-weight:900}.landing-language-picker button.active{color:#fff;background:#078c3e}.landing-language-picker button:not(.active):hover{background:#ffffff1f}.landing-kicker,.landing-section-label{color:#18b85b;letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:900}.landing-hero h1{color:#fff;text-wrap:balance;max-width:760px;margin:0 0 18px;font-size:clamp(34px,5.6vw,64px);line-height:1.03}.landing-hero p:not(.landing-kicker){color:#e8f2ff;max-width:650px;margin:0 0 26px;font-size:clamp(17px,2vw,22px);font-weight:800;line-height:1.5}.landing-hero-points{flex-wrap:wrap;align-items:center;gap:8px;margin:-8px 0 24px;display:flex}.landing-hero-points span{color:#eaf5ff;background:#ffffff12;border:1px solid #ffffff28;border-radius:999px;align-items:center;min-height:34px;padding:0 12px;font-size:13px;font-weight:900;display:inline-flex}.landing-hero-points span:before{content:"";background:#18b85b;border-radius:50%;width:7px;height:7px;margin-right:8px}.landing-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.landing-primary,.landing-secondary{border-radius:999px;justify-content:center;align-items:center;min-height:50px;padding:0 22px;font-size:15px;font-weight:900;text-decoration:none;display:inline-flex}.landing-primary{color:#fff;background:#078c3e;box-shadow:0 14px 34px #078c3e40}.landing-secondary{color:#fff;background:#ffffff12;border:1px solid #ffffff80}.landing-strip{flex-wrap:wrap;align-items:center;gap:12px;width:min(1120px,100% - 36px);margin:0 auto;padding:0 0 26px;display:flex}.landing-strip span{color:#06398e;text-align:center;background:#fff;border:1px solid #d8e6f5;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:10px 16px;font-size:14px;font-weight:900;display:inline-flex;box-shadow:0 8px 22px #06398e12}.landing-video-section{grid-template-columns:minmax(280px,.78fr) minmax(360px,1.22fr);align-items:center;gap:34px;width:min(1120px,100% - 36px);margin:-26px auto 0;padding:46px 0 58px;display:grid}.landing-video-copy h2{color:#06398e;text-wrap:balance;max-width:520px;margin:0 0 14px;font-size:clamp(28px,3.8vw,44px);line-height:1.08}.landing-video-copy p:not(.landing-section-label){color:#40536a;font-size:18px;line-height:1.55}.landing-text-link{color:#06398e;background:#fff;border:1px solid #c8d6ea;border-radius:999px;justify-content:center;align-items:center;min-height:42px;margin-top:8px;padding:0 16px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex}.landing-video-frame{aspect-ratio:16/9;background:#081321;border:1px solid #c8d6ea;border-radius:14px;position:relative;overflow:hidden;box-shadow:0 24px 54px #06398e2b}.landing-video-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.landing-video-placeholder{text-align:center;color:#fff;background:linear-gradient(160deg,#071321 0%,#0d2544 56%,#06398e 100%);align-content:center;place-items:center;gap:12px;padding:28px;display:grid;position:absolute;inset:0}.landing-video-placeholder span{color:#fff;text-align:center;text-transform:uppercase;white-space:normal;word-break:normal;overflow-wrap:anywhere;background:#ffffff18;border:2px solid #ffffffb0;border-radius:50%;justify-content:center;align-items:center;width:92px;height:92px;padding:10px;font-size:11px;font-weight:900;line-height:1.05;display:flex}.landing-video-placeholder strong{font-size:28px;line-height:1.1}.landing-video-placeholder p{color:#dcecff;max-width:420px;margin:0;font-size:15px;font-weight:800;line-height:1.4}.landing-section{width:min(1120px,100% - 36px);margin:0 auto;padding:66px 0}.landing-section h2,.landing-cta h2{color:#06398e;text-wrap:balance;max-width:620px;margin:0 0 14px;font-size:clamp(28px,3.8vw,44px);line-height:1.08}.landing-section p,.landing-cta p{color:#40536a;font-size:18px;line-height:1.55}.landing-method{grid-template-columns:minmax(0,1fr) minmax(360px,560px);align-items:center;gap:42px;display:grid}.landing-method-preview{background:0 0;border:0;border-radius:18px;overflow:visible;box-shadow:0 24px 50px #06398e24}.landing-browser-bar{background:#121c2e;border-bottom:1px solid #203049;gap:7px;padding:12px 14px;display:flex}.landing-browser-bar span{background:#d7e2f0;border-radius:50%;width:10px;height:10px}.landing-method-image{object-fit:contain;filter:drop-shadow(0 22px 38px #06398e2b);width:100%;height:auto;display:block}.landing-classroom-mock{grid-template-columns:1fr 1fr;gap:10px;padding:14px;display:grid}.landing-video-tile{color:#15243a;background:linear-gradient(160deg,#eaf5ff,#b6cef0);border-radius:8px;place-items:end start;min-height:180px;padding:12px;font-weight:900;display:grid}.landing-tool-row{grid-column:1/-1;justify-content:center;gap:8px;padding-top:4px;display:flex}.landing-tool-row span{color:#fff;background:#1f2c40;border-radius:999px;justify-content:center;align-items:center;min-height:34px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.landing-forwho{text-align:center}.landing-forwho>p,.landing-forwho>h2{margin-left:auto;margin-right:auto}.landing-forwho>h2{max-width:720px}.landing-card-grid{text-align:left;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px;display:grid}.landing-card-grid article{background:#fff;border:1px solid #d8e6f5;border-radius:8px;padding:22px;box-shadow:0 14px 34px #06398e12}.landing-card-grid strong{color:#06398e;font-size:19px;line-height:1.2;display:block}.landing-card-grid p{margin:10px 0 0;font-size:15px}.landing-tech{grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);align-items:center;gap:28px;display:grid}.landing-tech-copy{background:#fff;border:1px solid #d8e6f5;border-radius:10px;padding:28px;box-shadow:0 18px 40px #06398e14}.landing-tech-copy h2{max-width:620px}.landing-tech-copy .landing-primary{width:max-content;margin-top:8px}.landing-tech-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.landing-tech-grid article{color:#fff;background:#0b172a;border:1px solid #234466;border-radius:10px;min-height:230px;padding:22px;position:relative;overflow:hidden;box-shadow:0 18px 40px #06398e24}.landing-tech-grid article:after{content:"";background:#078c3e33;border-radius:50%;width:130px;height:130px;position:absolute;bottom:-42px;right:-42px}.landing-tech-grid span{color:#fff;text-transform:uppercase;background:#078c3e;border-radius:8px;place-items:center;width:48px;height:48px;margin-bottom:22px;font-size:14px;font-weight:900;display:grid}.landing-tech-grid strong{font-size:24px;line-height:1.1;display:block}.landing-tech-grid p{z-index:1;color:#dcecff;margin:12px 0 0;font-size:15px;line-height:1.45;position:relative}.landing-benefits{grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr);gap:32px;display:grid}.landing-benefit-list{gap:10px;display:grid}.landing-benefit-list div{background:#fff;border:1px solid #d8e6f5;border-radius:8px;grid-template-columns:54px 1fr;align-items:center;gap:14px;padding:16px;display:grid}.landing-benefit-list b{color:#fff;background:#078c3e;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.landing-benefit-list span{color:#24415f;font-size:16px;font-weight:800;line-height:1.35}.landing-cta{color:#fff;background:#06398e;grid-template-columns:minmax(0,560px) 260px;justify-content:center;align-items:center;gap:44px;padding:56px 24px;display:grid;overflow:hidden}.landing-cta img{object-fit:contain;place-self:end start;width:260px;max-width:100%}.landing-cta h2{color:#fff}.landing-cta p{color:#eaf5ff}.landing-cta .landing-primary{width:max-content}.landing-faq{max-width:920px}.landing-faq details{border-bottom:1px solid #c8d6ea;padding:18px 0}.landing-faq summary{color:#06398e;cursor:pointer;font-size:19px;font-weight:900}.landing-faq p{margin:10px 0 0}.landing-footer{z-index:auto;color:#40536a;background:#fff;border-top:1px solid #d8e6f5;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;padding:26px 18px;font-size:14px;font-weight:900;display:flex;position:static;inset:auto}.landing-footer span{color:#06398e;font-weight:900}.landing-footer a{color:#40536a;font-size:14px;font-weight:900;text-decoration:none}.landing-programming-link{text-align:left;background:linear-gradient(135deg,#fff 0%,#f4f9ff 62%,#eef8f2 100%);border:1px solid #c8d6ea;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;max-width:1120px;padding:30px;display:grid;box-shadow:0 18px 40px #06398e12}.landing-programming-link h2{max-width:720px;margin-bottom:10px}.landing-programming-link p{color:#40536a;max-width:720px;margin:0}.landing-programming-link .landing-text-link{white-space:nowrap;margin:0}.programming-landing{background:#f4f8fc}.programming-hero{color:#fff;background:#071321;grid-template-columns:minmax(0,680px) minmax(320px,520px);align-items:center;gap:42px;min-height:82vh;padding:118px clamp(18px,6vw,86px) 72px;display:grid;position:relative;overflow:hidden}.programming-hero-bg{background:radial-gradient(circle at 78% 28%,#078c3e66 0%,#0000 28%),linear-gradient(120deg,#071321 0%,#0b1d35 55%,#06398e 100%);position:absolute;inset:0}.programming-hero-content{z-index:2;position:relative}.programming-hero h1{color:#fff;text-wrap:balance;max-width:760px;margin:0 0 18px;font-size:clamp(36px,5.4vw,66px);line-height:1.02}.programming-hero p:not(.landing-kicker){color:#e8f2ff;max-width:650px;margin:0 0 26px;font-size:clamp(17px,2vw,22px);font-weight:800;line-height:1.5}.programming-console{z-index:2;background:#08111f;border:1px solid #ffffff26;border-radius:14px;position:relative;overflow:hidden;box-shadow:0 28px 70px #0006}.programming-console>div{background:#101b2d;border-bottom:1px solid #ffffff14;gap:8px;padding:14px 16px;display:flex}.programming-console span{background:#d8e6f5;border-radius:50%;width:11px;height:11px}.programming-console span:nth-child(2){background:#ffd21f}.programming-console span:nth-child(3){background:#078c3e}.programming-console code{color:#dcecff;min-height:260px;padding:26px;font-family:Courier New,monospace;font-size:18px;line-height:1.8;display:block}.programming-console b{color:#18b85b}.programming-track-grid{text-align:left;margin-top:28px}.programming-flow{gap:10px;display:grid}.programming-flow div{background:#fff;border:1px solid #d8e6f5;border-radius:8px;grid-template-columns:54px 1fr;align-items:center;gap:14px;padding:16px;display:grid}.programming-flow b{color:#fff;background:#078c3e;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.programming-flow span{color:#24415f;font-size:16px;font-weight:800;line-height:1.35}.programming-projects{grid-template-columns:minmax(0,1fr) minmax(300px,440px);align-items:start;gap:28px;display:grid}.programming-projects .landing-primary{width:max-content;margin-top:8px}.programming-project-card{color:#fff;background:#0b172a;border:1px solid #234466;border-radius:10px;padding:24px;box-shadow:0 18px 40px #06398e24}.programming-project-card strong{margin-bottom:14px;font-size:22px;line-height:1.15;display:block}.programming-project-card ul{gap:10px;margin:0;padding-left:20px;display:grid}.programming-project-card li{color:#dcecff;font-size:15px;line-height:1.35}@media (max-width:820px){.professor-landing-hero-home{min-height:auto;padding:56px 24px 44px}.professor-landing-hero-layout{text-align:center;grid-template-columns:1fr;gap:24px}.professor-landing-profile{order:0}.professor-landing-hero-copy{order:1}.professor-landing-hero-home .professor-landing-logo{width:min(280px,72vw);margin:0 auto 8px;display:block}.professor-landing-hero-home .professor-landing-avatar-fallback{width:min(220px,58vw);margin:0 auto 8px}.professor-landing-hero-copy .landing-hero-points,.professor-landing-hero-copy .landing-actions{justify-content:center}.landing-header{flex-direction:row;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:8px 14px}.landing-logo img{width:156px}.landing-menu-toggle{color:#06398e;cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:38px;min-width:38px;height:38px;padding:0;display:inline-flex}.landing-menu-toggle:hover,.landing-menu-toggle[aria-expanded=true]{background:#eef5ff}.landing-menu-toggle span,.landing-menu-toggle span:before,.landing-menu-toggle span:after{content:"";background:currentColor;border-radius:999px;width:18px;height:2px;display:block}.landing-menu-toggle span{position:relative}.landing-menu-toggle span:before,.landing-menu-toggle span:after{position:absolute;left:0}.landing-menu-toggle span:before{top:-5px}.landing-menu-toggle span:after{top:5px}.landing-nav{background:#fff;border:1px solid #d8e6f5;border-radius:8px;grid-template-columns:1fr;padding:8px;display:none;position:absolute;top:calc(100% + 8px);left:14px;right:14px;box-shadow:0 18px 40px #06398e24}.landing-nav.open{display:grid}.landing-nav a{border-radius:6px;justify-content:flex-start;min-width:0;min-height:42px;padding:0 12px}.landing-hero{min-height:auto;padding-top:96px;padding-bottom:44px}.landing-hero-macaw{opacity:.72;width:min(54vw,340px);max-height:66%;top:58%;right:-92px;transform:translateY(-50%)}.landing-hero-logo{display:none}.landing-video-section{margin:0 auto}.landing-strip,.landing-card-grid,.landing-benefits,.landing-method,.landing-cta,.landing-video-section,.landing-tech,.landing-tech-grid,.programming-hero,.programming-projects{grid-template-columns:1fr}.programming-hero{min-height:auto;padding-top:46px;padding-bottom:46px}.programming-console code{min-height:190px;font-size:15px}.landing-section,.landing-video-section{padding:50px 0}.landing-video-tile{min-height:128px}.landing-cta img{grid-row:1;justify-self:center;width:220px}}@media (max-width:520px){.landing-whatsapp-float{width:48px;height:48px;bottom:12px;right:12px}.landing-whatsapp-float svg{width:27px;height:27px}.landing-header{padding:7px 12px}.landing-logo img{width:142px}.landing-menu-toggle{width:36px;min-width:36px;height:36px}.landing-nav{top:calc(100% + 6px);left:12px;right:12px}.landing-nav a{min-height:40px;font-size:12px}.landing-hero{padding:88px 16px 38px}.landing-hero-macaw{display:none}.landing-language-picker{border-radius:14px;gap:6px;width:100%;margin-bottom:18px;padding:6px}.landing-language-picker>span{text-align:center;width:100%;padding:2px 8px 0}.landing-language-picker div{grid-template-columns:repeat(3,1fr);width:100%;display:grid}.landing-language-picker button{min-height:32px;padding:0 6px;font-size:11px}.landing-kicker{letter-spacing:.07em;font-size:10px;line-height:1.35}.landing-hero h1{font-size:34px;line-height:1.07}.landing-hero p:not(.landing-kicker){margin-bottom:20px;font-size:16px;line-height:1.48}.landing-hero-points{flex-direction:column;align-items:stretch;margin:0 0 20px}.landing-hero-points span{width:100%;min-height:32px;font-size:12px}.landing-section h2,.landing-video-copy h2,.landing-cta h2{font-size:30px;line-height:1.1}.landing-section p,.landing-cta p,.landing-video-copy p:not(.landing-section-label){font-size:16px}.landing-actions{flex-direction:column;align-items:stretch;gap:10px}.landing-primary,.landing-secondary{text-align:center;width:100%;min-height:46px;padding:0 14px}.landing-video-section,.landing-section{width:min(100% - 28px,1120px)}.landing-video-placeholder{gap:8px;padding:18px}.landing-video-placeholder span{width:74px;height:74px;padding:8px;font-size:10px}.landing-video-placeholder strong{font-size:21px}.landing-card-grid article,.landing-benefit-list div{padding:16px}.landing-benefit-list div,.programming-flow div{grid-template-columns:44px 1fr;gap:10px}.landing-benefit-list b,.programming-flow b{width:38px;height:38px;font-size:13px}.landing-benefit-list span,.programming-flow span{font-size:14px;line-height:1.35}.landing-cta{padding:38px 16px}.landing-classroom-mock{grid-template-columns:1fr}.landing-tool-row{flex-wrap:wrap;grid-column:auto}.landing-card-grid article{padding:18px}.landing-programming-link{text-align:left;grid-template-columns:1fr;padding:22px}.landing-programming-link .landing-text-link{width:100%}.landing-tech-copy{padding:22px}.landing-tech-copy .landing-primary{width:100%}.landing-tech-grid article{min-height:190px;padding:20px}.programming-hero{padding-left:16px;padding-right:16px}.programming-hero h1{font-size:34px;line-height:1.08}.programming-hero p:not(.landing-kicker){font-size:16px;line-height:1.48}.programming-projects .landing-primary{width:100%}.programming-flow div{grid-template-columns:42px 1fr;gap:10px;padding:14px}.programming-flow b{width:34px;height:34px;font-size:12px}.landing-benefit-list div{grid-template-columns:42px 1fr;gap:10px;padding:14px}.landing-benefit-list b{width:34px;height:34px;font-size:12px}.landing-cta{gap:20px;padding:44px 16px}.landing-cta img{width:180px}}*{box-sizing:border-box}:root{--blue:#06398e;--green:#078c3e;--green2:#12aa45;--yellow:#ffd21f;--cream:#fff7dc;--line:#cfe7d9;--ink:#111827}body{color:var(--ink);background:#e8eef5;margin:0;font-family:Arial,Helvetica,sans-serif}.course-nav{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#e8eef5cc;flex-wrap:wrap;justify-content:center;gap:8px;padding:12px;display:flex;position:sticky;top:0;box-shadow:0 2px 14px #06398e1a}.course-nav a,.course-nav button{min-width:92px;height:38px;color:var(--blue);background:#fff;border:1px solid #c8d6ea;border-radius:999px;justify-content:center;align-items:center;padding:0 16px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex}.course-nav button{cursor:pointer;font-family:inherit}.course-nav button:disabled{cursor:wait;opacity:.72}.course-nav span{min-width:92px;height:38px;color:var(--blue);background:#fff;border:1px solid #c8d6ea;border-radius:999px;justify-content:center;align-items:center;padding:0 16px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex}.course-nav a:hover,.course-nav a.active,.course-nav button:hover:not(:disabled),.course-nav span.active{background:var(--blue);border-color:var(--blue);color:#fff}.course-nav span.disabled{color:#7a8797;background:#edf2f7}.course-nav.compact{flex-wrap:wrap}.book{padding:22px 0}.page{background:#fff;border-radius:10px;width:794px;min-height:1123px;margin:0 auto 28px;padding:34px 42px 84px;position:relative;overflow:hidden;box-shadow:0 12px 30px #0002}.page:after{content:"";background:var(--blue);z-index:1;border-top-left-radius:70% 42px;border-top-right-radius:70% 42px;height:74px;position:absolute;bottom:0;left:-4px;right:-4px}.page:before{content:"";background:var(--blue);z-index:1;border-bottom-left-radius:86px;width:226px;height:112px;position:absolute;top:0;right:0}.page-header{z-index:3;justify-content:space-between;align-items:flex-start;height:78px;margin-bottom:16px;display:flex;position:relative}.page-header img{width:245px;height:auto}.page-header .brand-logo img{width:auto}.page-header .brand-logo .brand-mark{width:82px;height:82px}.page-header .brand-logo .brand-text{width:252px;height:94px}.page-header span{background:var(--blue);color:#fff;z-index:4;white-space:nowrap;border-bottom-left-radius:82px;justify-content:center;align-items:center;min-width:162px;height:68px;margin-top:-34px;margin-right:-42px;padding:28px 22px 8px 34px;font-size:28px;font-weight:900;line-height:1;display:flex;position:relative}.page-header .brand-logo{min-width:0;height:auto;color:inherit;box-shadow:none;background:0 0;border-radius:0;margin:0;padding:0;font-size:0;line-height:0}footer{z-index:3;color:#fff;justify-content:space-between;align-items:center;font-size:17px;font-weight:900;display:flex;position:absolute;bottom:18px;left:42px;right:42px}footer b{color:var(--blue);background:#fff;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;line-height:1;display:grid}.banner{background:linear-gradient(105deg,var(--green),var(--green2));color:#fff;text-align:center;width:min(620px,100%);box-shadow:9px 9px 0 var(--blue);z-index:3;border-radius:15px;margin:8px auto 26px;padding:18px 24px;font-size:36px;font-weight:900;line-height:1.1;position:relative}.banner.small{text-align:left;max-width:560px;margin-left:0;padding-left:34px;font-size:33px}.banner em,.banner span{color:var(--yellow);font-style:normal}h2{color:var(--blue);margin:0 0 14px;font-size:25px}h3{margin:0 0 8px}p{margin:10px 0;font-size:18px;line-height:1.42}.intro{text-align:center;color:var(--blue);font-size:22px;font-weight:800}.two-col{z-index:3;grid-template-columns:1fr 1fr;align-items:start;gap:24px;display:grid;position:relative}.card,.practice,.story{z-index:3;background:#fbfffb;border:1.5px solid #81c69d;border-radius:18px;margin:16px 0;padding:18px 22px;position:relative}.card.blue{background:var(--blue);border-color:var(--blue);color:#fff}.objective{background:linear-gradient(90deg,#fbfffb,#fff)}.checks{margin:8px 0;padding-left:0;list-style:none}.checks li{break-inside:avoid;margin:9px 0;font-size:18px}.checks li:before{content:"✓";background:var(--green);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;margin-right:9px;font-weight:900;display:inline-grid}.columns{columns:2;column-gap:32px}.callout{z-index:3;text-align:center;border-radius:18px;margin:18px 0;padding:18px 22px;font-size:22px;font-weight:900;position:relative}.callout.yellow{background:var(--cream);color:var(--blue);border:1.5px solid #f4c84a}.callout.green{color:var(--green);background:#f4fff6;border:1.5px solid #83c99d}.callout.big{font-family:Georgia,serif;font-size:32px;font-style:italic;line-height:1.2}.alert{background:var(--cream);color:var(--blue);text-align:center;border:1.5px solid #f4c84a;border-radius:16px;padding:16px 18px;font-size:23px;font-weight:900}.mascot{width:250px;margin:0 auto 12px;display:block}.table{border-collapse:separate;border-spacing:0;z-index:3;background:#fff;border:1.5px solid #a8d8bc;border-radius:16px;width:100%;margin:20px 0;position:relative;overflow:hidden}.table th{background:var(--blue);color:#fff;text-transform:uppercase;padding:14px 16px;font-size:17px}.table td{vertical-align:middle;border-bottom:1px solid #dcece4;padding:14px 16px;font-size:18px}.table tr:last-child td{border-bottom:0}.compare th:nth-child(2),.transform th:nth-child(3){background:var(--green)}.compare td:nth-child(2),.transform td:nth-child(3){color:var(--green);font-weight:900}.transform td:nth-child(2){text-align:center;color:var(--green);font-size:24px;font-weight:900}.transform td:nth-child(4){color:var(--green);font-size:15px}.phrases td{font-size:16px}.phrases td:first-child{color:var(--blue);font-size:20px}.icon-row{background:var(--cream);text-align:center;z-index:3;border:1.5px solid #f4c84a;border-radius:17px;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0;padding:16px;display:grid;position:relative}.icon-row div{font-size:16px}.icon-row.compact{background:#fff;grid-template-columns:repeat(2,1fr);margin-top:12px}.practice{background:#fffaf0;border-color:#f4c84a}.practice h2{font-size:23px}.practice ol{margin:8px 0;padding-left:24px}.practice li{margin:10px 0;font-size:17px}.practice span{float:right;border-bottom:2px dotted #8fbfa2;width:330px;height:18px}.story{border-color:var(--blue);background:#fff;padding:24px 30px}.story p{margin:14px 0;font-size:21px}.story b{color:var(--green)}.steps{grid-template-columns:1fr 1fr;gap:16px;margin:22px 0;display:grid}.steps div{z-index:3;background:#fbfffb;border:1.5px solid #81c69d;border-radius:18px;padding:18px;position:relative}.steps b{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:42px;height:42px;font-size:22px;display:grid}.certificate{text-align:center;z-index:3;background:#fffaf0;border:2px dashed #f4c84a;border-radius:18px;margin:20px 0;padding:24px;position:relative}.certificate h2{color:var(--green);margin:4px 0;font-size:38px}.certificate h3{color:var(--green);margin:4px 0 12px;font-size:24px}.certificate img{width:210px}.certificate .brand-logo img{width:auto}.certificate .brand-logo .brand-mark{width:68px;height:68px}.certificate .brand-logo .brand-text{width:210px;height:78px}.cover-page{color:#fff;background:#087331;padding:0}.cover-page:before{width:260px;height:170px}.cover-page:after{height:86px}.cover-hero:after{content:"";background:var(--blue);border-top-left-radius:80% 45px;border-top-right-radius:80% 45px;height:85px;position:absolute;bottom:-1px;left:0;right:0}.cover-logo{z-index:3;width:310px;margin-left:70px;position:relative}.aula-num{z-index:3;text-align:center;font-size:30px;font-weight:900;position:absolute;top:36px;right:56px}.aula-num strong{font-size:84px}.cover-icon{text-align:center;z-index:3;margin-top:70px;font-size:48px;position:relative}.cover-page h1{z-index:3;text-align:center;text-shadow:0 5px 10px #0006;margin:20px 0;font-size:56px;line-height:1.08;position:relative}.cover-page h1 span{color:var(--yellow);font-size:72px;display:block}.cover-bottom .card{width:470px;color:var(--ink);background:#fff;border-radius:26px;box-shadow:0 10px 24px #0003}.cover-bottom .card h2{color:var(--green)}.cover-mascot{width:330px;position:absolute;bottom:10px;right:55px}.cover-callout{background:var(--blue);color:#fff;z-index:4;border-radius:18px;width:430px;padding:19px 26px;font-size:22px;line-height:1.28;position:absolute;bottom:150px;left:75px}@page{size:A4;margin:0}@media print{body{background:#fff}.course-nav{display:none}.book{padding:0}.page{width:210mm;height:auto;min-height:297mm;box-shadow:none;page-break-after:always;break-after:page;-webkit-print-color-adjust:exact;print-color-adjust:exact;border-radius:0;margin:0;overflow:visible}}.lesson-content{z-index:3;position:relative}.lesson-content h2{color:var(--blue);margin:18px 0 10px;font-size:23px}.lesson-content p{margin:9px 0;font-size:17px;line-height:1.45}.readable-table th,.readable-table td{font-size:16px}.readable-list{z-index:3;background:#fbfffb;border:1.5px solid #81c69d;border-radius:18px;padding:14px 20px;position:relative}.readable-list li{margin-left:0}.note-card{background:#fbfffb;border-color:#81c69d}.note-card h3{color:var(--blue);margin-bottom:8px;font-size:18px}.note-card p{margin:7px 0;font-size:18px}.dialogue-lite{padding:16px 20px}.dialogue-lite p{margin:7px 0;font-size:18px}.practice li{line-height:1.35}.code-card{color:#e8f2ff;background:#081321;border-color:#06398e}.code-card pre{white-space:pre-wrap;word-break:break-word;margin:0}.code-card code{font-family:Courier New,monospace;font-size:17px;line-height:1.45}.code-steps ol{gap:9px;margin:8px 0;padding-left:22px;display:grid}.code-steps li{margin:0}.code-steps code{color:#e8f2ff;white-space:pre-wrap;word-break:break-word;background:#081321;border-radius:6px;width:max-content;max-width:100%;margin-bottom:4px;padding:5px 7px;font-family:Courier New,monospace;font-size:14px;line-height:1.35;display:block}.code-steps p{color:#24415f;margin:0;font-size:15px;line-height:1.32}html{scroll-behavior:smooth}body{min-height:100vh}a{cursor:pointer}.auth-shell{min-height:100vh;color:var(--ink);background:linear-gradient(135deg,#edf4ff 0%,#f8fbff 48%,#e6f6ed 100%);padding:32px;font-family:Arial,Helvetica,sans-serif}.login-shell{place-items:center;display:grid}.login-panel{background:#fff;border:1px solid #dbe7f5;border-radius:8px;width:min(100%,440px);padding:30px;box-shadow:0 18px 46px #06398e1f}.auth-logo{width:220px;max-width:100%;height:auto;margin-bottom:24px;display:block}.brand-logo.auth-logo{display:inline-flex}.auth-kicker{color:var(--green);letter-spacing:0;text-transform:uppercase;margin:0 0 6px;font-size:13px;font-weight:900}.login-panel h1,.courses-title h1{color:var(--blue);margin:0;font-size:34px;line-height:1.1}.login-form{gap:16px;margin-top:26px;display:grid}.login-form label{color:#24415f;gap:7px;font-size:14px;font-weight:900;display:grid}.login-form input{width:100%;height:48px;color:var(--ink);background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;padding:0 14px;font-size:16px}.login-form input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.login-form button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;height:50px;font-size:16px;font-weight:900}.login-form button:disabled{cursor:wait;background:#7f95bd}.password-field-wrap{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.password-field-wrap .password-toggle{width:54px;min-width:54px;height:48px;color:var(--blue);background:#f8fbff;border:1px solid #c8d6ea;border-radius:8px;place-items:center;padding:0;font-size:13px;font-weight:900;display:grid}.password-field-wrap .password-toggle:hover{border-color:var(--blue);background:#eef5ff}.password-toggle-icon{stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.login-form label.checkbox-field{color:#24415f;cursor:pointer;background:#f8fbff;border:1px solid #c8d6ea;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;display:grid}.login-form label.checkbox-field:hover{border-color:var(--blue);background:#eef5ff}.login-form label.checkbox-field:has(input:focus-visible){border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.login-form label.checkbox-field input{width:20px;height:20px;min-height:20px;accent-color:var(--blue);margin:0}.login-form label.checkbox-field span{gap:3px;display:grid}.login-form label.checkbox-field strong{color:var(--blue);font-size:14px;line-height:1.2}.login-form label.checkbox-field small{color:#60758c;font-size:12px;font-weight:800;line-height:1.3}.login-error{color:#b42318;margin:0;font-size:14px;font-weight:900}.courses-shell{width:min(100%,1120px);margin:0 auto}.courses-header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:46px;display:flex}.courses-header .auth-logo{margin:0}.logout-link{min-width:86px;height:40px;color:var(--blue);background:#fff;border:1px solid #c8d6ea;border-radius:8px;justify-content:center;align-items:center;padding:0 16px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex}.logout-link:hover{border-color:var(--blue)}.courses-title{margin-bottom:22px}.courses-title h1{font-size:42px}.courses-browser{gap:16px;display:grid}.courses-browser-head{justify-content:flex-end;display:flex}.courses-search{color:#24415f;gap:6px;min-width:min(100%,320px);font-size:13px;font-weight:900;display:grid}.courses-search input{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #c8d6ea;border-radius:999px;outline:none;padding:0 14px;font-size:14px;box-shadow:0 10px 24px #06398e0a}.courses-search input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a,0 10px 24px #06398e0a}.courses-empty{margin-top:4px}.courses-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.course-card-ready,.course-card-empty{background:#fff;border:1px solid #d7e2f0;border-radius:8px;min-height:220px;padding:22px;text-decoration:none;box-shadow:0 12px 28px #06398e14}.course-card-ready{color:inherit;flex-direction:column;display:flex}.course-card-ready:hover{border-color:var(--blue);transform:translateY(-1px)}.course-card-ready span,.course-card-empty span{width:max-content;color:var(--green);text-transform:uppercase;background:#eff7f2;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.course-card-ready h2,.course-card-empty h2{color:var(--blue);margin:20px 0 8px;font-size:24px;line-height:1.1}.course-card-ready p,.course-card-empty p{color:#40536a;margin:0;font-size:16px;line-height:1.4}.course-card-ready strong,.course-card-empty strong{color:var(--green);text-transform:uppercase;margin-top:auto;font-size:14px}.course-card-empty{color:inherit;background:#f8fbff;border-style:dashed}.course-card-empty span{color:#50647d;background:#eef3f9}.course-card-empty strong{color:#50647d}.admin-shortcut{background:var(--green);color:#fff;border-radius:8px;justify-content:center;align-items:center;height:40px;margin-top:16px;padding:0 16px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex}.admin-shell{width:min(100%,1120px);margin:0 auto}.student-shell{width:min(100%,940px);margin:0 auto}.admin-grid{grid-template-columns:minmax(280px,420px) 1fr;align-items:start;gap:18px;display:grid}.admin-grid-single{grid-template-columns:1fr}.admin-panel{background:#fff;border:1px solid #d7e2f0;border-radius:8px;padding:22px;box-shadow:0 12px 28px #06398e14}.admin-alert{color:#5d4600;background:#fff8dc;border:1px solid #f4c84a;border-radius:8px;margin:0 0 18px;padding:16px 18px}.admin-alert strong{margin-bottom:6px;font-size:16px;display:block}.admin-alert p{margin:0;font-size:15px;line-height:1.4}.admin-panel h2{color:var(--blue);margin:0 0 18px;font-size:24px;line-height:1.12}.admin-panel p{color:#40536a;font-size:16px;line-height:1.4}.collapsible-admin-panel{padding:0;overflow:hidden}.collapsible-admin-panel summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;min-height:76px;padding:0 20px;list-style:none;display:flex}.collapsible-admin-panel summary::-webkit-details-marker{display:none}.collapsible-admin-panel summary h2{margin:0}.collapsible-admin-panel summary:after{content:"";border-right:2px solid var(--blue);border-bottom:2px solid var(--blue);width:10px;height:10px;transition:transform .18s;transform:rotate(45deg)translateY(-2px)}.collapsible-admin-panel[open] summary{border-bottom:1px solid #d7e2f0}.collapsible-admin-panel[open] summary:after{transform:rotate(225deg)translate(-1px,-1px)}.collapsible-admin-panel .admin-form{padding:20px}.admin-form{gap:14px;display:grid}.admin-form label{color:#24415f;gap:7px;font-size:14px;font-weight:900;display:grid}.admin-form input,.admin-form select{width:100%;min-height:46px;color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;padding:0 12px;font-size:15px}.admin-form textarea{width:100%;min-height:120px;color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font:inherit;resize:vertical;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;padding:12px;font-size:15px;line-height:1.45}.admin-form input.inline-checkbox{width:18px;height:18px;min-height:18px;accent-color:var(--blue);margin:0 8px 0 0;padding:0}.admin-form label.checkbox-field{color:#24415f;cursor:pointer;background:#f8fbff;border:1px solid #c8d6ea;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;display:grid}.admin-form label.checkbox-field:hover{border-color:var(--blue);background:#eef5ff}.admin-form label.checkbox-field:has(input:focus-visible){border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.admin-form label.checkbox-field input.inline-checkbox{width:20px;height:20px;min-height:20px;margin:0}.admin-form label.checkbox-field span{gap:3px;display:grid}.admin-form label.checkbox-field strong{color:var(--blue);font-size:14px;line-height:1.2}.admin-form label.checkbox-field small{color:#60758c;font-size:12px;font-weight:800;line-height:1.3}.admin-form input:focus,.admin-form select:focus,.admin-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.admin-form button,.secondary-button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;min-height:48px;font-size:15px;font-weight:900}.professor-builder-page{overflow-x:hidden}.professor-builder-grid{grid-template-columns:1fr;align-items:start;gap:18px;display:grid}.professor-builder-preview-panel{position:relative;top:auto}.professor-builder-preview-panel .professor-landing-preview{margin-top:0}.professor-preview-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.professor-preview-head h2{color:var(--blue);margin:0;font-size:24px;line-height:1.12}.professor-preview-head p{color:#53677f;margin:6px 0 0;font-size:14px;line-height:1.4}.professor-public-link-note{color:#40536a;margin:0;font-size:15px;line-height:1.5}.professor-public-link-note strong{color:var(--blue);word-break:break-all}.professor-landing-preview,.professor-public-page{gap:18px;display:grid}.professor-landing-logo{filter:drop-shadow(0 8px 16px #00000018);width:min(280px,72vw);max-width:100%;height:auto;margin-bottom:8px}.professor-landing-avatar-fallback{aspect-ratio:1;background:linear-gradient(145deg,#eaf5ff,#d9e8ff);border:1px solid #cfe0f6;border-radius:28px;place-items:center;width:min(180px,42vw);margin-bottom:8px;display:grid;box-shadow:0 14px 26px #06398e24}.professor-landing-avatar-fallback span{background:var(--blue);color:#fff;letter-spacing:-.04em;border-radius:50%;place-items:center;width:78px;height:78px;font-size:28px;font-weight:900;display:grid}.professor-landing-hero{background:linear-gradient(135deg,#fdfefe 0%,#f4f8ff 50%,#eefaf1 100%);border:1px solid #d7e2f0;border-radius:20px;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);align-items:stretch;gap:18px;padding:20px;display:grid}.professor-landing-hero-home{min-height:560px;padding:clamp(34px,5vw,76px) clamp(28px,7vw,92px)}.professor-landing-hero-home .landing-hero-content{width:min(1120px,100%)}.professor-landing-hero-layout{grid-template-columns:minmax(220px,.62fr) minmax(0,1.38fr);align-items:center;gap:clamp(28px,6vw,96px);width:100%;display:grid}.professor-landing-profile{justify-content:center;align-items:center;min-width:0;display:flex}.professor-landing-hero-copy{min-width:0}.professor-landing-hero-copy h1{max-width:760px}.professor-landing-hero-copy>p:not(.landing-kicker){max-width:680px}.professor-landing-hero-home .professor-landing-logo{object-fit:contain;width:min(360px,100%);max-height:300px}.professor-landing-hero-home .professor-landing-avatar-fallback{width:min(300px,100%)}.professor-landing-copy{align-content:start;gap:14px;display:grid}.professor-landing-eyebrow{width:max-content;min-height:30px;color:var(--blue);letter-spacing:.04em;text-transform:uppercase;background:#eff6ff;border-radius:999px;align-items:center;padding:0 12px;font-size:11px;font-weight:900;display:inline-flex}.professor-landing-copy h1{color:var(--blue);letter-spacing:-.04em;margin:0;font-size:clamp(30px,3vw,48px);line-height:1.02}.professor-landing-copy p{color:#40536a;margin:0;font-size:17px;line-height:1.55}.professor-landing-highlights{flex-wrap:wrap;gap:8px;display:flex}.professor-landing-highlights span{min-height:34px;color:var(--blue);background:#fff;border:1px solid #cfe2f6;border-radius:999px;align-items:center;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.professor-landing-actions{flex-wrap:wrap;gap:10px;display:flex}.professor-landing-action{min-height:44px;color:var(--blue);background:#fff;border:1px solid #c8d6ea;border-radius:12px;justify-content:center;align-items:center;padding:0 16px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex}.professor-landing-action.primary{background:var(--blue);border-color:var(--blue);color:#fff}.professor-landing-action.disabled{opacity:.56;pointer-events:none}.professor-landing-media{background:linear-gradient(145deg,#0a4b94 0%,#0d71a8 48%,#0d9a6a 100%);border-radius:22px;min-height:320px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff2a}.professor-landing-media:before{content:"";pointer-events:none;background:radial-gradient(circle at 18% 24%,#ffffff26 0 13%,#0000 14%),radial-gradient(circle at 82% 18%,#ffffff20 0 10%,#0000 11%),radial-gradient(circle at 76% 84%,#9ef0cf2a 0 18%,#0000 19%);position:absolute;inset:0}.professor-landing-media-frame{background:linear-gradient(150deg,#eff6ff 0%,#dbeafe 38%,#e2f8ee 100%);border-radius:18px;position:absolute;inset:14px;overflow:hidden;box-shadow:0 18px 40px #08345d2a}.professor-landing-media-frame.has-image{background:#0b1220}.professor-landing-media-frame img{object-fit:cover;object-position:center top;width:100%;height:100%;position:absolute;inset:0}.professor-landing-media-fallback{place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.professor-landing-media-fallback-card{z-index:2;background:#fffd;border:1px solid #ffffffa8;border-radius:22px;gap:10px;width:min(320px,100% - 32px);padding:18px 18px 16px;display:grid;position:relative;box-shadow:0 16px 28px #0b2f4a26}.professor-landing-media-fallback-card span{width:max-content;min-height:28px;color:var(--blue);letter-spacing:.04em;text-transform:uppercase;background:#eff6ff;border-radius:999px;align-items:center;padding:0 11px;font-size:11px;font-weight:900;display:inline-flex}.professor-landing-media-fallback-card strong{color:var(--blue);letter-spacing:-.03em;font-size:24px;line-height:1.02}.professor-landing-media-fallback-card p{color:#4f6480;margin:0;font-size:14px;line-height:1.45}.professor-landing-media-orb{filter:blur(1px);opacity:.9;border-radius:999px;position:absolute}.professor-landing-media-orb.orb-a{background:radial-gradient(circle,#ffffff98 0%,#8ab7ff55 46%,#0000 72%);width:170px;height:170px;top:-28px;left:-36px}.professor-landing-media-orb.orb-b{background:radial-gradient(circle,#ffffff40 0%,#2edba544 52%,#0000 72%);width:230px;height:230px;top:28px;right:-50px}.professor-landing-media-orb.orb-c{background:radial-gradient(circle,#ffffff36 0%,#0b4d9f33 48%,#0000 72%);width:180px;height:180px;bottom:-62px;right:22px}.professor-landing-media-overlay{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(#020617cc 0%,#020617e6 100%);border:1px solid #fff3;border-radius:16px;gap:4px;padding:14px 16px;display:grid;position:absolute;bottom:14px;left:14px;right:14px}.professor-landing-media-overlay strong{font-size:18px;line-height:1.1}.professor-landing-media-overlay span{color:#dbeafe;font-size:13px;font-weight:700;line-height:1.3}.professor-landing-media-overlay.with-image{background:#020617b8}.professor-landing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.professor-landing-card{background:#fff;border:1px solid #d7e2f0;border-radius:18px;gap:10px;padding:18px;display:grid}.professor-landing-card-label{width:max-content;min-height:28px;color:var(--blue);letter-spacing:.03em;text-transform:uppercase;background:#eef5ff;border-radius:999px;align-items:center;padding:0 10px;font-size:11px;font-weight:900;display:inline-flex}.professor-landing-card h2{color:var(--blue);margin:0;font-size:22px;line-height:1.1}.professor-landing-card p{color:#40536a;margin:0;font-size:15px;line-height:1.5}.professor-landing-card a{color:var(--blue);font-weight:900;text-decoration:none}.professor-preview-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.professor-preview-action{border:1px solid var(--blue);background:var(--blue);color:#fff;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;min-height:42px;padding:0 14px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex}.professor-preview-action.secondary{color:var(--blue);background:#fff}.professor-preview-action:hover{filter:brightness(1.02)}.professor-public-shell{background:linear-gradient(135deg,#edf4ff 0%,#f8fbff 48%,#e6f6ed 100%);min-height:100vh;padding:28px}.professor-public-shell .professor-public-page{width:min(1180px,100%);margin:0 auto}.secondary-button{background:var(--green);width:100%;margin-top:14px}.payment-qr-upload{background:#f8fbff;border:1px dashed #9fb9da;border-radius:8px;padding:12px}.payment-qr-upload input[type=file]{color:#40536a;cursor:pointer;align-items:center;min-height:46px;padding:8px 10px;font-size:13px;font-weight:800;display:flex}.payment-qr-upload input[type=file]::file-selector-button{background:var(--blue);color:#fff;height:32px;font:inherit;cursor:pointer;border:0;border-radius:7px;margin-right:10px;padding:0 12px;font-size:13px;font-weight:900}.payment-qr-upload small{color:#60758c;font-size:12px;font-weight:800;line-height:1.35}.billing-currency-fields{background:#f8fbff;border:1px solid #c5d7ee;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;display:grid}.billing-currency-fields legend{color:#174a86;padding:0 6px;font-size:13px;font-weight:900}.billing-currency-fields label{color:#24415f;gap:6px;font-size:13px;font-weight:900;display:grid}.billing-currency-fields input,.billing-currency-fields select{width:100%;min-height:40px;color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;padding:0 10px;font-size:14px}.billing-currency-fields select{appearance:auto;text-overflow:ellipsis;white-space:nowrap;padding-right:34px;overflow:hidden}.billing-currency-fields input:read-only{color:var(--blue);background:#eef5ff;font-weight:900}.billing-currency-fields input:disabled{color:#96a5b7;background:#edf3fa}.billing-currency-fields p{color:#526981;grid-column:1/-1;margin:0;font-size:12px;font-weight:900;line-height:1.3}.student-group-form{gap:14px;display:grid}.student-group-toggle{min-height:40px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;justify-self:start;padding:0 14px;font-size:13px;font-weight:900}.student-group-toggle:hover{border-color:var(--blue);background:#f2f7ff}.student-group-tools{background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:end;gap:10px;padding:12px;display:grid}.student-group-tools label{color:#24415f;gap:6px;font-size:13px;font-weight:900;display:grid}.student-group-tools input,.student-group-tools select{width:100%;min-height:40px;color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;padding:0 10px;font-size:14px}.student-group-tools button{background:var(--green);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;min-height:40px;padding:0 12px;font-size:13px;font-weight:900}.student-list{gap:10px;display:grid}.student-list-filters{grid-template-columns:minmax(0,1fr) minmax(160px,220px);gap:10px;margin:12px 0;display:grid}.student-list-filters label{color:#24415f;gap:6px;font-size:13px;font-weight:900;display:grid}.student-list-filters input,.student-list-filters select{width:100%;min-height:40px;color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;padding:0 10px;font-size:14px}.student-list-filters input:focus,.student-list-filters select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1f}.student-list-row{grid-template-columns:1fr auto;align-items:center;gap:10px;display:grid}.student-list-row.is-grouping{grid-template-columns:auto 1fr auto}.student-row-check{cursor:pointer;background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;place-items:center;width:42px;height:46px;display:grid}.student-row-check input{width:18px;height:18px;accent-color:var(--blue)}.student-list a{min-width:0;color:inherit;border:1px solid #d7e2f0;border-radius:8px;align-content:center;justify-items:start;gap:4px;padding:14px;text-decoration:none;display:grid}.student-list a:hover{border-color:var(--blue)}.student-list strong{max-width:100%;color:var(--blue);white-space:normal;overflow-wrap:normal;word-break:normal;-webkit-hyphens:auto;hyphens:auto;text-wrap:pretty;font-size:16px;line-height:1.2;display:block}.student-list span{max-width:100%;color:var(--green);white-space:normal;overflow-wrap:normal;word-break:normal;text-wrap:pretty;font-size:13px;font-weight:900;line-height:1.25;display:block}.delete-student-button{color:#b42318;cursor:pointer;background:#fff5f3;border:1px solid #f1b4ad;border-radius:8px;place-items:center;width:46px;height:46px;padding:0;display:grid}.delete-student-button svg{fill:currentColor;width:18px;height:18px}.delete-student-button:hover{border-color:#b42318}.confirm-overlay{z-index:220;background:#0b172acc;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirm-dialog{text-transform:none;background:#fff;border-radius:8px;width:min(100%,420px);padding:24px;box-shadow:0 22px 60px #0006}.confirm-dialog h2{color:var(--blue);margin:0 0 10px;font-size:26px;text-transform:none!important}.confirm-dialog p{color:#40536a;margin:0;font-size:16px;line-height:1.45;text-transform:none!important}.confirm-dialog *{text-transform:none!important}.finance-confirm-overlay{z-index:230}.finance-confirm-dialog{width:min(100%,460px)}.confirm-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.confirm-actions button,.confirm-actions a{min-height:42px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;justify-content:center;align-items:center;padding:0 14px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex}.confirm-actions .danger-button{color:#fff;background:#b42318;border-color:#b42318}.empty-note{color:#50647d;margin:0}.lesson-access-list{color:#24415f;gap:7px;margin:8px 0;font-size:14px;font-weight:900;display:grid}.lesson-access-select{position:relative}.lesson-access-select summary{width:100%;min-height:46px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;justify-content:space-between;align-items:center;padding:0 12px;font-size:15px;font-weight:700;line-height:1.3;list-style:none;display:flex}.lesson-access-select summary::-webkit-details-marker{display:none}.lesson-access-select summary:after{content:"";border-bottom:2px solid var(--blue);border-right:2px solid var(--blue);width:8px;height:8px;transform:rotate(45deg)translateY(-2px)}.lesson-access-select[open] summary{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.lesson-access-select[open] summary:after{transform:rotate(225deg)translate(-1px,-1px)}.lesson-access-options{z-index:20;background:#fff;border:1px solid #c8d6ea;border-radius:8px;gap:8px;max-height:330px;padding:8px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto;box-shadow:0 14px 30px #06398e24}.lesson-access-options label{border:1px solid #d7e2f0;border-radius:8px;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:10px;min-height:50px;padding:11px;display:grid}.lesson-access-options input{justify-self:center;width:18px;height:18px;min-height:18px;margin:0}.lesson-access-options span{color:#24415f;font-size:14px;line-height:1.3}.weekday-picker{background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;padding:10px 12px}.weekday-picker legend{color:#24415f;padding:0 4px;font-size:13px;font-weight:900}.weekday-picker label{color:#35516e;align-items:center;gap:6px;margin:6px 10px 0 0;font-size:13px;font-weight:900;display:inline-flex}.weekday-picker input{width:16px;min-height:16px}.timezone-select-wrap{width:100%;position:relative}.timezone-select-wrap:after{content:"";pointer-events:none;border-bottom:2px solid #174a86;border-right:2px solid #174a86;width:8px;height:8px;position:absolute;top:50%;right:16px;transform:translateY(-65%)rotate(45deg)}.timezone-select{color:#11243f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;appearance:none;background:#fbfdff;border:1px solid #adc4e2;border-radius:8px;outline:none;width:100%;min-height:48px;padding:0 44px 0 14px;font-size:14px;font-weight:800;line-height:1.25;box-shadow:inset 0 1px #fff}.timezone-select:hover{background:#f2f7ff;border-color:#5f8bc2}.timezone-select:focus{background:#fff;border-color:#0f4f98;box-shadow:0 0 0 3px #06398e24}.weekly-schedule-picker{background:#eef5ff;border:1px solid #c5d7ee;border-radius:8px;gap:8px;padding:12px;display:grid;container-type:inline-size}.weekly-schedule-picker legend{color:#174a86;padding:0 8px;font-size:13px;font-weight:900}.weekly-schedule-row{background:#fff;border:1px solid #d8e5f4;border-radius:8px;grid-template-columns:116px minmax(0,1fr);align-items:start;gap:12px;padding:12px;display:grid;box-shadow:0 1px 2px #06398e0a}.weekly-schedule-row.is-enabled{background:#fbfdff;border-color:#aac5e6}.weekly-schedule-row.is-disabled{background:#f7faff}.weekly-schedule-day{min-height:40px;color:var(--blue);grid-template-columns:none;align-items:flex-start;gap:9px;font-size:13px;font-weight:900;display:flex}.weekly-schedule-day input{width:16px;min-height:16px;accent-color:var(--blue)}.weekly-schedule-day span{gap:4px;line-height:1;display:grid}.weekly-schedule-day strong{font-size:14px}.weekly-schedule-day em{color:#61758d;text-transform:uppercase;background:#e9f1fb;border-radius:999px;width:max-content;padding:5px 7px;font-size:10px;font-style:normal;font-weight:900;line-height:1}.weekly-schedule-row.is-enabled .weekly-schedule-day em{color:#16703b;background:#e5f7ec}.weekly-schedule-row select{color:#16243a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #bdd0e8;border-radius:8px;outline:none;width:100%;min-height:40px;padding:0 10px;font-size:14px;font-weight:800}.weekly-schedule-row select:hover:not(:disabled){background:#fbfdff;border-color:#7aa0cf}.weekly-schedule-row select:disabled{color:#96a5b7;cursor:not-allowed;background:#edf3fa}.weekly-schedule-row select:focus{border-color:#164d94;box-shadow:0 0 0 3px #06398e24}.weekly-schedule-intervals{gap:7px;display:grid}.weekly-schedule-interval{align-items:center;gap:8px;width:100%;display:flex}.weekly-schedule-time-fields{grid-template-columns:auto minmax(118px,160px) auto minmax(118px,160px);align-items:center;gap:7px;display:grid}.weekly-schedule-time-fields span{color:#50647d;font-size:12px;font-weight:900}.weekly-schedule-row-actions{flex:none;align-items:center;gap:6px;display:flex}.weekly-schedule-icon-button{color:#b42318;cursor:pointer;background:#fff5f3;border:1px solid #f1b4ad;border-radius:8px;place-items:center;width:36px;height:36px;font-size:19px;font-weight:900;line-height:1;display:grid}.weekly-schedule-add-button{color:#fff;background:#0f4f98;border-color:#8fb0d7}.weekly-schedule-remove-button:hover{color:#8f1a12;background:#ffd8d1;border-color:#9f1d14}.weekly-schedule-add-button:hover:not(:disabled){color:#fff;background:#0b3f7f;border-color:#0b3266}.weekly-schedule-add-button:disabled{color:#9aa9bb;cursor:not-allowed;background:#f2f6fb}@container (max-width:430px){.weekly-schedule-row{grid-template-columns:1fr;gap:10px}.weekly-schedule-day{align-items:center}.weekly-schedule-interval{grid-template-columns:minmax(0,1fr) 34px;gap:6px;display:grid}.weekly-schedule-time-fields{grid-template-columns:1fr 1fr;gap:6px}.weekly-schedule-time-fields span{align-self:center}.weekly-schedule-time-fields span:first-child,.weekly-schedule-time-fields select:nth-child(2){grid-column:1}.weekly-schedule-time-fields span:nth-child(3){grid-area:1/2}.weekly-schedule-time-fields select:nth-child(4){grid-column:2}.weekly-schedule-row-actions{justify-content:flex-end;align-self:end}.weekly-schedule-icon-button{width:34px;height:34px}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.student-weekly-schedule{background:#f7fbff;border:1px solid #c5d7ee;border-radius:8px;grid-column:1/-1;overflow:hidden}.student-weekly-schedule summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:0 14px;list-style:none;display:flex}.student-weekly-schedule summary::-webkit-details-marker{display:none}.student-weekly-schedule summary:after{content:"";border-bottom:2px solid #174a86;border-right:2px solid #174a86;width:9px;height:9px;transition:transform .18s;transform:rotate(45deg)translateY(-2px)}.student-weekly-schedule[open] summary:after{transform:rotate(225deg)translate(-1px,-1px)}.student-weekly-schedule summary span{gap:4px;display:grid}.student-weekly-schedule summary strong{color:#174a86;font-size:14px;line-height:1}.student-weekly-schedule summary em{color:#61758d;text-transform:uppercase;background:#e9f1fb;border-radius:999px;width:max-content;padding:5px 7px;font-size:10px;font-style:normal;font-weight:900;line-height:1}.student-weekly-grid{border-top:1px solid #d9e5f5;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;padding:10px;display:grid}.student-weekly-day{background:#fff;border:1px solid #d8e5f4;border-radius:8px;grid-template-columns:86px minmax(0,1fr);align-items:center;gap:10px;padding:10px;display:grid;box-shadow:0 1px 2px #06398e0a}.student-weekly-day.is-enabled{background:#fbfdff;border-color:#aac5e6}.student-weekly-day-head{color:var(--blue);grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;font-size:13px;font-weight:900;display:grid}.student-weekly-day-head input{width:16px;min-height:16px;accent-color:var(--blue)}.student-weekly-day-head span{gap:4px;min-width:0;line-height:1;display:grid}.student-weekly-day-head strong{font-size:14px}.student-weekly-day-head em{color:#61758d;text-transform:uppercase;white-space:nowrap;background:#e9f1fb;border-radius:999px;width:max-content;max-width:100%;padding:4px 6px;font-size:9px;font-style:normal;font-weight:900;line-height:1}.student-weekly-day.is-enabled .student-weekly-day-head em{color:#16703b;background:#e5f7ec}.student-weekly-times{gap:6px;display:grid}.student-weekly-time-row{grid-template-columns:minmax(118px,1fr) 34px 34px;align-items:center;gap:6px;display:grid}.student-weekly-time-row select{color:#16243a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #bdd0e8;border-radius:8px;outline:none;width:100%;min-height:40px;padding:0 10px;font-size:14px;font-weight:800}.student-weekly-time-row select:hover:not(:disabled){background:#fbfdff;border-color:#7aa0cf}.student-weekly-time-row select:disabled{color:#96a5b7;cursor:not-allowed;background:#edf3fa}.student-weekly-time-row select:focus{border-color:#164d94;box-shadow:0 0 0 3px #06398e24}.student-weekly-icon-button{color:#b42318;cursor:pointer;background:#fff5f3;border:1px solid #f1b4ad;border-radius:8px;place-items:center;width:34px;height:34px;font-size:18px;font-weight:900;line-height:1;display:grid}.student-weekly-add-button{color:#fff;background:#0f4f98;border-color:#8fb0d7}.student-weekly-remove-button:hover{color:#8f1a12;background:#ffd8d1;border-color:#9f1d14}.student-weekly-add-button:hover:not(:disabled){color:#fff;background:#0b3f7f;border-color:#0b3266}.student-weekly-add-button:disabled{color:#8ca0b8;cursor:not-allowed;background:#edf3fa;border-color:#d9e5f5}.student-link-panel{position:sticky;top:24px}.student-access-link{word-break:break-all;color:var(--blue);background:#f8fbff;border:1px solid #c8d6ea;border-radius:8px;padding:14px;font-size:15px;font-weight:900;line-height:1.35;text-decoration:none;display:block}.student-flashcards-admin-link{width:100%;min-height:46px;color:var(--blue);text-align:center;background:#eef5ff;border:1px solid #b8c9e6;border-radius:8px;justify-content:center;align-items:center;margin-top:12px;font-size:14px;font-weight:900;text-decoration:none;display:flex}.student-flashcards-admin-link:hover{border-color:var(--blue);background:#e3efff}.student-chat-launch{color:#0b5f73;text-align:left;cursor:pointer;background:linear-gradient(#f1feff 0%,#dff8fb 100%);border:1px solid #9ec8d1;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:46px;margin-top:12px;padding:0 16px;font-size:14px;font-weight:900;text-decoration:none;display:flex;box-shadow:0 8px 18px #0b5f7310}.student-chat-launch:hover{background:linear-gradient(#e6fbff 0%,#c7eef7 100%);border-color:#2c8ca0}.student-chat-launch-main{align-items:center;gap:10px;min-width:0;display:flex}.student-chat-icon{fill:currentColor;flex:none;width:18px;height:18px}.student-chat-badge{color:#fff;background:#d92d20;border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 7px;font-size:12px;font-weight:900;display:inline-flex;box-shadow:0 4px 12px #d92d2040}.student-chat-overlay{z-index:70;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:16px 16px calc(112px + env(safe-area-inset-bottom));background:#06398e6b;place-items:center;display:grid;position:fixed;inset:0}.student-chat-modal{background:linear-gradient(#fff 0%,#f6f9ff 100%);border:1px solid #cfe1f1;border-radius:16px;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;width:min(760px,100%);max-height:min(100dvh - 136px,920px);padding:18px;display:grid;overflow:hidden;box-shadow:0 24px 60px #061a3b33}.student-chat-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.student-chat-header span{color:#60758c;letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:900;display:block}.student-chat-header h2{color:var(--blue);margin:4px 0 6px;font-size:24px;line-height:1.1}.student-chat-header p{color:#4b607b;max-width:52ch;margin:0;font-size:13px;line-height:1.45}.student-chat-header button{min-height:40px;color:var(--blue);cursor:pointer;background:#eef5ff;border:1px solid #c8d6ea;border-radius:999px;padding:0 14px;font-size:13px;font-weight:900}.student-chat-header button:hover{border-color:var(--blue);background:#e3efff}.student-chat-thread{background:#fff;border:1px solid #dbe6f4;border-radius:14px;gap:10px;min-height:0;padding:14px;display:grid;overflow:auto}.student-chat-empty,.student-chat-error{color:#60758c;margin:0;font-size:14px;font-weight:700;line-height:1.5}.student-chat-error{color:#b42318}.student-chat-message-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.student-chat-message{background:#f8fbff;border:1px solid #dbe6f4;border-radius:14px;gap:6px;max-width:82%;padding:10px 12px;display:grid}.student-chat-message.is-student{background:linear-gradient(#eff5ff 0%,#e1ebff 100%);border-color:#cfe0f7;justify-self:flex-end}.student-chat-message.is-teacher{background:#fff;border-color:#dbe6f4;justify-self:flex-start}.student-chat-message-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.student-chat-message-meta strong{color:var(--blue);font-size:12px;font-weight:900}.student-chat-message-meta span{color:#60758c;white-space:nowrap;font-size:11px;font-weight:800}.student-chat-message p{color:#1f2937;white-space:pre-wrap;word-break:break-word;margin:0;font-size:14px;line-height:1.45}.student-chat-form{gap:10px;min-width:0;display:grid}.student-chat-form textarea{resize:vertical;color:#111827;background:#fff;border:1px solid #c8d6ea;border-radius:12px;outline:none;width:100%;min-height:96px;padding:12px 14px;font-size:14px;line-height:1.45}.student-chat-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.student-chat-actions{justify-content:flex-end;padding-bottom:2px;display:flex}.student-chat-actions button{border:1px solid var(--blue);background:var(--blue);color:#fff;cursor:pointer;border-radius:999px;min-height:44px;padding:0 18px;font-size:14px;font-weight:900}.student-chat-actions button:hover:not(:disabled){background:#0b3f7f}.student-chat-actions button:disabled{color:#7e93ad;cursor:not-allowed;background:#d9e5f5;border-color:#c8d6ea}.meeting-chat-overlay{z-index:150;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:16px 16px calc(94px + env(safe-area-inset-bottom));background:#020617c7}.meeting-chat-overlay .student-chat-modal{background:linear-gradient(#111827 0%,#0b111a 100%);border:1px solid #334155;border-radius:14px;gap:12px;width:min(620px,100vw - 28px);max-height:min(720px,100dvh - 124px);padding:14px;box-shadow:0 24px 70px #000c}.meeting-chat-overlay .student-chat-header{border-bottom:1px solid #263241;align-items:center;padding-bottom:12px}.meeting-chat-overlay .student-chat-header span{color:#91d8a9;letter-spacing:.04em;font-size:10px}.meeting-chat-overlay .student-chat-header h2{color:#f8fafc;margin:3px 0;font-size:20px;line-height:1.1}.meeting-chat-overlay .student-chat-header p{color:#aebdcc;max-width:42ch;font-size:12px;font-weight:800;line-height:1.35}.meeting-chat-overlay .student-chat-header button{color:#dbe7f5;background:#18222d;border:1px solid #334155;border-radius:8px;min-height:34px;padding:0 12px;font-size:12px}.meeting-chat-overlay .student-chat-header button:hover{color:#fff;background:#263241;border-color:#4b607c}.meeting-chat-overlay .student-chat-thread{background:#05070a;border:1px solid #263241;border-radius:12px;padding:12px;box-shadow:inset 0 1px #ffffff08}.meeting-chat-overlay .student-chat-empty{color:#94a3b8;font-weight:800}.meeting-chat-overlay .student-chat-error{color:#fca5a5;font-weight:900}.meeting-chat-overlay .student-chat-message{color:#e5edf7;background:#111827;border-color:#334155;border-radius:12px;max-width:86%;padding:9px 11px;box-shadow:0 10px 22px #0004}.meeting-chat-overlay .student-chat-message.is-student{color:#fff;background:linear-gradient(#0f7a3b 0%,#0b5f2d 100%);border-color:#1f6f40}.meeting-chat-overlay .student-chat-message.is-teacher{background:#18222d;border-color:#334155}.meeting-chat-overlay .student-chat-message-meta strong{color:#f8fafc;font-size:11px}.meeting-chat-overlay .student-chat-message-meta span{color:#cbd5e1;opacity:.78;font-size:10px}.meeting-chat-overlay .student-chat-message p{color:inherit;font-size:13px;line-height:1.42}.meeting-chat-overlay .student-chat-form{gap:9px}.meeting-chat-overlay .student-chat-form textarea{resize:vertical;color:#f8fafc;background:#020617;border:1px solid #334155;border-radius:10px;min-height:82px;max-height:28dvh;padding:11px 12px;font-size:14px;line-height:1.42}.meeting-chat-overlay .student-chat-form textarea::placeholder{color:#64748b}.meeting-chat-overlay .student-chat-form textarea:focus{border-color:#91d8a9;box-shadow:0 0 0 3px #91d8a91f}.meeting-chat-overlay .student-chat-actions button{color:#fff;background:#0f7a3b;border:0;border-radius:8px;min-height:40px;padding:0 16px;font-size:13px}.meeting-chat-overlay .student-chat-actions button:hover:not(:disabled){background:#118945}.meeting-chat-overlay .student-chat-actions button:disabled{color:#64748b;background:#1f2937;border:1px solid #334155}.student-finance-edit-button{color:#8a5a00;background:linear-gradient(#fff5df 0%,#ffe8b8 100%);border-color:#d7b46d;box-shadow:0 8px 18px #8a5a0012}.student-finance-edit-button:hover{color:#6e4500;background:linear-gradient(#ffefc2 0%,#ffd87a 100%);border-color:#c68f17}.student-finance-card{background:linear-gradient(#fff 0%,#f4f8ff 100%);border:1px solid #cfe1f1;border-radius:16px;grid-template-columns:minmax(0,1fr) minmax(180px,214px);gap:14px 16px;margin-top:12px;padding:18px;display:grid;box-shadow:0 14px 32px #06398e14}.student-finance-card>header{grid-column:1/-1;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.student-finance-card>header span{color:#60758c;letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:900;display:block}.student-finance-card>header h3{color:var(--blue);margin:4px 0 0;font-size:20px;line-height:1.15}.student-finance-card>header strong{color:#24415f;white-space:nowrap;background:#eef5ff;border-radius:999px;justify-content:center;align-items:center;min-height:34px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.student-finance-grid{grid-column:1/2;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;display:grid}.student-finance-grid>div{background:linear-gradient(#fff 0%,#f7faff 100%);border:1px solid #dbe6f4;border-radius:14px;gap:4px;min-width:0;padding:12px 13px;display:grid;box-shadow:inset 0 1px #fff}.student-finance-grid>div span{color:#60758c;letter-spacing:.03em;text-transform:uppercase;font-size:11px;font-weight:900}.student-finance-grid>div strong{color:#0f4f98;word-break:break-word;font-size:15px;line-height:1.25}.student-finance-grid>div strong.is-paid{color:#0b7734}.student-finance-grid>div strong.is-overdue{color:#b42318}.student-finance-note{background:#fff;border:1px solid #dbe6f4;border-radius:14px;grid-column:1/2;gap:4px;min-width:0;padding:12px 13px;display:grid;box-shadow:0 8px 18px #06398e08}.student-finance-note a,.student-finance-note strong{display:block}.student-finance-note span{color:#60758c;letter-spacing:.03em;text-transform:uppercase;font-size:11px;font-weight:900}.student-finance-note a{color:var(--blue);word-break:break-word;font-size:14px;font-weight:900;text-decoration:none}.student-finance-note strong{color:#0f4f98;font-size:15px;line-height:1.25}.student-finance-note strong.is-paid{color:#0b7734}.student-finance-note strong.is-overdue{color:#b42318}.student-finance-note small{color:#60758c;font-size:11px;font-weight:800;line-height:1.35;display:block}.student-finance-qr{background:#fff;border:1px solid #d7e2f0;border-radius:16px;grid-area:2/2/span 3;place-self:start stretch;width:100%;max-width:214px;padding:10px;box-shadow:0 12px 24px #06398e12}.student-finance-card>.student-finance-summary{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0;display:grid}.student-scheduled-classes{background:linear-gradient(#fff 0%,#f4f8ff 100%);border:1px solid #cfe1f1;border-radius:16px;gap:14px;margin-top:12px;padding:18px;display:grid;box-shadow:0 14px 32px #06398e14}.student-scheduled-classes>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.student-scheduled-classes>header span{color:#60758c;letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:900;display:block}.student-scheduled-classes>header h3{color:var(--blue);margin:4px 0 0;font-size:20px;line-height:1.15}.student-scheduled-classes>header strong{color:#24415f;background:#eef5ff;border-radius:999px;justify-content:center;align-items:center;min-width:34px;min-height:34px;padding:0 10px;font-size:12px;font-weight:900;display:inline-flex}.student-scheduled-classes-list{gap:10px;display:grid}.student-scheduled-class{background:#fff;border:1px solid #dbe6f4;border-radius:14px;gap:10px;padding:12px;display:grid;box-shadow:0 8px 18px #06398e08}.student-scheduled-class-heading{gap:3px;display:grid}.student-scheduled-class-heading strong{color:#0f4f98;font-size:14px;line-height:1.25}.student-scheduled-class-heading span{color:#60758c;font-size:12px;font-weight:800}.student-scheduled-class-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.student-scheduled-class-form input{color:#111827;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;width:100%;height:38px;padding:0 9px;font-size:13px}.student-scheduled-class-form input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.student-scheduled-class-form .secondary-button{grid-column:1/-1;width:100%;min-width:0}.student-scheduled-class-delete-form{display:flex}.student-scheduled-class-delete-form .danger-button{color:#b42318;cursor:pointer;background:#fff5f3;border:1px solid #f1b4ad;border-radius:8px;width:100%;min-height:38px;padding:0 12px;font-size:12px;font-weight:900}.student-scheduled-classes-empty{color:#60758c;margin:0;font-size:12px;font-weight:800;line-height:1.4}.student-payment-entries{gap:10px;display:grid}.student-payment-entries-summary{background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.student-payment-entries-summary strong{color:var(--blue);font-size:14px}.student-payment-entries-summary button{min-height:34px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;padding:0 12px;font-size:12px;font-weight:900}.student-payment-entries-summary button:hover{border-color:var(--blue);background:#eef5ff}.student-payment-entry-row{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) 34px;gap:8px;display:grid}.student-payment-entry-row input{color:#111827;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;width:100%;height:38px;padding:0 10px;font-size:13px}.student-payment-entry-row input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.student-payment-entry-row button{color:#b42318;cursor:pointer;background:#fff5f3;border:1px solid #f1b4ad;border-radius:8px;min-height:38px;font-size:14px;font-weight:900}.student-payment-entry-row button:hover{background:#ffe4df}.student-payment-entries-empty{color:#60758c;margin:0;font-size:12px;font-weight:800}.copy-link-button{background:var(--blue)}.student-hero{background:linear-gradient(135deg,#fff 0%,#fbfdff 58%,#f3faf6 100%);border:1px solid #d7e2f0;border-radius:8px;grid-template-columns:minmax(220px,300px) minmax(0,1fr);align-items:center;gap:18px 28px;margin-bottom:14px;padding:24px;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 32px #06398e14}.student-hero:before{content:"";background:linear-gradient(180deg,var(--blue),var(--green));width:5px;position:absolute;top:0;bottom:0;left:0}.student-hero .auth-logo{background-position:50%;grid-area:1/1/span 2;place-self:center;width:min(286px,100%);height:87px;margin:0}.student-language-picker{background:#f8fbff;border:1px solid #d7e2f0;border-radius:999px;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;width:max-content;max-width:100%;padding:6px;display:flex}.student-language-picker>span{color:#60758c;text-transform:uppercase;padding:0 6px;font-size:11px;font-weight:900}.student-language-picker div{flex-wrap:wrap;gap:4px;display:flex}.student-language-picker a{min-height:30px;color:var(--blue);border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:12px;font-weight:900;text-decoration:none;display:inline-flex}.student-language-picker a.active{background:var(--blue);color:#fff}.student-language-picker a:not(.active):hover{background:#eef5ff}.student-hero-copy{grid-column:2;align-self:end;min-width:0}.student-course-tabs{background:0 0;border:0;border-radius:0;flex-wrap:wrap;grid-column:2;align-items:center;gap:8px;min-height:36px;padding:0;display:flex}.student-course-tabs a{min-height:34px;color:var(--blue);background:#fff;border:1px solid #c8d6ea;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-size:12px;font-weight:900;text-decoration:none;display:inline-flex;box-shadow:0 8px 18px #06398e0d}.student-course-tabs a.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 10px 22px #06398e26}.student-course-tabs a:not(.active):hover{background:#eef5ff}.student-hero h1{max-width:100%;color:var(--blue);overflow-wrap:anywhere;margin:0;font-size:clamp(32px,4vw,42px);line-height:1.05}.student-hero p{color:#24415f;max-width:620px;margin:10px 0 0;font-size:18px;line-height:1.35}.student-hero .auth-kicker{width:max-content;max-width:100%;color:var(--green);margin:0 0 6px;font-size:13px;line-height:1.2}.student-room-button{background:var(--green);color:#fff;letter-spacing:.01em;white-space:nowrap;border-radius:8px;grid-column:1;justify-content:center;align-self:end;align-items:center;min-height:52px;padding:0 22px;font-size:15px;font-weight:900;text-decoration:none;display:inline-flex;box-shadow:0 14px 26px #078c3e26}.student-room-button:hover{background:#067a37;transform:translateY(-1px)}.student-room-button.is-disabled{cursor:not-allowed;background:#b42318;box-shadow:0 10px 22px #b4231824}.student-room-button.is-warning{background:#b42318;box-shadow:0 10px 22px #b4231824}.student-room-button.is-warning:hover{background:#912018}.student-flashcard-button{min-height:52px;color:var(--blue);white-space:nowrap;background:#fff;border:1px solid #c8d6ea;border-radius:8px;grid-column:2;justify-content:space-between;align-self:end;align-items:center;gap:12px;padding:0 14px 0 16px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex;box-shadow:0 10px 22px #06398e10}:is(.student-hero:not(:has(.student-flashcard-button))>.student-room-button,.student-hero:not(:has(.student-room-button))>.student-flashcard-button){grid-column:1/-1}.student-flashcard-button:hover{border-color:var(--blue);background:#f4f8ff;transform:translateY(-1px)}.student-flashcard-button span{color:#24415f;background:#eef5ff;border-radius:999px;justify-content:center;align-items:center;min-height:28px;padding:0 10px;font-size:11px;font-weight:900;line-height:1;display:inline-flex}.student-games-button{min-height:52px;color:var(--blue);white-space:nowrap;background:#fff;border:1px solid #c8d6ea;border-radius:8px;grid-column:1/-1;justify-content:space-between;align-self:end;align-items:center;gap:12px;padding:0 14px 0 16px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex;box-shadow:0 10px 22px #06398e10}.student-games-button:hover{border-color:var(--blue);background:#f4f8ff;transform:translateY(-1px)}.student-games-button span{color:#8a5b00;background:#fff6df;border-radius:999px;justify-content:center;align-items:center;min-height:28px;padding:0 10px;font-size:11px;font-weight:900;line-height:1;display:inline-flex}.payment-block-card{color:#7a271a;background:#fff3f2;border:1px solid #f04438;border-radius:8px;grid-template-columns:auto minmax(0,1fr);gap:10px 12px;padding:14px;display:grid;box-shadow:0 12px 28px #b4231814}.payment-block-icon{color:#fff;background:#d92d20;border-radius:999px;justify-content:center;align-items:center;width:34px;height:34px;font-size:22px;font-weight:1000;line-height:1;display:inline-flex}.payment-block-eyebrow{color:#b42318;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px;font-size:11px;font-weight:1000;display:block}.payment-block-card strong{color:#912018;font-size:18px;line-height:1.15;display:block}.payment-block-card p{color:#7a271a;margin:5px 0 0;font-size:14px;font-weight:900;line-height:1.35}.payment-block-card small{color:#912018;margin-top:5px;font-size:12px;font-weight:900;line-height:1.35;display:block}.student-room-blocked{background:linear-gradient(135deg,#fff8f7 0%,#fff0ee 100%);grid-column:1/-1;grid-template-columns:auto minmax(0,1fr) minmax(210px,auto);align-self:stretch;align-items:center;gap:12px 16px;max-width:none;padding:16px}.student-room-blocked .student-room-button{text-align:center;grid-column:auto;align-self:center;width:auto;min-height:46px;padding-inline:20px}.student-material-blocked{place-items:center;min-height:100vh;display:grid}.student-material-blocked .payment-block-card{max-width:520px}.student-material-blocked .student-room-button{grid-column:1/-1;justify-self:stretch}.student-dashboard{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-bottom:14px;display:grid}.student-dashboard article{background:#fff;border:1px solid #d7e2f0;border-radius:8px;gap:7px;padding:16px;display:grid;box-shadow:0 12px 28px #06398e10}.student-dashboard span{color:#60758c;text-transform:uppercase;font-size:12px;font-weight:900}.student-dashboard strong{color:var(--blue);word-break:break-word;font-size:20px;line-height:1.15}.student-dashboard em{color:#9a5b00;font-size:13px;font-style:normal;font-weight:900}.student-dashboard em.is-paid{color:#0b7734}.student-dashboard em.is-overdue{color:#b42318}.student-payment-box a{color:var(--blue);font-size:15px;font-weight:900;text-decoration:none}.student-payment-box .student-payment-link{background:var(--green);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:max-content;min-height:38px;padding:0 14px;display:inline-flex;box-shadow:0 10px 22px #078c3e24}.student-payment-qr-trigger{cursor:pointer;background:0 0;border:0;width:max-content;max-width:100%;padding:0}.student-payment-qr{aspect-ratio:1;object-fit:contain;background:#fff;border:1px solid #d7e2f0;border-radius:8px;width:150px;max-width:100%;padding:8px}.student-payment-qr-overlay{z-index:80;background:#061b33b8;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.student-payment-qr-modal{background:#fff;border-radius:8px;gap:14px;width:min(92vw,520px);max-height:92vh;padding:16px;display:grid;overflow:auto;box-shadow:0 24px 70px #001a3f59}.student-payment-qr-modal header{justify-content:space-between;align-items:center;gap:12px;display:flex}.student-payment-qr-modal header strong{color:var(--blue);font-size:18px;line-height:1.2}.student-payment-qr-modal button{color:#0f4f98;cursor:pointer;background:#fff;border:1px solid #adc4e2;border-radius:8px;min-height:38px;padding:0 12px;font-size:13px;font-weight:900}.student-payment-qr-large{aspect-ratio:1;object-fit:contain;background:#fff;border:1px solid #d7e2f0;border-radius:8px;width:100%;max-height:min(62vh,520px);padding:10px}.student-payment-qr-download{background:var(--green);border-radius:8px;justify-content:center;align-items:center;min-height:42px;font-size:15px;font-weight:900;text-decoration:none;display:inline-flex;box-shadow:0 10px 22px #078c3e24;color:#fff!important}.student-info-card{background:linear-gradient(#fbfffd 0%,#f2fbf5 100%);border:1px solid #cfe4d7;border-radius:8px;gap:12px;margin-bottom:14px;padding:18px 20px;display:grid;box-shadow:0 12px 28px #078c3e12}.student-info-card h2{color:var(--blue);margin:0;font-size:22px;line-height:1.15}.student-info-card ul{color:#40536a;gap:8px;margin:0;padding-left:20px;font-size:15px;line-height:1.42;display:grid}.student-info-card li::marker{color:var(--green)}.student-course-picker{background:#f8fbff;border:1px solid #c8d6ea;border-radius:8px;gap:8px;padding:14px;display:grid}.student-course-picker>span{color:#24415f;text-transform:uppercase;font-size:13px;font-weight:900}.student-course-picker p{color:#60758c;margin:0;font-size:12px;font-weight:800;line-height:1.35}.student-course-picker-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.student-course-checkbox{margin:0}.student-course-access-grid{gap:14px;display:grid}.student-class-materials-actions{background:#eff7f2;border:1px solid #9bd8ad;border-radius:8px;gap:10px;padding:14px;display:grid}.student-class-materials-actions p{color:#345946;margin:0;font-size:13px;font-weight:800;line-height:1.35}.student-class-materials-actions .secondary-button{margin-top:0}.student-regenerate-form{justify-content:flex-start;margin-top:12px;display:flex}.student-regenerate-form .secondary-button{width:100%;min-width:0}.student-modules{gap:18px;display:grid}.student-module{background:#fff;border:1px solid #d7e2f0;border-radius:8px;padding:20px;box-shadow:0 12px 28px #06398e14}.student-module-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.student-module-head h2{color:var(--blue);margin:0;font-size:24px;line-height:1.12}.student-module-head p{color:#40536a;margin:6px 0 0;font-size:15px;line-height:1.35}.student-module-head span{color:var(--green);background:#eff7f2;border-radius:999px;flex:none;padding:8px 12px;font-size:13px;font-weight:900}.agenda-page .calendar-sync-actions{grid-template-columns:auto auto minmax(280px,1fr);align-items:stretch;gap:10px;display:grid}.agenda-page .calendar-sync-actions a,.agenda-page .calendar-sync-upload button{color:#0f4f98;cursor:pointer;background:#fff;border:1px solid #adc4e2;border-radius:8px;justify-content:center;align-items:center;min-height:40px;padding:0 12px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex;box-shadow:0 1px 2px #06398e0a}.calendar-sync-actions a:first-child{color:#fff;background:#0f4f98;border-color:#8fb0d7}.agenda-page .calendar-sync-actions a:hover,.agenda-page .calendar-sync-upload button:hover{color:#0b3266;background:#eef5ff;border-color:#0f4f98}.calendar-sync-actions a:first-child:hover{color:#fff;background:#0b3f7f}.agenda-page .calendar-sync-upload{background:#f8fbff;border:1px solid #d5e4f6;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding:10px 12px;display:grid}.agenda-page .calendar-sync-upload label{color:#24415f;gap:6px;font-size:12px;font-weight:900;display:grid}.agenda-page .calendar-sync-upload label span{font-size:12px;line-height:1.1}.agenda-page .calendar-sync-upload input[type=file]{color:#24415f;cursor:pointer;background:#fbfdff;border:1px solid #bdd0e8;border-radius:8px;width:100%;min-height:40px;padding:6px 0 6px 6px;font-size:12px;font-weight:800;box-shadow:0 1px 2px #06398e08}.agenda-page .calendar-sync-upload input[type=file]::file-selector-button{color:#0f4f98;cursor:pointer;background:#fff;border:1px solid #8fb0d7;border-radius:6px;min-height:30px;margin-right:10px;padding:0 10px;font-size:12px;font-weight:900}.agenda-page .calendar-sync-upload input[type=file]::file-selector-button:hover{color:#0b3266;background:#eef5ff;border-color:#0f4f98}.agenda-page .calendar-sync-upload input[type=file]::-webkit-file-upload-button{color:#0f4f98;cursor:pointer;background:#fff;border:1px solid #8fb0d7;border-radius:6px;min-height:30px;margin-right:10px;padding:0 10px;font-size:12px;font-weight:900}.agenda-page .calendar-sync-upload button{min-width:130px}.student-lessons{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.student-history-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.student-history-grid>div{background:#f8fbff;border:1px solid #e2e8f0;border-radius:8px;padding:12px}.student-history-grid h3{color:var(--blue);margin:0 0 10px;font-size:16px}.student-history-grid p{color:#40536a;gap:3px;margin:0 0 9px;font-size:13px;line-height:1.25;display:grid}.student-history-grid strong{color:#111827}.student-schedule-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:12px}.student-history-only{grid-template-columns:1fr}.student-slot-select-label{color:#24415f;gap:6px;margin-top:10px;font-size:13px;font-weight:900;display:grid}.student-slot-select{color:#111827;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;width:100%;min-height:42px;padding:0 10px;font-size:14px}.student-slot-select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.student-calendar{background:#fff;border:1px solid #d7e2f0;border-radius:10px;gap:9px;margin-top:10px;padding:10px;display:grid}.student-calendar-head{grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:8px;display:grid}.student-calendar-head strong{text-align:center;color:var(--blue);text-transform:capitalize;font-size:14px}.student-calendar-head button{height:32px;color:var(--blue);cursor:pointer;background:#f8fbff;border:1px solid #c8d6ea;border-radius:7px;font-size:20px;line-height:1}.student-calendar-head button:hover{border-color:var(--blue);background:#eef5ff}.student-calendar-weekdays,.student-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.student-calendar-weekdays span{color:#60758c;text-align:center;text-transform:uppercase;font-size:10px;font-weight:900}.student-calendar-grid button,.student-calendar-grid .is-empty{min-height:36px}.student-calendar-grid button{color:#24415f;cursor:pointer;background:#fff;border:1px solid #d7e2f0;border-radius:7px;place-items:center;gap:0;padding:3px;font-size:13px;font-weight:900;display:grid}.student-calendar-grid button:hover:not(:disabled){border-color:var(--blue);background:#eef5ff}.student-calendar-grid button:disabled{color:#b7c3d0;cursor:not-allowed;background:#f8fbff;border-color:#0000}.student-calendar-grid button.is-selected{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 4px 10px #06398e24}.student-calendar-grid button small{color:#16a34a;font-size:11px;line-height:8px}.student-calendar-grid button.is-selected small{color:#fff}.student-time-slots{grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:7px;margin-top:12px;display:grid}.student-time-slots strong,.student-time-slots p{color:#24415f;grid-column:1/-1;margin:0;font-size:12px;font-weight:900}.student-time-slots p{color:#60758c;font-weight:800}.student-time-slots button{min-height:38px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:7px;font-size:13px;font-weight:900}.student-time-slots button:hover,.student-time-slots button.is-selected{border-color:var(--blue);background:#eaf2ff;box-shadow:0 0 0 2px #06398e12}.student-slot-overlay{z-index:100;background:#0b172acc;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.student-slot-overlay-card{background:#fff;border:1px solid #d7e2f0;border-radius:12px;width:min(100%,420px);padding:18px;box-shadow:0 24px 60px #0006}.student-slot-overlay-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.student-slot-overlay-head h3{color:var(--blue);margin:0;font-size:20px;line-height:1.15}.student-slot-overlay-head button{width:34px;height:34px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;font-size:20px}.student-slot-overlay-card>p{color:#40536a;margin:0 0 10px;font-size:13px;font-weight:900}.student-slot-overlay .student-time-slots{margin-top:0}.student-slot-overlay .student-time-slots>span{color:#60758c;grid-column:1/-1;font-size:13px;font-weight:800}.student-book-button{cursor:pointer;border:0;margin-top:10px}.student-book-button:disabled{cursor:not-allowed;background:#9aa9bb}.student-booking-feedback{color:#24415f;margin:10px 0 0;font-size:13px;font-weight:900;line-height:1.35}.student-schedule-timezone-note{color:#526981;margin:0 0 7px;font-size:12px;font-weight:900;line-height:1.3}.student-lesson-card{min-height:132px;color:inherit;background:#fff;border:1px solid #d7e2f0;border-radius:8px;gap:12px;padding:18px;text-decoration:none;display:grid;box-shadow:0 12px 28px #06398e14}.student-lesson-card:hover{border-color:var(--blue);transform:translateY(-1px)}.student-lesson-card span{width:max-content;color:var(--green);text-transform:uppercase;background:#eff7f2;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.student-lesson-card strong{color:var(--blue);font-size:18px;line-height:1.2}@media (max-width:620px){.auth-shell{padding:20px}.login-panel{padding:22px}.login-panel h1,.courses-title h1{font-size:30px}.courses-header{flex-direction:column;align-items:flex-start;margin-bottom:34px}.auth-logo{width:190px}.brand-logo .brand-mark{width:68px;height:68px}.brand-logo .brand-text{width:210px;height:78px}.brand-logo.cover-logo .brand-mark{width:82px;height:82px}.brand-logo.cover-logo .brand-text{width:252px;height:94px}.admin-grid{grid-template-columns:1fr}.student-link-panel{position:static}.student-shell{width:100%}.student-hero{grid-template-columns:1fr;padding:18px}.student-hero .auth-logo{height:79px}.student-language-picker{border-radius:8px;width:100%}.student-language-picker div{grid-template-columns:repeat(3,1fr);width:100%;display:grid}.student-room-button{width:100%}.student-flashcard-button,.student-games-button{justify-self:stretch;width:100%}.student-room-blocked{max-width:none}.student-room-blocked .student-room-button{grid-column:1/-1;width:100%}.student-finance-card{grid-template-columns:1fr}.student-finance-grid{grid-column:auto;grid-template-columns:1fr}.student-finance-card>.student-finance-summary{grid-template-columns:1fr}.student-chat-modal{padding:16px}.student-chat-thread{max-height:48vh}.student-chat-message{max-width:100%}.meeting-chat-overlay{padding:10px 10px calc(88px + env(safe-area-inset-bottom));align-items:end}.meeting-chat-overlay .student-chat-modal{border-radius:14px;width:100%;max-height:calc(100dvh - 108px);padding:12px}.meeting-chat-overlay .student-chat-header{gap:10px;padding-bottom:10px}.meeting-chat-overlay .student-chat-header h2{font-size:17px}.meeting-chat-overlay .student-chat-header p{display:none}.meeting-chat-overlay .student-chat-thread{max-height:none}.meeting-chat-overlay .student-chat-form textarea{min-height:72px}.student-finance-card>header{flex-direction:column}.student-finance-card>header strong{width:max-content}.student-finance-note,.student-finance-qr{grid-area:auto}.student-finance-qr{max-width:100%}.student-payment-entry-row,.payment-block-card{grid-template-columns:1fr}.payment-block-icon{width:32px;height:32px;font-size:20px}.student-hero h1{font-size:30px}.student-dashboard{grid-template-columns:1fr}.student-module-head{flex-direction:column}.agenda-page .calendar-sync-actions{grid-template-columns:1fr}.agenda-page .calendar-sync-actions a{width:100%}.agenda-page .calendar-sync-upload{grid-template-columns:1fr}.agenda-page .calendar-sync-upload button,.agenda-page .calendar-sync-upload input[type=file]{width:100%}.agenda-page .calendar-sync-upload input[type=file]::file-selector-button{width:100%;margin:0 0 8px}.agenda-page .calendar-sync-upload input[type=file]::file-selector-button{width:100%;margin:0 0 8px}.calendar-sync-actions{justify-content:flex-start;width:100%}.calendar-sync-actions a{flex:150px}.calendar-sync-upload{width:100%;min-width:0}.calendar-sync-upload button,.calendar-sync-upload input[type=file]{width:100%}.student-history-grid,.student-group-tools{grid-template-columns:1fr}.student-list-row{grid-template-columns:auto 1fr}.student-list-row:not(.is-grouping){grid-template-columns:1fr auto}.student-list-row .delete-student-button{grid-column:1/-1}.student-list-row:not(.is-grouping) .delete-student-button{grid-column:auto}.billing-currency-fields,.student-list-filters,.student-weekly-grid{grid-template-columns:1fr}.student-weekly-day{grid-template-columns:80px minmax(0,1fr)}.student-weekly-day-head{align-items:center}.weekly-schedule-row{grid-template-columns:1fr}.weekly-schedule-interval{grid-template-columns:minmax(0,1fr) 34px;gap:6px;display:grid}.weekly-schedule-time-fields{grid-template-columns:1fr 1fr;gap:6px}.weekly-schedule-time-fields span:first-child,.weekly-schedule-time-fields select:nth-child(2){grid-column:1}.weekly-schedule-time-fields span:nth-child(3){grid-area:1/2}.weekly-schedule-time-fields select:nth-child(4){grid-column:2}.confirm-actions{flex-direction:column}.confirm-actions button{width:100%}.flashcard-confirm-actions{flex-direction:column}.flashcard-confirm-actions form,.flashcard-confirm-actions button{width:100%}.flashcard-confirm-actions .danger-button{width:100%;min-width:0}}.brand-logo{background:url(/assets/brand_lingoup.png) 50%/contain no-repeat;width:330px;height:100px;display:inline-block}.brand-logo img{display:none!important}.brand-logo.logo,.brand-logo.auth-logo{width:330px;height:100px}.brand-logo.cover-logo{width:370px;height:112px}.page-header .brand-logo{width:260px;height:79px}.certificate .brand-logo{width:230px;height:70px}.courses-header .brand-logo.auth-logo,.student-hero .brand-logo.auth-logo{width:330px;height:100px}@media (max-width:620px){.brand-logo,.brand-logo.logo,.brand-logo.auth-logo{width:260px;height:79px}.brand-logo.cover-logo{width:290px;height:88px}.page-header .brand-logo{width:220px;height:67px}}.cover-page{color:var(--ink);background:#fff}.cover-page:before{background:var(--blue);border-bottom-left-radius:82px;width:212px;height:138px}.cover-page:after{display:none}.cover-hero{background:#fff;height:515px;padding:34px 52px 0;position:relative}.cover-hero:after{display:none}.cover-logo{z-index:3;margin-left:0;position:relative}.aula-num{color:#fff;text-align:center;width:168px;font-size:24px;line-height:1.05;top:26px;right:42px}.aula-num strong{margin-top:8px;font-size:68px;line-height:.88;display:block}.cover-icon{display:none}.cover-page h1{border:3px solid var(--blue);border-left:12px solid var(--green);border-right:12px solid var(--green);width:min(610px,100%);color:var(--blue);text-shadow:none;background:linear-gradient(#fff 0%,#f3fff7 100%);border-radius:18px;margin:68px auto 0;padding:22px 30px 24px;font-size:44px;line-height:1.05;box-shadow:0 16px 34px #06398e1f}.cover-page h1 span{color:var(--green);text-shadow:none;margin-top:8px;font-size:38px;line-height:1.08;display:block}.cover-bottom{background:#fff;height:485px;padding:28px 0 0 54px;position:relative}.cover-bottom:before{display:none}.cover-bottom .card{width:410px;min-height:150px;color:var(--ink);z-index:4;background:#fff;border:1.5px solid #81c69d;border-radius:8px;padding:18px 20px;position:relative;box-shadow:0 10px 24px #06398e18}.cover-bottom .card h2{color:var(--green);margin-bottom:10px;font-size:18px}.cover-bottom .checks li{margin:7px 0;font-size:14px}.cover-bottom .checks li:before{width:18px;height:18px;font-size:12px}.cover-mascot{content:url(/assets/tucano_limpio.png);z-index:2;width:330px;bottom:58px;right:48px}.cover-callout{background:var(--blue);z-index:5;border-radius:8px;width:410px;padding:15px 20px;font-size:18px;line-height:1.25;bottom:144px;left:54px;box-shadow:0 10px 22px #06398e24}.cover-page footer{bottom:16px}@media (max-width:620px){body{overflow-x:hidden}.book{width:100%;padding:10px 0 24px}.course-nav{justify-content:flex-start;gap:6px;padding:8px;overflow-x:auto}.course-nav.compact{flex-wrap:nowrap}.course-nav a,.course-nav span{min-width:max-content;height:32px;padding:0 11px;font-size:12px}.page{width:100%;min-height:0;box-shadow:none;border-radius:0;margin:0 auto 14px;padding:22px 14px 70px;overflow:hidden}.page:before{border-bottom-left-radius:54px;width:124px;height:66px}.page:after{border-top-left-radius:70% 28px;border-top-right-radius:70% 28px;height:48px}.page-header{height:52px;min-height:52px;margin-bottom:12px;position:relative}.page-header .brand-logo{width:154px;height:47px}.page-header span:not(.brand-logo){background:var(--blue);white-space:nowrap;border-radius:0 0 0 16px;width:auto;min-width:0;height:28px;margin:0;padding:0 9px;font-size:11px;line-height:1;position:absolute;top:0;right:0}footer{font-size:12px;bottom:12px;left:14px;right:14px}footer b{flex-basis:26px;width:26px;height:26px}.banner{width:calc(100% - 12px);box-shadow:5px 5px 0 var(--blue);border-radius:10px;margin:8px auto 18px;padding:13px 16px;font-size:24px}.banner.small{max-width:none;padding-left:16px;font-size:23px}h2,.lesson-content h2{font-size:21px}h3{font-size:17px}p,.lesson-content p{font-size:16px;line-height:1.42}.intro{font-size:17px;line-height:1.35}.two-col,.steps,.media-note{grid-template-columns:1fr;gap:12px}.columns{columns:1}.card,.practice,.story,.readable-list{border-radius:10px;margin:12px 0;padding:14px 15px}.checks li,.practice li{font-size:15px;line-height:1.35}.checks li:before{width:20px;height:20px;margin-right:7px;font-size:12px}.callout{border-radius:10px;padding:14px 15px;font-size:18px}.callout.big{font-size:22px}.alert{font-size:18px}.table{border-radius:10px;width:100%;max-width:100%;display:block;overflow-x:auto}.table th,.table td,.readable-table th,.readable-table td{padding:10px 11px;font-size:14px;line-height:1.3}.transform td:nth-child(2){font-size:18px}.phrases td:first-child{font-size:16px}.icon-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}.icon-row div{font-size:14px}.mascot,.mascot-mini{width:min(210px,72vw);margin-left:auto;margin-right:auto}.practice span{float:none;width:100%;margin-top:8px;display:block}.story p{font-size:17px}.certificate{padding:18px 14px}.certificate h2{font-size:28px}.certificate h3{font-size:19px}.certificate .brand-logo{width:180px;height:55px}.student-list-row{align-items:stretch}.student-list-row.is-grouping{grid-template-columns:auto minmax(0,1fr) auto}.student-list-row:not(.is-grouping){grid-template-columns:minmax(0,1fr) auto}.student-list a{align-content:center;justify-items:start;gap:4px;width:100%;min-width:0;display:grid}.student-list strong{white-space:normal;overflow-wrap:normal;word-break:normal;-webkit-hyphens:auto;hyphens:auto;text-wrap:pretty;max-width:100%;font-size:15px;line-height:1.2;display:block}.student-list span{white-space:normal;overflow-wrap:normal;word-break:normal;text-wrap:pretty;max-width:100%;font-size:12px;line-height:1.25;display:block}.cover-page{min-height:0;padding-bottom:58px}.cover-page:before{border-bottom-left-radius:50px;width:124px;height:86px}.cover-page:after{height:48px;display:block}.cover-hero{height:auto;min-height:338px;padding:22px 14px 20px}.cover-logo,.brand-logo.cover-logo{width:182px;height:55px;margin-left:0}.aula-num{width:86px;font-size:13px;top:15px;right:12px}.aula-num strong{margin-top:5px;font-size:39px}.cover-page h1{overflow-wrap:anywhere;border-width:3px 8px;border-radius:12px;width:100%;margin:86px auto 0;padding:18px 12px;font-size:clamp(24px,9vw,34px);line-height:1.05}.cover-page h1 span{font-size:clamp(22px,8vw,30px);line-height:1.08}.cover-bottom{height:auto;min-height:260px;padding:12px 14px 24px}.cover-bottom .card{width:100%;min-height:0;padding:14px 15px}.cover-mascot{width:min(190px,58vw);margin:8px auto 0;position:relative;bottom:auto;right:auto}.cover-callout{width:100%;margin:12px 0 0;padding:13px 15px;font-size:16px;position:relative;bottom:auto;left:auto}}.admin-top-menu{z-index:60;justify-content:flex-start;margin:0 0 18px;display:flex;position:sticky;top:10px}.menu-toggle{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);height:44px;color:var(--blue);cursor:pointer;background:#ffffffd9;border:1px solid #c8d6ea;border-radius:12px;align-items:center;gap:10px;padding:0 16px;font-size:14px;font-weight:900;display:inline-flex;box-shadow:0 8px 22px #06398e1a}.menu-icon{font-size:18px;line-height:1}.menu-panel{background:#fff;border:1px solid #c8d6ea;border-radius:12px;gap:6px;min-width:260px;padding:10px;display:grid;position:absolute;top:52px;left:0;box-shadow:0 18px 36px #06398e24}.menu-panel a{min-height:40px;color:var(--blue);border-radius:8px;align-items:center;gap:10px;padding:0 12px;font-size:14px;font-weight:900;text-decoration:none;display:flex}.menu-panel a:hover{background:#eef5ff}.menu-item-icon{stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 18px;width:18px;height:18px}.teacher-list{gap:12px;display:grid}.teacher-card{background:#fff;border:1px solid #d7e2f0;border-radius:10px;padding:14px;display:block}.teacher-card-main{gap:12px;width:100%;display:grid}.teacher-card-summary{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.teacher-card-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.teacher-card strong{color:var(--blue);font-size:17px;display:block}.teacher-card p{color:#40536a;margin:6px 0 0;font-size:14px;line-height:1.35}.teacher-edit-button{min-height:38px;color:var(--blue);cursor:pointer;background:#f8fbff;border:1px solid #c8d6ea;border-radius:8px;justify-content:center;align-items:center;padding:0 16px;font-size:13px;font-weight:900;display:inline-flex}.teacher-edit-toggle{opacity:0;pointer-events:none;position:absolute}.teacher-edit-form{z-index:240;background:#fff;border:1px solid #d7e2f0;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:min(760px,100vw - 32px);max-height:calc(100vh - 32px);padding:56px 20px 20px;display:none;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 22px 60px #0b172a40,0 0 0 100vmax #0b172acc}.teacher-edit-toggle:checked+.teacher-edit-form{display:grid}.teacher-edit-modal-head{background:#fff;border-bottom:1px solid #edf2f8;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex;position:absolute;top:0;left:0;right:0}.teacher-edit-modal-head h2{color:var(--blue);margin:0;font-size:19px}.teacher-edit-close{min-height:32px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:7px;padding:0 12px;justify-content:center!important;align-items:center!important;font-size:12px!important;font-weight:900!important;display:inline-flex!important}.teacher-availability-picker{grid-column:1/-1}.teacher-course-access{background:#f8fbff;border:1px solid #d7e2f0;border-radius:10px;grid-column:1/-1;gap:10px;padding:12px;display:grid}.teacher-course-access legend{color:var(--blue);padding:0 6px;font-size:13px;font-weight:900}.teacher-course-access p{color:#526981;margin:0;font-size:12px;font-weight:700}.teacher-course-access-list{gap:8px;max-height:220px;display:grid;overflow:auto}.teacher-course-access-list label{color:#24415f;align-items:flex-start;gap:8px;font-size:13px;font-weight:800;display:flex}.teacher-course-access-list input{accent-color:var(--blue);margin-top:2px}.teacher-course-search{width:100%;color:#24415f!important;background:#fff!important;border:1px solid #d7e2f0!important;border-radius:7px!important;height:34px!important;padding:0 10px!important;font-size:12px!important}.teacher-course-option{color:#24415f;background:#fff;border-radius:7px;min-height:30px;padding:6px 8px;grid-template-columns:none!important;align-items:center!important;gap:8px!important;font-size:12px!important;font-weight:800!important;display:flex!important}.teacher-course-option:hover{background:#eef5ff}.teacher-course-option input{min-width:16px;accent-color:var(--blue);width:16px!important;height:16px!important;margin:0!important;padding:0!important}.teacher-course-option span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.teacher-course-empty{color:#687b91;padding:4px 2px;font-size:12px;font-weight:700}.weekly-schedule-toggle{width:100%;color:var(--blue);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;padding:0;display:flex}.weekly-schedule-toggle small{color:#60758c;font-size:11px;font-weight:800}.weekly-schedule-content{gap:10px;margin-top:6px;display:grid}.teacher-edit-form label{color:#24415f;gap:5px;font-size:12px;font-weight:900;display:grid}.teacher-edit-form input{color:#111827;background:#fff;border:1px solid #c8d6ea;border-radius:8px;height:38px;padding:0 10px}.password-field{width:100%;display:block;position:relative}.password-field input{width:100%;padding-right:42px!important}.password-visibility-button{cursor:pointer;width:28px;height:28px;top:50%;right:8px;transform:translateY(-50%);color:#60758c!important;background:0 0!important;border:0!important;border-radius:6px!important;min-height:28px!important;padding:4px!important;position:absolute!important}.password-visibility-button:hover{color:var(--blue)!important;background:#eef5ff!important}.password-visibility-button svg{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:18px;height:18px;display:block}.teacher-edit-form button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;grid-column:1/-1;min-height:38px;font-size:13px;font-weight:900}.teacher-edit-form .weekly-schedule-toggle{width:100%;min-height:30px;color:var(--blue);background:0 0;border:0;border-radius:6px;grid-column:auto;justify-content:space-between;align-items:center;padding:0 4px;font-size:13px;font-weight:900;display:flex}.teacher-edit-form .weekly-schedule-toggle:hover{background:#eef5ff}.teacher-edit-form .weekly-schedule-toggle small{color:#60758c;font-size:11px;font-weight:800}.agenda-page{padding-top:14px;padding-bottom:14px}.agenda-page .admin-top-menu,.agenda-page .courses-title{margin-bottom:8px}.agenda-page .courses-title h1{font-size:34px}.agenda-page .agenda-head{margin-bottom:0}.agenda-page .agenda-head h3{font-size:24px}.agenda-page .agenda-filter-bar{margin-bottom:8px}.agenda-page .admin-panel{padding:14px}.agenda-page .admin-panel h2{margin-bottom:10px;font-size:20px}.agenda-page .agenda-settings-panel{background:#fff;border-color:#c5d7ee;padding:18px;box-shadow:0 12px 28px #06398e12}.agenda-page .agenda-settings-panel h2{margin:2px 0 0;font-size:22px;line-height:1.15}.agenda-page .agenda-settings-panel .admin-form{gap:12px}.agenda-page .agenda-settings-panel .admin-form>label{gap:8px}.agenda-settings-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;list-style:none;display:flex}.agenda-settings-summary::-webkit-details-marker{display:none}.agenda-settings-summary:after{content:"";border-bottom:2px solid #174a86;border-right:2px solid #174a86;width:10px;height:10px;transition:transform .18s;transform:rotate(45deg)translateY(-2px)}.agenda-settings-panel[open] .agenda-settings-summary:after{transform:rotate(225deg)translate(-1px,-1px)}.agenda-settings-summary span{color:#174a86;text-transform:uppercase;background:#eef5ff;border:1px solid #b9cfeb;border-radius:999px;width:max-content;padding:6px 8px;font-size:11px;font-weight:900;line-height:1;display:inline-flex}.agenda-settings-content{border-top:1px solid #e4edf8;gap:14px;margin-top:14px;padding-top:14px;display:grid}.availability-save-row{border-top:1px solid #e4edf8;justify-content:flex-end;padding-top:12px;display:flex}.availability-save-row button{width:auto;min-width:190px}.google-calendar-import-form{border-top:1px solid #e4edf8;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;margin-top:14px;padding-top:14px;display:grid}.google-calendar-import-form label{color:#24415f;gap:7px;font-size:13px;font-weight:900;display:grid}.google-calendar-import-form input{color:#16243a;background:#fbfdff;border:1px solid #bdd0e8;border-radius:8px;outline:none;width:100%;min-height:42px;padding:0 12px;font-size:14px;font-weight:800}.google-calendar-import-form input:focus{border-color:#164d94;box-shadow:0 0 0 3px #06398e24}.google-calendar-import-form button{color:#0f4f98;cursor:pointer;background:#fff;border:1px solid #8fb0d7;border-radius:8px;min-height:42px;padding:0 14px;font-size:13px;font-weight:900}.google-calendar-import-form button:hover{background:#eef5ff;border-color:#0f4f98}.google-calendar-connect{background:#f8fbff;border:1px solid #d5e4f6;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.google-calendar-connect strong{color:#193b62;font-size:14px;font-weight:900;display:block}.google-calendar-connect p{color:#526b88;margin:3px 0 0;font-size:13px;font-weight:800;line-height:1.35}.google-calendar-connect>a{color:#0f4f98;white-space:nowrap;background:#fff;border:1px solid #8fb0d7;border-radius:8px;justify-content:center;align-items:center;min-height:40px;padding:0 14px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.google-calendar-connect>a:hover{background:#eef5ff;border-color:#0f4f98}.google-calendar-connect .google-calendar-import-message{grid-column:1/-1}.google-calendar-import-message{border-radius:8px;grid-column:1/-1;margin:0;padding:10px 12px;font-weight:900;font-size:13px!important;line-height:1.35!important}.google-calendar-import-message.is-success{color:#0b7734;background:#f4fff7;border:1px solid #9bd8ad}.google-calendar-import-message.is-error{color:#9f1d14;background:#fff8f7;border:1px solid #f1b4ad}.agenda-layout{display:block}.agenda-calendar-head{gap:10px;margin-bottom:12px;display:grid}.agenda-calendar-head h2{margin:0!important}.agenda-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.agenda-head h3{color:var(--blue);text-align:center;margin:0;font-size:28px}.agenda-head .logout-link,.agenda-filter-bar .logout-link{color:#0f4f98;background:#fff;border-color:#adc4e2;box-shadow:0 1px 2px #06398e0a}.agenda-head .logout-link:hover,.agenda-filter-bar .logout-link:hover{background:#eef5ff;border-color:#0f4f98}.agenda-filter-bar{background:#fff;border:1px solid #d8e5f4;border-radius:8px;align-items:flex-end;gap:10px;width:max-content;max-width:100%;margin:0 0 14px;padding:10px;display:flex}.agenda-filter-bar label{color:#24415f;gap:6px;font-size:13px;font-weight:900;display:grid}.agenda-filter-bar select{min-width:220px;height:40px;color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fbfdff;border:1px solid #bdd0e8;border-radius:8px;padding:0 10px;font-size:14px;font-weight:800}.agenda-settings-panel{margin-bottom:10px}.agenda-weekdays{grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:8px;display:grid}.agenda-weekdays span{min-height:32px;color:var(--blue);text-transform:uppercase;background:#f7fbff;border:1px solid #d8e5f4;border-radius:8px;place-items:center;font-size:12px;font-weight:900;display:grid}.agenda-grid{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.agenda-day{aspect-ratio:1;background:#fff;border:1px solid #d7e2f0;border-radius:8px;flex-direction:column;gap:6px;padding:6px;display:flex;position:relative;overflow:hidden}.agenda-page .agenda-day{aspect-ratio:auto;height:clamp(78px,16.6667vh - 53px,112px);min-height:0}.agenda-day-clickable{cursor:pointer}.agenda-day-clickable:hover{border-color:#75a5dd;box-shadow:0 8px 18px #06398e18}.agenda-day.empty{background:#f7fbff}.agenda-day header{color:var(--blue);justify-content:space-between;align-items:center;gap:4px;margin:0 0 2px;font-size:12px;font-weight:900;line-height:1;display:flex}.agenda-day-open{width:18px;height:18px;color:var(--blue);cursor:pointer;background:#f0f6ff;border:1px solid #c8d6ea;border-radius:50%;place-items:center;padding:0;font-size:14px;font-weight:900;line-height:1;display:grid;position:absolute;top:4px;right:4px}.agenda-day-open:hover{border-color:var(--blue);background:#e3efff}.agenda-events{gap:2px;display:grid}.agenda-events.compact{align-content:flex-start;min-height:0}.agenda-event-chip{color:#24415f;text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:#f9fcff;border:1px solid #d7e2f0;border-radius:5px;width:100%;min-height:16px;padding:2px 5px;font-size:10px;font-weight:900;line-height:1.05;overflow:hidden}.agenda-event-chip:hover{background:#e8f2ff;border-color:#0f4f98}.agenda-more{color:#5a6f87;text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:1px 2px;font-size:10px;font-weight:900;line-height:1.1;display:block}.agenda-more:hover{color:var(--blue);text-decoration:underline}.agenda-day-events-list{gap:8px;margin-bottom:14px;display:grid}.agenda-day-event-row{text-align:left;cursor:pointer;background:#f9fcff;border:1px solid #d7e2f0;border-radius:8px;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:8px;width:100%;min-height:40px;padding:8px 10px;font-size:14px;font-weight:900;display:grid}.agenda-day-event-row strong{color:inherit}.agenda-day-event-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.agenda-day-event-row:hover{border-color:var(--blue);background:#eef5ff}.tiny-delete{color:#b42318;cursor:pointer;background:#fff5f3;border:1px solid #f1b4ad;border-radius:8px;height:28px;font-size:11px;font-weight:900}.agenda-overlay{z-index:90;background:#0b172acc;justify-content:center;align-items:flex-start;padding:20px;display:flex;position:fixed;inset:0;overflow:auto}.agenda-overlay-card{background:#fff;border:1px solid #d7e2f0;border-radius:12px;width:min(100%,520px);max-height:calc(100vh - 40px);padding:18px;overflow:auto;box-shadow:0 24px 60px #0006}.agenda-overlay-head{justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px;display:flex}.agenda-overlay-head h3{color:var(--blue);margin:0;font-size:22px;line-height:1.1}.agenda-overlay-head button{height:36px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;padding:0 12px;font-size:13px;font-weight:900}.agenda-overlay-content{gap:8px;margin-bottom:14px;display:grid}.agenda-overlay-content p{color:#2e4867;margin:0;font-size:14px;line-height:1.35}.agenda-overlay-content strong{color:#1e3e66}.agenda-color-dot{vertical-align:middle;border:1px solid #c8d6ea;border-radius:50%;width:12px;height:12px;display:inline-block}.agenda-meeting-link{color:var(--blue);font-size:13px;font-weight:900;text-decoration:none}.agenda-meeting-link:hover{text-decoration:underline}.agenda-overlay-form{gap:10px;margin-bottom:10px;display:grid}.agenda-overlay-form label{color:#24415f;gap:5px;font-size:13px;font-weight:900;display:grid}.agenda-overlay-form input,.agenda-overlay-form select{width:100%;min-height:40px;color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;padding:0 10px;font-size:14px}.agenda-overlay-form input:focus,.agenda-overlay-form select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.agenda-overlay-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.agenda-overlay-link-row{color:#2e4867;margin:0 0 12px;font-size:14px;line-height:1.35}.agenda-overlay-link-row strong{color:#1e3e66}.agenda-overlay-delete-trigger{margin-top:4px}.agenda-delete-confirm-actions{justify-content:flex-end;gap:8px;display:flex}.agenda-delete-confirm-actions button{height:34px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;padding:0 10px;font-size:13px;font-weight:900}.agenda-overlay-actions{justify-content:flex-end;display:flex}.agenda-overlay-actions .tiny-delete{height:40px;padding:0 14px}.agenda-confirm-overlay{z-index:95;background:#0b172a99;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.agenda-confirm-card{background:#f3fff6;border:1px solid #9ad8b0;border-radius:10px;gap:8px;width:min(100%,420px);padding:12px;display:grid}.agenda-confirm-card p{color:#1b5c36;margin:0;font-size:13px;font-weight:700;line-height:1.35}.agenda-confirm-card label{color:#234d38;align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.agenda-confirm-card input[type=radio]{width:16px;height:16px}.agenda-confirm-card-danger{background:#fff8f7;border-color:#f1b4ad}.agenda-confirm-card-danger p{color:#7a2e2a}.agenda-confirm-card-danger label{color:#5f2d2a}.agenda-save-confirm-actions{justify-content:flex-end;gap:8px;display:flex}.agenda-save-confirm-actions button{height:34px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;padding:0 10px;font-size:13px;font-weight:900}.agenda-save-confirm-actions .secondary-button{width:auto;height:34px;min-height:34px;margin-top:0;padding:0 12px}@media (max-width:920px){.agenda-layout{display:block}}@media (max-width:620px){.menu-panel{min-width:230px}.teacher-card-summary{flex-direction:column}.teacher-edit-form{grid-template-columns:1fr;width:100%}.agenda-head{flex-direction:column;align-items:flex-start}.agenda-head .logout-link{width:100%}.agenda-filter-bar{flex-direction:column;align-items:stretch}.agenda-filter-bar,.agenda-page .agenda-settings-panel{width:100%}.agenda-filter-bar select{width:100%;min-width:0}.agenda-settings-summary{align-items:flex-start}.availability-save-row button{width:100%}.google-calendar-import-form,.google-calendar-connect{grid-template-columns:1fr}.google-calendar-import-form button,.google-calendar-connect>a{width:100%}.weekly-schedule-row{grid-template-columns:1fr}.weekly-schedule-day{align-items:center}.weekly-schedule-interval{grid-template-columns:minmax(0,1fr) 34px;gap:6px;display:grid}.weekly-schedule-time-fields{grid-template-columns:1fr 1fr;gap:6px}.weekly-schedule-time-fields span:first-child,.weekly-schedule-time-fields select:nth-child(2){grid-column:1}.weekly-schedule-time-fields span:nth-child(3){grid-area:1/2}.weekly-schedule-time-fields select:nth-child(4){grid-column:2}.weekly-schedule-row-actions{justify-content:flex-end}.agenda-overlay-row{grid-template-columns:1fr}.agenda-delete-confirm-actions,.agenda-save-confirm-actions{flex-direction:column}.agenda-page .agenda-day,.agenda-day{aspect-ratio:auto;min-height:64px}.agenda-page .agenda-day{height:auto}.agenda-day.empty{display:none}.agenda-day header{font-size:13px}.agenda-events{gap:4px}.agenda-event-chip{min-height:24px;padding:4px 6px;font-size:11px}.agenda-grid{grid-template-columns:1fr}.agenda-weekdays{display:none}}.finance-page{width:min(100%,1360px);padding-top:24px}.finance-page .courses-title{margin-bottom:12px}.finance-page .courses-title h1{font-size:38px}.finance-bulk-form{gap:16px;display:grid}.finance-actions-bar{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffef;border:1px solid #d7e2f0;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:8px 10px 8px 16px;display:flex;position:sticky;top:10px;box-shadow:0 14px 34px #06398e18}.finance-actions-bar div{gap:2px;display:grid}.finance-actions-bar strong{color:var(--blue);font-size:15px;line-height:1.1}.finance-actions-bar span{color:#5a6f87;font-size:12px;font-weight:900}.finance-actions-bar button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;min-height:42px;padding:0 18px;font-size:14px;font-weight:900;box-shadow:0 10px 24px #06398e24}.finance-actions-bar button[type=button]{color:var(--blue);box-shadow:none;background:#fff;border:1px solid #c8d6ea}.finance-actions-bar button:hover{background:#052f77}.finance-actions-bar button[type=button]:hover{background:#eef5ff}.finance-actions-bar button:disabled{cursor:not-allowed;box-shadow:none;background:#9aa9bb}.action-submit-button{justify-content:center;align-items:center;gap:8px;display:inline-flex}.button-loader{border:2px solid;border-right-color:#0000;border-radius:999px;flex:none;width:15px;height:15px;animation:.7s linear infinite button-loader-spin;display:inline-block}button:has(.button-loader){justify-content:center;align-items:center;gap:8px;display:inline-flex}.pdf-lesson-submit:has(.button-loader){justify-content:center;align-items:center;gap:8px;display:inline-flex}@keyframes button-loader-spin{to{transform:rotate(360deg)}}.finance-metrics{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.finance-metrics article{background:#fff;border:1px solid #d7e2f0;border-radius:8px;min-height:86px;padding:14px;box-shadow:0 12px 28px #06398e10}.finance-metrics span{color:#60758c;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:900;display:block}.finance-metrics strong{color:var(--blue);font-size:20px;line-height:1.12;display:block}.finance-metric-received{background:#f4fff7!important;border-color:#9bd8ad!important}.finance-metric-received strong{color:#0b7734}.finance-metric-pending{background:#fff9e8!important;border-color:#f6c86c!important}.finance-metric-pending strong{color:#9a5b00}.finance-filter-panel{background:#fff;border:1px solid #d7e2f0;border-radius:10px;grid-template-columns:minmax(190px,260px) minmax(260px,1fr) auto auto;align-items:end;gap:12px;padding:14px;display:grid;box-shadow:0 12px 28px #06398e10}.finance-filter-panel label{color:#24415f;gap:6px;font-size:12px;font-weight:900;display:grid}.finance-filter-panel input,.finance-filter-panel select{color:#111827;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;width:100%;height:42px;padding:0 12px;font-size:14px;font-weight:800}.finance-filter-panel input:focus,.finance-filter-panel select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.finance-filter-buttons{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.finance-filter-buttons button{min-height:42px;color:var(--blue);cursor:pointer;background:#f8fbff;border:1px solid #c8d6ea;border-radius:999px;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:900;display:inline-flex}.finance-filter-buttons button:hover{border-color:var(--blue)}.finance-filter-buttons button.active{border-color:var(--blue);background:var(--blue);color:#fff}.finance-filter-buttons span{min-width:24px;height:24px;color:var(--blue);background:#e8eef5;border-radius:999px;place-items:center;padding:0 6px;font-size:11px;font-weight:900;display:grid}.finance-filter-buttons button.active span{color:var(--blue);background:#fff}.finance-filter-panel p{color:#526981;white-space:nowrap;margin:0;font-size:13px;font-weight:800}.finance-filter-panel p strong{color:var(--blue)}.finance-layout{display:block}.finance-sheets{gap:16px;min-width:0;display:grid}.finance-sheet{background:#fff;border:1px solid #d7e2f0;border-radius:8px;overflow:hidden;box-shadow:0 14px 34px #06398e12}.finance-sheet-title{background:#f8fbff;border-bottom:1px solid #d7e2f0;justify-content:space-between;align-items:center;gap:16px;margin:0;padding:16px 18px;display:flex}.finance-sheet-title span{color:#078c3e;text-transform:uppercase;font-size:12px;font-weight:900;display:block}.finance-sheet-title h2{color:var(--blue);margin:3px 0 0;font-size:24px;line-height:1.1}.finance-sheet-title dl{grid-template-columns:repeat(4,max-content);gap:8px;margin:0;display:grid}.finance-sheet-title dl div{text-align:center;background:#fff;border:1px solid #d7e2f0;border-radius:8px;min-width:86px;padding:8px 10px}.finance-sheet-title dt,.finance-sheet-title dd{margin:0;font-size:12px;line-height:1.15}.finance-sheet-title dt{color:#60758c;font-weight:900}.finance-sheet-title dd{color:#111827;margin-top:4px;font-weight:900}.finance-pending-line{background:#fff9e8!important;border-color:#f6c86c!important}.finance-row{grid-template-columns:minmax(130px,1.2fr) minmax(118px,1fr) minmax(78px,.62fr) minmax(86px,.72fr) minmax(94px,.8fr) minmax(126px,.96fr) minmax(88px,.72fr) minmax(76px,.58fr) minmax(82px,.62fr) minmax(118px,.86fr) minmax(130px,1fr) minmax(100px,.76fr);width:100%;display:grid}.finance-row>*{color:#111827;text-align:center;background:#fff;border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;min-width:0;min-height:40px;padding:8px 6px;font-size:12px;line-height:1.2;overflow:visible}.finance-row>:last-child{border-right:0}.finance-head>*{color:#24415f;white-space:normal;overflow-wrap:anywhere;text-transform:uppercase;background:#f1f5f9;justify-content:center;align-items:center;min-height:38px;font-size:11px;font-weight:900;display:flex}.finance-student-link{color:var(--blue);background:#fff8f8;justify-content:center;align-items:center;font-weight:900;text-decoration:none;display:flex}.finance-student-link:hover{text-decoration:underline}.finance-money-cell{font-weight:900;color:#0b7734!important;background:#e5f9eb!important}.finance-compact-field{display:block;padding:0!important}.finance-compact-field>span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.finance-compact-field input,.finance-compact-field select{color:#111827;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;width:100%;height:40px;font:inherit;text-align:center;background:0 0;border:0;outline:none;font-weight:800}.finance-compact-field input:focus,.finance-compact-field select:focus{box-shadow:inset 0 0 0 2px var(--blue);background:#f8fbff}.finance-row.is-paid .finance-compact-field select[name^=paymentStatus-]{color:#0b7734;background:#d8f8df;border-radius:999px;width:calc(100% - 10px);height:30px;margin:5px;font-weight:900}.finance-row.is-pending .finance-compact-field select[name^=paymentStatus-]{color:#7c3d00;background:#ffdfb8;border-radius:999px;width:calc(100% - 10px);height:30px;margin:5px;font-weight:900}.finance-row.is-pending .finance-student-link{background:#fff1f1}.finance-total-row>*{background:#f8fafc;min-height:40px;font-weight:900}.finance-total-row>:first-child{color:#fff;background:#24415f}.finance-dashboard{gap:16px;display:grid}.finance-metrics.clean{grid-template-columns:repeat(5,minmax(0,1fr))}.finance-groups{gap:16px;display:grid}.finance-group-card{background:#fff;border:1px solid #d7e2f0;border-radius:10px;overflow:hidden;box-shadow:0 14px 34px #06398e12}.finance-group-card>header{background:#f8fbff;border-bottom:1px solid #d7e2f0;justify-content:space-between;align-items:center;gap:16px;margin:0;padding:16px 18px;display:flex}.finance-group-card>header span{color:var(--green);text-transform:uppercase;font-size:12px;font-weight:900;display:block}.finance-group-card>header h2{color:var(--blue);margin:3px 0 0;font-size:24px;line-height:1.1}.finance-group-card dl{grid-template-columns:repeat(5,max-content);gap:8px;margin:0;display:grid}.finance-group-card dl div{text-align:center;background:#fff;border:1px solid #d7e2f0;border-radius:8px;min-width:92px;padding:8px 10px}.finance-group-card dt,.finance-group-card dd{margin:0;font-size:12px;line-height:1.15}.finance-group-card dt{color:#60758c;font-weight:900}.finance-group-card dd{color:#111827;margin-top:4px;font-weight:900}.finance-student-cards{gap:12px;padding:14px;display:grid}.finance-student-card{background:#fff;border:1px solid #dce6f2;border-radius:10px;grid-template-columns:minmax(330px,1fr) minmax(360px,1fr);align-items:stretch;gap:12px;padding:14px;display:grid;position:relative;box-shadow:0 10px 24px #06398e0d}.finance-student-card:before{content:"";background:#f2b85f;border-radius:10px 0 0 10px;width:4px;position:absolute;top:0;bottom:0;left:0}.finance-student-card.is-pending{background:#fffdfd;border-color:#efd6d6}.finance-student-card.is-overdue{background:#fff8f8;border-color:#f0b8b8}.finance-student-card.is-overdue:before{background:#d92d20}.finance-student-card.is-paid{background:#fbfffc;border-color:#bfe8c9}.finance-student-card.is-paid:before{background:#20a455}.finance-student-card-inactive{background:#f8fbff;border-color:#d7e2f0}.finance-student-card-inactive:before{background:#94a3b8}.finance-student-card-inactive.is-collapsed{grid-template-columns:1fr;min-height:54px;padding:8px 12px}.finance-inactive-toggle{width:100%;min-height:38px;color:var(--blue);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:0 4px 0 14px;font-size:15px;font-weight:900;display:flex}.finance-inactive-toggle span{width:30px;height:30px;color:var(--blue);background:#fff;border:1px solid #c8d6ea;border-radius:8px;place-items:center;font-size:18px;line-height:1;display:grid}.finance-inactive-toggle:hover strong{text-decoration:underline}.finance-inactive-collapse-button{z-index:2;width:30px;height:30px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;place-items:center;font-size:16px;font-weight:900;line-height:1;display:grid;position:absolute;top:10px;right:10px}.finance-inactive-collapse-button:hover{border-color:var(--blue);background:#eef5ff}.finance-student-main{grid-template-columns:minmax(0,1fr) minmax(190px,.72fr);gap:10px;min-width:0;display:grid}.finance-student-open{min-height:86px;color:var(--blue);text-align:left;cursor:pointer;background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #edf2f8;border-radius:8px;align-content:center;gap:5px;padding:12px;font-weight:900;display:grid}.finance-student-open:hover strong{text-decoration:underline}.finance-student-open strong{font-size:16px;line-height:1.16}.finance-student-open span{color:#526981;font-size:12px;font-weight:800}.finance-student-open em{color:#24415f;font-size:11px;font-style:normal;font-weight:900}.finance-student-open small{color:#0b7734;font-size:11px;font-weight:900}.finance-student-values{background:#f3f7fc;border:1px solid #e2eaf4;border-radius:8px;align-content:center;gap:5px;min-height:126px;padding:12px;display:grid}.finance-student-values span{color:#60758c;text-transform:uppercase;font-size:11px;font-weight:900}.finance-student-values strong{color:var(--blue);font-size:18px}.finance-student-values em{color:#526981;font-size:11px;font-style:normal;font-weight:900}.finance-student-values small{color:#0b7734;font-size:11px;font-weight:900}.finance-student-value-details{border-top:1px solid #dbe6f2;gap:3px;margin-top:3px;padding-top:7px;display:grid}.finance-student-values .finance-student-remaining{color:#9a5b00}.finance-student-quick-fields{grid-template-columns:minmax(116px,.72fr) minmax(150px,.95fr) minmax(132px,.82fr) minmax(132px,.82fr);align-items:end;gap:8px;min-width:0;display:grid}.finance-student-card label,.finance-paid-field{color:#5b7088;text-transform:uppercase;align-content:end;gap:5px;min-width:0;font-size:10px;font-weight:900;display:grid}.finance-paid-total-button{color:#003b90;text-align:left;cursor:pointer;background:#fff;border:1px solid #cfdced;border-radius:8px;width:100%;height:38px;padding:0 10px;font-size:13px;font-weight:900;box-shadow:inset 0 1px #fff}.finance-paid-total-button:hover{border-color:var(--blue);background:#eef5ff}.finance-remaining-field{color:#5b7088;text-transform:uppercase;align-content:end;gap:5px;min-width:0;font-size:10px;font-weight:900;display:grid}.finance-remaining-field strong{color:#9a5b00;background:#fff9e8;border:1px solid #f3d08a;border-radius:8px;align-items:center;width:100%;height:38px;padding:0 10px;font-size:13px;font-weight:900;display:flex}.finance-student-card label.wide{grid-column:span 3;min-width:0}.finance-student-card input,.finance-student-card select{color:#111827;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #cfdced;border-radius:8px;outline:none;width:100%;height:38px;padding:0 10px;font-size:13px;font-weight:850;box-shadow:inset 0 1px #fff}.finance-student-card input:focus,.finance-student-card select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.finance-student-overlay{z-index:120;background:#0b172acc;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.finance-student-modal{color:#111827;background:#fff;border-radius:12px;grid-template-rows:auto minmax(0,1fr);width:min(980px,100%);max-height:min(92vh,860px);display:grid;overflow:hidden;box-shadow:0 24px 70px #0008}.finance-student-modal>header{background:#f8fbff;border-bottom:1px solid #d7e2f0;justify-content:space-between;align-items:flex-start;gap:16px;margin:0;padding:18px 20px;display:flex}.finance-student-modal>header span{color:var(--green);text-transform:uppercase;font-size:12px;font-weight:900}.finance-student-modal>header h2{color:var(--blue);margin:4px 0;font-size:28px;line-height:1.05}.finance-student-modal>header p{color:#526981;margin:0;font-weight:800}.finance-student-modal-actions{scrollbar-width:thin;background:#fff;border:1px solid #d7e2f0;border-radius:12px;justify-content:flex-end;align-items:center;gap:8px;max-width:100%;padding:6px;display:flex;overflow:auto hidden}.finance-student-modal-actions a,.finance-student-modal-actions button{min-height:38px;color:var(--blue);white-space:nowrap;cursor:pointer;background:#f8fbff;border:1px solid #c8d6ea;border-radius:9px;flex:none;justify-content:center;align-items:center;padding:0 13px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.finance-student-modal-actions a:hover,.finance-student-modal-actions button:hover{border-color:var(--blue);background:#eef5ff}.finance-student-modal-actions button:nth-last-child(2){border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 8px 18px #06398e24}.finance-student-modal-actions button:last-child{color:#24415f;background:#fff}.finance-student-view{gap:16px;min-height:0;padding:18px 20px;display:grid;overflow:auto}.finance-student-view section{background:#fff;border:1px solid #d7e2f0;border-radius:10px;gap:12px;padding:14px;display:grid}.finance-student-view h3{color:var(--blue);margin:0;font-size:18px}.finance-student-view dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.finance-student-view dl div{background:#f8fbff;border:1px solid #edf2f8;border-radius:8px;min-width:0;padding:12px}.finance-student-view dt{color:#60758c;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:900}.finance-student-view dd{color:#17345a;overflow-wrap:anywhere;margin:0;font-size:15px;font-weight:900;line-height:1.35}.finance-student-view a{color:var(--blue);text-decoration:none}.finance-student-view a:hover{text-decoration:underline}.finance-student-form{gap:16px;min-height:0;padding:18px 20px;display:grid;overflow:auto}.finance-student-form section{background:#fff;border:1px solid #d7e2f0;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;display:grid}.finance-student-form h3{color:var(--blue);grid-column:1/-1;margin:0;font-size:18px}.finance-student-form label{color:#24415f;gap:6px;font-size:12px;font-weight:900;display:grid}.finance-student-form input,.finance-student-form select{color:#111827;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #c8d6ea;border-radius:8px;width:100%;height:42px;padding:0 10px;font-size:14px}.finance-student-billing-section .billing-currency-fields{grid-column:1/-1}.finance-student-billing-section>label{align-self:start}.finance-student-form .payment-qr-upload{grid-column:1/-1}.finance-checkbox-field{background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;gap:9px;min-height:44px;padding:8px 12px;text-transform:none!important;grid-column:1/-1!important;align-items:center!important;display:flex!important}.finance-checkbox-field input[type=checkbox]{accent-color:var(--blue);border-radius:2px;flex:none;width:18px!important;height:18px!important;box-shadow:none!important;margin:0!important;padding:0!important}.finance-payment-qr-preview{justify-items:start;display:grid}.finance-payment-qr-preview img{aspect-ratio:1;object-fit:contain;background:#fff;border:1px solid #d7e2f0;border-radius:8px;width:160px;max-width:100%;padding:8px}.finance-student-summary{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.finance-student-summary article{background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;padding:12px}.finance-student-summary span{color:#60758c;text-transform:uppercase;font-size:11px;font-weight:900;display:block}.finance-student-summary strong{color:var(--blue);margin-top:6px;font-size:18px;display:block}.finance-student-actions{justify-content:flex-end;gap:10px;display:flex}.finance-student-actions button{min-height:42px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;padding:0 14px;font-weight:900}.finance-student-actions button[type=submit]{border-color:var(--blue);background:var(--blue);color:#fff}.finance-rates-overlay{z-index:130;background:#0b172acc;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.finance-rates-dialog{color:#111827;background:#fff;border-radius:12px;gap:16px;width:min(520px,100%);max-height:92vh;padding:18px;display:grid;overflow:auto;box-shadow:0 24px 70px #0008}.finance-rates-dialog header{border-bottom:1px solid #d7e2f0;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;display:flex}.finance-rates-dialog header span{color:var(--green);text-transform:uppercase;font-size:12px;font-weight:900}.finance-rates-dialog header h2{color:var(--blue);margin:4px 0 0;font-size:26px}.finance-rates-dialog header button{min-height:34px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;padding:0 12px;font-weight:900}.finance-rates-list{gap:10px;display:grid}.finance-rates-list label{background:#f8fbff;border:1px solid #d7e2f0;border-radius:9px;grid-template-columns:minmax(0,1fr) minmax(120px,170px);align-items:center;gap:10px;padding:10px;display:grid}.finance-rates-list span{color:#24415f;gap:3px;font-size:13px;font-weight:900;display:grid}.finance-rates-list small{color:#60758c;font-size:11px;font-weight:800}.finance-rates-list input{color:#111827;background:#fff;border:1px solid #c8d6ea;border-radius:8px;width:100%;height:40px;padding:0 10px;font-size:14px}.finance-rates-actions{justify-content:flex-end;gap:10px;display:flex}.finance-rates-actions button{min-height:40px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;padding:0 14px;font-weight:900}.finance-rates-actions button[type=submit]{border-color:var(--blue);background:var(--blue);color:#fff}.finance-rates-actions button:disabled{color:#64748b;cursor:not-allowed;background:#e2e8f0;border-color:#cbd5e1}.finance-receipts-dialog{width:min(560px,100%)}.finance-receipts-month{background:#f8fbff;border:1px solid #d7e2f0;border-radius:10px;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;padding:10px;display:grid}.finance-receipts-month button{min-height:42px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;padding:0;font-size:24px;font-weight:900;line-height:1}.finance-receipts-month div{text-align:center;gap:3px;display:grid}.finance-receipts-month strong{color:var(--blue);font-size:18px}.finance-receipts-month span{color:#4d6680;font-size:13px;font-weight:800}.finance-paid-dialog{width:min(640px,100%)}.finance-paid-entries{gap:10px;display:grid}.finance-paid-entry{background:#f8fbff;border:1px solid #d7e2f0;border-radius:10px;grid-template-columns:minmax(132px,.8fr) minmax(150px,1fr) auto;align-items:end;gap:10px;padding:10px;display:grid}.finance-paid-entry label{color:#24415f;gap:6px;font-size:12px;font-weight:900;display:grid}.finance-paid-entry input{color:#111827;background:#fff;border:1px solid #c8d6ea;border-radius:8px;width:100%;height:40px;padding:0 10px;font-size:14px}.finance-paid-entry button,.finance-paid-add-button{min-height:40px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;padding:0 14px;font-weight:900}.finance-paid-entry button{color:#b42318;background:#fff5f3;border-color:#f1b4ad}.finance-paid-add-button{justify-self:start}.finance-paid-dialog-total{background:#f8fbff;border:1px solid #d7e2f0;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.finance-paid-dialog-total span{color:#4d6680;text-transform:uppercase;font-size:13px;font-weight:900}.finance-paid-dialog-total strong{color:var(--blue);font-size:20px}@media (max-width:1100px){.finance-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-metrics.clean{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-filter-panel{grid-template-columns:1fr}.finance-filter-panel p{white-space:normal}.finance-sheet-title{flex-direction:column;align-items:flex-start}.finance-sheet-title dl{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.finance-row{grid-template-columns:minmax(112px,1.2fr) minmax(98px,1fr) minmax(68px,.62fr) minmax(76px,.72fr) minmax(82px,.8fr) minmax(112px,.96fr) minmax(82px,.72fr) minmax(66px,.58fr) minmax(74px,.62fr) minmax(110px,.86fr) minmax(120px,1fr) minmax(92px,.76fr)}.finance-row>*{font-size:11px}.finance-group-card>header{flex-direction:column;align-items:flex-start}.finance-group-card dl{grid-template-columns:repeat(5,minmax(0,1fr));width:100%}.finance-student-card{grid-template-columns:1fr}.finance-student-main{grid-template-columns:minmax(0,1fr) minmax(190px,.78fr)}.finance-student-quick-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-student-open,.finance-student-values{min-height:82px}.finance-student-card .wide{grid-column:1/-1}}@media (max-width:620px){.finance-page{padding:20px 10px}.finance-page .courses-title h1{font-size:32px}.finance-actions-bar{flex-direction:column;align-items:stretch}.finance-actions-bar button{width:100%}.finance-metrics{grid-template-columns:1fr 1fr}.finance-metrics article{min-height:78px;padding:12px}.finance-metrics strong{font-size:17px}.finance-sheet{overflow:auto}.finance-sheet-title dl{grid-template-columns:1fr 1fr}.finance-row{min-width:1130px}.finance-metrics.clean{grid-template-columns:1fr}.finance-group-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-student-card,.finance-student-main,.finance-student-quick-fields{grid-template-columns:1fr}.finance-student-open,.finance-student-values{min-height:72px}.finance-paid-entry{grid-template-columns:1fr}.finance-paid-entry button{width:100%}.finance-student-modal{max-height:96vh}.finance-student-modal>header{flex-direction:column}.finance-student-modal-actions{justify-content:flex-start;width:100%}.finance-student-modal-actions a,.finance-student-modal-actions button{flex:none}.finance-student-view dl,.finance-student-form section,.finance-student-summary{grid-template-columns:1fr}.finance-student-actions{flex-direction:column}.finance-student-actions button{width:100%}}.pdf-course-creator{background:#fff;border:1px solid #d7e2f0;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(300px,420px);align-items:start;gap:18px;margin:0 0 22px;padding:22px;display:grid;box-shadow:0 12px 28px #06398e12}.pdf-course-creator h2{color:var(--blue);margin:4px 0 8px;font-size:26px;line-height:1.12}.pdf-course-creator p{color:#40536a;margin:0;font-size:16px;line-height:1.45}.pdf-course-creator form{gap:12px;display:grid}.pdf-course-creator label{color:#24415f;gap:7px;font-size:13px;font-weight:900;display:grid}.pdf-course-creator input,.pdf-course-creator select{width:100%;min-height:44px;color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;padding:0 12px;font-size:14px}.pdf-course-creator input[type=file]{color:#40536a;cursor:pointer;align-items:center;min-height:52px;padding:9px 12px;font-size:13px;font-weight:800;display:flex}.pdf-course-creator input[type=file]::file-selector-button{background:var(--blue);color:#fff;height:34px;font:inherit;cursor:pointer;border:0;border-radius:7px;margin-right:12px;padding:0 14px;font-size:13px;font-weight:900}.pdf-course-creator input[type=file]:hover::file-selector-button{background:#052f77}.pdf-course-creator input:focus,.pdf-course-creator select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.pdf-course-creator button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;min-height:46px;font-size:14px;font-weight:900}.pdf-course-creator button:disabled{cursor:not-allowed;background:#9aa9bb}.pdf-course-text-guide{grid-template-columns:1fr}.pdf-course-text-creator{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.pdf-course-text-creator .pdf-text-course-form{gap:14px;display:grid}.pdf-course-text-creator .pdf-course-creator-copy{gap:8px;display:grid}.pdf-markdown-help{background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;gap:10px;margin-top:6px;padding:12px;display:grid}.pdf-markdown-help h3{color:var(--blue);margin:0;font-size:16px;line-height:1.2}.pdf-markdown-help p{color:#40536a;margin:0;font-size:13px;line-height:1.35}.pdf-markdown-help-grid{gap:10px;display:grid}.pdf-markdown-help-grid article{background:#fff;border:1px solid #d7e2f0;border-radius:8px;gap:8px;padding:10px;display:grid}.pdf-markdown-help-grid h4,.pdf-markdown-help-models h4{color:var(--blue);margin:0;font-size:14px;line-height:1.25}.pdf-markdown-help-table{border-collapse:collapse;background:#fff;border:1px solid #d7e2f0;border-radius:8px;width:100%;overflow:hidden}.pdf-markdown-help-table th,.pdf-markdown-help-table td{color:#24415f;text-align:left;vertical-align:top;border-bottom:1px solid #e4edf8;padding:8px 9px;font-size:12px;line-height:1.3}.pdf-markdown-help-table th{color:#17385d;background:#eef5ff;font-weight:900}.pdf-markdown-help-table tbody tr:last-child td{border-bottom:0}.pdf-markdown-help-models{gap:8px;display:grid}.pdf-markdown-help-models pre{color:#17385d;background:#fff;border:1px solid #c8d6ea;border-radius:8px;margin:0;padding:10px;font-size:12px;line-height:1.35;overflow:auto}.pdf-markdown-render-model{background:#fff;border:1px solid #d7e2f0;border-radius:8px;gap:8px;padding:10px;display:grid}.pdf-markdown-render-model h4{color:var(--blue);margin:0;font-size:14px;line-height:1.25}.pdf-markdown-render-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.92fr);align-items:start;gap:12px;display:grid}.pdf-markdown-source-card,.pdf-markdown-preview-card{background:#f8fbff;border:1px solid #c8d6ea;border-radius:8px;min-width:0;padding:10px}.pdf-markdown-source-card{gap:8px;display:grid}.pdf-markdown-source-card span{color:var(--green);text-transform:uppercase;font-size:11px;font-weight:900}.pdf-markdown-source-card pre{color:#17385d;background:#fff;border:1px solid #d7e2f0;border-radius:8px;max-height:520px;margin:0;padding:10px;font-size:12px;line-height:1.38;overflow:auto}.pdf-markdown-preview-card{background:#e6edf5;border-color:#c8d6ea;padding:16px}.pdf-markdown-preview-card header{background:#fff;border:1px solid #c8d6ea;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:44px;margin:0 0 8px;padding:8px 10px;display:flex;position:relative}.pdf-markdown-preview-card header span{color:var(--green);font-size:13px;font-weight:900}.pdf-markdown-preview-card header strong{background:var(--blue);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-height:30px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.pdf-markdown-preview-card h3{background:linear-gradient(105deg,var(--green),var(--green2));width:min(100%,360px);box-shadow:6px 6px 0 var(--blue);color:#fff;text-align:center;border-radius:12px;margin:8px auto 16px;padding:13px 16px;font-size:22px;font-weight:900;line-height:1.08}.pdf-markdown-preview-content{gap:10px;width:min(100%,380px);margin:0 auto;display:grid}.pdf-markdown-preview-note,.pdf-markdown-preview-dialogue{box-shadow:none;background:#fbfffb;border:1.5px solid #81c69d;border-radius:14px;padding:12px 14px}.pdf-markdown-preview-note h5,.pdf-markdown-preview-practice h5{color:var(--blue);margin:0 0 8px;font-size:14px;font-weight:900;line-height:1.2}.pdf-markdown-preview-note p,.pdf-markdown-preview-dialogue p{color:#10233f;margin:0;font-size:13px;line-height:1.38}.pdf-markdown-preview-note ul{gap:7px;margin:0;padding-left:0;list-style:none;display:grid}.pdf-markdown-preview-note li{color:#10233f;font-size:13px;line-height:1.35}.pdf-markdown-preview-note li:before{content:"✓";background:var(--green);color:#fff;border-radius:50%;place-items:center;width:18px;height:18px;margin-right:7px;font-size:12px;font-weight:900;display:inline-grid}.pdf-markdown-preview-dialogue{gap:5px;display:grid}.pdf-markdown-preview-green-title{background:linear-gradient(105deg,var(--green),var(--green2));width:min(100%,310px);box-shadow:5px 5px 0 var(--blue);color:#fff;text-align:center;border-radius:12px;margin:4px auto 2px;padding:10px 14px;font-size:17px;font-weight:900;line-height:1.1}.pdf-markdown-preview-note table{border-collapse:collapse;background:#fff;border-radius:10px;width:100%;font-size:12px;overflow:hidden}.pdf-markdown-preview-note th,.pdf-markdown-preview-note td{text-align:left;vertical-align:top;border-bottom:1px solid #d7e8dc;padding:7px}.pdf-markdown-preview-note th{background:var(--blue);color:#fff}.pdf-markdown-preview-note tr:last-child td{border-bottom:0}.pdf-markdown-preview-practice{background:#fffaf0;border:1.5px solid #f4c84a;border-radius:14px;padding:12px 14px}.pdf-markdown-preview-practice ol{color:#10233f;gap:5px;margin:0;padding-left:20px;font-size:13px;line-height:1.35;display:grid}.pdf-markdown-help-tip{background:#fbfffb;border:1px solid #d7e8dc;border-radius:8px;padding:9px 10px}.pdf-lesson-uploader{grid-template-columns:1fr;gap:16px;padding:20px}.pdf-lesson-uploader>div:first-child{align-content:start;gap:6px;max-width:760px;display:grid}.pdf-lesson-uploader .pdf-course-creator-copy h2{max-width:none;font-size:30px}.pdf-lesson-uploader .pdf-course-creator-copy p{max-width:620px;font-size:15px}.pdf-lesson-uploader .pdf-lesson-edit-grid{grid-template-columns:minmax(220px,1fr) minmax(260px,.9fr);align-items:start}.pdf-outline-textarea{gap:8px;display:grid}.pdf-outline-textarea textarea{width:100%;min-height:280px;color:var(--ink);resize:vertical;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;padding:12px;font-size:14px;line-height:1.5}.pdf-outline-textarea textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.pdf-outline-preview{background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;gap:10px;padding:14px;display:grid}.pdf-outline-summary{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.pdf-outline-summary strong{color:#193b62;font-size:15px;font-weight:900;display:block}.pdf-outline-summary p{color:#526b88;margin:4px 0 0;font-size:13px;line-height:1.35}.pdf-outline-summary span{color:var(--green);white-space:nowrap;background:#eff7f2;border-radius:999px;flex:none;padding:7px 10px;font-size:12px;font-weight:900}.pdf-outline-table{border-collapse:collapse;background:#fff;border:1px solid #d7e2f0;border-radius:8px;width:100%;overflow:hidden}.pdf-outline-table th,.pdf-outline-table td{vertical-align:top;text-align:left;border-bottom:1px solid #e4edf8;padding:10px 12px;font-size:13px;line-height:1.35}.pdf-outline-table th{color:#24415f;background:#eef5ff;font-weight:900}.pdf-outline-table td:first-child{width:44px;color:var(--blue);font-weight:900}.pdf-outline-table tbody tr:last-child td{border-bottom:0}.pdf-outline-dialog{width:min(100%,560px)}.pdf-outline-dialog p{font-size:14px;line-height:1.4}.pdf-outline-dialog strong{color:#193b62}.pdf-text-course-actions{justify-content:flex-end;display:flex}.pdf-text-course-actions button{min-width:180px}.pdf-lesson-builder-form{gap:12px;min-width:0;display:grid}.pdf-module-organizer{grid-template-columns:1fr;gap:16px}.pdf-module-organizer .pdf-course-creator-copy{gap:6px;max-width:760px;display:grid}.pdf-module-organizer .pdf-course-creator-copy h2{color:var(--blue);margin:0;font-size:28px}.pdf-module-organizer .pdf-course-creator-copy p:not(.auth-kicker){max-width:680px;font-size:15px}.pdf-module-organizer form{grid-template-columns:1fr;width:100%}.pdf-module-editor,.pdf-lesson-module-list{gap:10px;min-width:0;display:grid}.pdf-module-editor-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.pdf-module-editor-head strong,.pdf-lesson-module-list>strong,.pdf-lesson-module-list-head strong{color:var(--blue);font-size:15px}.pdf-module-editor-head button{min-height:36px;padding:0 12px}.pdf-module-row{background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;grid-template-columns:minmax(220px,.9fr) minmax(260px,1.1fr) auto;align-items:end;gap:10px;padding:10px;display:grid}.pdf-module-remove{padding:0 12px;color:#b42318!important;background:#fff!important;border:1px solid #f1b4ad!important;min-height:44px!important}.pdf-module-remove:disabled{color:#8a98aa!important;background:#eef3f8!important;border-color:#d7e2f0!important}.pdf-lesson-module-list-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.pdf-lesson-module-list-head button{min-height:34px;padding:0 12px;color:var(--blue)!important;background:#f8fbff!important;border:1px solid #c8d6ea!important;font-size:12px!important}.pdf-lesson-module-list-head button:hover{border-color:var(--blue)!important;background:#eef5ff!important}.pdf-lesson-module-row{background:#fff;border:1px solid #d7e2f0;border-radius:8px;grid-template-columns:34px minmax(0,1fr) 104px minmax(320px,420px);align-items:center;gap:10px 16px;padding:10px;transition:border-color .16s,box-shadow .16s,opacity .16s;display:grid!important}.pdf-lesson-module-row:hover{border-color:#9ec4ff;box-shadow:0 10px 24px #06398e14}.pdf-lesson-module-row.is-dragging{opacity:.58;border-color:var(--blue)}.pdf-lesson-drag-handle{cursor:grab;letter-spacing:0;-webkit-user-select:none;user-select:none;background:#f8fbff;border:1px solid #c8d6ea;border-radius:8px;justify-content:center;align-items:center;width:34px;height:40px;color:var(--blue)!important;font-size:18px!important;font-weight:900!important;line-height:1!important;display:flex!important}.pdf-lesson-drag-handle:active{cursor:grabbing}.pdf-lesson-module-row span{color:#40536a;gap:3px;min-width:0;font-size:13px;font-weight:800;line-height:1.25;display:grid}.pdf-lesson-module-row b{color:var(--blue);text-transform:uppercase;font-size:12px}.pdf-lesson-module-row input[type=number]{text-align:center;justify-self:center;width:104px;min-height:40px;padding:0 8px;font-weight:900}.pdf-lesson-module-row select{min-width:0}.pdf-lesson-builder-layout{grid-template-columns:minmax(0,1fr) minmax(320px,380px);align-items:start;gap:16px;min-width:0;display:grid}.pdf-lesson-main-fields,.pdf-lesson-side-fields{gap:12px;min-width:0;display:grid}.pdf-lesson-main-fields{align-content:start}.pdf-lesson-main-fields>label:first-child input{min-height:54px;font-size:15px}.pdf-lesson-side-fields{gap:10px}.pdf-lesson-side-fields .pdf-upload-field,.pdf-lesson-side-fields .pdf-file-fieldset{background:#fbfdff;border-style:solid;padding:10px}.pdf-lesson-side-fields .pdf-upload-field{gap:8px}.pdf-lesson-side-fields .pdf-upload-field>span{font-size:13px}.pdf-lesson-side-fields .pdf-upload-field input[type=file]{min-height:40px;padding:6px 8px;font-size:12px}.pdf-lesson-side-fields .pdf-upload-field input[type=file]::file-selector-button{border-radius:6px;height:28px;margin-right:8px;padding:0 10px;font-size:12px}.pdf-lesson-side-fields .pdf-upload-field input[type=file]:hover::file-selector-button{color:#fff;background:#0b3f7e}.pdf-lesson-side-fields .pdf-file-fieldset{gap:8px}.pdf-lesson-side-fields .pdf-file-fieldset legend{font-size:13px}.pdf-lesson-side-fields .pdf-link-row{grid-template-columns:1fr}.pdf-lesson-side-fields .pdf-upload-list-field{grid-template-columns:minmax(0,1fr);gap:10px;padding:14px}.pdf-lesson-side-fields .pdf-upload-list-copy{gap:6px}.pdf-lesson-side-fields .pdf-upload-list-copy span{font-size:15px;line-height:1.25}.pdf-lesson-side-fields .pdf-upload-list-copy small{font-size:13px;line-height:1.45}.pdf-lesson-side-fields .pdf-upload-empty-state{white-space:normal;grid-column:1;min-height:48px;padding:9px 12px;line-height:1.35}.pdf-lesson-side-fields .pdf-upload-select-button{grid-area:auto/1;justify-self:start;font-size:13px;min-height:40px!important}.pdf-lesson-side-fields .pdf-upload-field input[type=file]{white-space:normal;min-height:48px;font-size:13px;line-height:1.4}.pdf-lesson-side-fields .pdf-upload-field input[type=file]::file-selector-button{height:32px;margin-right:10px;padding:0 12px;font-size:13px}.pdf-lesson-side-fields .pdf-link-row{gap:12px}.pdf-lesson-side-fields .pdf-link-row label{gap:7px;font-size:13px;line-height:1.25}.pdf-lesson-side-fields .pdf-link-row input{height:48px;padding:0 13px;font-size:14px}.pdf-lesson-submit{justify-self:end;min-width:180px;padding:0 18px}.pdf-lesson-import-form{gap:14px;min-width:0;display:grid}.pdf-import-lessons{background:#f8fbff;border:1px solid #d7e2f0;border-radius:10px;gap:10px;min-width:0;margin:0;padding:14px;display:grid}.pdf-import-lessons legend{color:#24415f;padding:0 6px;font-size:13px;font-weight:900}.pdf-import-selection-actions{color:#60758c;justify-content:space-between;align-items:center;gap:10px;font-size:12px;font-weight:800;display:flex}.pdf-import-selection-actions>div{flex-wrap:wrap;gap:6px;display:flex}.pdf-import-selection-actions button{min-height:30px;color:var(--blue);background:#fff;border:1px solid #c8d6ea;border-radius:7px;padding:0 9px;font-size:12px;font-weight:900}.pdf-import-lesson-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:300px;padding:2px;display:grid;overflow:auto}.pdf-import-lesson-option{color:#24415f;background:#fff;border:1px solid #d7e2f0;border-radius:8px;align-items:flex-start;gap:8px;min-width:0;margin:0;padding:10px;font-size:13px;font-weight:800;line-height:1.3;display:flex}.pdf-import-lesson-option input{height:18px;accent-color:var(--blue);flex:none;margin:0;width:18px!important;min-height:18px!important}.pdf-import-lesson-option span{overflow-wrap:anywhere;min-width:0}.pdf-lesson-edit-form{gap:14px;display:grid}.pdf-lesson-edit-grid{grid-template-columns:minmax(0,.45fr) minmax(0,.55fr);align-items:start;gap:14px;display:grid}.pdf-lesson-edit-grid .pdf-upload-list-field{grid-column:1/-1}.pdf-lesson-textarea{color:#24415f;gap:8px;font-size:13px;font-weight:900;display:grid}.pdf-lesson-textarea small{color:#637891;font-size:12px;font-weight:800;line-height:1.35}.pdf-lesson-textarea textarea{color:#111827;resize:vertical;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;width:100%;min-height:230px;padding:12px;font-size:14px;line-height:1.55}.pdf-lesson-builder-form .pdf-lesson-textarea textarea{min-height:360px}.pdf-lesson-textarea textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.pdf-lesson-notes-intro{color:#40536a;margin:0;font-size:13px;font-weight:800;line-height:1.35}.pdf-course-card{background:linear-gradient(#fff 0%,#f4f9ff 100%)!important;border-color:#9fc2ef!important}.pdf-course-card span{color:var(--green)!important;background:#eff7f2!important}.pdf-course-manage-card{gap:12px;display:grid!important}.pdf-course-card-link{min-height:0;color:inherit;flex-direction:column;text-decoration:none;display:flex}.pdf-course-card-link:hover h2{text-decoration:underline}.pdf-course-card-actions{gap:8px;margin-top:auto;display:flex}.pdf-course-card-actions label,.pdf-course-card-actions button{min-height:36px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;justify-content:center;align-items:center;padding:0 12px;font-size:13px;font-weight:900;display:inline-flex}.pdf-course-card-actions button{color:#b42318;border-color:#f1b4ad}.pdf-course-edit-toggle{opacity:0;pointer-events:none;position:absolute}.pdf-course-edit-form{border-top:1px solid #d7e2f0;gap:9px;padding-top:12px;display:none}.pdf-course-edit-toggle:checked+.pdf-course-edit-form{display:grid}.pdf-course-edit-form label{color:#24415f;gap:5px;font-size:12px;font-weight:900;display:grid}.pdf-course-edit-form input{color:#111827;background:#fff;border:1px solid #c8d6ea;border-radius:8px;width:100%;height:38px;padding:0 10px;font-size:13px}.pdf-course-edit-form button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;min-height:38px;font-size:13px;font-weight:900}.pdf-course-page{width:min(100%,1180px)}.pdf-course-page .pdf-course-title-hero{margin-bottom:30px}.pdf-course-page .pdf-course-title-hero h1{margin-bottom:0}.pdf-course-page .pdf-course-title-hero .intro{margin-top:10px}.pdf-course-summary{margin-bottom:22px}.pdf-course-back-row{justify-content:flex-start;margin-top:18px;display:flex}.pdf-course-back-row .logout-link{width:auto;margin:0}.pdf-course-hero{background:#fff;border:1px solid #d7e2f0;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin:0 0 18px;padding:22px;display:grid;box-shadow:0 12px 28px #06398e12}.pdf-course-hero h1{color:var(--blue);margin:4px 0 8px;font-size:38px;line-height:1.08}.pdf-course-hero p:last-of-type{color:#40536a;max-width:620px;margin:0;font-size:17px;line-height:1.4}.pdf-course-hero aside{justify-items:end;gap:10px;min-width:180px;display:grid}.pdf-course-hero strong{min-height:34px;color:var(--green);white-space:nowrap;background:#eff7f2;border-radius:999px;justify-content:center;align-items:center;padding:0 13px;font-size:13px;font-weight:900;display:inline-flex}.pdf-course-hero .logout-link{width:100%;margin:0}.pdf-lesson-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));align-items:stretch;gap:14px;display:grid}.pdf-lesson-card{min-height:172px;color:inherit;background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #cfe0f5;border-radius:8px;grid-template-rows:auto minmax(74px,1fr) auto;gap:14px;padding:16px;text-decoration:none;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 28px #06398e12}.pdf-lesson-card:before{content:"";background:linear-gradient(180deg,var(--blue),var(--green));width:5px;position:absolute;top:0;bottom:0;left:0}.pdf-lesson-card:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:0 18px 36px #06398e1f}.pdf-lesson-card span{z-index:1;min-height:30px;color:var(--blue);background:#edf5ff;border-radius:999px;justify-content:center;justify-self:start;align-items:center;padding:0 10px;font-size:12px;font-weight:900;line-height:1;display:inline-flex;position:relative}.pdf-lesson-card strong{z-index:1;color:#061b36;overflow-wrap:anywhere;align-self:start;font-size:19px;line-height:1.18;position:relative}.pdf-lesson-card em{z-index:1;color:var(--green);text-transform:uppercase;place-self:end start;font-size:12px;font-style:normal;font-weight:900;position:relative}.pdf-lesson-card em:after{content:"";border-bottom:2px solid;border-right:2px solid;width:7px;height:7px;margin-left:7px;display:inline-block;transform:rotate(-45deg)translateY(-1px)}.pdf-lesson-page{background:#e8eef5;min-height:100vh}.pdf-viewer-shell{width:min(100%,1180px);margin:0 auto;padding:18px}.pdf-viewer-shell header{background:#fff;border:1px solid #d7e2f0;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;margin:0 0 12px;padding:14px 16px;display:flex;box-shadow:0 10px 24px #06398e12}.pdf-viewer-shell h1{color:var(--blue);margin:3px 0 0;font-size:24px;line-height:1.12}.pdf-viewer-shell strong{color:var(--green);background:#eff7f2;border-radius:999px;flex:none;padding:8px 12px;font-size:13px;font-weight:900}.pdf-viewer-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.pdf-viewer-actions a{min-height:34px;color:var(--blue);background:#fff;border:1px solid #c8d6ea;border-radius:8px;justify-content:center;align-items:center;padding:0 12px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.pdf-viewer-actions a:hover{border-color:var(--blue)}.lesson-pdf-download-button{border:1px solid var(--blue);background:var(--blue);color:#fff;text-align:center;white-space:normal;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-height:34px;padding:8px 12px;font-family:inherit;font-size:13px;font-weight:900;line-height:1.15;text-decoration:none;display:inline-flex}.lesson-pdf-download-button:hover:not(:disabled){background:#052d72;border-color:#052d72}.lesson-pdf-download-button:disabled{cursor:wait;opacity:.74}.pdf-viewer-empty-link{color:#60748e;background:#f8fbff;border:1px dashed #c8d6ea;border-radius:8px;align-items:center;min-height:34px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.pdf-viewer-shell iframe{background:#fff;border:1px solid #c8d6ea;border-radius:8px;width:100%;height:calc(100vh - 150px);min-height:620px;display:block;box-shadow:0 18px 38px #06398e18}.pdf-render-text-view{box-shadow:none;background:0 0;border:0;border-radius:0;gap:14px;padding:0;display:grid}.pdf-render-hero{background:linear-gradient(160deg,#fff 0%,#f3f8ff 58%,#edf7f1 100%);border:1px solid #c9d7eb;border-radius:8px;gap:10px;padding:18px 20px;display:grid;box-shadow:0 12px 28px #06398e10}.pdf-render-hero span{width:max-content;color:var(--green);background:#eff7f2;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;display:inline-flex}.pdf-render-hero h2{color:var(--blue);margin:0;font-size:28px;line-height:1.08}.pdf-render-hero p{color:#40536a;margin:0;font-size:16px;line-height:1.55}.pdf-render-text-view .card,.pdf-render-text-view .practice,.pdf-render-text-view .dialogue,.pdf-render-text-view .table{border-radius:8px;box-shadow:0 12px 24px #06398e0f}.pdf-render-text-view .card,.pdf-render-text-view .practice,.pdf-render-text-view .dialogue{margin:0}.pdf-render-text-view .card{background:#fff;border:1px solid #d7e2f0;gap:12px;padding:18px 20px;display:grid}.pdf-render-text-view .card h3,.pdf-render-text-view .practice h3,.pdf-render-text-view .dialogue h3{color:var(--blue);margin:0;font-size:18px;line-height:1.12}.pdf-render-text-view .card p{color:#24354e;margin:0;font-size:15px;line-height:1.6}.pdf-render-text-view .practice{background:#fffdf2;border:1px solid #f0cf6a;gap:12px;padding:18px 20px;display:grid}.pdf-render-text-view .practice ol{margin:0;padding-left:22px}.pdf-render-text-view .practice li{color:#24354e;margin:9px 0;font-size:15px;line-height:1.55}.pdf-render-text-view .dialogue{background:#fff;border:1px solid #c8d6ea;gap:10px;padding:18px 20px;display:grid}.pdf-render-text-view .dialogue p{color:#24354e;margin:0;font-size:15px;line-height:1.6}.pdf-render-text-view .dialogue b{color:var(--blue)}.pdf-render-text-view .table{border-collapse:separate;border-spacing:0;border:1px solid #a8d8bc;width:100%;margin:0}.pdf-render-text-view .table th{background:var(--blue);color:#fff;padding:12px 14px;font-size:13px}.pdf-render-text-view .table td{vertical-align:top;border-bottom:1px solid #dcece4;padding:12px 14px;font-size:14px}.pdf-render-text-view .table tr:last-child td{border-bottom:0}.pdf-render-text-view .table tr:nth-child(odd) td{background:#fbfefd}.pdf-render-empty-state{color:#526981;text-align:center;background:#f8fbff;border:1px dashed #c8d6ea;place-items:center;gap:8px;min-height:240px;padding:24px;display:grid}.pdf-render-empty-state span{color:var(--blue);font-size:16px;font-weight:900}.pdf-render-empty-state p{max-width:420px;margin:0;font-size:14px;line-height:1.45}.pdf-lesson-admin-panel{gap:16px;margin-bottom:16px;display:grid}.pdf-lesson-admin-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.pdf-lesson-admin-head h2{margin:2px 0 0}.pdf-lesson-admin-head span{max-width:100%;min-height:32px;color:var(--green);text-align:center;background:#eff7f2;border-radius:999px;justify-content:center;align-items:center;padding:8px 12px;font-size:12px;font-weight:900;line-height:1.2;display:inline-flex}.pdf-lesson-admin-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.pdf-lesson-preview-button{min-height:40px;color:var(--blue);white-space:nowrap;background:#eef5ff;border:1px solid #9ec4f3;border-radius:8px;justify-content:center;align-items:center;padding:0 14px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.pdf-lesson-preview-button:hover{border-color:var(--blue);background:#e1edff}.pdf-upload-error{color:#8f1a12;background:#fff5f3;border-color:#f1b4ad;margin:0}.pdf-file-fieldset{background:#f8fbff;border:1px solid #d7e2f0;border-radius:10px;gap:10px;margin:0;padding:14px;display:grid}.pdf-file-fieldset legend{color:#24415f;padding:0 6px;font-size:13px;font-weight:900}.pdf-upload-card-fieldset{background:#f8fbff;border-color:#9fb9da}.pdf-upload-card-fieldset .pdf-fieldset-title{color:#24415f;font-size:14px;font-weight:900}.pdf-upload-card-fieldset .pdf-upload-field{background:0 0;border:0;padding:0}.pdf-upload-card-fieldset .pdf-upload-field>span{font-size:13px}.pdf-current-files{gap:8px;display:grid}.pdf-current-file{background:#fff;border:1px solid #dbe6f3;border-radius:8px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;margin:0;padding:12px;display:grid!important}.pdf-current-file input{accent-color:#b42318;height:18px;margin:0;width:18px!important;min-height:18px!important}.pdf-current-file span{gap:4px;min-width:0;display:grid}.pdf-current-file strong{color:#14345d;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.25;overflow:hidden}.pdf-current-file small{color:#60758c;font-size:12px;font-weight:800}.pdf-current-file em{color:#b42318;background:#fff1f1;border-radius:999px;padding:6px 9px;font-size:11px;font-style:normal;font-weight:900}.pdf-upload-field{background:#f8fbff;border:1px dashed #9fb9da;border-radius:10px;gap:8px;min-width:0;padding:14px;display:grid}.pdf-upload-field>span{color:#24415f;font-size:14px;font-weight:900}.pdf-upload-field>small{color:#60758c;font-size:12px;font-weight:800;line-height:1.35}.pdf-upload-field input[type=file]{color:#40536a;cursor:pointer;border-color:#c8d6ea;align-items:center;width:100%;min-width:0;min-height:52px;padding:9px 12px;font-size:13px;font-weight:800;line-height:1.3;display:flex}.pdf-upload-field input[type=file]::file-selector-button{background:var(--blue);color:#fff;max-width:100%;height:34px;font:inherit;cursor:pointer;white-space:nowrap;border:0;border-radius:7px;margin-right:12px;padding:0 14px;font-size:13px;font-weight:900}.pdf-upload-control{background:#fff;border:1px solid #c8d6ea;border-radius:8px;align-items:center;gap:10px;min-width:0;min-height:48px;padding:6px 8px;display:flex}.pdf-upload-control button{background:var(--blue);color:#fff;min-height:34px;font:inherit;cursor:pointer;white-space:nowrap;border:0;border-radius:7px;flex:none;padding:0 12px;font-size:13px;font-weight:900}.pdf-upload-control button:hover{background:#052f77}.pdf-upload-file-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.25;overflow:hidden;color:#536b86!important;font-size:13px!important;font-weight:800!important;display:block!important}.pdf-upload-list-field{background:linear-gradient(#fff 0%,#f7fbff 100%);border:1px solid #c8d6ea;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 14px;min-width:0;padding:12px;display:grid;box-shadow:0 8px 20px #06398e0d}.pdf-upload-list-copy{gap:4px;min-width:0;display:grid}.pdf-upload-list-copy span{color:#14345d;font-size:14px;font-weight:900;line-height:1.2}.pdf-upload-list-copy small{color:#60758c;max-width:760px;font-size:12px;font-weight:800;line-height:1.35}.pdf-upload-native-input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pdf-upload-empty-state{color:#60758c;background:#fff;border:1px dashed #c8d6ea;border-radius:8px;grid-column:1;align-items:center;min-height:40px;padding:0 12px;font-size:13px;font-weight:800;display:flex}.pdf-uploaded-files-list{grid-column:1;gap:8px;min-width:0;display:grid}.pdf-upload-status{color:#0f7a3b;grid-column:1/-1;font-size:12px;font-weight:900}.pdf-upload-select-button{grid-area:2/2;place-self:start;width:auto;font-size:13px;min-width:0!important;min-height:34px!important;padding:0 14px!important}.pdf-uploaded-file-chip{background:#f3fff6;border:1px solid #9bd8ad;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.pdf-uploaded-file-chip strong{color:#0f7a3b;word-break:break-word;font-size:14px;font-weight:900;display:block}.pdf-uploaded-file-chip small{color:#4b6b55;font-size:12px;font-weight:800;display:block}.pdf-uploaded-file-chip button{color:#b42318;cursor:pointer;white-space:nowrap;background:#fff5f3;border:1px solid #f1b4ad;border-radius:8px;justify-content:center;align-items:center;min-height:34px;padding:0 12px;font-size:13px;font-weight:900;display:inline-flex}.pdf-upload-error-text{grid-column:1/-1;font-size:12px;font-weight:900;color:#b42318!important}.pdf-upload-overlay{z-index:260;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#071321b8;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.pdf-upload-overlay-card{color:#10233f;background:#fff;border:1px solid #c8d6ea;border-radius:8px;grid-template-columns:46px minmax(0,1fr);gap:12px;width:min(440px,100%);padding:18px;display:grid;box-shadow:0 24px 70px #0007}.pdf-upload-overlay-spinner{border:4px solid #dbe8f7;border-top-color:var(--blue);border-radius:999px;grid-row:1/span 2;width:42px;height:42px;animation:.8s linear infinite button-loader-spin}.pdf-upload-overlay-card strong{color:var(--blue);font-size:20px;line-height:1.12;display:block}.pdf-upload-overlay-card p{color:#40536a;margin:6px 0 0;font-size:14px;font-weight:800;line-height:1.4}.pdf-upload-overlay-file{background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;grid-column:1/-1;gap:2px;padding:10px 12px;display:grid}.pdf-upload-overlay-file span{color:#061b36;overflow-wrap:anywhere;font-size:14px;font-weight:900}.pdf-upload-overlay-file small{color:#60758c;font-size:12px;font-weight:900}.pdf-upload-overlay-progress{background:#dbe8f7;border-radius:999px;grid-column:1/-1;height:10px;overflow:hidden}.pdf-upload-overlay-progress span{border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--green));height:100%;transition:width .18s;display:block}.pdf-upload-overlay-card em{color:#40536a;text-align:right;grid-column:1/-1;font-size:12px;font-style:normal;font-weight:900}.pdf-extra-fields{gap:10px;display:grid}.pdf-repeatable-field{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;min-width:0;display:grid}.pdf-repeatable-field>.pdf-upload-field{min-width:0}.pdf-link-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;display:grid}.pdf-link-row label{color:#24415f;gap:6px;font-size:13px;font-weight:900;display:grid}.pdf-link-row input{color:#111827;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;width:100%;min-width:0;height:44px;padding:0 12px;font-size:14px}.pdf-link-row input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.pdf-add-field-button{color:#0f4f98;text-align:center;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #b8cae0;border-radius:999px;justify-content:center;justify-self:start;align-items:center;width:34px;min-width:34px;max-width:100%;min-height:34px;padding:0;font-size:18px;font-weight:900;line-height:1;transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s,transform .16s;display:inline-flex;box-shadow:0 4px 10px #06398e08}.pdf-add-field-button:hover{color:#0f4f98;background:#eef5ff;border-color:#0f4f98;transform:translateY(-1px);box-shadow:0 8px 16px #06398e12}.pdf-add-field-button:active{transform:translateY(0)}.pdf-remove-field-button{color:#b42318;cursor:pointer;background:#fff5f3;border:1px solid #f1b4ad;border-radius:8px;justify-content:center;align-items:center;width:42px;min-width:42px;min-height:42px;padding:0;font-size:24px;font-weight:900;line-height:1;display:inline-flex}.pdf-remove-field-button:hover{background:#fee4e2;border-color:#b42318}.pdf-lesson-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.pdf-lesson-admin-panel>.danger-button,.pdf-lesson-actions .danger-button{color:#b42318;cursor:pointer;background:#fff5f3;border:1px solid #f1b4ad;border-radius:8px;min-height:48px;padding:0 16px;font-size:14px;font-weight:900}.pdf-lesson-admin-panel>.danger-button{justify-self:start}.pdf-supplements-panel{background:linear-gradient(#fff 0%,#f6f9ff 100%);border:1px solid #d7e2f0;border-radius:18px;gap:14px;margin:16px 0 0;padding:18px;display:grid;box-shadow:0 14px 32px #06398e12}.pdf-supplements-panel h2{color:var(--blue);letter-spacing:-.01em;margin:0;font-size:18px;line-height:1.12}.pdf-supplements-panel>div{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.pdf-supplement-card{min-height:112px;color:var(--blue);background:linear-gradient(#fff 0%,#eef5ff 100%);border:1px solid #c8d6ea;border-radius:14px;align-content:space-between;gap:12px;padding:12px 14px;text-decoration:none;transition:transform .16s,border-color .16s,box-shadow .16s,background .16s;display:grid;box-shadow:0 6px 16px #06398e08}.pdf-supplement-card:hover{border-color:var(--blue);background:linear-gradient(#f4f8ff 0%,#e6f0ff 100%);transform:translateY(-1px);box-shadow:0 10px 24px #06398e12}.pdf-supplement-card strong{color:var(--blue);word-break:break-word;font-size:14px;line-height:1.35;text-decoration:none;display:block}.pdf-supplement-card-actions{flex-wrap:wrap;gap:8px;display:flex}.pdf-supplement-button{color:#fff;letter-spacing:.02em;background:#0f4f98;border-radius:999px;justify-content:center;align-items:center;min-height:34px;padding:0 12px;font-size:12px;font-weight:900;text-decoration:none;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.pdf-supplement-button.secondary{color:#0f4f98;background:#dbeaff}.pdf-supplement-button:hover{transform:translateY(-1px);box-shadow:0 8px 18px #06398e18}.pdf-supplement-action{color:#0f4f98;letter-spacing:.03em;text-transform:uppercase;background:#dbeaff;border-radius:999px;align-items:center;width:max-content;min-height:24px;padding:0 8px;font-size:11px;font-weight:900;display:inline-flex}.pdf-renderer{background:#e6edf5;border:1px solid #c8d6ea;border-radius:8px;width:100%;min-height:620px;padding:18px;position:relative;overflow:auto;box-shadow:0 18px 38px #06398e18}.pdf-render-status,.pdf-render-error{color:#24415f;background:#fff;border-radius:8px;margin:0 0 14px;padding:12px 14px;font-size:14px;font-weight:900}.pdf-render-error{color:#b42318;background:#fff5f3;border:1px solid #f1b4ad}.pdf-render-loading-overlay{z-index:8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#e6edf5e8;place-items:center;padding:18px;display:grid;position:absolute;inset:0}.pdf-render-loading-overlay section{color:#24415f;background:#fff;border:1px solid #c8d6ea;border-radius:8px;justify-items:center;gap:10px;width:min(360px,100%);padding:20px;display:grid;box-shadow:0 20px 54px #06398e24}.pdf-render-loading-overlay section>span{border:4px solid #dbe8f7;border-top-color:var(--blue);border-radius:999px;width:42px;height:42px;animation:.8s linear infinite button-loader-spin}.pdf-render-loading-overlay .pdf-render-status{color:var(--blue);text-align:center;background:0 0;margin:0;padding:0;font-size:18px;line-height:1.18}.pdf-render-loading-overlay small{color:#60758c;text-align:center;font-size:13px;font-weight:800;line-height:1.35}.pdf-render-pages{justify-items:center;gap:22px;display:grid}.pdf-lesson-page-card{padding-top:18px;padding-bottom:92px}.pdf-lesson-page-card:before{content:none;display:none}.pdf-lesson-page-card .page-header{height:66px;margin-bottom:24px;position:relative}.pdf-lesson-page-card .page-header span:not(.brand-logo){background:var(--blue);color:#fff;text-align:center;min-width:0;height:38px;box-shadow:none;border-radius:999px;justify-content:center;align-items:center;margin:0;padding:0 16px;font-size:17px;font-weight:900;line-height:1;display:inline-flex;position:absolute;top:10px;right:14px}.pdf-lesson-page-card .banner{width:min(640px,100% - 120px);box-shadow:9px 9px 0 var(--blue);color:#fff;text-shadow:none;letter-spacing:0;border-radius:16px;margin:0 auto 20px;padding:18px 24px;font-size:36px;line-height:1.05}.pdf-lesson-page-card .banner.small{text-align:center;width:min(640px,100% - 136px);max-width:none;margin-left:auto;margin-right:auto;padding-left:24px;font-size:32px}.pdf-lesson-page-card .pdf-inline-green-title{margin:12px auto 18px}.pdf-lesson-page-card .pdf-markdown-spacer{height:var(--pdf-spacer-height,120px);min-height:32px}.pdf-lesson-page-card .pdf-markdown-pull-up{height:0;margin-bottom:var(--pdf-pull-up-offset,-48px)}.pdf-lesson-page-card .lesson-content{gap:16px;width:min(100%,620px);margin:0 auto;display:grid}.pdf-lesson-page-card .card.note-card,.pdf-lesson-page-card .practice,.pdf-lesson-page-card .story.dialogue-lite{margin:0}.pdf-lesson-page-card .card.note-card{box-shadow:none;background:#fbfffb;border:1.5px solid #81c69d;border-radius:18px;padding:18px 22px}.pdf-lesson-page-card .card.note-card h2,.pdf-lesson-page-card .card.note-card h3{color:var(--blue);margin:0 0 10px}.pdf-lesson-page-card .callout.green{color:var(--green);background:#f4fff6;border:1.5px solid #81c69d;border-radius:18px;padding:18px 22px;font-size:18px;font-weight:900;line-height:1.4}.pdf-lesson-page-card .readable-list{margin:0}.pdf-lesson-page-card .readable-bullets{gap:7px;margin:8px 0 0;padding-left:0;list-style:none;display:grid}.pdf-lesson-page-card .readable-bullets li{color:#10233f;padding-left:20px;font-size:17px;line-height:1.38;position:relative}.pdf-lesson-page-card .readable-bullets li:before{content:"";background:var(--green);border-radius:50%;width:7px;height:7px;position:absolute;top:.62em;left:0}.pdf-lesson-page-card .readable-numbered-list{gap:7px;margin:8px 0 0;padding-left:24px;display:grid}.pdf-lesson-page-card .readable-numbered-list li{color:#10233f;font-size:17px;line-height:1.38}.pdf-lesson-page-card .responsive-table-wrap{background:#fff;border:1px solid #d7e8dc;border-radius:14px;max-width:100%;margin-top:8px;overflow-x:auto}.pdf-lesson-page-card .responsive-table-wrap .table.phrases{width:100%;min-width:360px;box-shadow:none;border:0;border-radius:0;margin:0}.pdf-lesson-page-card .responsive-table-wrap th{color:#fff;background:#06398e;font-size:15px}.pdf-lesson-page-card .responsive-table-wrap td{font-size:16px;line-height:1.35}.pdf-lesson-page-card .story.dialogue-lite{background:#fbfffb;border:1.5px solid #81c69d;border-radius:18px;padding:16px 20px}.pdf-lesson-page-card .story.dialogue-lite p{margin:7px 0;font-size:18px;line-height:1.45}.pdf-lesson-page-card .table.phrases{margin:0}.pdf-lesson-page-card .practice{background:#fffaf0;border:1.5px solid #f4c84a;border-radius:18px;padding:16px 20px}.pdf-lesson-page-card .practice h2{margin:0 0 8px}.pdf-lesson-page-card .practice p{margin:0 0 10px;font-size:18px}.pdf-lesson-page-card .practice ol{margin:0;padding-left:24px}.pdf-lesson-page-card .pdf-render-empty-state{min-height:200px}.pdf-lesson-page-card .page-header .brand-logo{max-width:260px}.pdf-rendered-page{justify-items:center;gap:10px;width:100%;margin:0;display:grid}.pdf-rendered-page span{color:#60758c;background:#fff;border-radius:999px;justify-self:center;padding:6px 10px;font-size:12px;font-weight:900}.pdf-rendered-page canvas{image-rendering:auto;background:#fff;border-radius:3px;max-width:100%;display:block;box-shadow:0 10px 30px #0b172a30;height:auto!important}.pdf-rendered-image img{background:#fff;border-radius:4px;max-width:100%;height:auto;display:block;box-shadow:0 8px 24px #0b172a24}.pdf-rendered-pdf-fallback{background:#fff;border:1px solid #c8d6ea;border-radius:8px;padding:18px}.pdf-rendered-pdf-fallback a{min-height:38px;color:var(--blue);background:#fff;border:1px solid #c8d6ea;border-radius:8px;justify-content:center;align-items:center;padding:0 14px;font-size:13px;font-weight:900;text-decoration:none;display:inline-flex}.pdf-page-image-frame{background:#edf2f7;border:1px solid #c8d6ea;border-radius:8px;justify-content:center;width:100%;min-height:620px;padding:18px;display:flex;overflow:auto;box-shadow:0 18px 38px #06398e18}.pdf-page-image-frame img{background:#fff;border-radius:4px;align-self:flex-start;width:min(100%,980px);height:auto;display:block;box-shadow:0 8px 24px #0b172a24}.meetings-page{width:min(100%,1180px)}.meetings-layout{grid-template-columns:minmax(300px,420px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.meeting-builder{position:sticky;top:24px}.meeting-mode-toggle{background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 18px;padding:6px;display:grid}.meeting-mode-toggle button{color:#24415f;cursor:pointer;background:0 0;border:0;border-radius:6px;min-height:40px;font-size:14px;font-weight:900}.meeting-mode-toggle button.active{background:var(--blue);color:#fff;box-shadow:0 8px 18px #06398e24}.meeting-preview-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.meeting-preview-head span{color:var(--green);text-transform:uppercase;font-size:12px;font-weight:900;display:block}.meeting-preview-head h2{margin:4px 0 0}.meeting-preview-head strong{color:var(--green);background:#eff7f2;border-radius:999px;flex:none;padding:8px 12px;font-size:13px;font-weight:900}.meeting-room-card{background:#f8fbff;border:1px solid #c8d6ea;border-radius:8px;gap:10px;margin-bottom:18px;padding:16px;display:grid}.meeting-room-card p{color:#24415f;margin:0;font-size:13px;font-weight:900}.meeting-room-card a{word-break:break-all;color:var(--blue);font-size:14px;font-weight:900;text-decoration:none}.meeting-actions{flex-wrap:wrap;gap:8px;display:flex}.meeting-actions .logout-link{height:38px}.meeting-actions button,.meeting-participants button{min-height:38px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;padding:0 12px;font-size:13px;font-weight:900}.meeting-actions button:hover,.meeting-participants button:hover{border-color:var(--blue)}.meeting-save-link{background:#eff7f2;border:1px solid #9bd8ad;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin:0 0 18px;padding:14px;display:flex}.meeting-save-link div{gap:4px;display:grid}.meeting-save-link strong{color:#0b7734;font-size:14px;line-height:1.25}.meeting-save-link span{color:#345946;font-size:12px;font-weight:900;line-height:1.3}.meeting-save-link button{background:var(--green);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;min-height:40px;padding:0 14px;font-size:13px;font-weight:900}.meeting-save-link button:disabled{cursor:not-allowed;background:#9aa9bb}.meeting-participants{gap:10px;display:grid}.meeting-participants h3{color:var(--blue);margin:0;font-size:20px}.meeting-participants article{background:#fff;border:1px solid #d7e2f0;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;display:flex}.meeting-participants strong{color:var(--blue);font-size:15px;display:block}.meeting-participants span{color:#60758c;margin-top:4px;font-size:12px;font-weight:900;display:block}.meeting-participant-links{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.flashcards-admin-layout{grid-template-columns:minmax(240px,300px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.flashcards-student-list{position:sticky;top:18px}.flashcards-student-list h2,.flashcards-manager h2{color:var(--blue);margin:0;font-size:22px;line-height:1.1}.flashcards-student-search{color:#24415f;gap:7px;margin-top:14px;font-size:12px;font-weight:900;display:grid}.flashcards-student-search input{color:#111827;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;width:100%;min-height:42px;padding:0 12px;font-size:14px}.flashcards-student-search input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.flashcards-student-toggle{width:100%;min-height:42px;color:var(--blue);cursor:pointer;background:#f8fbff;border:1px solid #c8d6ea;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding:0 12px;font-size:13px;font-weight:900;display:flex}.flashcards-student-toggle:hover{border-color:var(--blue);background:#eef5ff}.flashcards-student-toggle strong{color:#60758c;white-space:nowrap;font-size:11px}.flashcards-student-list>div{gap:8px;margin-top:14px;display:grid}.flashcards-student-list a{color:inherit;background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;gap:4px;padding:12px;text-decoration:none;display:grid}.flashcards-student-list a.active,.flashcards-student-list a:hover{border-color:var(--blue);background:#eef5ff}.flashcards-student-list strong{color:var(--blue);font-size:14px}.flashcards-student-list span{color:#60758c;font-size:12px;font-weight:900}.flashcards-student-list small{color:#0f7a3b;font-size:11px;font-weight:900;line-height:1.25}.flashcards-manager{gap:16px;display:grid}.flashcards-manager-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.flashcards-manager-head span{color:var(--green);text-transform:uppercase;font-size:12px;font-weight:900;display:block}.flashcards-manager-head strong{color:var(--green);white-space:nowrap;background:#eff7f2;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:900}.flashcard-editor,.flashcard-import-form{background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;gap:12px;padding:14px;display:grid}.game-editor{background:#f9fbff;border:1px solid #d7e2f0;border-radius:8px;gap:12px;padding:14px;display:grid}.flashcard-editor label,.flashcard-import-form label,.flashcard-row-form label,.game-editor label,.game-group label{color:#10233f;gap:6px;font-size:13px;font-weight:900;display:grid}.flashcard-editor input,.flashcard-row-form input,.flashcard-import-form input,.flashcard-editor textarea,.flashcard-row-form textarea,.game-editor input,.game-editor textarea,.game-editor select{color:#111827;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;padding:0 10px;font-size:14px;line-height:1.35}.flashcard-editor textarea,.flashcard-row-form textarea,.game-editor textarea{resize:vertical;min-height:86px;padding:10px}.flashcard-import-form select{color:#111827;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #c8d6ea;border-radius:8px;width:100%;min-height:42px;padding:0 10px;font-size:14px}.flashcard-editor input:focus,.flashcard-row-form input:focus,.flashcard-import-form input:focus,.flashcard-editor textarea:focus,.flashcard-row-form textarea:focus,.flashcard-import-form select:focus,.game-editor input:focus,.game-editor textarea:focus,.game-editor select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.flashcard-editor button,.flashcard-import-form button,.flashcard-row-form button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-self:start;min-height:40px;padding:0 14px;font-size:13px;font-weight:900}.game-editor-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.game-editor-actions .danger-button{min-width:150px}.flashcard-import-form{grid-template-columns:minmax(0,1fr) minmax(220px,.55fr) auto;align-items:end}.flashcard-import-invert{background:#fff;border:1px solid #c8d6ea;border-radius:8px;grid-column:1/3;grid-template-columns:auto minmax(0,1fr);align-self:center;align-items:center;gap:10px;padding:10px 12px;display:grid!important}.flashcard-import-invert span{gap:3px;display:grid}.flashcard-import-invert strong{color:var(--blue);font-size:13px;line-height:1.2}.flashcard-import-invert small{color:#60758c;font-size:11px;font-weight:800;line-height:1.3}.flashcard-import-form .flashcard-import-invert input{width:18px;height:18px;min-height:18px;accent-color:var(--blue);box-shadow:none;border:0;margin:0;padding:0}.flashcard-apkg-form{background:#f3fff6;border-color:#bfe5ca}.flashcard-file-picker{background:#fff;border:1px dashed #9ad8b0;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:46px;padding:6px;display:grid;position:relative}.flashcard-file-picker input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;min-height:0;position:absolute;inset:0}.flashcard-file-button{color:#fff;white-space:nowrap;background:#0f7a3b;border-radius:7px;justify-content:center;align-items:center;min-height:32px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.flashcard-file-name{color:#526981;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:900;overflow:hidden}.flashcard-file-name.has-file{color:#0f4f98}.flashcards-list{gap:12px;display:grid}.flashcard-collection{gap:10px;display:grid}.flashcard-collection>header{background:#eef5ff;border:1px solid #d7e2f0;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.flashcard-collection>header div{align-items:center;gap:10px;min-width:0;display:flex}.flashcard-collection h3{color:var(--blue);margin:0;font-size:18px}.flashcard-collection>header span{color:#24415f;background:#fff;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:900}.flashcard-collection>header form{flex:none}.flashcard-collection-actions{flex:none;justify-content:flex-end!important;align-items:center!important;gap:8px!important;display:flex!important}.flashcard-export-button{color:#0f7a3b;background:#f3fff6;border:1px solid #9ad8b0;border-radius:8px;justify-content:center;align-items:center;min-height:36px;padding:0 12px;font-size:12px;font-weight:900;text-decoration:none;display:inline-flex}.flashcard-export-button:hover{background:#e8faee;border-color:#0f7a3b}.flashcards-list article{background:#fff;border:1px solid #d7e2f0;border-radius:8px;grid-template-columns:minmax(0,1fr);gap:10px;padding:12px;display:grid;position:relative}.flashcard-row-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.flashcard-row-form label:first-of-type{grid-column:1/-1}.flashcard-row-form div{grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;padding-right:94px;display:flex}.flashcard-row-form span{color:#60758c;font-size:12px;font-weight:900}.flashcard-delete-button{color:#b42318;cursor:pointer;background:#fff5f3;border:1px solid #f1b4ad;border-radius:8px;min-height:36px;padding:0 12px;font-size:12px;font-weight:900}.flashcard-card-delete-slot{justify-content:flex-end;align-items:center;display:flex;position:absolute;bottom:12px;right:12px}.flashcard-card-delete-slot .flashcard-delete-button{min-width:82px;min-height:40px}.flashcard-confirm-overlay{z-index:120;background:#0b172acc;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.flashcard-confirm-dialog{background:#fff;border-radius:8px;flex-direction:column;width:min(100%,500px);padding:22px;display:flex;box-shadow:0 24px 70px #0007}.flashcard-confirm-head{margin:0 0 14px;display:grid}.flashcard-confirm-head h2{color:var(--blue);margin:0;font-size:24px;line-height:1.08}.flashcard-confirm-copy{gap:10px;min-width:0;display:grid}.flashcard-confirm-copy strong{color:#10233f;text-overflow:ellipsis;white-space:nowrap;background:#f8fbff;border:1px solid #d7e2f0;border-radius:8px;max-width:100%;padding:10px 12px;font-size:14px;font-weight:900;line-height:1.25;display:block;overflow:hidden}.flashcard-confirm-copy p{color:#40536a;margin:0;font-size:15px;line-height:1.42}.flashcard-confirm-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:20px;display:flex}.flashcard-confirm-actions form{justify-content:flex-end;display:flex}.flashcard-confirm-actions button{min-width:128px;min-height:42px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;justify-content:center;align-items:center;padding:0 14px;font-size:14px;font-weight:900;display:inline-flex}.flashcard-confirm-actions .danger-button{min-width:170px;color:#fff!important;background:#b42318!important;border-color:#b42318!important}.games-admin-page .games-list{gap:14px;display:grid}.games-admin-page .game-group{gap:10px;display:grid}.games-admin-page .game-group-head{background:#eef5ff;border:1px solid #d7e2f0;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.games-admin-page .game-group-head h3{color:var(--blue);margin:0;font-size:18px;line-height:1.15}.games-admin-page .game-group-head span{color:#60758c;margin-top:4px;font-size:12px;font-weight:900;display:block}.games-admin-page .games-grid{gap:12px;display:grid}.games-admin-page .game-card{background:#fff;border:1px solid #d7e2f0;border-radius:8px;overflow:hidden;box-shadow:0 10px 22px #06398e08}.games-admin-page .game-card summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;list-style:none;display:flex}.games-admin-page .game-card summary::-webkit-details-marker{display:none}.games-admin-page .game-card summary div{gap:3px;min-width:0;display:grid}.games-admin-page .game-card summary strong{color:var(--blue);font-size:15px;line-height:1.2}.games-admin-page .game-card summary small{color:#60758c;font-size:12px;font-weight:900}.games-admin-page .game-card summary span{min-height:28px;color:var(--blue);white-space:nowrap;background:#eef5ff;border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:11px;font-weight:900;display:inline-flex}.games-admin-page .game-library-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 18px;padding:14px 16px;display:grid;position:relative}.games-admin-page .game-library-card-head{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;padding:0;display:flex}.games-admin-page .game-library-card-head div{gap:3px;min-width:0;display:grid}.games-admin-page .game-library-card-head strong{color:var(--blue);font-size:16px;line-height:1.2}.games-admin-page .game-library-card-head small{color:#60758c;font-size:12px;font-weight:900}.games-admin-page .game-library-card-head>span{min-height:28px;color:#14529a;white-space:nowrap;background:#f2f7ff;border:1px solid #d7e8f9;border-radius:999px;justify-content:center;align-items:center;min-height:24px;padding:0 9px;font-size:10px;font-weight:900;display:inline-flex;position:absolute;top:12px;right:16px}.games-admin-page .game-library-card>.game-preview{min-width:0;margin:0;padding:0}.games-admin-page .game-library-card>.game-card-actions{grid-area:1/2/3;align-items:center;margin:0;padding:0}.games-admin-page .game-edit-button{background:var(--blue);color:#fff;cursor:pointer;border:1px solid #c8d6ea;border-radius:8px;min-height:40px;padding:0 14px;font-size:13px;font-weight:900}.games-admin-page .game-edit-button:hover{background:#052f78}.games-admin-page .game-library-card>.game-editor{background:#f8fbff;border-top:1px solid #d7e2f0;border-radius:0;padding:16px}.games-admin-page .game-preview{color:#40536a;margin:0;padding:0 14px 12px;font-size:13px;line-height:1.4}.games-admin-page .game-card[open]{box-shadow:0 14px 34px #06398e14}.games-admin-page .game-card .game-editor{background:#f8fbff;border:0;border-top:1px solid #d7e2f0;border-radius:0}.games-admin-page .game-card .game-editor-actions{justify-content:flex-start}.games-admin-page .game-card .game-editor label:last-of-type textarea{min-height:76px}.games-admin-page .game-card-static{gap:10px;padding:12px 14px;display:grid}.games-admin-page .game-card-static header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.games-admin-page .game-card-static header strong{color:var(--blue);font-size:15px;line-height:1.2;display:block}.games-admin-page .game-card-static header small{color:#60758c;font-size:12px;font-weight:900;line-height:1.25;display:block}.games-admin-page .game-card-static header span{min-height:28px;color:var(--blue);white-space:nowrap;background:#eef5ff;border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:11px;font-weight:900;display:inline-flex}.games-admin-page .games-section{gap:12px;display:grid}.game-test-button{min-height:40px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;padding:0 14px;font-size:13px;font-weight:900}.game-test-button:hover{border-color:var(--blue);background:#eef5ff}.game-test-dialog{max-width:min(100%,620px)}.game-test-meta{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;margin-top:-2px;display:flex}.game-test-meta span{min-height:28px;color:var(--blue);background:#eef5ff;border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:11px;font-weight:900;display:inline-flex}.game-test-body{gap:12px;display:grid}.game-test-question{color:#40536a;margin:0;font-size:14px;line-height:1.45}.student-games-page .student-games-intro{margin-bottom:14px}.student-games-page .student-games-intro .admin-panel{gap:6px;display:grid}.student-games-page .student-games-intro h2{color:var(--blue);margin:0;font-size:22px;line-height:1.1}.student-games-page .student-games-intro p{color:#60758c;margin:0;font-size:14px;line-height:1.4}.student-games-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.student-game-card{background:#fff;border:1px solid #d7e2f0;border-radius:14px;gap:12px;padding:16px;display:grid;box-shadow:0 14px 32px #06398e12}.student-game-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.student-game-type{width:max-content;color:var(--blue);letter-spacing:.04em;text-transform:uppercase;background:#eef5ff;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900;display:inline-flex}.student-game-location{color:#8a5b00;white-space:nowrap;background:#fff6df;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:11px;font-weight:900;display:inline-flex}.student-game-card h3{color:var(--blue);margin:0;font-size:20px;line-height:1.1}.student-game-description,.student-game-question,.student-game-hint,.student-game-result{color:#40536a;margin:0;font-size:14px;line-height:1.45}.student-game-question{color:#10233f;font-weight:900}.student-game-wrong-letters{color:#b42318;background:#fff5f3;border-radius:9px;margin:0;padding:9px 11px;font-size:13px;font-weight:900;line-height:1.35}.game-editor-wide{grid-column:1/-1}.game-questions-editor{background:#f8fbff;border:1px solid #d7e2f0;border-radius:12px;gap:12px;padding:14px;display:grid}.game-questions-head,.game-question-editor-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.game-questions-head div{gap:4px;display:grid}.game-questions-head strong{color:var(--blue);font-size:15px}.game-questions-head small{color:#60758c;font-size:12px;font-weight:800;line-height:1.35}.game-questions-head>span{min-width:30px;min-height:28px;color:var(--blue);background:#e9f2ff;border-radius:999px;justify-content:center;align-items:center;font-size:12px;font-weight:900;display:inline-flex}.game-question-editor{background:#fff;border:1px solid #c8d6ea;border-radius:10px;gap:10px;padding:12px;display:grid}.game-question-editor label{gap:6px;display:grid}.game-question-editor-head strong{color:#10233f;font-size:13px}.game-question-remove{color:#b42318;cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:900}.game-question-add{min-height:38px;color:var(--blue);cursor:pointer;background:#fff;border:1px dashed #8eadd2;border-radius:9px;justify-self:start;padding:0 13px;font-size:13px;font-weight:900}.game-question-add:disabled{cursor:not-allowed;opacity:.5}.game-destinations{background:#f8fbff;border:1px solid #d7e2f0;border-radius:12px;gap:10px;padding:14px;display:grid}.game-destinations-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.game-destinations-head div{gap:4px;display:grid}.game-destinations-head strong{color:var(--blue);font-size:14px}.game-destinations-head small{color:#60758c;font-size:12px;font-weight:800}.game-destination-row{align-items:center;gap:10px;display:flex}.game-destination-row select{flex:1}.game-type-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.game-type-fields label:last-child{grid-column:1/-1}.game-card-actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.student-game-progress{width:max-content;color:var(--blue);background:#eef5ff;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.student-game-score{color:#0f6534;background:#effaf2;border:1px solid #b9dfc5;border-radius:12px;gap:10px;padding:16px;display:grid}.student-game-score strong{font-size:18px}.student-game-score span{font-size:15px;font-weight:900}.game-outcome{text-align:center;border-radius:14px;justify-items:center;gap:6px;padding:14px 18px;display:grid;position:relative;overflow:hidden}.game-outcome.is-win{color:#0f7a3b;background:linear-gradient(135deg,#effcf3,#dff8e8)}.game-outcome.is-loss{color:#a83227;background:linear-gradient(135deg,#fff5f3,#ffe8e4)}.game-outcome strong{font-size:20px;line-height:1.15}.game-outcome>span{font-size:13px;font-weight:800}.game-outcome-art{width:76px;height:48px;position:relative}.game-outcome-art b{background:#fff;border-radius:50%;place-items:center;width:42px;height:42px;font-size:25px;line-height:1;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 5px 14px #0f7a3b22}.game-outcome.is-loss .game-outcome-art b{color:#b42318;box-shadow:0 5px 14px #b4231822}.game-outcome-art span{transform-origin:50% 25px;background:#ef476f;border-radius:3px;width:7px;height:18px;animation:1.1s ease-out infinite game-confetti;position:absolute;top:50%;left:50%}.game-outcome-art span:first-child{background:#ef476f;transform:translate(-50%,-50%)rotate(-55deg)translateY(-28px)}.game-outcome-art span:nth-child(2){background:#176cc9;animation-delay:.12s;transform:translate(-50%,-50%)rotate(-22deg)translateY(-32px)}.game-outcome-art span:nth-child(3){background:#e1a600;animation-delay:.24s;transform:translate(-50%,-50%)rotate(22deg)translateY(-32px)}.game-outcome-art span:nth-child(4){background:#238a13;animation-delay:.36s;transform:translate(-50%,-50%)rotate(55deg)translateY(-28px)}.game-outcome.is-loss .game-outcome-art{animation:.6s ease-in-out 2 game-loss-shake}.game-outcome.is-loss .game-outcome-art span{display:none}@keyframes game-confetti{0%,to{opacity:.5}45%{opacity:1;transform:translate(-50%,-50%)rotate(0)translateY(-22px)}70%{opacity:.8}}@keyframes game-loss-shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.student-game-options{gap:8px;display:grid}.student-game-option,.student-game-action{min-height:42px;color:var(--blue);font:inherit;cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:8px;padding:0 12px;font-size:14px;font-weight:900}.student-game-option:hover,.student-game-action:hover{border-color:var(--blue);background:#f4f8ff}.student-game-option.is-selected{border-color:var(--blue);background:#eef5ff}.student-game-empty{color:#60758c;margin:0;font-size:13px;font-weight:800}.student-game-result.is-correct{color:#0f7a3b;font-weight:900}.student-game-result.is-wrong{color:#b42318;font-weight:900}.wheel-stage{place-items:center;padding:18px 12px 8px;display:grid;position:relative}.wheel-pointer{z-index:2;color:#d65c50;text-shadow:0 2px #fff;font-size:27px;line-height:1;position:absolute;top:2px}.student-wheel{aspect-ratio:1;border:8px solid #fff;border-radius:50%;place-items:center;width:min(100%,250px);transition:transform 1.9s cubic-bezier(.12,.72,.12,1);display:grid;position:relative;overflow:hidden;box-shadow:0 8px 20px #10233f2b,0 0 0 2px #c8d6ea}.student-wheel.is-spinning{transition-duration:1.9s}.student-wheel:after{content:"";background:var(--blue);border:5px solid #fff;border-radius:50%;width:34px;height:34px;position:absolute;box-shadow:0 2px 8px #10233f44}.student-wheel-inner{text-align:center;color:#fff;font-size:11px;font-weight:900;display:block;position:absolute;inset:0}.student-wheel-inner span{text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px #0008;justify-content:center;align-items:center;width:42%;min-height:25px;display:flex;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.student-wheel-inner span:first-child{transform:translate(-50%,-50%)rotate(0)translateY(-82px)}.student-wheel-inner span:nth-child(2){transform:translate(-50%,-50%)rotate(60deg)translateY(-82px)}.student-wheel-inner span:nth-child(3){transform:translate(-50%,-50%)rotate(120deg)translateY(-82px)}.student-wheel-inner span:nth-child(4){transform:translate(-50%,-50%)rotate(180deg)translateY(-82px)}.student-wheel-inner span:nth-child(5){transform:translate(-50%,-50%)rotate(240deg)translateY(-82px)}.student-wheel-inner span:nth-child(6){transform:translate(-50%,-50%)rotate(300deg)translateY(-82px)}.student-hangman-word{min-height:52px;color:var(--blue);letter-spacing:.18em;background:#f8fbff;border:1px dashed #c8d6ea;border-radius:12px;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:12px;font-size:20px;font-weight:900;display:flex}.student-hangman-form{flex-wrap:wrap;gap:8px;display:flex}.student-hangman-form input{color:#111827;min-height:42px;font:inherit;background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;flex:100px;padding:0 10px;font-size:14px}.student-hangman-form input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.student-games-back-link{min-height:34px;color:var(--blue);background:#fff;border:1px solid #c8d6ea;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-size:12px;font-weight:900;text-decoration:none;display:inline-flex;box-shadow:0 8px 18px #06398e0d}.student-games-back-link:hover{background:#eef5ff}.pdf-lesson-games-panel{background:#fff;border:1px solid #c8d6ea;border-radius:16px;gap:16px;margin-top:20px;padding:20px;display:grid;box-shadow:0 14px 32px #06398e12}.pdf-lesson-games-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pdf-lesson-games-head h2{color:var(--blue);margin:0;font-size:22px}.pdf-lesson-games-head span{color:#0f7a3b;background:#eff7f2;border-radius:999px;align-items:center;min-height:30px;padding:0 11px;font-size:12px;font-weight:900;display:inline-flex}.pdf-lesson-games-panel .student-games-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.lesson-game-launcher{width:100%;min-height:180px;color:var(--blue);text-align:left;cursor:pointer;background:linear-gradient(145deg,#fff,#f1f6ff);border:1px solid #b9cbea;border-radius:16px;gap:10px;padding:18px;display:grid;box-shadow:0 14px 30px #06398e16}.lesson-game-launcher:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:0 18px 36px #06398e26}.lesson-game-launcher strong{font-size:20px;line-height:1.1}.lesson-game-launcher small{color:#60758c;font-size:13px;font-weight:800;line-height:1.35}.lesson-game-launcher-action{background:var(--blue);color:#fff;border-radius:9px;justify-content:center;align-items:center;width:max-content;min-height:38px;padding:0 14px;font-size:13px;font-weight:900;display:inline-flex}.lesson-game-overlay{z-index:180;background:linear-gradient(135deg,#24114ddf,#542a83f2 48%,#1a0c3de8);place-items:center;padding:34px 22px;display:grid;position:fixed;inset:0;overflow:auto}.lesson-game-overlay:before{content:"";pointer-events:none;background:radial-gradient(circle at 18% 18%,#ffffff18 0 2px,#0000 3px) 0 0/80px 80px,radial-gradient(circle at 82% 28%,#ffffff12 0 2px,#0000 3px) 0 0/110px 110px;position:absolute;inset:0}.lesson-game-overlay-close{z-index:2;color:#fff;cursor:pointer;background:#160d2dcc;border:1px solid #ffffff80;border-radius:10px;min-height:42px;padding:0 16px;font-size:13px;font-weight:900;position:fixed;top:20px;right:24px}.lesson-game-overlay-content{z-index:1;gap:16px;width:min(100%,1240px);display:grid;position:relative}.lesson-game-overlay-title{text-align:center;color:#fff;gap:5px;display:grid}.lesson-game-overlay-title span{letter-spacing:.12em;text-transform:uppercase;opacity:.82;font-size:12px;font-weight:900}.lesson-game-overlay-content>.student-game-card{background:#fff;border:0;border-radius:20px;justify-self:center;width:min(100%,1180px);min-height:min(68vh,700px);padding:34px;box-shadow:0 24px 80px #13072e99}.lesson-game-overlay-content>.student-game-card h3{color:var(--blue);letter-spacing:-.03em;margin:0;font-size:clamp(24px,3vw,38px);line-height:1.08;display:block}.lesson-game-overlay-content .student-game-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.lesson-game-overlay-content .student-game-option{color:#fff;text-align:left;border:0;border-bottom:6px solid #132d66;border-radius:10px;min-height:84px;padding:0 22px;font-size:19px}.lesson-game-overlay-content .student-game-option:nth-child(4n+1){background:#e51d45;border-bottom-color:#a51131}.lesson-game-overlay-content .student-game-option:nth-child(4n+2){background:#176cc9;border-bottom-color:#0c4384}.lesson-game-overlay-content .student-game-option:nth-child(4n+3){background:#e1a600;border-bottom-color:#a87700}.lesson-game-overlay-content .student-game-option:nth-child(4n+4){background:#238a13;border-bottom-color:#14590b}.lesson-game-overlay-content .student-game-option.is-selected{filter:brightness(1.18);outline-offset:-7px;outline:4px solid #fff}.lesson-game-overlay-content .student-game-action{color:#fff;background:#164b9b;min-height:48px}@media (max-width:620px){.lesson-game-overlay{padding:26px 12px}.lesson-game-overlay-close{top:12px;right:12px}.lesson-game-overlay-content .student-game-options{grid-template-columns:1fr}.lesson-game-overlay-content>.student-game-card{min-height:70vh;padding:20px}.lesson-game-overlay-content .student-game-option{min-height:64px;font-size:16px}}.games-admin-layout{width:min(100%,1120px);margin:0 auto}.games-admin-page .courses-title{width:min(100%,1120px);margin-inline:auto}.games-admin-page .courses-title h1{letter-spacing:-.04em;max-width:760px;font-size:clamp(30px,4vw,48px);line-height:1.02}.games-admin-page .games-manager{box-shadow:none;background:0 0;border:0;gap:20px;padding:0;display:grid}.games-admin-page .games-section{background:#fff;border:1px solid #d7e2f0;border-radius:18px;padding:22px;box-shadow:0 18px 44px #06398e12}.games-admin-page .games-section:first-child{background:linear-gradient(145deg,#fff 0%,#f4f8ff 100%);border-color:#b9cee9}.games-admin-page .flashcards-manager-head{align-items:flex-start}.games-admin-page .flashcards-manager-head h2{letter-spacing:-.02em;font-size:24px}.games-admin-page .flashcards-manager-head strong{color:var(--blue);background:#edf5ff}.games-admin-page .games-collapsible>summary{cursor:pointer;list-style:none}.games-admin-page .games-collapsible>summary::-webkit-details-marker{display:none}.games-admin-page .games-collapsible>summary:after{content:"+";width:28px;height:28px;color:var(--blue);background:#f4f8ff;border:1px solid #c8d6ea;border-radius:50%;justify-content:center;align-items:center;font-size:18px;font-weight:500;display:inline-flex}.games-admin-page .games-collapsible[open]>summary:after{content:"-"}.games-admin-page .game-editor{background:0 0;border:0;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0}.games-admin-page .game-editor-legacy{display:none!important}.games-admin-page .game-editor label:first-child,.games-admin-page .game-editor label:nth-child(3),.games-admin-page .game-editor label:nth-child(4),.games-admin-page .game-editor label:nth-child(5),.games-admin-page .game-editor label:nth-child(9),.games-admin-page .game-editor .checkbox-field,.games-admin-page .game-editor-actions,.games-admin-page .game-editor>button{grid-column:1/-1}.games-admin-page .game-editor label{letter-spacing:.02em;font-size:12px}.games-admin-page .game-editor input,.games-admin-page .game-editor textarea,.games-admin-page .game-editor select{background:#fff;border-radius:10px}.games-admin-page .game-editor input.inline-checkbox{width:18px;min-width:18px;height:18px;min-height:18px;accent-color:var(--blue);box-shadow:none;border:0;border-radius:3px;margin:0;padding:0}.games-admin-page .game-editor .checkbox-field{background:#f8fbff;border:1px solid #d7e2f0;border-radius:10px;align-items:center;gap:10px;min-height:40px;padding:10px 12px;display:flex}.games-admin-page .game-editor .checkbox-field span{gap:3px;display:grid}.games-admin-page .game-editor .checkbox-field strong{color:var(--blue);font-size:13px}.games-admin-page .game-editor .checkbox-field small{color:#60758c;font-size:11px;font-weight:800;line-height:1.3}.games-admin-page .game-editor-create{padding-top:4px}.games-admin-page .game-editor-create>button,.games-admin-page .game-editor-actions .action-submit-button{border-radius:10px;min-height:44px}.games-admin-page .game-editor .action-submit-button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-self:start;min-height:48px;padding:0 18px;font-size:14px;font-weight:900;box-shadow:0 8px 18px #06398e24}.games-admin-page .game-editor .action-submit-button:hover{background:#052f78;transform:translateY(-1px)}.games-admin-page .game-editor .action-submit-button:disabled{cursor:not-allowed;background:#8fa2ba;transform:none}.games-admin-page .game-card-actions .game-test-button,.games-admin-page .game-card-actions .flashcard-delete-button{border-radius:8px;min-height:40px;font-size:13px;font-weight:900}.games-admin-page .game-card{border-radius:14px;box-shadow:0 8px 22px #06398e0b}.games-admin-page .game-card summary{min-height:58px;padding:14px 16px}.games-admin-page .game-card summary:after{content:"+";width:26px;height:26px;color:var(--blue);background:#edf5ff;border-radius:50%;justify-content:center;align-items:center;font-size:18px;font-weight:500;display:inline-flex}.games-admin-page .game-card[open] summary:after{content:"-"}.games-admin-page .game-card .game-editor{border-top:1px solid #d7e2f0;grid-template-columns:repeat(2,minmax(0,1fr));padding:16px}.games-admin-page .game-card .game-editor-actions{padding-top:2px}.game-test-dialog{border-radius:18px;padding:24px}.game-test-dialog .flashcard-confirm-actions button{border-radius:10px}.flashcard-confirm-overlay:has(.game-test-dialog){background:linear-gradient(135deg,#24114ddf,#542a83f2 48%,#1a0c3de8);align-items:flex-start;padding:24px 20px;overflow:auto}.game-test-dialog{background:#fff;border-radius:20px;width:min(100%,980px);max-width:none;min-height:min(64vh,680px);max-height:calc(100vh - 48px);margin:auto;padding:30px 34px;overflow:auto;box-shadow:0 24px 80px #13072e99}.game-test-dialog .flashcard-confirm-head h2{letter-spacing:-.03em;font-size:clamp(26px,3vw,40px)}.game-test-dialog .game-test-meta{margin-bottom:4px}.game-test-dialog .game-test-body{gap:16px}.game-test-dialog .game-test-question{color:#243b5a;font-size:clamp(18px,2vw,24px);font-weight:800}.game-test-dialog .student-game-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.game-test-dialog .student-game-option{color:#fff;text-align:left;border:0;border-bottom:6px solid #132d66;border-radius:10px;min-height:78px;padding:0 22px;font-size:19px}.game-test-dialog .student-game-option:nth-child(4n+1){background:#e51d45;border-bottom-color:#a51131}.game-test-dialog .student-game-option:nth-child(4n+2){background:#176cc9;border-bottom-color:#0c4384}.game-test-dialog .student-game-option:nth-child(4n+3){background:#e1a600;border-bottom-color:#a87700}.game-test-dialog .student-game-option:nth-child(4n+4){background:#238a13;border-bottom-color:#14590b}.game-test-dialog .student-game-option:hover{filter:brightness(1.08);border-color:#0000}.game-test-dialog .student-game-option.is-selected{filter:brightness(1.18);outline-offset:-7px;outline:4px solid #fff}.game-test-dialog .student-game-action{color:#fff;background:#164b9b;border-color:#164b9b;min-height:48px}.game-test-dialog .flashcard-confirm-actions{background:linear-gradient(#fff0,#fff 35%);margin:4px -34px -30px;padding:14px 34px 0;position:sticky;bottom:-1px}@media (max-width:620px){.game-test-dialog{min-height:70vh;padding:22px 18px}.game-test-dialog .student-game-options{grid-template-columns:1fr}.game-test-dialog .student-game-option{min-height:64px;font-size:16px}.game-test-dialog .flashcard-confirm-actions{margin:4px -18px -22px;padding:14px 18px 0}}.hangman-drawing{background:linear-gradient(#f8fbff,#eef5ff);border:1px solid #d7e2f0;border-radius:14px;justify-items:center;gap:5px;padding:10px 14px 8px;display:grid}.hangman-drawing svg{width:min(100%,240px);height:auto;display:block}.hangman-drawing span{color:#60758c;letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:900}.hangman-scaffold{fill:none;stroke:#58708c;stroke-linecap:round;stroke-linejoin:round;stroke-width:5px}.hangman-part{fill:none;stroke:#d65c50;stroke-linecap:round;stroke-linejoin:round;stroke-width:5px}.student-game-card .hangman-drawing{margin-top:2px}.student-game-card .student-game-action:disabled{cursor:not-allowed;opacity:.55}@media (max-width:680px){.games-admin-page .games-section{padding:16px}.games-admin-page .game-editor,.games-admin-page .game-card .game-editor,.game-type-fields{grid-template-columns:1fr}.games-admin-page .game-editor label:first-child,.games-admin-page .game-editor label:nth-child(3),.games-admin-page .game-editor label:nth-child(4),.games-admin-page .game-editor label:nth-child(5),.games-admin-page .game-editor label:nth-child(9),.games-admin-page .game-editor .checkbox-field,.games-admin-page .game-editor-actions,.games-admin-page .game-editor>button,.game-editor-wide,.game-type-fields label:last-child{grid-column:auto}.games-admin-page .game-library-card{grid-template-columns:1fr;gap:8px}.games-admin-page .game-library-card>.game-card-actions{grid-area:auto/1;justify-content:flex-start}}@media (max-width:768px){.flashcard-import-form{grid-template-columns:1fr}.flashcard-import-invert{grid-column:1}.flashcard-import-form button{width:100%}}.meeting-room-shell{color:#fff;background:#101017;min-height:100vh;font-family:Arial,Helvetica,sans-serif;overflow:hidden}.meeting-room-shell.has-teacher-switcher .meeting-room-stage{padding-top:72px}.meeting-room-teacher-switcher{z-index:60;width:min(220px,100vw - 24px);position:fixed;top:8px;left:12px}.meeting-room-teacher-switcher label{gap:4px;display:grid}.meeting-room-teacher-switcher span{color:#8493a5;letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:900}.meeting-room-teacher-switcher select{color:#e2e8f0;background:#111827d9;border:1px solid #293646;border-radius:8px;outline:none;width:100%;min-height:32px;padding:0 10px;font-size:11px;font-weight:800;box-shadow:0 6px 16px #0003}.meeting-room-teacher-switcher select:focus{border-color:#79b88f;box-shadow:0 0 0 2px #91d8a919,0 6px 16px #0003}.meeting-room-floating-timer{z-index:22;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;pointer-events:none;background:#0f7a3bcc;border:1px solid #2d3a4790;border-radius:999px;justify-content:center;align-items:center;min-width:82px;min-height:38px;padding:0 12px;font-size:13px;font-weight:900;display:inline-flex;position:fixed;top:16px;left:50%;transform:translate(-50%);box-shadow:0 10px 26px #0003}.meeting-room-floating-timer.is-clickable{cursor:pointer;pointer-events:auto}.meeting-room-floating-timer.is-clickable:hover{background:#118945e6;box-shadow:0 12px 30px #0004}.meeting-room-floating-timer.ended{background:#b42318cc;border-color:#f1b4ad99}.meeting-room-user{text-overflow:ellipsis;white-space:nowrap;background:#18222d;border:1px solid #2d3a47;border-radius:999px;max-width:260px;padding:9px 12px;overflow:hidden;color:#dbe7f5!important;text-transform:none!important;font-size:12px!important}.meeting-timer{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f7a3bcc;border:1px solid #2d3a4790;border-radius:999px;justify-content:center;align-items:center;min-width:76px;min-height:38px;padding:0 12px;font-weight:900;display:inline-flex;box-shadow:0 10px 26px #0003;color:#fff!important;text-transform:none!important;font-size:13px!important}.meeting-timer.ended{background:#b42318cc;border-color:#f1b4ad99}.class-ended-banner{z-index:20;color:#7a2e2a;background:#fff5f3;border:1px solid #f1b4ad;border-radius:999px;align-items:center;gap:12px;max-width:min(720px,100% - 28px);padding:12px 18px;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 18px 44px #0005}.class-ended-banner div{gap:2px;display:grid}.class-ended-banner strong{font-size:14px}.class-ended-banner span{font-size:13px;font-weight:900}.class-ended-banner button{color:#fff;cursor:pointer;white-space:nowrap;background:#7a2e2a;border:0;border-radius:999px;min-height:34px;padding:0 12px;font-size:12px;font-weight:900}.meeting-room-stage{box-sizing:border-box;--call-sidebar-width:clamp(156px,14vw,190px);--meeting-controls-space:78px;background:#101017;grid-template-columns:minmax(0,1fr);gap:4px;height:100dvh;padding:58px 12px 104px;display:grid;position:relative}.meeting-room-stage.sharing{grid-template-columns:minmax(0,1fr);align-items:stretch}.meeting-room-stage.sharing.dual-share{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.meeting-room-stage.sharing.share-focus{grid-template-columns:minmax(0,1fr)}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-share-frame{grid-column:auto}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-screen-frame{grid-column:1}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-screen-frame+.meeting-share-frame{grid-column:2}.meeting-call-frame,.meeting-share-frame{min-width:0;min-height:0;box-shadow:none;background:#2f2e3a;border:0;border-radius:8px;position:relative;overflow:hidden}.meeting-call-resize-handle{display:none}.meeting-room-stage.is-call-sidebar-resizable .meeting-call-resize-handle{top:58px;bottom:104px;right:calc(var(--call-sidebar-width) + 6px);z-index:48;cursor:col-resize;touch-action:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:stretch;width:12px;display:flex;position:absolute}.meeting-room-stage.is-call-sidebar-resizable .meeting-call-resize-handle span{opacity:.9;background:linear-gradient(#8fb3ff66 0%,#dbeafeaa 50%,#8fb3ff66 100%);border-radius:999px;width:2px;height:100%;box-shadow:0 0 0 1px #02061755,0 0 18px #93c5fd55}.meeting-room-stage.is-call-sidebar-resizable .meeting-call-resize-handle:hover span{opacity:1;background:linear-gradient(#93c5fd 0%,#dbeafe 50%,#93c5fd 100%)}.meeting-room-stage:not(.sharing) .meeting-call-frame{width:100%;height:100%}.meeting-room-stage:not(.sharing) .internal-call-panel{min-height:0}.meeting-room-stage:not(.sharing) .internal-call-grid{box-sizing:border-box;align-content:stretch;height:100%;min-height:0;padding:0 12px 12px}.meeting-room-stage:not(.sharing) .meeting-local-video,.meeting-room-stage:not(.sharing) .internal-call-grid article{aspect-ratio:auto;height:100%;min-height:0}.meeting-room-stage:not(.sharing) .internal-call-grid{grid-template-rows:minmax(0,1fr)}.meeting-room-stage.sharing .meeting-call-frame{z-index:35;pointer-events:none;background:0 0;border:0;position:absolute;inset:0;overflow:visible}.meeting-room-stage.sharing .meeting-call-frame .internal-call-panel{pointer-events:none;background:0 0}.meeting-room-stage.sharing .meeting-call-frame .internal-call-grid article,.meeting-room-stage.sharing .meeting-call-frame footer,.meeting-room-stage.sharing .meeting-call-frame .call-controls-show,.meeting-room-stage.sharing .meeting-call-frame .remove-participant-overlay,.meeting-room-stage.sharing .meeting-call-frame .internal-call-error{pointer-events:auto}.meeting-share-frame{background:#dfe8f1;grid-row:1;padding:0}.meeting-room-stage.sharing:not(.dual-share) .meeting-share-frame{grid-column:1/-1}.meeting-room-stage.sharing.dual-share .meeting-share-frame{grid-column:auto}.meeting-room-stage.sharing.share-focus .meeting-share-frame{grid-column:1/-1}.meeting-room-stage.sharing.has-presentation:not(.dual-share):not(.share-focus) .meeting-call-frame{z-index:36;pointer-events:auto;background:0 0;border:0;border-radius:8px;grid-area:1/2;width:100%;height:100%;position:relative;inset:auto;overflow:visible}.meeting-room-stage.sharing.has-presentation:not(.dual-share):not(.share-focus) .internal-call-panel{pointer-events:auto;background:0 0}.meeting-room-stage.sharing.has-presentation:not(.dual-share):not(.share-focus) .internal-call-grid{cursor:default;touch-action:auto;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:10px;width:100%;max-width:none;height:auto;display:flex;position:static;overflow:visible}.meeting-room-stage.sharing.has-presentation:not(.dual-share):not(.share-focus) .internal-call-grid article,.meeting-room-stage.sharing.has-presentation:not(.dual-share):not(.share-focus) .meeting-local-video{flex:0 0 clamp(88px,10vw,116px);width:100%!important;height:clamp(88px,10vw,116px)!important}.meeting-start-panel{text-align:center;background:radial-gradient(circle at 50% 0,#1e2c3b 0,#0b1118 62%,#070b10 100%);place-content:center;justify-items:center;gap:12px;width:100%;height:100%;min-height:360px;padding:24px;display:grid}.meeting-dashboard-panel{text-align:left;place-content:center stretch;justify-items:stretch;max-width:1180px;margin:0 auto;padding:28px clamp(16px,4vw,40px)}.meeting-dashboard-panel .meeting-dashboard-hero{gap:10px;max-width:860px;display:grid}.meeting-dashboard-panel .meeting-dashboard-hero span{color:#cde7ff;letter-spacing:.04em;text-transform:uppercase;background:#17324d;border-radius:999px;align-items:center;width:max-content;min-height:28px;padding:0 10px;font-size:11px;font-weight:900;display:inline-flex}.meeting-dashboard-panel .meeting-dashboard-hero h1{color:#fff;margin:0;font-size:36px;line-height:1.04}.meeting-dashboard-panel .meeting-dashboard-hero p{color:#b4c4d5;max-width:760px;margin:0;font-size:15px;line-height:1.55}.meeting-dashboard-panel .meeting-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:100%;display:grid}.meeting-dashboard-panel .meeting-dashboard-card{background:linear-gradient(#111a25ee 0%,#0b1219f2 100%);border:1px solid #243142;border-radius:18px;gap:12px;min-width:0;padding:20px;display:grid;box-shadow:0 22px 60px #0006}.meeting-dashboard-panel .meeting-dashboard-card strong{color:#f8fafc;font-size:18px;line-height:1.15}.meeting-dashboard-panel .meeting-dashboard-card p{color:#b0bfd0;margin:0;font-size:14px;line-height:1.5}.meeting-dashboard-panel .meeting-dashboard-card-muted{background:linear-gradient(#0f1720ee 0%,#091018f2 100%)}.meeting-dashboard-panel .meeting-dashboard-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;display:flex}.meeting-dashboard-panel .meeting-dashboard-actions button,.meeting-dashboard-panel .meeting-dashboard-actions a{color:#fff;cursor:pointer;background:#0f7a3b;border:1px solid #334155;border-radius:999px;min-height:42px;padding:0 16px;font-size:14px;font-weight:900;text-decoration:none}.meeting-dashboard-panel .meeting-dashboard-actions a{background:#18222d}.meeting-dashboard-panel .meeting-dashboard-actions button:hover,.meeting-dashboard-panel .meeting-dashboard-actions a:hover{border-color:#93d9aa}.meeting-dashboard-panel .meeting-dashboard-tip{max-width:760px}.meeting-start-panel span{color:#91d8a9;text-transform:uppercase;font-size:12px;font-weight:900}.meeting-start-panel h1{color:#fff;margin:0;font-size:32px;line-height:1.1}.meeting-start-panel p{color:#aebdcc;max-width:520px;margin:0;font-size:15px;line-height:1.45}.meeting-start-panel .meeting-share-tip{color:#c7f4d5;background:#10251a;border:1px solid #284a38;border-radius:10px;padding:10px 12px;font-size:13px;font-weight:800}.meeting-call-mode{z-index:8;opacity:.25;background:#101820d9;border:1px solid #2d3a47;border-radius:999px;gap:6px;padding:4px;transition:opacity .18s;display:flex;position:absolute;top:16px;left:16px}.meeting-call-frame:hover .meeting-call-mode,.meeting-call-frame:focus-within .meeting-call-mode{opacity:1}.meeting-call-mode button{color:#dbe7f5;cursor:pointer;background:0 0;border:0;border-radius:999px;min-height:30px;padding:0 10px;font-size:12px;font-weight:900}.meeting-call-mode button.active{color:#fff;background:#0f7a3b}.meeting-start-panel:not(.meeting-dashboard-panel)>div{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:6px;display:flex}.meeting-start-panel button,.meeting-start-panel a{color:#fff;cursor:pointer;background:#0f7a3b;border:1px solid #334155;border-radius:999px;justify-content:center;align-items:center;min-height:42px;padding:0 16px;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex}.meeting-start-panel a{background:#18222d}.meeting-start-panel button:hover,.meeting-start-panel a:hover{border-color:#93d9aa}.internal-call-panel{background:#101017;grid-template-rows:minmax(0,1fr);width:100%;height:100%;min-height:420px;padding:0;display:grid;position:relative}.internal-call-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));align-items:stretch;gap:12px;width:100%;height:100%;min-height:0;display:grid}.internal-call-grid.tile-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}.meeting-room-stage.sharing .internal-call-grid{z-index:42;justify-content:flex-end;align-items:flex-start;gap:10px;width:auto;max-width:min(44vw,420px);height:auto;display:flex;position:absolute;top:72px;right:16px}.meeting-room-stage.sharing .internal-call-grid article,.meeting-room-stage.sharing .meeting-local-video{background:#171722;border:1px solid #ffffff1f;border-radius:8px;flex:0 0 clamp(128px,13vw,170px);min-height:0;box-shadow:0 18px 44px #0009;width:clamp(128px,13vw,170px)!important;height:clamp(86px,9vw,116px)!important;position:relative!important;inset:auto!important}.meeting-room-stage.sharing.share-focus .internal-call-grid{flex-direction:column;max-width:220px}.meeting-room-stage.sharing.share-focus .internal-call-grid article{flex-basis:96px;width:150px!important;height:96px!important}.internal-call-grid article{min-height:260px;box-shadow:none;background:#2f2e3a;border:0;border-radius:8px;position:relative;overflow:hidden}.meeting-room-stage.sharing.share-focus .internal-call-grid article{min-height:0}.internal-call-grid video{background:#05070a;width:100%;height:100%;display:block;transform:scaleX(-1);object-fit:cover!important;object-position:center center!important}.internal-call-grid article.remote-video-off video{opacity:0}.internal-call-grid article.remote-video-off:before{content:"";z-index:1;background:#05070a;position:absolute;inset:0}.internal-call-grid article.remote-video-off span,.internal-call-grid article.remote-video-off .participant-tile-actions{z-index:6}.internal-call-grid article>span{color:#fff;background:#000b;border-radius:6px;padding:6px 9px;font-size:12px;font-weight:900;position:absolute;bottom:16px;left:16px}.internal-call-grid article>span[role=button]{cursor:pointer}.meeting-room-stage.sharing .internal-call-grid article>span{text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 16px);padding:5px 7px;font-size:10px;line-height:1.2;bottom:14px;left:8px;overflow:hidden}.meeting-room-stage.sharing.share-focus .internal-call-grid article>span{text-overflow:ellipsis;white-space:nowrap;opacity:.62;background:#0008;border-radius:5px;max-width:calc(100% - 16px);padding:4px 6px;font-size:10px;line-height:1;bottom:8px;left:8px;overflow:hidden}.meeting-room-stage.sharing.share-focus .internal-call-grid article:hover span{opacity:.9}.connection-quality-badge{z-index:7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#e2e8f0;pointer-events:none;background:#020617c8;border:1px solid #33415599;border-radius:999px;align-items:center;gap:4px;max-width:calc(100% - 16px);padding:4px 6px;font-size:10px;font-weight:900;line-height:1;display:inline-flex;position:absolute;top:8px;left:8px}.connection-quality-badge .call-control-icon{stroke-width:2.2px;flex:none;width:11px;height:11px}.connection-quality-dot{background:#94a3b8;border-radius:999px;width:6px;height:6px;box-shadow:0 0 0 2px #ffffff10}.connection-quality-badge.tone-excellent{color:#dcfce7;border-color:#16653499}.connection-quality-badge.tone-excellent .connection-quality-dot{background:#16a34a}.connection-quality-badge.tone-good{color:#dcfce7;border-color:#14532d99}.connection-quality-badge.tone-good .connection-quality-dot{background:#22c55e}.connection-quality-badge.tone-regular{color:#ffedd5;border-color:#92400e99}.connection-quality-badge.tone-regular .connection-quality-dot{background:#f59e0b}.connection-quality-badge.tone-bad{color:#fee2e2;border-color:#991b1b99}.connection-quality-badge.tone-bad .connection-quality-dot{background:#ef4444}.connection-quality-badge.tone-terrible{color:#fecaca;border-color:#7f1d1d}.connection-quality-badge.tone-terrible .connection-quality-dot{background:#991b1b}.participant-tile-actions{z-index:5;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#02061799;border:1px solid #33415599;border-radius:14px;grid-template-columns:repeat(2,22px);gap:4px;padding:4px;display:grid;position:absolute;top:6px;right:6px}.participant-tile-actions.is-collapsed{background:#020617b8;border-radius:999px;align-items:flex-start;gap:0;padding:3px;display:flex}.participant-tile-actions.is-collapsed>:not(.participant-controls-toggle){display:none}.participant-controls-toggle{color:#e2e8f0;cursor:pointer;width:22px;min-width:22px;height:22px;box-shadow:none;opacity:.82;background:#0f172acc;border:1px solid #334155;border-radius:999px;justify-content:center;align-items:center;padding:0;transition:transform .18s,opacity .18s,background .18s;display:inline-flex}.participant-controls-toggle:hover{color:#fff;opacity:1;background:#1d4ed8}.participant-controls-toggle .call-control-icon{width:12px;height:12px;transition:transform .18s}.participant-controls-toggle.active .call-control-icon{transform:rotate(180deg)}.remote-media-button{color:#e2e8f0;cursor:pointer;width:22px;min-width:22px;height:22px;box-shadow:none;opacity:.86;background:#0f172acc;border:1px solid #334155;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.remote-media-button:hover{color:#fff;opacity:1;background:#1d4ed8}.remote-media-button.is-off{color:#fff;background:#7f1d1dcc;border-color:#fecaca}.remote-media-button .call-control-icon{width:13px;height:13px}.rename-participant-button{color:#dbeafe;cursor:pointer;width:22px;min-width:22px;min-height:22px;box-shadow:none;opacity:.86;background:#0f172acc;border:1px solid #bfdbfe;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:9px;font-weight:900;line-height:1;display:inline-flex}.rename-participant-button:hover{color:#fff;opacity:1;background:#1d4ed8}.remove-participant-button{color:#fff;cursor:pointer;width:22px;min-width:22px;height:22px;min-height:22px;box-shadow:none;opacity:.86;background:#7f1d1dcc;border:1px solid #fecaca;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:12px;font-weight:900;line-height:1;display:inline-flex}.remove-participant-button:hover{opacity:1;background:#dc2626}.participant-joining-tile{color:#fff;text-align:center;background:radial-gradient(circle at 50% 42%,#172033 0%,#05070a 64%);place-content:center;justify-items:center;gap:8px;min-height:260px;display:grid;position:relative}.call-connecting-tile{background:radial-gradient(circle at 50% 32%,#18314a 0%,#08111a 55%,#05070a 100%);min-height:320px;padding:22px}.call-connecting-tile:before{content:"";pointer-events:none;opacity:.45;border:1px solid #2d4963;border-radius:22px;position:absolute;inset:18px}.call-connecting-tile strong{letter-spacing:-.01em;max-width:280px;color:#fff!important;font-size:18px!important;line-height:1.15!important}.call-connecting-tile span{overflow-wrap:anywhere;text-wrap:balance;margin:0 auto;color:#b7e7c6!important;width:min(100%,320px)!important;font-size:13px!important;line-height:1.45!important;display:block!important}.participant-joining-spinner{border:3px solid #ffffff38;border-top-color:#91d8a9;border-radius:50%;width:34px;height:34px;animation:.75s linear infinite admission-spin}.participant-joining-tile strong{color:#f8fafc;font-size:14px;line-height:1.2}.participant-joining-tile span{color:#91d8a9!important;background:0 0!important;border:0!important;max-width:none!important;padding:0!important;font-size:12px!important;font-weight:900!important;position:static!important}.participant-joining-tile.call-connecting-tile{width:100%;max-width:100%;overflow:hidden}.participant-joining-tile.call-connecting-tile strong{text-align:center;max-width:min(280px,100% - 28px);color:#fff!important;font-size:18px!important;line-height:1.15!important}.participant-joining-tile.call-connecting-tile span{color:#d6f7df!important;text-align:center!important;white-space:normal!important;overflow-wrap:break-word!important;width:min(320px,100% - 28px)!important;max-width:calc(100% - 28px)!important;margin:0 auto!important;font-size:13px!important;font-weight:800!important;line-height:1.35!important;display:block!important}.participant-joining-dismiss{color:#fff;cursor:pointer;opacity:.72;background:#0f172acc;border:1px solid #ffffff24;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:14px;font-weight:900;line-height:1;display:inline-flex;position:absolute;top:10px;right:10px}.participant-joining-dismiss:hover{opacity:1;background:#dc2626}.remove-participant-overlay{z-index:80;background:#020617b8;place-items:center;padding:16px;display:grid;position:absolute;inset:0}.remove-participant-dialog{color:#fff;background:#111827;border:1px solid #334155;border-radius:10px;gap:12px;width:min(340px,100%);padding:18px;display:grid;box-shadow:0 22px 60px #000b}.remove-participant-dialog strong{font-size:18px}.remove-participant-dialog p{color:#dbe7f5;margin:0;font-size:13px;font-weight:800;line-height:1.4}.remove-participant-dialog div{justify-content:flex-end;gap:8px;display:flex}.remove-participant-dialog button{color:#fff;cursor:pointer;background:#334155;border:0;border-radius:7px;min-height:36px;padding:0 12px;font-size:12px;font-weight:900}.remove-participant-dialog button:last-child{background:#dc2626}.rename-participant-dialog input{color:#fff;background:#020617;border:1px solid #334155;border-radius:8px;outline:none;width:100%;min-height:40px;padding:0 10px;font-size:14px}.rename-participant-dialog input:focus{border-color:#93d9aa;box-shadow:0 0 0 3px #93d9aa26}.rename-participant-dialog button:last-child{background:#0f7a3b}.rename-participant-dialog button:disabled{cursor:not-allowed;opacity:.55}.meeting-local-video{aspect-ratio:16/9;min-height:0;position:relative}.meeting-screen-frame{background:#2f2e3a;padding:0}.meeting-screen-close-button{z-index:3;color:#fff;cursor:pointer;background:#b42318;border:1px solid #f1b4ad;border-radius:999px;justify-content:center;align-items:center;min-width:28px;min-height:28px;padding:0 10px;font-size:14px;font-weight:900;display:inline-flex;position:absolute;top:10px;right:10px;box-shadow:0 10px 22px #0005}.meeting-screen-close-button:hover{background:#d92d20}.meeting-screen-host{width:100%;height:100%;min-height:0}.meeting-screen-stage-inner{grid-template-columns:minmax(0,1fr);place-items:stretch stretch;gap:0;width:100%;height:100%;min-height:0;display:grid}.meeting-screen-tile{background:#2f2e3a;place-self:stretch stretch;place-items:center;width:100%;height:100%;min-height:0;display:grid;position:relative;overflow:hidden}.meeting-screen-tile video{background:#2f2e3a;display:block;object-fit:contain!important;object-position:center center!important;width:auto!important;min-width:0!important;max-width:100%!important;height:auto!important;min-height:0!important;max-height:100%!important;transform:none!important}.meeting-screen-tile span{bottom:16px;left:16px}.split-control{background:#2b2f36;border:1px solid #3a4049;border-radius:6px;align-items:stretch;display:inline-flex;position:relative;overflow:visible}.split-control button{color:#fff;cursor:pointer;height:40px;box-shadow:none;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;padding:0;font-size:12px;font-weight:900;line-height:1;display:inline-flex}.split-control button:hover{background:#3a4049}.split-control button.active{background:#0f7a3b}.split-control button.muted{background:#c72c31}.split-control button:first-child{border-right:1px solid #3f4650;border-radius:6px 0 0 6px;width:42px;min-width:42px}.split-control button:last-of-type{border-radius:0 6px 6px 0}.split-control-toggle{opacity:.82;background:#232933;width:20px;min-width:20px;padding:0 2px}.split-control-toggle:hover{opacity:1}.split-control-toggle .call-control-icon{width:11px;height:11px}.device-menu{z-index:90;background:#111827f2;border:1px solid #334155;border-radius:10px;gap:6px;min-width:210px;max-width:min(280px,100vw - 24px);padding:10px;display:grid;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 18px 44px #0009}.device-menu-portal{left:50%;bottom:calc(78px + env(safe-area-inset-bottom));z-index:160;width:min(320px,100vw - 18px);position:fixed;transform:translate(-50%)}.device-menu-portal .device-menu{width:100%!important;min-width:0!important;max-width:none!important;max-height:min(320px,52dvh)!important;position:static!important;bottom:auto!important;left:auto!important;right:auto!important;overflow:auto!important}.device-menu strong{color:#dbe7f5;font-size:12px}.device-menu button{color:#fff;background:#2b2f36;border-radius:8px;justify-content:flex-start;width:100%;height:auto;min-height:34px;padding:8px 10px;font-size:12px}.device-menu button.active{background:#0f7a3b}.device-menu p{color:#94a3b8;margin:0;font-size:12px}.internal-call-placeholder{color:#aebdcc;place-items:center;width:100%;height:100%;font-size:14px;font-weight:900;display:grid}.internal-call-panel footer{z-index:60;scrollbar-width:none;opacity:.96;background:#111214f5;border:1px solid #252a31;border-radius:8px;flex-wrap:nowrap;justify-content:center;align-items:center;gap:7px;max-width:calc(100vw - 24px);padding:8px;transition:opacity .18s,transform .18s;display:flex;position:fixed;bottom:24px;left:50%;overflow:visible;transform:translate(-50%);box-shadow:0 10px 28px #0009}.meeting-room-stage.sharing .internal-call-panel footer{flex-wrap:nowrap;justify-content:center;max-width:calc(100vw - 24px);position:fixed;bottom:24px;left:50%;right:auto;overflow:visible;transform:translate(-50%)}.meeting-room-stage.sharing.share-focus .internal-call-panel footer{opacity:.92;background:#101418e8;border:1px solid #334155cc;border-radius:12px;grid-template-columns:repeat(2,44px);justify-content:center;gap:8px;width:auto;padding:10px;display:grid;bottom:10px;left:10px;right:10px;box-shadow:0 16px 38px #000b}.internal-call-panel footer.is-hidden,.meeting-room-stage.sharing.share-focus .internal-call-panel footer.is-hidden{display:none}.internal-call-panel footer::-webkit-scrollbar{display:none}.internal-call-panel:hover footer,.internal-call-panel:focus-within footer{opacity:1;transform:translate(-50%)}.meeting-room-stage.sharing .internal-call-panel:hover footer,.meeting-room-stage.sharing .internal-call-panel:focus-within footer{transform:translate(-50%)}.meeting-room-stage.sharing.share-focus .internal-call-panel:hover footer,.meeting-room-stage.sharing.share-focus .internal-call-panel:focus-within footer{opacity:1;transform:translateY(0)}.internal-call-error{z-index:92;color:#f8fafc;text-align:left;background:#111827;border:1px solid #f59e0b;border-radius:12px;width:min(720px,100% - 40px);margin:0;padding:16px 18px;font-size:14px;font-weight:800;line-height:1.45;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 18px 48px #0009}.internal-call-error p{margin:0}.internal-call-error .internal-call-retry{color:#111827;cursor:pointer;background:#f59e0b;border:0;border-radius:8px;justify-content:center;align-items:center;min-height:34px;margin-top:10px;padding:0 14px;font-size:12px;font-weight:900;display:inline-flex}.internal-call-error .internal-call-retry:hover{background:#fbbf24}.internal-call-join-overlay{z-index:70;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:linear-gradient(#05070ae6 0%,#05070af7 100%);place-items:center;padding:18px;display:grid;position:absolute;inset:0}.internal-call-join-card{color:#fff;background:#0b1220;border:1px solid #314156;border-radius:16px;gap:10px;width:min(560px,100%);padding:22px 20px;display:grid;box-shadow:0 22px 60px #000b}.internal-call-join-card span{color:#cde7ff;letter-spacing:.02em;text-transform:uppercase;background:#17324d;border-radius:999px;align-items:center;width:max-content;min-height:28px;padding:0 10px;font-size:11px;font-weight:900;display:inline-flex}.internal-call-join-card strong{font-size:20px;line-height:1.15}.internal-call-join-card p{color:#d6e2f0;margin:0;font-size:14px;font-weight:700;line-height:1.45}.internal-call-join-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.internal-call-join-approve{color:#fff;cursor:pointer;background:#0f7a3b;border:0;border-radius:10px;justify-content:center;align-items:center;width:max-content;min-height:42px;padding:0 16px;font-size:13px;font-weight:900;display:inline-flex}.internal-call-join-approve:hover{background:#0b5f2d}.internal-call-join-leave{color:#e2e8f0;cursor:pointer;background:#111827;border:1px solid #334155;border-radius:10px;justify-content:center;align-items:center;width:max-content;min-height:42px;padding:0 16px;font-size:13px;font-weight:900;display:inline-flex}.internal-call-join-leave:hover{background:#1f2937}.internal-call-panel footer button{color:#fff;cursor:pointer;width:42px;min-width:42px;height:40px;box-shadow:none;background:#2b2f36;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:12px;font-weight:900;line-height:1;display:inline-flex}.meeting-room-stage.sharing.share-focus .internal-call-panel footer button{background:#27313d;border-radius:9px;width:44px;min-width:44px;height:42px}.internal-call-panel footer button:hover{background:#3a4049}.internal-call-panel footer button.active{background:#0f7a3b}.internal-call-panel footer button.share-focus-button{color:#fff;background:#155eef;box-shadow:0 0 0 1px #8fb3ff44,0 10px 22px #155eef42}.internal-call-panel footer button.share-focus-button:hover{background:#0f46c7}.internal-call-panel footer button.share-focus-button.active{color:#111827;background:#f59e0b;box-shadow:0 0 0 1px #ffe0a366,0 10px 22px #f59e0b42}.internal-call-panel footer button.hide-controls-button{background:#475569}.internal-call-panel footer button.hide-controls-button:hover{background:#64748b}.internal-call-panel footer button.muted{background:#c72c31}.internal-call-panel footer button.end-call{background:#df3138;margin-left:8px}.meeting-room-stage.sharing.share-focus .internal-call-panel footer button.end-call{background:#ef4444;margin-left:0}.internal-call-panel footer button.end-call:hover{background:#f04449}.internal-call-panel footer button:first-child:not(.join-call){background:#2b2f36}.internal-call-panel footer button.muted:first-child:not(.join-call){background:#c72c31}.internal-call-panel footer button.join-call{background:#0f7a3b;width:auto;min-width:104px;padding:0 14px}.internal-call-panel footer .split-control button{height:40px}.internal-call-panel footer .split-control button:first-child{width:42px;min-width:42px}.internal-call-panel footer .split-control-toggle{width:20px;min-width:20px;height:40px}.internal-call-panel footer .split-control-toggle .call-control-icon{width:11px;height:11px}.meeting-room-stage.sharing.share-focus .internal-call-panel footer .split-control{background:#27313d;border-color:#3b4654;border-radius:9px;width:100%}.meeting-room-stage.sharing.share-focus .internal-call-panel footer .split-control button{height:42px}.meeting-room-stage.sharing.share-focus .internal-call-panel footer .split-control button:first-child{width:34px;min-width:34px}.meeting-room-stage.sharing.share-focus .internal-call-panel footer .split-control-toggle{width:10px;min-width:10px;height:42px}.internal-call-panel footer .device-menu button{width:100%;min-width:0;height:auto}.call-controls-show{z-index:62;color:#fff;cursor:pointer;background:#111214f5;border:1px solid #334155;border-radius:8px;justify-content:center;align-items:center;width:46px;height:42px;display:inline-flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 10px 28px #0009}.call-controls-show:hover{background:#263241}.meeting-room-stage.sharing .call-controls-show{position:absolute;bottom:10px;left:10px;right:auto;transform:none}.call-control-icon{stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.call-timer-pill{color:#fff;background:#0f7a3b;border-radius:6px;align-items:center;gap:6px;min-width:82px;height:40px;padding:0 10px;display:inline-flex}.call-timer-pill[type=button]{cursor:pointer;border:0}.call-timer-pill:disabled{cursor:default}.meeting-room-stage.sharing.share-focus .call-timer-pill{background:#dc2626;border-radius:9px;grid-column:1/-1;justify-content:center;min-width:0;height:40px}.call-timer-pill.ended{background:#b42318}.call-timer-pill strong{white-space:nowrap;font-size:13px;line-height:1}.call-timer-pill .call-control-icon{width:18px;height:18px}.call-timer-pill input{color:#fff;text-align:center;background:#ffffff18;border:0;border-radius:5px;outline:none;width:42px;height:28px;font-size:13px;font-weight:900}.call-timer-pill input:focus{box-shadow:0 0 0 2px #fff8}.call-timer-pill input::-webkit-outer-spin-button{margin:0}.call-timer-pill input::-webkit-inner-spin-button{margin:0}.call-timer-pill small{font-size:11px;font-weight:900;line-height:1}.timer-control-overlay{z-index:140;background:#020617c7;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.timer-control-dialog{background:#111827;border-color:#2f4563;border-radius:12px;gap:14px;width:min(420px,100vw - 32px);padding:18px}.timer-control-dialog strong{font-size:22px;line-height:1.05}.timer-control-dialog p{max-width:30ch;font-size:14px;line-height:1.35}.timer-control-dialog label{color:#cbd5e1;text-align:left;gap:7px;font-size:12px;font-weight:900;display:grid}.timer-control-dialog input{color:#f8fafc;text-align:center;background:#020617;border:1px solid #4b607c;border-radius:9px;outline:none;width:100%;height:46px;font-size:22px;font-weight:900}.timer-control-dialog input:focus{border-color:#91d8a9;box-shadow:0 0 0 3px #91d8a91f}.timer-control-dialog div{grid-template-columns:1fr 1fr;gap:10px;display:grid}.timer-control-dialog div button{width:100%;min-height:42px;padding:0 12px}.timer-control-dialog div button:first-child{color:#fff;background:#334155}.timer-control-dialog div button:last-child{color:#fff;background:#0f7a3b}.timer-control-dialog div button:last-child:hover{background:#118945}.timer-control-dialog .timer-end-class-button{color:#fff;background:#7f1d1d;border:1px solid #fca5a5;width:100%;min-height:44px}.timer-control-dialog .timer-end-class-button:hover{background:#991b1b}.student-room-link-trigger{z-index:78;color:#cbd5e1;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;opacity:.42;background:#101827b8;border:1px solid #33415599;border-radius:999px;justify-content:center;align-items:center;min-height:28px;padding:0 10px;font-size:10px;font-weight:900;display:inline-flex;position:fixed;bottom:12px;left:12px}.student-room-link-trigger:hover,.student-room-link-trigger:focus-visible{opacity:1;color:#fff;background:#18222dcc;outline:none}.student-room-link-overlay{z-index:130;background:#02061780;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.student-room-link-overlay section{color:#fff;background:#111827f5;border:1px solid #334155;border-radius:10px;gap:12px;width:min(420px,100vw - 32px);padding:14px;display:grid;box-shadow:0 22px 58px #000b}.student-room-link-overlay header{justify-content:space-between;align-items:flex-start;gap:12px;margin:0;display:flex}.student-room-link-overlay header div{gap:3px;display:grid}.student-room-link-overlay span{color:#91d8a9;text-transform:uppercase;font-size:10px;font-weight:900}.student-room-link-overlay strong{color:#f8fafc;font-size:16px;line-height:1.15}.student-room-link-overlay header button{color:#cbd5e1;cursor:pointer;background:#18222d;border:1px solid #334155;border-radius:999px;width:30px;height:30px;font-size:12px;font-weight:900}.student-room-link-overlay input{color:#dbe7f5;background:#020617;border:1px solid #334155;border-radius:8px;outline:none;width:100%;min-height:42px;padding:0 11px;font-size:13px}.student-room-link-overlay input:focus{border-color:#91d8a9;box-shadow:0 0 0 3px #91d8a91f}.student-room-link-overlay section>button{color:#fff;cursor:pointer;background:#0f7a3b;border:0;border-radius:8px;min-height:40px;padding:0 14px;font-size:13px;font-weight:900}.meeting-call-chat-button{position:relative;color:#fff!important;width:42px!important;min-width:42px!important;height:40px!important;min-height:40px!important;box-shadow:none!important;background:#2b2f36!important;border:0!important;border-radius:6px!important;margin:0!important;padding:0!important}.meeting-call-chat-button:hover{background:#3a4049!important}.meeting-call-chat-button .student-chat-launch-main{justify-content:center;gap:0;width:100%}.meeting-call-chat-button .student-chat-icon{width:20px;height:20px}.meeting-call-chat-button .student-chat-badge{min-width:19px;height:19px;padding:0 5px;font-size:10px;position:absolute;top:-7px;right:-6px}.meeting-materials-frame{background:#2f2e3a;padding:0}.meeting-materials-panel{color:#111827;background:#fff;border-radius:8px;grid-template-rows:auto minmax(0,1fr);width:100%;height:100%;display:grid;overflow:hidden}.meeting-materials-panel>header{background:#fff;border-bottom:1px solid #d7e2f0;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex;position:relative}.meeting-materials-panel>header span{color:var(--green);text-transform:uppercase;font-size:11px;font-weight:900;display:block}.meeting-materials-panel>header h2{color:var(--blue);margin:3px 0 0;font-size:20px;line-height:1.1}.meeting-materials-panel>header a{min-height:34px;color:var(--blue);white-space:nowrap;background:#fff;border:1px solid #c8d6ea;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-size:12px;font-weight:900;text-decoration:none;display:inline-flex}.meeting-materials-actions{justify-content:flex-end;align-items:center;gap:8px;min-width:max-content;display:flex}.meeting-materials-body{grid-template-columns:minmax(0,1fr);min-height:0;display:grid}.meeting-material-picker{position:relative}.meeting-material-picker>summary{min-height:34px;color:var(--blue);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #c8d6ea;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-size:12px;font-weight:900;list-style:none;display:inline-flex}.meeting-material-picker>summary::-webkit-details-marker{display:none}.meeting-material-picker[open]>summary{border-color:var(--blue);background:#eef5ff}.meeting-material-picker-content{z-index:20;background:#f8fbff;border:1px solid #c8d6ea;border-radius:10px;width:min(380px,100vw - 36px);max-height:min(560px,100vh - 170px);padding:12px;position:absolute;top:44px;right:0;overflow:auto;box-shadow:0 22px 50px #0f172a33}.meeting-material-picker-content details{background:#fff;border:1px solid #d7e2f0;border-radius:8px;margin-bottom:10px;overflow:hidden}.meeting-material-picker-content details>summary{cursor:pointer;color:var(--blue);padding:12px;font-size:13px;font-weight:900;line-height:1.25}.meeting-material-picker-content details div{border-top:1px solid #e3edf8;gap:6px;padding:8px;display:grid}.meeting-material-picker-content button{color:#24415f;text-align:left;cursor:pointer;background:#fff;border:1px solid #d7e2f0;border-radius:7px;width:100%;padding:9px;font-size:12px;font-weight:900;line-height:1.25}.meeting-material-picker-content button:hover,.meeting-material-picker-content button.active{border-color:var(--blue);color:var(--blue);background:#eef5ff}.meeting-material-picker-content p{color:#60758c;margin:0;font-size:13px;font-weight:900}.meeting-materials-list{background:#f8fbff;border-right:1px solid #d7e2f0;min-height:0;padding:12px;overflow:auto}.meeting-presentation-note{color:#174d2b;background:#eff7f2;border:1px solid #9bd8ad;border-radius:8px;gap:4px;margin-bottom:10px;padding:10px;display:grid}.meeting-presentation-note strong{font-size:13px;line-height:1.2}.meeting-presentation-note span{font-size:12px;font-weight:800;line-height:1.35}.meeting-materials-list details{background:#fff;border:1px solid #d7e2f0;border-radius:8px;margin-bottom:10px;overflow:hidden}.meeting-materials-list summary{cursor:pointer;color:var(--blue);padding:12px;font-size:13px;font-weight:900;line-height:1.25}.meeting-materials-list details div{border-top:1px solid #e3edf8;gap:6px;padding:8px;display:grid}.meeting-materials-list button{color:#24415f;text-align:left;cursor:pointer;background:#fff;border:1px solid #d7e2f0;border-radius:7px;width:100%;padding:9px;font-size:12px;font-weight:900;line-height:1.25}.meeting-materials-list button:hover,.meeting-materials-list button.active{border-color:var(--blue);color:var(--blue);background:#eef5ff}.meeting-materials-list p{color:#60758c;margin:0;font-size:13px;font-weight:900}.meeting-material-viewer{background:#eef3f8;min-width:0;min-height:0;position:relative;overflow:hidden}.meeting-material-screen{z-index:1;transform-origin:50%;background:#fff;width:100%;height:100%;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 18px 50px #10203324}.meeting-material-viewer iframe{background:#fff;border:0;width:100%;height:100%;display:block}.meeting-material-viewer.locked{overscroll-behavior:contain;position:relative}.meeting-material-viewer.locked iframe{pointer-events:none}.meeting-material-viewer.locked:after{content:"";z-index:0;background:0 0;position:absolute;inset:0}.meeting-material-viewer>div{text-align:center;place-content:center;justify-items:center;gap:8px;height:100%;padding:22px;display:grid}.meeting-material-viewer>.meeting-material-screen{text-align:initial;padding:0;display:block}.meeting-material-cursor{z-index:7;pointer-events:none;filter:drop-shadow(0 4px 6px #0007);width:24px;height:32px;transition:left 80ms linear,top 80ms linear;position:absolute;top:0;left:0;transform:translate(0)}.meeting-material-cursor:before{content:"";border-top:23px solid #fff;border-right:16px solid #0000;width:0;height:0;position:absolute;top:0;left:0}.meeting-material-cursor:after{content:"";border-top:17px solid var(--blue);border-right:12px solid #0000;width:0;height:0;position:absolute;top:2px;left:2px}.meeting-material-cursor>span{background:#fff;border:1px solid #c8d6ea;border-radius:999px;align-items:center;width:max-content;min-height:24px;padding:0 9px;position:absolute;top:18px;left:18px;box-shadow:0 8px 18px #06398e24;color:var(--blue)!important;text-transform:none!important;font-size:11px!important;font-weight:900!important;line-height:1!important;display:inline-flex!important}.meeting-material-selection{z-index:4;pointer-events:none;position:absolute;inset:0}.meeting-material-selection-mark{mix-blend-mode:multiply;background:#ffe66b8a;border-radius:3px;display:block;position:absolute;box-shadow:0 0 0 1px #d79a0099,0 2px 6px #4b300024}.meeting-material-selection-label{z-index:6;background:#fff8d8;border:1px solid #d79a00;border-radius:999px;align-items:center;width:max-content;max-width:220px;min-height:24px;padding:0 9px;position:absolute;transform:translateY(calc(-100% - 6px));box-shadow:0 8px 18px #6f420029;color:#7a4b00!important;text-transform:none!important;font-size:11px!important;font-weight:900!important;line-height:1!important;display:inline-flex!important}.meeting-material-viewer strong{color:var(--blue);font-size:20px}.meeting-material-viewer span{color:#60758c;font-size:14px;font-weight:900}.meeting-laser-pointer{z-index:35;pointer-events:none;background:#f04449;border:2px solid #fff;border-radius:50%;width:18px;height:18px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 5px #f0444933,0 0 24px #f04449}.meeting-laser-pointer:after{content:"";border:2px solid #f0444966;border-radius:50%;width:46px;height:46px;animation:1s ease-out infinite laser-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes laser-pulse{0%{opacity:.9;transform:translate(-50%,-50%)scale(.45)}to{opacity:0;transform:translate(-50%,-50%)scale(1.15)}}.meeting-public-material{background:#eef3f8;min-height:100vh}.meeting-public-material .course-nav{display:none!important}.meeting-public-material .book{margin:0 auto;padding-top:24px}.meeting-public-pdf{min-height:100vh}.meeting-public-material .page{max-width:794px}.meeting-public-material .page:before{border-bottom-right-radius:24px;border-bottom-left-radius:0;width:76px;height:42px;left:0;right:auto}.meeting-public-material .page-header{height:44px;min-height:44px;margin-bottom:10px;position:relative}.meeting-public-material .page-header .brand-logo{width:128px;height:39px;margin-left:72px}.meeting-public-material .page-header span:not(.brand-logo){background:var(--blue);white-space:nowrap;border-radius:0 0 16px;width:auto;min-width:0;height:28px;margin:0;padding:0 9px;font-size:10px;line-height:1;position:absolute;top:0;left:0;right:auto}.meeting-public-material .cover-page:before{border-bottom-right-radius:24px;border-bottom-left-radius:0;width:76px;height:42px;left:0;right:auto}.meeting-public-material .cover-logo{margin-left:74px}.meeting-public-material .aula-num{z-index:4!important;background:var(--blue)!important;color:#fff!important;text-align:center!important;white-space:nowrap!important;border-radius:0 0 16px!important;justify-content:center!important;align-items:center!important;gap:4px!important;width:auto!important;min-width:74px!important;max-width:112px!important;height:30px!important;padding:0 8px!important;font-size:10px!important;font-weight:900!important;line-height:1!important;display:inline-flex!important;position:absolute!important;top:0!important;left:0!important;right:auto!important;overflow:hidden!important}.meeting-public-material .aula-num br{display:none!important}.meeting-public-material .aula-num strong{color:inherit!important;margin:0!important;font-size:15px!important;line-height:1!important;display:inline!important}@media (max-width:1000px){.meeting-public-material .page{border-radius:0;width:100%;max-width:794px;min-height:0;margin:0 auto 12px}.meeting-public-material .page:before{border-bottom-right-radius:24px;border-bottom-left-radius:0;width:76px;height:42px}.meeting-public-material .page-header{height:44px;min-height:44px;margin-bottom:10px;position:relative}.meeting-public-material .page-header .brand-logo{width:128px;height:39px;margin-left:72px}.meeting-public-material .page-header span:not(.brand-logo){background:var(--blue);white-space:nowrap;border-radius:0 0 16px;width:auto;min-width:0;height:28px;margin:0;padding:0 9px;font-size:10px;line-height:1;position:absolute;top:0;left:0;right:auto}.meeting-public-material .cover-page:before{border-bottom-right-radius:24px;border-bottom-left-radius:0;width:76px;height:42px;left:0;right:auto}.meeting-public-material .cover-logo{margin-left:74px}.meeting-public-material .aula-num{border-radius:0 0 16px!important;min-width:74px!important;height:30px!important;padding:0 8px!important;font-size:10px!important}.meeting-public-material .aula-num br{display:none!important}.meeting-public-material .aula-num strong{margin:0!important;font-size:15px!important;line-height:1!important;display:inline!important}}.whiteboard-panel{color:#111827;background:#f8fbff;border:0;border-radius:8px;grid-template-rows:auto auto minmax(0,1fr);width:100%;min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.whiteboard-head{background:#fff;border-bottom:1px solid #d7e2f0;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:10px 14px;display:flex}.whiteboard-head span{color:var(--green);text-transform:uppercase;font-size:11px;font-weight:900;display:block}.whiteboard-head h2{color:var(--blue);margin:3px 0 0;font-size:18px;line-height:1.1}.whiteboard-head button,.whiteboard-head strong{min-height:34px;color:var(--blue);white-space:nowrap;background:#fff;border:1px solid #c8d6ea;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.whiteboard-head button{cursor:pointer}.whiteboard-head button.permission-on{color:#078c3e;background:#eff7f2;border-color:#9bd8ad}.whiteboard-tools{scrollbar-width:none;background:#f4f8fc;border-bottom:1px solid #d7e2f0;flex-wrap:nowrap;align-items:center;gap:7px;padding:8px 10px;display:flex;overflow-x:auto}.whiteboard-tools::-webkit-scrollbar{display:none}.whiteboard-tools button{min-height:32px;color:var(--blue);white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:999px;padding:0 11px;font-size:12px;font-weight:900}.whiteboard-tools button[aria-label^=Cor]{border-radius:50%;width:28px;min-width:28px;min-height:28px;padding:0}.whiteboard-tools .tool-button.active{color:var(--blue);background:#eaf2ff}.whiteboard-tools button.active{outline-offset:2px;outline:3px solid #9fc2ef}.whiteboard-tools button:disabled,.whiteboard-tools select:disabled{opacity:.45;cursor:not-allowed}.whiteboard-tools select{color:#111827;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #c8d6ea;border-radius:999px;height:34px;padding:0 10px;font-size:12px;font-weight:900}.whiteboard-canvas{touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;width:100%;height:100%;min-height:0;display:block}.whiteboard-canvas.editable{cursor:crosshair}.whiteboard-text-box{pointer-events:auto;width:100%;height:100%}.whiteboard-text-input{resize:none;pointer-events:auto;-webkit-user-select:text;user-select:text;cursor:text;background:#fff9;border:0;border-radius:6px;outline:none;width:100%;height:100%;padding:4px 6px;font-family:Arial,Helvetica,sans-serif;font-weight:800;line-height:1.15;display:block;overflow:hidden}.whiteboard-text-input:focus{background:#fffe;box-shadow:0 0 0 2px #4b8ce855}.whiteboard-text-input:disabled{opacity:1}.excalidraw-whiteboard-panel{background:#fff;grid-template-rows:minmax(0,1fr)}.excalidraw-whiteboard-head{display:none}.excalidraw-whiteboard-canvas{background:#fff;width:100%;min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.excalidraw-whiteboard-canvas .excalidraw{--color-primary:#0f7a3b;--color-primary-darker:#0b5f2d;--color-primary-darkest:#084722;height:100%}.excalidraw-whiteboard-canvas .layer-ui__wrapper__top-right{display:none}.excalidraw-whiteboard-canvas .App-menu_top{top:0!important;left:0!important;right:0!important}.excalidraw-whiteboard-canvas .App-toolbar{border-color:#e1e4ea!important;border-radius:8px!important;box-shadow:0 4px 14px #0f172a12!important}.class-document-panel{color:#111827;background:#eef3f8;border-radius:8px;grid-template-rows:auto auto minmax(0,1fr);width:100%;min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.class-document-panel>header{background:#fff;border-bottom:1px solid #d7e2f0;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.class-document-panel>header div{gap:3px;display:grid}.class-document-panel>header span{color:var(--green);text-transform:uppercase;font-size:11px;font-weight:900;display:block}.class-document-panel>header h2{color:var(--blue);margin:0;font-size:18px;line-height:1.1}.class-document-panel>header strong{color:#078c3e;white-space:nowrap;background:#eff7f2;border:1px solid #9bd8ad;border-radius:999px;justify-content:center;align-items:center;min-height:34px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.class-document-toolbar{scrollbar-width:none;background:#f8fbff;border-bottom:1px solid #d7e2f0;align-items:center;gap:6px;min-width:0;padding:8px 12px;display:flex;overflow-x:auto}.class-document-toolbar::-webkit-scrollbar{display:none}.class-document-toolbar button{min-width:34px;height:32px;color:var(--blue);cursor:pointer;background:#fff;border:1px solid #c8d6ea;border-radius:7px;justify-content:center;align-items:center;padding:0 9px;font-size:12px;font-weight:900;line-height:1;display:inline-flex}.class-document-toolbar button.active{border-color:var(--blue);background:#eaf2ff;box-shadow:0 0 0 2px #06398e12}.class-document-toolbar button:disabled{cursor:not-allowed;opacity:.48}.class-document-paper{min-width:0;min-height:0;padding:28px clamp(12px,4vw,34px);overflow:auto}.class-document-paper .tiptap{color:#111827;background:#fff;border:1px solid #d7e2f0;border-radius:8px;outline:none;width:min(850px,100%);min-height:100%;margin:0 auto;padding:42px clamp(18px,4vw,54px);font-family:Arial,Helvetica,sans-serif;font-size:19px;line-height:1.55;display:block;box-shadow:0 18px 40px #0f172a18}.class-document-paper .tiptap:focus{border-color:#8db8ed;box-shadow:0 0 0 3px #06398e1a,0 18px 40px #0f172a18}.class-document-paper .tiptap p{font-size:inherit;line-height:inherit;margin:0 0 12px}.class-document-paper .tiptap h1,.class-document-paper .tiptap h2,.class-document-paper .tiptap h3{color:#10233f;margin:0 0 14px;line-height:1.15}.class-document-paper .tiptap ul,.class-document-paper .tiptap ol{margin:0 0 14px;padding-left:28px}.class-document-paper .tiptap li{margin:5px 0}.class-document-panel{background:#fff}.class-document-panel>header{display:none}.class-document-toolbar{background:#fff;border-bottom:1px solid #d9dce3;gap:0;min-height:48px;padding:0 10px}.class-document-toolbar button{color:#202124;background:0 0;border:0;border-right:1px solid #e1e4ea;border-radius:0;min-width:36px;height:48px;padding:0 8px;font-size:14px;font-weight:800;transition:background .15s,color .15s}.class-document-toolbar button:first-child{border-left:1px solid #e1e4ea}.class-document-toolbar button:nth-child(3),.class-document-toolbar button:nth-child(5),.class-document-toolbar button:nth-child(7),.class-document-toolbar button:nth-child(8){border-left:1px solid #d5d9e0;margin-left:10px}.class-document-toolbar button:hover{color:#111827;background:#f1f3f4}.class-document-toolbar button.active{color:#174ea6;box-shadow:none;background:#e8f0fe;border-color:#d5d9e0}.class-document-toolbar button:last-child,.class-document-toolbar button:nth-last-child(2){font-size:22px;font-weight:400}.class-document-paper{background:#fff;padding:0}.class-document-paper .tiptap{width:100%;min-height:100%;box-shadow:none;border:0;border-radius:0;margin:0;padding:46px clamp(24px,5vw,68px)}.class-document-paper .tiptap:focus{box-shadow:none;border:0}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-panel>header{min-height:0;padding:7px 10px}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-panel>header div{gap:1px}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-panel>header span{font-size:9px;line-height:1}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-panel>header h2{font-size:14px;line-height:1.08}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-panel>header strong{min-height:26px;padding:0 9px;font-size:10px}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-toolbar{gap:5px;padding:5px 8px}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-toolbar button{border-radius:6px;min-width:30px;height:28px;padding:0 7px;font-size:11px}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-paper{padding:10px}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-paper .tiptap{width:100%;min-height:100%;padding:18px clamp(12px,2.6vw,28px);font-size:17px;line-height:1.45}@media (max-width:900px){.meeting-room-stage{padding:48px 6px 82px}.meeting-room-shell.has-teacher-switcher .meeting-room-stage{padding-top:72px}.meeting-room-teacher-switcher{width:min(220px,100vw - 24px);top:12px;left:12px;right:auto}.meeting-room-stage.sharing.dual-share{grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-share-frame{grid-column:1}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-screen-frame{grid-row:1}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-share-frame+.meeting-share-frame{grid-row:2}.meeting-room-stage.sharing .internal-call-grid{gap:7px;max-width:calc(100vw - 20px);top:56px;right:10px}.meeting-room-stage.sharing .internal-call-grid article,.meeting-room-stage.sharing .meeting-local-video{flex-basis:112px;width:112px!important;height:78px!important}.internal-call-panel footer,.meeting-room-stage.sharing .internal-call-panel footer{justify-content:flex-start;max-width:calc(100vw - 12px);bottom:12px;overflow-x:auto}}.meeting-lobby{color:var(--ink);background:linear-gradient(135deg,#edf4ff 0%,#f8fbff 48%,#e6f6ed 100%);place-items:center;padding:20px;display:grid}.meeting-lobby-panel{background:#fff;border:1px solid #d7e2f0;border-radius:8px;gap:16px;width:min(100%,430px);padding:28px;display:grid;box-shadow:0 18px 46px #06398e1f}.meeting-lobby-panel h1{color:var(--blue);margin:0;font-size:34px;line-height:1.08}.meeting-lobby-panel label{color:#24415f;gap:7px;font-size:14px;font-weight:900;display:grid}.meeting-lobby-panel input{width:100%;height:48px;color:var(--ink);background:#fff;border:1px solid #c8d6ea;border-radius:8px;outline:none;padding:0 14px;font-size:16px}.meeting-lobby-panel input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #06398e1a}.meeting-lobby-panel button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:8px;height:50px;font-size:16px;font-weight:900}.meeting-lobby-panel button:disabled{cursor:not-allowed;background:#9aa9bb}.class-finished-page{background:linear-gradient(135deg,#edf4ff 0%,#f8fbff 48%,#e6f6ed 100%);place-items:center;min-height:100vh;padding:20px;display:grid}.class-finished-panel{background:#fff;border:1px solid #d7e2f0;border-radius:8px;gap:16px;width:min(100%,520px);padding:28px;display:grid;box-shadow:0 18px 46px #06398e1f}.class-finished-panel h1{color:var(--blue);margin:0;font-size:34px;line-height:1.08}.class-finished-panel p:not(.auth-kicker){color:#40536a;margin:0;font-size:16px;line-height:1.45}.class-finished-panel>div{flex-wrap:wrap;gap:10px;display:flex}.class-finished-home{color:var(--blue)!important;background:#fff!important;border-color:#c8d6ea!important}.meeting-waiting-room{background:radial-gradient(circle at 50% 0,#172433 0,#080c12 62%,#05070a 100%);place-items:center;padding:20px;display:grid}.waiting-room-panel p{color:#526981;margin:0;font-size:15px;font-weight:800;line-height:1.45}.waiting-room-panel strong{color:#0f7a3b;background:#eff7f2;border-radius:999px;justify-content:center;align-items:center;min-height:36px;padding:0 12px;font-size:13px;font-weight:900;display:inline-flex}.payment-block-panel{background:#fff3f2;border-color:#f04438;box-shadow:0 18px 46px #b4231824}.payment-block-panel .payment-block-icon{margin-bottom:2px}.payment-block-panel .auth-kicker,.payment-block-panel h1{color:#b42318}.payment-block-panel p{color:#7a271a}.payment-block-panel .payment-block-lead{color:#7a271a;font-size:17px;font-weight:1000}.payment-block-panel strong{color:#b42318;background:#fee4e2}.admission-panel{z-index:70;color:#fff;background:#111827f2;border:1px solid #334155;border-radius:10px;gap:8px;width:min(360px,100vw - 36px);padding:12px;display:grid;position:fixed;top:18px;right:18px;box-shadow:0 18px 44px #0009}.admission-panel>strong{font-size:13px}.admission-panel div{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;display:grid}.admission-panel div.is-overdue{background:#7a271a66;border:1px solid #f04438;border-radius:8px;padding:8px}.admission-panel span{text-overflow:ellipsis;white-space:nowrap;color:#dbe7f5;min-width:0;font-size:13px;font-weight:900;overflow:hidden}.admission-panel span em{color:#b42318;text-transform:uppercase;background:#fee4e2;border-radius:999px;width:max-content;max-width:100%;margin-top:4px;padding:5px 8px;font-size:10px;font-style:normal;font-weight:1000;line-height:1;display:block}.admission-panel button{color:#fff;cursor:pointer;background:#0f7a3b;border:0;border-radius:6px;min-height:32px;padding:0 10px;font-size:12px;font-weight:900}.admission-panel button:last-child{background:#334155}.admission-panel div.is-updating{background:#12351f99;border-radius:8px;padding:8px;animation:.9s ease-in-out infinite admission-approve-pulse}.admission-panel div.is-done{animation:.36s forwards admission-approve-out}.admission-panel button:disabled{cursor:wait;opacity:.72}.admission-panel button.is-loading{background:#16a34a}.admission-panel button.is-loading:before{content:"";vertical-align:-1px;border:2px solid #fff6;border-top-color:#fff;border-radius:999px;width:10px;height:10px;margin-right:6px;animation:.7s linear infinite admission-spin;display:inline-block}@keyframes admission-spin{to{transform:rotate(360deg)}}@keyframes admission-approve-pulse{0%,to{box-shadow:0 0 #22c55e00}50%{box-shadow:0 0 0 3px #22c55e44}}@keyframes admission-approve-out{to{opacity:0;transform:translateY(-6px)scale(.98)}}@media (max-width:720px){.pdf-course-creator,.pdf-module-organizer,.pdf-module-row,.pdf-lesson-module-row{grid-template-columns:1fr}.pdf-course-text-creator .pdf-text-course-actions{justify-content:stretch}.pdf-course-text-creator .pdf-text-course-actions button{width:100%}.pdf-course-text-creator{grid-template-columns:1fr}.pdf-lesson-uploader{grid-template-columns:1fr;gap:16px}.pdf-lesson-uploader .pdf-lesson-edit-grid,.pdf-lesson-builder-layout{grid-template-columns:1fr}.pdf-lesson-submit{justify-self:stretch;width:100%}.pdf-lesson-edit-grid{grid-template-columns:1fr}.pdf-lesson-textarea textarea{min-height:180px}.pdf-upload-list-field{grid-template-columns:1fr}.pdf-upload-empty-state,.pdf-uploaded-files-list,.pdf-upload-select-button{grid-column:1}.pdf-upload-select-button{grid-row:auto;width:100%;min-width:0!important}.pdf-outline-summary{flex-direction:column;align-items:flex-start}.pdf-outline-summary span{width:max-content}.pdf-outline-table{white-space:nowrap;display:block;overflow-x:auto}.pdf-course-hero{grid-template-columns:1fr;align-items:start;padding:18px}.pdf-course-hero h1{font-size:30px}.pdf-course-hero aside{justify-items:stretch;width:100%;min-width:0}.pdf-viewer-shell{padding:10px}.pdf-viewer-shell header{flex-direction:column;align-items:flex-start}.pdf-viewer-shell iframe{height:calc(100vh - 190px);min-height:520px}.pdf-lesson-admin-head,.pdf-lesson-actions{flex-direction:column;grid-template-columns:1fr}.pdf-lesson-admin-head-actions{flex-direction:column;justify-content:stretch;align-items:stretch;width:100%}.pdf-lesson-preview-button,.pdf-lesson-actions .danger-button{width:100%}.pdf-link-row{grid-template-columns:1fr}.pdf-import-selection-actions{flex-direction:column;align-items:flex-start}.pdf-import-lesson-list{grid-template-columns:1fr}.pdf-current-file{grid-template-columns:22px minmax(0,1fr)}.pdf-current-file em{grid-column:2;justify-self:start}.pdf-renderer{min-height:520px;padding:8px}.pdf-lesson-page-card{padding-top:12px;padding-bottom:78px}.pdf-lesson-page-card .page-header{height:50px;margin-bottom:16px}.pdf-lesson-page-card .page-header span:not(.brand-logo){border-radius:999px;height:30px;padding:0 12px;font-size:13px;top:8px;right:10px}.pdf-lesson-page-card .banner{width:calc(100% - 28px);box-shadow:5px 5px 0 var(--blue);border-radius:12px;margin:0 auto 16px;padding:12px 16px;font-size:24px}.pdf-lesson-page-card .banner.small{width:calc(100% - 28px);padding-left:16px;font-size:22px}.pdf-lesson-page-card .lesson-content{gap:12px;width:calc(100% - 24px)}.pdf-lesson-page-card .card.note-card,.pdf-lesson-page-card .story.dialogue-lite,.pdf-lesson-page-card .practice{border-radius:14px;padding:14px 15px}.pdf-lesson-page-card .lesson-content{gap:10px;width:100%;max-width:100%}.pdf-lesson-page-card .card.note-card,.pdf-lesson-page-card .practice,.pdf-lesson-page-card .story.dialogue-lite{overflow-wrap:anywhere;word-break:break-word;width:100%;min-width:0}.pdf-lesson-page-card .card.note-card p,.pdf-lesson-page-card .story.dialogue-lite p,.pdf-lesson-page-card .readable-bullets li,.pdf-lesson-page-card .readable-numbered-list li,.pdf-lesson-page-card .practice li,.pdf-lesson-page-card .table td{overflow-wrap:anywhere;word-break:break-word}.pdf-lesson-page-card .readable-bullets li,.pdf-lesson-page-card .readable-numbered-list li,.pdf-lesson-page-card .practice li{font-size:15px;line-height:1.45}.pdf-lesson-page-card .story.dialogue-lite p,.pdf-lesson-page-card .card.note-card p{font-size:15px;line-height:1.5}.pdf-page-image-frame{min-height:520px;padding:8px}.meetings-layout{grid-template-columns:1fr}.meeting-builder{position:static}.meeting-preview-head,.meeting-participants article{flex-direction:column;align-items:flex-start}.meeting-save-link{flex-direction:column;align-items:stretch}.meeting-participant-links,.meeting-participants button{width:100%}.meeting-room-shell{height:100dvh;overflow:hidden}.meeting-room-user{max-width:100%}.meeting-timer{min-width:64px;min-height:34px;font-size:12px!important}.meeting-room-floating-timer{min-width:64px;min-height:34px;padding:0 10px;font-size:12px;top:10px;left:50%;transform:translate(-50%)}.meeting-room-shell.has-teacher-switcher .meeting-room-stage{padding-top:64px}.meeting-room-teacher-switcher{top:10px}.class-ended-banner{z-index:18;max-width:none;box-shadow:none;border-radius:0;justify-content:space-between;position:sticky;top:0;left:auto;transform:none}.meeting-room-stage,.meeting-room-stage.sharing{grid-template-columns:1fr;height:100dvh;min-height:100dvh;padding:0;overflow:hidden}.meeting-dashboard-panel{padding:18px 12px}.meeting-dashboard-hero h1{font-size:28px}.meeting-dashboard-grid{grid-template-columns:1fr}.meeting-dashboard-card{padding:16px}.meeting-dashboard-actions{flex-direction:column;align-items:stretch}.meeting-dashboard-actions button,.meeting-dashboard-actions a{width:100%}.meeting-room-stage.sharing .meeting-call-frame,.meeting-share-frame{grid-area:auto/1}.meeting-room-stage.sharing{height:100dvh;min-height:100dvh;position:relative;overflow:hidden}.meeting-room-stage.sharing .meeting-share-frame{height:100dvh;min-height:0;padding:0 0 calc(232px + env(safe-area-inset-bottom));grid-row:1}.meeting-room-stage.sharing .meeting-call-frame{top:auto;left:8px;right:8px;bottom:calc(62px + env(safe-area-inset-bottom));z-index:55;background:#05070a;border:1px solid #1f2937;border-radius:10px;width:auto;height:144px;min-height:0;position:fixed;overflow:hidden;box-shadow:0 14px 34px #0008}.meeting-call-mode{max-width:calc(100% - 16px);top:8px;left:8px;overflow:auto}.meeting-call-mode button{padding:0 9px;font-size:11px}.internal-call-panel{height:100%;min-height:0}.internal-call-grid{flex-direction:column;grid-template-columns:1fr;height:100%;display:flex}.internal-call-grid article{flex:1 1 0;height:auto;min-height:0}.internal-call-grid article.is-teacher-tile{order:-2}.internal-call-grid article.is-student-tile{order:0}.internal-call-grid:has(article:nth-child(2)){grid-template-rows:none}.internal-call-grid.tile-count-2,.internal-call-grid.tile-count-3,.internal-call-grid.tile-count-4{grid-template-rows:none}.meeting-room-stage.sharing .internal-call-grid{grid-template-rows:repeat(auto-fit,minmax(0,1fr));grid-template-columns:1fr;height:100%;overflow:hidden}.meeting-room-stage.sharing .internal-call-grid:has(article:nth-child(2)){grid-template-rows:repeat(auto-fit,minmax(0,1fr));grid-template-columns:1fr}.meeting-room-stage.sharing .internal-call-grid article{min-height:0}.internal-call-grid article>span{text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 20px);font-size:11px;bottom:58px;left:10px;overflow:hidden}.meeting-room-stage.sharing .internal-call-grid article>span{display:none}.internal-call-panel footer{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));opacity:.98;flex-wrap:wrap;justify-content:center;max-width:none;padding:6px;overflow:visible;transform:none}.internal-call-panel:hover footer,.internal-call-panel:focus-within footer{transform:none}.meeting-room-stage.sharing .internal-call-panel footer{left:50%;right:auto;bottom:calc(8px + env(safe-area-inset-bottom));flex-wrap:wrap;justify-content:center;max-width:calc(100vw - 12px);position:fixed;overflow:hidden visible;transform:translate(-50%)}.meeting-room-stage.sharing .internal-call-panel:hover footer,.meeting-room-stage.sharing .internal-call-panel:focus-within footer{transform:translate(-50%)}.internal-call-panel footer button{width:44px;min-width:44px;height:38px;font-size:11px}.internal-call-panel footer button.share-focus-button{display:none!important}.internal-call-panel footer button.join-call{min-width:92px}.call-timer-pill{min-width:78px;height:38px;padding:0 10px}.call-timer-pill strong{font-size:12px}.call-timer-pill input{width:38px;height:26px;font-size:12px}.call-control-icon{width:19px;height:19px}.internal-call-error{width:min(420px,100vw - 24px);padding:12px 14px;font-size:12px;top:50%;bottom:auto}.internal-call-error .internal-call-retry{min-height:32px;font-size:11px}.meeting-share-frame{height:100dvh;min-height:0;padding:0}.whiteboard-head{flex-direction:column;align-items:flex-start;gap:7px;padding:8px 10px}.whiteboard-head h2{font-size:16px}.whiteboard-head button,.whiteboard-head strong{min-height:30px;font-size:11px}.whiteboard-tools{padding:7px 8px}.whiteboard-tools button{min-height:30px;padding:0 9px;font-size:11px}.whiteboard-tools select{height:30px;font-size:11px}.meeting-materials-frame{background:#e6eef7;padding:0}.meeting-materials-panel{border-radius:0;height:100%}.meeting-materials-body{grid-template-columns:1fr;min-height:0;overflow:hidden}.meeting-materials-list{border-bottom:1px solid #d7e2f0;border-right:0;max-height:220px}.meeting-materials-panel>header{flex-direction:column;align-items:flex-start;gap:7px;min-height:82px;padding:8px 10px}.meeting-materials-panel>header span{font-size:9px}.meeting-materials-panel>header h2{-webkit-line-clamp:2;-webkit-box-orient:vertical;max-height:34px;font-size:13px;line-height:1.25;display:-webkit-box;overflow:hidden}.meeting-materials-actions{justify-content:flex-start;width:100%;overflow-x:auto}.meeting-material-picker-content{width:auto;max-height:calc(100dvh - 170px);position:fixed;top:92px;left:10px;right:10px}.meeting-material-viewer{overscroll-behavior:contain;height:100%;overflow:auto}.meeting-material-viewer iframe{height:100%;min-height:0}.meeting-public-material .book{width:100%;padding:8px 0 18px}.meeting-public-material .page{transform-origin:top;border-radius:0;width:min(100vw,794px);min-height:0;margin:0 auto 12px}.meeting-public-material .page:before{border-bottom-right-radius:22px;border-bottom-left-radius:0;width:72px;height:40px}.meeting-public-material .page-header{justify-content:space-between;align-items:flex-start;gap:10px;height:42px;min-height:42px;margin-bottom:10px;display:flex;position:relative}.meeting-public-material .page-header .brand-logo{flex:0 128px;width:128px;height:39px;margin-left:72px}.meeting-public-material .page-header span:not(.brand-logo){background:var(--blue);white-space:nowrap;border-radius:0 0 14px;flex:none;width:auto;min-width:0;height:26px;margin:0;padding:0 8px;font-size:10px;line-height:1;position:absolute;top:0;left:0;right:auto}.meeting-public-material .cover-page:before{border-bottom-right-radius:22px;border-bottom-left-radius:0;width:72px;height:40px;left:0;right:auto}.meeting-public-material .cover-logo{margin-left:74px}.meeting-public-material .aula-num{border-radius:0 0 15px!important;min-width:70px!important;max-width:98px!important;height:28px!important;padding:0 7px!important;font-size:9px!important}.meeting-public-material .aula-num br{display:none!important}.meeting-public-material .aula-num strong{margin:0!important;font-size:14px!important;line-height:1!important;display:inline!important}.meeting-public-material .banner{margin-top:4px}}@media (max-width:520px){.meeting-room-shell.has-teacher-switcher .meeting-room-stage{padding-top:116px}.meeting-room-teacher-switcher{top:52px}}@media (max-width:420px){.meeting-lobby,.meeting-waiting-room{padding:12px}.meeting-lobby-panel{gap:13px;padding:20px}.meeting-lobby-panel h1{font-size:28px}.admission-panel{width:auto;top:8px;left:8px;right:8px}.admission-panel div{grid-template-columns:1fr;align-items:stretch}.admission-panel button{width:100%}.meeting-room-stage.sharing .meeting-share-frame{padding-bottom:calc(214px + env(safe-area-inset-bottom))}.meeting-room-stage.sharing .meeting-call-frame{left:6px;right:6px;bottom:calc(54px + env(safe-area-inset-bottom));width:auto;height:132px}.internal-call-grid article>span{padding:4px 6px;font-size:10px;bottom:54px}.internal-call-panel footer{gap:5px;max-width:none;padding:5px;left:6px;right:6px}.meeting-room-stage.sharing .internal-call-panel footer{max-width:calc(100vw - 8px)}.internal-call-panel footer button{width:38px;min-width:38px;height:36px}.internal-call-panel footer button.join-call{min-width:84px}.call-control-icon{width:17px;height:17px}.call-timer-pill{min-width:70px;height:36px;padding:0 8px}.call-timer-pill input{width:34px}.meeting-materials-panel>header{padding-right:12px}.meeting-materials-panel>header h2{font-size:14px}.whiteboard-head{padding-right:10px}.whiteboard-head h2{font-size:15px}}html,body{max-width:100%;overflow-x:hidden}img,video,canvas,iframe{max-width:100%}input,select,textarea,button{min-width:0}@media (max-width:900px){.auth-shell{padding-inline:clamp(12px,4vw,24px)}.admin-shell,.courses-shell,.student-shell,.pdf-course-page,.meetings-page,.finance-page{width:100%;min-width:0;max-width:100%}.admin-panel,.student-module,.student-info-card,.pdf-course-creator,.pdf-course-hero,.meeting-room-card,.finance-group-card,.finance-sheet{min-width:0}.pdf-course-creator{grid-template-columns:1fr}.courses-grid,.student-lessons,.lesson-grid,.pdf-lesson-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.admin-grid{grid-template-columns:minmax(0,1fr)}.student-link-panel,.meeting-builder{position:static}.student-hero{grid-template-columns:1fr}.student-room-button{white-space:normal;text-align:center;justify-self:stretch;width:100%}.student-flashcard-button{white-space:normal;justify-self:stretch;width:100%}.student-room-blocked{max-width:none}.agenda-filter-bar{align-items:stretch;width:100%}.finance-student-modal{width:min(980px,100vw - 24px)}.finance-student-modal>header,.finance-group-card>header,.finance-sheet-title{min-width:0}.finance-student-card{grid-template-columns:1fr}.meeting-room-stage.sharing{grid-template-columns:minmax(0,1fr) var(--call-sidebar-width)}.pdf-markdown-render-grid{grid-template-columns:1fr}}@media (max-width:620px){.auth-shell{padding:16px 12px}.login-panel,.admin-panel,.student-module,.student-info-card,.pdf-course-creator,.pdf-course-hero{padding:16px}.courses-grid,.student-dashboard,.student-lessons,.student-schedule-grid,.lesson-grid,.pdf-lesson-grid{grid-template-columns:1fr}.courses-header,.student-module-head,.pdf-viewer-shell header,.pdf-course-hero,.meeting-preview-head,.finance-actions-bar{align-items:stretch}.courses-browser-head{justify-content:stretch}.courses-search{width:100%;min-width:0}.admin-shortcut{width:100%}.logout-link,.admin-form button,.secondary-button,.student-payment-box .student-payment-link,.pdf-viewer-actions a,.pdf-viewer-actions button{text-align:center;width:100%}.lesson-pdf-download-button{min-height:44px;padding:8px 12px;line-height:1.15}.pdf-viewer-download-button{white-space:normal;width:100%;max-width:100%}.pdf-supplements-panel>div{grid-template-columns:1fr}.pdf-supplement-card{width:100%}.pdf-supplement-card-actions{flex-direction:column}.pdf-supplement-button{width:100%}.pdf-markdown-help-table{table-layout:fixed}.pdf-markdown-help-table th,.pdf-markdown-help-table td{overflow-wrap:anywhere;word-break:break-word;padding:7px 8px;font-size:11px;line-height:1.3}.pdf-markdown-help-models pre{font-size:11px;line-height:1.35}.pdf-markdown-preview-card{padding:12px}.pdf-markdown-preview-card header{flex-direction:column;align-items:flex-start}.pdf-markdown-preview-card h3{width:100%;font-size:18px}.pdf-markdown-preview-content{width:100%}.pdf-markdown-preview-note,.pdf-markdown-preview-dialogue{padding:10px 12px}.pdf-markdown-preview-note p,.pdf-markdown-preview-dialogue p,.pdf-markdown-preview-note li{font-size:12px}.pdf-markdown-preview-green-title{width:100%;font-size:15px}.admin-top-menu{top:6px}.menu-panel{width:min(300px,100vw - 24px);min-width:0;left:0;right:auto}.student-list a,.teacher-card-summary,.finance-sheet-title,.finance-group-card>header{min-width:0}.student-list strong,.student-list span,.teacher-card p,.teacher-card strong{overflow-wrap:anywhere}.student-weekly-day{grid-template-columns:1fr}.student-weekly-time-row{grid-template-columns:minmax(0,1fr) 34px 34px}.agenda-overlay{padding:12px}.agenda-overlay-card{max-height:calc(100dvh - 24px)}.finance-filter-buttons button{flex:140px;justify-content:center}.finance-student-modal{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.finance-student-view,.finance-student-form{padding:14px}.pdf-repeatable-field{grid-template-columns:1fr}.pdf-remove-field-button{width:100%}.pdf-course-card-actions{flex-direction:column}.pdf-course-card-actions label,.pdf-course-card-actions button{width:100%}}@media (max-width:480px){.shell{width:calc(100% - 20px)}.brand-logo,.brand-logo.logo,.brand-logo.auth-logo,.courses-header .brand-logo.auth-logo,.student-hero .brand-logo.auth-logo{width:220px;height:67px}.student-hero .auth-logo{height:67px}.login-panel h1,.courses-title h1,.student-hero h1,.finance-page .courses-title h1{font-size:28px}.student-hero p,.admin-panel p,.course-card-ready p,.course-card-empty p{font-size:15px}.student-language-picker{border-radius:8px}.student-language-picker div{grid-template-columns:1fr}.student-payment-qr{width:min(150px,100%)}.confirm-dialog{padding:18px}.menu-panel{width:calc(100vw - 24px)}.agenda-overlay-head{flex-direction:column;align-items:flex-start}.agenda-overlay-head button{width:100%}.finance-metrics{grid-template-columns:1fr}.finance-filter-buttons{grid-template-columns:1fr;display:grid}.finance-student-modal-actions a,.finance-student-modal-actions button{flex-basis:auto}.pdf-viewer-actions{justify-content:stretch;width:100%}.pdf-viewer-shell strong{text-align:center;width:100%}.course-nav.compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px;display:grid}.course-nav.compact a,.course-nav.compact span,.course-nav.compact button{text-align:center;white-space:normal;width:100%;min-width:0;height:auto;min-height:38px;padding:8px 10px;line-height:1.15}.course-nav.compact .lesson-pdf-download-button{min-height:44px}}@media (max-width:720px){.internal-call-panel footer,.meeting-room-stage.sharing .internal-call-panel footer{left:8px;right:8px;bottom:calc(6px + env(safe-area-inset-bottom));overscroll-behavior-x:auto;flex-wrap:wrap;justify-content:center;width:auto;max-width:none;padding:5px;overflow:visible;transform:none}.internal-call-panel footer>*{flex:none}.internal-call-panel:hover footer,.internal-call-panel:focus-within footer,.meeting-room-stage.sharing .internal-call-panel:hover footer,.meeting-room-stage.sharing .internal-call-panel:focus-within footer{transform:none}.internal-call-panel footer button,.internal-call-panel footer .split-control button:first-child{width:38px;min-width:38px;height:36px}.internal-call-panel footer .split-control button{height:36px}.internal-call-panel footer .split-control-toggle{width:18px;min-width:18px;height:36px}.internal-call-panel footer button.end-call{margin-left:0}.call-timer-pill{min-width:72px;height:36px;padding:0 8px}.call-timer-pill input{width:34px;height:26px}.call-control-icon{width:17px;height:17px}.device-menu{left:8px;right:8px;bottom:calc(54px + env(safe-area-inset-bottom));width:auto;min-width:0;max-width:none;max-height:min(260px,42dvh);position:fixed;overflow:auto}}@media (max-width:380px){.timer-control-overlay{padding:10px}.timer-control-dialog{width:min(100%,320px);padding:14px}.timer-control-dialog strong{font-size:20px}.timer-control-dialog div{grid-template-columns:1fr}.timer-control-dialog div button,.timer-control-dialog .timer-end-class-button{min-height:40px}.internal-call-panel footer,.meeting-room-stage.sharing .internal-call-panel footer{gap:4px;padding:4px}.internal-call-panel footer button,.internal-call-panel footer .split-control button:first-child{width:34px;min-width:34px;height:34px}.internal-call-panel footer .split-control button,.internal-call-panel footer .split-control-toggle{height:34px}.internal-call-panel footer .split-control-toggle{width:16px;min-width:16px}.call-timer-pill{min-width:66px;height:34px;padding:0 7px}}@media (max-width:720px){.meeting-room-stage.sharing{height:100dvh;min-height:0;display:grid;overflow:hidden;grid-template-rows:minmax(0,1fr) clamp(120px,24dvh,176px)!important;grid-template-columns:1fr!important}.meeting-room-stage.sharing .meeting-share-frame{width:100%;min-height:0;overflow:hidden;grid-area:1/1!important;height:auto!important;padding:0!important}.meeting-room-stage.sharing .meeting-call-frame{z-index:8;box-shadow:none;border-top:1px solid #1f2937;border-left:0;border-radius:0;grid-area:2/1!important;width:100%!important;height:100%!important;min-height:0!important;position:relative!important;inset:auto!important}.meeting-room-stage.sharing .meeting-screen-frame,.meeting-room-stage.sharing .meeting-screen-host,.meeting-room-stage.sharing .meeting-screen-stage-inner,.meeting-room-stage.sharing .meeting-screen-tile{width:100%;height:100%;min-height:0}.meeting-room-stage.sharing .meeting-screen-tile video{object-fit:contain!important;object-position:center center!important;width:auto!important;min-width:0!important;max-width:100%!important;height:auto!important;min-height:0!important;max-height:100%!important;transform:none!important}.meeting-room-stage.sharing .internal-call-panel{height:100%;min-height:0}.meeting-room-stage.sharing .internal-call-grid{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;min-height:0;display:grid;overflow:hidden;grid-template-rows:1fr!important;grid-template-columns:repeat(auto-fit,minmax(0,1fr))!important;height:100%!important}.meeting-room-stage.sharing .internal-call-grid.tile-count-1{grid-template-columns:1fr!important}.meeting-room-stage.sharing .internal-call-grid.tile-count-2,.meeting-room-stage.sharing .internal-call-grid.tile-count-3,.meeting-room-stage.sharing .internal-call-grid.tile-count-4{grid-template-columns:repeat(2,minmax(0,1fr))!important}.meeting-room-stage.sharing .internal-call-grid article{width:100%;min-width:0;height:100%;min-height:0}.meeting-room-stage.sharing .internal-call-grid video{object-fit:contain;object-position:center center}.meeting-room-stage.sharing .participant-tile-actions{grid-template-columns:repeat(2,20px);gap:3px;padding:3px;top:4px;right:4px}.meeting-room-stage.sharing .remote-media-button,.meeting-room-stage.sharing .rename-participant-button,.meeting-room-stage.sharing .remove-participant-button{width:20px;min-width:20px;height:20px;min-height:20px}.internal-call-error{left:50%;right:auto;top:calc(58px + env(safe-area-inset-top));z-index:92;text-align:left;border-radius:10px;width:min(420px,100vw - 20px);max-height:120px;padding:12px 14px;font-size:12px;line-height:1.35;position:fixed;bottom:auto;overflow:auto;transform:translate(-50%);box-shadow:0 16px 34px #000a}.internal-call-error .internal-call-retry{min-height:32px;font-size:11px}}@media (max-width:720px) and (max-height:560px){.meeting-room-stage.sharing{grid-template-rows:minmax(0,1fr) 96px!important}.meeting-room-stage.sharing .internal-call-grid article>span{padding:4px 5px;font-size:9px;bottom:6px}.internal-call-error{top:calc(54px + env(safe-area-inset-top));width:min(320px,100vw - 18px);max-height:100px;padding:10px 12px;font-size:11px;bottom:auto}.internal-call-error .internal-call-retry{min-height:30px;font-size:10px}}.meeting-public-material{--meeting-material-scale:1;--meeting-material-bleed-x:160px;--meeting-material-bleed-y-half:36px;min-height:100dvh;position:relative;overflow:visible}.meeting-public-material .book,.meeting-public-material .pdf-render-pages{transform-origin:0 0;width:calc(794px + var(--meeting-material-bleed-x))!important;zoom:normal!important;max-width:none!important;transform:scale(var(--meeting-material-scale))!important;margin:0 auto!important;position:relative!important;top:auto!important;left:auto!important}.meeting-public-material .book{padding:var(--meeting-material-bleed-y-half) 0!important;overflow:visible!important}.meeting-public-material .pdf-viewer-shell{width:100%!important;max-width:none!important;padding:0!important}.meeting-public-material .pdf-viewer-shell>header{display:none!important}.meeting-public-material .pdf-renderer{min-height:100dvh!important;box-shadow:none!important;background:#eef3f8!important;border:0!important;border-radius:0!important;padding:0!important;overflow:visible!important}.meeting-public-material .pdf-render-pages{padding:var(--meeting-material-bleed-y-half) 0!important;overflow:visible!important}.meeting-public-material .page{border-radius:10px!important;width:794px!important;max-width:none!important;min-height:1123px!important;margin:0 auto!important;padding:34px 42px 84px!important;position:relative!important;overflow:visible!important;box-shadow:0 12px 30px #0002!important}.meeting-public-material .page:after{border-top-left-radius:70% 42px!important;border-top-right-radius:70% 42px!important;height:74px!important}.meeting-public-material .page:before,.meeting-public-material .cover-page:before{content:none!important;display:none!important}.meeting-public-material .page-header{justify-content:space-between!important;align-items:flex-start!important;gap:10px!important;height:44px!important;min-height:44px!important;margin-bottom:10px!important;display:flex!important;position:relative!important}.meeting-public-material .page-header .brand-logo{flex:0 0 128px!important;width:128px!important;height:39px!important;margin-left:0!important}.meeting-public-material .page-header span:not(.brand-logo){background:var(--blue)!important;color:#fff!important;white-space:nowrap!important;border-radius:999px!important;justify-content:center!important;align-items:center!important;gap:4px!important;width:auto!important;min-width:82px!important;height:30px!important;margin:0!important;padding:0 10px!important;font-size:10px!important;font-weight:900!important;line-height:1!important;display:inline-flex!important;position:absolute!important;top:18px!important;left:18px!important;right:auto!important;overflow:hidden!important}.meeting-public-material footer{font-size:17px!important;bottom:18px!important;left:42px!important;right:42px!important}.meeting-public-material footer b{flex-basis:34px!important;width:34px!important;height:34px!important}.meeting-public-material .banner{width:min(620px,100%)!important;box-shadow:9px 9px 0 var(--blue)!important;border-radius:15px!important;margin:8px auto 26px!important;padding:18px 24px!important;font-size:36px!important;line-height:1.1!important}.meeting-public-material .banner.small{text-align:left!important;max-width:560px!important;margin-left:0!important;padding-left:34px!important;font-size:33px!important}.meeting-public-material h2,.meeting-public-material .lesson-content h2{font-size:25px!important}.meeting-public-material h3{font-size:1.17em!important}.meeting-public-material p,.meeting-public-material .lesson-content p{font-size:18px!important;line-height:1.42!important}.meeting-public-material .intro{font-size:22px!important;line-height:1.42!important}.meeting-public-material .two-col,.meeting-public-material .media-note{grid-template-columns:1fr 1fr!important;gap:24px!important}.meeting-public-material .columns{columns:2!important}.meeting-public-material .card,.meeting-public-material .practice,.meeting-public-material .story,.meeting-public-material .readable-list{border-radius:18px!important;margin:16px 0!important;padding:18px 22px!important}.meeting-public-material .checks li,.meeting-public-material .practice li{font-size:18px!important;line-height:1.42!important}.meeting-public-material .checks li:before{width:24px!important;height:24px!important;font-size:inherit!important;margin-right:9px!important}.meeting-public-material .callout{border-radius:18px!important;padding:18px 22px!important;font-size:22px!important}.meeting-public-material .callout.big{font-size:32px!important}.meeting-public-material .alert{font-size:23px!important}.meeting-public-material .table{border-radius:16px!important;width:100%!important;max-width:none!important;display:table!important;overflow:visible!important}.meeting-public-material .table th,.meeting-public-material .table td,.meeting-public-material .readable-table th,.meeting-public-material .readable-table td{padding:14px 16px!important;font-size:18px!important;line-height:normal!important}.meeting-public-material .table th{font-size:17px!important}.meeting-public-material .pdf-lesson-page-card{padding-top:18px!important;padding-bottom:92px!important}.meeting-public-material .pdf-lesson-page-card:before{content:none!important;display:none!important}.meeting-public-material .pdf-lesson-page-card .page-header{height:66px!important;margin-bottom:24px!important}.meeting-public-material .pdf-lesson-page-card .page-header span:not(.brand-logo){border-radius:999px!important;height:38px!important;padding:0 16px!important;font-size:17px!important;top:10px!important;left:auto!important;right:14px!important}.meeting-public-material .pdf-lesson-page-card .banner{text-align:center!important;border-radius:16px!important;width:min(640px,100% - 120px)!important;margin:0 auto 20px!important;padding:18px 24px!important;font-size:36px!important;line-height:1.05!important}.meeting-public-material .pdf-lesson-page-card .banner.small{text-align:center!important;width:min(640px,100% - 136px)!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;padding-left:24px!important;font-size:32px!important}.meeting-public-material .pdf-lesson-page-card .lesson-content{gap:16px!important;width:min(100%,620px)!important}.meeting-public-material .pdf-lesson-page-card .card.note-card{border-radius:18px!important;padding:18px 22px!important}.meeting-public-material .pdf-lesson-page-card .story.dialogue-lite,.meeting-public-material .pdf-lesson-page-card .practice{border-radius:18px!important;padding:16px 20px!important}.meeting-public-material .pdf-lesson-page-card .lesson-content{gap:12px!important;width:100%!important;max-width:100%!important}.meeting-public-material .pdf-lesson-page-card .card.note-card,.meeting-public-material .pdf-lesson-page-card .practice,.meeting-public-material .pdf-lesson-page-card .story.dialogue-lite{overflow-wrap:anywhere!important;word-break:break-word!important;width:100%!important;min-width:0!important}.meeting-public-material .pdf-lesson-page-card .card.note-card p,.meeting-public-material .pdf-lesson-page-card .story.dialogue-lite p,.meeting-public-material .pdf-lesson-page-card .readable-bullets li,.meeting-public-material .pdf-lesson-page-card .readable-numbered-list li,.meeting-public-material .pdf-lesson-page-card .practice li,.meeting-public-material .pdf-lesson-page-card .table td{overflow-wrap:anywhere!important;word-break:break-word!important}.meeting-public-material .cover-page{position:relative!important}.meeting-public-material .cover-page:before{content:none!important;display:none!important}.meeting-public-material .cover-page .cover-hero{position:relative!important}.meeting-public-material .cover-page .cover-logo{margin-left:0!important}.meeting-public-material .cover-page .aula-num{z-index:5!important;background:var(--blue)!important;color:#fff!important;text-align:center!important;white-space:nowrap!important;border-radius:999px!important;justify-content:center!important;align-items:center!important;gap:4px!important;width:auto!important;min-width:82px!important;height:30px!important;padding:0 10px!important;font-size:10px!important;font-weight:900!important;line-height:1!important;display:inline-flex!important;position:absolute!important;top:18px!important;left:18px!important;right:auto!important;overflow:hidden!important}.meeting-public-material .cover-page .aula-num br{display:none!important}.meeting-public-material .cover-page .aula-num strong{color:inherit!important;margin:0!important;font-size:15px!important;line-height:1!important;display:inline!important}.meeting-public-material .cover-page .cover-bottom .card{width:390px!important}.meeting-public-material .cover-page .cover-mascot{z-index:2!important;width:285px!important;bottom:76px!important;right:26px!important}.meeting-public-material .cover-page .cover-callout{width:390px!important}.meeting-public-material .pdf-rendered-page{width:794px!important;max-width:none!important}.meeting-public-material .pdf-render-pages{gap:0!important}.meeting-public-material .pdf-rendered-page canvas,.meeting-public-material .pdf-rendered-image img{max-width:none!important}@media (max-width:1200px){.meeting-public-material{--meeting-material-bleed-x:0px!important;--meeting-material-bleed-y-half:14px!important;overflow:hidden!important}.meeting-public-material .book,.meeting-public-material .pdf-render-pages{width:794px!important;max-width:none!important;padding:var(--meeting-material-bleed-y-half) 0!important}.meeting-public-material .page,.meeting-public-material .pdf-rendered-page{box-sizing:border-box!important;width:100%!important;max-width:794px!important}.meeting-public-material .pdf-rendered-page canvas,.meeting-public-material .pdf-rendered-image img{width:100%!important;max-width:100%!important;height:auto!important}.meeting-public-material .banner{max-width:100%!important}}@media (max-width:720px){.meeting-public-material{--meeting-material-bleed-y-half:8px!important}.meeting-public-material .page{border-radius:8px!important;padding:20px 24px 64px!important}.meeting-public-material .pdf-lesson-page-card{padding:14px 18px 64px!important}.meeting-public-material .banner,.meeting-public-material .pdf-lesson-page-card .banner{width:100%!important;margin:6px auto 16px!important;padding:14px 16px!important;font-size:clamp(22px,7vw,32px)!important}.meeting-public-material .banner.small,.meeting-public-material .pdf-lesson-page-card .banner.small{width:100%!important;padding-left:16px!important;font-size:clamp(20px,6vw,28px)!important}}.internal-call-panel footer,.meeting-room-stage.sharing .internal-call-panel footer,.meeting-room-stage.sharing.share-focus .internal-call-panel footer{left:50%!important;right:auto!important;bottom:calc(10px + env(safe-area-inset-bottom))!important;z-index:90!important;flex-wrap:wrap!important;justify-content:center!important;width:max-content!important;max-width:calc(100vw - 16px)!important;display:flex!important;position:fixed!important;overflow:hidden visible!important;transform:translate(-50%,14px)!important}.internal-call-panel:hover footer,.internal-call-panel:focus-within footer,.meeting-room-stage.sharing .internal-call-panel:hover footer,.meeting-room-stage.sharing .internal-call-panel:focus-within footer,.meeting-room-stage.sharing.share-focus .internal-call-panel:hover footer,.meeting-room-stage.sharing.share-focus .internal-call-panel:focus-within footer{transform:translate(-50%)!important}.meeting-room-stage.sharing.share-focus .internal-call-panel footer .split-control{width:auto!important}.meeting-room-stage.sharing.share-focus .call-timer-pill{grid-column:auto!important}.meeting-room-stage.sharing.share-focus .call-timer-floating{background:#0f7a3be6!important;border-radius:999px!important;justify-content:center!important;min-width:0!important;height:32px!important}.meeting-room-stage.sharing .call-controls-show{left:50%!important;right:auto!important;bottom:calc(10px + env(safe-area-inset-bottom))!important;position:fixed!important;transform:translate(-50%)!important}.internal-call-panel footer.is-hidden,.meeting-room-stage.sharing .internal-call-panel footer.is-hidden,.meeting-room-stage.sharing.share-focus .internal-call-panel footer.is-hidden{display:none!important}@media (max-width:860px){.student-hero{grid-template-columns:1fr}.student-hero .auth-logo,.student-hero-copy,.student-course-tabs,.student-room-button,.student-flashcard-button{grid-column:1/-1}.student-hero .auth-logo{grid-row:auto;margin-bottom:2px}}@media (max-width:720px){.meeting-room-stage.sharing .meeting-share-frame iframe{width:100%;height:100%;display:block}.meeting-room-stage.sharing .internal-call-grid article>span{display:none!important}.class-ended-banner{top:10px}}.meeting-room-stage.sharing .meeting-call-frame{z-index:35;width:auto;height:auto;min-height:0;box-shadow:none;pointer-events:none;background:0 0;border:0;border-radius:0;position:absolute;inset:0;overflow:visible}.meeting-room-stage.sharing .meeting-share-frame{height:auto;min-height:0;padding:0}.meeting-room-stage.sharing .internal-call-grid{left:var(--video-dock-left,auto);right:var(--video-dock-right,16px);top:var(--video-dock-top,72px);z-index:42;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:auto;max-width:min(44vw,420px);height:auto;min-height:0;display:flex;position:absolute;overflow:visible}.meeting-room-stage.sharing .internal-call-grid.is-dragging{cursor:grabbing}.meeting-room-stage.sharing .internal-call-grid article,.meeting-room-stage.sharing .meeting-local-video{border-radius:8px;flex:0 0 clamp(128px,13vw,170px);width:clamp(128px,13vw,170px)!important;height:clamp(86px,9vw,116px)!important;min-height:0!important;position:relative!important;inset:auto!important}.meeting-room-stage.sharing .internal-call-panel footer{max-width:calc(100vw - 24px);position:fixed;bottom:24px;left:50%;right:auto;transform:translate(-50%)}.meeting-room-stage.sharing:not(.dual-share):not(.share-focus){grid-template-columns:minmax(0,1fr) var(--call-sidebar-width)}.meeting-room-stage.sharing:not(.dual-share):not(.share-focus) .meeting-share-frame{grid-column:1}.meeting-room-stage.sharing:not(.dual-share):not(.share-focus) .meeting-call-frame{z-index:36;pointer-events:auto;background:0 0;border:0;border-radius:8px;grid-area:1/2;overflow:visible;width:100%!important;height:100%!important;position:relative!important;inset:auto!important}.meeting-room-stage.sharing:not(.dual-share):not(.share-focus) .internal-call-panel{pointer-events:auto;background:0 0;height:100%;min-height:0}.meeting-room-stage.sharing:not(.dual-share):not(.share-focus) .internal-call-grid{cursor:default;touch-action:auto;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:4px;width:100%;max-width:none;height:auto;display:flex;overflow:visible;position:static!important}.meeting-room-stage.sharing:not(.dual-share):not(.share-focus) .internal-call-grid article,.meeting-room-stage.sharing:not(.dual-share):not(.share-focus) .meeting-local-video{aspect-ratio:auto;flex:1 1 0!important;width:100%!important;height:auto!important;min-height:0!important}.meeting-room-stage.sharing.dual-share:not(.share-focus){grid-template-columns:minmax(0,1fr) minmax(0,1fr) var(--call-sidebar-width)}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-call-frame{z-index:36;pointer-events:auto;background:0 0;border:0;border-radius:8px;grid-area:1/3;overflow:visible;width:100%!important;height:100%!important;position:relative!important;inset:auto!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .internal-call-panel{pointer-events:auto;background:0 0;height:100%;min-height:0}.meeting-room-stage.sharing.dual-share:not(.share-focus) .internal-call-grid{cursor:default;touch-action:auto;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:4px;width:100%;max-width:none;height:auto;display:flex;overflow:visible;position:static!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .internal-call-grid article,.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-local-video{aspect-ratio:auto;flex:1 1 0!important;width:100%!important;height:auto!important;min-height:0!important}.meeting-room-stage.sharing.has-presentation:not(.dual-share):not(.share-focus){grid-template-columns:minmax(0,1fr) var(--call-sidebar-width)}.meeting-room-stage.sharing.has-presentation:not(.dual-share):not(.share-focus) .meeting-screen-frame{grid-column:1}.meeting-room-stage.sharing.has-presentation:not(.dual-share):not(.share-focus) .meeting-call-frame{z-index:36;pointer-events:auto;background:0 0;border:0;border-radius:8px;grid-area:1/2;overflow:visible;width:100%!important;height:100%!important;position:relative!important;inset:auto!important}.meeting-room-stage.sharing.has-presentation:not(.dual-share):not(.share-focus) .internal-call-panel{pointer-events:auto;background:0 0;height:100%;min-height:0}.meeting-room-stage.sharing.has-presentation:not(.dual-share):not(.share-focus) .internal-call-grid{cursor:default;touch-action:auto;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:4px;width:100%;max-width:none;height:auto;display:flex;overflow:visible;position:static!important}.meeting-room-stage.sharing.has-presentation:not(.dual-share):not(.share-focus) .internal-call-grid article,.meeting-room-stage.sharing.has-presentation:not(.dual-share):not(.share-focus) .meeting-local-video{aspect-ratio:auto;flex:1 1 0!important;width:100%!important;height:auto!important;min-height:0!important}.meeting-room-stage.sharing:not(.dual-share):not(.share-focus) .internal-call-grid,.meeting-room-stage.sharing.dual-share:not(.share-focus) .internal-call-grid,.meeting-room-stage.sharing.has-presentation:not(.dual-share):not(.share-focus) .internal-call-grid{padding-bottom:var(--meeting-controls-space);box-sizing:border-box}.meeting-room-stage.sharing.presentation-hidden{padding-bottom:60px;grid-template-columns:minmax(0,1fr)!important}.meeting-room-stage.sharing.presentation-hidden .meeting-call-resize-handle{display:none!important}.meeting-room-stage.sharing.presentation-hidden .meeting-call-frame{pointer-events:auto;background:#101017;border-radius:8px;overflow:visible;grid-area:1/1!important;width:100%!important;height:100%!important;min-height:0!important;position:relative!important;inset:auto!important}.meeting-room-stage.sharing.presentation-hidden .internal-call-panel{pointer-events:auto;background:#101017;height:100%;min-height:0;display:block}.meeting-room-stage.sharing.presentation-hidden .internal-call-grid{box-sizing:border-box;cursor:default;touch-action:auto;grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(auto-fit,minmax(340px,1fr));grid-auto-rows:minmax(0,1fr);align-content:stretch;align-items:stretch;gap:4px;width:100%;max-width:none;height:100%;min-height:0;padding:0;overflow:visible;display:grid!important;position:static!important}.meeting-room-stage.sharing.presentation-hidden .internal-call-grid article,.meeting-room-stage.sharing.presentation-hidden .meeting-local-video{flex:initial!important;aspect-ratio:auto!important;width:auto!important;height:100%!important;min-height:0!important;position:relative!important;inset:auto!important}.meeting-room-stage.sharing:not(.presentation-hidden) .internal-call-grid{padding-bottom:0!important}@media (min-width:901px){.meeting-room-stage.sharing{padding-bottom:60px}}.meeting-room-stage.sharing .meeting-call-resize-handle{display:none!important}.meeting-room-stage.sharing:not(.presentation-hidden) .meeting-call-resize-handle{display:flex!important}@media (max-width:900px){.meeting-room-stage{--meeting-controls-space:68px;padding-bottom:94px}.meeting-room-stage.sharing .internal-call-grid{left:var(--video-dock-left,auto);right:var(--video-dock-right,10px);top:var(--video-dock-top,56px);gap:4px;max-width:calc(100vw - 20px)}.meeting-room-stage.sharing .internal-call-grid article,.meeting-room-stage.sharing .meeting-local-video{flex-basis:112px;width:112px!important;height:78px!important}.meeting-room-stage.sharing .internal-call-panel footer{bottom:calc(20px + env(safe-area-inset-bottom));max-width:calc(100vw - 12px)}.meeting-call-chat-button{width:44px!important;min-width:44px!important;height:38px!important}.meeting-room-stage:not(.sharing) .internal-call-grid{box-sizing:border-box;padding-bottom:12px}}@media (max-width:720px){.meeting-room-stage.sharing{height:100dvh!important;min-height:100dvh!important;padding:0 0 calc(92px + env(safe-area-inset-bottom))!important;grid-template-rows:minmax(0,1fr) clamp(132px,22dvh,170px)!important;grid-template-columns:1fr!important;display:grid!important;overflow:hidden!important}.meeting-room-stage.sharing.dual-share:not(.share-focus),.meeting-room-stage.sharing.mobile-single-material-share:not(.share-focus){grid-template-rows:minmax(0,1fr) minmax(0,1fr) clamp(124px,20dvh,160px)!important}.meeting-room-stage.sharing.has-tool:not(.dual-share):not(.share-focus):has(.meeting-materials-frame){grid-template-rows:minmax(0,1fr) minmax(0,1fr) clamp(124px,20dvh,160px)!important}.meeting-room-stage.sharing .meeting-share-frame{grid-area:1/1!important;width:100%!important;height:100%!important;min-height:0!important;padding:0!important;overflow:hidden!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-screen-frame{grid-row:1!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-share-frame+.meeting-share-frame{grid-row:2!important}.meeting-room-stage.sharing.mobile-single-material-share:not(.share-focus) .meeting-materials-frame{grid-row:1/3!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-screen-frame+.meeting-share-frame{grid-row:2!important}.meeting-room-stage.sharing .meeting-call-frame{z-index:55;pointer-events:auto;background:#05070a;border:1px solid #1f2937;border-radius:10px 10px 0 0;box-shadow:0 -12px 28px #0008;grid-area:2/1!important;width:100%!important;height:100%!important;min-height:0!important;position:relative!important;inset:auto!important;overflow:hidden!important}.meeting-call-resize-handle{display:none!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-call-frame,.meeting-room-stage.sharing.mobile-single-material-share:not(.share-focus) .meeting-call-frame{grid-row:3!important}.meeting-room-stage.sharing.has-tool:not(.dual-share):not(.share-focus):has(.meeting-materials-frame) .meeting-call-frame{grid-row:3!important}.meeting-room-stage.sharing.mobile-single-material-share:not(.share-focus) .meeting-materials-panel>header,.meeting-room-stage.sharing.has-tool:not(.dual-share):not(.share-focus) .meeting-materials-panel>header{min-height:48px!important;padding:6px 10px!important}.meeting-room-stage.sharing.mobile-single-material-share:not(.share-focus) .meeting-materials-panel>header span,.meeting-room-stage.sharing.has-tool:not(.dual-share):not(.share-focus) .meeting-materials-panel>header span{font-size:8px!important;line-height:1!important}.meeting-room-stage.sharing.mobile-single-material-share:not(.share-focus) .meeting-materials-panel>header h2,.meeting-room-stage.sharing.has-tool:not(.dual-share):not(.share-focus) .meeting-materials-panel>header h2{text-overflow:ellipsis!important;white-space:nowrap!important;max-height:18px!important;font-size:12px!important;line-height:1.15!important;display:block!important;overflow:hidden!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-materials-panel>header{min-height:48px!important;padding:6px 10px!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-materials-panel>header span{font-size:8px!important;line-height:1!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .meeting-materials-panel>header h2{text-overflow:ellipsis!important;white-space:nowrap!important;max-height:18px!important;font-size:12px!important;line-height:1.15!important;display:block!important;overflow:hidden!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-panel>header{gap:8px!important;padding:5px 8px!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-panel>header span{display:none!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-panel>header h2{text-overflow:ellipsis!important;white-space:nowrap!important;max-width:42vw!important;font-size:12px!important;overflow:hidden!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-panel>header strong{min-height:24px!important;padding:0 8px!important;font-size:9px!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-toolbar{gap:4px!important;padding:4px 6px!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-toolbar button{min-width:28px!important;height:26px!important;padding:0 6px!important;font-size:10px!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-paper{padding:5px!important}.meeting-room-stage.sharing.dual-share:not(.share-focus) .class-document-paper .tiptap{border-radius:6px!important;padding:14px 12px!important;font-size:16px!important;line-height:1.35!important}.meeting-room-stage.sharing .meeting-call-frame .internal-call-panel{pointer-events:auto;height:100%!important;min-height:0!important}.meeting-room-stage.sharing .internal-call-grid{cursor:default;touch-action:auto;grid-template-rows:1fr!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;width:100%!important;max-width:none!important;height:100%!important;min-height:0!important;display:grid!important;position:relative!important;inset:auto!important;overflow:hidden!important}.meeting-room-stage.sharing .internal-call-grid.tile-count-1{grid-template-columns:1fr!important}.meeting-room-stage.sharing .internal-call-grid article,.meeting-room-stage.sharing .meeting-local-video{flex:initial!important;border-radius:8px!important;width:100%!important;min-width:0!important;height:100%!important;min-height:0!important}.meeting-room-stage.sharing .internal-call-panel footer{left:50%!important;right:auto!important;bottom:calc(20px + env(safe-area-inset-bottom))!important;z-index:80!important;max-width:calc(100vw - 12px)!important;position:fixed!important;transform:translate(-50%)!important}.meeting-room-shell.has-teacher-switcher .meeting-room-stage.sharing{padding-top:82px!important}.meeting-room-stage.sharing:not(.dual-share):not(.share-focus){grid-template-rows:minmax(0,1fr) clamp(170px,30dvh,220px)!important}.meeting-room-stage.sharing .meeting-call-resize-handle,.meeting-room-stage.sharing:not(.presentation-hidden) .meeting-call-resize-handle{display:none!important}.meeting-room-stage.sharing .meeting-call-frame{min-height:170px!important}}.flashcard-study-page{color:#f8fafc;background:#2f2f2f;min-height:100vh;font-family:Arial,Helvetica,sans-serif}.flashcard-study-back{color:#cbd5e1;opacity:.82;align-items:center;min-height:24px;font-size:11px;font-weight:900;text-decoration:none;display:inline-flex}.flashcard-study-back:hover{opacity:1}.flashcard-study{background:#303030;grid-template-rows:auto minmax(0,1fr) 56px;min-height:100vh;display:grid}.flashcard-study header{background:#262626;align-items:center;gap:10px;height:auto;min-height:24px;padding:6px 9px;display:flex}.flashcard-progress-counts{align-items:center;gap:4px;display:inline-flex}.flashcard-study header span{font-family:Consolas,monospace;font-size:11px;font-weight:700;line-height:1}.flashcard-count-review{color:#8fb6ff}.flashcard-count-learning{color:#f06d6d}.flashcard-count-new{color:#9bd8ad}.flashcard-collection-picker{color:#cbd5e1;text-transform:uppercase;white-space:nowrap;align-items:center;gap:6px;margin-left:auto;font-size:10px;font-weight:900;line-height:1;display:inline-flex}.flashcard-collection-picker span{font-family:Consolas,monospace;font-size:10px;font-weight:900;line-height:1}.flashcard-select-shell{align-items:center;min-width:0;display:inline-flex;position:relative}.flashcard-select-shell:after{content:"";pointer-events:none;border-bottom:2px solid #9bd8ad;border-right:2px solid #9bd8ad;width:8px;height:8px;position:absolute;top:50%;right:14px;transform:translateY(-65%)rotate(45deg)}.flashcard-collection-picker select{appearance:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#fff;letter-spacing:.01em;background:linear-gradient(#0f172a 0%,#111827 100%);border:1px solid #4b5563;border-radius:14px;outline:none;max-width:min(58vw,320px);min-height:42px;padding:0 42px 0 14px;font-size:13px;font-weight:800;box-shadow:inset 0 1px #ffffff14,0 10px 24px #0003}.flashcard-collection-picker select:focus{border-color:#9bd8ad;box-shadow:0 0 0 3px #9bd8ad26,0 10px 24px #0003}.flashcard-collection-picker select option{color:#fff;background:#111827}.flashcard-collection-picker select option:checked,.flashcard-collection-picker select option:hover{color:#fff;background:#1d4ed8}.flashcard-collection-picker-empty{flex-wrap:wrap;justify-content:center;margin-top:8px;margin-left:0}.flashcard-collection-picker-empty select{max-width:min(86vw,360px)}.flashcard-study-start{color:#fff;background:radial-gradient(circle at top,#3c3c3c 0%,#232323 52%,#171717 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.flashcard-study-start-card{background:#111827;border:1px solid #4b5563;border-radius:18px;gap:14px;width:min(520px,100%);padding:24px 20px;display:grid;box-shadow:0 20px 54px #000b}.flashcard-study-start-card span{color:#cde7ff;letter-spacing:.02em;text-transform:uppercase;background:#17324d;border-radius:999px;align-items:center;width:max-content;min-height:28px;padding:0 10px;font-size:11px;font-weight:900;display:inline-flex}.flashcard-study-start-card h1{margin:0;font-size:28px;line-height:1.05}.flashcard-study-start-card p{color:#d8dee8;margin:0;font-size:15px;line-height:1.45}.flashcard-study-start-button{color:#fff;cursor:pointer;background:#0f7a3b;border:0;border-radius:12px;justify-content:center;align-items:center;width:max-content;min-height:44px;padding:0 18px;font-size:14px;font-weight:900;display:inline-flex}.flashcard-study-start-button:hover{background:#0b5f2d}.flashcard-study-start-button:disabled{cursor:not-allowed;opacity:.55}.flashcard-collection-picker-start{flex-wrap:wrap;justify-content:flex-start;margin-left:0}.flashcard-collection-picker-start select{min-width:min(280px,100%);max-width:min(100%,360px)}.flashcard-study-card{color:#fff;text-align:center;cursor:pointer;background:#303030;border:0;align-content:start;gap:14px;width:100%;padding:24px 10px 80px;display:grid}.flashcard-study-card strong,.flashcard-study-card em{white-space:pre-wrap;width:min(680px,100% - 12px);margin:0 auto;font-size:18px;font-style:normal;font-weight:400;line-height:1.4;display:block}.flashcard-study-card em{border-top:1px solid #c7c7c7;padding-top:12px}.flashcard-study-card small{color:#aeb7c3;margin-top:18px;font-size:12px;font-weight:900}.flashcard-rating-bar{grid-template-columns:repeat(4,1fr);height:56px;display:grid;position:fixed;bottom:0;left:0;right:0}.flashcard-rating-bar button{color:#fff;cursor:pointer;border:0;border-right:1px solid #ffffff2e;padding:4px 2px;font-size:11px;font-weight:900;line-height:1.1}.flashcard-rating-bar button:disabled{cursor:not-allowed;filter:grayscale(.5);opacity:.55}.flashcard-rating-bar span{margin-bottom:3px;font-size:10px;font-weight:400;display:block}.flashcard-rating-bar .rating-again{background:#d92d20}.flashcard-rating-bar .rating-hard{background:#344054}.flashcard-rating-bar .rating-good{background:#15803d}.flashcard-rating-bar .rating-easy{background:#0284c7}.flashcard-study-empty{text-align:center;background:#303030;place-content:center;gap:10px;min-height:100vh;padding:24px;display:grid}.flashcard-study-empty span{color:#9bd8ad;text-transform:uppercase;font-size:12px;font-weight:900}.flashcard-study-empty h1{color:#fff;margin:0;font-size:32px}.flashcard-study-empty p{color:#d8dee8;margin:0;font-size:16px}.student-shell .student-hero{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center;gap:14px;width:min(100%,880px);margin:0 auto 14px;padding:26px clamp(18px,4vw,34px);display:grid}.student-shell .student-hero .auth-logo{grid-area:auto/1;justify-self:center;width:min(310px,78vw);height:94px;margin:0}.student-shell .student-hero-copy{grid-column:1;place-self:auto center;width:min(100%,560px)}.student-shell .student-hero .auth-kicker{text-align:center;width:auto;margin:0 0 6px}.student-shell .student-hero h1{font-size:clamp(32px,5vw,44px)}.student-shell .student-hero p{max-width:none;margin:8px 0 0}.student-shell .student-course-tabs{grid-column:1;justify-content:center;width:min(100%,560px)}.student-shell .student-course-tabs .student-chat-button{width:auto;min-height:34px;margin-top:0;padding:0 12px}.student-shell .student-room-button,.student-shell .student-flashcard-button{width:min(100%,760px);grid-column:1!important}.student-shell .student-room-blocked{text-align:left;grid-column:1;width:min(100%,760px)}
