:root{--ink:#1b2430;--muted:#4a5260;--line:#d7dce3;--paper:#f7f8fa;--card:#fff;--accent:#0d6e61;--accent-soft:#e4f1ee;--danger:#9a3d2f}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ink:#e8ecf1;--muted:#b3bcc8;--line:#333d4a;--paper:#14181e;--card:#1c222a;--accent:#37c2a8;--accent-soft:#1c2f2c;--danger:#e0796a}}:root[data-theme=dark]{--ink:#e8ecf1;--muted:#b3bcc8;--line:#333d4a;--paper:#14181e;--card:#1c222a;--accent:#37c2a8;--accent-soft:#1c2f2c;--danger:#e0796a}*{box-sizing:border-box}body,html{margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans),-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;line-height:1.6}a{color:var(--accent)}.page-shell{min-height:100vh;display:flex;flex-direction:column}:root{--page-max:1040px;--page-pad:20px}.container{flex:1 1;width:100%;max-width:var(--page-max);margin:0 auto;padding:32px var(--page-pad) 80px}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--card) 88%,transparent);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px)}.header-inner{display:flex;align-items:center;gap:24px;max-width:var(--page-max);height:64px;margin:0 auto;padding:0 var(--page-pad)}.brand{display:inline-flex;align-items:center;gap:9px;color:var(--ink);font-weight:800;font-size:18px;letter-spacing:-.01em;text-decoration:none;flex:0 0 auto}.brand svg{flex:0 0 auto}.brand svg,.brand-accent{color:var(--accent)}.primary-nav{display:flex;align-items:center;gap:4px;flex:1 1}.primary-link{position:relative;padding:8px 12px;border-radius:8px;color:var(--muted);font-size:15px;font-weight:600;text-decoration:none;transition:color .15s ease,background .15s ease}.primary-link:hover{color:var(--ink);background:var(--accent-soft)}.primary-link.active{color:var(--accent)}.primary-link.active:after{content:"";position:absolute;left:12px;right:12px;bottom:-13px;height:2px;border-radius:2px;background:var(--accent)}.header-actions{gap:6px;margin-left:auto}.header-actions,.header-cta{display:flex;align-items:center}.header-cta{gap:8px;margin-left:6px}.header-cta .btn{padding:8px 16px;font-size:14px;border-radius:8px}.btn.ghost{background:transparent;color:var(--ink)}.btn.ghost:hover{background:var(--accent-soft);color:var(--accent)}.icon-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);text-decoration:none;transition:background .15s ease,color .15s ease}.icon-button.active,.icon-button:hover{background:var(--accent-soft);color:var(--accent)}.icon-button .unread-dot{position:absolute;top:7px;right:8px;width:9px;height:9px;border:2px solid var(--card);box-sizing:content-box}.account-menu{position:relative;margin-left:4px}.account-trigger{display:inline-flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink);font-weight:600;font-size:14px}.account-trigger:hover{border-color:var(--accent)}.account-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-panel,.mobile-panel{position:absolute;right:0;top:calc(100% + 10px);min-width:230px;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--card);box-shadow:0 12px 32px rgba(15,23,42,.14);display:flex;flex-direction:column;z-index:30}.menu-header{display:flex;flex-direction:column;padding:8px 10px 10px;margin-bottom:4px;border-bottom:1px solid var(--line);font-size:14px}.menu-header span,.menu-header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}.menu-header span{color:var(--muted);font-size:13px}.menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:9px 10px;border-radius:8px;background:transparent;color:var(--ink);font-size:14px;font-weight:500;text-align:left;text-decoration:none}.menu-item.active,.menu-item:hover{background:var(--accent-soft);color:var(--accent)}.menu-signout{color:var(--danger)}.menu-panel form,.mobile-panel form{display:block;margin:0}.menu-divider{height:1px;margin:6px 4px;background:var(--line)}.mobile-menu{position:relative}.mobile-panel{position:fixed;left:12px;right:12px;top:72px;min-width:0;max-height:calc(100vh - 90px);overflow-y:auto}.mobile-cta{display:flex;gap:8px;padding:6px 4px 4px}.mobile-cta .btn{flex:1 1}.mobile-only{display:none}@media (max-width:860px){.desktop-only,.primary-nav{display:none}.mobile-only{display:block}.header-inner{gap:12px;height:60px}.mobile-panel{top:66px}}.site-footer{margin-top:auto;border-top:1px solid var(--line);background:var(--card)}.footer-inner{display:grid;grid-template-columns:1.6fr repeat(3,1fr);grid-gap:40px;gap:40px;max-width:var(--page-max);margin:0 auto;padding:44px var(--page-pad) 36px}.footer-brand{display:flex;flex-direction:column;gap:12px;align-items:flex-start}.footer-brand p{margin:0;color:var(--muted);font-size:15px;max-width:34ch}.footer-cta{display:inline-flex;align-items:center;gap:6px;margin-top:4px;padding:8px 14px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:14px;font-weight:600;text-decoration:none;transition:background .15s ease,color .15s ease}.footer-cta:hover{background:var(--accent);color:#fff}.footer-col{display:flex;flex-direction:column;gap:10px}.footer-heading{margin:0 0 4px;color:var(--ink);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.footer-col a{color:var(--muted);font-size:15px;text-decoration:none;width:-moz-fit-content;width:fit-content}.footer-col a:hover{color:var(--accent)}.footer-bottom{border-top:1px solid var(--line)}.footer-bottom-inner{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;max-width:var(--page-max);margin:0 auto;padding:16px var(--page-pad);color:var(--muted);font-size:13px}.footer-bottom-inner a{color:var(--muted)}.footer-bottom-inner a:hover{color:var(--accent)}.footer-bottom-links{display:flex;gap:18px}.footer-bottom-links a{text-decoration:none}@media (max-width:860px){.footer-inner{grid-template-columns:1fr 1fr;gap:32px 24px}.footer-brand{grid-column:1/-1}}@media (max-width:480px){.footer-inner{grid-template-columns:1fr;padding-top:32px}.footer-bottom-inner{flex-direction:column;align-items:flex-start}}h1{font-size:26px;margin:0 0 6px}h2{font-size:18px;margin:28px 0 10px}p.hint{color:var(--muted);font-size:15px;margin:0 0 20px}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:18px 20px;margin-bottom:14px}form{display:flex;flex-direction:column;gap:12px;max-width:420px}label{font-size:14px;font-weight:600;color:var(--ink)}input,select,textarea{font:inherit;padding:9px 11px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--ink)}textarea{min-height:90px;resize:vertical}.btn,button{font:inherit;cursor:pointer;border:none;border-radius:6px;padding:9px 16px;font-weight:600;background:var(--accent);color:#fff;display:inline-block;text-decoration:none;text-align:center}.btn.secondary,button.secondary{background:var(--accent-soft);color:var(--accent)}.btn.danger,button.danger{background:var(--danger)}button:disabled{opacity:.5;cursor:not-allowed}.error{color:var(--danger);font-size:14px}.badge{display:inline-block;font-size:13px;font-weight:700;padding:2px 8px;border-radius:100px;background:var(--accent-soft);color:var(--accent)}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex:0 0 auto}.avatar-placeholder{display:inline-flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);font-size:13px;font-weight:700}.avatar-lg{width:64px;height:64px;font-size:24px}.avatar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(56px,1fr));grid-gap:10px;gap:10px;max-width:420px;margin:10px 0}.avatar-option{border:2px solid transparent;border-radius:50%;padding:2px;background:var(--card);cursor:pointer;line-height:0}.avatar-option img{width:48px;height:48px;border-radius:50%;display:block}.avatar-option:hover{border-color:var(--line)}.avatar-option-selected{border-color:var(--accent)}.avatar-option:disabled{opacity:.6;cursor:not-allowed}.stars{color:#c98a2c}.review{border-top:1px dashed var(--line);padding-top:10px;margin-top:10px}table{border-collapse:collapse;width:100%;font-size:14px}td,th{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line)}.pills{display:flex;gap:6px;flex-wrap:wrap}.pill{display:inline-block;font-size:13px;font-weight:600;padding:3px 10px;border-radius:100px;background:var(--accent-soft);color:var(--accent)}.pill-link{text-decoration:none;transition:background .15s ease}.pill-link:hover{background:var(--accent);color:#fff}.search-hero{background:linear-gradient(135deg,var(--accent-soft),var(--paper));border-radius:16px;padding:32px;margin-bottom:24px}.search-hero h1{margin-bottom:4px}.search-bar{display:flex;flex-direction:row;gap:10px;flex-wrap:wrap;max-width:none;background:var(--card);padding:10px;border-radius:12px;box-shadow:0 4px 14px rgba(27,36,48,.06)}.search-field{display:flex;align-items:center;gap:8px;flex:1 1;min-width:160px;padding:0 12px;color:var(--muted)}.search-field input{border:none;flex:1 1;padding:10px 0}.search-field:not(:last-of-type){border-right:1px solid var(--line)}.search-bar button{padding:0 24px;border-radius:8px}@media (max-width:560px){.search-field:not(:last-of-type){border-right:none;border-bottom:1px solid var(--line);padding-bottom:8px}.search-bar button{padding:12px}}.hero{background:linear-gradient(135deg,var(--accent-soft),var(--paper));border-radius:16px;padding:48px 32px;margin-bottom:8px}.hero h1{font-size:32px;max-width:560px}.hero p.hint{font-size:16px;max-width:520px;margin-bottom:24px}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:16px;gap:16px;margin:32px 0}.feature-card{text-align:left}.feature-card .feature-icon{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:10px;font-size:20px}.feature-card h3{font-size:15px;margin:0 0 4px}.feature-card p{font-size:15px;color:var(--muted);margin:0}.stats-strip{display:flex;gap:8px;justify-content:space-around;text-align:center;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:8px 0 32px}.stats-strip .stat-value{font-size:24px;font-weight:700;color:var(--accent)}.stats-strip .stat-label{font-size:14px;color:var(--muted)}.teacher-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:14px;gap:14px}.teacher-card{display:block;color:inherit;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}.teacher-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(27,36,48,.08);border-color:var(--accent)}.donation-card{display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--accent-soft);border-color:var(--accent-soft)}.donation-card>div:first-child{flex:1 1;min-width:240px}.donation-qr{flex:0 0 auto;text-align:center}.donation-qr img{border-radius:10px;display:block;box-shadow:0 4px 14px rgba(27,36,48,.1)}.message-thread{display:flex;flex-direction:column;gap:8px;max-height:360px;overflow-y:auto;padding:4px 2px}.message-bubble{max-width:75%;padding:8px 12px;border-radius:12px;font-size:14px}.message-theirs{align-self:flex-start;background:var(--paper);border:1px solid var(--line)}.message-mine{align-self:flex-end;background:var(--accent-soft)}.message-bubble .hint{display:block;margin-top:3px}.unread-dot{width:9px;height:9px;border-radius:50%;background:var(--danger);display:inline-block;flex:0 0 auto}.conversation-unread{border-color:var(--accent);background:var(--accent-soft)}.conversation-unread b{color:var(--ink)}.report-block-row{margin-top:10px}.report-block-row button{font-size:13px;padding:6px 12px}.blog-list{display:flex;flex-direction:column;gap:14px}.blog-card h2{font-size:20px;margin-bottom:0}.blog-card h2 a{text-decoration:none}.blog-card h2 a:hover{text-decoration:underline}.blog-article{max-width:720px}.blog-body{line-height:1.7;font-size:16px}.blog-body h2{margin-top:32px;font-size:22px}.blog-body h3{margin-top:24px;font-size:18px}.blog-body ol,.blog-body ul{padding-left:22px}.blog-body li{margin-bottom:6px}.blog-body blockquote{margin:24px 0;padding:12px 16px;border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:6px}.blog-body blockquote p{margin:0}.listing-summary{color:var(--muted);font-size:15px;line-height:1.65;margin:0 0 20px;max-width:72ch}.invite-card{border-color:var(--accent);background:var(--accent-soft)}.invite-card h3{font-size:17px}.whatsapp-btn{background:#1f9d55;color:#fff;margin-top:4px}.whatsapp-btn:hover{background:#17834a}.chip-group{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 14px}.chip{padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink);font-size:14px;font-weight:500}.chip.selected,.chip:hover{border-color:var(--accent)}.chip.selected{background:var(--accent);color:#fff}.levels-line{margin:0 0 8px;font-size:13px;font-weight:600;color:var(--accent)}.teacher-facts{display:grid;grid-template-columns:auto 1fr;grid-gap:2px 12px;gap:2px 12px;margin:6px 0 10px;font-size:14px}.teacher-facts dt{color:var(--muted);font-weight:600}.teacher-facts dd{margin:0;color:var(--ink)}.request-card{display:block;text-decoration:none;color:inherit}.request-card:hover{border-color:var(--accent)}.request-details{margin:6px 0 0;color:var(--ink);font-size:15px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.request-lead{font-size:17px;line-height:1.6;margin:0 0 16px;max-width:70ch}.streak-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border-radius:999px;background:#fff1e0;color:#b45309;font-weight:700;font-size:14px;text-decoration:none;border:1px solid #f6c98d}.streak-chip.done{background:var(--accent-soft);color:var(--accent);border-color:transparent}:root[data-theme=dark] .streak-chip:not(.done){background:#3a2a14;color:#f6b863;border-color:#5a3f17}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .streak-chip:not(.done){background:#3a2a14;color:#f6b863;border-color:#5a3f17}}.streak-panel{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.streak-number{margin:0;font-size:28px;font-weight:800;line-height:1.2}.streak-number span{font-size:16px;font-weight:600;color:var(--muted)}.streak-stats{display:flex;gap:18px;color:var(--muted);font-size:14px}.streak-stats b{color:var(--ink);font-size:18px}.streak-line{margin:0 0 8px;font-size:16px}.exam-countdown{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.level-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px;gap:14px;margin-bottom:8px}.level-card{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:inherit;margin:0}.level-card:hover{border-color:var(--accent)}.level-card b{font-size:20px}.level-go{color:var(--accent);font-weight:700;margin-top:auto}.plain-list{padding-left:20px;line-height:1.7}.archive-grid{display:flex;flex-direction:column;gap:4px}.archive-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid var(--line)}.quiz-card{margin-top:14px}.quiz-kicker{margin:0 0 6px;color:var(--muted);font-size:14px;font-weight:600}.quiz-question{font-size:22px;line-height:1.35;margin:0 0 16px}.quiz-progress{height:6px;border-radius:999px;background:var(--line);margin-bottom:14px;overflow:hidden}.quiz-progress>div{height:100%;background:var(--accent);transition:width .25s ease}.quiz-options{display:grid;grid-gap:10px;gap:10px;margin-bottom:14px}.quiz-option{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;text-align:left;background:var(--card);color:var(--ink);border:2px solid var(--line);border-radius:12px;font-size:18px;font-weight:600}.quiz-option:hover:not(:disabled){border-color:var(--accent)}.quiz-option:disabled{cursor:default;opacity:1}.quiz-letter{display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;height:30px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:14px;font-weight:800}.quiz-option.correct{border-color:#1f9d55;background:#e6f6ec;color:#14532d}.quiz-option.wrong{border-color:#c0392b;background:#fdecea;color:#7f1d1d}.quiz-option.dim{opacity:.55}:root[data-theme=dark] .quiz-option.correct{background:#12301f;color:#9be3b4}:root[data-theme=dark] .quiz-option.wrong{background:#3a1a17;color:#f3a69c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .quiz-option.correct{background:#12301f;color:#9be3b4}:root:not([data-theme=light]) .quiz-option.wrong{background:#3a1a17;color:#f3a69c}}.quiz-feedback{margin:0 0 12px;font-size:16px}.quiz-feedback.ok{color:#1f7a45}.quiz-feedback.bad{color:var(--danger)}.quiz-explain{color:var(--ink)}.score-big{font-size:64px;font-weight:800;line-height:1;margin:4px 0 8px}.score-big span{font-size:28px;color:var(--muted);font-weight:600}.quiz-review{margin:8px 0 4px}.quiz-review summary{cursor:pointer;font-weight:600;color:var(--accent)}.quiz-review-item{padding:10px 0;border-bottom:1px solid var(--line)}.ok{color:#1f7a45}.bad{color:var(--danger)}.archive-options{margin:0;padding-left:0;list-style:none;display:grid;grid-gap:4px;gap:4px}.archive-options li.ok{font-weight:700}.daily-promo{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;margin:0 0 14px}.daily-promo:hover{border-color:var(--accent)}.daily-promo>span:nth-child(2){flex:1 1}.daily-promo-icon{font-size:28px}.footer-version{margin-left:10px;padding-left:10px;border-left:1px solid var(--line);font-size:12px;opacity:.8;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.admin-nav{margin:12px 0 16px}.brand-loader{position:relative;min-height:60vh;display:grid;place-items:center;overflow:hidden;border-radius:16px;margin:8px 0}.brand-loader-art{position:absolute;inset:0;background:radial-gradient(circle at 18% 22%,color-mix(in srgb,var(--accent) 18%,transparent) 0 120px,transparent 121px),radial-gradient(circle at 82% 78%,color-mix(in srgb,var(--accent) 14%,transparent) 0 160px,transparent 161px),radial-gradient(circle at 70% 18%,color-mix(in srgb,var(--accent) 10%,transparent) 0 70px,transparent 71px),linear-gradient(135deg,var(--accent-soft),var(--paper))}.brand-loader-art:after{content:"";position:absolute;inset:0;opacity:.35;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cg fill='none' stroke='%230d6e61' stroke-opacity='.35' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 30l16-8 16 8-16 8z'/%3E%3Cpath d='M22 34v8c0 3 16 3 16 0v-8'/%3E%3Cpath d='M78 84h26v18H78zM91 84v18'/%3E%3Cpath d='M70 24l10 10M80 24L70 34'/%3E%3C/g%3E%3C/svg%3E");background-size:120px 120px}.brand-loader-core{position:relative;text-align:center;padding:24px;color:var(--accent)}.brand-loader-ring{width:88px;height:88px;margin:0 auto 14px;display:grid;place-items:center;border-radius:50%;background:var(--card);box-shadow:0 6px 24px rgba(0,0,0,.12);position:relative}.brand-loader-ring:before{content:"";position:absolute;inset:-6px;border-radius:50%;border-left:3px solid transparent;border-bottom:3px solid transparent;border-top:3px solid transparent;border-top-color:var(--accent);border-right:3px solid transparent;border-right-color:var(--accent);animation:brand-spin 1s linear infinite}.brand-loader-msg{margin:0 0 12px;font-size:18px;font-weight:600;color:var(--ink)}.brand-loader-bar{width:200px;height:5px;margin:0 auto;border-radius:3px;background:color-mix(in srgb,var(--accent) 20%,transparent);overflow:hidden}.brand-loader-bar span{display:block;width:40%;height:100%;border-radius:3px;background:var(--accent);animation:brand-slide 1.2s ease-in-out infinite}.brand-loader-tip{margin:16px auto 0;max-width:360px;font-size:14px;color:var(--muted)}@keyframes brand-spin{to{transform:rotate(1turn)}}@keyframes brand-slide{0%{transform:translateX(-100%)}to{transform:translateX(350%)}}@media (prefers-reduced-motion:reduce){.brand-loader-bar span,.brand-loader-ring:before{animation-duration:3s}}.blog-hero{--hero-h:160;position:relative;display:flex;align-items:center;justify-content:space-between;min-height:170px;margin:14px 0 18px;padding:24px 28px;border-radius:16px;overflow:hidden;background:radial-gradient(circle at 85% 20%,hsla(0,0%,100%,.28) 0 70px,transparent 71px),radial-gradient(circle at 12% 90%,hsla(0,0%,100%,.18) 0 90px,transparent 91px),linear-gradient(135deg,hsl(var(--hero-h) 55% 28%),hsl(calc(var(--hero-h) + 30) 60% 38%));color:#fff}.blog-hero-symbol{font-size:72px;line-height:1;filter:drop-shadow(0 4px 10px rgba(0,0,0,.3))}.blog-hero-brand{font-weight:700;letter-spacing:.04em;font-size:14px;opacity:.9;text-transform:uppercase}.blog-hero-compact{min-height:110px;margin:0 0 12px;padding:14px 18px;justify-content:flex-start;border-radius:12px}.blog-hero-compact .blog-hero-symbol{font-size:44px}.kw-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:24px 0;padding:18px 22px;border-radius:14px;border:1px solid var(--line);background:linear-gradient(120deg,var(--accent-soft),var(--card))}.kw-eyebrow{margin:0;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.kw-title{margin:2px 0;font-size:18px;font-weight:700}.kw-text{margin:0;color:var(--muted);font-size:14px;max-width:460px}.nav-loader{position:fixed;inset:0;z-index:200;background:var(--paper);display:grid;animation:nav-fade .2s ease-out}.nav-loader .brand-loader{min-height:100vh;margin:0;border-radius:0}@keyframes nav-fade{0%{opacity:0}to{opacity:1}}.install-banner{display:none;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 16px;background:var(--accent-soft);border-bottom:1px solid var(--line);font-size:14px}.install-banner span,.install-steps{color:var(--muted)}.install-steps{margin:6px 0 0;font-size:13px}@media (max-width:720px){.install-banner{display:flex}}.daily-subject-title{margin:18px 0 8px;font-size:18px}.daily-subject-title a{color:inherit;text-decoration:none}.daily-subject-title a:hover{color:var(--accent)}.today-plan{margin-top:14px}.today-plan-compact{border:1px solid var(--line);border-radius:12px;padding:12px 14px}.today-plan-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:10px}.today-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.today-tile{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;text-decoration:none;color:inherit;border:2px solid var(--line);border-radius:12px;padding:12px 6px;background:var(--card)}.today-tile.is-done,.today-tile:hover{border-color:var(--accent)}.today-tile.is-done{background:var(--accent-soft)}.today-tile.is-current{outline:2px dashed var(--line)}.today-tile-icon{font-size:26px;line-height:1.2}.archive-row-stack{flex-direction:column;align-items:flex-start;gap:6px}.archive-subject{min-width:64px;display:inline-block}@media (max-width:480px){.today-plan-grid{gap:6px}.today-tile{padding:10px 4px}.today-tile b{font-size:14px}}.admin-topic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:6px 14px;gap:6px 14px;margin-top:8px}.admin-topic{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 0;border-bottom:1px solid var(--line)}.admin-quiz-form{display:grid;grid-gap:10px;gap:10px;max-width:640px}.admin-quiz-form label{display:grid;grid-gap:4px;gap:4px;font-weight:600}.admin-question{justify-content:space-between;gap:12px;margin:8px 0}.admin-question,.ticker{display:flex;align-items:center}.ticker{gap:10px;padding:0 10px 0 0;min-height:38px;overflow:hidden;background:linear-gradient(90deg,#0b5d52,#0d6e61 45%,#14877a);color:#fff;font-size:14px;border-bottom:1px solid hsla(0,0%,100%,.12)}.ticker-badge{align-self:stretch;display:flex;align-items:center;padding:0 14px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:12px;background:#ffb703;color:#3b2a00;position:relative;z-index:1;flex:none;box-shadow:4px 0 8px rgba(0,0,0,.18)}.ticker-viewport{flex:1 1;overflow:hidden;position:relative;min-width:0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent)}.ticker-track{display:flex;width:max-content;animation:ticker-scroll 40s linear infinite;will-change:transform}.ticker:focus-within .ticker-track,.ticker:hover .ticker-track{animation-play-state:paused}.ticker-group{display:flex;flex:none;align-items:center;min-width:100vw}.ticker-item{display:inline-flex;align-items:center;gap:8px;padding:9px 28px 9px 0;color:#fff;text-decoration:none;white-space:nowrap}.ticker-item:after{content:"•";margin-left:28px;opacity:.55}a.ticker-item:hover span:last-child{text-decoration:underline}.ticker-icon{font-size:16px}.ticker-close{flex:none;background:transparent;color:#fff;border:0;font-size:22px;line-height:1;padding:4px 6px;opacity:.8;cursor:pointer}.ticker-close:hover{opacity:1;background:hsla(0,0%,100%,.12)}@keyframes ticker-scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.ticker-track{animation:none;width:auto;overflow-x:auto}.ticker-group[aria-hidden=true]{display:none}.ticker-viewport{overflow-x:auto}}@media (max-width:720px){.ticker{font-size:13px}.ticker-badge{padding:0 9px;font-size:11px}}.quote-card{border-left:5px solid var(--accent);background:var(--accent-soft);margin-top:14px}.quote-card .quote-label{margin:0 0 4px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.quote-card blockquote{margin:0;font-size:19px;line-height:1.45;font-weight:600}.quote-card cite{display:block;margin-top:6px;font-size:14px;font-style:normal;color:var(--muted)}.practice-bank{list-style:none;padding:0;margin:0;display:grid;grid-gap:10px;gap:10px}.practice-bank>li.card{margin:0}.pin-glyph{font-size:11px;font-weight:800;letter-spacing:.04em;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:1px 4px;flex:none}.near-note{margin:8px 0}.card-badges{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 6px}.near-badge{background:var(--accent-soft);color:var(--accent)}.near-badge.near-same{background:var(--accent);color:#fff}.demo-badge{background:#fff4d6;color:#7a5200}:root[data-theme=dark] .demo-badge{background:#3a2f10;color:#ffd36b}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .demo-badge{background:#3a2f10;color:#ffd36b}}.stat-tiles,.teacher-dash{margin-bottom:14px}.stat-tiles{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.stat-tile{background:var(--accent-soft);border-radius:12px;padding:12px;text-align:center}.stat-tile b{display:block;font-size:28px;line-height:1.1;color:var(--accent)}.stat-tile span{font-size:13px;color:var(--muted)}.dash-progress-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}.share-kit{margin-bottom:14px}.share-kit-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.share-kit-card{width:100%;height:auto;border-radius:12px;border:1px solid var(--line);display:block}.share-kit-actions{display:grid;grid-gap:8px;gap:8px}.share-kit-actions .btn,.share-kit-actions button{text-align:center}@media (max-width:720px){.share-kit-grid{grid-template-columns:1fr}.stat-tile b{font-size:24px}}.demo-card{border-color:#ffb703;background:linear-gradient(0deg,var(--card),var(--card)) padding-box;margin-top:14px}.demo-form{display:grid;grid-gap:12px;gap:12px;margin-top:14px}.demo-form label{display:grid;grid-gap:4px;gap:4px;font-weight:600}.poster-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.poster{background:#fff;color:#0b3d36;width:100%;max-width:794px;margin:0 auto;min-height:1000px;border:1px solid #cfe3de;box-shadow:0 4px 24px rgba(0,0,0,.12);flex-direction:column;padding:56px 52px;box-sizing:border-box}.poster,.poster-top{display:flex;justify-content:space-between}.poster-top{align-items:center;gap:12px;flex-wrap:wrap}.poster-brand{font-size:30px;font-weight:800;color:#0d6e61}.poster-ribbon{background:#ffb703;color:#3b2a00;font-weight:800;font-size:22px;padding:8px 20px;border-radius:999px}.poster-kicker{font-size:26px;margin:0;color:#4a6b65}.poster-name{font-size:64px;line-height:1.05;margin:6px 0 14px;color:#0b3d36}.poster-subjects{font-size:38px;font-weight:700;margin:0 0 14px;color:#0d6e61}.poster-line{font-size:28px;margin:6px 0}.poster-bottom{display:flex;align-items:center;gap:28px;border-top:3px solid #0d6e61;padding-top:28px}.poster-qr{width:230px;height:230px;flex:none}.poster-qr svg{width:100%;height:100%;display:block}.poster-scan{font-size:30px;font-weight:800;margin:0 0 8px}.poster-url{font-size:17px;margin:0;word-break:break-all;color:#4a6b65}@media (max-width:720px){.poster{padding:28px 22px;min-height:0}.poster-name{font-size:40px}.poster-subjects{font-size:26px}.poster-bottom{flex-direction:column;align-items:flex-start}.poster-qr{width:180px;height:180px}}.auth-page{display:flex;justify-content:center;padding:8px 0 24px}.auth-card{width:100%;max-width:460px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px;background:var(--accent-soft);padding:4px;border-radius:10px;margin-bottom:18px}.auth-tabs button{background:transparent;color:var(--ink);border:0;padding:10px;border-radius:8px;font-weight:600}.auth-tabs button.active{background:var(--card);color:var(--accent);box-shadow:0 1px 4px rgba(0,0,0,.12)}.auth-google-block{margin:4px 0 6px}.auth-google{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;box-sizing:border-box;padding:12px 16px;background:#fff;color:#1f1f1f;border:1px solid #747775;border-radius:10px;font-weight:600;font-size:16px;text-decoration:none}a.auth-google:hover{background:#f1f3f4}.auth-google.disabled{opacity:.55;cursor:not-allowed}.auth-google-note{margin:6px 0 0;text-align:center;font-size:13px}.auth-google-hint{margin:8px 0 0;text-align:center;font-size:14px}.auth-or{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px;margin:14px 0}.auth-or:after,.auth-or:before{content:"";flex:1 1;border-top:1px solid var(--line)}.auth-submit{width:100%;padding:12px 16px;margin-top:4px}.auth-switch{margin:14px 0 0;text-align:center}.auth-notice{background:var(--accent-soft);padding:8px 12px;border-radius:8px}.link-btn{background:none;border:0;padding:0;color:var(--accent);font:inherit;text-decoration:underline;cursor:pointer}.pw-wrap{position:relative}.pw-wrap input{padding-right:70px;width:100%;box-sizing:border-box}.pw-toggle{position:absolute;right:6px;top:6px;padding:6px 10px;font-size:13px;background:var(--accent-soft);color:var(--accent)}.role-pick{border:0;padding:0;margin:0 0 14px}.role-pick legend{font-weight:600;padding:0;margin-bottom:6px}.role-pick-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.role-option{display:grid;grid-gap:2px;gap:2px;padding:10px;border:2px solid var(--line);border-radius:10px;cursor:pointer;text-align:left;position:relative}.role-option input{position:absolute;opacity:0;inset:0;cursor:pointer}.role-option span{font-size:12px;color:var(--muted)}.role-option.selected{border-color:var(--accent);background:var(--accent-soft)}.role-option:focus-within{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:520px){.role-pick-grid{grid-template-columns:1fr}}.setup-banner{background:#fff4d6;color:#3b2a00;border-bottom:1px solid #f1d98a;padding:8px 16px;text-align:center;font-size:15px}.setup-banner a{color:#3b2a00;font-weight:700}.welcome-card{border-color:var(--accent);background:var(--accent-soft)}@font-face{font-family:__Inter_d8ebd1;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_d8ebd1;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_d8ebd1;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_d8ebd1;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_d8ebd1;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_d8ebd1;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_d8ebd1;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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_d8ebd1;src:local("Arial");ascent-override:90.49%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:107.06%}.__className_d8ebd1{font-family:__Inter_d8ebd1,__Inter_Fallback_d8ebd1;font-style:normal}.__variable_d8ebd1{--font-sans:"__Inter_d8ebd1","__Inter_Fallback_d8ebd1"}