.curriculum-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.curriculum-nav a{padding:10px 14px;border-radius:12px;background:#e8f4ee;color:#064c38;font-weight:800;text-decoration:none;border:1px solid #9dcab8}.curriculum-hero{background:linear-gradient(130deg,#064c38,#138860);color:#fff}.curriculum-filter{display:grid;grid-template-columns:1.2fr 1.2fr 1fr auto;gap:12px;align-items:end}.curriculum-summary{display:flex;justify-content:space-between;align-items:center}.curriculum-table-wrap,.master-table{overflow:auto}.curriculum-table,.master-table table{width:100%;border-collapse:collapse}.curriculum-table th,.curriculum-table td,.master-table th,.master-table td{padding:10px;border-bottom:1px solid #d7e4de;text-align:left;vertical-align:top}.curriculum-table thead,.master-table thead{background:#e8f4ee}.curriculum-table small{display:block;color:#63756e}.row-actions{display:flex;gap:6px}.row-actions a{padding:7px 10px;border:1px solid #84b7a2;border-radius:8px;text-decoration:none}.curriculum-edit{display:grid;gap:12px}.form-grid.three{grid-template-columns:repeat(3,1fr)}.form-grid.four{grid-template-columns:repeat(4,1fr)}.compact-row{border-bottom:1px dashed #c8d9d1;padding-bottom:10px;margin-bottom:10px}.sticky-save{position:sticky;bottom:8px;display:flex;justify-content:flex-end;gap:10px;background:rgba(255,255,255,.94);padding:10px;border:1px solid #b9d4c8;border-radius:12px;z-index:4}.curriculum-lock{text-align:right;margin:10px 0}.curriculum-master-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.switches{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0}.switches label{background:#eef7f3;padding:7px;border-radius:8px}.master-table{max-height:430px;margin-top:12px}.master-table thead{position:sticky;top:0;z-index:2}.master-table form{margin:0}@media(max-width:850px){.curriculum-filter,.curriculum-master-grid,.form-grid.three,.form-grid.four{grid-template-columns:1fr}.curriculum-summary{align-items:flex-start;gap:10px;flex-direction:column}.row-actions{flex-direction:column}}
.ledger-toolbar{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.ledger-toolbar span{margin-right:auto}.ledger-wrap{overflow:auto;max-height:72vh;padding:0}.ledger-table{border-collapse:separate;border-spacing:0;min-width:max-content;font-size:.82rem}.ledger-table th,.ledger-table td{padding:7px;border-right:1px solid #d8e6df;border-bottom:1px solid #d8e6df;text-align:center}.ledger-table thead th{position:sticky;top:0;background:#07563f;color:#fff;z-index:3}.ledger-table th:nth-child(-n+3),.ledger-table td:nth-child(-n+3){position:sticky;background:#fff;z-index:2}.ledger-table th:nth-child(1),.ledger-table td:nth-child(1){left:0}.ledger-table th:nth-child(2),.ledger-table td:nth-child(2){left:42px}.ledger-table th:nth-child(3),.ledger-table td:nth-child(3){left:125px;text-align:left;min-width:190px}.ledger-table thead th:nth-child(-n+3){background:#07563f;z-index:5}.ledger-table small{display:block}.subject-head{cursor:pointer}.student-profile{border:0;background:none;color:#07563f;font-weight:800;text-align:left;text-decoration:underline}.rank-control{display:flex;gap:4px}.rank-control input{width:55px}.ledger-dialog{width:min(1050px,94vw);max-height:90vh;border:0;border-radius:18px;padding:24px}.ledger-dialog::backdrop{background:#032a20aa}.dialog-close{float:right}.profile-summary,.profile-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px}.profile-summary b,.metric{padding:12px;border:1px solid #b9d9cc;border-radius:12px;background:#eff8f4}.metric{text-align:left}.metric strong,.metric small{display:block}.profile-scores{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-list article{display:flex;flex-wrap:wrap;gap:12px;padding:10px;border-bottom:1px solid #d9e7e1}.detail-list span{min-width:120px}.detail-list small{display:block;color:#5d7169}@media(max-width:700px){.profile-scores{grid-template-columns:1fr}.ledger-dialog{padding:14px}}@media print{.curriculum-nav,.curriculum-filter,.ledger-toolbar button,.sticky-save,.rank-control button,.dialog-close,form[action*=ranking]{display:none!important}.ledger-wrap{max-height:none;overflow:visible}.ledger-table{font-size:7pt}.ledger-table th,.ledger-table td{position:static!important}}
