/* V144 — targeted runtime visual repair after V143 density/accordion layer. */
/* Preserve branded hero surfaces against older global .portal-card !important rules. */
body .portal-content .finance-hero.portal-card{
  background:linear-gradient(135deg,#0b2a5b 0%,#1558c8 58%,#3182f6 100%)!important;
  color:#fff!important;border-color:transparent!important;
}
body .portal-content .finance-hero.portal-card h1,
body .portal-content .finance-hero.portal-card h2,
body .portal-content .finance-hero.portal-card h3,
body .portal-content .finance-hero.portal-card p,
body .portal-content .finance-hero.portal-card .small{color:#fff!important;opacity:1!important;}
body .portal-content .cbt-hero.portal-card{
  background:linear-gradient(135deg,#07111f 0%,#10315b 48%,#1f6ed4 100%)!important;
  color:#fff!important;border-color:transparent!important;
}
body .portal-content .cbt-hero.portal-card h1,
body .portal-content .cbt-hero.portal-card h2,
body .portal-content .cbt-hero.portal-card h3,
body .portal-content .cbt-hero.portal-card p,
body .portal-content .cbt-hero.portal-card .cbt-hero-kicker,
body .portal-content .cbt-hero.portal-card .cbt-metric-label,
body .portal-content .cbt-hero.portal-card .cbt-metric-value,
body .portal-content .cbt-hero.portal-card .cbt-metric-note{color:#fff!important;opacity:1!important;}

/* Calendar: keep first row clear of sticky/enhanced headers and make dates easy to scan. */
.school-calendar-table-wrap{overflow:auto!important;max-height:min(68vh,760px);padding-top:4px;scrollbar-gutter:stable both-edges;}
.school-calendar-table{min-width:900px!important;border-collapse:separate!important;border-spacing:0 8px!important;}
.school-calendar-table thead th{position:static!important;top:auto!important;z-index:auto!important;}
.school-calendar-table tbody td{padding-top:14px!important;padding-bottom:14px!important;vertical-align:middle!important;}
.school-calendar-table tbody td:first-child{min-width:132px!important;white-space:nowrap!important;font-variant-numeric:tabular-nums;}

/* ID cards: stop narrow columns from crushing student names / upload controls. */
.idcards-generated-table-wrap{overflow:auto!important;max-height:min(70vh,820px);scrollbar-gutter:stable both-edges;}
.idcards-generated-table{min-width:1640px!important;table-layout:fixed!important;}
.idcards-generated-table thead th{position:sticky;top:0;z-index:4;background:#f8fbff!important;}
.idcards-generated-table th,.idcards-generated-table td{vertical-align:middle!important;padding:12px 11px!important;overflow-wrap:normal!important;word-break:normal!important;}
.idcards-generated-table th:nth-child(1),.idcards-generated-table td:nth-child(1){width:220px!important;min-width:220px!important;}
.idcards-generated-table th:nth-child(2),.idcards-generated-table td:nth-child(2){width:100px!important;}
.idcards-generated-table th:nth-child(3),.idcards-generated-table td:nth-child(3){width:160px!important;}
.idcards-generated-table th:nth-child(4),.idcards-generated-table td:nth-child(4){width:120px!important;}
.idcards-generated-table th:nth-child(5),.idcards-generated-table td:nth-child(5){width:125px!important;}
.idcards-generated-table th:nth-child(6),.idcards-generated-table td:nth-child(6){width:105px!important;}
.idcards-generated-table th:nth-child(7),.idcards-generated-table td:nth-child(7){width:300px!important;}
.idcards-generated-table th:nth-child(8),.idcards-generated-table td:nth-child(8){width:300px!important;}
.idcards-generated-table th:nth-child(9),.idcards-generated-table td:nth-child(9){width:130px!important;}
.idcards-generated-table td:first-child{font-weight:850;white-space:normal!important;line-height:1.25!important;}
.idcards-generated-table form{min-width:270px;}

/* Manual premium details blocks used where a long data surface needs deterministic behaviour. */
.v144-details{border:1px solid #dbe7f6;border-radius:22px;background:#fff;box-shadow:0 14px 34px rgba(15,23,42,.06);overflow:hidden;}
.v144-details>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;font-weight:900;color:#0f172a;background:linear-gradient(180deg,#fff,#f8fbff);}
.v144-details>summary::-webkit-details-marker{display:none}.v144-details>summary::after{content:'⌄';display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid #c7d8f2;border-radius:12px;color:#174ea6;background:#fff;transition:transform .2s ease;}.v144-details[open]>summary::after{transform:rotate(180deg)}
.v144-details-body{padding:0 16px 16px;}
body.theme-dark .v144-details{background:#0f172a;border-color:#25344a}body.theme-dark .v144-details>summary{background:#101c2d;color:#e5eefc}
@media(max-width:768px){.idcards-generated-table{min-width:1500px!important}.school-calendar-table-wrap,.idcards-generated-table-wrap{max-height:62vh}.v144-details>summary{padding:14px 15px}}
