@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap";body{color:#162633;background:#eef1ef;margin:0;font-family:DM Sans,sans-serif}.desk-shell{grid-template-columns:245px 1fr;height:100vh;display:grid;overflow:hidden}.desk-sidebar{color:#fff;background:#10283a;flex-direction:column;padding:22px 16px;display:flex}.desk-brand{border-bottom:1px solid #ffffff1c;align-items:center;gap:12px;padding:0 7px 24px;display:flex}.desk-brand>b{color:#d7ae32;border:1px solid #d7ae32;place-items:center;width:34px;height:34px;font-family:Georgia;font-size:22px;display:grid}.desk-brand span{font-weight:600}.desk-brand small{color:#9eacb5;margin-top:4px;font:10px DM Mono;display:block}.nav-label{letter-spacing:.14em;color:#8295a1;margin:20px 9px 8px;font:9px DM Mono}.desk-sidebar nav{gap:3px;display:grid}.desk-sidebar nav button{color:#bdc8cf;text-align:left;background:0 0;border:0;border-radius:4px;justify-content:space-between;padding:9px 11px;font:12px DM Sans;display:flex}.desk-sidebar nav button:hover,.desk-sidebar nav button.active{color:#10283a;background:#fff}.desk-sidebar nav button span{font:10px DM Mono}.temporary{border-top:1px solid #ffffff1c;gap:5px;margin-top:auto;padding:16px 8px 0;display:grid}.temporary b{color:#d7ae32;letter-spacing:.1em;font:9px DM Mono}.temporary span,.temporary small{color:#9eacb5;font-size:10px}.desk-main{flex-direction:column;min-width:0;padding:25px 30px;display:flex;overflow:hidden}.desk-main>header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.desk-main>header small,.overview>section>small,.editor>small{color:#ae7c22;letter-spacing:.12em;font:10px DM Mono}.desk-main h1{margin:5px 0 0;font:500 28px Georgia}.primary,.dark-button{cursor:pointer;border:0;border-radius:3px;padding:10px 15px;color:#fff!important;background:#10283a!important}.overview{overflow:auto}.overview>section{background:#fff;border-top:3px solid #d7ae32;padding:38px}.overview h2{max-width:550px;margin:12px 0;font:500 34px Georgia}.overview p{color:#68777d;max-width:700px}.overview-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px;display:grid}.overview article{background:#fff;padding:20px;display:grid}.overview article span{color:#68777d;font-size:12px}.overview article b{margin:10px 0 2px;font:32px Georgia}.overview article small{color:#9aa5a9;font:10px DM Mono}.directory{background:#fff;border-top:3px solid #d7ae32;flex-direction:column;min-height:0;display:flex;overflow:hidden}.directory-tools{border-bottom:1px solid #e5e9e7;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.directory-tools p{color:#68777d;margin:0;font-size:11px}.csv-buttons{gap:7px;display:flex}.csv-buttons button,.open,.form-actions button{color:#315362;cursor:pointer;background:#fff;border:1px solid #ccd6d3;border-radius:3px;padding:7px 10px;font:11px DM Sans}.master-table,.receipt-table{min-height:0;overflow:auto}.master-row,.receipt-row{border-bottom:1px solid #edf0ee;align-items:center;gap:10px;min-width:900px;padding:8px 12px;display:grid}.master-row{grid-template-columns:70px repeat(var(--cols,3),minmax(130px,1fr)) 65px}.students{--cols:3}.guardians,.teachers{--cols:4}.skills,.branches,.relationships{--cols:2}.products{--cols:6}.master-row input,.master-row select{color:#162633;background:0 0;border:1px solid #0000;width:100%;min-width:0;padding:7px;font:12px DM Sans}.master-row input:focus,.master-row select:focus{background:#fff;border-color:#d7ae32;outline:0}.master-row input[readonly]{color:#718087}.master-head,.receipt-head{color:#78858a;letter-spacing:.08em;text-transform:uppercase;z-index:1;background:#f7f9f8;font:9px DM Mono;position:sticky;top:0}.receipt-row{grid-template-columns:125px 135px 130px minmax(230px,1fr) 105px 65px 120px;font-size:12px}.receipt-row>span:last-child{gap:5px;display:flex}.pill{color:#a47624}.modal-backdrop{z-index:10;background:#10283acc;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.editor{background:#fff;border-top:3px solid #d7ae32;width:min(720px,100%);max-height:calc(100vh - 40px);padding:24px 28px;position:relative;overflow:auto}.editor h2{margin:6px 0 15px;font:500 25px Georgia}.close{cursor:pointer;background:0 0;border:0;font-size:24px;position:absolute;top:14px;right:17px}.editor form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;display:grid}.editor form>label{color:#68777d;letter-spacing:.06em;text-transform:uppercase;gap:5px;font:9px DM Mono;display:grid}.editor input,.editor select{color:#162633;text-transform:none;background:#fff;border:1px solid #ccd6d3;border-radius:3px;padding:9px 10px;font:12px DM Sans}.compact-picker{border:1px solid #e1e5e2;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;max-height:145px;margin:0;padding:9px;display:grid;overflow:auto}.compact-picker legend{color:#68777d;letter-spacing:.06em;text-transform:uppercase;font:9px DM Mono}.compact-picker label{border:1px solid #edf0ee;align-items:center;gap:8px;padding:6px;font-size:11px;display:flex}.compact-picker label input{width:14px}.compact-picker label span small{color:#899499;display:block}.form-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;margin-top:7px;display:flex}.receipt-editor{width:min(920px,100%)}.receipt-editor form{display:block}.receipt-form-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.receipt-form-grid label{color:#68777d;text-transform:uppercase;gap:5px;font:9px DM Mono;display:grid}.receipt-form-grid .wide{grid-column:1/-1}@media (width<=900px){.desk-shell{grid-template-columns:185px 1fr}.desk-main{padding:18px}.overview-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=650px){.desk-shell{height:auto;display:block;overflow:auto}.desk-sidebar{position:static}.desk-sidebar nav{grid-template-columns:repeat(2,1fr)}.temporary{margin-top:16px}.desk-main{overflow:visible}.overview-grid,.receipt-form-grid,.editor form,.compact-picker{grid-template-columns:1fr}.editor{max-height:calc(100vh - 20px)}}@media print{.desk-sidebar,.desk-main>header,.directory-tools,.receipt-head{display:none!important}.receipt-row:not(:has(.pill)){display:none!important}.desk-shell{display:block}.desk-main{padding:0}.directory{border:0}}*{box-sizing:border-box}html,body{background:#f4f5f2;min-height:100%;margin:0}button,input,select,textarea{font:inherit}
