/* MATCHSIK site-wide residual QA polish v32.7
   Final operational-page layer: current main-page navy / blue / restrained orange.
   Loaded last on portals so legacy green inline styles cannot flash through as the final state. */
:root{--v327-navy:#071b36;--v327-navy2:#0f315f;--v327-blue:#1769ff;--v327-blue2:#0f55d7;--v327-orange:#ff7029;--v327-ink:#10244b;--v327-text:#3f587a;--v327-muted:#71839e;--v327-line:#dce6f4;--v327-soft:#f3f7fd;--v327-soft-blue:#edf4ff;--v327-white:#fff;--v327-danger:#c33f37;--v327-shadow:0 14px 38px rgba(7,27,54,.08);--v327-shadow-lg:0 24px 64px rgba(7,27,54,.13)}

/* Shared operational surfaces */
body[data-ops-page],body[data-portal-page],body[data-group-page]{background:linear-gradient(180deg,#f7faff 0,#f2f6fc 100%)!important;color:var(--v327-ink)!important}
body[data-ops-page] *,body[data-portal-page] *,body[data-group-page] *{box-sizing:border-box}
body[data-ops-page] a,body[data-portal-page] a,body[data-group-page] a{text-decoration:none}
body[data-ops-page] button:focus-visible,body[data-ops-page] a:focus-visible,body[data-ops-page] input:focus-visible,body[data-ops-page] select:focus-visible,body[data-ops-page] textarea:focus-visible,
body[data-portal-page] button:focus-visible,body[data-portal-page] a:focus-visible,body[data-portal-page] input:focus-visible,body[data-portal-page] select:focus-visible,body[data-portal-page] textarea:focus-visible,
body[data-group-page] button:focus-visible,body[data-group-page] a:focus-visible,body[data-group-page] input:focus-visible,body[data-group-page] select:focus-visible,body[data-group-page] textarea:focus-visible{outline:3px solid rgba(23,105,255,.28)!important;outline-offset:2px!important}

/* My Class / student dashboard — remove remaining brand-green actions after legacy inline CSS. */
body[data-portal-page] .btn-primary{background:linear-gradient(135deg,var(--v327-blue),var(--v327-blue2))!important;color:#fff!important;box-shadow:0 12px 26px rgba(23,105,255,.20)!important}
body[data-portal-page] .btn-dark{background:var(--v327-navy)!important;color:#fff!important}
body[data-portal-page] .btn-light{background:#fff!important;color:#23466f!important;border-color:#cfdded!important}
body[data-portal-page] .control{background:#fff!important;color:var(--v327-ink)!important;border-color:#cfdaea!important}
body[data-portal-page] .control:hover{border-color:#adc5e5!important}
body[data-portal-page] .field label{color:#294e7f!important}
body[data-portal-page] .status-pill.confirmed,body[data-portal-page] .status-pill.approved,body[data-portal-page] .secure-tag{background:#eaf2ff!important;color:#195fb9!important;border-color:#cfe0fb!important}
body[data-portal-page] .portal-tabs{scrollbar-width:none!important}
body[data-portal-page] .portal-tabs::-webkit-scrollbar{display:none!important}
body[data-portal-page] .calendar-scroll,body[data-portal-page] .schedule-table-wrap,body[data-portal-page] .table-wrap{overscroll-behavior-inline:contain!important;-webkit-overflow-scrolling:touch!important}
body[data-portal-page] .modal-card{background:#fff!important;color:var(--v327-ink)!important;border:1px solid var(--v327-line)!important;box-shadow:0 32px 90px rgba(2,15,35,.26)!important}
body[data-portal-page] .admin-lock-mark{background:linear-gradient(145deg,var(--v327-navy),var(--v327-blue))!important;color:#fff!important;box-shadow:0 12px 28px rgba(23,105,255,.18)!important}

/* Admin portal */
body[data-ops-page="admin"]{--brand:var(--v327-navy);--brand-2:var(--v327-blue);--brand-3:var(--v327-blue2);--ink:var(--v327-ink);--text:var(--v327-text);--muted:var(--v327-muted);--line:var(--v327-line);--page:var(--v327-soft);--surface:#fff;--sage:var(--v327-soft-blue);--sage-2:#dce9fb;--gold:var(--v327-orange);--gold-soft:#fff0e7;--success:#1767b8;--shadow:var(--v327-shadow);--shadow-sm:0 8px 24px rgba(7,27,54,.06)}
body[data-ops-page="admin"] .topbar{background:rgba(7,27,54,.98)!important;color:#fff!important;border-bottom-color:rgba(255,255,255,.08)!important;box-shadow:0 8px 28px rgba(7,27,54,.14)!important}
body[data-ops-page="admin"] .portal-brand,body[data-ops-page="admin"] .portal-brand-copy b,body[data-ops-page="admin"] .portal-brand-copy small,body[data-ops-page="admin"] .portal-support{color:#fff!important}
body[data-ops-page="admin"] .portal-brand-copy small{opacity:.72}
body[data-ops-page="admin"] .portal-brand-icon{filter:none!important}
body[data-ops-page="admin"] .portal-hero{background:radial-gradient(circle at 88% 0,rgba(23,105,255,.34),transparent 35%),linear-gradient(122deg,#071b36 0%,#0e2e5b 58%,#174a91 100%)!important;color:#fff!important;border-color:rgba(255,255,255,.10)!important;border-radius:22px!important;box-shadow:var(--v327-shadow-lg)!important}
body[data-ops-page="admin"] .portal-hero:before,body[data-ops-page="admin"] .portal-hero:after{display:none!important}
body[data-ops-page="admin"] .portal-hero p{color:#cbdcf3!important}
body[data-ops-page="admin"] .portal-hero .eyebrow{color:#82b7ff!important}
body[data-ops-page="admin"] .hero-security{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.15)!important;color:#e9f2ff!important}
body[data-ops-page="admin"] .hero-security i{background:#6da8ff!important;box-shadow:0 0 0 5px rgba(109,168,255,.13)!important}
body[data-ops-page="admin"] .card,body[data-ops-page="admin"] .kpi,body[data-ops-page="admin"] .application-card{background:#fff!important;border-color:var(--v327-line)!important;border-radius:17px!important;box-shadow:var(--v327-shadow)!important}
body[data-ops-page="admin"] .btn-primary{background:linear-gradient(135deg,var(--v327-blue),var(--v327-blue2))!important;color:#fff!important;box-shadow:0 12px 26px rgba(23,105,255,.20)!important}
body[data-ops-page="admin"] .btn-dark{background:var(--v327-navy)!important;color:#fff!important}
body[data-ops-page="admin"] .btn-light{background:#fff!important;color:#23466f!important;border-color:#cfdded!important}
body[data-ops-page="admin"] .tab{background:#fff!important;color:#4b6485!important;border-color:#d4e0ef!important}
body[data-ops-page="admin"] .tab.active{background:var(--v327-blue)!important;color:#fff!important;border-color:var(--v327-blue)!important}
body[data-ops-page="admin"] .control{background:#fff!important;color:var(--v327-ink)!important;border-color:#cdd9e9!important}
body[data-ops-page="admin"] .control:focus{border-color:#6fa7ff!important;box-shadow:0 0 0 4px rgba(23,105,255,.10)!important}
body[data-ops-page="admin"] .field label{color:#294e7f!important}
body[data-ops-page="admin"] .status,body[data-ops-page="admin"] .status.ok{background:#eaf2ff!important;color:#195fb9!important}
body[data-ops-page="admin"] .status.warn{background:#fff1e7!important;color:#a6551e!important}
body[data-ops-page="admin"] .status.danger{background:#fff0ef!important;color:#b43c35!important}
body[data-ops-page="admin"] .status-step.done{background:#eaf2ff!important;color:#195fb9!important}
body[data-ops-page="admin"] .status-step.done span{background:var(--v327-blue)!important;color:#fff!important}
body[data-ops-page="admin"] .status-step.current{background:#fff1e7!important;color:#994c18!important}
body[data-ops-page="admin"] .application-total strong{color:#174b93!important}
body[data-ops-page="admin"] .lesson-chip,body[data-ops-page="admin"] .notice{background:#edf4ff!important;color:#315f9b!important}
body[data-ops-page="admin"] .table th{background:#edf4ff!important;color:#315b91!important}
body[data-ops-page="admin"] .modal{background:rgba(3,16,36,.70)!important}
body[data-ops-page="admin"] .modal-card{background:#fff!important;color:var(--v327-ink)!important;border:1px solid var(--v327-line)!important;box-shadow:0 34px 100px rgba(3,16,36,.28)!important}
body[data-ops-page="admin"] .admin-lock-mark{background:linear-gradient(145deg,var(--v327-navy),var(--v327-blue))!important;color:#fff!important;box-shadow:0 12px 28px rgba(23,105,255,.18)!important}

/* Teacher operations portal */
body[data-ops-page="teacher"]{background:linear-gradient(180deg,#f7faff,#f1f5fb)!important;color:var(--v327-ink)!important}
body[data-ops-page="teacher"] .t28-header{background:rgba(7,27,54,.98)!important;color:#fff!important;border-bottom-color:rgba(255,255,255,.08)!important;box-shadow:0 8px 28px rgba(7,27,54,.14)!important}
body[data-ops-page="teacher"] .t28-brand{color:#fff!important}
body[data-ops-page="teacher"] .t28-brand small{color:#c9d9ee!important}
body[data-ops-page="teacher"] .t28-brand-mark{background:linear-gradient(145deg,#1454ba,#2475ff)!important;color:#fff!important;box-shadow:0 8px 22px rgba(23,105,255,.22)!important}
body[data-ops-page="teacher"] .t28-head-actions button,body[data-ops-page="teacher"] .t28-head-actions a{background:#102f5d!important;color:#fff!important;border-color:#294d7b!important}
body[data-ops-page="teacher"] .t28-sidebar{background:#fff!important;border-color:var(--v327-line)!important;box-shadow:var(--v327-shadow)!important}
body[data-ops-page="teacher"] .t28-profile-mini{background:#edf4ff!important;color:#234e81!important}
body[data-ops-page="teacher"] .t28-profile-mini span{color:#687f9e!important}
body[data-ops-page="teacher"] .t28-nav button{color:#536e91!important}
body[data-ops-page="teacher"] .t28-nav button.active{background:var(--v327-blue)!important;color:#fff!important;box-shadow:0 8px 18px rgba(23,105,255,.16)!important}
body[data-ops-page="teacher"] .t28-state-card,body[data-ops-page="teacher"] .t28-card,body[data-ops-page="teacher"] .t28-stat,body[data-ops-page="teacher"] .t28-row{background:#fff!important;color:var(--v327-ink)!important;border-color:var(--v327-line)!important;box-shadow:var(--v327-shadow)!important}
body[data-ops-page="teacher"] .t28-state-card p,body[data-ops-page="teacher"] .t28-card-sub,body[data-ops-page="teacher"] .t28-row small,body[data-ops-page="teacher"] .t28-page-head p,body[data-ops-page="teacher"] .t28-stat span{color:var(--v327-muted)!important}
body[data-ops-page="teacher"] .t28-state-card button,body[data-ops-page="teacher"] .t28-save{background:linear-gradient(135deg,var(--v327-blue),var(--v327-blue2))!important;color:#fff!important;box-shadow:0 10px 22px rgba(23,105,255,.18)!important}
body[data-ops-page="teacher"] .t28-field input,body[data-ops-page="teacher"] .t28-field select,body[data-ops-page="teacher"] .t28-field textarea{background:#fff!important;color:var(--v327-ink)!important;border-color:#cdd9e9!important}
body[data-ops-page="teacher"] .t28-field input:focus,body[data-ops-page="teacher"] .t28-field select:focus,body[data-ops-page="teacher"] .t28-field textarea:focus{border-color:#6fa7ff!important;box-shadow:0 0 0 4px rgba(23,105,255,.10)!important;outline:0!important}
body[data-ops-page="teacher"] .t28-status-pill{background:#eaf2ff!important;color:#195fb9!important}
body[data-ops-page="teacher"] .t28-calendar-day.today{border-color:#74a8ff!important;box-shadow:inset 0 0 0 1px #74a8ff!important}
body[data-ops-page="teacher"] .t28-event,body[data-ops-page="teacher"] .t28-event.approved{background:#eaf2ff!important;color:#195fb9!important}
body[data-ops-page="teacher"] .t28-event.held{background:#fff1e7!important;color:#9a531f!important}
body[data-ops-page="teacher"] .t28-toast{background:var(--v327-navy)!important;color:#fff!important;box-shadow:0 18px 45px rgba(3,16,36,.26)!important}

/* Small-group operations: keep brand hierarchy consistent. */
body[data-group-page] .g-btn.primary{background:var(--v327-blue)!important;color:#fff!important;border-color:var(--v327-blue)!important}
body[data-group-page] .g-btn.orange{background:var(--v327-orange)!important;color:#fff!important;border-color:var(--v327-orange)!important}
body[data-group-page] input:focus,body[data-group-page] select:focus,body[data-group-page] textarea:focus{border-color:#6fa7ff!important;box-shadow:0 0 0 4px rgba(23,105,255,.10)!important;outline:0!important}

/* Mobile residual guards — never lock the entire document. */
@media(max-width:760px){
  html{max-width:100%!important;overflow-x:hidden!important;overflow-y:auto!important}
  body[data-ops-page],body[data-portal-page],body[data-group-page]{position:static!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:100dvh!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important}
  body[data-ops-page="teacher"] .t28-main{min-width:0!important;overflow:visible!important}
  body[data-ops-page="teacher"] .t28-layout{width:calc(100% - 20px)!important;margin:12px auto 48px!important;grid-template-columns:1fr!important;gap:12px!important}
  body[data-ops-page="teacher"] .t28-sidebar{position:static!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;padding:7px!important;border-radius:14px!important;scrollbar-width:none!important;overscroll-behavior-inline:contain!important}
  body[data-ops-page="teacher"] .t28-sidebar::-webkit-scrollbar{display:none!important}
  body[data-ops-page="teacher"] .t28-nav{display:flex!important;min-width:max-content!important;gap:5px!important}
  body[data-ops-page="teacher"] .t28-nav button,body[data-ops-page="teacher"] .t28-nav a{min-height:40px!important;white-space:nowrap!important}
  body[data-ops-page="teacher"] .t28-card{padding:15px!important;border-radius:16px!important}
  body[data-ops-page="teacher"] .t28-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body[data-ops-page="teacher"] .t28-field input,body[data-ops-page="teacher"] .t28-field select,body[data-ops-page="teacher"] .t28-field textarea{font-size:16px!important}
  body[data-ops-page="admin"] .wrap,body[data-portal-page] .wrap{width:calc(100% - 20px)!important;margin:14px auto calc(48px + env(safe-area-inset-bottom))!important}
  body[data-ops-page="admin"] .topbar{min-height:62px!important;padding:9px 12px!important}
  body[data-ops-page="admin"] .portal-toolbar{gap:6px!important}
  body[data-ops-page="admin"] .portal-support{display:none!important}
  body[data-ops-page="admin"] .portal-hero,body[data-portal-page] .hero{padding:22px 18px!important;border-radius:18px!important}
  body[data-ops-page="admin"] .grid-4,body[data-ops-page="admin"] .application-facts,body[data-portal-page] .summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body[data-ops-page="admin"] .lookup-form-grid,body[data-portal-page] .lookup-grid{grid-template-columns:1fr!important}
  body[data-ops-page="admin"] .lookup-submit,body[data-portal-page] .lookup-submit{width:100%!important;min-width:0!important}
  body[data-ops-page="admin"] input,body[data-ops-page="admin"] select,body[data-ops-page="admin"] textarea,body[data-portal-page] input,body[data-portal-page] select,body[data-portal-page] textarea{font-size:16px!important}
  body[data-ops-page="admin"] .modal,body[data-portal-page] .modal{padding:8px!important;align-items:end!important}
  body[data-ops-page="admin"] .modal-card,body[data-portal-page] .modal-card{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 16px)!important;border-radius:20px 20px 10px 10px!important;padding:22px 17px calc(24px + env(safe-area-inset-bottom))!important;overflow:auto!important}
  body[data-portal-page] .portal-tabs{top:62px!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-inline:contain!important}
  body[data-portal-page] .calendar-scroll,body[data-portal-page] .schedule-table-wrap,body[data-ops-page="admin"] .table-wrap{max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important}
  body[data-group-page] .g-wrap{max-width:100%!important}
}
@media(max-width:430px){
  body[data-ops-page="teacher"] .t28-grid,body[data-ops-page="admin"] .grid-4,body[data-ops-page="admin"] .application-facts,body[data-portal-page] .summary-grid{grid-template-columns:1fr!important}
  body[data-ops-page="admin"] .portal-brand-copy small{display:none!important}
  body[data-ops-page="admin"] .card,body[data-portal-page] .card{padding:18px!important;border-radius:16px!important}
}
@media(prefers-reduced-motion:reduce){body[data-ops-page] *,body[data-portal-page] *,body[data-group-page] *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
