:root{font-family:DM Sans,Segoe UI,sans-serif;color:#20352c;background:#f5f7f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--green-950: #143f33;--green-900: #174c3c;--green-800: #1d614b;--green-700: #24765b;--green-100: #e5f1eb;--green-50: #f2f8f4;--ink: #20352c;--muted: #809087;--line: #e8ede9;--surface: #fff;--shadow: 0 12px 32px rgba(28, 56, 44, .055)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #74bd9b;outline-offset:3px}button:disabled{opacity:.62;cursor:not-allowed}::selection{background:#d8ebe0;color:#173e32}.app-shell{min-height:100vh}.sidebar{width:248px;position:fixed;z-index:5;inset:0 auto 0 0;display:flex;flex-direction:column;padding:25px 15px 16px;background:#fff;border-right:1px solid #edf0ed}.brand-lockup{display:flex;gap:12px;align-items:center;padding:2px 10px 29px;color:inherit;text-decoration:none}.brand-text,.wordmark>span:last-child{display:flex;flex-direction:column;gap:3px}.brand-text b{font:800 14px Manrope,sans-serif;letter-spacing:-.04em;color:#18392e}.brand-text small{font-size:10px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:#839188}.sidebar-caption{padding:0 12px;margin:5px 0 10px;color:#a3afa8;font-size:9px;letter-spacing:.16em;font-weight:700}.side-navigation{display:grid;gap:4px}.nav-item{position:relative;display:flex;align-items:center;gap:13px;width:100%;min-height:45px;padding:0 13px;color:#708078;border:0;border-radius:10px;background:transparent;text-align:left;font-size:13px;font-weight:600;cursor:pointer;transition:.16s ease}.nav-item:hover{background:#f6f8f6;color:var(--green-900)}.nav-item.active{background:#edf5ef;color:var(--green-900);font-weight:700}.nav-item.active>svg{color:#328362}.nav-indicator{position:absolute;right:0;top:12px;bottom:12px;width:3px;border-radius:3px 0 0 3px;background:#418b6a}.sidebar-spacer{flex:1;min-height:24px}.sidebar-support{padding:16px 14px;border:1px solid #e8efe9;border-radius:13px;background:linear-gradient(150deg,#f6faf7,#fff)}.support-icon{display:grid;place-items:center;width:29px;height:29px;margin-bottom:12px;border-radius:9px;color:var(--green-700);background:#e6f2ea}.sidebar-support strong{color:#284436;font-size:12px}.sidebar-support p{margin:5px 0 10px;color:#849088;font-size:11px;line-height:1.55}.sidebar-support a{display:inline-flex;align-items:center;gap:5px;color:#337c5b;text-decoration:none;font-size:11px;font-weight:700}.support-contact{color:#337c5b;font-size:11px;font-weight:700}.sidebar-foot{padding:17px 7px 0;color:#a3ada6;font-size:9px}.sidebar-foot span{padding:0 3px}.workspace{min-height:100vh;margin-left:248px;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;min-height:85px;padding:15px clamp(24px,4vw,58px);border-bottom:1px solid #e9eeea;background:#fffffff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-title .eyebrow{display:block;margin-bottom:4px;font-size:9px}.topbar-title h1{margin:0;color:#23372e;font:700 18px Manrope,sans-serif;letter-spacing:-.035em}.topbar-actions{display:flex;align-items:center;gap:18px}.today-label{color:#86928a;font-size:11px}.child-switcher{position:relative;display:flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid #e5ebe6;border-radius:9px;background:#fff}.child-switcher-label{color:#89948d;font-size:10px}.child-switcher select{max-width:148px;padding:0 13px 0 0;border:0;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;color:#33473d;font-size:11px;font-weight:700;cursor:pointer}.child-switcher>svg{position:absolute;right:8px;color:#8a9990;pointer-events:none}.account-chip{display:flex;align-items:center;gap:8px}.avatar-circle{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;color:#25684c;background:#e4f0e7;font-size:12px;font-weight:700}.account-name{max-width:130px;overflow:hidden;color:#536359;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600}.icon-button{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:9px;background:transparent;color:#819087;cursor:pointer}.icon-button:hover{background:#f1f5f1;color:#315d47}.page-content{width:100%;max-width:1370px;flex:1;margin:0 auto;padding:28px clamp(24px,4vw,58px) 44px}.page-footer{display:flex;justify-content:space-between;gap:18px;padding:15px clamp(24px,4vw,58px) 20px;color:#a2aca6;font-size:9px}.eyebrow{color:#91a096;font-size:9px;letter-spacing:.15em;font-weight:700}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:2px 0 23px}.page-heading h2{margin:8px 0 5px;color:#24392e;font:800 25px Manrope,sans-serif;letter-spacing:-.055em}.page-heading p{margin:0;color:#859188;font-size:12px}.heading-action{flex:0 0 auto}.select-field{display:flex;flex-direction:column;gap:6px;min-width:168px;color:#849188;font-size:10px;font-weight:600}.select-wrap{position:relative}.select-wrap select,.select-field input{width:100%;height:39px;padding:0 35px 0 12px;border:1px solid #e3e9e4;border-radius:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:#45564b;background:#fff;font-size:11px;font-weight:600}.select-wrap>svg{position:absolute;top:12px;right:11px;color:#8b988f;pointer-events:none}.select-field input{padding:0 11px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 13px;border:1px solid transparent;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer;transition:.16s ease}.button-primary{color:#fff;border-color:var(--green-900);background:var(--green-900)}.button-primary:hover{background:#20634c}.button-soft{color:#286649;border-color:#dcebe0;background:#f2f8f3}.button-filter{color:#5d7064;border-color:#e4eae5;background:#fff}.button-filter:hover,.button-filter.filter-active{border-color:#c5ddce;background:#f6faf7;color:#286849}.text-link,.subtle-link{display:inline-flex;align-items:center;gap:7px;padding:4px 0;border:0;color:#39815f;background:transparent;font-size:10px;font-weight:700;cursor:pointer}.text-link:hover,.subtle-link:hover{color:#1e5a40}.preview-banner{display:flex;align-items:center;gap:10px;min-height:39px;margin:0 0 19px;padding:8px 12px;border:1px solid #eddeb6;border-radius:9px;color:#80672b;background:#fff9e9;font-size:10px}.preview-banner b{color:#6f5315}.preview-banner-dot,.live-dot{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#d0a73e}.preview-label{margin-left:auto;color:#9b8349;font-size:8px;letter-spacing:.1em;font-weight:700;white-space:nowrap}.welcome-panel{position:relative;isolation:isolate;display:flex;min-height:226px;overflow:hidden;padding:28px 33px;border-radius:16px;color:#f2f7f3;background:linear-gradient(112deg,#174a39,#23644a 64%,#2a7254);box-shadow:0 12px 25px #1c573b1f}.welcome-copy{position:relative;z-index:2;max-width:580px}.welcome-kicker{display:inline-flex;align-items:center;gap:7px;color:#bedac7;font-size:9px;font-weight:700;letter-spacing:.12em}.welcome-panel h2{margin:15px 0 7px;font:700 clamp(21px,2.5vw,29px) "Manrope",sans-serif;letter-spacing:-.04em}.welcome-panel p{margin:0;max-width:390px;color:#c2d8c9;font-size:12px;line-height:1.65}.welcome-meta{display:flex;align-items:center;gap:12px;margin-top:22px;color:#d6e6dc;font-size:10px}.welcome-meta>span:not(.meta-divider){display:flex;align-items:center;gap:7px}.meta-divider{height:14px;border-left:1px solid rgba(221,239,227,.28)}.welcome-art{position:absolute;z-index:1;top:0;right:0;bottom:0;left:50%;overflow:hidden;opacity:.94}.art-sun{position:absolute;right:15%;top:27px;width:108px;height:108px;border:1px solid rgba(227,240,230,.27);border-radius:50%;background:#e1efe41a}.art-sun:before,.art-sun:after{content:"";position:absolute;top:13px;right:13px;bottom:13px;left:13px;border:1px solid rgba(227,240,230,.17);border-radius:50%}.art-sun:after{top:-10px;right:-10px;bottom:-10px;left:-10px}.art-mosque{position:absolute;right:15%;bottom:26px;width:198px;height:125px;color:#b1d1bb}.mosque-base{position:absolute;top:56px;right:15px;bottom:0;left:15px;border:1px solid rgba(225,242,230,.42);border-bottom:0;border-radius:2px 2px 0 0;background:linear-gradient(180deg,#d7eddd1f,#d7eddd0a)}.dome{position:absolute;z-index:2;left:59px;bottom:59px;width:80px;height:59px;border:1px solid rgba(225,242,230,.48);border-bottom:0;border-radius:55px 55px 0 0;background:linear-gradient(140deg,#daefdf4f,#daefdf14)}.dome:after{content:"";position:absolute;top:-13px;left:37px;width:6px;height:14px;border:1px solid rgba(225,242,230,.48);border-bottom:0;border-radius:5px 5px 0 0}.minaret{position:absolute;z-index:3;bottom:0;width:18px;height:86px;border:1px solid rgba(225,242,230,.43);background:#d2e8d821}.minaret:before{content:"";position:absolute;left:-3px;right:-3px;top:-9px;height:9px;border:1px solid rgba(225,242,230,.44);background:#578469}.minaret:after{content:"";position:absolute;top:-19px;left:5px;width:6px;height:10px;border:1px solid rgba(225,242,230,.45);border-bottom:0;border-radius:5px 5px 0 0}.minaret-left{left:26px;height:100px}.minaret-right{right:26px;height:107px}.mosque-door{position:absolute;z-index:2;left:92px;bottom:0;width:22px;height:39px;border:1px solid rgba(225,242,230,.39);border-bottom:0;border-radius:13px 13px 0 0;background:#11453180}.art-ground{position:absolute;bottom:24px;right:6%;width:310px;height:1px;background:#e1f2e64f}.art-star{position:absolute;z-index:2;color:#d9e9dc}.star-one{right:44%;top:46px;font-size:15px}.star-two{right:10%;top:90px;font-size:9px}.star-three{right:42%;top:101px;font-size:22px}.welcome-leaf{position:absolute;z-index:0;right:3%;top:-114px;color:#daeddf09;font-size:370px;line-height:1;transform:rotate(-18deg)}.section-title-row{display:flex;justify-content:space-between;align-items:end;margin:27px 0 14px}.section-title-row h3,.card-heading h3{margin:5px 0 0;color:#2a4034;font:700 15px Manrope,sans-serif;letter-spacing:-.03em}.updated-label{display:inline-flex;align-items:center;gap:7px;color:#88958c;font-size:9px}.updated-label .live-dot{background:#6baa83}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.summary-card{min-height:167px;padding:16px 17px 14px;border:1px solid #e9eeea;border-radius:13px;background:#fff;box-shadow:0 5px 16px #1f382c06}.summary-top{display:flex;align-items:center;gap:9px}.summary-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px}.summary-icon svg{width:17px;height:17px}.icon-mint{color:#36815c;background:#eaf4ed}.icon-lilac{color:#7367a5;background:#f0edfa}.icon-cream{color:#a57c33;background:#f9f2e1}.summary-caption{color:#98a49c;font-size:8px;letter-spacing:.12em;font-weight:700}.summary-value{margin-top:14px;color:#264333;font:800 26px Manrope,sans-serif;letter-spacing:-.06em}.summary-unit{color:#809087;font:500 11px DM Sans,sans-serif;letter-spacing:0}.summary-currency{font-size:clamp(19px,2vw,25px);letter-spacing:-.055em}.summary-card p{margin:3px 0 8px;color:#91a097;font-size:9px}.summary-card .text-link{font-size:9px}.dashboard-lower-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:14px;margin-top:15px}.content-card{border:1px solid #e9eeea;border-radius:13px;background:#fff;box-shadow:0 5px 16px #1f382c06}.latest-card,.quick-links-card{padding:17px 18px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.card-heading h3{font-size:14px}.latest-row{display:flex;align-items:center;gap:10px;padding:12px 0 0;margin-top:11px;border-top:1px solid #f0f3f0}.subject-mark{display:grid;place-items:center;width:33px;height:33px;flex:0 0 33px;border-radius:10px;color:#39825c;background:#eef5f0;font:700 12px Manrope,sans-serif}.latest-info{display:grid;gap:4px;flex:1;min-width:0}.latest-info strong{overflow:hidden;color:#44574b;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.latest-info span{color:#9aa59e;font-size:9px}.latest-score{display:grid;justify-items:end;color:#376f50;font:700 13px Manrope,sans-serif}.latest-score small{margin-top:2px;color:#a2aca5;font:500 8px DM Sans,sans-serif}.muted-line{color:#9ba69f;font-size:11px;line-height:1.6}.quick-link-row{display:flex;align-items:center;gap:10px;width:100%;padding:10px 0;border:0;border-top:1px solid #f0f3f0;background:transparent;text-align:left;cursor:pointer}.card-heading+.quick-link-row{margin-top:9px}.quick-link-row>span:nth-child(2){display:grid;flex:1;gap:3px}.quick-link-row b{color:#46594d;font-size:10px}.quick-link-row small{color:#98a39b;font-size:9px}.quick-link-row>svg{color:#a2ada5}.quick-icon{display:grid;place-items:center;width:31px;height:31px;border-radius:9px}.quick-green{color:#448461;background:#edf5ef}.quick-blue{color:#637da0;background:#eef2f7}.quick-amber{color:#aa8134;background:#faf4e7}.state-card{display:flex;align-items:center;gap:13px;min-height:95px;padding:17px;border:1px solid #e9eeea;border-radius:12px;background:#fff;color:#849188;font-size:11px}.loading-state{justify-content:center;color:#829188}.spinner{display:inline-block;width:17px;height:17px;flex:0 0 17px;border:2px solid #dce9df;border-top-color:#39815f;border-radius:50%;animation:spin .8s linear infinite}.spinner-light{border-color:#ffffff4d;border-top-color:#fff}.login-submit .spinner{width:14px;height:14px;flex-basis:14px}@keyframes spin{to{transform:rotate(360deg)}}.error-state{align-items:flex-start;border-color:#f0ded9;background:#fffdfc;color:#785952}.error-state strong{color:#614a43;font-size:12px}.error-state p{margin:4px 0 10px;color:#9a827b;font-size:10px;line-height:1.5}.state-icon{display:grid;place-items:center;width:33px;height:33px;flex:0 0 33px;border-radius:10px;color:#a56c5f;background:#f9eeea}.empty-state{min-height:167px;flex-direction:column;justify-content:center;gap:4px;text-align:center}.empty-state strong{color:#526257;font-size:12px}.empty-state p{max-width:370px;margin:1px 0 0;color:#929e95;font-size:10px;line-height:1.6}.empty-symbol{display:grid;place-items:center;width:37px;height:37px;margin-bottom:5px;border-radius:12px;color:#6d8d79;background:#edf4ee}.boot-screen{display:grid;place-items:center;align-content:center;gap:24px;min-height:100vh;padding:25px;background:#f5f7f5}.boot-screen .wordmark{display:flex;align-items:center;gap:12px}.boot-screen>.state-card{width:min(100%,460px)}.boot-error{width:min(100%,520px)}.boot-footnote{max-width:475px;margin:0;color:#98a49c;text-align:center;font-size:10px;line-height:1.65}.category-tabs{display:inline-flex;gap:4px;padding:4px;margin-bottom:16px;border:1px solid #e7ece8;border-radius:9px;background:#fff}.category-tabs button{display:inline-flex;align-items:center;gap:7px;min-width:91px;height:31px;padding:0 10px;border:0;border-radius:6px;color:#8d9990;background:transparent;font-size:10px;font-weight:600;cursor:pointer}.category-tabs button.selected{color:#286648;background:#eaf3ed;font-weight:700}.tab-mark{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.75}.schedule-intro{display:flex;align-items:center;gap:10px;min-height:58px;margin-bottom:16px;padding:10px 14px;border:1px solid #e9eeea;border-radius:10px;background:#fff}.schedule-year-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;color:#3b7c58;background:#eef5ef}.schedule-intro>div:nth-child(2){display:grid;gap:3px;flex:1}.schedule-intro strong{color:#4c5f53;font-size:10px}.schedule-intro span{color:#99a49d;font-size:9px}.schedule-count{color:#65786a!important;font-weight:700}.schedule-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.day-block{overflow:hidden;border:1px solid #e9eeea;border-radius:12px;background:#fff}.day-label{display:flex;align-items:center;gap:8px;padding:12px 14px;background:#fbfcfb;border-bottom:1px solid #edf1ed}.day-label h3{margin:0;color:#475b4d;font:700 11px Manrope,sans-serif}.day-label>span:last-child{margin-left:auto;color:#a1aba4;font-size:9px}.day-dot{width:6px;height:6px;border-radius:50%;background:#63a17b}.schedule-item{display:grid;grid-template-columns:48px 12px minmax(0,1fr) 15px;align-items:center;gap:10px;min-height:63px;padding:10px 14px;border-bottom:1px solid #f0f3f0}.schedule-item:last-child{border-bottom:0}.schedule-time{display:grid;justify-items:end;gap:3px}.schedule-time strong{color:#596c5f;font-size:9px}.schedule-time span{color:#9ca79f;font-size:8px}.schedule-timeline{position:relative;display:grid;place-items:center;align-self:stretch}.schedule-timeline:before{content:"";position:absolute;top:0;bottom:0;width:1px;background:#e7eee8}.schedule-timeline span{position:relative;z-index:1;width:7px;height:7px;border:2px solid #fff;border-radius:50%;background:#72ab84;box-shadow:0 0 0 1px #9ac2a5}.schedule-subject{display:grid;gap:4px}.schedule-subject strong{color:#4b5e51;font-size:10px}.schedule-subject span{color:#9aa59d;font-size:9px}.schedule-item>svg{color:#bac3bc}.notice-strip{display:flex;align-items:center;gap:9px;min-height:39px;margin:0 0 16px;padding:9px 12px;border:1px solid #e7ede8;border-radius:9px;color:#738177;background:#f9fbf9;font-size:10px}.notice-strip svg{flex:0 0 auto;color:#64876e}.learning-list,.attendance-list{overflow:hidden}.list-head{display:flex;justify-content:space-between;padding:12px 16px;color:#99a49c;background:#fbfcfb;border-bottom:1px solid #eef2ee;font-size:8px;letter-spacing:.13em;font-weight:700}.list-head span:last-child{letter-spacing:0;font-weight:600}.learning-row{display:grid;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:13px;padding:15px 17px;border-bottom:1px solid #eff2ef}.learning-row:last-child{border-bottom:0}.learning-date{display:grid;place-items:center;align-content:center;width:41px;height:44px;gap:1px;border-radius:10px;color:#447956;background:#f0f6f1}.learning-date strong{font:700 14px Manrope,sans-serif}.learning-date span{font-size:8px;text-transform:uppercase}.learning-info{min-width:0}.learning-info>strong{color:#46584d;font-size:11px}.learning-info>span{display:block;margin-top:4px;color:#96a198;font-size:9px}.learning-info>span i{padding:0 3px;font-style:normal}.learning-info p{margin:7px 0 0;color:#748278;font-size:10px;line-height:1.5}.learning-result{display:grid;justify-items:end;gap:5px}.learning-result>strong{color:#3b7754;font:800 19px Manrope,sans-serif;letter-spacing:-.04em}.learning-result>strong small{color:#a1aba4;font:500 9px DM Sans,sans-serif;letter-spacing:0}.learning-result .no-score{color:#a4ada7}.grade-chip{padding:4px 7px;border-radius:5px;color:#547d60;background:#eff6ef;font-size:8px;white-space:nowrap}.filter-panel{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:-7px 0 15px;padding:14px;border:1px solid #e6ece7;border-radius:10px;background:#fff}.filter-panel .select-field{min-width:152px}.clear-filter{min-height:39px;margin-left:auto}.attendance-row{display:grid;grid-template-columns:45px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 17px;border-bottom:1px solid #eff2ef}.attendance-row:last-child{border-bottom:0}.attendance-date{display:grid;place-items:center;align-content:center;width:42px;height:44px;gap:2px;border-radius:10px;color:#5a7862;background:#f1f6f2}.attendance-date strong{font:700 13px Manrope,sans-serif}.attendance-date span{color:#97a39a;font-size:8px}.attendance-main{display:grid;gap:4px}.attendance-main strong{color:#4b5f52;font-size:10px}.attendance-main span{color:#9ba69e;font-size:9px}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:20px;font-size:9px;font-weight:700;white-space:nowrap}.status-dot{width:5px;height:5px;border-radius:50%;background:currentColor}.status-green{color:#39754e;background:#edf6ee}.status-amber{color:#986e24;background:#fbf4e6}.status-red{color:#a35a52;background:#fbefed}.status-blue{color:#5e7697;background:#eef3f8}.status-neutral{color:#818b84;background:#f1f3f1}.readonly-banner{display:flex;align-items:center;gap:9px;margin-bottom:16px;padding:10px 13px;border:1px solid #e6ece7;border-radius:9px;color:#7d8980;background:#fafcfa;font-size:10px}.readonly-banner b{color:#536d5b}.readonly-icon{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:8px;color:#548263;background:#eaf3ec}.finance-total-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.finance-total-card{display:grid;gap:9px;min-height:114px;padding:16px 18px;border:1px solid #e9eeea;border-radius:12px;background:#fff}.finance-total-card>strong{color:#324a38;font:800 23px Manrope,sans-serif;letter-spacing:-.05em}.finance-total-card>span:last-child{color:#9aa59d;font-size:9px}.outstanding-card{background:linear-gradient(120deg,#fff,#fffdfa)}.outstanding-card>strong{color:#9a742d}.paid-card>strong{color:#347550}.finance-section{margin-bottom:14px;padding:16px 18px}.finance-section .card-heading{margin-bottom:14px}.finance-table-wrap,.report-table-wrap{width:100%;overflow-x:auto}.finance-table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}.finance-table th{padding:9px 12px;color:#a0aaa3;background:#fafbfa;font-size:8px;letter-spacing:.1em;font-weight:700}.finance-table th:first-child,.finance-table td:first-child{padding-left:0}.finance-table td{padding:12px;border-bottom:1px solid #f0f3f0;color:#6d7a71;font-size:9px}.finance-table tbody tr:last-child td{border-bottom:0}.finance-table td:first-child{min-width:190px;white-space:normal}.finance-table td:first-child strong,.finance-table td:first-child span{display:block}.finance-table td:first-child strong{color:#4c5d51;font-size:10px}.finance-table td:first-child span{margin-top:4px;color:#9aa49d;font-size:9px}.finance-table td:last-child strong{font-size:9px}.amount-due{color:#a17428}.amount-clear{color:#538064}.payments-section{margin-bottom:0}.payment-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #f0f3f0}.payment-check{display:grid;place-items:center;width:29px;height:29px;flex:0 0 29px;border-radius:9px;color:#538663;background:#edf5ef}.payment-detail{display:grid;flex:1;gap:4px}.payment-detail strong{color:#506154;font-size:10px}.payment-detail small{color:#9ba69e;font-size:9px}.payment-amount{color:#3c7350;font-size:10px}.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.report-card-tile{display:grid;grid-template-columns:38px 1fr;align-items:center;column-gap:11px;row-gap:5px;padding:17px;border:1px solid #e8ede9;border-radius:12px;background:#fff;box-shadow:0 5px 16px #1f382c06;text-align:left;cursor:pointer;transition:.16s ease}.report-card-tile:hover{transform:translateY(-2px);border-color:#d0e1d4;box-shadow:var(--shadow)}.report-card-icon{grid-row:span 3;display:grid;place-items:center;width:38px;height:42px;border-radius:10px;color:#528263;background:#edf5ef}.report-card-period{color:#97a39a;font-size:9px}.report-card-tile>strong{color:#425849;font:700 13px Manrope,sans-serif}.report-card-date{color:#97a39a;font-size:9px}.report-card-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;min-height:31px;margin-top:7px;padding-top:9px;border-top:1px solid #f0f3f0;color:#8e9b91;font-size:9px}.report-card-bottom b{margin-left:5px;color:#477552;font-size:11px}.report-card-bottom .subtle-link{font-size:9px}.report-detail-actions{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.print-button{min-height:36px}.report-document{max-width:930px;margin:0 auto;padding:38px 43px 30px;border:1px solid #e6ece7;border-radius:12px;background:#fff;box-shadow:var(--shadow)}.report-doc-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:19px;border-bottom:2px solid #386d4d}.report-doc-brand{display:flex;align-items:center;gap:12px}.report-doc-brand .brand-monogram{width:46px;height:46px;flex-basis:46px}.report-doc-brand h2{margin:5px 0 0;color:#294334;font:700 15px/1.4 Manrope,sans-serif}.report-doc-title{padding:22px 0 16px;text-align:center}.report-doc-title h1{margin:0;color:#2a4333;font:800 22px Manrope,sans-serif}.report-doc-title p{margin:6px 0 0;color:#8a988e;font-size:11px}.report-student-info{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:10px;margin-bottom:20px;padding:12px;border:1px solid #e7ede8;border-radius:8px;background:#fbfcfb}.report-student-info div{display:grid;gap:5px}.report-student-info span{color:#9aa69e;font-size:8px}.report-student-info strong{color:#4b5d50;font-size:9px}.report-table{width:100%;border-collapse:collapse;text-align:left}.report-table th{padding:10px 8px;border-top:1px solid #dfe8e0;border-bottom:1px solid #dfe8e0;color:#68806e;background:#f5f8f5;font-size:8px;letter-spacing:.08em;text-transform:uppercase}.report-table td{padding:10px 8px;border-bottom:1px solid #edf1ed;color:#637066;font-size:9px}.report-table td:nth-child(1),.report-table td:nth-child(3),.report-table td:nth-child(4){white-space:nowrap}.report-table td strong{color:#4d5d51;font-weight:600}.homeroom-note{margin-top:18px;padding:13px 15px;border-left:3px solid #81aa8b;background:#f7faf7}.homeroom-note p{margin:7px 0 0;color:#647368;font-size:10px;line-height:1.7}.report-average{display:flex;align-items:center;justify-content:space-between;margin-top:15px;padding:12px 15px;border-radius:7px;color:#637168;background:#eff5f0;font-size:10px}.report-average strong{color:#356d49;font:800 17px Manrope,sans-serif}.report-doc-footer{display:flex;justify-content:space-between;gap:20px;margin-top:38px;padding-top:13px;border-top:1px solid #e9eeea}.report-doc-footer div{display:grid;gap:28px;min-width:150px}.report-doc-footer div:last-child{text-align:right}.report-doc-footer span{color:#9ba69e;font-size:8px}.report-doc-footer strong{color:#607066;font-size:9px;font-weight:600}.mobile-navigation{display:none}.toast-message{position:fixed;z-index:10;right:20px;bottom:20px;max-width:calc(100% - 40px);padding:12px 15px;border:1px solid #e2e9e3;border-radius:9px;color:#506354;background:#fff;box-shadow:var(--shadow);font-size:11px}.login-layout{display:grid;grid-template-columns:minmax(340px,.92fr) 1.08fr;min-height:100vh;background:#fff}.login-brand-panel{position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:100vh;overflow:hidden;padding:33px clamp(28px,5vw,75px);color:#fff;background:linear-gradient(145deg,#174936,#1a583d 53%,#246849)}.wordmark{display:flex;align-items:center;gap:12px}.wordmark b{color:inherit;font:800 14px Manrope,sans-serif;letter-spacing:-.03em}.wordmark small{color:#e8f3eba3;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.login-brand-copy{position:relative;z-index:2;max-width:470px;margin:auto 0;padding:65px 0 80px}.light-eyebrow{color:#bdd8c5}.login-brand-copy h1{margin:15px 0 14px;font:700 clamp(31px,4.1vw,48px)/1.2 "Manrope",sans-serif;letter-spacing:-.06em}.login-brand-copy p{max-width:390px;margin:0;color:#c3d9ca;font-size:13px;line-height:1.75}.brand-bottom{position:relative;z-index:2;display:flex;align-items:center;gap:10px;color:#bfd6c5;font-size:10px}.brand-line{width:24px;height:1px;background:#88b49a}.login-orb{position:absolute;z-index:-1;border:1px solid rgba(225,241,229,.13);border-radius:50%}.login-orb-one{width:390px;height:390px;right:-160px;bottom:-153px;box-shadow:0 0 0 29px #e1f1e506,0 0 0 60px #e1f1e506,0 0 0 90px #e1f1e505}.login-orb-two{width:155px;height:155px;top:25%;right:15%;background:#dceee109;box-shadow:0 0 0 17px #e1f1e506}.login-form-side{display:grid;place-items:center;padding:34px}.login-form-wrap{width:min(100%,390px)}.mobile-wordmark{display:none}.login-form-wrap>.eyebrow{display:block;margin-bottom:10px}.login-form-wrap h2{margin:0;color:#293d31;font:800 25px Manrope,sans-serif;letter-spacing:-.05em}.form-intro{margin:8px 0 22px;color:#8a968e;font-size:11px;line-height:1.6}.preview-notice{margin:0 0 14px}.inline-notice{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid #eddeb6;border-radius:8px;color:#866b31;background:#fff9e9;font-size:9px;line-height:1.5}.inline-notice svg{flex:0 0 auto}.form-error{margin:0 0 13px;padding:10px 11px;border:1px solid #f0ded9;border-radius:7px;color:#875b52;background:#fff7f5;font-size:10px;line-height:1.5}.login-form{display:grid;gap:8px}.login-form label{margin-top:7px;color:#55675b;font-size:10px;font-weight:700}.login-form input{width:100%;height:43px;padding:0 12px;border:1px solid #e2e9e3;border-radius:8px;color:#3d5145;background:#fff;font-size:11px}.login-form input::placeholder{color:#b1bbb4}.password-label{display:flex;justify-content:space-between;align-items:center}.password-label a{color:#498360;text-decoration:none;font-size:9px}.login-submit{width:100%;height:44px;margin-top:13px}.login-submit svg{margin-left:auto}.login-submit{padding-left:18px}.no-registration{display:flex;align-items:flex-start;gap:8px;margin:20px 0 0;padding:11px 12px;border:1px solid #e9efe9;border-radius:8px;color:#7c897f;background:#fafcfa;font-size:9px;line-height:1.55}.no-registration svg{flex:0 0 auto;color:#678e71}.login-help{margin:17px 0 0;color:#a2aca5;text-align:center;font-size:9px}@media (min-width: 1500px){.page-content{padding-left:68px;padding-right:68px}}@media (max-width: 1080px){.sidebar{width:218px}.workspace{margin-left:218px}.topbar,.page-content{padding-left:24px;padding-right:24px}.account-name{display:none}.schedule-days{grid-template-columns:1fr 1fr}.welcome-art{left:47%}.art-mosque,.art-sun{right:7%}}@media (max-width: 820px){.sidebar{width:70px;align-items:center;padding:19px 8px 12px}.brand-lockup{justify-content:center;padding:0 0 25px}.brand-text,.sidebar-caption,.nav-item>span:not(.nav-indicator),.sidebar-support,.sidebar-foot{display:none}.nav-item{justify-content:center;width:48px;height:46px;min-height:46px;padding:0}.nav-indicator{right:-8px}.side-navigation{width:100%;justify-items:center}.workspace{margin-left:70px}.summary-grid{gap:9px}.summary-card{padding:14px 12px}.summary-caption{font-size:7px}.summary-value{font-size:23px}.dashboard-lower-grid{grid-template-columns:1fr}.welcome-art{left:50%}.welcome-panel{min-height:216px}.page-footer span:last-child{display:none}}@media (max-width: 620px){.sidebar{display:none}.workspace{margin-left:0;padding-bottom:67px}.topbar{min-height:69px;padding:10px 16px}.topbar-title .eyebrow{font-size:7px}.topbar-title h1{font-size:16px}.today-label{display:none}.topbar-actions{gap:8px}.child-switcher{max-width:148px;gap:5px;padding:7px 9px}.child-switcher-label{display:none}.child-switcher select{max-width:115px;font-size:9px}.account-chip{display:none}.logout-button{width:31px}.page-content{padding:18px 15px 28px}.page-footer{padding:0 15px 16px;font-size:8px}.page-heading{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:17px}.page-heading h2{margin-top:6px;font-size:22px}.page-heading p{max-width:370px;font-size:10px;line-height:1.55}.heading-action{width:100%}.heading-action .select-field{max-width:100%}.welcome-panel{min-height:209px;padding:22px 19px}.welcome-panel h2{max-width:285px;margin-top:13px;font-size:22px}.welcome-panel p{max-width:270px;font-size:10px}.welcome-meta{gap:8px;margin-top:17px;font-size:8px}.welcome-art{left:67%;opacity:.43}.art-mosque{right:-15%;transform:scale(.8);transform-origin:bottom}.art-sun{right:-13%;width:89px;height:89px}.welcome-leaf{right:-20%;top:-23%;font-size:280px}.section-title-row{margin:22px 0 11px}.section-title-row h3{font-size:14px}.updated-label{font-size:8px}.summary-grid{grid-template-columns:1fr;gap:9px}.summary-card{position:relative;min-height:130px;padding:13px 15px}.summary-top{gap:8px}.summary-value{margin-top:8px;font-size:22px}.summary-card p{margin:2px 0 6px;font-size:8px}.summary-card .text-link{position:absolute;top:15px;right:14px;font-size:8px}.summary-card .text-link svg{width:12px}.summary-currency{font-size:21px}.dashboard-lower-grid{gap:10px;margin-top:10px}.latest-card,.quick-links-card{padding:14px}.category-tabs{width:100%}.category-tabs button{flex:1;justify-content:center}.schedule-days{grid-template-columns:1fr;gap:10px}.schedule-intro{margin-bottom:11px}.schedule-intro strong{font-size:9px}.schedule-count{font-size:8px!important}.learning-row{grid-template-columns:38px minmax(0,1fr) auto;gap:9px;padding:12px}.learning-date{width:37px;height:41px}.learning-info>strong{font-size:10px}.learning-info>span{font-size:8px}.learning-info p{font-size:9px}.learning-result>strong{font-size:17px}.grade-chip{font-size:7px}.attendance-row{grid-template-columns:39px minmax(0,1fr) auto;gap:8px;padding:12px 10px}.attendance-date{width:37px;height:41px}.attendance-main strong{font-size:9px}.attendance-main span{font-size:8px}.status-pill{gap:4px;padding:5px 6px;font-size:8px}.filter-panel{align-items:stretch}.filter-panel .select-field{flex:1 1 42%;min-width:0}.clear-filter{margin-left:0}.finance-total-grid{gap:8px}.finance-total-card{min-height:102px;gap:8px;padding:13px 11px}.finance-total-card>strong{font-size:17px}.finance-total-card .summary-caption{font-size:7px}.finance-total-card>span:last-child{font-size:8px}.finance-section{padding:14px 12px}.finance-table{min-width:580px}.payment-row{gap:8px}.payment-detail strong,.payment-amount{font-size:9px}.report-grid{grid-template-columns:1fr;gap:9px}.report-document{padding:20px 13px}.report-doc-brand{gap:8px}.report-doc-brand .brand-monogram{width:37px;height:37px;flex-basis:37px;font-size:12px}.report-doc-brand h2{font-size:11px}.report-doc-head .status-pill{font-size:8px}.report-doc-title{padding:18px 0 13px}.report-doc-title h1{font-size:18px}.report-student-info{grid-template-columns:1fr 1fr;gap:13px 8px;padding:10px}.report-table{min-width:570px}.report-doc-footer div{min-width:105px}.report-detail-actions{margin-bottom:10px}.report-detail-actions .button{padding:0 10px;font-size:9px}.report-detail-actions .button:first-child{gap:4px}.mobile-navigation{position:fixed;z-index:8;inset:auto 0 0;display:flex;justify-content:space-around;gap:2px;padding:7px 4px max(7px,env(safe-area-inset-bottom));border-top:1px solid #e5ebe6;background:#fffffff7;box-shadow:0 -5px 20px #1937280f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-nav-item{display:grid;justify-items:center;align-content:center;gap:3px;min-width:0;flex:1;padding:3px 1px;border:0;border-radius:7px;color:#89968d;background:transparent;cursor:pointer}.mobile-nav-item span{font-size:7px}.mobile-nav-item.active{color:#276747}.mobile-nav-item.active span{font-weight:700}.preview-banner{align-items:flex-start;font-size:9px}.preview-label{display:none}.login-layout{display:flex;min-height:100vh;flex-direction:column}.login-brand-panel{display:none}.login-form-side{align-items:start;padding:40px 24px}.login-form-wrap{margin:0 auto}.mobile-wordmark{display:flex;margin-bottom:49px}.mobile-wordmark b{color:#254635}.mobile-wordmark small{color:#91a096}.mobile-wordmark .brand-monogram{width:39px;height:39px;flex-basis:39px;border-radius:11px;font-size:12px}.login-form-wrap h2{font-size:24px}.form-intro{margin-bottom:19px}.toast-message{right:12px;bottom:78px}}@media print{@page{size:A4;margin:15mm}body{background:#fff}.sidebar,.topbar,.page-footer,.mobile-navigation,.preview-banner,.report-detail-actions,.page-heading,.notice-strip{display:none!important}.workspace{margin:0;min-height:0}.page-content{max-width:none;padding:0}.report-document{max-width:none;padding:0;border:0;border-radius:0;box-shadow:none}.report-table th,.report-table td{font-size:9pt}.report-student-info{background:#fff}.homeroom-note{background:#f7faf7!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-average{background:#eff5f0!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.eyebrow,.summary-caption,.sidebar-caption,.sidebar-foot,.today-label,.updated-label,.page-heading p,.summary-card p,.latest-info span,.latest-score small,.quick-link-row small,.muted-line,.list-head,.learning-date span,.learning-info>span,.learning-info p,.attendance-date span,.attendance-main span,.schedule-intro span,.schedule-time span,.schedule-subject span,.day-label>span:last-child,.finance-total-card>span:last-child,.finance-table th,.finance-table td:first-child span,.report-student-info span,.report-doc-title p,.report-doc-footer span,.page-footer{color:#66756b}.preview-label{color:#775f24}@media (max-width: 620px){.mobile-nav-item span,.topbar-title .eyebrow,.eyebrow,.summary-caption{font-size:9px}.page-heading p,.welcome-panel p,.summary-card p,.latest-info span,.quick-link-row small,.attendance-main span,.learning-info>span,.schedule-subject span,.page-footer{font-size:10px}.status-pill,.grade-chip,.finance-table td,.report-table td{font-size:9px}}
