.school-app{display:flex;min-height:100vh;background:linear-gradient(135deg,#f0f8fd,#e5f1fa);font-family:Arial,sans-serif}.school-app aside{width:240px;flex-shrink:0;padding:36px 24px;background:#06334d;color:white;display:flex;flex-direction:column;gap:24px}.school-app aside a{color:white;text-decoration:none}.school-brand{font-size:25px;font-weight:700;margin-bottom:32px}.school-brand span{display:block;font-size:12px;font-weight:400;margin-top:9px;opacity:.7}.school-app aside small{line-height:1.9}.school-main{max-width:1400px;width:100%;padding:40px}.school-main header{display:flex;justify-content:space-between;gap:16px}.school-main header p{font-size:11px;letter-spacing:2px;color:#52778b}.school-main h1{font-size:30px;margin:8px 0}.school-main header span{font-size:14px;color:#607b8d}.school-notice{padding:14px 20px;border:1px solid #d7bd75;border-radius:12px;background:#fffae9;font-size:13px}.school-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px;margin:28px 0}.school-card,.school-stats article{background:rgba(255,255,255,.86);border:1px solid white;border-radius:20px;box-shadow:0 8px 30px #124d7410;padding:26px;margin-bottom:24px}.school-stats article:first-child{background:#32824a;color:white}.school-stats span{font-size:13px}.school-stats h2{font-size:28px;margin:18px 0 0}.school-main h2{font-size:20px}.school-app label{display:flex;flex-direction:column;gap:8px;font-size:13px}.school-app input,.school-app select{padding:12px;border:1px solid #bbd2e0;border-radius:9px;background:white;color:#233c2b;width:100%;box-sizing:border-box}.school-app button{cursor:pointer;border:0;border-radius:9px;padding:12px 18px;background:#32824a;color:white}.school-app button:disabled{opacity:.6;cursor:wait}.school-fields{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:18px;gap:18px;margin:18px 0}.school-table{overflow:auto;margin-top:20px}.school-app table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.school-app td,.school-app th{padding:14px 10px;border-bottom:1px solid #e3edf4;white-space:nowrap}.school-app th{color:#648096;font-size:12px}.school-heading{display:flex;align-items:center;justify-content:space-between}.school-error{background:#ffeaea;color:#8f1e28}.school-error,.school-success{padding:18px;border-radius:12px}.school-success{background:#e0f5eb;color:#166044}@media(max-width:850px){.school-app{display:block}.school-app aside{width:auto;padding:20px;flex-direction:row;flex-wrap:wrap;align-items:center;gap:16px}.school-brand{margin:0;font-size:20px}.school-app aside small{display:none}.school-main{padding:20px;box-sizing:border-box}.school-stats{grid-template-columns:1fr}.school-stats article{margin:0}.school-fields{grid-template-columns:1fr}.school-main header{align-items:flex-start}.school-main h1{font-size:24px}}@media print{.school-app aside,.school-main button,.school-main form,.school-notice{display:none}.school-app,.school-card{background:white;box-shadow:none}.school-main{padding:0}.school-table{overflow:visible}.school-app td{white-space:normal;overflow-wrap:anywhere}.school-stats{display:none}}.school-print-report .school-main>:not(#reports){display:none!important}@media print{body.school-print-report .school-main>#reports{display:block!important}}.school-confirm-dialog{max-width:480px;border:0;border-radius:20px;background:white;color:#233c2b;padding:28px;box-shadow:0 16px 80px #001a3366}.school-confirm-dialog::-webkit-backdrop{background:#052c4bbb}.school-confirm-dialog::backdrop{background:#052c4bbb}.school-confirm-dialog p{line-height:1.7}.school-confirm-dialog button{border:0;border-radius:9px;padding:12px 18px;background:#32824a;color:white;cursor:pointer}.school-app{background:#f6f9f3;--ink:#233c2b;--ocean:#32824a;color:var(--ink)}.school-app aside{background:#fff;color:#233c2b;border-right:1px solid #e2e8f0;width:216px;gap:20px;padding:30px 22px}.school-app aside a{color:#334155;font-size:14px}.school-app aside .school-brand{color:#32824a;font-size:24px}.school-brand span{color:#64748b;opacity:1}.school-main{padding:32px;min-width:0}.school-main header{margin-bottom:24px}.school-main h1{font-size:28px;letter-spacing:-.6px}.school-main header p{color:#32824a;letter-spacing:1px}.school-card,.school-stats article{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:none}.school-stats article:first-child{background:#fff;color:#233c2b}.school-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:24px 0}.school-stats article{margin-bottom:0}.school-stats h2{color:#256b3b;font-size:26px;overflow-wrap:anywhere}.school-app button,.school-confirm-dialog button{background:#32824a;border-radius:7px;font-weight:600}.school-app button:hover{background:#256b3b}.school-app a:focus-visible,.school-app button:focus-visible,.school-app input:focus-visible,.school-app select:focus-visible,.school-app summary:focus-visible{outline:3px solid #a3cf8b;outline-offset:3px}.school-app form button{margin-top:14px}.school-app input,.school-app select{border-color:#cbd5e1;border-radius:7px;min-height:44px}.school-app td,.school-app th{padding:13px 10px}.school-app th{background:#f7faf4;color:#475569}.school-app p{line-height:1.65;font-size:14px}.school-notice{background:#edf8e9;border-color:#c6e2b5;color:#285d36;border-radius:8px}.school-app details{border-top:1px solid #e2e8f0;padding:18px 0}.school-app summary{cursor:pointer;font-weight:600}.school-app section form+form{border-top:1px solid #e2e8f0;margin-top:24px;padding-top:12px}@media(max-width:850px){.school-app aside{width:auto;border-right:0;border-bottom:1px solid #e2e8f0;padding:18px;gap:16px}.school-app aside .school-brand{font-size:21px}.school-main{padding:18px}.school-card{padding:20px}.school-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.school-stats h2{font-size:21px}.school-stats article{padding:17px}.school-main header button{padding:10px}.school-fields{gap:14px}}@media(max-width:400px){.school-stats{grid-template-columns:1fr}.school-main header{flex-wrap:wrap}.school-app aside a{font-size:13px}}@media print{.school-app aside,.school-main details{display:none}.school-app,.school-card{background:#fff;border:0}body.school-print-ledger .school-main>:not(#ledger){display:none!important}body.school-print-ledger .school-main>#ledger{display:block!important}}.school-app #savings table{min-width:0;table-layout:fixed}.school-app #savings th:first-child{width:35%}.school-app #savings td{white-space:normal;overflow-wrap:anywhere}.school-app #savings td input{min-width:0;padding:10px 7px}.school-app input[aria-invalid=true]{border:2px solid #dc2626;background:#fff1f2}.school-app aside a[aria-current=page]{color:#256b3b;font-weight:700}.school-app #savings td small{color:#64748b;margin-top:5px}@media(max-width:400px){.school-app #savings td,.school-app #savings th{padding:10px 5px}.school-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.school-app .savings-entry{padding:28px}.savings-title{display:flex;gap:14px;align-items:center;margin-bottom:24px}.savings-title h2{margin:0 0 6px;font-size:24px}.savings-title p{margin:0;color:#64748b}.savings-icon{display:grid;place-items:center;background:#edf8e9;color:#32824a;width:48px;height:48px;border-radius:14px;font-size:28px;flex-shrink:0}.school-app .savings-entry .school-fields{background:#f7faf4;padding:16px;border:1px solid #e2e8f0;border-radius:10px}.school-app #savings th{white-space:normal;overflow-wrap:anywhere}.school-app .rupiah-input{display:flex;align-items:center;gap:6px;background:#f7faf4;border:1px solid #cbd5e1;border-radius:9px;padding:0 10px}.school-app .rupiah-input:focus-within{background:#fff;border-color:#32824a;box-shadow:0 0 0 3px #d9edce}.school-app .rupiah-input>span{font-size:12px;color:#64748b}.school-app #savings .rupiah-input input{border:0;background:transparent;padding:12px 0;outline:none;box-shadow:none;font-size:16px;font-weight:600;text-align:right}.savings-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#edf8e9;border-radius:12px;padding:20px;margin-top:24px}.savings-footer small,.savings-footer span{display:block;color:#64748b;font-size:12px}.savings-footer strong{display:block;color:#256b3b;font-size:26px;margin:5px 0}.savings-actions{display:flex;gap:10px;flex-wrap:wrap}.school-app .savings-actions button{margin:0}.school-app .school-secondary{background:#fff;color:#475569;border:1px solid #cbd5e1}.school-app .savings-tip{margin-bottom:0}.savings-history .school-heading span,.school-app .savings-tip{font-size:12px;color:#64748b}.savings-history small{display:block;color:#64748b;margin-top:5px}.school-app .school-edit-button{background:#edf8e9;color:#256b3b;padding:9px 16px}.school-app .school-edit-dialog{width:min(480px,calc(100vw - 32px));background:#fff;color:#233c2b;border:1px solid #e2e8f0;border-radius:16px;padding:24px;box-sizing:border-box}.school-edit-dialog::-webkit-backdrop{background:#0f172a66}.school-edit-dialog::backdrop{background:#0f172a66}.school-app .school-edit-dialog .school-fields{grid-template-columns:1fr}.school-app .edit-hint{font-size:12px;color:#64748b}@media(max-width:600px){.school-app .savings-entry{padding:16px}.savings-title h2{font-size:22px}.savings-footer{align-items:stretch;flex-direction:column}.savings-actions button:first-child{flex:1 1}.school-app .rupiah-input{padding:0 6px;gap:3px}.savings-history .school-heading{align-items:flex-start;gap:8px;flex-direction:column}}.school-app .rupiah-input>span{flex-shrink:0;white-space:nowrap}.school-app #savings .rupiah-input input{width:0;flex:1 1}.school-app .savings-entry .school-fields{grid-template-columns:1fr 1fr}.savings-search{grid-column:1/-1}.school-app #savings th:first-child{width:34%}.school-app #savings th:last-child{width:38%}.school-app #savings .savings-filled td{background:#f0f9eb}.school-app .school-secondary:hover{background:#edf5e7;color:#285d36}.school-app .school-edit-button:hover{background:#d9edce;color:#285d36}.school-app aside .school-profile{padding:0;border:0;position:relative}.school-profile summary{padding:12px;border-radius:8px;color:#42634a;font-size:14px}.school-profile>div{background:white;border:1px solid #d9e7d2;padding:16px;border-radius:12px;display:grid;grid-gap:12px;gap:12px;min-width:160px}.school-profile span{font-size:13px;overflow-wrap:anywhere}.school-app .school-profile button{background:#edf8e9;color:#285d36}.school-app input:focus-visible{outline-color:#a3cf8b}@media(max-width:850px){.school-profile>div{position:absolute;right:0;top:100%;z-index:20;box-shadow:0 10px 30px #233c2b18}.school-app aside{gap:12px}.school-app aside .school-brand{flex-basis:100%;margin-bottom:0}.school-app aside .school-profile{margin-left:auto}.school-app aside a[aria-current=page]{background:#edf8e9;border-radius:8px;padding:10px 12px}}@media(max-width:600px){.school-app .savings-entry .school-fields{grid-template-columns:1fr 1fr;padding:12px;gap:12px}.school-app #savings{padding-bottom:140px}.school-app .savings-footer{position:fixed;bottom:0;left:0;right:0;margin:0;z-index:15;border-top:1px solid #c6e2b5;border-radius:16px 16px 0 0;padding:12px 16px max(12px,env(safe-area-inset-bottom));box-shadow:0 -4px 20px #233c2b0d;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center}.savings-footer strong{font-size:21px;overflow-wrap:anywhere}.savings-footer .savings-actions{flex-direction:column;gap:6px}.school-app .savings-footer .school-secondary{padding:6px;background:transparent;border:0;font-size:12px}.school-app .savings-footer button{margin:0;padding:12px}.school-app .savings-footer small{max-width:200px}.school-app .savings-entry{padding:14px}.school-app .savings-title p{font-size:13px}}@media print{.school-app .savings-footer{position:static;box-shadow:none}.school-app #savings{padding-bottom:0}}.school-app .entry-note{border:0;padding:6px 0 0}.school-app .entry-note summary{font-size:12px;font-weight:400;color:#54735b}.school-app .entry-note p{white-space:normal;max-width:280px;margin:6px 0;font-size:12px}.school-app .savings-history table{min-width:0}.school-app .savings-history td{white-space:normal;overflow-wrap:anywhere}.school-app .school-edit-button{white-space:nowrap;overflow-wrap:normal}@media(max-width:600px){.school-app #savings{padding-bottom:0}.school-app .school-main:has(#savings){padding-bottom:160px}.school-app .savings-history{padding:14px}.school-app .savings-history td,.school-app .savings-history th{padding:12px 5px}.school-app .savings-history th:last-child{width:48px}.school-app .savings-history .school-edit-button{padding:9px 10px}.school-app .savings-history th{font-size:10px}}body:has(.school-app){background:#edf0eb}.school-app:has(>aside){max-width:1440px;min-height:calc(100vh - 64px);margin:32px auto;padding:24px;gap:28px;box-sizing:border-box;background:#fff;border-radius:30px;box-shadow:0 14px 50px #24352a08}.school-app aside{width:220px;border:0;border-radius:24px;background:#f7f8f5;padding:28px 18px;gap:10px;box-sizing:border-box}.school-app aside .school-brand{font-size:23px;padding:0 12px;margin-bottom:26px}.school-app aside>a:not(.school-brand){padding:14px 16px;border-radius:30px;display:flex;align-items:center;gap:12px;font-size:14px}.school-app aside>a:not(.school-brand):before{content:"◇";font-size:20px;color:#7a927d;width:24px;text-align:center}.school-app aside>a[aria-current=page]{background:#fff;color:#28673c;box-shadow:0 3px 12px #36543b05}.school-app aside>a[aria-current=page]:before{background:#d6edc9;color:#326c40;border-radius:50%;padding:4px}.school-app aside small{padding:16px 12px;margin-top:auto;color:#748276;font-size:11px}.school-app .school-signout{background:transparent;color:#526657;text-align:left;padding:14px 16px}.school-main{padding:8px 4px;max-width:none}.school-main header{margin-bottom:30px;align-items:center}.school-main header h1{font-size:32px;font-weight:600;letter-spacing:-1px}.school-main header p{font-size:10px;color:#6b8771;margin:0}.school-main header span{color:#819085}.school-account{display:flex;align-items:center;gap:10px;border-radius:32px;background:#f7f8f5;padding:8px 14px 8px 8px;font-size:12px;text-decoration:none;white-space:nowrap;color:#334c38}.school-avatar{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border-radius:50%;background:#dcedd4;color:#347044!important;font-weight:700}.school-card,.school-stats article{border:0;background:#f8f9f6;border-radius:24px;padding:24px}.school-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.school-stats article:first-child{background:#f8f9f6}.school-stats span{font-size:12px;color:#65766a}.school-stats h2{color:#203c28;font-weight:500;font-size:30px;margin:24px 0 0}.school-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px}.school-dashboard-grid .school-card{margin:0;min-width:0}.school-balance-hero{background:linear-gradient(130deg,#d8edc5,#a5ce8f)!important;position:relative;overflow:hidden;min-height:280px;color:#26482f}.school-balance-hero>span{position:relative;z-index:1;font-size:13px}.school-balance-hero h2{font-size:38px;letter-spacing:-1px;position:relative;z-index:1;margin:40px 0 12px;overflow-wrap:anywhere}.school-balance-hero p{max-width:270px;position:relative;z-index:1}.school-balance-hero a{display:inline-flex;gap:30px;background:#fff;border-radius:28px;padding:13px 20px;text-decoration:none;color:#326c40;position:relative;z-index:1;font-size:13px;font-weight:600}.hero-orbit{width:230px;height:230px;right:-65px;top:40px}.hero-orbit,.hero-orbit:after{border:1px solid #ffffff70;border-radius:50%;position:absolute}.hero-orbit:after{content:"";width:150px;height:150px;left:-65px;top:105px}.school-activity{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #e4eadf;padding:18px 0;font-size:13px}.school-activity small{display:block;color:#829087;margin-top:6px;font-size:11px}.school-activity strong{font-weight:600;color:#387447;white-space:nowrap}.school-heading a{font-size:12px;color:#57745d;text-decoration:none}.school-profile-info{display:flex;gap:16px;align-items:center;padding:16px 0}.school-profile-info p{margin:6px 0;overflow-wrap:anywhere}.school-profile-info small{color:#7b8c7e}.school-app .school-danger,.school-app .school-danger:hover{background:#b84242;color:#fff}.school-app .school-danger-link{background:transparent;color:#a73535;text-decoration:underline;padding-left:0}.school-app .school-danger-link:hover{background:#fff0ed;color:#a73535}.school-app #students table{min-width:0}.school-app #students td{overflow-wrap:anywhere;white-space:normal}.school-app #students .school-edit-button{white-space:nowrap}.school-app .school-edit-dialog{max-height:90vh;overflow:auto}@media(max-width:1100px){.school-app:has(>aside){margin:16px;gap:18px;padding:18px}.school-app aside{width:190px}.school-main header h1{font-size:27px}.school-stats h2{font-size:24px}.school-account>span:last-child{display:none}}@media(max-width:850px){.school-app:has(>aside){margin:10px;padding:12px;display:block;border-radius:24px}.school-app aside{width:100%;padding:16px;display:flex;flex-direction:row;flex-wrap:wrap;gap:6px;margin-bottom:24px}.school-app aside .school-brand{flex-basis:100%;margin:0 0 12px;padding:0}.school-app aside>a:not(.school-brand){font-size:12px;padding:9px 12px;gap:5px}.school-app aside>a:not(.school-brand):before{display:none}.school-app .school-signout{font-size:11px;padding:9px 12px;margin-left:auto}.school-main{padding:4px}.school-main header{gap:10px}.school-main header h1{font-size:25px}.school-main header span{font-size:12px}.school-account{padding:0;background:transparent}.school-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.school-stats article{padding:20px}.school-dashboard-grid{grid-template-columns:1fr}.school-card{padding:20px}.school-main header p{font-size:9px}.school-main header .school-avatar{width:34px;height:34px}}@media print{.school-app:has(>aside),body:has(.school-app){background:white;margin:0;padding:0;border-radius:0;box-shadow:none}.school-account{display:none}}.school-app .school-settings-section{border-top:1px solid #dfe7da;padding:24px 0 4px;margin-top:24px}.school-settings-section h3{font-size:18px;margin:0 0 18px}.school-distribution{margin-top:24px}.school-chart-scope{background:#e8f1e0;color:#42664a;border-radius:30px;padding:7px 12px;font-size:11px}.school-chart-caption{color:#748277}.school-chart-grid{display:grid;grid-template-columns:minmax(190px,1fr) minmax(0,1.2fr);grid-gap:32px;gap:32px;align-items:center;margin:28px 0}.school-chart-figure{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:0}.school-pie{width:min(220px,100%);aspect-ratio:1;border-radius:50%;border:6px solid #fff;box-shadow:0 4px 16px #284b3210}.school-chart-figure>strong{font-size:24px;color:#2e5b3a;overflow-wrap:anywhere;max-width:100%;text-align:center}.school-chart-figure>span{font-size:12px;color:#748277}.school-chart-item{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #e2e8dc;font-size:13px}.school-chart-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.school-chart-item>div{flex:1 1;min-width:0;overflow-wrap:anywhere}.school-chart-item small{font-size:11px;color:#718074}.school-chart-item strong,.school-chart-item>div small{display:block;margin-top:4px}.school-chart-item strong{font-weight:600;color:#345e3d}.school-chart-extremes{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.school-chart-extremes article{background:#edf4e6;border-radius:16px;padding:20px;min-width:0;overflow-wrap:anywhere}.school-chart-extremes article>span{font-size:12px;color:#58705a}.school-chart-extremes strong{display:block;margin-top:10px;font-size:24px;color:#2f5738}.school-chart-extremes p{margin:8px 0}.school-chart-extremes small{color:#718074;font-size:11px}.school-app .school-chart-note{font-size:11px;color:#718074;line-height:1.7}@media(max-width:600px){.school-chart-grid{gap:20px}.school-chart-extremes,.school-chart-grid{grid-template-columns:1fr}.school-distribution .school-heading{align-items:flex-start;gap:10px}.school-distribution .school-heading h2{margin-top:4px}.school-chart-scope{white-space:nowrap}.school-pie{width:190px}}