:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#17231c;--ink:#17231c;--muted:#66736b;--surface:#fffdf8;--surface-strong:#fff;--line:#dfded7;--green:#1e6b4a;--green-dark:#144a35;--accent:#f0b75b;--soft-green:#dfece5;--shadow:0 24px 70px #24362b1a;background:#f6f4ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{min-height:100%;margin:0}body{background:radial-gradient(circle at 80% 10%,#f0b75b1f,#0000 34rem),radial-gradient(circle at 14% 25%,#1e6b4a14,#0000 28rem),#f6f4ef;min-height:100vh}a{color:inherit;text-decoration:none}button,input{font:inherit}.public-page,.demo-page{width:min(1180px,100% - 2rem);margin:0 auto;padding:1.1rem 0 2rem}.site-header,.demo-header{justify-content:space-between;align-items:center;gap:1rem;min-height:72px;padding:.65rem 0;display:flex}.brand-lockup{letter-spacing:-.02em;align-items:center;gap:.7rem;font-size:1.15rem;font-weight:800;display:inline-flex}.brand-mark{background:var(--green);color:#fff;border-radius:.85rem;place-items:center;width:2.35rem;height:2.35rem;display:grid;box-shadow:0 10px 25px #1e6b4a38}.site-nav{color:#526057;justify-content:flex-end;align-items:center;gap:1.2rem;font-size:.92rem;display:flex}.site-nav>a:hover{color:var(--ink)}.nav-login,.demo-back{border:1px solid var(--line);color:var(--ink);background:#ffffffb8;border-radius:999px;padding:.72rem 1rem;font-weight:700}.language-switch{color:var(--green);font-weight:700}.hero-section{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:clamp(2rem,6vw,6rem);min-height:620px;padding:clamp(3.5rem,8vw,7rem) 0 4rem;display:grid}.hero-copy{max-width:680px}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--green);margin:0 0 1rem;font-size:.78rem;font-weight:800}.hero-copy h1{letter-spacing:-.065em;max-width:760px;margin:0;font-size:clamp(3rem,8vw,6.7rem);line-height:.96}.hero-description{max-width:620px;color:var(--muted);margin:1.7rem 0 0;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.65}.hero-actions{flex-wrap:wrap;gap:.85rem;margin-top:2rem;display:flex}.button{border-radius:999px;justify-content:center;align-items:center;min-height:3.2rem;padding:.8rem 1.25rem;font-weight:800;transition:transform .16s,box-shadow .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--green);color:#fff;box-shadow:0 14px 35px #1e6b4a38}.button-secondary{border:1px solid var(--line);background:#ffffffbf}.hero-visual{place-items:center;min-height:420px;display:grid;position:relative}.visual-card{z-index:2;width:min(100%,340px);min-height:330px;box-shadow:var(--shadow);background:linear-gradient(150deg,#fffffff7,#dfece5f5);border:1px solid #ffffffe6;border-radius:2.2rem;flex-direction:column;justify-content:space-between;padding:2rem;display:flex;position:relative;transform:rotate(3deg)}.visual-card strong{letter-spacing:-.06em;color:var(--green-dark);font-size:clamp(3rem,6vw,5rem)}.visual-card span:last-child{color:var(--muted);font-weight:700}.visual-kicker{background:var(--accent);color:#4e3716;border-radius:999px;width:fit-content;padding:.4rem .7rem;font-size:.78rem;font-weight:800}.visual-orbit{border:1px solid #1e6b4a2b;border-radius:999px;position:absolute}.visual-orbit-one{width:390px;height:220px;transform:rotate(-22deg)}.visual-orbit-two{width:250px;height:380px;transform:rotate(31deg)}.highlight-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding:1rem 0 5rem;display:grid}.highlight-card{border:1px solid var(--line);background:#fffdf8d1;border-radius:1.6rem;min-height:230px;padding:1.5rem}.highlight-dot{background:var(--accent);border-radius:999px;width:.75rem;height:.75rem;margin-bottom:2.5rem;display:block}.highlight-card h2,.approach-section h2{letter-spacing:-.035em;margin:0}.highlight-card h2{font-size:1.4rem}.highlight-card p{color:var(--muted);margin:.8rem 0 0;line-height:1.65}.approach-section{background:var(--green-dark);color:#fff;border-radius:2rem;grid-template-columns:.7fr 1.3fr;gap:1rem 3rem;padding:clamp(3rem,8vw,6rem);display:grid}.approach-section .eyebrow{color:#a7d8bd}.approach-section h2{grid-column:2;font-size:clamp(2.2rem,5vw,4rem);line-height:1.05}.approach-section>p:last-child{color:#cbd9d1;grid-column:2;max-width:680px;margin:0;font-size:1.05rem;line-height:1.75}.site-footer{color:var(--muted);justify-content:space-between;align-items:center;gap:1rem;padding:2rem 0 0;font-size:.84rem;display:flex}.tech-status{color:var(--green)}[dir=rtl] .hero-copy h1{letter-spacing:-.03em}[dir=rtl] .visual-card{transform:rotate(-3deg)}.demo-header-actions{color:var(--green);align-items:center;gap:.8rem;font-weight:750;display:flex}.demo-hero{grid-template-columns:1.15fr .85fr;align-items:center;gap:4rem;padding:5.5rem 0 4rem;display:grid}.demo-badge{color:#72501a;letter-spacing:.08em;background:#fff3d8;border-radius:999px;padding:.5rem .8rem;font-size:.72rem;font-weight:900;display:inline-flex}.demo-hero h1{letter-spacing:-.065em;margin:1.4rem 0;font-size:clamp(3.4rem,7vw,6.4rem);line-height:.95}.demo-hero>div>p{max-width:650px;color:var(--muted);margin-bottom:2rem;font-size:1.18rem;line-height:1.7}.demo-stat-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.demo-stat{border:1px solid var(--line);background:#fffc;border-radius:1.6rem;flex-direction:column;justify-content:flex-end;min-height:150px;padding:1.4rem;display:flex;box-shadow:0 12px 40px #24362b0d}.demo-stat strong{letter-spacing:-.06em;color:var(--green-dark);font-size:2.6rem}.demo-stat span{color:var(--muted)}.demo-journey{grid-template-columns:repeat(4,1fr);gap:1rem;padding:2rem 0 6rem;display:grid}.demo-journey article{border-top:2px solid var(--green);background:#ffffff61;padding:1.5rem}.demo-journey article>span{color:var(--green);font-size:.75rem;font-weight:900}.demo-journey h2{margin:2rem 0 .7rem;font-size:1.25rem}.demo-journey p{color:var(--muted);margin:0;font-size:.92rem;line-height:1.6}.demo-product-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:center;gap:2rem;padding:0 0 5rem;display:grid}.demo-window{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:2rem;padding:1.8rem}.demo-window-top{border-bottom:1px solid #ecece7;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1.4rem;display:flex}.demo-window h2,.demo-phone h2{margin:.35rem 0 0;font-size:1.6rem}.demo-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--green);font-size:.7rem;font-weight:900}.demo-live{color:var(--green);background:#eef8f2;border-radius:.5rem;padding:.35rem .55rem;font-size:.68rem;font-weight:900}.demo-admin-stats{grid-template-columns:.6fr 1.4fr;gap:1rem;margin:1.4rem 0;display:grid}.demo-admin-stats>div{background:#f7f7f3;border-radius:1.2rem;flex-direction:column;gap:.5rem;padding:1.2rem;display:flex}.demo-admin-stats small{color:var(--muted)}.demo-admin-stats strong{font-size:1.4rem}.demo-table{border:1px solid #ecece7;border-radius:1rem;overflow:hidden}.demo-row{border-bottom:1px solid #ecece7;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;display:flex}.demo-row:last-child{border:0}.demo-row span{color:var(--green);font-size:.85rem;font-weight:750}.demo-phone{background:#fff;border:8px solid #18231d;border-radius:2.8rem;max-width:360px;margin:auto;padding:1rem 1.2rem 1.5rem;box-shadow:0 28px 70px #17231c2e}.demo-phone-bar{justify-content:space-between;margin-bottom:2rem;font-size:.68rem;font-weight:800;display:flex}.demo-muted{color:var(--muted);font-size:.88rem}.demo-class-card{background:var(--green-dark);color:#fff;border-radius:1.1rem;flex-direction:column;gap:.35rem;margin:1.2rem 0;padding:1rem;display:flex}.demo-class-card span{color:#bdd6c8;font-size:.8rem}.demo-phone h3{margin-top:1.4rem;font-size:.9rem}.attendance-pills{flex-wrap:wrap;gap:.4rem;display:flex}.attendance-pills span{color:var(--green-dark);background:#eef5f1;border-radius:.7rem;padding:.45rem .55rem;font-size:.72rem;font-weight:800}.demo-lesson{background:#fff6e5;border-radius:1rem;margin-top:1.4rem;padding:1rem}.demo-lesson small{color:#72501a;font-weight:900}.demo-lesson p{margin:.4rem 0 0;font-size:.82rem;line-height:1.5}.demo-disclaimer{color:#69552e;background:#fff8e9;border:1px solid #e7d8b9;border-radius:1rem;margin:0 0 2rem;padding:1rem 1.2rem;font-size:.85rem;line-height:1.5}[dir=rtl] .demo-hero h1{letter-spacing:-.025em}@media (max-width:820px){.public-page,.demo-page{width:min(100% - 1.25rem,680px)}.site-header{align-items:flex-start}.site-nav>a:not(.nav-login):not(.language-switch){display:none}.site-nav{gap:.6rem}.hero-section{grid-template-columns:1fr;gap:2.5rem;min-height:auto;padding-top:4.5rem}.hero-copy h1{font-size:clamp(3.4rem,15vw,5.6rem)}.hero-visual{min-height:340px;overflow:clip}.visual-card{width:min(86vw,330px);min-height:300px}.visual-orbit-one{width:min(92vw,370px)}.highlight-grid{grid-template-columns:1fr}.highlight-card{min-height:auto}.highlight-dot{margin-bottom:1.5rem}.approach-section{grid-template-columns:1fr;padding:2rem 1.4rem}.approach-section h2,.approach-section>p:last-child{grid-column:1}.site-footer{flex-direction:column;align-items:flex-start}.demo-hero{grid-template-columns:1fr;gap:2.5rem;padding:3.5rem 0}.demo-journey{grid-template-columns:1fr 1fr;padding-bottom:4rem}.demo-product-grid{grid-template-columns:1fr}.demo-phone{width:min(100%,360px)}.demo-admin-stats{grid-template-columns:1fr}}@media (max-width:460px){.brand-lockup>span:last-child{display:none}.nav-login{padding-inline:.85rem}.hero-copy h1{font-size:clamp(3.1rem,16vw,4.5rem)}.demo-header-actions{font-size:.78rem}.demo-back{padding:.6rem .7rem}.demo-hero h1{font-size:clamp(3rem,15vw,4.4rem)}.demo-stat-grid,.demo-journey{grid-template-columns:1fr 1fr}.demo-stat{min-height:120px}.demo-journey article{padding:1rem}.demo-row{font-size:.82rem}}
.auth-page{grid-template-rows:auto 1fr;width:min(1100px,100% - 2rem);min-height:100vh;margin:0 auto;padding:1.25rem 0 3rem;display:grid}.auth-brand{width:fit-content}.auth-card{border:1px solid var(--line);width:min(100%,520px);box-shadow:var(--shadow);background:#fffdf8eb;border-radius:2rem;place-self:center;padding:clamp(1.5rem,5vw,2.4rem)}.auth-copy h1,.dashboard-topbar h1,.dashboard-welcome h2,.dashboard-card h2{letter-spacing:-.04em;margin:0}.auth-copy h1{font-size:clamp(2.4rem,8vw,4rem);line-height:1}.auth-copy>p:last-child{color:var(--muted);line-height:1.65}.login-form{gap:1rem;margin-top:2rem;display:grid}.login-form label{color:var(--muted);gap:.45rem;font-size:.9rem;font-weight:700;display:grid}.login-form input{border:1px solid var(--line);width:100%;min-height:3.15rem;color:var(--ink);background:#fff;border-radius:1rem;outline:none;padding:.8rem 1rem}.login-form input:focus{border-color:var(--green);box-shadow:0 0 0 3px #1e6b4a1a}.login-submit{cursor:pointer;border:0;width:100%}.login-submit:disabled{cursor:wait;opacity:.7}.form-error{color:#8b352a;background:#fff0ed;border-radius:.9rem;margin:0;padding:.75rem .9rem;font-size:.9rem}.auth-back{color:var(--green);margin-top:1.4rem;font-weight:700;display:inline-block}.dashboard-page{background:#f3f1eb;grid-template-columns:250px 1fr;min-height:100vh;display:grid}.dashboard-sidebar{border-inline-end:1px solid var(--line);background:#fffdf8f0;flex-direction:column;gap:2.5rem;padding:1.4rem;display:flex}.dashboard-nav{gap:.35rem;display:grid}.dashboard-nav a,.dashboard-nav span{color:var(--muted);border-radius:.95rem;padding:.85rem 1rem;font-weight:700}.dashboard-nav-active{background:var(--soft-green);color:var(--green-dark)!important}.dashboard-content{min-width:0;padding:clamp(1rem,4vw,2.5rem)}.dashboard-topbar{justify-content:space-between;align-items:center;gap:1rem;display:flex}.dashboard-topbar h1{font-size:clamp(2rem,5vw,3.4rem)}.identity-chip{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;align-items:center;gap:.65rem;padding:.45rem .8rem .45rem .45rem;font-size:.88rem;display:inline-flex}.identity-avatar{background:var(--green);color:#fff;border-radius:999px;place-items:center;width:2rem;height:2rem;font-weight:800;display:grid}.dashboard-welcome{background:var(--green-dark);color:#fff;border-radius:2rem;grid-template-columns:1fr auto;align-items:center;gap:2rem;margin-top:2rem;padding:clamp(1.5rem,4vw,2.5rem);display:grid;position:relative;overflow:hidden}.dashboard-welcome-label{color:#a8d8bd;text-transform:uppercase;letter-spacing:.1em;margin:0 0 1rem;font-size:.78rem;font-weight:800}.dashboard-welcome h2{font-size:clamp(2rem,5vw,3.5rem)}.dashboard-welcome p:last-child{color:#cbd9d1;max-width:650px;line-height:1.7}.dashboard-orb{background:var(--accent);color:#4e3716;border-radius:50%;place-items:center;width:145px;height:145px;font-weight:900;display:grid}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.dashboard-card{border:1px solid var(--line);background:#fff;border-radius:1.5rem;min-height:210px;padding:1.5rem}.dashboard-card-number{color:var(--green);margin-bottom:2rem;font-size:.78rem;font-weight:900;display:inline-block}.dashboard-card p{color:var(--muted);line-height:1.65}.teacher-session-flow{width:min(100% - 1.25rem,760px);color:var(--ink);margin:0 auto;padding:.75rem 0 4rem}.teacher-session-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 0 1.25rem;display:flex}.teacher-session-header h1{letter-spacing:-.03em;margin:0;font-size:clamp(1.8rem,7vw,2.7rem);line-height:1.05}.teacher-session-meta{color:var(--muted);flex-wrap:wrap;gap:.45rem .85rem;margin:.6rem 0 0;font-weight:650;display:flex}.teacher-session-status{background:var(--soft-green);color:var(--green-dark);border-radius:999px;flex:none;padding:.45rem .7rem;font-size:.82rem;font-weight:800}.teacher-session-section{border-bottom:1px solid var(--line);padding:1.4rem 0}.teacher-session-section h2{margin:0;font-size:1.2rem}.teacher-section-heading{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.teacher-section-heading>span{color:var(--muted);font-size:.9rem;font-weight:800}.teacher-roster{border-top:1px solid var(--line);gap:0;margin-top:.75rem;display:grid}.teacher-attendance-row{border:0;border-bottom:1px solid var(--line);min-width:0;margin:0;padding:1rem 0}.teacher-attendance-row legend{margin-bottom:.7rem;padding:0;font-weight:800}.teacher-attendance-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.teacher-attendance-option{border:1px solid var(--line);min-height:48px;color:var(--muted);cursor:pointer;text-align:center;background:#fff;border-radius:.95rem;place-items:center;padding:.5rem;font-size:.86rem;font-weight:800;display:grid;position:relative}.teacher-attendance-option input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.teacher-attendance-option:has(input:checked){border-color:var(--green);background:var(--soft-green);color:var(--green-dark)}.teacher-attendance-option:has(input:focus-visible){outline-offset:2px;outline:3px solid #1e6b4a2e}.teacher-attendance-row:disabled .teacher-attendance-option{cursor:not-allowed;opacity:.58}.teacher-primary-action{background:var(--green-dark);color:#fff;cursor:pointer;width:100%;min-height:50px;font:inherit;border:0;border-radius:1rem;margin-top:1rem;font-weight:850}.teacher-primary-action:hover:not(:disabled){background:var(--green)}.teacher-primary-action:focus-visible,.teacher-lesson-form textarea:focus-visible{outline-offset:2px;outline:3px solid #1e6b4a2e}.teacher-primary-action:disabled{cursor:not-allowed;opacity:.58}.teacher-lesson-form{gap:1rem;margin-top:1rem;display:grid}.teacher-lesson-form label{color:var(--muted);gap:.5rem;font-size:.9rem;font-weight:800;display:grid}.teacher-lesson-form textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:96px;color:var(--ink);font:inherit;background:#fff;border-radius:1rem;padding:.9rem 1rem;line-height:1.55}.teacher-session-flow [role=status]{color:var(--green-dark);margin:.7rem 0 0;font-size:.9rem;font-weight:750}.teacher-session-flow [role=alert]{color:#8b352a;margin:.7rem 0 0;font-size:.9rem;font-weight:750}@media (max-width:760px){.dashboard-page{grid-template-columns:1fr}.dashboard-sidebar{z-index:5;border-inline-end:0;border-bottom:1px solid var(--line);flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;position:sticky;top:0}.dashboard-sidebar .brand-lockup>span:last-child{display:none}.dashboard-nav{display:flex;overflow-x:auto}.dashboard-nav span{display:none}.dashboard-topbar{flex-direction:column;align-items:flex-start}.identity-chip{max-width:100%}.identity-chip>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-welcome{grid-template-columns:1fr}.dashboard-orb{width:92px;height:92px}.dashboard-grid{grid-template-columns:1fr}}@media (min-width:640px){.teacher-session-flow{padding-top:1.5rem}.teacher-attendance-row{grid-template-columns:minmax(180px,1fr) minmax(320px,1.35fr);align-items:center;gap:1rem;display:grid}.teacher-attendance-row legend{margin:0}}
.teacher-today,.teacher-screen-state{width:min(100% - 1.25rem,760px);color:var(--ink);margin:0 auto}.teacher-today{padding:1.25rem 0 4rem}.teacher-today-header{border-bottom:1px solid var(--line);padding:.75rem 0 1.35rem}.teacher-today-header h1{letter-spacing:-.045em;margin:0;font-size:clamp(2.1rem,9vw,3.8rem);line-height:1}.teacher-today-header time{color:var(--muted);margin-top:.65rem;font-weight:700;display:block}.teacher-today-list{margin:0;padding:0;list-style:none}.teacher-today-list li{border-bottom:1px solid var(--line)}.teacher-session-link{grid-template-columns:4.6rem minmax(0,1fr) auto;align-items:center;gap:.9rem;min-height:78px;padding:.8rem 0;display:grid}.teacher-session-link:hover .teacher-session-link-main strong{color:var(--green)}.teacher-session-link:focus-visible{outline-offset:4px;border-radius:.75rem;outline:3px solid #1e6b4a2e}.teacher-session-time{color:var(--green-dark);font-size:1.02rem;font-weight:900}.teacher-session-link-main{gap:.25rem;min-width:0;display:grid}.teacher-session-link-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:1.08rem;overflow:hidden}.teacher-session-link-main>span{color:var(--muted);font-size:.88rem;font-weight:650}.teacher-session-link-status{background:var(--soft-green);color:var(--green-dark);border-radius:999px;padding:.38rem .58rem;font-size:.75rem;font-weight:850}.teacher-empty-state{color:var(--muted);margin:0;padding:2rem 0;line-height:1.6}.teacher-screen-state{place-items:center;min-height:55vh;padding:2rem 0;display:grid}.teacher-screen-state p{color:var(--muted);text-align:center;margin:0;font-weight:750}.teacher-screen-state [role=alert]{color:#8b352a}[dir=rtl].teacher-today .teacher-today-header h1{letter-spacing:normal}@media (max-width:520px){.teacher-session-link{grid-template-columns:3.8rem minmax(0,1fr)}.teacher-session-link-status{grid-column:2;width:fit-content}}
