/* Worker 6 styles: scoped, independent of the five feature modules */
.w6-page{padding:28px clamp(18px,4vw,60px) 60px;max-width:1280px;margin:auto;background:#f9fcff;color:#07164c}
.w6-hero{border-radius:20px;padding:32px;background:linear-gradient(120deg,#ecf4ff,#fff);border:1px solid #dbe8ff}
.w6-hero h1{font-size:clamp(25px,3vw,39px);line-height:1.2;margin:8px 0 12px}
.w6-hero p{max-width:770px;font-size:16px;color:#385879}
.w6-eyebrow{font-size:11px;font-weight:900;letter-spacing:.09em;color:#2366bf}
.w6-language{display:flex;gap:12px;align-items:center;margin-top:20px;font-weight:700}
.w6-language select{padding:8px 12px;background:white;border:1px solid #b4c9e5;border-radius:8px;max-width:240px}
.w6-warning{border-left:4px solid #a66f00;background:#fff9e7;border-radius:8px;padding:14px 17px;margin:20px 0}
.w6-panel{background:white;border:1px solid #dbe8f4;border-radius:16px;padding:22px;margin-top:18px;box-shadow:0 3px 15px rgba(30,64,96,.04)}
.w6-panel h2{margin:0 0 14px;font-size:20px}
.w6-portal-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.w6-portal-links a{padding:18px 14px;border-radius:12px;border:1px solid #dbe8ff;background:#f5f9ff;font-weight:800;color:#173a6c;text-align:center}
.w6-portal-links a:hover{background:#e7f0ff}
.w6-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.w6-status-row{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #edf2fb;font-size:13px;align-items:center}
.w6-status-row:last-child{border-bottom:0}
.w6-status-row strong{text-align:right;font-size:12px;max-width:190px}
.w6-ok{color:#16734a}.w6-pending{color:#955e13}
.w6-muted{color:#60758e;font-size:13px}
.w6-back{display:inline-block;margin-top:10px;font-weight:800;color:#075cff}
.site-footer a.w6-footer-link{display:inline-block;align-self:flex-start;font-weight:800;color:#075cff;font-size:12px;border:1px solid #dbe7fb;padding:8px 12px;border-radius:18px;background:#fff}
@media(max-width:740px){.w6-page{padding:15px 10px 35px}.w6-hero{padding:22px}.w6-grid{grid-template-columns:1fr;gap:0}.w6-portal-links{grid-template-columns:1fr}.w6-status-row strong{max-width:130px}}

/* Primary School — Wix Solutions | Worker 6 layout accessibility fix v1.0.2
   Visual-only overrides. No route, data, authentication or module code changed.
   Loaded last so existing Worker 1–6 presentation remains intact.
*/
:root { text-size-adjust: 100%; }
.app-shell, .portal-layout, .portal-main, .school-extension-page,
.system-shell, .w3-page, .w6-page, #wsl-live-root { min-width: 0; max-width: 100%; }
/* The CSS grid/flex min-content default formerly pushed card text beyond borders. */
:is(.w6-grid, .w6-portal-links, .w3-tiles, .wsl-book-grid,
    .system-grid, .school-card-grid, .school-metrics, .tiles,
    .folder-grid, .content-grid, .double-cards, .site-footer) > * { min-width: 0; }
:is(.w6-panel, .w6-hero, .w6-warning, .w6-status-row,
    .w3-panel, .w3-tile, .w3-list-item, .w3-note, .w3-banner,
    .school-panel, .school-module, .school-record, .school-demo-banner,
    .system-panel, .system-tile, .system-note, .system-row,
    .content-card, .tile, .folder, .site-footer .footer-col,
    #wsl-live-root .wsl-book-detail, #wsl-live-root .wsl-banner,
    #wsl-live-root .wsl-panel) { min-width: 0; overflow-wrap: anywhere; }
:is(.w6-page, .w3-page, .school-extension-page, .system-shell, .portal-main,
    #wsl-live-root) :is(h1,h2,h3,h4,p,small,strong,span,a,li,label) {
  max-width: 100%; overflow-wrap: break-word; word-break: normal;
}
:is(.w6-panel, .w3-panel, .school-panel, .system-panel, .content-card,
    #wsl-live-root .wsl-panel) :is(input,select,textarea,pre,code) { max-width: 100%; }
:is(.w6-panel, .w3-panel, .school-panel, .system-panel, .content-card) pre {
  overflow-x: auto; white-space: pre-wrap; overflow-wrap: anywhere;
}
/* Status panel: labels and long status strings get their own elastic columns. */
.w6-page { width: 100%; }
.w6-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.w6-panel { min-width: 0; }
.w6-status-row { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); align-items: start; column-gap: 15px; row-gap: 6px; }
.w6-status-row > * { min-width: 0; overflow-wrap: anywhere; }
.w6-status-row strong { display: block; width: auto; max-width: none; font-size: clamp(11px,1vw,13px); line-height: 1.55; text-align: right; }
.w6-portal-links a { min-width: 0; line-height: 1.4; white-space: normal; overflow-wrap: anywhere; }
.w6-hero h1 { max-width: 100%; overflow-wrap: anywhere; }
.w6-language { flex-wrap: wrap; }
.w6-language select { min-width: 0; max-width: min(100%,240px); }
.w6-warning { line-height: 1.6; }
/* Card titles/buttons remain legible; they never spill out horizontally. */
.w3-tile strong, .school-module strong, .system-tile strong,
#wsl-live-root .wsl-book-detail h3 { overflow-wrap: anywhere; }
.w3-list-item > div:first-child { min-width: 0; }
.school-row > *, .system-actions > *, .w3-row > * { max-width: 100%; }
.w3-button, .system-button, .school-control, #wsl-live-root button,
.w6-portal-links a { white-space: normal; text-align: center; overflow-wrap: anywhere; }
.system-table-wrap { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.system-table td, .system-table th { overflow-wrap: anywhere; }
.site-footer .brand { white-space: normal; }
.site-footer .footer-col a, .site-footer .footer-col button { overflow-wrap: anywhere; }
/* Existing desktop header carries multiple portal buttons and a dropdown.
   Enable its existing mobile drawer earlier rather than squashing the logo. */
@media (min-width:761px) and (max-width:1160px) {
  .site-header { height: 72px; padding: 0 3%; gap: 10px; }
  .site-header .menu-toggle { display: inline-flex; }
  .site-header .topnav { display: none; }
  .site-header .header-actions { margin-left: auto; }
  .site-header .header-actions > .pill { display: none; }
  .site-header > .mobile-drawer { display: block; }
  .site-header .mobile-drawer { position: absolute; top: 71px; left: 0; right: 0; background: white;
    padding: 15px 4% 23px; box-shadow: 0 15px 20px #0b2a4a21;
    border-bottom: 1px solid var(--border); }
  .site-header .mobile-drawer button { display: block; width: 100%; text-align: left;
    border: 0; padding: 12px; background: none; font-weight: 900; }
  .site-header .mobile-drawer .pill { margin: 7px 0; text-align: center;
    background: var(--blue); color: #fff; }
}
@media (max-width:760px) {
  .w6-grid { grid-template-columns: minmax(0,1fr); gap: 0; }
  .w6-page { padding: 18px clamp(12px,3vw,22px) 35px; }
  .w6-hero { padding: 23px 20px; }
  .w6-panel { padding: 18px 17px; }
  .w6-portal-links { grid-template-columns: minmax(0,1fr); }
  .w3-banner { grid-template-columns: minmax(0,1fr); }
  #wsl-live-root .wsl-banner { flex-wrap: wrap; }
  .system-grid, .school-card-grid { min-width: 0; }
}
@media (max-width:540px) {
  .w6-status-row { grid-template-columns: minmax(0,1fr); padding: 12px 0 14px; }
  .w6-status-row strong { text-align: left; font-size: 12px; }
  .w6-panel h2 { font-size: clamp(17px,5vw,21px); line-height: 1.3; }
  .w6-hero h1 { font-size: clamp(23px,7vw,31px); line-height: 1.22; }
  .w3-list-item { flex-wrap: wrap; }
  .w3-list-item .w3-button { width: 100%; }
  .site-footer { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 17px; }
  .site-footer > :first-child { grid-column: 1 / -1; }
  .site-header .brand { min-width: 0; font-size: 17px; letter-spacing: -.04em; }
}
@media (max-width:350px) {
  .site-footer { grid-template-columns: minmax(0,1fr); }
  .site-footer > :first-child { grid-column: 1; }
  .site-header .brand { font-size: 15px; }
  .site-header .header-actions { gap: 2px; }
}
