.performance-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.performance-head h2{margin:6px 0}.performance-head label,.payroll-inputs label{display:grid;gap:7px;color:#55708f;font-size:14px}.performance-head input{min-width:180px}.performance-table input{min-width:120px;width:100%}.performance-table td>strong,.performance-table td>small,.teacher-payroll td>strong,.teacher-payroll td>small{display:block}.performance-ranking{display:grid;gap:12px;margin:18px 0}.performance-ranking article{display:grid;grid-template-columns:42px minmax(120px,1.2fr) repeat(4,minmax(110px,1fr));align-items:center;gap:14px;padding:15px 18px;border:1px solid #dbe5ef;border-radius:16px;background:linear-gradient(135deg,#fff,#f7fafc)}.performance-ranking article b{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#0d477d;color:#fff}.performance-ranking article span{color:#52708e}.teacher-payroll-grid{display:grid;gap:20px}.teacher-payroll{padding:24px}.teacher-payroll .panel-head{align-items:center}.payroll-inputs{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:16px;margin:20px 0}.teacher-payroll input{width:100%}.teacher-payroll .dialog-actions{margin-top:18px}.rank-labels{font-size:12px;color:#7890a8}.profit-positive{color:#12705d}.profit-negative{color:#c33}
.performance-month-picker{display:flex;gap:10px;padding:12px;border:1px solid #d7e2ed;border-radius:16px;background:#fff}.performance-month-picker label{min-width:110px}.performance-month-picker select{font-weight:700}.performance-focus-summary{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:14px;margin-bottom:22px}.performance-focus-summary article{padding:20px;border:1px solid #dce6ef;border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(21,51,82,.06)}.performance-focus-summary span{display:block;color:#627d98;margin-bottom:10px}.performance-focus-summary strong{font-size:28px;color:#082e59}.performance-focus-summary .ratio{background:#eef6ff;border-color:#bcd9f4}.performance-focus-summary .difference{background:#effaf5;border-color:#bde3d2}.performance-key-metrics{display:grid;grid-template-columns:repeat(2,minmax(125px,1fr));gap:8px}.performance-key-metrics span{padding:10px 12px;border-radius:12px;background:#f2f7fb;color:#67809a;font-size:12px}.performance-key-metrics strong{display:block;margin-top:5px;color:#073866;font-size:19px}.teacher-profit{display:grid;gap:5px;text-align:right}.teacher-profit strong{font-size:20px}
.performance-view-switch{display:flex;align-items:center;gap:8px;margin:0 0 20px;padding:8px;border:1px solid #d8e4ef;border-radius:16px;background:#fff}.performance-view-switch button{border:0;border-radius:11px;background:transparent;color:#496783;padding:11px 18px;font-weight:700}.performance-view-switch button.active{background:#0d477d;color:#fff;box-shadow:0 7px 18px rgba(13,71,125,.2)}.performance-view-switch button:disabled{opacity:.35}.performance-view-switch span{margin-left:auto;color:#70869c;font-size:13px}.payroll-inputs small,.teacher-payroll td small{color:#8093a7;margin-top:4px}.teacher-summary-strip{display:flex;justify-content:space-between;gap:18px;margin-top:16px;padding:14px 16px;border-radius:14px;background:#f2f7fb;color:#315675;font-weight:600}
.nav-reminder-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:auto;padding:0 6px;border-radius:999px;background:#ef4e4e;color:#fff;font-size:12px;font-weight:800;line-height:1;box-shadow:0 4px 12px rgba(239,78,78,.32)}.nav-group summary{display:flex;align-items:center;gap:8px}.nav button .nav-reminder-badge{margin-left:auto}.mobile-nav .nav-reminder-badge{margin-left:6px}
.performance-source{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding:14px 18px;border-radius:15px;background:#fff7e8;border:1px solid #f0d49d;color:#79551c}.performance-source.automatic{background:#eaf8f2;border-color:#b7ddcc;color:#17614e}.performance-source span{font-size:14px}.performance-focus-summary.five{grid-template-columns:repeat(3,minmax(160px,1fr))}.performance-focus-summary .refund{background:#fff1f1;border-color:#f1caca}.performance-focus-summary .refund strong{color:#b93636}.automatic-performance{display:grid;gap:5px;padding:10px 12px;border-radius:13px;background:#edf8f3}.automatic-performance strong{font-size:21px;color:#12624e}.automatic-performance small{color:#5d7f74}.performance-transactions td{padding-top:0!important;background:#f8fbfd}.performance-transactions details{border-top:1px dashed #cbd9e5;padding:10px 4px}.performance-transactions summary{cursor:pointer;color:#20577e;font-weight:700}.transaction-list{display:grid;gap:8px;margin-top:12px}.transaction-row{display:grid;grid-template-columns:62px minmax(90px,1fr) minmax(150px,1.5fr) 110px 110px minmax(130px,auto);align-items:center;gap:10px;padding:10px 12px;border:1px solid #dce6ee;border-radius:12px;background:#fff}.transaction-row.refund{background:#fff8f8}.transaction-row b{color:#14654f}.transaction-row.refund b{color:#bf3434}
@media(max-width:900px){.performance-head{align-items:stretch;flex-direction:column}.performance-month-picker{align-self:flex-start}.performance-focus-summary,.performance-focus-summary.five{grid-template-columns:repeat(2,1fr)}.performance-ranking article{grid-template-columns:38px 1fr 1fr}.performance-ranking article span{font-size:13px}.payroll-inputs{grid-template-columns:1fr}.performance-table{min-width:1080px}.performance-view-switch,.teacher-summary-strip{align-items:stretch;flex-direction:column}.performance-view-switch span{margin-left:0}.transaction-row{grid-template-columns:70px 1fr 1fr;min-width:700px}}@media(max-width:560px){.performance-focus-summary,.performance-focus-summary.five{grid-template-columns:1fr}.performance-month-picker{width:100%}.performance-month-picker label{min-width:0;flex:1}.performance-source{align-items:flex-start;flex-direction:column}}
.performance-focus-summary.extended{grid-template-columns:repeat(4,minmax(150px,1fr))}@media(max-width:900px){.performance-focus-summary.extended{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.performance-focus-summary.extended{grid-template-columns:1fr}}
