/* Shared header for all portal pages. Change this component, not per-page copies. */
:root{--school-nav-blue:#1863b5;--school-nav-blue-hover:#124d8e}
body{border-top:0}
header.school-header{background:#fff;border-top:4px solid #be1e2d;border-bottom:1px solid #e7e7eb;padding:0}
.school-header .school-header-inner{box-sizing:border-box;max-width:1400px;margin:0 auto;padding:25px 36px;display:flex;align-items:center;gap:22px}
.school-header .school-header-logo{width:80px;height:80px;object-fit:contain;border-radius:50%;flex:none}
.school-header .school-header-brand{flex:1;min-width:0;margin:0;max-width:none}
.school-header .school-header-name{font:600 13px/1.5 Arial,"Segoe UI",sans-serif;color:#73737b;margin:0 0 7px;letter-spacing:.15px}
.school-header .school-page-title{font:700 28px/1.2 Arial,"Segoe UI",sans-serif;letter-spacing:-.8px;color:#1e1e23;margin:0 0 7px;overflow-wrap:anywhere}
.school-header .school-header-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font:13px/1.5 Arial,sans-serif;color:#73737b;margin:0;max-width:none}
.school-header .badge{display:inline-block;margin:0;padding:6px 10px;border-radius:20px;background:#fff1d6;color:#805400;font:600 12px/1.5 Arial,sans-serif}
.school-header .school-header-actions{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex:none;width:330px;margin:0;max-width:none}
.school-header .school-header-navigation{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;margin:0}
.school-header .school-nav-button,.school-header .school-header-functions a,.school-header .school-header-functions button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:10px 12px;border:1px solid #be1e2d;border-radius:7px;font:600 12px/1.4 Arial,"Segoe UI",sans-serif;text-decoration:none;text-align:center;background:#fff;color:#be1e2d;margin:0}
.school-header .school-home{margin-left:auto;width:190px;white-space:nowrap;background:var(--school-nav-blue);border-color:var(--school-nav-blue);color:#fff}
.school-header .school-home:hover{background:var(--school-nav-blue-hover);border-color:var(--school-nav-blue-hover)}
.school-header .school-back{background:white;border-color:var(--school-nav-blue);color:var(--school-nav-blue)}
.school-header .school-back:hover{background:#eef5fc}
.school-header .school-back span{font-size:20px;font-weight:400;line-height:16px}
.school-header a:focus-visible,.school-header button:focus-visible{outline:3px solid #1863b580;outline-offset:3px}
.school-header .school-header-functions{display:flex;justify-content:flex-end;gap:10px;width:100%;max-width:none;margin:0}
.school-header .school-header-functions .portal-entry{flex:1;width:auto}
.school-header .school-header-functions .portal-entry-primary{background:#be1e2d;color:#fff}
.school-header .school-header-functions a:hover,.school-header .school-header-functions button:hover{background:#fff1f2}
.school-header .school-header-functions .portal-entry-primary:hover{background:#981625}
.school-header .school-header-functions form{margin:0;max-width:none}
table a,table a:hover,table a:visited{text-decoration:none}
@media(max-width:900px){.school-header .school-header-inner{gap:18px;padding:22px 24px;flex-wrap:wrap}.school-header .school-header-actions{width:100%;margin-left:auto}.school-header .school-header-navigation,.school-header .school-header-functions{max-width:330px}.school-header .school-page-title{font-size:26px}}
@media(max-width:500px){.school-header .school-header-inner{padding:20px;gap:14px}.school-header .school-header-logo{width:62px;height:62px}.school-header .school-header-name{font-size:11px}.school-header .school-page-title{font-size:23px}.school-header .school-header-actions{gap:10px}.school-header .school-header-navigation,.school-header .school-header-functions{max-width:none}}
@media print{.school-header .school-header-actions{display:none}}
/* v6: Back follows the title; service navigation remains on the right. */
.school-header .school-header-heading{display:flex;align-items:center;gap:18px;flex:1;min-width:0}
.school-header .school-header-heading .school-header-brand{flex:0 1 auto;max-width:650px}
.school-header .school-header-heading>.school-back{flex:none}
.school-header .school-header-navigation{justify-content:flex-end}
@media(max-width:900px){.school-header .school-header-heading{flex:1;min-width:0}.school-header .school-header-heading .school-header-brand{max-width:100%}.school-header .school-header-actions{margin-left:98px;width:calc(100% - 98px)}.school-header .school-header-navigation,.school-header .school-header-functions{max-width:none}}
@media(max-width:500px){.school-header .school-header-heading{flex-wrap:wrap;gap:10px}.school-header .school-header-heading .school-header-brand{width:100%}.school-header .school-header-actions{margin-left:0;width:100%}}

/* v7: a consistent two-column action grid on phones. */
.school-header .school-header-actions{display:grid;grid-template-columns:1fr 1fr;align-items:center;width:330px;gap:9px 10px}
.school-header .school-header-actions>.school-back{grid-column:1;grid-row:2;justify-self:start;align-self:center}
.school-header .school-header-navigation{grid-column:2;grid-row:1}
.school-header .school-home{width:100%;white-space:normal}
.school-header .school-header-functions{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:1fr 1fr;pointer-events:none}
.school-header .school-header-functions>*{pointer-events:auto}
.school-header .school-header-actions:has(.portal-entry)>.school-back{position:relative;left:-90px}
.school-header .school-header-actions:not(:has(.portal-entry))>.school-back{grid-row:1}
.school-header .school-header-actions:not(:has(.portal-entry)) .school-header-functions{grid-column:2}
@media(min-width:901px){.school-header .school-header-actions:has(.portal-entry){width:420px;grid-template-columns:80px 1fr 1fr}.school-header .school-header-actions:has(.portal-entry)>.school-back{left:0;grid-column:1}.school-header .school-header-actions:has(.portal-entry) .school-header-navigation{grid-column:3}.school-header .school-header-actions:has(.portal-entry) .school-header-functions{grid-column:2/4}.school-header .school-header-heading .school-header-brand{max-width:100%}}
@media(max-width:900px){.school-header .school-header-actions{width:calc(100% - 98px);margin-left:98px;max-width:none}.school-header .school-header-actions>.school-back{grid-row:1;left:0!important}.school-header .school-header-functions{grid-row:2}.school-header .school-header-navigation,.school-header .school-header-functions{max-width:none}}
@media(max-width:500px){.school-header .school-header-actions{width:100%;margin-left:0}.school-header .school-header-actions .school-home,.school-header .school-header-functions .portal-entry{width:100%;min-width:0;min-height:38px;padding:8px 5px;font-size:11px}.school-header .school-header-actions>.school-back{grid-row:1;grid-column:1}.school-header .school-header-logo{align-self:flex-start}.school-header .school-header-functions{width:100%}}


@media(min-width:901px){.school-header .school-header-actions{grid-template-columns:130px 190px;width:330px}.school-header .school-header-actions:has(.portal-entry){grid-template-columns:80px 165px 190px;width:455px}.school-header .school-home{white-space:nowrap}}

/* Keep logout aligned with the right edge of the shared navigation. */
.school-header .school-header-functions>form[action$="/logout"]{grid-column:1/-1;justify-self:end}


/* v8: the desktop service button equals the functional button below it. */
@media(min-width:901px){.school-header .school-header-actions:has(.portal-entry){grid-template-columns:80px minmax(0,1fr) minmax(0,1fr)}}
.school-reason-dialog{box-sizing:border-box;width:min(480px,calc(100% - 30px));max-height:85dvh;padding:22px;border:1px solid #dbaeb5;border-radius:12px;background:#fff;color:#24242b}.school-reason-dialog::backdrop{background:#16151a80}.school-reason-dialog h2{font:700 20px/1.3 Arial;margin:0 0 12px}.school-reason-dialog p{font:13px/1.5 Arial;white-space:pre-wrap}.school-reason-dialog label{display:grid;gap:8px;font:14px Arial}.school-reason-dialog textarea{box-sizing:border-box;width:100%;min-width:0;font:16px/1.5 Arial;padding:10px;border:1px solid #d9c1c5;border-radius:7px;resize:vertical}.school-reason-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.school-reason-actions button{padding:9px 14px;border:1px solid #be1e2d;border-radius:7px;background:#fff;color:#be1e2d;font:13px Arial}.school-reason-actions button[type=submit]{background:#be1e2d;color:#fff}


/* v9: same unobtrusive problem link in the shared header. */
.school-header .school-report-link{grid-column:1/-1;justify-self:end;font:12px/1.4 Arial,sans-serif;color:#66758b;text-decoration:none;margin-top:2px}
.school-header .school-report-link:hover{text-decoration:underline}
footer .site-admin-footer-link{float:right;font:inherit;color:inherit;text-decoration:none}
footer .site-admin-footer-link:hover{text-decoration:underline}
