:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#16221e;--muted:#627169;--line:#d5e1dc;--surface:#fff;--surface-soft:#f2f7f5;--surface-accent:#e4f2ec;--brand:#176b54;--brand-strong:#10533f;--brand-ink:#fff;--warning:#d96d54;--shadow:0 20px 60px #174b3b21;font-synthesis:none;font-family:Inter,Noto Sans Myanmar,Myanmar Text,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}html{background:var(--surface-soft)}body{min-width:320px;color:var(--ink);background:var(--surface-soft);-webkit-font-smoothing:antialiased;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #176b543d}.button{cursor:pointer;border:1px solid #0000;border-radius:13px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:10px 16px;font-weight:650;display:inline-flex}.button--primary{color:var(--brand-ink);background:var(--brand)}.button--primary:hover{background:var(--brand-strong)}.button:disabled,input:disabled{cursor:wait;opacity:.68}.button--secondary{border-color:var(--line);background:var(--surface)}.button--block{width:100%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--brand);letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:750;display:inline-block}.brand-link{align-items:center;gap:10px;font-weight:750;display:inline-flex}.brand-icon,.app-brand-icon,.hero-phone-logo{width:40px;height:40px;color:var(--brand-ink);background:var(--brand);border-radius:13px;flex:0 0 40px;place-items:center;display:grid;overflow:hidden}.brand-icon img,.app-brand-icon img{object-fit:cover;width:100%;height:100%}.language-switch{z-index:45;display:inline-flex;position:relative}.language-switch-trigger{border:1px solid var(--line);width:42px;height:42px;color:var(--brand);background:var(--surface);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid}.language-switch-trigger svg{width:20px;height:20px}.language-switch-menu{z-index:60;top:calc(100% + 7px);border:1px solid var(--line);width:max-content;min-width:150px;color:var(--ink);background:var(--surface);border-radius:14px;padding:5px;display:grid;position:absolute;inset-inline-end:0;overflow:hidden;box-shadow:0 12px 32px #16221e29}.language-switch-menu button{min-height:40px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:8px 10px;display:flex}.language-switch-menu button[aria-selected=true]{color:var(--brand);background:var(--surface-accent);font-weight:750}.language-switch--compact .language-switch-trigger{width:38px;height:38px}.public-page{min-height:100vh;overflow:hidden}.public-header{justify-content:space-between;align-items:center;gap:16px;max-width:1120px;margin:0 auto;padding:18px 20px;display:flex}.public-actions{align-items:center;gap:10px;display:flex}.hero-section{grid-template-columns:minmax(0,1.1fr) minmax(300px,390px);align-items:center;gap:clamp(36px,7vw,96px);max-width:1120px;margin:0 auto;padding:clamp(48px,8vw,100px) 20px;display:grid}.hero-copy h1{letter-spacing:-.055em;max-width:760px;margin:16px 0 20px;font-size:clamp(2.5rem,6vw,5.3rem);line-height:1.02}.hero-copy p{max-width:670px;color:var(--muted);margin:0 0 28px;font-size:clamp(1rem,2vw,1.2rem);line-height:1.75}.hero-button{padding-inline:20px}.hero-phone{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:28px;overflow:hidden;transform:rotate(1.5deg)}.hero-phone-header{color:var(--brand-ink);background:var(--brand);align-items:center;gap:11px;padding:17px;display:flex}.hero-phone-logo{color:var(--brand);background:var(--surface)}.hero-phone-header div{gap:3px;display:grid}.hero-phone-header small{opacity:.78}.hero-phone-body{background:var(--surface-soft);min-height:370px;padding:24px 20px}.hero-phone-body>span{color:var(--brand);font-size:.8rem;font-weight:750}.hero-phone-body h2{margin:10px 0;font-size:1.22rem}.hero-phone-body p{color:var(--muted);margin:0;line-height:1.65}.hero-phone-metrics{grid-template-columns:1fr 1fr;gap:10px;margin-top:24px;display:grid}.hero-phone-metrics span{border:1px solid var(--line);background:var(--surface);border-radius:16px;gap:5px;padding:15px;font-size:.78rem;display:grid}.hero-phone-metrics strong{font-size:1.5rem}.hero-phone-nav{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);padding:8px;display:grid}.hero-phone-nav span{min-width:0;color:var(--muted);justify-items:center;gap:5px;padding:8px 2px;font-size:.7rem;display:grid}.hero-phone-nav span:first-child{color:var(--brand);background:var(--surface-accent);border-radius:10px}.feature-section{max-width:1120px;margin:0 auto;padding:30px 20px 100px}.feature-section>h2{margin:10px 0 24px;font-size:clamp(1.7rem,4vw,2.7rem)}.feature-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.feature-card{border:1px solid var(--line);background:var(--surface);border-radius:20px;padding:24px}.feature-icon{width:44px;height:44px;color:var(--brand);background:var(--surface-accent);border-radius:14px;place-items:center;display:grid}.feature-card h3{margin:18px 0 8px}.feature-card p{color:var(--muted);margin:0;line-height:1.65}.school-site{background:var(--surface-soft);min-height:100vh;overflow:hidden}.site-header{border-bottom:1px solid var(--line);background:#fffffff5}.site-header-top{justify-content:space-between;align-items:center;gap:16px;width:min(100%,1120px);margin:0 auto;padding:16px 20px 10px;display:flex}.site-actions{align-items:center;gap:9px;display:flex}.site-login{white-space:nowrap;min-height:40px;padding:8px 12px;font-size:.8rem}.site-nav{scrollbar-width:none;gap:5px;width:min(100%,1120px);margin:0 auto;padding:4px 20px 10px;display:flex;overflow-x:auto}.site-nav::-webkit-scrollbar{display:none}.site-nav a{min-height:38px;color:var(--muted);white-space:nowrap;border-radius:11px;flex:none;padding:9px 12px;font-size:.82rem;font-weight:700}.site-nav a.active{color:var(--brand);background:var(--surface-accent)}.site-hero{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);align-items:center;gap:clamp(30px,7vw,90px);width:min(100%,1120px);margin:0 auto;padding:clamp(54px,9vw,104px) 20px;display:grid}.site-hero h1{letter-spacing:-.055em;max-width:760px;margin:15px 0 18px;font-size:clamp(2.7rem,6vw,5.4rem);line-height:1.02}.site-hero-summary{max-width:680px;color:var(--ink);margin:0 0 14px;font-size:clamp(1.05rem,2vw,1.25rem);font-weight:650;line-height:1.65}.site-hero>div>.site-rich-text{max-width:680px;color:var(--muted);margin:0 0 28px;font-size:.96rem;line-height:1.8}.site-hero-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:26px;gap:12px;padding:28px;display:grid}.site-hero-card-icon{width:52px;height:52px;color:var(--brand-ink);background:var(--brand);border-radius:17px;place-items:center;display:grid}.site-hero-card strong{margin-top:6px;font-size:1.15rem}.site-hero-card p{color:var(--muted);margin:0;line-height:1.7}.site-hero-card a,.site-news-section>header>a,.site-news-card>span{color:var(--brand);align-items:center;gap:3px;font-size:.82rem;font-weight:750;display:inline-flex}.site-hero-card a svg,.site-news-card>span svg{width:16px;height:16px}.site-news-section{width:min(100%,1120px);margin:0 auto;padding:24px 20px 90px}.site-news-section>header{justify-content:space-between;align-items:end;gap:16px;margin-bottom:20px;display:flex}.site-news-section h2{margin:8px 0 0;font-size:clamp(1.7rem,4vw,2.5rem)}.site-news-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.site-news-card{border:1px solid var(--line);background:var(--surface);border-radius:19px;align-content:start;gap:9px;min-width:0;padding:20px;display:grid}.site-news-card time,.site-news-detail time{color:var(--brand);font-size:.72rem;font-weight:750}.site-news-card h2,.site-news-card h3{overflow-wrap:anywhere;margin:0;font-size:1.04rem;line-height:1.45}.site-news-card p{overflow-wrap:anywhere;color:var(--muted);margin:0;font-size:.84rem;line-height:1.65}.site-news-card>span{margin-top:5px}.site-list-page,.site-article{width:min(100%,820px);margin:0 auto;padding:clamp(46px,8vw,82px) 20px 90px}.site-list-page>header,.site-article>header{margin-bottom:30px}.site-list-page>header h1,.site-article>header h1{overflow-wrap:anywhere;letter-spacing:-.045em;margin:12px 0 14px;font-size:clamp(2.25rem,6vw,4.4rem);line-height:1.06}.site-list-page>header p,.site-article>header p{color:var(--muted);margin:0;font-size:1rem;line-height:1.75}.site-news-list{gap:12px;display:grid}.site-news-list .site-news-card{padding:22px}.site-rich-text{overflow-wrap:anywhere;white-space:pre-wrap;line-height:1.9}.site-article>.site-rich-text{border-top:1px solid var(--line);color:var(--ink);padding-top:25px;font-size:1rem}.site-empty{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:17px;grid-column:1/-1;margin:0;padding:26px}.site-footer{border-top:1px solid var(--line);width:min(100%,1120px);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin:0 auto;padding:28px 20px;font-size:.78rem;display:flex}.site-footer strong{color:var(--ink)}.site-footer a{color:var(--brand);font-weight:700}html[data-locale=my] .site-hero h1,html[data-locale=my] .site-list-page>header h1,html[data-locale=my] .site-article>header h1{letter-spacing:0;line-height:1.35}.content-public-link{margin-top:14px}.website-editor{padding-top:0}.website-editor-fields{gap:14px;display:grid}.website-publish-help{border:1px solid var(--line);background:var(--surface-accent);border-radius:13px;padding:12px}.language-fieldset{border:1px solid var(--line);background:var(--surface);border-radius:16px;gap:12px;min-width:0;margin:0;padding:14px;display:grid}.language-fieldset legend{color:var(--brand);padding:0 7px;font-size:.82rem;font-weight:800}.login-page{width:min(100%,860px);min-height:100vh;margin:0 auto;padding:18px 18px 64px}.login-topbar{justify-content:space-between;align-items:center;gap:14px;margin-bottom:40px;display:flex}.login-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:26px;grid-template-columns:.9fr 1.1fr;align-items:start;gap:44px;padding:clamp(24px,6vw,48px);display:grid}.login-copy h1{letter-spacing:-.045em;margin:14px 0 12px;font-size:clamp(2rem,5vw,3.4rem);line-height:1.05}.login-copy p{color:var(--muted);margin:0;line-height:1.7}.login-form{gap:16px;display:grid}.login-form label:not(.remember-row){gap:7px;font-weight:650;display:grid}.login-form input[type=text],.login-form input[type=password],.login-form input:not([type]){border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:var(--surface-soft);border-radius:13px;padding:11px 13px}.remember-row{color:var(--muted);align-items:center;gap:9px;font-size:.9rem;display:flex}.remember-row input{width:18px;height:18px;accent-color:var(--brand)}.form-help,.form-notice{color:var(--muted);margin:0;font-size:.82rem;line-height:1.5}.form-notice{color:var(--brand);font-weight:650}.form-notice--error{color:#a63f32}.setup-page{width:min(100%,760px)}.setup-panel{grid-template-columns:1fr}.setup-form{padding:0}.setup-form label>small{color:var(--muted);font-size:.72rem;font-weight:500;line-height:1.45}.setup-school-fieldset{background:var(--surface-soft)}.preview-panel{border:1px dashed var(--line);background:#ffffff73;border-radius:22px;grid-template-columns:.9fr 1.1fr;gap:44px;margin-top:22px;padding:26px;display:grid}.preview-panel h2{margin:10px 0 8px}.preview-panel p{color:var(--muted);margin:0;line-height:1.6}.role-preview-grid{gap:8px;display:grid}.role-preview-button{border:1px solid var(--line);min-height:46px;color:var(--ink);background:var(--surface);cursor:pointer;border-radius:13px;justify-content:space-between;align-items:center;padding:9px 13px;display:flex}.app-viewport{background:var(--surface-soft);width:min(100%,480px);min-height:100svh;box-shadow:0 0 0 1px var(--line);margin:0 auto}.app-header{z-index:20;min-height:76px;color:var(--brand-ink);background:var(--brand);justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex;position:sticky;top:0}.app-brand{align-items:center;gap:9px;min-width:0;display:flex}.app-brand-icon{width:38px;height:38px;color:var(--brand);background:var(--surface);flex-basis:38px}.app-brand div{gap:2px;min-width:0;display:grid}.app-brand strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-brand span{opacity:.78;font-size:.72rem}.app-header-actions{align-items:center;gap:6px;display:flex}.app-header .language-switch-trigger{color:var(--brand-ink);background:#ffffff1f;border-color:#ffffff52}.app-header .language-switch-menu{color:var(--ink)}.icon-button{width:38px;height:38px;color:inherit;cursor:pointer;background:#ffffff1f;border:0;border-radius:12px;place-items:center;display:grid}.page-back-button{z-index:40;right:14px;bottom:calc(16px + env(safe-area-inset-bottom));border:1px solid var(--line);width:34px;height:34px;color:var(--brand);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;border-radius:50%;place-items:center;padding:0;display:grid;position:fixed;box-shadow:0 8px 22px #16221e2e}.page-back-button--app{right:max(14px,50vw - 226px);bottom:calc(84px + env(safe-area-inset-bottom))}.page-back-button svg{width:17px;height:17px}.page-title-row{align-items:flex-start;gap:7px;min-width:0;display:flex}.page-title-row--display{align-items:center}.app-content{min-height:calc(100svh - 146px);padding:20px 16px 100px;position:relative}.bottom-nav{z-index:30;width:min(100%,480px);padding:7px 8px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;gap:2px;margin:0 auto;transition:opacity .16s,transform .16s;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{min-width:0;min-height:54px;color:var(--muted);border-radius:11px;align-content:center;place-items:center;gap:4px;font-size:.7rem;display:grid}.bottom-nav a.active{color:var(--brand);background:var(--surface-accent)}.bottom-nav svg{width:19px;height:19px}.nav-icon-wrap,.icon-button--badge{position:relative}.nav-icon-wrap{place-items:center;display:grid}.unread-badge{border:2px solid var(--surface);color:#fff;background:#cf3c35;border-radius:999px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:.62rem;font-style:normal;font-weight:850;line-height:1;display:inline-grid}.unread-badge--floating{top:-8px;position:absolute;inset-inline-end:-13px}.icon-button--badge .unread-badge--floating{top:-6px;border-color:var(--brand);inset-inline-end:-7px}.live-message-toast{z-index:45;top:calc(84px + env(safe-area-inset-top));width:max-content;max-width:min(100% - 28px,452px);min-height:42px;color:var(--brand);background:#fffffffa;border:1px solid #176b5433;border-radius:999px;align-items:center;gap:8px;padding:9px 14px;font-size:.76rem;font-weight:800;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 9px 24px #16221e2e}.live-message-toast svg{width:18px;height:18px}.page-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.page-heading h1{letter-spacing:-.025em;margin:0;font-size:1.55rem}.page-heading p{color:var(--muted);margin:5px 0 0;font-size:.82rem;line-height:1.5}.page-heading--action{align-items:flex-start}.page-heading--action .button{flex:none;min-height:40px;padding:8px 10px;font-size:.78rem}.dashboard-page>.page-heading p{color:var(--brand);margin:5px 0 0}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.metric-grid article{border:1px solid var(--line);background:var(--surface);border-radius:16px;gap:4px;padding:14px;display:grid}.metric-grid strong{font-size:1.55rem}.metric-grid span{color:var(--muted);font-size:.78rem}.notice-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:17px}.notice-card>span{color:var(--brand);font-size:.75rem;font-weight:750}.notice-card h2{margin:9px 0 7px;font-size:1.04rem}.notice-card p{color:var(--muted);margin:0;font-size:.85rem;line-height:1.65}.notice-card a{color:var(--brand);align-items:center;gap:2px;margin-top:12px;font-size:.78rem;font-weight:700;display:inline-flex}.notice-card a svg{width:15px;height:15px}.section-title{margin:22px 0 10px;font-size:.9rem}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.quick-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;align-content:start;gap:6px;min-height:112px;padding:14px;display:grid}.quick-card>span{width:36px;height:36px;color:var(--brand);background:var(--surface-accent);border-radius:11px;place-items:center;margin-bottom:3px;display:grid}.quick-card strong{font-size:.9rem}.quick-card small{color:var(--muted);font-size:.72rem;line-height:1.45}.search-box{border:1px solid var(--line);min-height:46px;color:var(--muted);background:var(--surface);border-radius:14px;align-items:center;gap:9px;margin-bottom:13px;padding:10px 12px;font-size:.83rem;display:flex}.list-stack{gap:9px;display:grid}.list-row{border:1px solid var(--line);width:100%;min-height:72px;color:var(--ink);text-align:left;background:var(--surface);cursor:pointer;border-radius:16px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;display:grid}.list-icon{width:44px;height:44px;color:var(--brand);background:var(--surface-accent);border-radius:13px;place-items:center;display:grid}.list-copy{gap:4px;min-width:0;display:grid}.list-copy strong,.list-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.list-copy strong{font-size:.88rem}.list-copy small{color:var(--muted);font-size:.72rem}.list-meta{color:var(--muted);justify-items:end;font-size:.68rem;display:grid}.list-meta i{background:var(--warning);border-radius:50%;width:8px;height:8px;margin-top:7px}.segmented-control{border:1px solid var(--line);background:var(--surface);border-radius:15px;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-bottom:14px;padding:4px;display:grid}.segmented-control a{min-height:42px;color:var(--muted);border-radius:11px;justify-content:center;align-items:center;gap:7px;font-size:.82rem;font-weight:700;display:flex}.segmented-control a[aria-current=page]{color:var(--brand);background:var(--surface-accent)}.segmented-control svg{width:17px;height:17px}.compose-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin-bottom:13px;padding:0 14px}.compose-card summary{min-height:48px;color:var(--brand);cursor:pointer;padding:14px 0;font-size:.86rem;font-weight:750;list-style:none}.compose-card summary::-webkit-details-marker{display:none}.compose-card[open] summary{border-bottom:1px solid var(--line)}.stack-form{gap:13px;padding:15px 0;display:grid}.stack-form label{color:var(--ink);gap:6px;font-size:.8rem;font-weight:700;display:grid}.stack-form input,.stack-form select,.stack-form textarea,.message-composer textarea{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:var(--surface-soft);font:inherit;border-radius:12px;padding:10px 11px;line-height:1.5}.stack-form input,.stack-form select{min-height:44px}.stack-form textarea,.message-composer textarea{resize:vertical}.notice-list{gap:10px;display:grid}.notice-card--communication{gap:8px;display:grid}.notice-card--communication h2,.notice-card--communication p{overflow-wrap:anywhere;white-space:pre-wrap;margin:0}.notice-card--communication>small{color:var(--muted);font-size:.68rem}.notice-card-meta{justify-content:space-between;align-items:center;gap:10px;display:flex}.notice-card-meta span{color:var(--brand);background:var(--surface-accent);border-radius:999px;padding:4px 8px;font-size:.68rem;font-weight:750}.notice-card-meta time{color:var(--muted);font-size:.66rem}.empty-state{border:1px dashed var(--line);min-height:150px;color:var(--muted);text-align:center;background:#ffffff73;border-radius:16px;align-content:center;place-items:center;gap:9px;padding:20px;display:grid}.empty-state p{margin:0;font-size:.82rem;line-height:1.5}.empty-state svg{color:var(--brand)}.conversation-list .list-meta{gap:4px;max-width:88px}.conversation-list .list-meta time{white-space:nowrap;font-size:.62rem}.conversation-header{align-items:center;gap:11px;margin-bottom:18px;display:flex}.conversation-header h1{margin:0;font-size:1.2rem}.conversation-header p{color:var(--muted);margin:3px 0 0;font-size:.72rem}.icon-button--light{color:var(--brand);background:var(--surface-accent);flex:none}.message-thread{flex-direction:column;gap:9px;min-height:260px;padding-bottom:14px;display:flex}.message-bubble{border:1px solid var(--line);background:var(--surface);border-radius:5px 15px 15px;align-self:flex-start;max-width:86%;padding:10px 12px}.message-bubble--own{color:#f8fffc;background:var(--brand);border-color:#0000;border-radius:15px 5px 15px 15px;align-self:flex-end}.message-bubble p{overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:.86rem;line-height:1.55}.message-bubble small{color:var(--muted);margin-top:5px;font-size:.62rem;display:block}.message-bubble--own small{color:#ffffffb8}.conversation-page{min-height:calc(100svh - 166px);padding-bottom:78px}.message-thread-end{width:1px;height:1px}.message-composer{z-index:35;right:auto;bottom:calc(78px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7faf8f7;border:1px solid #d8e1dde6;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;width:min(100% - 20px,460px);margin:0;padding:8px;display:grid;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 -5px 20px #16221e1a}.message-composer textarea{background:var(--surface);min-height:48px;max-height:120px}.message-composer .button{min-height:48px;padding-inline:14px}.message-composer-error{grid-column:1/-1;margin:0}html[data-conversation-page=true]:not([data-keyboard-open=true]) .page-back-button--app{bottom:calc(158px + env(safe-area-inset-bottom))}html[data-keyboard-open=true] .bottom-nav{opacity:0;pointer-events:none;transform:translateY(110%)}html[data-keyboard-open=true] .page-back-button--app{opacity:0;pointer-events:none}.file-action{color:var(--muted);justify-items:end;gap:5px;display:grid}.file-action small{font-size:.66rem}.file-action svg{width:17px;height:17px}.stack-form input[type=file]{min-height:48px;padding:8px;font-size:.76rem}.stack-form input[type=file]::file-selector-button{min-height:32px;color:var(--brand);background:var(--surface-accent);font:inherit;cursor:pointer;border:0;border-radius:9px;margin-right:9px;padding:6px 9px;font-weight:700}.courseware-filters{border:1px solid var(--line);background:var(--surface);border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0;padding:12px;display:grid}.courseware-filters label{min-width:0;color:var(--ink);gap:6px;font-size:.72rem;font-weight:750;display:grid}.courseware-filters select{border:1px solid var(--line);width:100%;min-width:0;min-height:42px;color:var(--ink);background:var(--surface-soft);font:inherit;border-radius:11px;padding:8px 9px}.courseware-filter-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.courseware-filter-actions .button{min-height:40px;padding:8px 10px;font-size:.74rem}.courseware-catalog,.courseware-subject-groups{gap:10px;display:grid}.courseware-grade-group,.courseware-subject-group{border:1px solid var(--line);background:var(--surface);border-radius:17px;overflow:hidden}.courseware-grade-group>summary,.courseware-subject-group>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;min-height:50px;padding:12px 13px;list-style:none;display:flex}.courseware-grade-group>summary::-webkit-details-marker{display:none}.courseware-subject-group>summary::-webkit-details-marker{display:none}.courseware-summary::-webkit-details-marker{display:none}.courseware-grade-group>summary>span,.courseware-subject-group>summary>span{gap:3px;min-width:0;display:grid}.courseware-grade-group>summary strong,.courseware-subject-group>summary strong{overflow-wrap:anywhere;font-size:.88rem}.courseware-grade-group>summary small,.courseware-subject-group>summary small{color:var(--muted);font-size:.66rem}.courseware-grade-group>summary>svg,.courseware-subject-group>summary>svg,.courseware-expand svg{flex:none;transition:transform .15s}.courseware-grade-group[open]>summary>svg,.courseware-subject-group[open]>summary>svg,.courseware-card[open] .courseware-expand svg{transform:rotate(90deg)}.courseware-grade-group[open]>summary{color:var(--brand);background:var(--surface-accent)}.courseware-subject-groups{border-top:1px solid var(--line);background:var(--surface-soft);padding:10px}.courseware-subject-group{border-radius:14px}.courseware-subject-group[open]>summary{color:var(--brand)}.courseware-list{border-top:1px solid var(--line);gap:9px;padding:0 9px 9px;display:grid}.courseware-card{border:1px solid var(--line);background:var(--surface);border-radius:15px;overflow:hidden}.courseware-summary{cursor:pointer;grid-template-columns:42px minmax(0,1fr) 24px;align-items:start;gap:9px;padding:12px 10px;list-style:none;display:grid}.courseware-summary .list-icon{width:42px;height:42px}.courseware-copy{gap:6px;min-width:0;display:grid}.courseware-copy>strong{overflow-wrap:anywhere;font-size:.9rem;line-height:1.4}.courseware-description{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;line-height:1.5;overflow:hidden}.courseware-copy small{color:var(--muted);font-size:.66rem;line-height:1.45}.courseware-tags{flex-wrap:wrap;gap:5px;min-width:0;display:flex}.courseware-tags span{max-width:100%;color:var(--brand);text-overflow:ellipsis;white-space:nowrap;background:var(--surface-accent);border-radius:999px;padding:3px 7px;font-size:.64rem;font-weight:750;overflow:hidden}.courseware-expand{width:24px;height:34px;color:var(--brand);place-items:center;display:grid}.courseware-preview{border-top:1px solid var(--line);background:var(--surface-soft);gap:10px;padding:11px;display:grid}.courseware-preview>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.courseware-preview>header strong{color:var(--brand);font-size:.78rem}.courseware-preview>header span{color:var(--muted);font-size:.66rem;font-weight:750}.courseware-preview-frame,.courseware-preview-image{border:1px solid var(--line);background:var(--surface);border-radius:12px;width:100%}.courseware-preview-frame--pdf{height:min(62svh,560px)}.courseware-preview-frame--text{height:260px}.courseware-preview-image{object-fit:contain;max-height:560px;display:block}.courseware-preview-unsupported{border:1px dashed var(--line);min-height:150px;color:var(--muted);text-align:center;background:var(--surface);border-radius:12px;align-content:center;place-items:center;gap:8px;padding:20px;display:grid}.courseware-preview-unsupported svg{color:var(--brand)}.courseware-preview-unsupported p{max-width:290px;margin:0;font-size:.76rem;line-height:1.55}.courseware-preview-download{width:100%;min-height:40px;font-size:.76rem}.courseware-preview-download svg{width:17px;height:17px}.manage-create-card,.manage-accounts-section{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:15px}.manage-create-card{margin-bottom:14px;scroll-margin-top:76px}.section-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.section-heading h2{margin:0;font-size:1rem}.section-heading p{color:var(--muted);margin:5px 0 0;font-size:.74rem;line-height:1.5}.section-heading--compact{margin-bottom:11px}.section-icon{width:40px;height:40px;color:var(--brand);background:var(--surface-accent);border-radius:12px;flex:none;place-items:center;display:grid}.section-icon svg{width:19px;height:19px}.manage-account-form{padding-bottom:0}.manage-account-form label small{color:var(--muted);font-size:.66rem;font-weight:500;line-height:1.45}.account-search{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:12px 0 10px;display:grid}.account-search label{border:1px solid var(--line);min-width:0;min-height:42px;color:var(--muted);background:var(--surface-soft);border-radius:12px;align-items:center;gap:8px;padding:0 10px;display:flex}.account-search label svg{flex:none;width:17px;height:17px}.account-search input{width:100%;min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0}.account-search .button{min-height:42px;padding:8px 12px}.account-create-link{margin-bottom:12px}.account-empty{color:var(--muted);text-align:center;margin:2px 0 0;padding:20px 10px;font-size:.76rem}.account-list{gap:9px;display:grid}.account-row{border:1px solid var(--line);background:var(--surface-soft);border-radius:15px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:11px;display:grid}.account-badges{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:6px;min-width:0;padding-left:54px;display:flex}.role-badge,.status-dot{border-radius:999px;align-items:center;min-height:24px;padding:4px 8px;font-size:.64rem;font-weight:750;display:inline-flex}.role-badge{color:var(--brand);background:var(--surface-accent)}.status-dot{color:var(--muted);background:var(--surface);gap:5px}.status-dot:before{background:var(--muted);content:"";border-radius:50%;width:7px;height:7px}.status-dot--active:before{background:var(--brand)}.status-dot--disabled:before{background:#a63f32}.account-maintenance-controls{grid-column:1/-1;gap:9px;min-width:0;display:grid}.account-status-form{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:8px;padding:10px;display:grid}.account-status-form p{color:var(--muted);margin:0;font-size:.7rem;line-height:1.5}.account-status-button{min-height:38px;padding:8px 10px;font-size:.72rem}.account-status-button--disable{color:#a63f32;background:#fff7f5;border-color:#a63f324d}.account-status-button--enable{color:var(--brand);background:var(--surface-accent);border-color:#176b544d}.account-maintenance{border:1px solid var(--line);background:var(--surface);border-radius:12px;min-width:0;padding:0 10px}.account-maintenance summary{min-height:40px;color:var(--brand);cursor:pointer;padding:10px 0;font-size:.72rem;font-weight:800;list-style:none}.account-maintenance summary::-webkit-details-marker{display:none}.account-maintenance[open] summary{border-bottom:1px solid var(--line)}.account-maintenance-body{gap:13px;padding:12px 0;display:grid}.account-maintenance-body p{color:var(--muted);margin:0;font-size:.7rem;line-height:1.5}.account-maintenance-body .form-notice{color:var(--brand)}.account-maintenance-body .form-notice--error{color:#a63f32}.account-password-form{padding:0}.account-password-form label small{color:var(--muted);font-size:.66rem;font-weight:500;line-height:1.45}.account-maintenance-feedback{border:1px solid var(--line);background:var(--surface);border-radius:11px;padding:9px 10px}.account-maintenance-locked{color:var(--muted);grid-column:1/-1;padding-left:54px;font-size:.66rem;line-height:1.45}.relationship-section{border:1px solid var(--line);background:var(--surface);border-radius:18px;margin-bottom:14px;padding:15px}.relationship-feedback{border:1px solid var(--line);background:var(--surface);border-radius:13px;margin-bottom:14px;padding:11px 13px}.relationship-form{padding-bottom:0}.relationship-form label small{color:var(--muted);font-size:.66rem;font-weight:500;line-height:1.45}.relationship-list{gap:10px;display:grid}.relationship-card{border:1px solid var(--line);background:var(--surface-soft);border-radius:15px;padding:12px}.relationship-card>header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.relationship-card>header>div{gap:3px;min-width:0;display:grid}.relationship-card>header strong{overflow-wrap:anywhere;font-size:.9rem}.relationship-card>header small{color:var(--muted);font-size:.68rem}.relationship-card>header>span{min-width:26px;min-height:26px;color:var(--brand);background:var(--surface-accent);border-radius:999px;place-items:center;padding:3px 7px;font-size:.68rem;font-weight:800;display:grid}.relationship-links{gap:7px;margin-top:10px;display:grid}.relationship-links--standalone{margin-top:0}.relationship-link-row{border:1px solid var(--line);background:var(--surface);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:9px 10px;display:flex}.relationship-link-row>span{overflow-wrap:anywhere;min-width:0;font-size:.76rem;line-height:1.45}.relationship-link-row--stacked>span{gap:3px;display:grid}.relationship-link-row--stacked strong{font-size:.78rem}.relationship-link-row--stacked small{color:var(--muted);font-size:.66rem}.relationship-link-row form{flex:none}.text-button{color:#a63f32;min-height:32px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:5px 8px;font-size:.68rem;font-weight:750}.text-button:disabled{opacity:.55;cursor:wait}.relationship-inline-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;margin-top:10px;display:grid}.relationship-inline-form label{min-width:0;color:var(--ink);gap:5px;font-size:.72rem;font-weight:700;display:grid}.relationship-inline-form select{border:1px solid var(--line);width:100%;min-width:0;min-height:40px;color:var(--ink);background:var(--surface);font:inherit;border-radius:11px;padding:8px 9px}.relationship-inline-form .button{min-height:40px;padding:8px 10px;font-size:.72rem}.relationship-empty{min-height:120px;margin-top:10px}.relationship-empty-inline{color:var(--muted);margin:0;padding:8px 2px;font-size:.72rem}.relationship-current-title{margin:17px 0 9px;font-size:.8rem}.relationship-account-help{color:var(--muted);margin:11px 0 0;font-size:.72rem;line-height:1.5}.relationship-account-help a{color:var(--brand);font-weight:750}.relationship-action-panel,.relationship-current-module{border:1px solid var(--line);background:var(--surface);border-radius:18px;margin-bottom:14px;overflow:hidden}.relationship-action-trigger{cursor:pointer;grid-template-columns:40px minmax(0,1fr) 20px;align-items:center;gap:11px;min-height:70px;padding:14px;list-style:none;display:grid}.relationship-action-trigger::-webkit-details-marker{display:none}.relationship-action-trigger>span:nth-child(2){gap:4px;min-width:0;display:grid}.relationship-action-trigger strong{font-size:.9rem}.relationship-action-trigger small{color:var(--muted);font-size:.69rem;line-height:1.45}.relationship-action-trigger>svg{color:var(--muted);transition:transform .16s}.relationship-action-panel[open] .relationship-action-trigger>svg{transform:rotate(90deg)}.relationship-action-body{border-top:1px solid var(--line);padding:0 14px 14px}.relationship-operations{gap:12px;padding-top:14px;display:grid}.relationship-operation{border:1px solid var(--line);background:var(--surface-soft);border-radius:15px;padding:13px}.relationship-operation h3{margin:0;font-size:.86rem}.relationship-operation>p{color:var(--muted);margin:5px 0 0;font-size:.7rem;line-height:1.5}.relationship-operation .relationship-form{padding-top:12px}.relationship-auto-number{color:var(--muted);font-size:.68rem;line-height:1.5;display:block}.relationship-current-module{padding:15px}.relationship-current-module .button{margin-top:13px}.relationship-dialog{border:1px solid var(--line);width:min(94vw,620px);max-width:620px;max-height:min(88dvh,780px);color:var(--ink);background:var(--surface);border-radius:20px;margin:auto;padding:0;overflow:hidden;box-shadow:0 24px 70px #16221e47}.relationship-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#111c198a}.relationship-dialog-shell{grid-template-rows:auto auto minmax(0,1fr);max-height:min(88dvh,780px);display:grid}.relationship-dialog-shell>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px;display:flex}.relationship-dialog-shell>header h2{margin:0;font-size:1rem}.relationship-dialog-shell>header p{color:var(--muted);margin:4px 0 0;font-size:.7rem;line-height:1.45}.relationship-dialog-close{border:1px solid var(--line);width:34px;height:34px;color:var(--muted);background:var(--surface-soft);font:inherit;cursor:pointer;border-radius:50%;place-items:center;font-size:1.25rem;display:grid}.relationship-dialog-search{border:1px solid var(--line);min-height:44px;color:var(--muted);background:var(--surface-soft);border-radius:12px;align-items:center;gap:8px;margin:12px 14px;padding:0 11px;display:flex}.relationship-dialog-search svg{flex:none;width:17px;height:17px}.relationship-dialog-search input{width:100%;min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0}.relationship-dialog-content{gap:16px;padding:0 14px 18px;display:grid;overflow-y:auto}.relationship-dialog-content>section>h3{margin:0 0 9px;font-size:.82rem}.relationship-dialog-content .relationship-card h4{color:var(--muted);margin:12px 0 0;font-size:.68rem}.relationship-dialog-empty{color:var(--muted);text-align:center;margin:0;padding:22px 10px;font-size:.75rem}.profile-card{border:1px solid var(--line);background:var(--surface);border-radius:17px;align-items:center;gap:12px;padding:16px;display:flex}.profile-avatar{width:52px;height:52px;color:var(--brand-ink);background:var(--brand);border-radius:16px;place-items:center;display:grid}.profile-card div{gap:4px;display:grid}.profile-card small{color:var(--muted)}.settings-section{margin:20px 0}.settings-section .section-title{margin-top:0}.profile-security{border:1px solid var(--line);background:var(--surface);border-radius:16px;overflow:hidden}.profile-security>summary{background:var(--surface);border:0;border-radius:0;list-style:none}.profile-security>summary::-webkit-details-marker{display:none}.profile-security>summary>svg{transition:transform .16s}.profile-security[open]>summary>svg{transform:rotate(90deg)}.profile-security-body{border-top:1px solid var(--line);padding:14px}.profile-security-body>p{color:var(--muted);margin:0;font-size:.75rem;line-height:1.55}.profile-security-body>.form-notice{color:var(--brand);margin-top:12px}.profile-security-body>.form-notice--error{color:#a63f32}.profile-password-form{padding-bottom:0}.profile-password-form label small{color:var(--muted);font-size:.66rem;font-weight:500;line-height:1.45}.profile-signout{margin-top:18px}.profile-menu{margin-top:16px}.settings-form{gap:14px;display:grid}.settings-card{border:1px solid var(--line);background:var(--surface);border-radius:17px;gap:12px;padding:15px;display:grid}.settings-card h2{margin:0;font-size:.88rem}.settings-card>label:not(.setting-switch-row):not(.settings-check-row),.settings-field-grid label{color:var(--ink);gap:6px;font-size:.78rem;font-weight:700;display:grid}.settings-card>label:not(.setting-switch-row):not(.settings-check-row) input,.settings-card>label:not(.setting-switch-row):not(.settings-check-row) select,.settings-card>label:not(.setting-switch-row):not(.settings-check-row) textarea,.settings-field-grid input,.settings-field-grid select{border:1px solid var(--line);width:100%;min-width:0;min-height:44px;color:var(--ink);background:var(--surface-soft);font:inherit;border-radius:12px;padding:10px 11px;line-height:1.5}.settings-card textarea{resize:vertical}.settings-card label small{color:var(--muted);font-size:.66rem;font-weight:500;line-height:1.5}.settings-card-heading{align-items:flex-start;gap:10px;display:flex}.settings-card-heading>div{gap:4px;display:grid}.settings-card-heading small{color:var(--muted);font-size:.7rem;line-height:1.45}.settings-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.settings-switch-list{gap:0}.settings-switch-list>h2{margin-bottom:4px}.setting-switch-row{border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:62px;padding:10px 0;display:grid;position:relative}.setting-switch-row:last-child{border-bottom:0}.setting-switch-copy{gap:3px;display:grid}.setting-switch-copy strong{font-size:.76rem}.setting-switch-copy small{color:var(--muted);font-size:.66rem;font-weight:500;line-height:1.45}.setting-switch-row>input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.setting-switch-control{border:1px solid var(--line);background:#d7dedb;border-radius:999px;flex:0 0 44px;width:44px;height:26px;transition:background .16s,border-color .16s;position:relative}.setting-switch-control:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .16s;position:absolute;top:2px;left:2px;box-shadow:0 2px 5px #10211c33}.setting-switch-row>input:checked+.setting-switch-control{border-color:var(--brand);background:var(--brand)}.setting-switch-row>input:checked+.setting-switch-control:after{transform:translate(18px)}.setting-switch-row>input:focus-visible+.setting-switch-control{outline-offset:2px;outline:3px solid #176b5433}.setting-switch-row--locked{cursor:default}.setting-switch-row--locked .setting-switch-control{opacity:.75}.settings-policy-card{gap:10px}.settings-help{color:var(--muted);margin:0;font-size:.7rem;line-height:1.55}.policy-list{gap:8px;display:grid}.policy-list p{background:var(--surface-soft);border-radius:11px;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:10px 11px;font-size:.72rem;display:flex}.policy-list strong{color:var(--brand);white-space:nowrap}.settings-logo-preview{object-fit:cover;border:1px solid var(--line);background:var(--surface-soft);border-radius:18px;width:76px;height:76px}.settings-check-row{color:#a63f32;align-items:center;gap:8px;font-size:.72rem;font-weight:700;display:flex}.settings-check-row input{accent-color:#a63f32;width:17px;height:17px}.student-number-preview{background:var(--surface-accent);border:1px dashed #176b5459;border-radius:13px;gap:5px;padding:13px;display:grid}.student-number-preview span,.student-number-preview small{color:var(--muted);font-size:.66rem;line-height:1.45}.student-number-preview strong{overflow-wrap:anywhere;color:var(--brand);letter-spacing:.03em;font-size:1rem}.settings-card input[type=file]{padding:8px;font-size:.72rem}.settings-card input[type=file]::file-selector-button{min-height:32px;color:var(--brand);background:var(--surface-accent);font:inherit;border:0;border-radius:9px;margin-right:8px;padding:6px 9px;font-weight:700}html[data-font-scale=large]{font-size:18px}.error-page{text-align:center;place-content:center;min-height:100vh;padding:24px;display:grid}.error-page h1{margin:0;font-size:2rem}.error-page p{color:var(--muted)}.error-page pre{text-align:left;background:var(--surface);max-width:min(700px,90vw);padding:16px;overflow:auto}@media (width<=760px){.public-header{align-items:flex-start}.public-actions{flex-direction:column-reverse;align-items:flex-end}.public-actions .button{min-height:40px;padding:8px 11px;font-size:.8rem}.hero-section{grid-template-columns:1fr;padding-top:36px}.hero-phone{justify-self:center;width:min(100%,390px);transform:none}.settings-field-grid,.feature-grid{grid-template-columns:1fr}.site-hero{grid-template-columns:1fr;padding-top:44px}.site-hero-card{width:min(100%,420px)}.site-news-grid{grid-template-columns:1fr}.login-panel,.preview-panel{grid-template-columns:1fr;gap:24px}}@media (width<=420px){.public-header{padding-inline:16px}.brand-link>span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:112px;overflow:hidden}.hero-section,.feature-section{padding-inline:16px}.hero-copy h1{font-size:clamp(2.25rem,12vw,3.1rem)}.site-header-top{align-items:flex-start;padding-inline:14px}.site-header-top .brand-link{min-width:0}.site-header-top .brand-link>span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:104px;overflow:hidden}.site-actions{flex-direction:column-reverse;align-items:flex-end}.site-actions .language-switch-trigger{width:38px;height:38px}.site-login{min-height:36px;padding:6px 9px}.site-nav{padding-inline:14px}.site-hero,.site-news-section,.site-list-page,.site-article{padding-inline:16px}.site-hero h1{font-size:clamp(2.35rem,12vw,3.2rem)}html[data-locale=my] .site-hero h1{font-size:clamp(2.05rem,10vw,2.65rem)}.site-hero-card{padding:21px}.site-news-section>header{align-items:flex-end}.site-footer{flex-direction:column;align-items:flex-start;padding-inline:16px}.login-page{padding-inline:14px}.login-topbar{align-items:flex-start}.login-topbar .language-switch{justify-content:flex-end}.login-panel{padding:24px 18px}.preview-panel{padding:20px 16px}.app-header .language-switch-trigger{width:36px;height:36px}.app-brand strong{max-width:112px}html[data-locale=my] .app-brand strong{max-width:96px}.page-heading--action{align-items:center}.list-row{grid-template-columns:42px minmax(0,1fr) auto;padding-inline:10px}}@media (prefers-reduced-motion:no-preference){.button,.quick-card,.list-row,.bottom-nav a{transition:background-color .12s,color .12s,transform .12s}.button:active,.quick-card:active,.list-row:active{transform:scale(.985)}}
