@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_c15e96cb-module__0bjUvq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_c15e96cb-module__0bjUvq__variable{--font-inter:"Inter", "Inter Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f8f7fc;--bg-secondary:#f1eff8;--surface:#fff;--text:#302d45;--text-secondary:#77738a;--border:#e5e2ef;--border-strong:#d4d0e2;--border-focus:#8567dd;--accent:#8567dd;--accent-hover:#7255c9;--accent-soft:#eee8ff;--success:#47805c;--success-soft:#eef8f0;--danger:#c84f67;--danger-hover:#ae3d54;--danger-soft:#fff1f3;--warning:#986f28;--warning-soft:#fff8e9;--radius:6px;--control-height:34px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:28px;--space-7:36px;--text-xs:11px;--text-sm:13px;--text-md:14px;--text-lg:16px;--text-xl:22px;--shadow-sm:0 8px 22px #382d5c0a;--shadow-md:0 18px 40px #382d5c21;--focus-ring:0 0 0 3px #8567dd2e;--z-sticky:20;--z-overlay:100;--z-tooltip:120;--font-sans:var(--font-inter), Inter, system-ui, sans-serif}.product-ui{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f8f7fc;--bg-secondary:#f1eff8;--surface:#fff;--text:#302d45;--text-secondary:#77738a;--border:#e5e2ef;--border-strong:#d4d0e2;--border-focus:#8567dd;--accent:#8567dd;--accent-hover:#7255c9;--accent-soft:#eee8ff;--success:#47805c;--success-soft:#eef8f0;--danger:#c84f67;--danger-hover:#ae3d54;--danger-soft:#fff1f3;--warning:#986f28;--warning-soft:#fff8e9;--radius:6px;--control-height:34px}.product-ui .pageHeader>div>p{display:none}.landing-page{width:min(100% - 4rem,1400px);padding:3rem 0 0}.hero-section,.landing-footer{background:#fff;border:1px solid #e1e4e8;border-radius:14px}.landing-header{border-bottom:1px solid #edf0f2;min-height:68px;padding:0 2.5rem}.landing-brand{letter-spacing:-.065em;align-items:center;gap:.65rem;font-size:1.35rem;font-weight:750;display:inline-flex}.brand-mark{grid-template-columns:repeat(2,6px);gap:3px;width:15px;display:grid}.brand-mark i{background:#111;border-radius:50%;width:6px;height:6px}.brand-mark i:last-child{background:#111}.landing-header nav{gap:2.6rem;font-size:.84rem;display:flex}.landing-header nav a,.header-actions>a:first-child{text-decoration:none}.landing-header nav a:hover{color:var(--accent)}.header-actions{align-items:center;gap:1.5rem;font-size:.84rem;display:flex}.outline-button{border:1px solid #cfd7e0;border-radius:9px;padding:.7rem 1.2rem}.hero-art{background-color:#fff;background-image:radial-gradient(#d9dfe4 .75px,#0000 .75px);background-size:6px 6px;border-radius:0 0 14px 14px;min-height:700px;position:relative;overflow:hidden}.hero-copy{z-index:2;text-align:center;width:min(90%,790px);margin:0 auto;padding:220px 0 0;position:relative}.hero-copy h1,.challenges-section h2,.features-section h2,.pricing-section h2{color:#090a0c;letter-spacing:-.07em;margin:0;font-size:clamp(2.65rem,5.8vw,5.6rem);font-weight:500;line-height:.98}.hero-copy h1 span{color:#a9adb3}.hero-copy p{color:#454a52;max-width:540px;margin:1.9rem auto 2rem;font-size:1.02rem}.primary-button,.plan-button{color:#fff;background:#1677ed;border-radius:10px;justify-content:center;align-items:center;gap:.8rem;padding:1rem 1.45rem;font-size:.92rem;font-weight:650;text-decoration:none;display:inline-flex;box-shadow:0 8px 18px #1677ed33}.primary-button:hover,.plan-button:hover{background:#0866d6;text-decoration:none}.primary-button span{font-size:1.2rem}.sticky-note{z-index:1;background:#ffed80;width:198px;padding:22px 16px 28px;font-family:cursive;font-size:1.05rem;line-height:1.05;position:absolute;top:70px;left:4%;rotate:6deg;box-shadow:0 18px 25px #1d29391c}.sticky-note b{color:#e33a37;text-shadow:0 2px 3px #999;font-family:sans-serif;position:absolute;top:-10px;left:52%}.floating-card{z-index:1;background:#f9fafb;border:1px solid #e5e8eb;border-radius:20px;place-items:center;display:grid;position:absolute;box-shadow:0 15px 24px #2634482b}.calendar-card{width:88px;height:88px;bottom:60px;left:5%;rotate:-8deg}.calendar-card strong{font-size:2.2rem;line-height:1}.calendar-card span{color:#e65532;margin-top:-24px;font-size:.62rem;font-weight:800}.check-card{width:94px;height:94px;top:180px;left:44%}.check-card svg{stroke:#fff;stroke-width:3px;fill:none;width:44px}.check-card:before{content:"";background:#287be8;border-radius:10px;width:46px;height:46px;position:absolute}.check-card svg{z-index:1}.time-card{width:85px;height:85px;font-size:2.8rem;top:125px;right:11%}.class-card{align-items:flex-start;width:190px;height:160px;padding:22px;display:flex;top:75px;right:-5px;rotate:9deg}.class-card b{font-size:1rem}.class-card span{margin-top:17px;font-size:.8rem}.class-card small{color:#1677ed;margin-top:10px}.task-peek{background:#f7f8fa;border:1px solid #e2e5e8;border-radius:17px;gap:10px;width:265px;padding:22px;font-size:.75rem;display:grid;position:absolute;bottom:-35px;right:4%;rotate:-3deg;box-shadow:0 4px 17px #26344815}.task-peek span{background:#fff;border-radius:5px;padding:8px}.task-peek i{background:#28c995;border-radius:2px;width:9px;height:9px;margin-right:8px;display:inline-block}.challenges-section,.features-section,.pricing-section{text-align:center;padding:8.5rem 6%}.section-label{color:#61666d;border:1px solid #dfe3e7;border-radius:99px;margin-bottom:1.7rem;padding:.5rem .9rem;font-size:.72rem;display:inline-block;box-shadow:0 6px 10px #10182812}.challenges-section h2,.features-section h2,.pricing-section h2{font-size:clamp(2.25rem,4vw,4.1rem)}.challenge-list{text-align:left;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:3.6rem auto 2rem;display:grid}.challenge-list article{border-left:1px solid #ebedef;min-height:100px;padding:1.4rem 2.5rem}.challenge-list article:last-child{border-right:1px solid #ebedef}.challenge-list b{color:#e89a13;font-size:1.45rem}.challenge-list p{max-width:230px;font-size:.82rem;line-height:1.55}.preview-stage{background:linear-gradient(#20bde9,#fff 92%);border-radius:28px 28px 0 0;max-width:1090px;margin:0 auto;padding:46px 44px 0;position:relative}.product-preview{text-align:left;background:#fbfcfd;border:1px solid #dce2e5;border-radius:15px 15px 0 0;min-height:405px;display:flex;overflow:hidden;box-shadow:0 20px 35px #177a9d2b}.preview-sidebar{color:#535860;background:#fff;border-right:1px solid #e6e9ec;flex:0 0 160px;width:160px;padding:18px 12px;font-size:.58rem}.preview-logo{color:#15171a;align-items:center;gap:5px;margin:0 0 18px 5px;font-size:.85rem;font-weight:700;display:flex}.preview-logo .brand-mark{transform-origin:0;scale:.7}.preview-create{color:#16181b;border:1px solid #e1e5e8;border-radius:6px;margin-bottom:18px;padding:7px}.preview-sidebar p{color:#adb2b7;margin:15px 5px 7px;font-size:.43rem}.preview-sidebar span,.preview-sidebar b{padding:5px;font-weight:400;display:block}.preview-sidebar b{background:#eef0f2;border-radius:4px}.preview-sidebar em{float:right;font-style:normal}.preview-main{flex:1;min-width:0;padding:14px 20px}.preview-toolbar{color:#72777e;justify-content:space-between;font-size:.55rem;display:flex}.preview-toolbar b{color:#fff;background:#dda479;border-radius:50%;place-items:center;width:17px;height:17px;display:inline-grid}.preview-main h3{letter-spacing:-.05em;margin:25px 0 14px;font-size:1.75rem;font-weight:500}.preview-main h3 small{color:#9ca0a4;font-size:inherit;font-weight:inherit}.preview-grid{grid-template-columns:1.25fr .85fr 1.1fr;gap:10px;display:grid}.preview-grid section{background:#fff;border:1px solid #e8ebed;border-radius:11px;min-height:160px;padding:13px}.preview-grid h4{margin:0;font-size:.65rem}.widget-rule{background:#26292d;height:1px;margin:10px 0}.todo-widget span,.todo-widget label{color:#777d83;margin:8px 0;font-size:.53rem;display:block}.todo-widget input{accent-color:#1778e8;width:8px;height:8px;margin:0 5px 0 0}.timer-widget strong{margin:42px 0 20px;font-size:1.5rem;display:block}.timer-widget button{background:#f3f4f5;border:0;border-radius:50%;width:20px;height:20px;margin-right:5px;font-size:.5rem}.timer-widget button.stop{color:#fff;background:#f25237}.ring,.progress-chart{background:radial-gradient(#fff 55%, transparent 57%), conic-gradient(#20c2df 0 48%, #f9ad24 48% 78%, #e9edf0 78%);border-radius:50%;place-items:center;width:92px;height:92px;margin:16px auto 9px;display:grid}.ring b{font-size:.85rem}.ring small{font-size:.48rem}.activity-widget p{text-align:center;color:#73787e;font-size:.48rem}.assigned-widget{grid-column:span 2}.assigned-widget h4 button{float:right;background:#f2f4f5;border:0;border-radius:50%}.assigned-widget>div{background:#fafbfc;border-radius:5px;margin-top:9px;padding:7px;font-size:.53rem}.assigned-widget i{border-radius:2px;width:9px;height:9px;margin-right:5px;display:inline-block}.assigned-widget .orange{background:#fa713b}.assigned-widget .blue{background:#1dbfe4}.assigned-widget .yellow{background:#f4c442}.assigned-widget small{float:right}.stage-tag{background:#fff;border:1px solid #dfe5e6;border-radius:15px;place-items:center;display:grid;position:absolute;box-shadow:0 12px 16px #23384a2b}.stage-tag-left{width:57px;height:57px;font-size:1.4rem;bottom:105px;left:-16px;rotate:-12deg}.stage-tag-right{width:58px;height:58px;top:92px;right:-22px}.stage-tag-right svg{stroke:#fff;stroke-width:3px;fill:none;z-index:1;width:32px}.stage-tag-right:before{content:"";background:#28caa0;border-radius:7px;width:33px;height:33px;position:absolute}.features-section{background:#fbfbfb;border:1px solid #e1e4e7;border-radius:24px;margin:1.5rem 0 0}.section-intro{color:#666b72;margin:1.4rem 0 3rem}.feature-grid{text-align:center;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1080px;margin:0 auto;display:grid}.feature-card{background:#fff;border:1px solid #e5e8ea;border-radius:18px;min-height:355px;padding:26px 22px;overflow:hidden}.feature-card h3{letter-spacing:-.04em;margin:27px 0 8px;font-size:1.15rem}.feature-card>p{color:#656a71;max-width:260px;margin:0 auto;font-size:.78rem}.mini-people{text-align:left;background:#fff;border-radius:11px;width:166px;margin:8px auto;padding:16px;font-size:.62rem;box-shadow:0 12px 22px #3341551a}.mini-people b,.mini-people span,.mini-people p{border-bottom:1px solid #edf0f2;padding:6px 0;display:block}.mini-people i{float:right;color:#08a8bd;background:#dff7fa;border-radius:9px;font-style:normal}.mini-calendar{background:#fff;border-radius:10px;width:150px;margin:3px auto 15px;padding:10px;box-shadow:0 12px 22px #3341551a}.mini-calendar small{margin-bottom:11px;display:block}.mini-calendar div{align-items:end;gap:9px;height:70px;display:flex}.mini-calendar i{background:#22bfe9;border-radius:3px 3px 0 0;width:23px;height:45px}.mini-calendar i:nth-child(2){height:60px}.mini-calendar i:nth-child(3){height:34px}.mini-calendar i:nth-child(4){height:52px}.mini-calendar b{color:#8b9197;font-size:.42rem}.meeting-list{text-align:left;background:#fff;border-radius:9px;margin:0 auto;padding:9px;font-size:.52rem;box-shadow:0 12px 22px #3341551a}.meeting-list strong,.meeting-list span{border-bottom:1px solid #edf0f2;padding:5px;display:block}.meeting-list i{float:right;color:#1fb9df;font-style:normal}.progress-chart{background:radial-gradient(#fff 57%, transparent 59%), conic-gradient(#efa412 0 72%, #edf0f2 72%);width:120px;height:120px;margin-top:20px}.progress-chart b{font-size:1.15rem}.pricing-section{padding-bottom:6rem}.pricing-grid{text-align:left;grid-template-columns:repeat(3,1fr);align-items:center;max-width:980px;margin:3.6rem auto 0;display:grid}.pricing-card{background:#fff;border:1px solid #e1e5e8;border-radius:16px;min-height:405px;padding:30px;position:relative}.pricing-card.featured{z-index:1;color:#fff;background:#1777ed;border:0;min-height:445px;box-shadow:0 16px 30px #1677ed4d}.pricing-card h3{margin:0;font-size:1rem}.pricing-card>p{color:#757a80;margin:4px 0 22px;font-size:.67rem}.pricing-card.featured>p{color:#dceaff}.plan-price{letter-spacing:-.06em;border-top:1px solid #e7eaec;padding:18px 0;font-size:2.15rem}.featured .plan-price{border-color:#ffffff2e}.plan-price small{letter-spacing:0;font-size:1rem}.plan-button{border-radius:7px;padding:.7rem;font-size:.66rem;display:flex}.featured-button{box-shadow:none;color:#111;background:#fff}.featured-button:hover{background:#f0f5ff}.pricing-card ul{gap:11px;margin:28px 0 0;padding:0;font-size:.68rem;list-style:none;display:grid}.pricing-card li{align-items:center;gap:9px;display:flex}.pricing-card li svg{stroke:currentColor;stroke-width:2px;fill:none;width:13px}.best-choice{color:#8d6200;background:#ffed84;border-radius:7px;padding:7px 11px;font-size:.59rem;font-weight:700;position:absolute;top:-16px;right:25px}.landing-footer{background-color:#fafbfb;background-image:radial-gradient(#dde1e5 .75px,#0000 .75px);background-size:6px 6px;grid-template-columns:1fr auto;gap:30px;margin-bottom:3rem;padding:3.5rem 4.5rem 1.2rem;display:grid}.landing-footer h2{letter-spacing:-.06em;margin:1.5rem 0 4rem;font-size:clamp(2rem,3.2vw,3.2rem);font-weight:500;line-height:1.03}.footer-links{align-content:start;gap:14px;font-size:.78rem;display:grid}.landing-footer small{color:#858a90;grid-column:span 2;font-size:.62rem}.landing-page-simple .hero-art{background-image:none;min-height:640px}.hero-art-clean:after{content:"";background:linear-gradient(145deg,#eaf5ff,#f9fcff);border-radius:230px 230px 0 0;width:min(38vw,460px);height:43%;position:absolute;bottom:0;right:8%}.hero-kicker{letter-spacing:.09em;text-transform:uppercase;font-weight:700;color:#1977dc!important;margin:0 0 1.2rem!important;font-size:.75rem!important}.hero-register-link{margin-top:1.15rem!important;font-size:.78rem!important}.hero-register-link a{color:#111318;text-underline-offset:.22em;font-weight:650;text-decoration:underline}.auth-shell{background:#f6f8fa radial-gradient(#dbe1e6 .7px,#0000 .7px) 0 0/7px 7px;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.auth-form{background:#fff;border:1px solid #e1e5e9;border-radius:16px;width:min(100%,440px);margin:0;padding:2.5rem;box-shadow:0 18px 45px #1d293917}.auth-brand{color:#111318;letter-spacing:-.07em;margin-bottom:2.6rem;font-size:1.25rem;font-weight:800;display:block}.auth-form h1{color:#0d0f12;letter-spacing:-.06em;margin:0;font-size:2rem;font-weight:550}.auth-form .auth-lede{color:#666c73;text-align:left;margin:.6rem 0 1.8rem;font-size:.88rem}.auth-form label{color:#343940;margin:1rem 0 .4rem;font-size:.78rem;font-weight:650}.auth-form input,.auth-form select{color:#16191d;background:#fff;border:1px solid #dce2e7;border-radius:8px;padding:.75rem .85rem;font-size:.87rem}.auth-form input:focus,.auth-form select:focus{border-color:#1677ed;outline:3px solid #1677ed1f}.auth-form button{color:#fff;background:#1677ed;border-radius:8px;padding:.82rem;font-weight:650}.auth-form button:hover:not(:disabled){background:#0866d6}.auth-form .auth-message{margin:1rem 0 0;font-size:.78rem}.auth-forgot{text-align:right;margin-top:.75rem}.auth-forgot a,.auth-switch a{color:#267ce2;text-underline-offset:.18em;font-weight:650;text-decoration:underline}.auth-form .auth-switch{color:#666c73;margin:1.25rem 0 0;font-size:.77rem}.auth-success-button{color:#fff;text-align:center;background:#1677ed;border-radius:8px;margin-top:1.8rem;padding:.85rem;font-size:.85rem;font-weight:650;display:block}.auth-success-button:hover{background:#0866d6;text-decoration:none}.info-page{width:min(100% - 3rem,1100px);min-height:100vh;margin:0 auto;padding:4rem 0}.info-back{color:#5d646c;margin-bottom:5rem;font-size:.82rem;display:inline-block}.info-page h1{letter-spacing:-.075em;margin:0;font-size:clamp(3rem,7vw,6.3rem);font-weight:500;line-height:.94}.info-lede{color:#60666e;max-width:580px;margin:2rem 0 4rem;font-size:1.06rem}.info-grid{border-top:1px solid #dfe4e8;grid-template-columns:repeat(3,1fr);display:grid}.info-grid article{border-bottom:1px solid #dfe4e8;padding:1.7rem 1.4rem 1.7rem 0}.info-grid article+article{border-left:1px solid #dfe4e8;padding-left:1.4rem}.info-grid b{color:#1977dc;font-size:.75rem}.info-grid h2,.price-callout h2{letter-spacing:-.04em;margin:3rem 0 .5rem;font-size:1.25rem}.info-grid p,.price-callout p{color:#656b72;font-size:.86rem}.price-callout{background:#fff;border-radius:18px;max-width:520px;padding:2rem;box-shadow:0 14px 35px #1d293910}.price-callout h2{margin-top:0}*,:before,:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);min-height:100vh;margin:0;padding:0;line-height:1.45}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}.landing-page{width:min(100% - 3rem,1180px);min-height:100vh;margin:0 auto;padding:1.5rem 0 2rem}.landing-header,.landing-footer{justify-content:space-between;align-items:center;display:flex}.landing-brand{letter-spacing:-.05em;font-size:1.25rem;font-weight:800;text-decoration:none}.landing-login,.landing-footer a{text-underline-offset:.2em;font-size:.875rem;font-weight:650;text-decoration:underline}.landing-intro{max-width:760px;padding:clamp(4rem,11vh,7.5rem) 0 clamp(2.5rem,6vh,4rem)}.landing-eyebrow{color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem;font-size:.75rem;font-weight:700}.landing-intro h1,.role-section h2,.role-card h3{letter-spacing:-.045em}.landing-intro h1{max-width:650px;margin:0;font-size:clamp(2.5rem,5.5vw,4.75rem);line-height:1}.landing-lede{max-width:520px;color:var(--text-secondary);margin:1.5rem 0 0;font-size:clamp(1rem,1.5vw,1.1875rem)}.role-section{border-top:1px solid var(--border)}.role-section-heading{padding:1.25rem 0 1.5rem}.role-section-heading .landing-eyebrow{margin-bottom:.25rem}.role-section h2{margin:0;font-size:1.5rem}.role-grid{border:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.role-card{flex-direction:column;min-height:320px;padding:1.5rem;display:flex}.role-card+.role-card{border-left:1px solid var(--border)}.role-card-student{background:#edf5ef}.role-card-teacher{background:#edf2fa}.role-number{color:var(--text-secondary);margin:0 0 auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.role-card h3{margin:2rem 0 .5rem;font-size:1.5rem;line-height:1.05}.role-card>p:not(.role-number):not(.role-note){color:var(--text-secondary);margin:0;font-size:.9375rem}.role-actions{gap:.75rem;margin-top:auto;padding-top:2rem;display:grid}.landing-button{border:1px solid var(--text);text-align:center;padding:.75rem 1rem;font-size:.875rem;font-weight:700;text-decoration:none;display:block}.landing-button:hover{text-decoration:none}.landing-button-primary{background:var(--accent);border-color:var(--accent);color:#fff}.landing-button-primary:hover{background:#1d416f}.landing-button-secondary:hover{background:color-mix(in srgb, var(--text) 8%, transparent)}.landing-text-link{width:fit-content;color:var(--text);text-underline-offset:.2em;font-size:.8125rem;font-weight:650;text-decoration:underline}.role-note{color:var(--text-secondary);margin:0;font-size:.75rem}.landing-footer{border-top:1px solid var(--border);color:var(--text-secondary);margin-top:1.5rem;padding-top:1rem;font-size:.8125rem}.app-nav-link{border-radius:var(--radius);color:var(--text-secondary);margin-bottom:.125rem;padding:.45rem .75rem;font-size:.8125rem;text-decoration:none;display:block}.app-nav-link:hover{background:var(--bg);color:var(--text);text-decoration:none}.app-nav-link-active{background:var(--accent-soft);color:var(--accent);font-weight:600}.class-section-page>header{margin-bottom:1.5rem}.class-section-page>header h1{letter-spacing:-.045em;margin:0;font-size:1.75rem;font-weight:580}.class-section-page>header p,.class-settings-note{color:var(--text-secondary);margin:.35rem 0 0;font-size:.8rem}.class-stat-grid{grid-template-columns:repeat(3,minmax(140px,1fr));gap:.75rem;display:grid}.class-stat-grid article{background:#fff;border:1px solid #e0e4e8;border-radius:10px;gap:.6rem;padding:1.1rem;display:grid;box-shadow:0 6px 18px #1118270a}.class-stat-grid span{color:var(--text-secondary);font-size:.68rem}.class-stat-grid strong{font-size:1.15rem;font-weight:650}.class-definition-list{background:#fff;border:1px solid #e0e4e8;border-radius:10px;margin:0;overflow:hidden;box-shadow:0 6px 18px #1118270a}.class-definition-list div{border-bottom:1px solid #e8ebee;grid-template-columns:minmax(130px,.4fr) 1fr;padding:.9rem 1rem;display:grid}.class-definition-list div:last-child{border-bottom:0}.class-definition-list dt{color:var(--text-secondary);font-size:.72rem}.class-definition-list dd{margin:0;font-size:.8rem;font-weight:620}.class-settings-note{margin-top:1rem}@media (max-width:600px){.class-stat-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}.class-definition-list div{grid-template-columns:1fr;gap:.25rem}}.responsive-nav{flex-direction:column;flex:1;min-height:0;display:flex}.responsive-nav-toggle{display:none}.admin-page,.dashboard-page{max-width:1180px}.admin-page-header,.directory-toolbar{justify-content:space-between;align-items:center;gap:1rem;display:flex}.admin-page-header{margin-bottom:1.25rem}.admin-page-header h1{letter-spacing:-.025em;margin:0;font-size:1.375rem}.page-meta{color:var(--text-secondary);margin:.3rem 0 0;font-size:.8125rem}.surface{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.directory-toolbar{margin-bottom:1rem}.filter-panel{margin:0 0 1rem}.filter-panel summary{display:none}.filter-panel-content{display:flex}.directory-search{width:min(100%,420px);margin:0}.data-table-wrap{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:.8125rem}.data-table th{color:var(--text-secondary);border-bottom:1px solid var(--border);letter-spacing:.05em;text-align:left;text-transform:uppercase;background:#f8fafc;padding:.7rem .75rem;font-size:.6875rem;font-weight:700}.data-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:.75rem}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fafcff}.row-actions{flex-wrap:wrap;gap:.375rem;display:flex}.status-active{color:var(--success)}.status-archived{color:var(--danger)}.admin-sidebar-brand{margin-bottom:1.75rem}.admin-sidebar-title{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;margin:.25rem 0 0;font-size:.6875rem;font-weight:700}.admin-user{border-top:1px solid var(--border);margin-top:auto;padding-top:1rem}.responsive-nav-body{flex-direction:column;flex:1;min-height:0;display:flex}.class-navigation,.admin-navigation{flex:1;overflow-y:auto}.page-back-link{color:var(--text-secondary);margin-bottom:1rem;font-size:.8125rem;display:inline-block}.grade-scroll-hint{color:var(--text-secondary);margin:0 0 .5rem;font-size:.75rem;display:none}.auth-form{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);width:min(100% - 2rem,400px);margin:12vh auto;padding:2rem}.auth-form h1{margin:0 0 1.5rem;font-size:1.25rem}.auth-form label{margin:1rem 0 .25rem;font-size:.875rem;font-weight:500;display:block}.auth-form input{border:1px solid var(--border);border-radius:var(--radius);width:100%;padding:.5rem .75rem;font-size:.875rem}.auth-form button{border-radius:var(--radius);background:var(--text);width:100%;color:var(--bg);cursor:pointer;border:0;margin-top:1.5rem;padding:.5rem;font-weight:500}.auth-form button:disabled{cursor:not-allowed;opacity:.7}.auth-form p{text-align:center;color:var(--text-secondary);margin:1rem 0 0;font-size:.75rem}.auth-form p+p{margin-top:.5rem}.auth-form a{color:var(--text);font-weight:500}.auth-message{border-radius:var(--radius);border:1px solid;padding:.75rem;text-align:left!important}.auth-message-success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.auth-message-error{color:#991b1b;background:#fef2f2;border-color:#fecaca}input,button,select,textarea{font-family:inherit}input:focus-visible,button:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}@media (max-width:760px){.landing-page{width:min(100% - 2rem,1120px);padding-top:1rem}.landing-intro{padding:4.5rem 0 3rem}.role-grid{grid-template-columns:1fr}.role-card{min-height:0}.role-card+.role-card{border-top:1px solid var(--border);border-left:0}.role-card h3{margin-top:1.5rem}.role-actions{margin-top:1.5rem;padding-top:0}.class-shell{display:block!important}.class-sidebar{border-bottom:1px solid var(--border);border-right:0!important;width:100%!important}.responsive-nav-toggle{cursor:pointer;color:var(--text-secondary);text-align:left;background:0 0;border:none;padding:.5rem 0;font-size:.8125rem;display:block}.responsive-nav-body{display:none}.responsive-nav-body.open{display:flex}.class-navigation{max-height:50vh;padding-top:.5rem;overflow-y:auto}.class-main{padding:1rem!important}.admin-shell{display:block!important}.admin-sidebar{border-bottom:1px solid var(--border);border-right:0!important;width:100%!important;padding:.5rem 1rem!important}.admin-sidebar-brand,.admin-user{display:none}.admin-sidebar .responsive-nav-toggle{width:100%;padding:.45rem 0;font-weight:600;display:block}.admin-sidebar .responsive-nav-body{padding:.5rem 0 .75rem;display:none}.admin-sidebar .responsive-nav-body.open{display:flex}.admin-navigation{max-height:none;padding-top:0}.admin-main{padding:1rem!important}.dashboard-page{margin:1rem!important}.dashboard-topbar{flex-direction:column;gap:.75rem;align-items:flex-start!important}.dashboard-topbar-links,.dashboard-user-actions{flex-wrap:wrap;gap:.75rem!important}.grade-scroll-hint{display:block}.admin-page-header,.directory-toolbar{flex-direction:column;align-items:flex-start}.directory-search{width:100%}.filter-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%}.filter-panel summary{color:var(--text);cursor:pointer;padding:.65rem .75rem;font-size:.8125rem;font-weight:600;display:block}.filter-panel-content{padding:0 .75rem .75rem}.filter-panel:not([open]) .filter-panel-content{display:none}.data-table-wrap{border-radius:0;margin:0 -.25rem}}.brand-mark{grid-template-columns:repeat(2,7px);gap:3px;width:17px}.brand-mark i,.brand-mark i:last-child{background:#111;border-radius:2px;width:7px;height:7px}.brand-mark i:first-child{background:#08f}.landing-brand{color:#111}.public-page{background-color:#fbfcfd;background-image:radial-gradient(#d9dfe4 .75px,#0000 .75px);background-size:6px 6px;min-height:100vh}.public-header,.landing-page-simple .public-header{background:#fff;border:0;border-bottom:1px solid #edf0f2;border-radius:0;width:100%;min-height:68px;padding:0 clamp(1.5rem,6vw,5.5rem)}.public-header nav a:hover{color:#08f}.outline-button{color:#111;border-color:#d7dde3}.outline-button:hover{color:#08f;border-color:#08f;text-decoration:none}.public-footer,.landing-page-simple .public-footer{background:#fff;border:0;border-top:1px solid #edf0f2;border-radius:0;width:100%;margin:0;padding:3.5rem clamp(1.5rem,6vw,5.5rem) 1.2rem}.primary-button,.auth-shell .auth-form button,.auth-success-button{background:#08f}.primary-button:hover,.auth-shell .auth-form button:hover:not(:disabled),.auth-success-button:hover{background:#0075dc}.landing-page-simple .hero-register-link a,.auth-forgot a,.auth-switch a{color:#08f}.landing-page-simple .hero-copy h1,.info-page h1,.pricing-page h1{color:#111}.landing-page-simple .hero-copy h1 span{color:#9ca2a8}.info-page{min-height:650px;padding-top:clamp(4.5rem,9vw,8rem);padding-bottom:clamp(5rem,10vw,9rem)}.auth-brand{margin-bottom:2.6rem}.auth-brand .landing-brand{font-size:1.25rem}.pricing-page{width:min(100% - 3rem,1120px);margin:0 auto;padding:clamp(4.5rem,8vw,7rem) 0 clamp(5rem,9vw,8rem)}.pricing-heading{text-align:center}.pricing-heading h1{letter-spacing:-.075em;margin:0;font-size:clamp(3rem,6vw,5.2rem);font-weight:500;line-height:.96}.pricing-heading p{color:#626971;max-width:590px;margin:1.5rem auto 0;font-size:1rem}.student-pricing-note{color:#111;background:#eef8ff;border:1px solid #cce8ff;border-radius:10px;flex-wrap:wrap;justify-content:center;gap:.55rem 1.25rem;margin:2.5rem auto 3.5rem;padding:.85rem 1.2rem;font-size:.82rem;display:flex}.student-pricing-note span{color:#59616a}.saas-pricing-grid{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:1rem;display:grid}.saas-tier{background:#fff;border:1px solid #dde2e7;border-radius:16px;flex-direction:column;min-height:500px;padding:2rem;display:flex;position:relative;box-shadow:0 14px 35px #1111110a}.saas-tier-featured{border:2px solid #08f;box-shadow:0 18px 42px #0088ff1a}.tier-recommended{color:#fff;background:#08f;border-radius:0 0 7px 7px;padding:.5rem .75rem;font-size:.66rem;font-weight:700;position:absolute;top:0;right:1.5rem}.saas-tier h2{color:#111;letter-spacing:-.025em;margin:0;font-size:1.05rem}.saas-tier>p{color:#666d75;min-height:38px;margin:.55rem 0 1.8rem;font-size:.77rem;line-height:1.5}.tier-price{border-top:1px solid #edf0f2;flex-direction:column;justify-content:center;min-height:72px;padding:1.25rem 0;display:flex}.tier-price strong{color:#111;letter-spacing:-.06em;font-size:2.15rem;font-weight:550;line-height:1}.tier-price span{color:#737a82;margin-top:.4rem;font-size:.68rem}.tier-action{color:#fff;text-align:center;background:#111;border:1px solid #111;border-radius:8px;margin:.8rem 0 1.8rem;padding:.8rem;font-size:.76rem;font-weight:650;display:block}.tier-action:hover{background:#292929;text-decoration:none}.saas-tier-featured .tier-action{background:#08f;border-color:#08f}.saas-tier-featured .tier-action:hover{background:#0075dc}.saas-tier ul{color:#3e444b;gap:.8rem;margin:0;padding:0;font-size:.75rem;list-style:none;display:grid}.saas-tier li{align-items:center;gap:.6rem;display:flex}.saas-tier li svg{fill:none;stroke:#08f;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px;flex:0 0 15px;width:15px}@media (max-width:760px){.public-header,.landing-page-simple .public-header{padding:0 1.25rem}.public-footer,.landing-page-simple .public-footer{grid-template-columns:1fr;padding:2.5rem 1.5rem 1.2rem}.public-footer small{grid-column:auto}.info-page{width:min(100% - 2.5rem,1100px)}.info-grid,.saas-pricing-grid{grid-template-columns:1fr}.info-grid article+article{border-left:0;padding-left:0}.pricing-page{width:min(100% - 2.5rem,1120px)}.saas-tier{min-height:0}.saas-tier-featured{order:-1}}.auth-shell .auth-form{background:#fff;border:1px solid #e1e5e9;border-radius:16px;width:min(100%,440px);margin:0;padding:2.5rem;box-shadow:0 18px 45px #1d293917}.auth-shell .auth-form h1{color:#0d0f12;letter-spacing:-.06em;margin:0;font-size:2rem;font-weight:550}.auth-shell .auth-form label{color:#343940;margin:1rem 0 .4rem;font-size:.78rem;font-weight:650}.auth-shell .auth-form input,.auth-shell .auth-form select{color:#16191d;background:#fff;border:1px solid #dce2e7;border-radius:8px;padding:.75rem .85rem;font-size:.87rem}.auth-shell .auth-form button{color:#fff;background:#1677ed;border-radius:8px;padding:.82rem;font-weight:650}.auth-shell .auth-form .auth-lede{color:#666c73;text-align:left;margin:.6rem 0 1.8rem;font-size:.88rem}.auth-shell .auth-form .auth-switch{color:#666c73;margin:1.25rem 0 0;font-size:.77rem}.auth-shell .auth-form .auth-message{margin:1rem 0 0;font-size:.78rem}.landing-page.landing-page-simple{background-color:#fff;background-image:radial-gradient(#d9dfe4 .75px,#0000 .75px);background-size:6px 6px;width:100%;min-height:100vh;padding:0}.landing-page-simple .hero-section,.landing-page-simple .landing-footer{background:0 0;border:0;border-radius:0}.landing-page-simple .landing-header{border-bottom:0;padding:0 clamp(1.5rem,6vw,5.5rem)}.landing-page-simple .hero-art{background:0 0;min-height:min(620px,100vh - 68px)}.landing-page-simple .hero-art:after{display:none}.landing-page-simple .hero-copy{padding-top:clamp(4rem,10vh,6.5rem)}.landing-page-simple .hero-copy h1{z-index:1;position:relative}.landing-page-simple .landing-footer{background-image:none;margin:0;padding:3rem clamp(1.5rem,6vw,5.5rem) 1.2rem}.landing-page-simple .landing-footer h2{margin-bottom:2.5rem}@media (max-width:760px){.landing-page{width:100%;padding:0}.hero-section,.landing-footer,.features-section{border-left:0;border-right:0;border-radius:0}.landing-header{min-height:64px;padding:0 1.25rem}.landing-header nav{display:none}.header-actions{gap:.8rem}.header-actions>a:first-child{display:none}.hero-art{border-radius:0;min-height:620px}.hero-copy{padding-top:190px}.hero-copy h1{font-size:clamp(2.6rem,12vw,4rem)}.hero-copy p{padding:0 1.2rem;font-size:.94rem}.sticky-note{top:28px;left:-18px;scale:.75}.class-card{top:22px;right:-55px;scale:.75}.check-card{top:115px;left:70%;scale:.7}.time-card{display:none}.task-peek{bottom:-10px;right:-65px;scale:.72}.challenges-section,.features-section,.pricing-section{padding:5rem 1.25rem}.challenges-section h2,.features-section h2,.pricing-section h2{font-size:clamp(2.25rem,10vw,3.2rem)}.challenge-list{grid-template-columns:1fr;margin:2rem 0}.challenge-list article,.challenge-list article:last-child{border-bottom:1px solid #ebedef;border-left:0;border-right:0;min-height:0;padding:1rem .4rem}.challenge-list p{max-width:none;margin:.4rem 0 0}.preview-stage{border-radius:0;margin:0 -1.25rem;padding:25px 9px 0}.product-preview{min-height:300px}.preview-sidebar{display:none}.preview-main{padding:12px}.preview-main h3{margin:17px 0 10px;font-size:1.3rem}.preview-grid{gap:5px}.preview-grid section{min-height:120px;padding:7px}.timer-widget strong{margin:34px 0 10px;font-size:.92rem}.ring{width:55px;height:55px;margin:12px auto 4px}.activity-widget p{font-size:.38rem}.todo-widget span,.todo-widget label{font-size:.4rem}.assigned-widget>div{margin-top:4px;padding:4px;font-size:.4rem}.stage-tag{display:none}.feature-grid,.pricing-grid{grid-template-columns:1fr}.feature-card{min-height:290px}.pricing-grid{gap:16px}.pricing-card,.pricing-card.featured{min-height:0}.pricing-card.featured{order:-1}.landing-footer{grid-template-columns:1fr;margin-bottom:0;padding:3rem 1.5rem 1.2rem}.landing-footer h2{margin-bottom:1.5rem}.landing-footer small{grid-column:auto}.landing-page-simple .hero-copy{padding-top:4.5rem}.landing-page-simple .landing-footer{padding:2.5rem 1.5rem 1.2rem}}.landing-page-simple .public-header{background:#fff;border-bottom:1px solid #edf0f2}.landing-page-simple .public-footer{background:#fff;border-top:1px solid #edf0f2}.auth-shell .auth-form button{background:#08f}.auth-shell .auth-form button:hover:not(:disabled){background:#0075dc}@media (max-width:760px){.public-header,.landing-page-simple .public-header{flex-wrap:wrap;min-height:112px;padding:.8rem 1.25rem}.public-header nav,.landing-page-simple .public-header nav{border-top:1px solid #edf0f2;order:3;justify-content:center;gap:1.5rem;width:100%;padding-top:.65rem;font-size:.76rem;display:flex}}.landing-brand,.auth-brand .landing-brand{color:#111;font-family:var(--font-sans);letter-spacing:-.065em;font-size:1.35rem;font-weight:750;line-height:1;text-decoration:none;display:inline-block}.landing-brand:hover{text-decoration:none}.public-header,.landing-page-simple .public-header{background:#fff;border:1px solid #e4e8ec;border-radius:14px;width:calc(100% - 2rem);margin:1rem auto 0;box-shadow:0 10px 28px #1111110c}.public-footer,.landing-page-simple .public-footer{background:#fff;border:1px solid #e4e8ec;border-radius:14px;width:calc(100% - 2rem);margin:1rem auto;box-shadow:0 10px 28px #1111110c}.landing-page-simple .hero-art{place-items:center;min-height:calc(100svh - 84px);display:grid}.landing-page-simple .hero-copy{margin:0 auto;padding:0 0 2rem}@media (max-width:760px){.public-header,.landing-page-simple .public-header{border-radius:12px;width:calc(100% - 1.5rem);margin-top:.75rem}.public-footer,.landing-page-simple .public-footer{border-radius:12px;width:calc(100% - 1.5rem);margin:.75rem auto}.landing-page-simple .hero-art{min-height:calc(100svh - 124px)}.landing-page-simple .hero-copy{padding:0 0 1rem}}.billing-page{width:min(100% - 2rem,900px);margin:0 auto;padding:3rem 0 5rem}.billing-back{color:var(--text-secondary);font-size:.8rem}.billing-page header{margin:4rem 0 2.5rem}.billing-page header p,.billing-plan-card small{color:var(--accent);letter-spacing:.1em;font-size:.68rem;font-weight:750}.billing-page header h1{letter-spacing:-.065em;margin:.4rem 0;font-size:clamp(2.5rem,6vw,4.5rem);font-weight:520}.billing-page header span,.billing-plan-card p,.billing-usage p,.billing-page footer{color:var(--text-secondary);font-size:.85rem}.billing-grace{color:#754f00;background:#fff9e8;border:1px solid #f0c36a;border-radius:10px;gap:.25rem;margin-bottom:1rem;padding:1rem 1.2rem;font-size:.82rem;display:grid}.billing-plan-card{border:1px solid var(--border);background:var(--surface);border-radius:14px;justify-content:space-between;align-items:center;padding:2rem;display:flex}.billing-plan-card h2{letter-spacing:-.04em;margin:.35rem 0;font-size:1.6rem}.billing-plan-card p{margin:0}.billing-price{text-align:right}.billing-price strong{letter-spacing:-.06em;font-size:2.4rem}.billing-price span{color:var(--text-secondary);font-size:.8rem}.billing-pending{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;padding:.8rem 1rem;font-size:.8rem}.billing-usage{margin:2rem 0}.billing-usage h2{font-size:1rem}.billing-usage>div{border:1px solid var(--border);background:var(--surface);border-radius:10px;grid-template-columns:repeat(3,1fr);display:grid}.billing-usage article{gap:.7rem;padding:1.2rem;display:grid}.billing-usage article+article{border-left:1px solid var(--border)}.billing-usage article span{color:var(--text-secondary);font-size:.72rem}.billing-usage article strong{font-size:1.15rem}.billing-usage article i{color:var(--text-secondary);font-size:.72rem;font-style:normal;font-weight:400}.billing-actions{border-top:1px solid var(--border);flex-wrap:wrap;gap:.7rem;padding-top:1.5rem;display:flex}.billing-actions button{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;font:inherit;border-radius:7px;padding:.65rem .9rem;font-size:.78rem;font-weight:650}.billing-actions button:disabled{cursor:not-allowed;opacity:.45}.billing-actions .billing-secondary{border-color:var(--border);background:var(--surface);color:var(--text)}.billing-actions .billing-danger{color:var(--danger);background:#fff;border-color:#fecaca}.billing-message{width:100%;color:var(--text-secondary);margin:.2rem 0;font-size:.78rem}.billing-page footer{border-top:1px solid var(--border);margin-top:3rem;padding-top:1rem}@media (max-width:650px){.billing-page{padding-top:1.5rem}.billing-page header{margin-top:3rem}.billing-plan-card{align-items:flex-start;padding:1.25rem}.billing-price strong{font-size:1.7rem}.billing-usage>div{grid-template-columns:1fr}.billing-usage article+article{border-top:1px solid var(--border);border-left:0}.billing-actions button{width:100%}}.grade-save-bar{z-index:30;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);align-items:center;gap:.75rem;padding:.5rem .75rem;font-size:.75rem;display:flex;position:fixed;top:5rem;right:1.25rem;box-shadow:0 8px 24px #00000014}@media (max-width:700px){.grade-save-bar{padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));border-radius:0;justify-content:space-between;inset:auto 0 0}}
