/* CELAR Gestao 0.28 — one scrollable sidebar and in-place financial workflows */
@media(min-width:741px){
  .sidebar .nav-body{overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;display:block!important}
  .sidebar .side-bottom{position:static!important;bottom:auto!important;z-index:auto!important;margin:22px 0 8px!important;padding-top:6px!important;border-top:1px solid #755883;background:transparent!important}
  .sidebar .side-bottom nav{display:grid}
  .sidebar .nav-body .menu-title{position:static}
}
.sidebar nav a{background:transparent;box-shadow:none}
.sidebar nav a.v28-active{background:#664777}
.v28-sidebar-badge{display:inline-block;margin-left:.45rem;background:#b73838;color:#fff;border-radius:40px;font-size:.72rem;padding:2px 7px;font-weight:750}
.v28-screen{display:grid;gap:1rem;max-width:1240px}
.v28-roster{display:grid;gap:.65rem;min-width:0}
.v28-search{display:grid;gap:.3rem;max-width:510px;margin-bottom:.2rem}
.v28-classroom{margin:0;background:#fff;border:1px solid #dce6df;border-radius:13px;box-shadow:0 3px 15px #244c3709;overflow:hidden}
.v28-classroom>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 19px;color:#3d3150;font-size:1rem;list-style:none}
.v28-classroom>summary::-webkit-details-marker,.v28-student>summary::-webkit-details-marker{display:none}
.v28-classroom>summary:after{content:'⌄';font-size:1.1rem;margin-left:4px}
.v28-classroom[open]>summary:after{content:'⌃'}
.v28-classroom>summary span:first-child{display:flex;flex-direction:column;gap:3px}
.v28-classroom>summary strong{font-size:1.05rem}.v28-classroom>summary small{font-size:.77rem;color:#77847b;font-weight:550}
.v28-classroom[open]>summary{background:#f4f8f4;border-bottom:1px solid #e5ede5}
.v28-roster-count{font-size:.81rem;color:#4b7058;background:#f0f6ef;border-radius:15px;padding:5px 10px;white-space:nowrap}
.v304-classroom-fee{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;padding:12px 14px 6px}.v304-classroom-fee-copy{display:grid;gap:4px}.v304-classroom-fee-copy strong{font-size:1.15rem;color:#1c3150}.v304-classroom-fee-copy small{color:#60746b}.v304-classroom-fee-form{display:grid;grid-template-columns:minmax(180px,230px) auto;gap:10px;align-items:end;justify-items:end}.v304-classroom-fee-form label{display:grid;gap:4px;min-width:220px}.v304-classroom-fee-form .btn{white-space:nowrap}.v304-classroom-fee-form input{margin:0}
.v28-student-list{display:grid;padding:10px 14px 15px;gap:5px}
.v28-student{margin:0;border:1px solid #edf0ed;border-radius:10px;background:white;min-width:0;overflow:hidden}
.v28-student>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;color:#253f34;font-size:.93rem;list-style:none}
.v28-student>summary:hover,.v28-student>summary:focus-visible{background:#eef6ef}
.v28-student[open]>summary{background:#eaf4eb;color:#205738;font-weight:750}
.v28-student-arrow{font-size:.77rem;font-weight:650;color:#2f7c49;white-space:nowrap}
.v28-student[open] .v28-student-arrow{font-size:0}.v28-student[open] .v28-student-arrow:after{content:'Recolher';font-size:.77rem}
.v28-student-form{padding:12px 15px 18px;border-top:1px solid #dee9df;background:#fbfcfb}
.v28-student-form>.micro{display:block;margin-bottom:10px}
.v28-inline-form{display:grid;gap:13px;margin:0;max-width:100%}
.v28-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;min-width:0}
.v28-inline-form label{display:grid;gap:2px;min-width:0}
.v28-inline-form .check{display:flex}
.v28-inline-form .check input{width:auto}
.v28-payment{display:grid;gap:8px;background:#f1f7f2;padding:12px;border-radius:10px;border:1px solid #dae6dc}
.v28-payment[hidden],.v28-student[hidden],.v28-classroom[hidden],#v28-sale-teacher[hidden],#v28-sale-students[hidden]{display:none!important}
.v28-payment-choice{border:1px solid #d7e2d7;border-radius:10px;display:flex;flex-wrap:wrap;gap:12px;padding:10px}
.v28-payment-choice legend{font-weight:750;font-size:.83rem;padding:0 5px}
.v28-payment-choice label{display:flex;align-items:center;gap:7px;cursor:pointer}
.v28-payment-choice input{width:auto;margin:0}
.v28-offers{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}
.v28-offers label{display:flex;align-items:center;gap:8px;border:1px solid #d6e4db;border-radius:10px;padding:11px;cursor:pointer;background:#fff}
.v28-offers label:has(input:checked){background:#e9f8ee;border-color:#4c986a}
.v28-offers label>span{display:grid;gap:4px}
.v28-offers label small{color:#60746b}
.v28-offers input{width:auto;margin:0}
.v28-minor-link{display:block;margin-top:10px;font-size:.83rem}
.v28-student-debt{padding:10px;background:#fff5e7;border:1px solid #f0d7a9;border-radius:10px}
.v28-student-debt>summary{color:#a15d1d}
.v28-student-debt .v28-inline-form{padding-top:10px}
.v28-customer-choice{display:flex;gap:14px;flex-wrap:wrap;border:1px solid #dae5de;border-radius:10px;padding:12px}
.v28-customer-choice label{display:flex;align-items:center;gap:6px;cursor:pointer}
.v28-customer-choice input{width:auto;margin:0}
.v28-shortage-action{background:#fff0e5;color:#934b12;border:1px solid #eac99c;border-radius:9px;padding:9px 13px;font-weight:750;text-align:left}
.v28-shortage-badge{display:inline-block;background:#fff0dc;color:#9c540d;border-radius:8px;padding:3px 6px;margin-left:7px;font-size:.75rem;font-weight:800}
.v28-shortage-dialog{border:0;border-radius:17px;padding:22px;width:min(94vw,610px);max-height:88vh;overflow:auto;box-shadow:0 22px 65px #1a1c1c59}
.v28-shortage-dialog::backdrop{background:#122b2870}
.v28-shortage-list{display:grid;gap:7px;max-height:42vh;overflow:auto;margin:10px 0 16px}
.v28-shortage-list>div{display:grid;grid-template-columns:1.5fr 1fr auto;gap:8px;align-items:center;padding:11px;border:1px solid #e6ece4;border-radius:8px}
.v28-installment-link{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:.78rem;margin:4px 0}
.v28-sale-pane .v28-roster{margin-top:16px}
.v28-student-hub .v27-card-actions details[open],.v27-student-hub .v27-card-actions details[open]{flex-basis:100%;width:100%}
.v27-student-hub .v27-hub-card>details[open]{width:100%;margin:10px 0}
.v27-student-hub .v27-card-actions>.btn{margin-top:0}
.v28-dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
.v28-dashboard-kpis .stat{min-height:126px}
.v28-dashboard-kpis .stat strong{font-size:clamp(1.2rem,2vw,1.8rem)}
.v28-limited-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.v28-limited-stats .stat{min-height:110px}
@media(max-width:1000px){.v28-dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){
 .v28-dashboard-kpis,.v28-limited-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 .v28-classroom>summary{padding:14px 11px}
 .v28-student-list{padding:8px}
 .v304-classroom-fee{grid-template-columns:minmax(0,1fr);padding:10px 8px 4px}
 .v304-classroom-fee-form{grid-template-columns:minmax(0,1fr);justify-items:stretch}
 .v304-classroom-fee-form label{min-width:0}
 .v28-student-form{padding:12px}
 .v28-form-grid{grid-template-columns:minmax(0,1fr)}
 .v28-shortage-list>div{grid-template-columns:1fr}
 .v28-offers{grid-template-columns:minmax(0,1fr)}
 .sidebar .side-bottom{position:static!important;display:block!important;background:transparent!important;margin-top:14px;padding:10px 4px}
 .sidebar .nav-body{overflow:visible}
 .sidebar nav{display:grid;overflow:visible}
}
@media(max-width:420px){.v28-dashboard-kpis,.v28-limited-stats{grid-template-columns:minmax(0,1fr)}}
