.boost-app {
  font-size: 18px;
  background:
    radial-gradient(circle at 12% 8%, rgba(246, 195, 68, 0.20), transparent 32rem),
    radial-gradient(circle at 86% 16%, rgba(30, 117, 176, 0.26), transparent 34rem),
    #07111d;
}

/* Bulk lesson templates: make the available content visible before selection. */
.classroom-bulk-template{
  display:grid;
  gap:20px;
}
.bulk-template-form{
  display:grid;
  gap:20px;
}
.bulk-template-form>fieldset{
  min-width:0;
  margin:0;
  padding:18px;
  border:1px solid var(--boost-border);
  border-radius:16px;
  background:var(--boost-surface-raised);
}
.bulk-template-form>fieldset>legend{
  padding:0 7px;
  color:var(--boost-text);
  font-size:1.05rem;
  font-weight:900;
}
.bulk-template-options,
.bulk-lesson-options{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));
  gap:10px;
}
.bulk-template-option,
.bulk-lesson-options .lesson-list-choice{
  display:grid;
  grid-template-columns:20px minmax(0,1fr);
  align-items:start;
  gap:11px;
  min-height:58px;
  margin:0;
  padding:13px 14px;
  border:1px solid var(--boost-border);
  border-radius:12px;
  background:var(--boost-surface);
  cursor:pointer;
}
.bulk-template-option:hover,
.bulk-template-option:focus-within,
.bulk-lesson-options .lesson-list-choice:hover,
.bulk-lesson-options .lesson-list-choice:focus-within{
  border-color:var(--program-color,#f6c344);
}
.bulk-template-option:has(input:checked),
.bulk-lesson-options .lesson-list-choice:has(input:checked){
  border-color:var(--program-color,#f6c344);
  background:color-mix(in srgb,var(--program-color,#f6c344) 12%,var(--boost-surface));
}
.bulk-template-option>input,
.bulk-lesson-options .lesson-list-choice>input{
  width:18px !important;
  min-width:18px;
  max-width:18px;
  height:18px !important;
  min-height:18px;
  max-height:18px;
  padding:0;
  margin:2px 0 0;
  align-self:start;
}
.bulk-template-option>span{
  display:grid;
  gap:4px;
  min-width:0;
}
.bulk-template-option strong{
  color:var(--boost-text);
  font-size:1rem;
}
.bulk-template-option small{
  color:var(--boost-muted);
  line-height:1.4;
}
.bulk-template-option em{
  color:var(--boost-text);
  font-size:.8rem;
  font-style:normal;
  font-weight:750;
  line-height:1.35;
}
.bulk-lesson-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:12px;
}
.bulk-lesson-actions .boost-button{
  width:auto;
  min-height:40px;
  padding:8px 13px;
}
.bulk-template-submit{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:16px;
  padding-top:16px;
  border-top:1px solid var(--boost-border);
}
.bulk-template-submit span{
  color:var(--boost-muted);
}
.bulk-template-submit .boost-button{
  width:auto;
  min-width:170px;
}
.theme-light .bulk-template-form>fieldset,
.theme-light .bulk-template-option,
.theme-light .bulk-lesson-options .lesson-list-choice{
  border-color:#cbd8e5;
  background:#fff;
}
.theme-light .bulk-template-option:has(input:checked),
.theme-light .bulk-lesson-options .lesson-list-choice:has(input:checked){
  border-color:#b88100;
  background:#fff8df;
}
@media(max-width:640px){
  .bulk-template-form>fieldset{
    padding:14px;
  }
  .bulk-template-options,
  .bulk-lesson-options{
    grid-template-columns:1fr;
  }
  .bulk-template-submit{
    align-items:stretch;
    flex-direction:column;
  }
  .bulk-template-submit .boost-button{
    width:100%;
  }
}

/* SBO+ BOOST educator shell: accessible navy dark default and complete light mode. */
.boost-app {
  --boost-bg: #071426;
  --boost-bg-deep: #040d1a;
  --boost-surface: #0d2038;
  --boost-surface-raised: #132b48;
  --boost-surface-soft: #173554;
  --boost-line: rgba(151, 190, 225, .20);
  --boost-text: #f5f9fd;
  --boost-text-muted: #b6cbe0;
  --boost-blue: #5eb7ff;
  --boost-blue-strong: #258edc;
  --boost-gold: #f6c344;
  --boost-shadow: 0 18px 52px rgba(0, 7, 18, .34);
  color: var(--boost-text);
  color-scheme: dark;
  background:
    radial-gradient(circle at 12% 7%, rgba(37, 142, 220, .20), transparent 32rem),
    radial-gradient(circle at 88% 12%, rgba(94, 183, 255, .12), transparent 36rem),
    linear-gradient(155deg, var(--boost-bg) 0%, var(--boost-bg-deep) 100%);
}

.boost-app.theme-light {
  --boost-bg: #eef5fb;
  --boost-bg-deep: #f8fbfe;
  --boost-surface: #ffffff;
  --boost-surface-raised: #f5f9fd;
  --boost-surface-soft: #e7f1fa;
  --boost-line: rgba(20, 63, 100, .16);
  --boost-text: #10263c;
  --boost-text-muted: #536f88;
  --boost-blue: #0d75bc;
  --boost-blue-strong: #075b94;
  --boost-gold: #b77905;
  --boost-shadow: 0 16px 44px rgba(28, 66, 99, .12);
  color-scheme: light;
  background:
    radial-gradient(circle at 12% 7%, rgba(42, 145, 214, .12), transparent 32rem),
    linear-gradient(155deg, var(--boost-bg-deep), var(--boost-bg));
}

.boost-app .office-nav,
.boost-app .assistant-tabs,
.boost-app .boost-compact-menu,
.boost-app .boost-nav-more-links,
.boost-app .boost-nav-daily-links {
  border-color: var(--boost-line);
  background: color-mix(in srgb, var(--boost-surface) 94%, transparent);
  box-shadow: var(--boost-shadow);
}

.boost-app:not(.boost-educator-app) .office-card,
.boost-app .boost-panel,
.boost-app .panel,
.boost-app .card,
.boost-app fieldset,
.boost-app table {
  border-color: var(--boost-line);
  background: linear-gradient(145deg, var(--boost-surface), var(--boost-surface-raised));
  box-shadow: var(--boost-shadow);
}

.boost-app .office-heading h1,
.boost-app .office-card h2,
.boost-app .office-card h3,
.boost-app .boost-compact-menu > summary,
.boost-app label,
.boost-app legend,
.boost-app th {
  color: var(--boost-text);
}

.boost-app .office-heading p:last-child,
.boost-app .office-card p,
.boost-app .boost-compact-menu > summary small,
.boost-app .muted,
.boost-app small {
  color: var(--boost-text-muted);
}

.boost-app .office-nav a,
.boost-app .assistant-tabs a,
.boost-app .boost-nav-more > summary,
.boost-app .boost-nav-daily > summary {
  color: var(--boost-text-muted);
}

.boost-app .office-nav a:hover,
.boost-app .assistant-tabs a:hover,
.boost-app .assistant-tabs a.active,
.boost-app .boost-global-nav a.active,
.boost-app .boost-nav-more > summary:hover,
.boost-app .boost-nav-more > summary.active,
.boost-app .boost-nav-daily > summary:hover,
.boost-app .boost-nav-daily > summary.active {
  color: #071426;
  background: #f6c344;
}

.boost-app input,
.boost-app select,
.boost-app textarea {
  color: var(--boost-text);
  border-color: var(--boost-line);
  background: var(--boost-surface-raised);
}

.boost-app input::placeholder,
.boost-app textarea::placeholder { color: var(--boost-text-muted); opacity: .78; }

.boost-app input:focus,
.boost-app select:focus,
.boost-app textarea:focus,
.boost-app button:focus-visible,
.boost-app a:focus-visible {
  outline: 3px solid var(--boost-blue);
  outline-offset: 3px;
}

.boost-app-brand {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-width: 112px;
  padding: 2px 10px !important;
  border-right: 1px solid var(--boost-line);
  border-radius: 0 !important;
}

.boost-app-brand img {
  display: block;
  width: 96px;
  height: 48px;
  object-fit: contain;
}

.boost-app .boost-app-brand:hover { background: var(--boost-surface-soft) !important; }

.boost-theme-toggle {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 42px;
  margin-left: auto;
  padding: 9px 13px;
  color: var(--boost-text);
  border: 1px solid var(--boost-line);
  border-radius: 11px;
  background: var(--boost-surface-raised);
  cursor: pointer;
  font: inherit;
  font-weight: 750;
  white-space: nowrap;
}

.boost-theme-toggle:hover { border-color: var(--boost-blue); background: var(--boost-surface-soft); }

.boost-login { color-scheme: dark; }
.boost-login.theme-light {
  color-scheme: light;
  background: linear-gradient(145deg, #f8fbfe, #e8f2fa);
}
.boost-login.theme-light .boost-login-brand,
.boost-login.theme-light .boost-panel h1,
.boost-login.theme-light .boost-panel h2 { color: #10263c; }
.boost-login.theme-light .boost-login-brand small,
.boost-login.theme-light .boost-panel p { color: #536f88; }

.boost-demo-chooser { width:min(1180px,calc(100% - 32px));margin:34px auto 70px; }
.boost-demo-chooser>.section-heading { max-width:760px;margin-bottom:20px; }
.boost-demo-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px; }
.boost-demo-card { display:grid;grid-template-columns:96px minmax(0,1fr);gap:18px;align-items:start;padding:22px;border:1px solid var(--boost-line);border-radius:22px;background:linear-gradient(145deg,var(--boost-surface),var(--boost-surface-raised));box-shadow:var(--boost-shadow); }
.boost-demo-card img { width:96px;height:96px;border-radius:22px;object-fit:cover;background:var(--boost-surface-soft); }
.boost-demo-mark{display:grid;place-items:center;width:96px;height:96px;border-radius:22px;background:linear-gradient(145deg,#fac33b,#f09d21);color:#0b1721;font-size:.78rem;font-weight:900;letter-spacing:.09em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.boost-demo-card.specialist{border-top:5px solid var(--demo-accent);background:linear-gradient(145deg,color-mix(in srgb,var(--demo-primary) 14%,var(--boost-surface)),var(--boost-surface-raised))}
.boost-demo-card.specialist img{border:3px solid color-mix(in srgb,var(--demo-accent) 74%,white);box-shadow:0 8px 24px color-mix(in srgb,var(--demo-primary) 32%,transparent)}
.boost-demo-card.specialist .boost-button{background:var(--demo-accent);border-color:var(--demo-accent);color:#08131b}
.boost-demo-card .boost-demo-school{margin:-3px 0 9px;color:var(--demo-accent,var(--boost-gold));font-weight:800}
.boost-demo-card h3 { margin:4px 0 8px;color:var(--boost-text);font-size:1.35rem; }
.boost-demo-card p { margin:0;color:var(--boost-text-muted);line-height:1.55; }
.boost-demo-card form { grid-column:1/-1;margin:12px 0 0; }
.boost-demo-card .boost-button { width:100%;min-height:48px; }
.boost-context-tip:focus-visible{outline:3px solid var(--boost-gold);outline-offset:3px}
.boost-tip-popover{font-family:var(--boost-font-sans,Arial,sans-serif)}
.boost-demo-note { margin:16px 0 0;color:var(--boost-text-muted);font-size:.88rem; }
@media(max-width:820px){.boost-demo-grid{grid-template-columns:1fr}}
@media(max-width:520px){.boost-demo-card{grid-template-columns:68px minmax(0,1fr);padding:17px}.boost-demo-card img,.boost-demo-mark{width:68px;height:68px;border-radius:17px}}

/* Reserve a coherent extension point for later licensed audio, recording, and assessment tools. */
.boost-audio-workspace,
.boost-recording-workspace {
  min-width: 0;
  border: 1px solid var(--boost-line);
  border-radius: 20px;
  background: var(--boost-surface);
  color: var(--boost-text);
}

@media (max-width: 1024px) {
  .boost-global-nav { align-items: center; }
  .boost-app-brand { position: sticky; left: 0; z-index: 3; background: var(--boost-surface); }
  .office-grid { grid-template-columns: minmax(0, 1fr); }
  .office-card { min-width: 0; }
}

@media (max-width: 760px) {
  .boost-app-brand { min-width: 90px; }
  .boost-app-brand img { width: 78px; height: 42px; }
  .boost-theme-toggle span:last-child { display: none; }
  .boost-theme-toggle { margin-left: 0; min-width: 42px; padding-inline: 10px; }
  .boost-login-brand img { width: 72px; height: 72px; }
}

@media (max-width: 900px) {
  .boost-educator-app .teaching-planner-toolbar,
  .boost-educator-app .teaching-planner-toolbar:has(.planner-filter-panel[open]) {
    grid-template-columns: minmax(0, 1fr);
  }

  .boost-educator-app .teaching-planner-toolbar > nav:first-child {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    width: 100%;
  }

  .boost-educator-app .teaching-planner-toolbar > .planner-date-navigation {
    justify-self: start;
  }

  .boost-educator-app .teaching-planner-toolbar > .planner-filter-panel,
  .boost-educator-app .teaching-planner-toolbar > .planner-filter-panel[open] {
    grid-column: 1;
    width: 100%;
  }
}

.boost-tour-home,
.boost-tour-guide {
  margin: 1rem auto;
  max-width: 1180px;
  border: 1px solid rgba(246, 195, 68, .55);
  background: linear-gradient(135deg, rgba(246, 195, 68, .12), rgba(30, 117, 176, .12));
}

.boost-tour-guide {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.25rem;
}

.boost-tour-guide h2,
.boost-tour-guide p {
  margin: .2rem 0;
}

.boost-tour-guide form,
.boost-tour-home form {
  margin: 0;
}

.boost-tour-highlight {
  outline: 4px solid #f6c344;
  outline-offset: 5px;
  scroll-margin-top: 12rem;
  animation: boost-tour-pulse 1.2s ease-out 1;
}

@keyframes boost-tour-pulse {
  from { box-shadow: 0 0 0 0 rgba(246, 195, 68, .7); }
  to { box-shadow: 0 0 0 18px rgba(246, 195, 68, 0); }
}

@media (max-width: 760px) {
  .boost-tour-guide { align-items: flex-start; flex-direction: column; }
}

.boost-shell {
  max-width: 1180px;
}

.boost-back-link,
.boost-nav a {
  color: #dce9f4;
  text-decoration: none;
}

.boost-back-link:hover,
.boost-nav a:hover {
  color: #f6c344;
}

.boost-main {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 40px 0 72px;
}

.boost-hero {
  min-height: 440px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.52fr);
  align-items: center;
  gap: 22px;
  padding: clamp(36px, 7vw, 86px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(10, 28, 45, 0.96), rgba(12, 61, 93, 0.72)),
    linear-gradient(90deg, rgba(246, 195, 68, 0.14), transparent);
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.38);
  overflow: hidden;
  position: relative;
}

.boost-hero::after {
  content: "BOOST!";
  position: absolute;
  right: -0.12em;
  bottom: -0.32em;
  font-size: clamp(5rem, 17vw, 15rem);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.08em;
  color: rgba(255, 255, 255, 0.045);
  pointer-events: none;
}

.boost-hero-copy {
  position: relative;
  z-index: 1;
}

.boost-hero-mark {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
}

.boost-hero-mark img {
  width: min(100%, 380px);
  height: auto;
  display: block;
  filter: drop-shadow(0 24px 44px rgba(0, 0, 0, 0.46));
}

.eyebrow {
  margin: 0;
  color: #f6c344;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 0.78rem;
  font-weight: 800;
}

.boost-hero h1 {
  max-width: 820px;
  margin: 0;
  font-size: clamp(2.85rem, 7.2vw, 6.1rem);
  line-height: 1.02;
  letter-spacing: -0.035em;
  color: #fff;
}

.lede {
  max-width: 780px;
  margin: 0;
  color: #c9d8e5;
  font-size: clamp(1.05rem, 2vw, 1.34rem);
  line-height: 1.62;
}

.boost-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  position: relative;
  z-index: 1;
}

.boost-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 22px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 800;
}

.boost-button.primary {
  color: #07111d;
  background: #f6c344;
}

.boost-button.secondary {
  color: #f7fbff;
  border: 1px solid rgba(255, 255, 255, 0.20);
  background: rgba(255, 255, 255, 0.07);
}

.boost-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin: 22px 0;
}

.inventory-main { display: grid; gap: 24px; }
.inventory-kpis { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 12px; }
.inventory-kpis article { padding: 18px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; background: rgba(10,28,45,.92); }
.inventory-kpis span { display: block; color: #b9ccda; font-size: .78rem; font-weight: 800; text-transform: uppercase; }
.inventory-kpis strong { display: block; margin-top: 7px; color: #fff; font-size: clamp(1.25rem,2.5vw,2rem); }
.inventory-toolbar { display: grid; grid-template-columns: minmax(260px,2fr) repeat(2,minmax(150px,1fr)); gap: 14px; }
.inventory-toolbar label,.inventory-form-grid label { display: grid; gap: 7px; font-weight: 800; }
.inventory-toolbar input,.inventory-toolbar select { width: 100%; }
.inventory-list { display: grid; gap: 14px; }
.inventory-card { display: grid; gap: 16px; }
.inventory-card[hidden] { display: none; }
.inventory-card-head,.inventory-dialog-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.inventory-card h3 { margin: 8px 0 4px; color: #fff; font-size: 1.35rem; }
.inventory-card p { margin: 0; color: #b9ccda; }
.inventory-identifiers { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.inventory-identifiers span { padding: 7px 10px; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; color: #b9ccda; font-size: .82rem; }
.inventory-facts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin: 0; }
.inventory-facts div { padding: 11px; border-radius: 10px; background: rgba(255,255,255,.045); }
.inventory-facts dt { color: #b9ccda; font-size: .75rem; font-weight: 800; text-transform: uppercase; }
.inventory-facts dd { margin: 4px 0 0; color: #fff; }
.inventory-activity { display: grid; gap: 12px; }
.inventory-activity>div { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 0; border-top: 1px solid rgba(255,255,255,.1); }
.inventory-activity>div:first-child { border-top: 0; }
.inventory-activity strong,.inventory-activity span { display: block; }
.inventory-activity span { margin-top: 4px; color: #b9ccda; }
.inventory-inline-form { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; }
.inventory-inline-form input,.inventory-inline-form select { width: auto; min-width: 130px; }
.inventory-dialog { width: min(820px,calc(100% - 28px)); max-height: calc(100vh - 40px); padding: 0; border: 1px solid rgba(255,255,255,.16); border-radius: 20px; color: #f5f9fc; background: #07111d; box-shadow: 0 30px 100px rgba(0,0,0,.65); }
.inventory-dialog::backdrop { background: rgba(0,0,0,.72); backdrop-filter: blur(5px); }
.inventory-dialog-card { padding: clamp(20px,4vw,34px); }
.inventory-dialog-head { margin-bottom: 18px; }
.inventory-dialog-head h2 { margin: 4px 0 0; }
.inventory-form-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.inventory-dialog[data-inventory-dialog="add"] { width: min(1180px,calc(100vw - 48px)); max-width: 1180px; height: min(860px,calc(100dvh - 48px)); max-height: calc(100dvh - 48px); overflow: hidden; }
.inventory-dialog[data-inventory-dialog="add"] .inventory-dialog-card { height: 100%; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
.inventory-dialog[data-inventory-dialog="add"] .inventory-dialog-head { position: sticky; z-index: 2; top: 0; width: 100%; margin: 0 0 22px; padding: 0 0 18px; border-bottom: 1px solid rgba(255,255,255,.12); background: #07111d; }
.inventory-dialog[data-inventory-dialog="add"] .inventory-dialog-head > div { min-width: 0; }
.inventory-dialog[data-inventory-dialog="add"] .inventory-dialog-head h2 { overflow-wrap: anywhere; }
.inventory-dialog[data-inventory-dialog="add"] .inventory-dialog-head [data-inventory-close] { flex: 0 0 auto; max-width: 100%; white-space: nowrap; }
.inventory-dialog[data-inventory-dialog="add"] .inventory-dialog-card > .boost-button.primary:last-child { position: sticky; z-index: 2; bottom: 0; width: 100%; margin-top: 12px; padding: 16px; box-shadow: 0 -12px 28px #07111d; }
@media(max-width:1050px){.inventory-kpis{grid-template-columns:repeat(3,minmax(0,1fr));}.inventory-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:700px){.inventory-kpis,.inventory-toolbar,.inventory-form-grid,.inventory-facts{grid-template-columns:1fr;}.inventory-card-head,.inventory-activity>div{align-items:stretch;flex-direction:column;}.inventory-identifiers{justify-content:flex-start;}.inventory-inline-form{justify-content:flex-start;}.inventory-inline-form input,.inventory-inline-form select{width:100%;}}
@media(max-width:700px){.inventory-dialog[data-inventory-dialog="add"]{width:100vw;max-width:none;height:100dvh;max-height:100dvh;border:0;border-radius:0}.inventory-dialog[data-inventory-dialog="add"] .inventory-dialog-head{align-items:center}.inventory-dialog[data-inventory-dialog="add"] .inventory-dialog-head h2{font-size:1.25rem}}
.inventory-asset-new-main{display:grid;gap:20px;max-width:1240px;margin-inline:auto}.inventory-asset-new-main>.office-heading{margin-bottom:0}.inventory-asset-page-form.boost-form{display:block;grid-template-columns:none}.inventory-asset-form-section{display:block;margin-bottom:16px;padding:clamp(20px,3vw,30px)}.inventory-asset-section-heading{margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.12)}.inventory-asset-form-section .inventory-asset-section-heading h2{margin:0;color:var(--boost-text,#fff);font-family:inherit;font-size:1.35rem;line-height:1.25;letter-spacing:0}.inventory-asset-form-section .inventory-asset-section-heading p{margin:5px 0 0;color:var(--boost-text-muted,#b9ccda);font-size:.95rem}.inventory-asset-form-section .inventory-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.inventory-asset-form-section label{min-width:0}.inventory-asset-document-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:18px;margin-top:18px;align-items:stretch}.inventory-asset-document-grid>label{display:grid;align-content:start;gap:8px}.inventory-asset-document-grid textarea{min-height:142px}.inventory-asset-form-section .inventory-photo-field{margin:0;padding:16px}.inventory-asset-page-actions{position:sticky;z-index:5;bottom:12px;display:flex;align-items:center;justify-content:flex-end;gap:10px;width:100%;min-height:0;padding:12px 14px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(7,17,29,.96);box-shadow:0 12px 32px rgba(0,0,0,.28)}.inventory-asset-page-actions .boost-button{flex:0 0 auto;width:auto;height:auto;min-height:44px;margin:0;padding:10px 18px;border-radius:10px}@media(max-width:900px){.inventory-asset-form-section .inventory-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-asset-document-grid{grid-template-columns:1fr}}@media(max-width:620px){.inventory-asset-form-section .inventory-form-grid{grid-template-columns:1fr}.inventory-asset-page-actions{bottom:0;margin:0;border-radius:12px}.inventory-asset-page-actions .boost-button{flex:1}}
.students-main{display:grid;gap:24px}.students-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.students-kpis article{padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(10,28,45,.92)}.students-kpis span{display:block;color:#b9ccda;font-size:.78rem;font-weight:800;text-transform:uppercase}.students-kpis strong{display:block;margin-top:7px;color:#fff;font-size:clamp(1.25rem,2.5vw,2rem)}.students-toolbar{display:grid;grid-template-columns:minmax(240px,2fr) minmax(150px,1fr) auto auto;gap:12px;align-items:end}.students-toolbar label{display:grid;gap:7px;font-weight:800}.students-list{display:grid;gap:14px}.student-card{display:grid;gap:14px}.student-card[hidden]{display:none}.student-card-head,.students-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.student-card h3{margin:8px 0 4px;color:#fff;font-size:1.35rem}.student-card p{margin:0;color:#b9ccda}.student-groups{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.student-groups span{padding:6px 10px;border-radius:999px;background:rgba(246,195,68,.14);color:#f6c344;font-size:.8rem;font-weight:800}.student-contact{display:flex;flex-wrap:wrap;gap:16px;color:#b9ccda}.student-family{display:grid;gap:5px;padding:12px;border-radius:10px;background:rgba(255,255,255,.045)}.student-family span{color:#cbd9e3}.student-edit-form{margin-top:14px}.students-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.students-form-grid label{display:grid;gap:7px;font-weight:800}.students-checks{display:flex;flex-wrap:wrap;gap:16px}.students-dialog{width:min(800px,calc(100% - 28px));max-height:calc(100vh - 40px);padding:0;border:1px solid rgba(255,255,255,.16);border-radius:20px;color:#f5f9fc;background:#07111d;box-shadow:0 30px 100px rgba(0,0,0,.65)}.students-dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(5px)}.students-dialog-card{padding:clamp(20px,4vw,34px)}@media(max-width:900px){.students-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.students-toolbar,.students-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.students-kpis,.students-toolbar,.students-form-grid{grid-template-columns:1fr}.student-card-head{flex-direction:column}.student-groups{justify-content:flex-start}}

.boost-card,
.boost-panel,
.boost-principles article {
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 22px;
  background: rgba(8, 22, 35, 0.78);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.24);
}

.boost-card {
  padding: 24px;
}

.boost-card span {
  display: inline-flex;
  margin-bottom: 18px;
  color: #06111c;
  background: #f6c344;
  border-radius: 999px;
  padding: 6px 12px;
  font-weight: 900;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.boost-card h2,
.boost-panel h2,
.boost-principles h2 {
  margin: 0 0 12px;
  color: #fff;
  letter-spacing: -0.035em;
}

.boost-card p,
.boost-panel p,
.boost-principles p {
  margin: 0;
  color: #bed0de;
  line-height: 1.62;
}

.boost-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.72fr);
  gap: 28px;
  align-items: start;
  padding: clamp(26px, 5vw, 44px);
}

.workflow-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.workflow-list li {
  color: #f4f8fb;
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 14px;
  padding: 13px 15px;
}

.boost-principles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 22px;
}

.boost-principles article {
  padding: 28px;
}

.builder-shell,
.output-shell {
  display: grid;
  grid-template-columns: minmax(280px, 0.62fr) minmax(0, 1fr);
  gap: 24px;
  margin: 22px 0;
  padding: clamp(24px, 5vw, 42px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(246, 195, 68, 0.10), transparent 42%),
    rgba(8, 22, 35, 0.86);
  box-shadow: 0 22px 70px rgba(0, 0, 0, 0.30);
}

.builder-shell {
  grid-template-columns: 1fr;
}

.builder-intro {
  max-width: 860px;
}

.builder-intro h2,
.output-header h2 {
  margin: 0 0 12px;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.6rem);
  line-height: 0.95;
  letter-spacing: -0.06em;
}

.builder-intro p,
.output-header p {
  color: #bed0de;
  line-height: 1.64;
}

.boost-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.boost-form label {
  display: grid;
  gap: 8px;
  color: #eaf3fa;
  font-weight: 800;
}

.boost-form label.wide {
  grid-column: 1 / -1;
}

.boost-form > .wide {
  grid-column: 1 / -1;
  min-width: 0;
}

.boost-form input,
.boost-form select,
.boost-form textarea {
  width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
  padding: 13px 14px;
  font: inherit;
}

.boost-form select option {
  color: #07111d;
}

.boost-form textarea {
  resize: vertical;
}

.boost-form button {
  border: 0;
  cursor: pointer;
}

.output-shell {
  grid-template-columns: 1fr;
}

.value-shell {
  display: grid;
  grid-template-columns: minmax(280px, 0.76fr) minmax(0, 1fr);
  gap: 24px;
  margin: 22px 0;
  padding: clamp(24px, 5vw, 42px);
  border: 1px solid rgba(246, 195, 68, 0.20);
  border-radius: 28px;
  background:
    radial-gradient(circle at 88% 12%, rgba(246, 195, 68, 0.18), transparent 22rem),
    rgba(10, 34, 52, 0.88);
  box-shadow: 0 22px 70px rgba(0, 0, 0, 0.28);
}

.value-copy h2 {
  margin: 0 0 12px;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.5rem);
  line-height: 0.98;
  letter-spacing: -0.06em;
}

.value-copy p,
.value-card p {
  color: #cbddea;
  line-height: 1.62;
}

.value-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.value-card {
  padding: 20px;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.07);
}

.value-card h3 {
  margin: 0 0 10px;
  color: #f6c344;
  letter-spacing: -0.02em;
}

.value-card p {
  margin: 0;
}

.output-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.output-card {
  padding: 22px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.06);
}

.output-card h3 {
  margin: 0 0 14px;
  color: #f6c344;
  letter-spacing: -0.02em;
}

.output-card p,
.output-card li {
  color: #d7e4ee;
  line-height: 1.58;
}

.output-card p {
  margin: 0 0 12px;
}

.output-card p:last-child {
  margin-bottom: 0;
}

.output-card ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding-left: 1.15rem;
}

.save-status {
  display: inline-flex;
  margin: 12px 0 0;
  padding: 9px 13px;
  border-radius: 999px;
  color: #dbeaf4;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  font-size: 0.9rem;
}

.save-status[data-state="saving"] {
  color: #07111d;
  background: #f6c344;
}

.save-status[data-state="saved"] {
  color: #07111d;
  background: #90f2bd;
}

.save-status[data-state="error"] {
  color: #fff;
  background: rgba(192, 57, 43, 0.72);
  border-color: rgba(255, 255, 255, 0.22);
}

.workspace-hero {
  min-height: auto;
}

.asset-meta {
  margin-top: 16px;
  color: #8fb2ca;
  font-size: 0.82rem;
}

.milestone-list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.milestone-pill {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 14px;
  border-radius: 999px;
  color: #dceaf3;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
}

.milestone-pill[data-state="complete"] {
  color: #06111c;
  background: #90f2bd;
}

.milestone-pill[data-state="in_progress"] {
  color: #06111c;
  background: #f6c344;
}

.milestone-pill[data-state="blocked"] {
  color: #fff;
  background: rgba(192, 57, 43, 0.72);
}

.workspace-nav {
  position: sticky;
  top: 0;
  z-index: 5;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 18px 0 22px;
  padding: 12px;
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 999px;
  background: rgba(7, 17, 29, 0.88);
  backdrop-filter: blur(18px);
}

.workspace-nav a {
  color: #dbeaf4;
  text-decoration: none;
  padding: 8px 13px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.06);
  font-weight: 800;
  font-size: 0.88rem;
}

.workspace-nav a:hover {
  color: #07111d;
  background: #f6c344;
}

.dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(180px, 0.55fr));
  gap: 16px;
  margin: 22px 0;
}

.dashboard-card {
  padding: 22px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 22px;
  background: rgba(8, 22, 35, 0.82);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.22);
}

.dashboard-card.primary-card {
  background:
    radial-gradient(circle at 95% 10%, rgba(246, 195, 68, 0.18), transparent 18rem),
    rgba(8, 22, 35, 0.92);
}

.dashboard-card h2 {
  margin: 0 0 10px;
  color: #fff;
  font-size: clamp(1.8rem, 3vw, 3rem);
  letter-spacing: -0.045em;
}

.dashboard-card p {
  margin: 0;
  color: #c9d8e5;
  line-height: 1.55;
}

.dashboard-kicker {
  display: block;
  margin-bottom: 10px;
  color: #f6c344;
  font-size: 0.75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.dashboard-card strong {
  display: block;
  margin-bottom: 8px;
  color: #fff;
  font-size: clamp(1.5rem, 3vw, 2.3rem);
  line-height: 1;
  letter-spacing: -0.035em;
  text-transform: capitalize;
}

.workspace-section {
  margin: 22px 0;
  padding: clamp(22px, 4vw, 36px);
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 28px;
  background: rgba(7, 20, 32, 0.72);
  box-shadow: 0 20px 54px rgba(0, 0, 0, 0.22);
}

/* Account portal */
.portal-main {
  display: grid;
  gap: 24px;
}

.portal-welcome,
.identity-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  padding: 26px 30px;
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 22px;
  background: rgba(8, 22, 35, 0.78);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.22);
}

.portal-welcome h1,
.identity-heading h1 {
  margin: 4px 0 8px;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.4rem);
  line-height: 1;
  letter-spacing: -0.045em;
}

.portal-welcome p:last-child,
.identity-heading p:last-child {
  max-width: 720px;
  margin: 0;
  color: #bed0de;
  line-height: 1.55;
}

.portal-welcome .boost-button,
.identity-heading .boost-button {
  flex: 0 0 auto;
}

.portal-programs {
  padding: clamp(22px, 4vw, 36px);
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 28px;
  background: rgba(7, 20, 32, 0.72);
}

.portal-booster-entry { display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:28px;padding:24px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(6,18,28,.68); }
.portal-booster-entry h2,.portal-booster-entry p { margin:0; }
.portal-booster-entry .eyebrow { margin-bottom:6px; }
@media(max-width:700px){.portal-booster-entry{align-items:stretch;flex-direction:column}.portal-booster-entry .boost-button{width:100%}}

.portal-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 22px;
}

.portal-section-heading h2 {
  margin: 4px 0 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1;
  letter-spacing: -0.05em;
}

.portal-section-heading > p {
  margin: 0;
  color: #8fb2ca;
}

.portal-program-list {
  display: grid;
  gap: 16px;
}
.portal-daily { display:grid; gap:18px; }
.daily-location-list { display:grid; gap:18px; }
.daily-location-card { display:grid; gap:18px; padding:22px; border:1px solid rgba(255,255,255,.12); border-radius:20px; background:linear-gradient(145deg,rgba(14,32,45,.98),rgba(8,21,31,.98)); }
.daily-location-heading { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.daily-location-heading h3 { margin:4px 0 3px; color:#fff; font-family:Georgia,serif; font-size:clamp(1.45rem,2.5vw,2.15rem); line-height:1.05; }
.daily-location-heading p { margin:0; color:#b9ccda; }
.daily-location-calendar { flex:0 0 auto; padding:10px 15px; border-radius:999px; color:#071018; background:#f6c344; font-weight:850; text-decoration:none; }
.daily-location-tools { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.daily-location-tools a { display:grid; gap:4px; min-width:0; padding:14px; border:1px solid rgba(255,255,255,.1); border-radius:14px; color:#fff; background:rgba(255,255,255,.045); text-decoration:none; }
.daily-location-tools a:hover { border-color:rgba(246,195,68,.55); transform:translateY(-1px); }
.daily-location-tools strong { line-height:1.25; }
.daily-location-tools span { color:#aac0cf; font-size:.8rem; line-height:1.35; }
.portal-empty-inline { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px; border-radius:14px; background:rgba(255,255,255,.04); }
.portal-empty-inline p { margin:0; }
.portal-empty-inline a { color:#f6c344; font-weight:800; }
@media(max-width:900px){.daily-location-tools{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.daily-location-heading{align-items:flex-start;flex-direction:column}.daily-location-tools{grid-template-columns:1fr}.daily-location-calendar{width:100%;text-align:center}}

.portal-program-card,
.portal-empty {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 28px;
  align-items: center;
  padding: 24px;
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 22px;
  background: rgba(8, 22, 35, 0.88);
}

.portal-program-identity {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  align-items: center;
  gap: 20px;
}

.portal-program-mark,
.identity-preview-mark {
  display: grid;
  place-items: center;
  overflow: hidden;
  width: 92px;
  aspect-ratio: 1;
  border: 3px solid var(--program-color, #f6c344);
  border-radius: 22px;
  color: #07111d;
  background: var(--program-color, #f6c344);
  font-size: 2.2rem;
  font-weight: 900;
}

.portal-program-mark img,
.identity-preview-mark img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #fff;
}

.portal-role {
  color: var(--program-color, #f6c344);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.portal-program-card h2,
.portal-empty h2 {
  margin: 5px 0 6px;
  color: #fff;
  font-size: clamp(1.6rem, 3vw, 2.35rem);
  letter-spacing: -0.04em;
}

.portal-program-card p,
.portal-empty p {
  margin: 0;
  color: #a9c0d1;
}

.portal-program-card .portal-tagline {
  margin-top: 8px;
  color: #f4f8fb;
  font-style: italic;
}

.portal-school-status {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 9px !important;
  font-size: 0.82rem;
}

.portal-school-status span {
  padding: 4px 8px;
  border: 1px solid rgba(83, 207, 153, 0.4);
  border-radius: 999px;
  color: #8ce2b9;
  background: rgba(26, 132, 87, 0.15);
  font-weight: 850;
}

.portal-school-status.needs-verification span {
  border-color: rgba(246, 195, 68, 0.42);
  color: #f6c344;
  background: rgba(246, 195, 68, 0.1);
}

.school-picker {
  padding: 22px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 20px;
  background: rgba(5, 18, 30, 0.56);
}

.school-picker .section-heading h2 {
  margin: 3px 0 6px;
  color: #fff;
}

.school-picker .section-heading > p:last-child {
  margin: 0 0 18px;
  color: #aac1d1;
}

.school-search-fields {
  display: grid;
  grid-template-columns: 170px 100px minmax(260px, 1fr);
  gap: 12px;
}

.school-search-results {
  display: grid;
  gap: 7px;
  max-height: 310px;
  margin-top: 12px;
  overflow-y: auto;
}

.school-result {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 12px;
  color: #e9f3fa;
  background: rgba(255, 255, 255, 0.055);
  text-align: left;
  cursor: pointer;
}

.school-result:hover,
.school-result:focus-visible {
  border-color: #f6c344;
  background: rgba(246, 195, 68, 0.1);
}

.selected-school {
  margin-top: 12px;
  padding: 13px 15px;
  border: 1px solid rgba(83, 207, 153, 0.42);
  border-radius: 12px;
  color: #dff8ec;
  background: rgba(26, 132, 87, 0.14);
  font-weight: 750;
}

.continuity-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.continuity-grid .office-card {
  display: grid;
  align-content: start;
  gap: 14px;
}

.continuity-grid h3 {
  margin: 0;
  color: #fff;
  font-size: 1.45rem;
}

.continuity-grid p {
  margin: 0;
  color: #a9c0d1;
  line-height: 1.55;
}

.successor-list {
  display: grid;
  gap: 9px;
}

.successor-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 180px;
  gap: 14px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.04);
}

.successor-row span,
.successor-row small {
  display: block;
}

.successor-row strong {
  color: #fff;
}

.successor-row small {
  margin-top: 3px;
  color: #91aec2;
}

.portal-program-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 12px;
  max-width: 520px;
}

.portal-text-link {
  color: #bcd1df;
  text-decoration: none;
  font-weight: 800;
  padding: 10px 4px;
}

.portal-text-link:hover {
  color: #f6c344;
}

.portal-workspace-list {
  grid-column: 1 / -1;
  display: grid;
  gap: 8px;
  padding-top: 18px;
  border-top: 1px solid rgba(255, 255, 255, 0.09);
}

.portal-workspace-list > strong {
  color: #f7fbff;
}

.portal-workspace-list a {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 10px 12px;
  border-radius: 12px;
  color: #dce9f4;
  background: rgba(255, 255, 255, 0.05);
  text-decoration: none;
}

.portal-workspace-list small {
  color: #8fb2ca;
  text-transform: capitalize;
}

/* Program identity */
.identity-main {
  display: grid;
  gap: 22px;
}

.identity-layout {
  display: grid;
  grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
  gap: 20px;
  align-items: start;
}

.identity-preview,
.identity-form-panel {
  padding: clamp(24px, 4vw, 36px);
  border: 1px solid rgba(255, 255, 255, 0.10);
  border-radius: 24px;
  background: rgba(8, 22, 35, 0.84);
  box-shadow: 0 20px 54px rgba(0, 0, 0, 0.22);
}

.identity-preview {
  position: sticky;
  top: 20px;
  border-top: 5px solid var(--program-color, #f6c344);
}

.identity-preview-mark {
  width: 132px;
  margin-bottom: 24px;
  border-color: var(--program-accent, #1e75b0);
}

.identity-preview h2,
.identity-form-section h2 {
  margin: 6px 0 10px;
  color: #fff;
  font-size: clamp(1.8rem, 3vw, 2.65rem);
  line-height: 1.05;
  letter-spacing: -0.045em;
}

.identity-preview > p:not(.eyebrow) {
  color: #c5d6e2;
  line-height: 1.55;
}

.identity-mascot {
  color: var(--program-color, #f6c344) !important;
  font-weight: 900;
}

.identity-colors {
  display: flex;
  gap: 10px;
  margin: 22px 0;
}

.identity-colors span {
  width: 48px;
  height: 14px;
  border-radius: 999px;
  background: var(--program-color, #f6c344);
}

.identity-colors span:last-child {
  background: var(--program-accent, #1e75b0);
}

.identity-preview dl {
  display: grid;
  gap: 14px;
  margin: 0;
}

.identity-preview dl div {
  padding-top: 14px;
  border-top: 1px solid rgba(255, 255, 255, 0.09);
}

.identity-preview dt {
  margin-bottom: 5px;
  color: #8fb2ca;
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.identity-preview dd {
  margin: 0;
  color: #eef5f9;
  line-height: 1.5;
}

.identity-form {
  gap: 18px;
}

.identity-form-section {
  margin-top: 10px;
  padding-top: 24px;
  border-top: 1px solid rgba(255, 255, 255, 0.10);
}

.identity-form-section:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.identity-form-section p:last-child {
  margin: 0;
  color: #a9c0d1;
  line-height: 1.55;
}

.identity-color-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.identity-color-fields input[type="color"] {
  min-height: 52px;
  padding: 5px;
}

.identity-check {
  display: flex !important;
  grid-template-columns: auto 1fr !important;
  align-items: center;
  gap: 10px;
}

.identity-check input {
  width: auto !important;
}

.section-heading {
  max-width: 860px;
  margin-bottom: 22px;
}

.section-heading h2 {
  margin: 0 0 10px;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.6rem);
  line-height: 1;
  letter-spacing: -0.055em;
}

.section-heading p {
  margin: 0;
  color: #c9d8e5;
  line-height: 1.62;
}

.workspace-two-col {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.55fr);
  gap: 18px;
}

.action-card {
  background:
    linear-gradient(135deg, rgba(246, 195, 68, 0.14), transparent),
    rgba(255, 255, 255, 0.07);
}

.action-card ol,
.action-card ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding-left: 1.2rem;
  color: #d7e4ee;
  line-height: 1.52;
}

.campaign-dashboard {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(260px, 0.8fr);
  gap: 18px;
}

.campaign-main {
  grid-row: span 3;
}

.board-lane-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(240px, 1fr));
  gap: 14px;
  overflow-x: auto;
  padding-bottom: 8px;
}

.board-lane {
  min-width: 240px;
  padding: 16px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.055);
}

.board-lane h3 {
  margin: 0 0 14px;
  color: #f6c344;
  font-size: 1rem;
  letter-spacing: -0.02em;
}

.task-card {
  display: grid;
  gap: 8px;
  margin-bottom: 10px;
  padding: 13px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.10);
}

.task-card strong {
  color: #fff;
  line-height: 1.35;
}

.task-card span,
.empty-lane {
  color: #9fb8ca;
  font-size: 0.86rem;
}

@media (max-width: 900px) {
  .boost-grid,
  .boost-panel,
  .boost-principles,
  .builder-shell,
  .value-shell,
  .value-grid,
  .output-grid,
  .boost-hero {
    grid-template-columns: 1fr;
  }

  .dashboard-grid,
  .workspace-two-col,
  .campaign-dashboard,
  .identity-layout {
    grid-template-columns: 1fr;
  }

  .identity-preview {
    position: static;
  }

  .school-search-fields {
    grid-template-columns: 1fr 110px;
  }

  .continuity-grid {
    grid-template-columns: 1fr;
  }

  .school-search-name {
    grid-column: 1 / -1;
  }

  .portal-program-card,
  .portal-empty {
    grid-template-columns: 1fr;
  }

  .portal-program-actions {
    justify-content: flex-start;
    max-width: none;
  }

  .campaign-main {
    grid-row: auto;
  }

  .boost-hero-mark {
    order: -1;
  }

  .boost-hero-mark img {
    width: min(78vw, 320px);
  }

  .successor-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .boost-main {
    width: min(100% - 22px, 1180px);
    padding-top: 22px;
  }

  .boost-hero {
    min-height: auto;
    border-radius: 22px;
  }

  .boost-hero h1 {
    font-size: clamp(2.35rem, 14vw, 3.75rem);
  }

  .boost-form {
    grid-template-columns: 1fr;
  }

  .portal-welcome,
  .identity-heading,
  .portal-section-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .portal-welcome .boost-button,
  .identity-heading .boost-button,
  .portal-program-actions .boost-button {
    width: 100%;
  }

  .portal-program-identity {
    grid-template-columns: 68px minmax(0, 1fr);
  }

  .portal-program-mark {
    width: 68px;
    border-radius: 17px;
  }

  .identity-color-fields {
    grid-template-columns: 1fr;
  }

  .school-search-fields {
    grid-template-columns: 1fr;
  }

  .school-search-name {
    grid-column: auto;
  }
}

.connector-form { display: grid; gap: 12px; margin-top: 18px; width: 100%; }
.connector-form label { display: grid; gap: 6px; color: #dbe6ee; font-weight: 700; }
.connector-form input,
.connector-form textarea { width: 100%; box-sizing: border-box; padding: 11px 12px; border: 1px solid rgba(255,255,255,.16); border-radius: 10px; color: #fff; background: #10202a; }
.connector-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.connector-actions form { margin: 0; }
.connector-status.connected { color: #64d98b; }
.connector-status.error { color: #ff8c8c; }
.connector-card small { display: block; margin-top: 12px; color: #9fb2c1; }

.connector-main,.meetings-main{padding-top:28px;padding-bottom:72px}.connector-safety{margin-bottom:18px}.connector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.connector-card{display:flex;flex-direction:column;align-items:flex-start}.connector-card p{flex:1}.connector-status{padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--boost-gold) 14%,transparent);color:var(--boost-gold);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.connector-card details,.connector-safety details,.meeting-form details{width:100%;margin-top:14px}.connector-card summary,.connector-safety summary,.meeting-form summary{cursor:pointer;color:var(--boost-text);font-weight:800}.meeting-layout{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr);gap:18px}.meeting-form form,.meeting-form label{display:grid;gap:8px}.meeting-form form{gap:15px}.meeting-form input,.meeting-form select,.meeting-form textarea{width:100%;padding:12px;border:1px solid var(--boost-line);border-radius:11px;color:var(--boost-text);background:var(--boost-surface-raised)}.meeting-form textarea{min-height:120px;resize:vertical}.meeting-row{display:grid;grid-template-columns:1fr 160px;gap:12px}.meeting-list{display:grid;gap:12px}.meeting-list article{padding:15px;border:1px solid var(--boost-line);border-radius:13px;background:var(--boost-surface-raised)}.meeting-list h3{margin:5px 0;color:var(--boost-text)}.meeting-list time,.meeting-list span{color:var(--boost-text-muted);font-size:.8rem}.boost-notice{padding:12px 15px;border-radius:11px}.boost-notice.success{background:rgba(55,190,130,.15);color:#a7f3d0}.boost-notice.error{background:rgba(220,70,70,.15);color:#fecaca}.boost-app.theme-light .boost-notice.success{background:#dcfce7;color:#166534}.boost-app.theme-light .boost-notice.error{background:#fee2e2;color:#991b1b}@media(max-width:900px){.connector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.meeting-layout{grid-template-columns:1fr}}@media(max-width:640px){.connector-grid,.meeting-row{grid-template-columns:1fr}}

.board-main,
.calendar-main,
.sms-main,
.plan-main { padding-top: 28px; padding-bottom: 70px; }

.plan-form { display: grid; gap: 18px; }
.plan-form label { display: grid; gap: 7px; color: #d5e3eb; font-weight: 750; }
.plan-form input,.plan-form textarea { width: 100%; padding: 12px; border: 1px solid rgba(255,255,255,.16); border-radius: 11px; color: #fff; background: #14232d; }
.plan-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.plan-save { display: flex; gap: 10px; justify-content: flex-end; }

.board-add { display: grid; grid-template-columns: minmax(180px,.35fr) minmax(0,1fr); gap: 20px; margin-bottom: 18px; }
.board-task-form { display: grid; grid-template-columns: minmax(220px,2fr) repeat(3,minmax(145px,1fr)) auto; gap: 10px; align-items: end; }
.board-task-form label,
.working-task label,
.calendar-share label { color: #bcd0dc; font-size: .78rem; font-weight: 750; }
.board-task-form input,.board-task-form select,.working-task input,.working-task select,.calendar-share input { width: 100%; margin-top: 5px; padding: 10px; border: 1px solid rgba(255,255,255,.15); border-radius: 10px; color: #fff; background: #14232d; }
.working-board-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,240px),1fr)); gap: 13px; padding-bottom: 18px; }
.board-main,.board-main * { min-width: 0; box-sizing: border-box; }
.board-add { grid-template-columns: minmax(0,1fr); }
.board-task-form { grid-template-columns: repeat(auto-fit,minmax(min(100%,180px),1fr)); }
.board-task-form .boost-button { width: 100%; }
.working-lane { min-height: 260px; padding: 15px; border: 1px solid rgba(255,255,255,.12); border-radius: 18px; background: rgba(255,255,255,.045); }
.working-lane-head { display: flex; justify-content: space-between; gap: 10px; align-items: center; margin-bottom: 13px; }
.working-lane-head h2 { margin: 0; color: #f6c344; font-size: 1.05rem; }
.working-lane-head span { min-width: 26px; padding: 4px 7px; border-radius: 999px; text-align: center; color: #dbe8ef; background: rgba(255,255,255,.08); }
.working-task { display: grid; gap: 9px; margin-bottom: 11px; padding: 13px; border: 1px solid rgba(255,255,255,.1); border-radius: 13px; background: rgba(255,255,255,.07); }
.working-task strong { color: #fff; line-height: 1.35; }
.working-task.is-done { opacity: .58; }
.working-task.is-done strong { text-decoration: line-through; }
.boost-app.theme-light .board-task-form label,
.boost-app.theme-light .working-task label { color: var(--boost-text-muted); }
.boost-app.theme-light .board-task-form input,
.boost-app.theme-light .board-task-form select,
.boost-app.theme-light .working-task input,
.boost-app.theme-light .working-task select {
  border-color: var(--boost-line);
  color: var(--boost-text);
  background: var(--boost-surface-raised);
}
.boost-app.theme-light .working-lane {
  border-color: var(--boost-line);
  background: var(--boost-surface);
}
.boost-app.theme-light .working-lane-head h2 { color: var(--boost-blue-strong); }
.boost-app.theme-light .working-lane-head span {
  color: var(--boost-text);
  background: var(--boost-surface-raised);
}
.boost-app.theme-light .working-task {
  border-color: var(--boost-line);
  background: var(--boost-surface-raised);
}
.boost-app.theme-light .working-task strong { color: var(--boost-text); }

.calendar-toolbar { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 16px; margin: 0 0 12px; }
.calendar-toolbar h2 { margin: 0; color: #fff; text-align: center; }
.calendar-toolbar a { color: #f6c344; font-weight: 800; }
.calendar-toolbar a:last-child { text-align: right; }
.calendar-grid { display: grid; grid-template-columns: repeat(7,minmax(110px,1fr)); border: 1px solid rgba(255,255,255,.12); border-radius: 18px; overflow: hidden; background: rgba(255,255,255,.04); }
.calendar-weekday { padding: 10px; color: #90aebe; text-align: center; font-size: .75rem; font-weight: 850; text-transform: uppercase; background: rgba(0,0,0,.18); }
.calendar-day { min-height: 125px; padding: 9px; border-top: 1px solid rgba(255,255,255,.09); border-right: 1px solid rgba(255,255,255,.09); color: #dce8ee; }
.calendar-day.is-empty { background: rgba(0,0,0,.12); }
.calendar-event { display: block; margin-top: 7px; padding: 6px 7px; border-radius: 8px; color: #09131a; background: #9bc9e5; font-size: .72rem; font-weight: 750; line-height: 1.25; }
.calendar-event.deadline { background: #f6c344; }
.calendar-event.done { background: #4ed39a; }
.calendar-event.meeting { color: #e8f5ff; background: #236a91; }
.calendar-share { margin-top: 18px; }

.sms-options { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; margin-bottom: 18px; }
.sms-checklist ol { display: grid; gap: 10px; color: #d7e4eb; line-height: 1.55; }

@media(max-width:900px){.board-add,.sms-options{grid-template-columns:1fr}.board-task-form{grid-template-columns:1fr}.calendar-grid{overflow-x:auto;grid-template-columns:repeat(7,minmax(125px,1fr));}.calendar-main{overflow-x:hidden}}
@media(max-width:640px){.plan-fields{grid-template-columns:1fr}.plan-save{flex-direction:column}.plan-save .boost-button{width:100%}}

/* Campaign plan: readable progress, checks, and supporting forms. */
.plan-main { display: grid; gap: 22px; }
.plan-main .office-heading { padding-bottom: 6px; }
.plan-main .office-heading h1 { line-height: 1.08; letter-spacing: -.045em; overflow-wrap: anywhere; }
.office-progress { flex: 0 0 auto; display: grid; gap: 4px; min-width: 180px; padding: 16px 18px; border: 1px solid rgba(255,255,255,.13); border-radius: 16px; background: rgba(255,255,255,.05); }
.office-progress strong { color: #fff; font-size: 1.35rem; line-height: 1.1; }
.office-progress span { color: #b9ccda; font-size: .9rem; line-height: 1.35; }
.plan-checks { display: grid; gap: 18px; }
.milestone-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.milestone-item { display: grid; grid-template-columns: 84px minmax(0,1fr); align-items: start; gap: 14px; padding: 15px; border: 1px solid rgba(255,255,255,.1); border-radius: 14px; background: rgba(255,255,255,.035); }
.milestone-item > span { display: inline-flex; justify-content: center; padding: 6px 9px; border-radius: 999px; color: #ffd7d7; background: rgba(220,70,70,.16); font-size: .75rem; font-weight: 850; line-height: 1.2; }
.milestone-item.is-complete > span { color: #b9f6d7; background: rgba(55,190,130,.16); }
.milestone-item strong { display: block; color: #fff; line-height: 1.35; }
.milestone-item small { display: block; margin-top: 5px; color: #b9ccda; font-size: .9rem; line-height: 1.5; }
.plan-check-action { margin: 0; }
.plan-support-grid { display: grid; grid-template-columns: 1fr; gap: 22px; }
.plan-support-grid .office-card { display: grid; gap: 16px; }
.plan-support-grid .compact-form { grid-template-columns: repeat(2,minmax(0,1fr)); align-items: end; margin-top: 2px; }
.plan-support-grid .compact-form button { justify-self: start; }
.plan-support-grid .form-note { align-self: center; margin: 0; }
.plan-support-grid .office-list-row { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 14px; padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.1); }
.plan-main .boost-button { line-height: 1.2; white-space: normal; }
.boost-app.theme-light .office-progress,
.boost-app.theme-light .milestone-item {
  border-color: var(--boost-line);
  background: var(--boost-surface-raised);
}
.boost-app.theme-light .office-progress strong,
.boost-app.theme-light .milestone-item strong { color: var(--boost-text); }
.boost-app.theme-light .office-progress span,
.boost-app.theme-light .milestone-item small { color: var(--boost-text-muted); }
.boost-app.theme-light .milestone-item > span {
  color: #991b1b;
  background: #fee2e2;
}
.boost-app.theme-light .milestone-item.is-complete > span {
  color: #166534;
  background: #dcfce7;
}

@media(max-width:760px){
  .milestone-grid,.plan-support-grid .compact-form { grid-template-columns: 1fr; }
  .milestone-item { grid-template-columns: 76px minmax(0,1fr); }
  .plan-support-grid .office-list-row { grid-template-columns: 1fr; }
  .plan-support-grid .compact-form button { width: 100%; }
}

/* Sourcing is a full working canvas, not a narrow campaign form. */
.sourcing-main{width:100%;max-width:none;display:grid;gap:24px}
.sourcing-main>.office-heading,.sourcing-main>.office-card,.sourcing-main>.sourcing-steps,.sourcing-main>.sourcing-request-switcher{width:100%;max-width:none}
.sourcing-status{min-width:170px;padding:18px 22px;border:1px solid var(--boost-border);border-radius:18px;background:var(--boost-surface);display:grid}
.sourcing-status strong{font-size:2rem;color:var(--program-color,#f6c344)}
.sourcing-status span{color:var(--boost-muted)}
.boost-app.theme-light .sourcing-status strong,
.boost-app.theme-light .sourcing-lists span,
.boost-app.theme-light .sourcing-source-card>small,
.boost-app.theme-light .sourcing-comparison small { color: var(--boost-blue-strong); }
.boost-app.theme-light .sourcing-steps article.is-done>span {
  color: #fff;
  background: var(--boost-blue-strong);
}
.sourcing-request-switcher{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.sourcing-request-switcher a{display:grid;gap:4px;min-width:0;padding:16px 18px;border:1px solid var(--boost-border);border-radius:16px;background:var(--boost-surface);color:var(--boost-text);text-decoration:none}
.sourcing-request-switcher a:hover{border-color:var(--program-color,#f6c344);background:var(--boost-surface-strong)}
.sourcing-request-switcher a:focus-visible{outline:3px solid color-mix(in srgb,var(--program-color,#f6c344) 70%,white);outline-offset:3px}
.sourcing-request-switcher a.is-current{border-color:var(--program-color,#f6c344);box-shadow:inset 4px 0 0 var(--program-color,#f6c344)}
.sourcing-request-switcher span{font-size:1rem;font-weight:850}
.sourcing-request-switcher small{color:var(--boost-muted);text-transform:capitalize}
.sourcing-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.sourcing-steps article{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:3px 12px;padding:18px;border:1px solid var(--boost-border);border-radius:16px;background:var(--boost-surface)}
.sourcing-steps article>span{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--boost-surface-strong);font-weight:900}
.sourcing-steps article small{color:var(--boost-muted)}
.sourcing-steps article.is-done>span{background:var(--program-color,#f6c344);color:#102033}
.sourcing-request-facts,.sourcing-lists,.sourcing-source-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.sourcing-request-facts>div,.sourcing-lists article,.sourcing-source-card{padding:18px;border:1px solid var(--boost-border);border-radius:16px;background:var(--boost-surface-strong)}
.sourcing-request-facts dt{color:var(--boost-muted);font-size:.8rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.sourcing-request-facts dd{margin:6px 0 0;font-size:1.08rem;font-weight:800}
.sourcing-lists{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}
.sourcing-lists article{display:grid;gap:6px}
.sourcing-lists span{color:var(--program-color,#f6c344);font-weight:850}
.sourcing-lists p,.sourcing-source-card p,.sourcing-record-invitations p,.sourcing-recommend p{color:var(--boost-muted)}
.sourcing-source-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0}
.sourcing-source-card{display:flex;flex-direction:column;gap:12px}
.sourcing-source-card>label{display:flex;align-items:center;gap:9px;font-weight:800}
.sourcing-source-card h3{margin:0;font-size:1.35rem}
.sourcing-source-card .boost-actions{margin-top:auto}
.sourcing-source-card>small{text-transform:capitalize;color:var(--program-color,#f6c344);font-weight:800}
.sourcing-record-invitations{display:flex;align-items:center;gap:14px;margin-top:14px;padding-top:18px;border-top:1px solid var(--boost-border)}
.sourcing-record-invitations p{margin:0}
.sourcing-comparison{display:grid;border:1px solid var(--boost-border);border-radius:16px;overflow:hidden}
.sourcing-comparison>div{display:grid;grid-template-columns:1.15fr .65fr 2.5fr .75fr;gap:16px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--boost-border)}
.sourcing-comparison>div:last-child{border-bottom:0}
.sourcing-comparison-head{background:var(--boost-surface-strong);font-size:.8rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.sourcing-comparison .is-recommended{background:color-mix(in srgb,var(--program-color,#f6c344) 12%,var(--boost-surface))}
.sourcing-comparison [role=cell]:first-child{display:grid;gap:3px}
.sourcing-comparison small{color:var(--program-color,#f6c344);font-weight:850}
.sourcing-recommend{display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:12px;margin-top:18px}
.sourcing-recommend p{grid-column:1/-1;margin:0}
.sourcing-site-dialog{width:min(1120px,calc(100vw - 40px));height:min(820px,calc(100vh - 40px));padding:0;border:1px solid var(--boost-border);border-radius:22px;background:var(--boost-surface);color:var(--boost-text)}
.sourcing-site-dialog::backdrop{background:rgba(3,12,22,.78);backdrop-filter:blur(6px)}
.sourcing-site-head{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid var(--boost-border)}
.sourcing-site-dialog>p{margin:14px 22px;color:var(--boost-muted)}
.sourcing-site-dialog iframe{display:block;width:calc(100% - 44px);height:calc(100% - 190px);margin:0 22px 14px;border:1px solid var(--boost-border);border-radius:14px;background:#fff}
.sourcing-site-dialog>[data-site-open]{margin:0 22px 20px}
.standards-source-link{display:inline-flex;align-items:center;gap:6px;width:max-content;color:var(--program-color,#f6c344);font-weight:850;text-underline-offset:3px}
.standards-source-link:after{content:"↗";font-size:.9em}
@media(max-width:960px){
  .sourcing-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sourcing-request-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sourcing-source-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .sourcing-steps,.sourcing-request-facts,.sourcing-lists,.sourcing-request-switcher{grid-template-columns:1fr}
  .sourcing-comparison{overflow:auto}
  .sourcing-comparison>div{min-width:760px}
  .sourcing-recommend{grid-template-columns:1fr}
  .sourcing-record-invitations{align-items:stretch;flex-direction:column}
  .sourcing-site-dialog{width:calc(100vw - 16px);height:calc(100vh - 16px)}
}

@media(max-width:640px){
  .office-progress { width: 100%; }
  .milestone-item { grid-template-columns: 1fr; }
  .milestone-item > span { justify-self: start; }
}

/* Daily classroom and program work stays visible outside More. */
.boost-nav-daily { position: relative; flex: 0 0 auto; }
.boost-nav-daily > summary { list-style: none; cursor: pointer; padding: 11px 14px; border-radius: 11px; color: #d5e2ea; font-weight: 750; }
.boost-nav-daily > summary::-webkit-details-marker { display: none; }
.boost-nav-daily > summary::after { content: ' +'; color: #f6c344; }
.boost-nav-daily > summary.active,.boost-nav-daily[open] > summary { color: #071018; background: #f6c344; }
.boost-nav-daily > summary.active::after,.boost-nav-daily[open] > summary::after { color: #071018; }
.boost-nav-daily-links { position: absolute; z-index: 30; top: calc(100% + 8px); left: 0; display: grid; min-width: 260px; gap: 4px; padding: 10px; border: 1px solid rgba(255,255,255,.14); border-radius: 14px; background: #0a1721; box-shadow: 0 22px 55px rgba(0,0,0,.48); }
.boost-nav-daily-links a { width: 100%; }
.office-daily { display: grid; gap: 14px; }
.office-daily .section-heading h2 { margin-bottom: 0; }
.office-daily-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.office-daily-grid a { display: grid; gap: 6px; min-width: 0; padding: 17px 18px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; color: #fff; background: rgba(255,255,255,.055); text-decoration: none; }
.office-daily-grid a:hover { border-color: rgba(246,195,68,.55); transform: translateY(-1px); }
.office-daily-grid strong { font-size: 1.02rem; line-height: 1.3; }
.office-daily-grid span { color: #b9ccda; font-size: .88rem; line-height: 1.4; }
@media(max-width:800px){.office-daily-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.boost-nav-daily{position:static}.boost-nav-daily-links{left:10px;right:10px;min-width:0}}
@media(max-width:520px){.office-daily-grid{grid-template-columns:1fr}}

/* Canonical classes and teaching locations. */
.classes-main{display:grid;gap:28px}.classes-location-list{display:grid;gap:18px}.classes-location-card{display:grid;gap:20px}.classes-location-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.classes-location-card>header h2{margin:.35rem 0 .2rem}.classes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.class-card{display:grid;gap:16px;min-width:0;padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.04)}.class-card h3{margin:.35rem 0 .25rem;font-size:1.25rem;line-height:1.2}.class-card p{margin:0;color:#b9ccda}.class-card-facts{display:flex;flex-wrap:wrap;gap:8px}.class-card-facts span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.07);font-size:.86rem;line-height:1.3}.class-card nav{display:flex;flex-wrap:wrap;gap:8px}.class-card nav a{padding:9px 12px;border:1px solid rgba(246,195,68,.35);border-radius:10px;color:#f6c344;text-decoration:none}.class-card details{border-top:1px solid rgba(255,255,255,.1);padding-top:12px}.class-card summary{cursor:pointer;font-weight:750}.classes-setup{display:grid;gap:16px}.classes-setup-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.classes-setup-grid>form{align-content:start}.compact-form{display:grid;gap:10px}.compact-form h4{margin:0}.form-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.classes-first-step{padding:26px}.classes-main select,.classes-main input{min-width:0;max-width:100%}
@media(max-width:980px){.classes-setup-grid{grid-template-columns:1fr 1fr}.classes-setup-grid>form:last-child{grid-column:1/-1}}
@media(max-width:720px){.classes-grid,.classes-setup-grid,.form-pair{grid-template-columns:1fr}.classes-setup-grid>form:last-child{grid-column:auto}.classes-location-card>header{display:grid}.class-card nav a{flex:1 1 auto;text-align:center}}
.daily-class-switcher{display:grid;gap:10px;margin:4px 0 16px}.daily-class-switcher>section{display:grid;gap:10px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(4,15,23,.38)}.daily-class-switcher>section>div{display:flex;justify-content:space-between;gap:12px}.daily-class-switcher>section>div span{color:#a9bfce}.daily-class-switcher nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.daily-class-switcher nav a{display:grid;gap:3px;min-width:0;padding:11px;border-radius:11px;background:rgba(255,255,255,.06);color:#fff;text-decoration:none}.daily-class-switcher nav a span{color:#b9ccda;font-size:.78rem;text-transform:capitalize}.daily-class-switcher nav a strong{overflow-wrap:anywhere;line-height:1.25}@media(max-width:800px){.daily-class-switcher nav{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.daily-class-switcher nav{grid-template-columns:1fr}}
.class-context-bar{display:flex;flex-wrap:wrap;gap:8px;overflow-x:auto;padding:4px 0 2px}.class-context-bar a{flex:0 0 auto;padding:9px 13px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:#c8d8e3;text-decoration:none;line-height:1.2}.class-context-bar a.active{border-color:#f6c344;background:rgba(246,195,68,.12);color:#fff}.class-context-bar a:focus-visible{outline:3px solid rgba(246,195,68,.45);outline-offset:2px}

/* Configurable inventory workspace. */
.inventory-settings { display: grid; gap: 18px; }
.inventory-settings[hidden] { display: none; }
.inventory-settings-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.inventory-settings-grid form { align-content: start; padding: 16px; border: 1px solid rgba(255,255,255,.1); border-radius: 14px; background: rgba(255,255,255,.035); }
.inventory-settings-grid h3 { margin: 0; color: #fff; }
.inventory-toolbar { grid-template-columns: minmax(250px,2fr) repeat(3,minmax(140px,1fr)); }
.inventory-bulk-form { display: grid; gap: 14px; }
.inventory-bulk-toolbar { position: sticky; z-index: 12; top: 8px; display: grid; grid-template-columns: auto repeat(4,minmax(120px,1fr)) auto auto; align-items: end; gap: 10px; padding: 12px; border: 1px solid rgba(246,195,68,.28); border-radius: 14px; background: rgba(8,21,31,.97); box-shadow: 0 10px 28px rgba(0,0,0,.25); }
.inventory-bulk-toolbar > strong { align-self: center; white-space: nowrap; color: #f6c344; }
.inventory-bulk-toolbar label { display: grid; gap: 5px; color: #b9ccda; font-size: .76rem; font-weight: 800; }
.inventory-bulk-toolbar select { min-width: 0; width: 100%; }
.inventory-select { display: inline-flex; align-items: center; gap: 8px; color: #b9ccda; font-size: .82rem; }
.inventory-select input { width: auto; }
.inventory-custom-values { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin: 0; }
.inventory-custom-values div { padding: 9px; border-radius: 9px; background: rgba(255,255,255,.04); }
.inventory-custom-values dt { color: #b9ccda; font-size: .72rem; }
.inventory-custom-values dd { margin: 3px 0 0; }
.inventory-history { display: flex; flex-wrap: wrap; gap: 8px; color: #b9ccda; font-size: .82rem; }
.inventory-dialog input[type=file] { padding: 10px; }
@media(max-width:1050px){.inventory-settings-grid{grid-template-columns:1fr}.inventory-bulk-toolbar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-bulk-toolbar>strong{grid-column:1/-1}}
@media(max-width:900px){.inventory-toolbar,.inventory-bulk-toolbar,.inventory-custom-values{grid-template-columns:1fr}.inventory-bulk-toolbar>strong{grid-column:auto}}
@media print {
  body.inventory-print-labels > :not(.inventory-label-sheet) { display:none!important; }
  body.inventory-print-labels { color:#000!important;background:#fff!important; }
  body.inventory-print-labels .inventory-label-sheet { display:grid;grid-template-columns:repeat(3,1fr);gap:10mm;padding:8mm; }
  body.inventory-print-labels .inventory-label { display:flex;min-height:32mm;padding:5mm;border:1.5pt solid #000;flex-direction:column;justify-content:space-between;color:#000;background:#fff;break-inside:avoid;overflow-wrap:anywhere; }
  body.inventory-print-labels .inventory-label strong { font-size:14pt;line-height:1.15; }
  body.inventory-print-labels .inventory-label-identifiers { font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11pt;font-weight:700;letter-spacing:.04em;white-space:pre-line; }
  body.inventory-print-labels .inventory-label-barcode { display:block;width:100%;height:12mm;fill:#000;shape-rendering:crispEdges; }
  body.inventory-print-labels .inventory-label small { font-size:8pt; }
}

/* Daily schedule and backward concert planning. */
.schedule-overview { display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:14px; }
.schedule-agenda { display:grid;gap:8px;margin:14px 0; }
.schedule-agenda>div { display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;padding:11px;border-radius:11px;background:rgba(255,255,255,.045); }
.schedule-agenda time { color:#f6c344;font-weight:850; }
.schedule-agenda span,.schedule-agenda strong,.schedule-agenda small { display:block; }
.schedule-agenda small { margin-top:3px;color:#b9ccda; }
.concert-plan-list { display:grid;gap:18px; }
.concert-plan { display:grid;gap:16px; }
.concert-plan>.office-card-head>strong { color:#f6c344;white-space:nowrap; }
.concert-milestones { display:grid;gap:8px; }
.concert-milestone { display:grid;grid-template-columns:100px minmax(240px,1fr) 145px 135px auto;align-items:center;gap:9px;padding:10px;border-radius:11px;background:rgba(255,255,255,.04); }
.concert-milestone>span { color:#b9ccda;font-size:.78rem;font-weight:850;text-transform:uppercase; }
.concert-milestone input,.concert-milestone select { width:100%; }
.concert-milestone.is-done { opacity:.65; }
.concert-milestone.is-done input[name=title] { text-decoration:line-through; }
.schedule-dialog { width:min(720px,calc(100% - 28px)); }
@media(max-width:900px){.schedule-overview{grid-template-columns:1fr}.concert-milestone{grid-template-columns:1fr 1fr}.concert-milestone>span,.concert-milestone input[name=title]{grid-column:1/-1}}
@media(max-width:600px){.concert-milestone{grid-template-columns:1fr}.concert-milestone>*{grid-column:auto!important}.concert-plan>.office-card-head{display:grid}.concert-plan>.office-card-head>strong{white-space:normal}}

/* Performance-centered educator workspace. */
.production-layout{display:grid;grid-template-columns:minmax(230px,280px) minmax(0,1fr);gap:20px;align-items:start}.production-index{position:sticky;top:18px;display:grid;gap:8px}.production-index>a{display:grid;gap:3px;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:inherit;text-decoration:none}.production-index>a[aria-current=page]{border-color:#f6c344;background:rgba(246,195,68,.1)}.production-index span,.production-connectors span{color:#aebfca;font-size:.82rem}.production-workspace,.production-summary,.production-task-list{display:grid;gap:14px}.production-summary{grid-template-columns:minmax(0,1fr) auto}.production-summary dl{display:grid;grid-template-columns:repeat(2,minmax(95px,1fr));gap:10px;margin:0}.production-summary dl>div{padding:10px;border-radius:10px;background:rgba(255,255,255,.04)}.production-summary dt{color:#aebfca;font-size:.75rem;text-transform:uppercase}.production-summary dd{margin:3px 0 0;font-weight:800}.occurrence-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.occurrence-card{display:grid;align-content:start;gap:8px}.occurrence-card details{margin-top:8px}.production-task-list>div{display:grid;grid-template-columns:100px minmax(220px,1fr) 130px 110px;gap:10px;align-items:center;padding:11px 12px;border-radius:10px;background:rgba(255,255,255,.04)}.production-task-list>div>span{color:#9ec4d4;font-size:.76rem;font-weight:800;text-transform:uppercase}.production-task-list>div>em{font-style:normal;color:#f6c344}.production-task-list>.is-done{opacity:.62}.production-connectors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.production-connectors>a{display:grid;gap:3px;padding:14px;border:1px solid rgba(255,255,255,.11);border-radius:12px;color:inherit;text-decoration:none}.production-main dialog{width:min(620px,calc(100vw - 28px));max-height:90vh;overflow:auto;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:#0b1a24;color:#fff;padding:22px}.production-main dialog::backdrop{background:rgba(0,0,0,.72)}
.production-switcher{display:flex;align-items:stretch;gap:10px;overflow-x:auto;padding:2px 0 10px;scrollbar-width:thin}.production-switcher>span{display:flex;align-items:center;flex:0 0 auto;color:var(--boost-muted);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.production-switcher>a{display:grid;gap:3px;flex:0 0 min(280px,72vw);padding:11px 13px;border:1px solid var(--boost-line);border-radius:13px;background:var(--boost-surface-raised);color:inherit;text-decoration:none}.production-switcher>a[aria-current=page]{border-color:var(--boost-gold);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--boost-gold) 35%,transparent)}.production-switcher small{color:var(--boost-muted)}
@media(max-width:1100px){.production-switcher{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.production-switcher>span{grid-column:1/-1}.production-switcher>a{min-width:0;max-width:none;overflow-wrap:anywhere}}@media(max-width:560px){.production-switcher{grid-template-columns:1fr}}
@media(max-width:1024px){.production-layout{grid-template-columns:1fr}.production-index{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.production-index h2{grid-column:1/-1}.production-connectors{grid-template-columns:repeat(2,minmax(0,1fr))}}
.production-task{display:grid;grid-template-columns:100px minmax(220px,1fr) 180px 130px auto;gap:10px;align-items:center;padding:11px 12px;border-radius:10px;background:rgba(255,255,255,.04)}.production-task>span{color:#9ec4d4;font-size:.76rem;font-weight:800;text-transform:uppercase}.production-task input,.production-task select{width:100%}.production-task.is-done{opacity:.62}
@media(max-width:700px){.production-summary{grid-template-columns:1fr}.production-index,.production-connectors{grid-template-columns:1fr}.production-task-list>div{grid-template-columns:1fr 1fr}.production-task-list>div>strong{grid-column:1/-1}.production-main .office-heading{align-items:stretch}.production-main .office-heading>.boost-actions{display:grid}.production-main dialog{padding:16px}.production-summary dl{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.production-task{grid-template-columns:1fr 1fr}.production-task>span,.production-task>input[name=title]{grid-column:1/-1}}
.boost-app .apfreepass-auth-form .btn .btn-loading {
  display: none !important;
}

.boost-app .apfreepass-auth-form .btn.loading .btn-text {
  display: none !important;
}

.boost-app .apfreepass-auth-form .btn.loading .btn-loading {
  display: inline-flex !important;
}

/* Standalone passwordless login: keep WordPress auth styles inside the BOOST shell. */
.boost-login {
  height: auto;
  min-height: 100vh;
  background:
    radial-gradient(circle at 18% 8%, rgba(246, 195, 68, 0.14), transparent 31rem),
    linear-gradient(145deg, #07111b 0%, #111d28 55%, #07111b 100%);
}

.boost-login-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: auto;
  max-width: none;
  margin: 0 24px;
  padding: 22px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.boost-login-brand {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  color: #fff;
  text-decoration: none;
}

.boost-login-brand img {
  width: 84px;
  height: 84px;
  object-fit: contain;
}

.boost-login-brand span,
.boost-login-brand small {
  display: block;
}

.boost-login-brand strong {
  font-size: 1.25rem;
  letter-spacing: 0.08em;
}

.boost-login-brand small {
  margin-top: 3px;
  color: #9fb6c7;
  font-size: 0.78rem;
}

.boost-login .boost-main {
  display: grid;
  align-items: center;
  width: auto;
  max-width: none;
  margin: 0 24px;
  min-height: calc(100vh - 109px);
  padding: 48px 0 72px;
}

.boost-login .boost-demo-chooser {
  width: auto;
  margin: 34px 0 70px;
}

.boost-login-footer {
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(7, 17, 27, 0.88);
}

.boost-login-footer-inner {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  width: auto;
  max-width: none;
  margin: 0 24px;
  padding: 26px 0 34px;
  color: #9fb6c7;
}

.boost-login-footer strong {
  color: #fff;
  font-size: 0.92rem;
  letter-spacing: 0.08em;
}

.boost-login-footer p {
  margin: 5px 0 0;
}

.boost-login-footer nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 12px 20px;
}

.boost-login-footer a {
  color: #fff;
  font-weight: 750;
  text-decoration: none;
}

.boost-login-footer a:hover,
.boost-login-footer a:focus-visible {
  text-decoration: underline;
  text-underline-offset: 4px;
}

.boost-login .boost-panel {
  grid-template-columns: minmax(0, 0.9fr) minmax(340px, 0.72fr);
  align-items: stretch;
  gap: clamp(30px, 6vw, 72px);
  padding: clamp(30px, 6vw, 60px);
  border-color: rgba(255, 255, 255, 0.14);
  background:
    linear-gradient(135deg, rgba(246, 195, 68, 0.08), transparent 38%),
    rgba(8, 20, 31, 0.94);
}

.boost-login-intro {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.boost-login .boost-login-intro h1 {
  max-width: 620px;
  margin: 10px 0 18px;
  color: #fff;
  font-size: clamp(2.4rem, 5vw, 4.65rem);
  line-height: 0.96;
  letter-spacing: -0.055em;
}

.boost-login-intro > p:last-of-type {
  max-width: 590px;
  font-size: 1.15rem;
}

.boost-login-intro ul {
  display: grid;
  gap: 10px;
  margin: 26px 0 0;
  padding: 0;
  list-style: none;
}

.boost-login-intro li {
  position: relative;
  padding-left: 28px;
  color: #dbe7ee;
}

.boost-login-intro li::before {
  content: '\2713';
  position: absolute;
  left: 0;
  color: #f6c344;
  font-weight: 900;
}

.boost-login .boost-login-form-shell {
  display: block;
  width: auto;
  min-height: 0;
  padding: 28px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.06);
}

.boost-login-form-heading h2 {
  margin: 5px 0 8px;
  color: #fff;
  font-size: 1.65rem;
}

.boost-login-form-heading p:last-child {
  margin: 0 0 22px;
  color: #abc0ce;
  line-height: 1.5;
}

.boost-login .apfreepass-login-form,
.boost-login .apfreepass-auth-panels,
.boost-login .apfreepass-tab-panel,
.boost-login .apfreepass-auth-form {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.boost-login .apfreepass-auth-form .form-group {
  margin: 0 0 16px;
}

.boost-login .apfreepass-auth-form label {
  display: block;
  margin-bottom: 8px;
  color: #e8f0f5;
  font-weight: 800;
}

.boost-login .apfreepass-auth-form .form-control {
  box-sizing: border-box;
  width: 100%;
  height: auto;
  min-height: 52px;
  padding: 13px 14px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 12px;
  color: #f7fbff;
  background: rgba(2, 10, 17, 0.62);
  font-size: 1rem;
}

.boost-login .apfreepass-auth-form .form-control:focus {
  border-color: #f6c344;
  outline: 3px solid rgba(246, 195, 68, 0.18);
}

.boost-login .apfreepass-auth-form .btn-primary {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 52px;
  padding: 13px 18px;
  border: 0;
  border-radius: 12px;
  color: #07111d;
  background: #f6c344;
  font-weight: 900;
  cursor: pointer;
}

.boost-login .apfreepass-auth-form .form-hint {
  color: #91aaba;
  font-size: 0.82rem;
  line-height: 1.45;
}

.boost-login .boost-closed-access > div:last-child {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.boost-login .boost-access-eligibility-note {
  margin: 28px 0 0;
  color: #9fb6c7;
  line-height: 1.55;
}

/* Public entrance readability: do not make people lean in to understand BOOST!. */
.boost-login-brand small,
.boost-login .eyebrow {
  font-size: 0.9rem;
}

.boost-login .apfreepass-auth-form .form-hint,
.boost-login .boost-demo-note {
  font-size: 0.95rem;
}

.boost-login .boost-demo-card .boost-button,
.boost-login .apfreepass-auth-form .btn-primary {
  font-size: 1rem;
}

/* Public product front door: educator-first, fluid, and distinct from setup. */
.boost-public-landing .boost-shell {
  width: auto;
  max-width: none;
  margin-inline: 24px;
}

.boost-public-landing .boost-main {
  width: auto;
  max-width: none;
  margin-inline: 24px;
}

.boost-public-landing .boost-public-hero {
  grid-template-columns: minmax(0, 1.06fr) minmax(420px, 0.94fr);
  min-height: min(720px, calc(100vh - 160px));
  gap: clamp(34px, 6vw, 90px);
  padding: clamp(38px, 6vw, 86px);
}

.boost-public-landing .boost-public-hero h1 {
  margin: 10px 0 22px;
  font-size: clamp(3.5rem, 6.6vw, 7.6rem);
  line-height: 0.9;
  letter-spacing: -0.06em;
}

.boost-public-landing .boost-public-hero .lede { margin-bottom: 28px; }
.boost-public-landing .boost-public-hero .boost-actions { margin-bottom: 26px; }
.boost-public-landing .boost-public-hero .boost-hero-copy { min-width: 0; }
.boost-public-eligibility { max-width: 780px; margin: 0; color: #9fb6c7; font-size: .9rem; line-height: 1.55; }

.boost-public-preview {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 16px;
  min-width: 0;
  padding: clamp(20px, 3vw, 34px);
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 28px;
  background: linear-gradient(155deg,rgba(19,47,68,.98),rgba(5,17,27,.98));
  box-shadow: 0 32px 80px rgba(0,0,0,.42);
  transform: rotate(1.2deg);
}
.boost-public-preview-bar,.boost-public-preview-next { display:flex;align-items:center;justify-content:space-between;gap:16px; }
.boost-public-preview-bar { color:#a9bfce;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em; }
.boost-public-preview-bar strong { color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.boost-public-preview-focus { padding:clamp(22px,3vw,34px);border:1px solid rgba(246,195,68,.24);border-radius:20px;background:rgba(246,195,68,.08); }
.boost-public-preview-focus p,.boost-public-preview-focus span { margin:0;color:#abc1cf; }
.boost-public-preview-focus p { color:#f6c344;font-size:.76rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase; }
.boost-public-preview-focus h2 { margin:10px 0 14px;color:#fff;font-size:clamp(1.55rem,3vw,2.65rem);line-height:1.05;letter-spacing:-.035em; }
.boost-public-preview-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px; }
.boost-public-preview-grid article { padding:16px;border-radius:16px;background:rgba(255,255,255,.055); }
.boost-public-preview-grid strong,.boost-public-preview-grid span { display:block; }
.boost-public-preview-grid strong { color:#fff;font-size:1.3rem; }
.boost-public-preview-grid span { margin-top:4px;color:#9fb6c7;font-size:.76rem; }
.boost-public-preview-next { min-height:58px;padding:12px 16px;border-radius:16px;color:#07111d;background:#f6c344; }
.boost-public-preview-next span { font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em; }
.boost-public-preview-next strong { margin-left:auto; }

.boost-public-proof { display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:18px 0 74px; }
.boost-public-proof span { padding:9px 14px;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:#b8cad6;background:rgba(255,255,255,.04);font-size:.78rem;font-weight:800; }

.boost-public-section { display:grid;gap:30px;margin:76px 0; }
.boost-public-section .value-copy { max-width:920px; }
.boost-public-section .value-copy h2,.boost-public-performance h2,.boost-public-boundary h2,.boost-public-access h2 { margin:9px 0 14px;color:#fff;font-size:clamp(2.25rem,4.8vw,5.25rem);line-height:.98;letter-spacing:-.05em; }
.boost-public-section .value-copy p:last-child,.boost-public-performance-copy>p,.boost-public-boundary>div>p:last-child,.boost-public-access>div>p { max-width:830px;color:#a9bfce;font-size:1.04rem;line-height:1.65; }
.boost-public-bento { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px; }
.boost-public-bento .value-card { min-height:240px;padding:clamp(24px,3vw,38px); }
.boost-public-bento .value-card>span,.boost-public-programs article>span { color:#f6c344;font-size:.75rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase; }
.boost-public-bento h3 { max-width:620px;margin:12px 0;color:#fff;font-size:clamp(1.45rem,2.6vw,2.4rem);line-height:1.08;letter-spacing:-.035em; }

.boost-public-performance { display:grid;grid-template-columns:minmax(0,.8fr) minmax(460px,1.2fr);gap:clamp(30px,6vw,80px);align-items:start;margin:88px 0;padding:clamp(30px,5vw,68px);border:1px solid rgba(255,255,255,.12);border-radius:30px;background:linear-gradient(145deg,rgba(8,22,34,.96),rgba(13,52,76,.75)); }
.boost-public-performance-copy { position:sticky;top:28px; }
.boost-public-performance-copy .boost-button { margin-top:14px; }
.boost-public-timeline { display:grid;gap:0;margin:0;padding:0;list-style:none;counter-reset:boost-public-step; }
.boost-public-timeline li { position:relative;display:grid;grid-template-columns:110px minmax(0,1fr);gap:22px;min-height:96px;padding:8px 0 28px 32px;border-left:2px solid rgba(246,195,68,.32);counter-increment:boost-public-step; }
.boost-public-timeline li::before { content:counter(boost-public-step);position:absolute;left:-18px;top:0;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#07111d;background:#f6c344;font-weight:900; }
.boost-public-timeline span { color:#f6c344;font-size:.75rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em; }
.boost-public-timeline strong { color:#fff;font-size:1.04rem;line-height:1.45; }

.boost-public-programs { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px; }
.boost-public-programs article { min-height:260px;padding:26px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.05); }
.boost-public-programs h3 { margin:14px 0 10px;color:#fff;font-size:1.45rem;line-height:1.1;letter-spacing:-.03em; }
.boost-public-programs p { color:#a9bfce;line-height:1.6; }

.boost-public-boundary,.boost-public-access { display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.72fr);gap:clamp(30px,6vw,80px);align-items:center;margin:88px 0;padding:clamp(30px,5vw,68px);border-radius:30px; }
.boost-public-boundary { border:1px solid rgba(246,195,68,.22);background:rgba(246,195,68,.07); }
.boost-public-boundary-flow { display:grid;gap:12px;text-align:center; }
.boost-public-boundary-flow strong { padding:24px;border:1px solid rgba(255,255,255,.14);border-radius:18px;color:#fff;background:rgba(7,17,27,.74);font-size:1.15rem; }
.boost-public-boundary-flow span { color:#f6c344;font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.1em; }
.boost-public-access { background:linear-gradient(135deg,#0d4f79,#0a2438);box-shadow:0 28px 80px rgba(0,0,0,.3); }
.boost-public-access-note { margin-top:24px!important;padding-top:22px;border-top:1px solid rgba(255,255,255,.15);font-size:.9rem!important; }
.boost-public-access-actions { display:grid;gap:16px; }
.boost-public-access-actions .boost-button { width:100%; }
.boost-public-access-actions>span { color:#b8cad6;text-align:center; }
.boost-public-access-actions>span a { color:#fff;font-weight:800; }

@media(max-width:1100px){
  .boost-public-landing .boost-public-hero,.boost-public-performance,.boost-public-boundary,.boost-public-access{grid-template-columns:1fr}
  .boost-public-preview{transform:none}
  .boost-public-performance-copy{position:static}
  .boost-public-programs{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .boost-public-landing .boost-shell,.boost-public-landing .boost-main{margin-inline:12px}
  .boost-public-landing .boost-public-hero{padding:28px 22px}
  .boost-public-landing .boost-public-hero h1{font-size:clamp(2.7rem,13vw,4.25rem)}
  .boost-public-bento,.boost-public-programs{grid-template-columns:1fr}
  .boost-public-preview-grid{grid-template-columns:1fr}
  .boost-public-preview-bar{align-items:flex-start;flex-direction:column}
  .boost-public-timeline li{grid-template-columns:1fr;gap:7px;padding-left:28px}
  .boost-public-performance,.boost-public-boundary,.boost-public-access{padding:25px 21px;border-radius:22px}
  .boost-public-landing .boost-actions,.boost-public-landing .boost-actions .boost-button{box-sizing:border-box;width:100%;min-width:0;max-width:100%}
  .boost-public-landing .boost-actions .boost-button{height:auto;padding:12px 14px;line-height:1.25;text-align:center;white-space:normal}
}

@media (max-width: 800px) {
  .boost-login .boost-panel {
    grid-template-columns: 1fr;
  }
}

/* Public landing: concise product story, not a document-shaped sales prompt. */
.boost-public-landing .boost-public-hero{
  min-height:auto;
  padding-block:clamp(38px,5vw,68px);
}
.boost-public-landing .boost-public-hero h1{
  max-width:980px;
  font-size:clamp(3rem,5.4vw,6.25rem);
  line-height:.94;
}
.boost-public-landing .boost-public-preview{
  transform:none;
}
.boost-product-section-clean,
.boost-onboarding-section-clean{
  margin-block:48px;
}
.boost-product-section-clean .boost-product-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.boost-public-section-clean{
  margin-block:52px;
}
.boost-public-section-clean .value-copy h2,
.boost-public-access-clean h2{
  max-width:980px;
  font-size:clamp(2.2rem,3.7vw,4rem);
  line-height:1;
}
.boost-public-section-clean .boost-public-bento{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.boost-public-section-clean .value-card{
  min-height:190px;
}
.boost-onboarding-section-clean{
  grid-template-columns:minmax(260px,.6fr) minmax(0,1.4fr);
}
.boost-public-access-clean{
  margin-block:48px;
  padding:clamp(28px,4vw,50px);
}
@media(max-width:980px){
  .boost-product-section-clean .boost-product-grid,
  .boost-public-section-clean .boost-public-bento,
  .boost-onboarding-section-clean{
    grid-template-columns:1fr;
  }
}

/* Class day is one full-width working surface. */
.boost-app .class-day-main{
  width:100%;
  max-width:none;
}
.class-day-main .class-day-grid{
  grid-template-columns:minmax(0,1fr);
  width:100%;
}
.class-day-main .class-attendance-panel,
.class-day-main .class-tools-panel,
.class-day-main .class-plan-panel{
  width:100%;
  max-width:none;
}
.class-day-main .class-attendance-list{
  grid-template-columns:repeat(3,minmax(0,1fr));
  max-height:none;
  overflow:visible;
  gap:10px;
}
.class-day-main .music-tool-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.class-day-main .music-tool-grid section,
.class-day-main .music-tool-grid section:last-child{
  grid-column:auto;
  min-height:190px;
}
.class-day-main .music-tool-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.class-day-main .music-tool-actions .boost-button{
  flex:1 1 86px;
}
@media(max-width:1200px){
  .class-day-main .class-attendance-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .class-day-main .music-tool-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:720px){
  .class-day-main .class-attendance-list,
  .class-day-main .music-tool-grid{
    grid-template-columns:minmax(0,1fr);
  }
}

/* Institution-owned backups */
.backup-main{
  width:100%;
  max-width:none;
}
.backup-status-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.backup-status-grid .office-card{
  min-width:0;
}
.backup-guidance{
  display:grid;
  gap:10px;
  margin:0;
  padding-left:1.25rem;
  color:var(--boost-muted);
}
.backup-main .portability-list article{
  align-items:center;
  gap:14px;
}
.backup-main .portability-list code{
  display:block;
  max-width:100%;
  overflow-wrap:anywhere;
  color:var(--boost-muted);
  font-size:.78rem;
}
@media(max-width:980px){
  .backup-status-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .backup-main .office-heading form,
  .backup-main .office-heading .boost-button{
    width:100%;
  }
}

@media (max-width: 560px) {
  .boost-login-header {
    align-items: flex-start;
    width: auto;
    margin-inline: 14px;
  }

  .boost-login-brand small {
    display: none;
  }

  .boost-login .boost-main {
    width: auto;
    margin-inline: 12px;
    padding-top: 26px;
  }

  .boost-login .boost-panel,
  .boost-login .boost-login-form-shell {
    padding: 22px;
  }

  .boost-login-footer-inner {
    width: auto;
    margin-inline: 14px;
    flex-direction: column;
  }

  .boost-login-footer nav {
    justify-content: flex-start;
  }
}

.boost-notice {
  margin: 0 auto 1.5rem;
  max-width: 1180px;
  padding: 1rem 1.25rem;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.08);
}

.boost-notice.success {
  border-color: rgba(84, 214, 153, 0.55);
}

.boost-notice.error {
  border-color: rgba(255, 121, 121, 0.6);
}

.boost-invite-form {
  align-items: end;
  grid-template-columns: minmax(240px, 2fr) minmax(180px, 1fr) auto;
}

.boost-draft-form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 760px) {
  .boost-invite-form {
    grid-template-columns: 1fr;
  }
}

.office-main,
.assistant-main {
  padding-top: 28px;
  padding-bottom: 70px;
}

.office-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: 24px 0 26px;
}

.office-heading h1 {
  margin: 4px 0 8px;
  color: #fff;
  font-size: clamp(2.25rem, 6vw, 4.8rem);
  line-height: .94;
  letter-spacing: -.065em;
}

.office-heading p:last-child {
  margin: 0;
  color: #adc3d2;
}

.office-heading-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.office-nav,
.assistant-tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 10px;
  margin-bottom: 18px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 18px;
  background: rgba(8,18,26,.76);
}

.office-nav a,
.assistant-tabs a {
  flex: 0 0 auto;
  padding: 11px 14px;
  border-radius: 11px;
  color: #d5e2ea;
  font-weight: 750;
  text-decoration: none;
}

.office-nav a:hover,
.assistant-tabs a:hover,
.assistant-tabs a.active {
  color: #071018;
  background: #f6c344;
}

.boost-global-nav {
  width: min(1180px, calc(100% - 32px));
  margin: 14px auto 0;
  scrollbar-width: thin;
  scrollbar-color: rgba(246,195,68,.65) rgba(255,255,255,.06);
}

.boost-global-nav a.active {
  color: #071018;
  background: #f6c344;
}

.boost-global-nav:has(.boost-nav-more[open]) {
  overflow: visible;
}

.boost-nav-more {
  position: relative;
  flex: 0 0 auto;
}

.boost-nav-more > summary {
  padding: 11px 14px;
  border-radius: 11px;
  color: #d5e2ea;
  cursor: pointer;
  font-weight: 750;
  list-style: none;
}

.boost-nav-more > summary::-webkit-details-marker { display: none; }
.boost-nav-more > summary::after { content: " +"; color: #f6c344; }
.boost-nav-more[open] > summary::after { content: " -"; }
.boost-nav-more > summary:hover,
.boost-nav-more > summary.active { color: #071018; background: #f6c344; }

.boost-nav-more-links {
  position: absolute;
  z-index: 20;
  top: calc(100% + 8px);
  right: 0;
  display: grid;
  min-width: 260px;
  max-height: min(70vh, 520px);
  padding: 8px;
  overflow-y: auto;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 14px;
  background: #091722;
  box-shadow: 0 20px 55px rgba(0,0,0,.42);
}

.boost-nav-more:not([open]) > .boost-nav-more-links {
  display: none;
}

.boost-nav-more-links a { white-space: nowrap; }

.boost-app .office-grid .office-card h2 {
  overflow-wrap: anywhere;
}

.boost-compact-menu {
  width: min(1180px, calc(100% - 32px));
  margin: 14px auto 0;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(8,18,26,.88);
}

.boost-compact-menu > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 12px 16px;
  color: #fff;
  cursor: pointer;
  font-weight: 800;
  list-style: none;
}

.boost-compact-menu > summary::-webkit-details-marker { display: none; }
.boost-compact-menu > summary::after { content: "+"; color: #f6c344; font-size: 1.35rem; }
.boost-compact-menu[open] > summary::after { content: "−"; }
.boost-compact-menu > summary small { margin-left: auto; color: #adc3d2; font-weight: 600; }
.boost-compact-menu .boost-global-nav { width: auto; margin: 0 10px 10px; }

@media (max-width: 640px) {
  .boost-compact-menu { width: min(100% - 22px, 1180px); }
  .boost-compact-menu > summary small { display: none; }
}

@media (max-width: 640px) {
  .boost-global-nav {
    width: min(100% - 22px, 1180px);
  }
}

.office-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
  gap: 18px;
}

.boost-booster-app .office-card {
  min-width: 0;
  padding: 24px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 22px;
  background: linear-gradient(145deg, rgba(255,255,255,.085), rgba(255,255,255,.035));
  box-shadow: 0 18px 50px rgba(0,0,0,.18);
}

.office-card h2 {
  margin: 5px 0 12px;
  color: #fff;
  font-size: clamp(1.55rem, 3vw, 2.4rem);
  line-height: 1.03;
  letter-spacing: -.045em;
}

.office-card p {
  color: #c1d2de;
  line-height: 1.58;
}

.office-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.office-count {
  padding: 7px 10px;
  border-radius: 999px;
  color: #f6c344;
  background: rgba(246,195,68,.12);
  font-size: .8rem;
  font-weight: 800;
}

.office-task-list,
.readiness-list {
  display: grid;
  gap: 9px;
  margin: 18px 0;
}

.office-task,
.readiness-item {
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 12px;
  padding: 13px;
  border-radius: 14px;
  background: rgba(255,255,255,.055);
}

.office-task strong,
.readiness-item strong {
  display: block;
  color: #f8fbfd;
}

.office-task small,
.readiness-item small {
  display: block;
  margin-top: 4px;
  color: #91adbf;
}

.office-task-state {
  align-self: start;
  min-width: 66px;
  padding: 5px 7px;
  border-radius: 8px;
  text-align: center;
  color: #b8d1e0;
  background: rgba(255,255,255,.08);
  font-size: .7rem;
  font-weight: 850;
  text-transform: uppercase;
}

.office-task-state.doing {
  color: #fff;
  background: var(--boost-blue-strong);
}

.office-link {
  color: var(--boost-blue);
  font-weight: 800;
}

.readiness-ring {
  display: grid;
  place-items: center;
  width: 68px;
  aspect-ratio: 1;
  flex: 0 0 68px;
  border-radius: 50%;
  background: conic-gradient(#4ed39a var(--readiness), rgba(255,255,255,.1) 0);
}

.readiness-ring::before {
  content: '';
  grid-area: 1/1;
  width: 52px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #13202a;
}

.readiness-ring span {
  grid-area: 1/1;
  z-index: 1;
  color: #fff;
  font-size: .76rem;
  font-weight: 850;
}

.readiness-item > span {
  display: grid;
  place-items: center;
  width: 23px;
  height: 23px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 7px;
  color: #071018;
}

.readiness-item.complete > span {
  border-color: #4ed39a;
  background: #4ed39a;
}

.theme-light.boost-booster-app .office-card{
  border-color:var(--boost-border);
  background:#fff;
  box-shadow:0 14px 34px rgba(32,65,94,.1);
}
.theme-light.boost-booster-app .office-card h2,
.theme-light.boost-booster-app .office-task strong,
.theme-light.boost-booster-app .readiness-item strong{color:var(--boost-text)}
.theme-light.boost-booster-app .office-card p,
.theme-light.boost-booster-app .office-task small,
.theme-light.boost-booster-app .readiness-item small{color:var(--boost-muted)}
.theme-light.boost-booster-app .office-task,
.theme-light.boost-booster-app .readiness-item,
.theme-light.boost-booster-app .office-metrics div{background:var(--boost-surface-raised)}
.theme-light.boost-booster-app .office-count{color:var(--boost-blue-strong);background:color-mix(in srgb,var(--boost-blue) 12%,white)}
.theme-light.boost-booster-app .readiness-ring::before{background:#fff}
.theme-light.boost-booster-app .readiness-ring span{color:var(--boost-text)}

.office-metrics {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
  margin: 16px 0;
}

.office-metrics div {
  padding: 14px;
  border-radius: 14px;
  background: rgba(255,255,255,.055);
}

.office-metrics span,
.office-metrics strong {
  display: block;
}

.office-metrics span { color: #91adbf; font-size: .78rem; }
.office-metrics strong { margin-top: 4px; color: #fff; font-size: 1.25rem; }

.office-money-summary {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 10px;
  margin: 16px 0;
}
.office-money-summary > div {
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--boost-line);
  border-radius: 14px;
  background: var(--boost-surface-soft);
}
.office-money-summary span,
.office-money-summary strong { display: block; }
.office-money-summary span {
  color: var(--boost-text-muted);
  font-size: .78rem;
  font-weight: 750;
}
.office-money-summary strong {
  margin-top: 4px;
  color: var(--boost-text);
  font-size: 1.15rem;
}

.office-quick-actions {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
  margin-top: 18px;
}

.office-quick-actions a {
  padding: 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  color: #f0f5f8;
  text-decoration: none;
  background: rgba(255,255,255,.05);
}

.office-empty {
  padding: 22px;
  margin: 16px 0;
  border: 1px dashed rgba(255,255,255,.18);
  border-radius: 15px;
}

.office-empty strong { color: #fff; }
.office-empty p { margin-bottom: 0; }

.assistant-layout {
  display: grid;
  grid-template-columns: minmax(320px,.72fr) minmax(0,1.28fr);
  gap: 18px;
}

.assistant-compose form {
  display: grid;
  gap: 16px;
}

.assistant-compose label span {
  display: block;
  margin-bottom: 8px;
  color: #dce8ef;
  font-weight: 750;
}

.assistant-compose textarea {
  width: 100%;
  min-height: 210px;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 13px;
  color: #fff;
  background: rgba(0,0,0,.24);
  resize: vertical;
}

.assistant-boundary {
  margin-bottom: 0;
  font-size: .84rem;
}

.assistant-result {
  min-height: 460px;
}

.assistant-copy {
  color: #e5eef3;
  line-height: 1.68;
  white-space: normal;
}

.assistant-copy h2,
.assistant-copy h3 {
  margin: 1.25em 0 .45em;
  color: #fff;
}

.assistant-copy p,
.assistant-copy ul,
.assistant-copy ol {
  margin: 0 0 1em;
}

.assistant-copy ul,
.assistant-copy ol {
  padding-left: 1.4em;
}

.assistant-result-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}

.assistant-saved {
  margin: 14px 0 0;
  color: #9ee6c2;
  font-size: .88rem;
  font-weight: 800;
}

.assistant-image {
  display: block;
  width: min(100%, 640px);
  margin: 12px 0 18px;
  border-radius: 17px;
}

.media-main {
  padding-top: 28px;
  padding-bottom: 72px;
}

.media-layout {
  display: grid;
  grid-template-columns: minmax(320px, 1.15fr) minmax(280px, 0.85fr);
  gap: 18px;
  margin-bottom: 22px;
}

.media-upload form {
  display: grid;
  gap: 14px;
  margin-top: 20px;
}

.media-upload label {
  color: #dce8ef;
  font-weight: 800;
}

.media-upload input[type="file"] {
  display: block;
  width: 100%;
  margin-top: 8px;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 12px;
  color: #dce8ef;
  background: rgba(0,0,0,.22);
}

.media-guidance ul {
  display: grid;
  gap: 12px;
  padding-left: 20px;
  color: #c5d6e1;
  line-height: 1.5;
}

.media-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.media-card {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  background: rgba(255,255,255,.05);
}

.media-card img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}

.media-card div {
  padding: 12px 14px;
}

.media-card span {
  color: #f6c344;
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.media-card p {
  margin: 4px 0 0;
  color: #9eb5c5;
}

@media (max-width: 900px) {
  .office-grid,
  .media-layout,
  .assistant-layout { grid-template-columns: 1fr; }
  .office-money-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }

  .media-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .office-heading { align-items: flex-start; flex-direction: column; }
  .office-heading-actions, .office-heading-actions .boost-button { width: 100%; }
  .office-metrics, .office-money-summary, .office-quick-actions { grid-template-columns: 1fr; }
  .boost-booster-app .office-card { padding: 18px; }
  .media-grid { grid-template-columns: 1fr; }
}
/* Uniforms and attire workspace */
.attire-main{display:grid;gap:1.5rem}.attire-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem}.attire-kpis article{padding:1rem;border:1px solid var(--boost-border,#314353);border-radius:14px;background:rgba(10,26,37,.72)}.attire-kpis span{display:block;color:var(--boost-muted,#b8c5cf);font-size:.82rem}.attire-kpis strong{display:block;margin-top:.25rem;font-size:1.75rem}.attire-toolbar{display:grid;grid-template-columns:minmax(16rem,2fr) repeat(2,minmax(10rem,1fr));gap:1rem}.attire-toolbar label,.attire-dialog label{display:grid;gap:.4rem}.attire-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.attire-card{display:grid;gap:1rem;align-content:start}.attire-card h3{margin:.35rem 0 .2rem}.attire-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:0}.attire-card dt{color:var(--boost-muted,#b8c5cf);font-size:.78rem}.attire-card dd{margin:.15rem 0 0}.attire-activity{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid var(--boost-border,#314353)}.attire-activity span strong{display:block}.attire-activity form{display:flex;align-items:end;gap:.5rem}.attire-dialog{width:min(46rem,calc(100vw - 2rem));border:1px solid var(--boost-border,#314353);border-radius:18px;background:#091923;color:#fff;padding:1.5rem}.attire-dialog::backdrop{background:rgba(0,0,0,.7)}.attire-dialog form>button[data-attire-close]{float:right;background:transparent;border:0;color:#cbd5dc;cursor:pointer}.attire-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
@media(max-width:860px){.attire-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.attire-toolbar,.attire-list{grid-template-columns:1fr}.attire-activity,.attire-activity form{align-items:stretch;flex-direction:column}.attire-card dl{grid-template-columns:1fr 1fr}.attire-form-grid{grid-template-columns:1fr}}
/* Music library workspace */
.music-main{display:grid;gap:24px}.music-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.music-kpis article{padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(10,28,45,.92)}.music-kpis span{display:block;color:#b9ccda;font-size:.78rem;font-weight:800;text-transform:uppercase}.music-kpis strong{display:block;margin-top:7px;font-size:2rem}.music-toolbar{display:grid;grid-template-columns:2fr 1fr;gap:14px}.music-toolbar label,.music-dialog label{display:grid;gap:7px}.music-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.music-card{display:grid;gap:14px}.music-card[hidden]{display:none}.music-card h2{margin:8px 0 4px}.music-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.music-card dl div{padding:10px;border-radius:10px;background:rgba(255,255,255,.045)}.music-card dt{color:#b9ccda;font-size:.75rem;text-transform:uppercase}.music-card dd{margin:4px 0 0}.music-parts>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid rgba(255,255,255,.1)}.music-parts span strong{display:block}.music-return{display:flex;align-items:center;gap:8px}.music-dialog{width:min(620px,calc(100% - 28px));padding:24px;border:1px solid rgba(255,255,255,.16);border-radius:20px;color:#f5f9fc;background:#07111d}.music-dialog::backdrop{background:rgba(0,0,0,.72)}
@media(max-width:760px){.music-kpis,.music-list,.music-toolbar{grid-template-columns:1fr}.music-card dl{grid-template-columns:1fr}.music-parts>div,.music-return{align-items:stretch;flex-direction:column}}
/* Attendance workspace */
.attendance-main{display:grid;gap:24px}.attendance-layout{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,2.3fr);gap:18px}.attendance-sessions{align-self:start}.attendance-sessions a{display:grid;gap:4px;padding:12px;border-radius:10px;color:#fff;text-decoration:none}.attendance-sessions a.active{background:rgba(255,255,255,.1)}.attendance-sessions span{color:#b9ccda;font-size:.82rem}.attendance-roster{display:grid;gap:18px}.attendance-table{display:grid;gap:8px;margin:14px 0}.attendance-table>div{display:grid;grid-template-columns:minmax(160px,1fr) 150px minmax(180px,1.4fr) 80px;align-items:center;gap:10px;padding:10px;border-radius:10px;background:rgba(255,255,255,.045)}.attendance-table>div[hidden]{display:none}.attendance-dialog{width:min(620px,calc(100% - 28px));padding:24px;border:1px solid rgba(255,255,255,.16);border-radius:20px;color:#f5f9fc;background:#07111d}.attendance-dialog::backdrop{background:rgba(0,0,0,.72)}.attendance-dialog label{display:grid;gap:7px}
@media(max-width:1100px){.attendance-layout{grid-template-columns:1fr}.attendance-table>div{grid-template-columns:1fr}.attendance-sessions{max-height:280px;overflow:auto}}
/* Forms and signatures workspace */
.forms-main{display:grid;gap:24px}.forms-toolbar label,.forms-dialog label{display:grid;gap:7px}.forms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-card{display:grid;gap:12px}.form-card[hidden]{display:none}.form-card h2{margin:0}.form-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.form-card dl div{padding:10px;border-radius:10px;background:rgba(255,255,255,.045)}.form-card dt{color:#b9ccda;font-size:.75rem;text-transform:uppercase}.form-card dd{margin:4px 0 0}.form-assignments>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid rgba(255,255,255,.1)}.form-assignments span strong{display:block}.forms-dialog{width:min(660px,calc(100% - 28px));max-height:calc(100vh - 40px);padding:24px;border:1px solid rgba(255,255,255,.16);border-radius:20px;color:#f5f9fc;background:#07111d;overflow:auto}.forms-dialog::backdrop{background:rgba(0,0,0,.72)}.forms-consent{grid-template-columns:auto 1fr!important;align-items:start}
.form-field-builder{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(150px,.8fr);gap:12px;padding:16px;margin:10px 0;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.035)}.form-field-builder>label:nth-of-type(3),.form-field-builder>label:nth-of-type(4){grid-column:1/-1}.form-field-builder>[data-remove-field]{justify-self:start}.form-withdraw{margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12)}[data-form-response-field][hidden]{display:none}
@media(max-width:760px){.forms-grid,.form-card dl,.form-field-builder{grid-template-columns:1fr}.form-field-builder>label{grid-column:auto!important}.form-assignments>div{align-items:stretch;flex-direction:column}}

/* Template-first form creation. The signed-form engine remains unchanged; this is its educator-facing workflow. */
.forms-dialog:has([data-form-builder]){width:min(1120px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:clamp(20px,3vw,36px)}
.forms-dialog [data-form-builder]{gap:18px}
.form-builder-intro{max-width:70ch;margin:-4px 0 0;color:var(--boost-muted,#b9ccda);font-size:1rem;line-height:1.55}
.form-builder-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0;margin:4px 0 2px;list-style:none;counter-reset:none}
.form-builder-steps li{min-height:44px;display:flex;align-items:center;padding:10px 14px;border:1px solid var(--boost-border,rgba(255,255,255,.14));border-radius:12px;color:var(--boost-muted,#b9ccda);font-weight:750}
.form-builder-steps li.is-current{border-color:var(--boost-accent,#f9c642);background:rgba(249,198,66,.12);color:var(--boost-text,#fff)}
.form-template-library{display:grid;gap:16px;padding:18px;border:1px solid var(--boost-border,rgba(255,255,255,.14));border-radius:18px;background:rgba(255,255,255,.025)}
.form-template-tools{display:grid;grid-template-columns:minmax(240px,1fr) minmax(180px,.35fr);gap:12px}
.form-template-tools label{display:grid;gap:7px;font-weight:750}
.form-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-height:min(52vh,560px);overflow:auto;padding:2px 4px 6px 2px}
.form-template-card{min-height:184px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:18px;border:1px solid var(--boost-border,rgba(255,255,255,.14));border-radius:16px;background:var(--boost-card,#111e2b);color:var(--boost-text,#f7fbff);text-align:left;cursor:pointer;box-shadow:none;transition:transform .16s ease,border-color .16s ease,background .16s ease}
.form-template-card:hover,.form-template-card:focus-visible{transform:translateY(-2px);border-color:var(--boost-accent,#f9c642);background:var(--boost-card-strong,#172839)}
.form-template-card span{color:var(--boost-accent,#f9c642);font-size:.72rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.form-template-card strong{font-size:1.05rem;line-height:1.25}
.form-template-card small{color:var(--boost-muted,#b9ccda);font-size:.88rem;line-height:1.45}
.form-template-card em{margin-top:auto;color:var(--boost-muted,#b9ccda);font-size:.78rem;font-style:normal}
.form-template-card.is-blank{border-style:dashed}
.form-template-empty,.form-template-loading{padding:18px;color:var(--boost-muted,#b9ccda)}
.form-template-picked{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid rgba(249,198,66,.38);border-radius:16px;background:rgba(249,198,66,.08)}
.form-template-picked>div{display:grid;gap:4px}.form-template-picked strong{font-size:1.05rem}.form-template-picked small{color:var(--boost-muted,#b9ccda)}
[data-form-builder][data-template-selected="false"]>:not(h2):not(.form-builder-intro):not(.form-builder-steps):not(.form-template-library):not([data-form-close]){display:none!important}
.form-field-builder{position:relative;padding-top:46px;background:var(--boost-card,#111e2b)}
.form-field-builder::before{content:'Question';position:absolute;inset:15px auto auto 16px;color:var(--boost-accent,#f9c642);font-size:.72rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.form-builder-advanced-control{color:var(--boost-muted,#b9ccda)}
.form-builder-advanced{padding:14px 16px;border:1px solid var(--boost-border,rgba(255,255,255,.14));border-radius:14px;background:rgba(255,255,255,.025)}
.form-builder-advanced summary{min-height:44px;display:flex;align-items:center;font-weight:800;cursor:pointer}
.form-builder-advanced [data-advanced-fields]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:12px}
.form-builder-preview{padding:20px;border:1px solid var(--boost-border,rgba(255,255,255,.14));border-radius:18px;background:var(--boost-card,#111e2b)}
.form-builder-preview h3{margin:4px 0 8px;font-size:1.35rem}.form-builder-preview>p:not(.eyebrow){color:var(--boost-muted,#b9ccda)}
.form-preview-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.form-preview-fields>div{display:grid;gap:5px;padding:12px;border-radius:12px;background:rgba(255,255,255,.04)}.form-preview-fields small{color:var(--boost-muted,#b9ccda)}
@media(max-width:900px){.form-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.forms-dialog:has([data-form-builder]){width:100%;max-width:none;max-height:100dvh;height:100dvh;margin:0;border-radius:0;padding:18px}.form-builder-steps,.form-template-tools,.form-template-grid,.form-builder-advanced [data-advanced-fields],.form-preview-fields{grid-template-columns:1fr}.form-template-grid{max-height:none;overflow:visible}.form-template-card{min-height:0}.form-template-picked{align-items:stretch;flex-direction:column}.form-template-picked .boost-button{width:100%}}
@media(prefers-reduced-motion:reduce){.form-template-card{transition:none}.form-template-card:hover,.form-template-card:focus-visible{transform:none}}
/* Payments and treasurer workspace */
.finance-main{display:grid;gap:24px}.finance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.finance-kpis article{padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(10,28,45,.92)}.finance-kpis span{display:block;color:#b9ccda;font-size:.78rem;font-weight:800;text-transform:uppercase}.finance-kpis strong{display:block;margin-top:7px;font-size:1.65rem}.finance-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px}.finance-toolbar label,.finance-dialog label{display:grid;gap:7px}.finance-table>div{display:grid;grid-template-columns:minmax(180px,1.5fr) minmax(120px,.5fr) auto;align-items:center;gap:14px;padding:14px 0;border-top:1px solid rgba(255,255,255,.1)}.finance-table span strong{display:block}.finance-table [hidden]{display:none}.finance-dialog{width:min(680px,calc(100% - 28px));max-height:calc(100vh - 40px);padding:24px;border:1px solid rgba(255,255,255,.16);border-radius:20px;color:#f5f9fc;background:#07111d;overflow:auto}.finance-dialog::backdrop{background:rgba(0,0,0,.72)}
@media(max-width:800px){.finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-toolbar,.finance-table>div{align-items:stretch;display:flex;flex-direction:column}}
/* Reports and portability workspace */
.reports-main{display:grid;gap:24px}.reports-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.reports-kpis article{padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(10,28,45,.92)}.reports-kpis span{display:block;color:#b9ccda;font-size:.78rem;font-weight:800;text-transform:uppercase}.reports-kpis strong{display:block;margin-top:7px;font-size:1.65rem}.reports-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.reports-list{display:grid;gap:8px}.reports-list div{display:flex;justify-content:space-between;gap:16px;padding:10px;border-radius:10px;background:rgba(255,255,255,.045)}.portability-list{display:grid;gap:10px}.portability-list>article{display:grid;grid-template-columns:minmax(220px,1fr) minmax(200px,1fr) auto;align-items:center;gap:12px;padding:14px 0;border-top:1px solid rgba(255,255,255,.1)}.portability-list span strong{display:block}.portability-list code{overflow-wrap:anywhere;color:#b9ccda}.reports-dialog{width:min(620px,calc(100% - 28px));padding:24px;border:1px solid rgba(255,255,255,.16);border-radius:20px;color:#f5f9fc;background:#07111d}.reports-dialog::backdrop{background:rgba(0,0,0,.72)}
@media(max-width:800px){.reports-kpis,.reports-grid{grid-template-columns:1fr}.portability-list>article{align-items:stretch;display:flex;flex-direction:column}}
@media(max-width:1100px){.coverage-main .reports-grid{grid-template-columns:1fr}.coverage-main .production-task-list>div{grid-template-columns:minmax(90px,120px) minmax(0,1fr);align-items:start}.coverage-main .production-task-list>div>strong,.coverage-main .production-task-list>div>form,.coverage-main .production-task-list>div>details{grid-column:1/-1}.coverage-main .production-task-list>div>*{min-width:0;max-width:100%;overflow-wrap:anywhere}.coverage-main .production-task-list form{display:flex;flex-wrap:wrap;gap:8px}}
/* Consolidated workspace navigation and hubs */
.boost-nav-group{display:block;padding:10px 12px 4px;color:#8ea4b5;font-size:.7rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.boost-nav-more-links .boost-nav-group:first-child{padding-top:4px}.consolidated-main{display:grid;gap:24px}.workspace-tabs{display:flex;flex-wrap:wrap;gap:8px;padding:8px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(7,17,29,.7)}.workspace-tabs a{padding:10px 14px;border-radius:10px;color:#d7e4ed;text-decoration:none;font-weight:800}.workspace-tabs a.active,.workspace-tabs a:hover{background:rgba(255,255,255,.1);color:#fff}.consolidated-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.consolidated-grid>article{display:grid;gap:14px;align-content:start}.consolidated-list{display:grid;gap:8px}.consolidated-list>div{display:grid;gap:3px;padding:10px;border-radius:10px;background:rgba(255,255,255,.045)}.consolidated-list span{color:#b9ccda;font-size:.86rem}
@media(max-width:760px){.consolidated-grid{grid-template-columns:1fr}.workspace-tabs{display:grid}}

/* Final theme normalization: intentionally last so legacy workspace rules inherit both modes. */
.boost-app { color:var(--boost-text); background:radial-gradient(circle at 12% 7%,rgba(37,142,220,.20),transparent 32rem),radial-gradient(circle at 88% 12%,rgba(94,183,255,.12),transparent 36rem),linear-gradient(155deg,var(--boost-bg),var(--boost-bg-deep)); }
.boost-app.theme-light { background:radial-gradient(circle at 12% 7%,rgba(42,145,214,.12),transparent 32rem),linear-gradient(155deg,var(--boost-bg-deep),var(--boost-bg)); }
.boost-app .office-nav,.boost-app .assistant-tabs,.boost-app .boost-compact-menu,.boost-app .boost-nav-more-links,.boost-app .boost-nav-daily-links,.boost-app .workspace-tabs { border-color:var(--boost-line);background:color-mix(in srgb,var(--boost-surface) 94%,transparent);box-shadow:var(--boost-shadow); }
.boost-app:not(.boost-educator-app) .office-card,.boost-app .boost-card,.boost-app .boost-panel,.boost-app .boost-principles article,.boost-app .panel,.boost-app .card,.boost-app fieldset,.boost-app table,.boost-app .music-kpis article,.boost-app .finance-kpis article,.boost-app .reports-kpis article,.boost-app .attire-kpis article { border-color:var(--boost-line);background:linear-gradient(145deg,var(--boost-surface),var(--boost-surface-raised));box-shadow:var(--boost-shadow); }
.boost-app .office-heading h1,.boost-app .office-card h2,.boost-app .office-card h3,.boost-app .boost-card h2,.boost-app .boost-panel h2,.boost-app .boost-principles h2,.boost-app label,.boost-app legend,.boost-app th,.boost-app .attendance-sessions a,.boost-app .workspace-tabs a { color:var(--boost-text); }
.boost-app .office-heading p:last-child,.boost-app .office-card p,.boost-app .boost-card p,.boost-app .boost-panel p,.boost-app .boost-principles p,.boost-app .muted,.boost-app small,.boost-app dt,.boost-app .attendance-sessions span,.boost-app .consolidated-list span,.boost-app .music-kpis span,.boost-app .finance-kpis span,.boost-app .reports-kpis span,.boost-app .attire-kpis span { color:var(--boost-text-muted); }
.boost-app input,.boost-app select,.boost-app textarea,.boost-app dialog { color:var(--boost-text);border-color:var(--boost-line);background:var(--boost-surface-raised); }
.boost-app .attendance-table>div,.boost-app .form-card dl div,.boost-app .music-card dl div,.boost-app .reports-list div,.boost-app .consolidated-list>div,.boost-app .workspace-tabs a.active,.boost-app .workspace-tabs a:hover { color:var(--boost-text);background:var(--boost-surface-soft); }
.boost-app .boost-app-brand { color:var(--boost-text); }

/* Educator portal: production iPad shell. */
.portal-ipad-app > .site-shell,
.portal-ipad-app > .boost-global-nav,
.portal-ipad-app > .boost-compact-menu { display:none; }
.portal-ipad-app { min-height:100vh; }
.portal-ipad-rail { position:fixed;inset:0 auto 0 0;z-index:40;display:flex;flex-direction:column;align-items:center;width:88px;padding:18px 10px 14px;border-right:1px solid var(--boost-line);background:color-mix(in srgb,var(--boost-surface) 96%,transparent);box-shadow:10px 0 36px rgba(0,7,18,.18); }
.portal-ipad-rail a { display:grid;place-items:center;gap:4px;width:68px;min-height:58px;padding:7px 4px;border-radius:14px;color:var(--boost-text-muted);text-decoration:none;font-size:1.1rem; }
.portal-ipad-rail a strong { font-size:.67rem;letter-spacing:.02em; }
.portal-ipad-rail a:hover,.portal-ipad-rail a.active { color:#071426;background:var(--boost-gold); }
.portal-ipad-rail .portal-rail-brand { min-height:72px;margin-bottom:14px;padding:0;border-radius:0;background:transparent; }
.portal-ipad-rail .portal-rail-brand:hover { background:transparent; }
.portal-rail-brand img { display:block;width:68px;height:68px;object-fit:contain; }
.portal-rail-help { margin-top:auto; }
.portal-ipad-app .portal-main { width:calc(100% - 132px);max-width:none;margin:0 20px 0 112px;padding:18px 0 72px; }
.portal-ipad-topbar { position:sticky;top:0;z-index:25;display:grid;grid-template-columns:minmax(190px,1fr) minmax(190px,360px) auto auto;align-items:center;gap:12px;min-height:68px;margin-bottom:26px;padding:10px 12px;border:1px solid var(--boost-line);border-radius:18px;background:color-mix(in srgb,var(--boost-surface) 92%,transparent);box-shadow:var(--boost-shadow);backdrop-filter:blur(18px); }
.portal-program-context { display:grid;min-width:0; }
.portal-program-context span { overflow:hidden;color:var(--boost-text-muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap; }
.portal-program-context strong { overflow:hidden;color:var(--boost-text);text-overflow:ellipsis;white-space:nowrap; }
.portal-search { display:flex;align-items:center;min-height:42px;padding:0 14px;border:1px solid var(--boost-line);border-radius:12px;color:var(--boost-text-muted);background:var(--boost-surface-raised);text-decoration:none; }
.portal-user-chip { display:grid;place-items:center;width:42px;height:42px;border-radius:50%;color:#fff;background:#356f95;font-size:.76rem;font-weight:900;text-decoration:none; }
.portal-ipad-app .portal-welcome { padding:8px 4px 22px;border:0;background:transparent;box-shadow:none; }
.portal-ipad-app .portal-welcome h1 { margin:.25rem 0 .35rem;font-family:inherit;font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.05em; }
.portal-today-grid { display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.65fr);gap:18px;margin-bottom:28px; }
.portal-today-side { display:grid;gap:18px;align-content:start; }
.portal-card-heading { display:flex;align-items:flex-start;justify-content:space-between;gap:18px; }
.portal-card-heading h2 { margin:.35rem 0; }
.portal-collapsible>summary{cursor:pointer;list-style:none}.portal-collapsible>summary::-webkit-details-marker{display:none}.portal-summary-status{display:flex;align-items:center;gap:10px}.portal-summary-chevron{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--boost-border);border-radius:50%;color:var(--boost-text);font-size:1.25rem;font-weight:900;transition:transform .16s ease}.portal-collapsible[open] .portal-summary-chevron{transform:rotate(180deg)}.portal-collapsible>summary:focus-visible{outline:3px solid var(--boost-focus,#61aef5);outline-offset:6px;border-radius:10px}.portal-collapsible:not([open])>summary{margin:0}.portal-collapsible:not([open]) .portal-card-heading h2{margin-bottom:.15rem}
.portal-locations-collapsible>summary{margin-bottom:18px}.portal-locations-collapsible:not([open])>summary{margin-bottom:0}.portal-locations-collapsible:not([open]){padding-bottom:4px}
.daily-location-collapsible>summary{cursor:pointer;list-style:none}.daily-location-collapsible>summary::-webkit-details-marker{display:none}.daily-location-collapsible[open] .portal-summary-chevron{transform:rotate(180deg)}.daily-location-collapsible>summary:focus-visible{outline:3px solid var(--boost-focus,#61aef5);outline-offset:5px;border-radius:10px}.daily-location-open{display:inline-flex;margin:0 0 14px}.daily-location-collapsible:not([open]){padding-bottom:16px}.portal-collapsible:not([open])>:not(summary),.daily-location-collapsible:not([open])>:not(summary){display:none!important}
.schedule-agenda-controls{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.schedule-filter{min-height:42px;padding:9px 14px;border:1px solid var(--boost-border);border-radius:999px;background:var(--boost-surface-raised);color:var(--boost-text);font:inherit;font-weight:800;cursor:pointer}.schedule-filter:hover,.schedule-filter:focus-visible{border-color:var(--boost-accent)}.schedule-filter.is-active{border-color:var(--boost-accent);background:var(--boost-accent);color:#fff}.schedule-agenda [data-agenda-item][hidden]{display:none}.schedule-agenda-more{margin-top:14px}.schedule-agenda-summary{color:var(--boost-muted);font-size:.9rem;font-weight:750}
.portal-status-badge { flex:0 0 auto;padding:7px 10px;border-radius:999px;color:#bde1ff;background:rgba(37,142,220,.22);font-size:.74rem;font-weight:850; }
.theme-light .portal-status-badge { color:#075b94;background:#dceffc; }
.portal-action-list { display:grid;gap:9px;margin-top:20px; }
.portal-action-list a { display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;border:1px solid var(--boost-line);border-radius:14px;color:var(--boost-text);background:var(--boost-surface-raised);text-decoration:none; }
.portal-action-list a>span { display:grid;place-items:center;width:34px;height:34px;border-radius:10px;color:#fff;background:#356f95;font-weight:900; }
.portal-action-list a div { display:grid;gap:2px; }
.portal-action-list a small { color:var(--boost-text-muted); }
.portal-action-list a b { color:var(--boost-blue);font-size:.78rem; }
.portal-quick-actions { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px; }
.portal-quick-actions a { display:grid;place-items:center;min-height:48px;padding:8px;border:1px solid var(--boost-line);border-radius:12px;color:var(--boost-text);background:var(--boost-surface-raised);font-size:.78rem;font-weight:800;text-decoration:none; }
.portal-ipad-app .portal-daily { margin-top:10px; }
.portal-ipad-app .portal-programs { margin-top:30px;padding-top:26px;border-top:1px solid var(--boost-line); }
@media(max-width:900px){.portal-ipad-app .portal-main{width:calc(100% - 110px);margin-left:100px;margin-right:10px}.portal-ipad-topbar{grid-template-columns:minmax(0,1fr) auto auto}.portal-search{display:none}.portal-today-grid{grid-template-columns:1fr}.portal-today-side{grid-template-columns:repeat(2,minmax(0,1fr))}.daily-location-tools{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.portal-ipad-rail{inset:auto 8px 8px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));column-gap:5px;width:auto;height:66px;padding:5px 8px;border:1px solid var(--boost-line);border-radius:18px}.portal-ipad-rail a{width:100%;min-width:0;min-height:52px;padding:7px 1px}.portal-ipad-rail a strong{max-width:100%;font-size:.5rem;letter-spacing:-.01em;white-space:nowrap}.portal-ipad-rail .portal-rail-brand{display:none}.portal-rail-help{margin-top:0}.portal-ipad-app .portal-main{width:calc(100% - 22px);margin:0 auto;padding-bottom:104px}.portal-ipad-topbar{display:flex;justify-content:flex-end;min-height:44px;margin:0 0 8px;padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none}.portal-ipad-topbar .portal-program-context,.portal-ipad-topbar>.boost-button{display:none}.portal-ipad-app .portal-welcome{display:grid;gap:16px;padding-top:4px}.portal-ipad-app .portal-welcome .boost-actions{display:grid;grid-template-columns:1fr}.portal-ipad-app .portal-welcome .boost-button{width:100%}.portal-card-heading{display:grid;gap:10px}.portal-summary-status{justify-content:space-between}.portal-status-badge{justify-self:start}.portal-today-side{grid-template-columns:1fr}.portal-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.portal-summary-chevron{transition:none}}

/* Portal light mode must override all legacy dark workspace declarations. */
body.portal-ipad-app.theme-light { --boost-bg:#eef5fb;--boost-bg-deep:#f8fbfe;--boost-surface:#fff;--boost-surface-raised:#f5f9fd;--boost-surface-soft:#e7f1fa;--boost-line:rgba(20,63,100,.16);--boost-text:#10263c;--boost-text-muted:#536f88;--boost-blue:#0d75bc;--boost-gold:#b77905;--boost-shadow:0 16px 44px rgba(28,66,99,.12);color:#10263c!important;background:radial-gradient(circle at 12% 7%,rgba(42,145,214,.12),transparent 32rem),linear-gradient(155deg,#f8fbfe,#eef5fb)!important; }
body.portal-ipad-app.theme-light .portal-ipad-rail,
body.portal-ipad-app.theme-light .portal-ipad-topbar { color:#10263c;background:rgba(255,255,255,.96)!important;border-color:rgba(20,63,100,.16)!important; }
body.portal-ipad-app.theme-light .portal-program-card,
body.portal-ipad-app.theme-light .portal-empty,
body.portal-ipad-app.theme-light .portal-booster-entry,
body.portal-ipad-app.theme-light .daily-location-card,
body.portal-ipad-app.theme-light .daily-class-switcher>section { color:#10263c!important;border-color:rgba(20,63,100,.16)!important;background:linear-gradient(145deg,#fff,#f5f9fd)!important;box-shadow:0 16px 44px rgba(28,66,99,.10)!important; }
body.portal-ipad-app.theme-light h1,
body.portal-ipad-app.theme-light h2,
body.portal-ipad-app.theme-light h3,
body.portal-ipad-app.theme-light strong,
body.portal-ipad-app.theme-light .portal-program-context strong,
body.portal-ipad-app.theme-light .daily-location-heading h3 { color:#10263c!important; }
body.portal-ipad-app.theme-light p,
body.portal-ipad-app.theme-light small,
body.portal-ipad-app.theme-light .daily-location-heading p,
body.portal-ipad-app.theme-light .daily-location-tools span,
body.portal-ipad-app.theme-light .daily-class-switcher>section>div span { color:#536f88!important; }
body.portal-ipad-app.theme-light .portal-action-list a,
body.portal-ipad-app.theme-light .portal-quick-actions a,
body.portal-ipad-app.theme-light .daily-location-tools a,
body.portal-ipad-app.theme-light .daily-class-switcher nav a,
body.portal-ipad-app.theme-light .portal-workspace-list a { color:#10263c!important;border-color:rgba(20,63,100,.14)!important;background:#f5f9fd!important; }
body.portal-ipad-app.theme-light .portal-search { color:#536f88!important;border-color:rgba(20,63,100,.16)!important;background:#f5f9fd!important; }
body.portal-ipad-app.theme-light .boost-button.secondary { color:#10263c!important;border-color:rgba(20,63,100,.18)!important;background:#fff!important; }
body.portal-ipad-app.theme-light .eyebrow { color:#8a5a00!important; }

.program-area-picker { padding:18px;border:1px solid var(--boost-line);border-radius:18px;background:var(--boost-surface-raised); }
.program-area-picker legend { padding:0 8px;font-weight:850; }
.program-area-picker legend small { margin-left:6px;color:var(--boost-text-muted);font-weight:600; }
.program-area-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:8px; }
.program-area-grid label { display:flex;align-items:flex-start;gap:9px;min-width:0;padding:11px;border:1px solid var(--boost-line);border-radius:12px;background:var(--boost-surface);cursor:pointer;line-height:1.35; }
.program-area-grid label:has(input:checked) { border-color:var(--boost-blue);background:var(--boost-surface-soft); }
.program-area-grid input { flex:0 0 auto;width:18px;height:18px;margin:1px 0 0;accent-color:var(--boost-blue-strong); }
@media(max-width:900px){.program-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.program-area-grid{grid-template-columns:1fr}}

/* Unified educator application shell. */
.boost-educator-app {
  --educator-rail: 132px;
  min-height: 100vh;
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.boost-educator-app > .site-shell,
.boost-educator-app > .boost-global-nav,
.boost-educator-app > .boost-compact-menu,
.boost-educator-app > footer { display: none !important; }
.boost-educator-app [hidden] { display: none !important; }
.boost-educator-app .boost-main {
  width: auto;
  max-width: none;
  margin: 0 24px 0 calc(var(--educator-rail) + 24px);
  padding: 28px 0 72px;
}
.educator-shell-context {
  display: flex;
  flex-wrap: wrap;
  justify-content: end;
  gap: 10px 24px;
  min-height: 64px;
  margin: 0 24px 0 calc(var(--educator-rail) + 24px);
  padding: 12px 0;
  border-bottom: 1px solid var(--boost-line);
}
.educator-shell-context span { display: grid; min-width: 0; }
.educator-shell-context small { color: var(--boost-text-muted); font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.educator-shell-context strong { max-width: 280px; overflow: hidden; color: var(--boost-text); text-overflow: ellipsis; white-space: nowrap; }
.educator-shell-context .educator-class-context { flex: 1 1 280px; }
.educator-shell-context .educator-class-context strong { max-width: none; overflow: visible; text-overflow: clip; white-space: normal; }
.educator-shell-context{border-top:3px solid var(--program-accent,var(--boost-gold))}
.educator-workflow-spine {
  position: sticky;
  top: 0;
  z-index: 58;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 10px 24px 0 calc(var(--educator-rail) + 24px);
  padding: 8px;
  border: 1px solid var(--boost-line);
  border-radius: 16px;
  background: color-mix(in srgb, var(--boost-surface) 94%, transparent);
  box-shadow: 0 10px 28px rgba(0, 7, 18, .1);
  backdrop-filter: blur(16px);
}
/* The educator rail already presents Today, Plan, Teach, and Continue.
   Keeping a second full-width copy made the daily workflow look like two apps. */
.boost-educator-app .educator-workflow-spine { display: none; }
.educator-workflow-spine a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-width: 0;
  min-height: 44px;
  padding: 8px 12px;
  border-radius: 11px;
  color: var(--boost-text-muted);
  text-decoration: none;
}
.educator-workflow-spine a:hover,
.educator-workflow-spine a:focus-visible {
  color: var(--boost-text);
  background: var(--boost-surface-soft);
}
.educator-workflow-spine a.active {
  color: #fff;
  background: #356f95;
}
.educator-workflow-spine span {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-size: .76rem;
  font-weight: 850;
}
.educator-workflow-spine strong {
  min-width: 0;
  font-size: .9rem;
}
.class-plan-editor-disclosure,
.class-plan-support-disclosure {
  padding: 0;
  overflow: clip;
}
.class-plan-editor-disclosure > summary,
.class-plan-support-disclosure > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 64px;
  padding: 16px 18px;
  cursor: pointer;
  list-style: none;
}
.class-plan-editor-disclosure > summary::-webkit-details-marker,
.class-plan-support-disclosure > summary::-webkit-details-marker { display: none; }
.class-plan-editor-disclosure > summary::after,
.class-plan-support-disclosure > summary::after {
  content: "Open";
  color: var(--boost-link);
  font-weight: 800;
}
.class-plan-editor-disclosure[open] > summary::after,
.class-plan-support-disclosure[open] > summary::after { content: "Close"; }
.class-plan-editor-disclosure > summary span,
.class-plan-support-disclosure > summary span { display: grid; gap: 3px; }
.class-plan-editor-disclosure > summary strong,
.class-plan-support-disclosure > summary strong { color: var(--boost-text); font-size: 1rem; }
.class-plan-editor-disclosure > summary small,
.class-plan-support-disclosure > summary small { color: var(--boost-text-muted); font-size: .86rem; }
.class-plan-editor-disclosure[open] > :not(summary),
.class-plan-support-disclosure[open] > :not(summary) { margin-inline: 18px; }
.educator-school-mark{display:grid!important;place-items:center;align-self:center;width:48px;height:48px;border-radius:14px;background:color-mix(in srgb,var(--program-color) 18%,var(--boost-surface));border:2px solid var(--program-accent);overflow:hidden}
.educator-school-mark img{width:100%;height:100%;object-fit:cover}
.educator-tool-list a.active{border-color:var(--program-accent,var(--boost-gold))!important;background:color-mix(in srgb,var(--program-color) 24%,var(--boost-surface))!important}
.educator-production-context strong { color: var(--boost-gold); }
.educator-class-context strong { color: var(--boost-gold); }
.boost-educator-app h1,
.boost-educator-app h2,
.boost-educator-app h3,
.boost-educator-app .office-heading h1,
.boost-educator-app .section-heading h2 {
  font-family: inherit;
  letter-spacing: -.035em;
}
.boost-educator-app .office-heading { align-items: center; gap: 22px; margin-bottom: 26px; }
.boost-educator-app .office-heading h1 { max-width: 880px; font-size: clamp(2rem, 4vw, 3.6rem); line-height: 1.02; }
.boost-educator-sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 80;
  display: flex;
  flex-direction: column;
  width: var(--educator-rail);
  padding: 14px 10px;
  border-right: 1px solid var(--boost-line);
  background: color-mix(in srgb, var(--boost-surface) 96%, transparent);
  box-shadow: 10px 0 36px rgba(0,7,18,.18);
  overflow-y: auto;
}
.educator-sidebar-brand { display: grid; place-items: center; min-height: 78px; margin-bottom: 8px; }
.educator-sidebar-brand img { width: 76px; height: 70px; object-fit: contain; }
.educator-sidebar-label { padding: 5px 8px; color: var(--boost-text-muted); font-size: .68rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.educator-tool-list { display: grid; gap: 4px; }
.educator-tool-list a[hidden] { display: none !important; }
.educator-tool-list a,
.educator-sidebar-bottom a,
.educator-sidebar-bottom button {
  display: grid;
  place-items: center;
  gap: 3px;
  min-height: 64px;
  padding: 8px 6px;
  border: 0;
  border-radius: 14px;
  color: var(--boost-text-muted);
  background: transparent;
  text-align: center;
  text-decoration: none;
  font: inherit;
  cursor: pointer;
}
.educator-tool-list a > span,
.educator-sidebar-bottom a > span { font-size: 1.22rem; }
.educator-tool-list strong,
.educator-sidebar-bottom strong,
.educator-sidebar-bottom button strong { font-size: .78rem; line-height: 1.15; }
.educator-tool-list a:hover,
.educator-tool-list a.active,
.educator-sidebar-bottom a:hover,
.educator-sidebar-bottom button:hover { color: #071426; background: var(--boost-gold); }
.educator-add-tools { position: relative; margin-top: 7px; }
.educator-add-tools > summary { min-height: 48px; padding: 13px 8px; border-radius: 12px; color: var(--boost-blue); text-align: center; font-size: .78rem; font-weight: 850; cursor: pointer; list-style: none; }
.educator-add-tools > summary::-webkit-details-marker { display: none; }
.educator-add-tools > div { position: fixed; z-index: 95; left: 122px; bottom: 86px; display: grid; width: min(300px, calc(100vw - 148px)); gap: 4px; padding: 12px; border: 1px solid var(--boost-line); border-radius: 16px; background: var(--boost-surface); box-shadow: var(--boost-shadow); }
.educator-add-tools label { display: flex; align-items: center; gap: 10px; min-height: 46px; padding: 8px 10px; border-radius: 10px; cursor: pointer; }
.educator-add-tools label:hover { background: var(--boost-surface-soft); }
.educator-add-tools input { width: 20px !important; min-height: 20px !important; margin: 0; }
.educator-booster-link { display: grid; gap: 3px; margin-top: 10px; padding: 12px 8px; border: 1px solid var(--boost-line); border-radius: 14px; color: var(--boost-text); text-align: center; text-decoration: none; }
.educator-booster-link > span { display: grid; place-items: center; width: 28px; height: 28px; margin: auto; border-radius: 9px; color: #071426; background: var(--boost-gold); font-weight: 900; }
.educator-booster-link strong { font-size: .78rem; }
.educator-booster-link small { color: var(--boost-text-muted); font-size: .65rem; line-height: 1.25; }
.educator-sidebar-bottom { display: grid; grid-template-columns: 1fr; gap: 3px; margin-top: auto; padding-top: 10px; }
.educator-sidebar-bottom .boost-theme-toggle { grid-column: 1 / -1; width: 100%; min-height: 46px; margin: 0; }
.portal-user-chip { min-width: 44px; min-height: 44px; }

/* Dedicated booster support shell. It is deliberately separate from the educator rail,
   but shares the same fluid viewport and touch-responsive layout contract. */
.boost-booster-app {
  min-height: 100vh;
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.boost-booster-app > .site-shell,
.boost-booster-app > footer { display: none !important; }
.boost-booster-app .boost-global-nav {
  width: auto;
  max-width: none;
  margin: 14px 24px 0;
  flex-wrap: wrap;
  overflow: visible;
}
.boost-booster-app main.boost-main {
  width: calc(100% - 48px) !important;
  max-width: none !important;
  margin: 0 24px !important;
  padding: 28px 0 72px;
}
.boost-booster-app main.boost-main > * { max-width: none; }
.boost-booster-app .office-nav a,
.boost-booster-app .office-nav summary,
.boost-booster-app .office-nav button { min-height: 44px; }
.booster-shell-context {
  display: grid;
  min-width: 0;
  padding: 0 12px;
  border-left: 1px solid var(--boost-line, rgba(255,255,255,.12));
  line-height: 1.15;
}
.booster-shell-context small {
  color: var(--boost-muted, #b8c5cf);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.booster-shell-context strong {
  max-width: 230px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Touch-safe educator controls and shared form rhythm. */
.boost-educator-app input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.boost-educator-app select,
.boost-educator-app textarea {
  width: 100%;
  min-height: 48px;
  padding: 11px 13px;
  border-radius: 12px;
  font: inherit;
  line-height: 1.35;
}
.boost-educator-app textarea { min-height: 112px; }
.boost-educator-app button,
.boost-educator-app .boost-button,
.boost-educator-app summary,
.boost-educator-app main a { min-height: 44px; }
.boost-educator-app .boost-back-link { min-height: 44px; padding: 12px; }

/* Complete token bridge for legacy educator components in both themes. */
.boost-educator-app .students-kpis article,
.boost-educator-app .inventory-kpis article,
.boost-educator-app .attire-kpis article,
.boost-educator-app .music-kpis article,
.boost-educator-app .finance-kpis article,
.boost-educator-app .class-card,
.boost-educator-app .student-family,
.boost-educator-app .meeting-list article,
.boost-educator-app .daily-class-switcher > section,
.boost-educator-app .daily-location-tools a {
  color: var(--boost-text);
  border-color: var(--boost-line);
  background: var(--boost-surface-raised);
}
.boost-educator-app .students-kpis span,
.boost-educator-app .student-card p,
.boost-educator-app .student-contact,
.boost-educator-app .student-family span,
.boost-educator-app .class-card p { color: var(--boost-text-muted); }
.boost-educator-app .students-kpis strong,
.boost-educator-app .student-card h3 { color: var(--boost-text); }
.boost-educator-app .students-dialog,
.boost-educator-app .inventory-dialog,
.boost-educator-app .schedule-dialog {
  color: var(--boost-text);
  border-color: var(--boost-line);
  background: var(--boost-surface);
}
.boost-educator-app.theme-light .connector-status,
.boost-educator-app.theme-light .student-groups span { color: #755000; background: #fff1bd; }

/* Guided class setup replaces three simultaneous forms. */
.boost-educator-app .classes-setup-grid { grid-template-columns: minmax(0, 1fr); }
.boost-educator-app details.classes-setup {
  display: block;
  padding: 0;
  border: 1px solid var(--boost-shell-border, rgba(126, 156, 177, .28));
  border-radius: 16px;
  overflow: clip;
  background: rgba(255, 255, 255, .025);
}
.boost-educator-app details.classes-setup > summary {
  min-height: 64px;
  padding: 14px 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  cursor: pointer;
  list-style: none;
}
.boost-educator-app details.classes-setup > summary::-webkit-details-marker { display: none; }
.boost-educator-app details.classes-setup > summary span:first-child { display: grid; gap: 3px; }
.boost-educator-app details.classes-setup > summary small {
  color: var(--boost-muted, #a9bdcb);
  font-weight: 650;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.boost-educator-app details.classes-setup > summary strong { font-size: 1rem; }
.boost-educator-app details.classes-setup[open] > summary { border-bottom: 1px solid var(--boost-shell-border, rgba(126, 156, 177, .28)); }
.boost-educator-app details.classes-setup > .classes-setup-grid { padding: 18px; }
.classes-stepper { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; max-width: none; }
.classes-stepper button { min-height: 48px; padding: 10px; border: 1px solid var(--boost-line); border-radius: 12px; color: var(--boost-text-muted); background: var(--boost-surface-raised); font: inherit; font-weight: 800; cursor: pointer; }
.classes-stepper button.active { color: #071426; border-color: var(--boost-gold); background: var(--boost-gold); }

#foh-main .office-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#foh-main .office-card,
#foh-main .boost-form,
#foh-main .form-pair,
#foh-main label,
#foh-main input,
#foh-main select,
#foh-main textarea { min-width: 0; max-width: 100%; }
#foh-main .production-task-list > div,
#foh-main .production-task { grid-template-columns: minmax(80px,.65fr) minmax(0,1.3fr) minmax(90px,.75fr); }

.publication-grid,
.publication-actions { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start; }
.publication-flatplan { display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:18px 0; }
.publication-page-card { display:flex;min-width:0;min-height:220px;flex-direction:column;gap:8px;padding:14px;border:1px solid var(--boost-line);border-radius:12px;background:var(--boost-surface-raised); }
.publication-page-card details { margin-top:auto; }
.publication-page-card summary { min-height:44px;display:flex;align-items:center;font-weight:800;cursor:pointer; }
.publication-proof { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--boost-line); }
.finance-operations-grid,
.operational-report-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start; }
.boost-theme-toggle { min-width:44px;min-height:44px; }
#finance-operations-main .production-task { grid-template-columns:minmax(80px,.6fr) minmax(0,1.2fr) minmax(80px,.6fr) minmax(140px,.8fr) minmax(160px,1fr) auto; }

@media (max-width: 1100px) {
  .boost-educator-app { --educator-rail: 112px; }
  .boost-booster-app .boost-global-nav { flex-wrap: wrap; margin-inline: 14px; overflow: visible; }
  .boost-booster-app .boost-main { margin-inline: 14px; }
  .boost-booster-app .boost-app-brand { position: static; order: -3; }
  .booster-shell-context { flex: 1 0 calc(100% - 130px); order: -2; width: auto; padding: 8px 12px; border-left: 1px solid var(--boost-line, rgba(255,255,255,.12)); border-bottom: 1px solid var(--boost-line, rgba(255,255,255,.12)); }
  .booster-shell-context strong { max-width: none; }
}
@media (max-width: 900px) {
  .boost-educator-app { --educator-rail: 148px; }
  .boost-educator-app .boost-main { margin-right: 14px; margin-left: calc(var(--educator-rail) + 14px); }
  .educator-shell-context { margin-right: 14px; margin-left: calc(var(--educator-rail) + 14px); }
  .boost-educator-sidebar { padding-inline: 10px; }
  .educator-sidebar-brand img { width: 66px; height: 62px; }
  #travel-main .office-grid,
  #travel-main .form-pair { grid-template-columns: minmax(0, 1fr); }
  #travel-main .production-task { display: grid; grid-template-columns: minmax(0, 1fr); align-items: stretch; }
  #travel-main .production-task > *,
  #travel-main .boost-form,
  #travel-main details,
  #travel-main input,
  #travel-main select,
  #travel-main textarea { width: 100%; min-width: 0; max-width: 100%; }
  #foh-main .office-grid,
  #foh-main .form-pair { grid-template-columns: minmax(0, 1fr); }
  #foh-main .production-task-list > div,
  #foh-main .production-task { display: grid; grid-template-columns: minmax(0, 1fr); align-items: stretch; }
  #foh-main .production-task > *,
  #foh-main .boost-form,
  #foh-main details,
  #foh-main input,
  #foh-main select,
  #foh-main textarea { width: 100%; min-width: 0; max-width: 100%; }
  .publication-grid,
  .publication-actions { grid-template-columns:minmax(0,1fr); }
  .publication-proof { grid-template-columns:minmax(0,1fr); }
  #publication-main .boost-form,
  #publication-main input,
  #publication-main select,
  #publication-main textarea { width:100%;min-width:0;max-width:100%; }
  .finance-operations-grid,
  .operational-report-grid { grid-template-columns:minmax(0,1fr); }
  #finance-operations-main .production-task { display:grid;grid-template-columns:minmax(0,1fr); }
  #finance-operations-main .boost-form,
  #finance-operations-main input,
  #finance-operations-main select,
  #finance-operations-main textarea { width:100%;min-width:0;max-width:100%; }
}
@media (max-width: 680px) {
  .boost-educator-app { --educator-rail: 0px; }
  .boost-educator-app .boost-main { width: calc(100% - 24px); margin: 0 auto; padding-bottom: 104px; }
  .educator-shell-context { display: grid; grid-template-columns: 1fr; gap: 4px; margin: 0 12px; padding: 10px 0; }
  .educator-shell-context span:first-child { display: none; }
  .educator-shell-context strong { max-width: 100%; }
  .boost-educator-sidebar { inset: auto 8px 8px; width: auto; height: 76px; padding: 6px 8px; border: 1px solid var(--boost-line); border-radius: 20px; overflow: visible; }
  .educator-sidebar-brand,
  .educator-sidebar-label,
  .educator-add-tools,
  .educator-booster-link,
  .educator-sidebar-bottom { display: none; }
  .educator-tool-list { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 4px; }
  .educator-tool-list a { display: none; min-width: 0; min-height: 62px; padding-inline: 1px; }
  .educator-tool-list a:nth-child(-n+5) { display: grid; }
  .educator-tool-list strong { max-width: 100%; font-size: .54rem; letter-spacing: -.01em; white-space: nowrap; }
  .classes-stepper { grid-template-columns: 1fr; }
  .boost-educator-app .office-heading { align-items: stretch; display: grid; }
  .boost-booster-app .boost-global-nav { margin: 8px 12px 0; }
  .boost-booster-app .boost-global-nav > a:not(.boost-app-brand),
  .boost-booster-app .boost-nav-more,
  .boost-booster-app .boost-theme-toggle { flex: 1 1 calc(50% - 4px); margin: 0; text-align: center; }
  .boost-booster-app .boost-nav-more > summary { text-align: center; }
  .boost-booster-app main.boost-main { width: calc(100% - 24px) !important; margin: 0 12px !important; padding-bottom: 96px; }
}
.boost-app .inline-form button { min-height: 44px; padding: 9px 14px; }

/* Normalize responsive work areas: a lone card uses the available app width. */
:where(.office-grid,.production-layout,.meeting-layout,.schedule-overview,.value-shell) > :only-child {
  grid-column: 1 / -1;
  width: 100%;
  min-width: 0;
  max-width: none;
  box-sizing: border-box;
}
.boost-app form.boost-form > :is(h1,h2,h3,.section-heading) { grid-column: 1 / -1; }
.boost-app form.boost-form > .boost-button {
  align-self: end;
  justify-self: start;
  width: auto;
  max-width: 100%;
  min-height: 44px;
  height: auto;
  padding: 11px 18px;
  border-radius: 12px;
  line-height: 1.2;
  white-space: normal;
}
.boost-educator-app .meeting-layout > .office-card {
  color: var(--boost-text);
  border-color: var(--boost-line);
  background: var(--boost-surface);
  box-shadow: var(--boost-shadow);
}
@media(max-width:680px){.boost-app form.boost-form > .boost-button{justify-self:stretch;width:100%}}

/* Daily class runner */
.class-day-main{display:grid;gap:20px}.class-day-heading{margin-bottom:0}.class-resume-strip{display:flex;justify-content:space-between;gap:20px;padding:16px 20px;border:1px solid var(--boost-line);border-radius:18px;background:rgba(255,196,59,.08)}.class-resume-strip span{display:block;color:var(--boost-muted);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.class-resume-strip strong{display:block;margin-top:4px}.class-resume-strip p,.class-resume-strip time{margin:4px 0 0}.class-day-grid{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(420px,1.2fr);gap:20px}.class-attendance-panel,.class-tools-panel,.class-plan-panel{min-width:0}.class-attendance-list{display:grid;gap:6px;margin-top:14px;max-height:520px;overflow:auto;padding-right:4px}.class-attendance-list details{border:1px solid var(--boost-line);border-radius:12px;background:var(--boost-surface-raised)}.class-attendance-list summary{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:48px;padding:8px 12px;cursor:pointer}.class-attendance-list summary span{color:var(--boost-muted);font-size:.85rem}.class-attendance-list details>div{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 12px 12px}.class-attendance-list details>div label:last-child{grid-column:1/-1}.class-sticky-action{position:sticky;bottom:0;z-index:4;display:flex;justify-content:flex-end;margin:16px -4px -4px;padding:12px;background:linear-gradient(180deg,transparent,var(--boost-bg) 28%)}.music-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.music-tool-grid section{display:grid;align-content:start;gap:10px;min-height:160px;padding:16px;border:1px solid var(--boost-line);border-radius:16px;background:var(--boost-surface-raised)}.music-tool-grid section:last-child{grid-column:1/-1}.music-tool-grid h3,.music-tool-grid p{margin:0}.music-tool-grid output{font-size:1.35rem;font-weight:800}.tuner-note{font-size:2.5rem;font-weight:900;line-height:1}.class-plan-builder{max-width:none}.class-plan-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.class-plan-sections fieldset{display:grid;gap:10px;padding:16px;border:1px solid var(--boost-line);border-radius:16px}.class-running-plan ol{display:grid;gap:12px;padding:0;list-style:none}.class-running-plan li{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.28fr);gap:18px;align-items:center;padding:16px;border:1px solid var(--boost-line);border-radius:16px;background:var(--boost-surface-raised)}.class-running-plan li h3,.class-running-plan li p{margin:3px 0}.class-running-plan li span{color:var(--boost-muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.class-start-link{background:var(--boost-gold)!important;color:#101722!important;font-weight:800}.class-card nav .class-start-link:hover{color:#101722!important}
.classroom-day-board{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(440px,.85fr);gap:26px;overflow:hidden;padding:clamp(24px,4vw,42px);border:1px solid rgba(246,195,68,.28);border-radius:24px;background:radial-gradient(circle at 8% 0,rgba(246,195,68,.17),transparent 38%),linear-gradient(135deg,#122434,#091720);box-shadow:0 24px 70px rgba(0,0,0,.22)}.classroom-day-intro{display:grid;align-content:center}.classroom-day-intro h2{max-width:720px;margin:7px 0 12px;font-size:clamp(1.8rem,3.3vw,3rem);line-height:1.02;letter-spacing:-.035em}.classroom-day-intro>p:not(.eyebrow){max-width:680px;margin:0;color:#c3d2dc;font-size:1.03rem;line-height:1.62}.classroom-day-intro .boost-actions{margin-top:24px}.classroom-day-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.classroom-day-facts div{display:grid;align-content:center;min-height:122px;padding:17px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.055)}.classroom-day-facts dt{color:#9fb6c7;font-size:.72rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.classroom-day-facts dd{margin:6px 0 2px;color:#fff;font-size:1.3rem;font-weight:850}.classroom-day-facts small{color:#aebfca}.classroom-anchor{display:block;position:relative;top:-16px}.classroom-day-grid{grid-template-columns:1fr}.classroom-day-grid .class-tools-panel{padding:clamp(22px,3vw,34px)}.classroom-day-grid .music-tool-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.classroom-day-grid .music-tool-grid section,.classroom-day-grid .music-tool-grid section:last-child{grid-column:auto;min-height:190px}.classroom-day-grid+.classroom-anchor+.class-plan-panel{padding:clamp(24px,4vw,40px);border-color:rgba(246,195,68,.2)}
.school-calendar-main{gap:18px}.school-calendar-heading{margin-bottom:2px}.school-calendar-heading>div{max-width:none}.school-calendar-overview{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.school-calendar-overview>.office-card{min-height:0}.school-calendar-today h2{margin:5px 0 10px}.school-calendar-main .workspace-section{margin-top:12px;padding-top:24px;border-top:1px solid var(--boost-line)}.school-calendar-main .workspace-section>.section-heading{margin-bottom:14px}.school-calendar-main .help-grid{align-items:start}.school-calendar-main form.boost-form{align-content:start}.school-calendar-main form.boost-form>.boost-button{justify-self:start;align-self:end;width:auto;min-width:170px;max-width:100%;min-height:44px;height:auto;padding:11px 18px;line-height:1.2}.school-calendar-main form.boost-form>.boost-button:disabled{opacity:.48}.school-calendar-main .calendar-source-details{grid-column:1/-1}
@media(max-width:1100px){.classroom-day-board{grid-template-columns:1fr}.classroom-day-grid .music-tool-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.class-day-grid{grid-template-columns:1fr}.class-attendance-list{max-height:420px}.music-tool-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.music-tool-grid section:last-child{grid-column:auto}.class-plan-sections{grid-template-columns:1fr}}
@media(max-width:680px){.class-resume-strip{flex-direction:column}.classroom-day-board{padding:22px}.classroom-day-facts{grid-template-columns:1fr 1fr}.classroom-day-facts div{min-height:105px;padding:14px}.music-tool-grid,.classroom-day-grid .music-tool-grid{grid-template-columns:1fr}.class-attendance-list details>div,.class-running-plan li{grid-template-columns:1fr}.class-sticky-action .boost-button{width:100%}}
@media(max-width:680px){.school-calendar-overview{grid-template-columns:minmax(0,1fr)}}
@media(max-width:680px){
  .educator-tool-list strong{
    overflow-wrap:anywhere;
    font-size:.5rem;
    line-height:1.08;
    text-align:center;
    white-space:normal;
  }
  .administration-main .classroom-planning-tabs{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    overflow:visible;
  }
  .administration-main .classroom-planning-tabs a{
    min-width:0;
    min-height:44px;
    padding:10px 8px;
    white-space:normal;
  }
}
.production-layout,
.production-workspace,
.production-index,
.production-main .workspace-section,
.coverage-main .reports-grid,
.coverage-main .office-card,
.coverage-main .production-task-list,
.coverage-main .production-task-list > div,
.coverage-main details,
.coverage-main form { min-width:0;max-width:100%; }
.production-layout.production-layout-single,
#creative-main .production-layout,
#logistics-main .production-layout,
#ticket-main .production-layout{grid-template-columns:minmax(0,1fr)}
#promotion-main .promotion-workspace{grid-template-columns:minmax(240px,.38fr) minmax(0,1fr);align-items:start}
#promotion-main .promotion-workspace>.office-card:first-child,
#promotion-main .promotion-workspace>.office-card:nth-child(3){grid-column:1}
#promotion-main .promotion-workspace>.office-card:nth-child(2){grid-column:2;grid-row:1/span 2}
#promotion-main .promotion-workspace>.office-card:nth-child(2) .boost-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
#promotion-main .promotion-workspace>.office-card:nth-child(2) .boost-form>label:nth-of-type(2),
#promotion-main .promotion-workspace>.office-card:nth-child(2) .boost-form>button{grid-column:1/-1}
#promotion-main .promotion-workspace>.office-card:nth-child(2) textarea{min-height:150px}
@media(max-width:900px){#promotion-main .promotion-workspace,#promotion-main .promotion-workspace>.office-card:nth-child(2) .boost-form{grid-template-columns:minmax(0,1fr)}#promotion-main .promotion-workspace>.office-card:first-child,#promotion-main .promotion-workspace>.office-card:nth-child(2),#promotion-main .promotion-workspace>.office-card:nth-child(3),#promotion-main .promotion-workspace>.office-card:nth-child(2) .boost-form>label:nth-of-type(2),#promotion-main .promotion-workspace>.office-card:nth-child(2) .boost-form>button{grid-column:1;grid-row:auto}}
.production-task input,
.production-task select,
.production-task button { min-height:44px; }
.production-task{box-sizing:border-box;min-width:0;max-width:100%}
.production-task>*{min-width:0;max-width:100%}
.coverage-main .production-task-list > div > * { min-width:0;max-width:100%;overflow-wrap:anywhere; }
@media(max-width:1024px){
  .production-layout,.production-workspace,.production-index,.production-main .workspace-section{width:100%;min-width:0;max-width:100%}
  .production-task{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .production-task>span,.production-task>input[name=title]{grid-column:1/-1}
  .production-main .office-heading{align-items:stretch;display:grid}
  .production-main .office-heading>.boost-actions{display:flex;flex-wrap:wrap}
}
@media(max-width:680px){
  .production-task{grid-template-columns:minmax(0,1fr)}
  .production-task>*{grid-column:1!important;width:100%;min-width:0;max-width:100%}
  .class-sticky-action,.attendance-save-bar{position:static;margin:12px 0 0;padding:0;background:none}
}
.attendance-settings{margin-bottom:12px}.attendance-settings>summary{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:48px;cursor:pointer}.attendance-settings>summary span{color:var(--boost-muted);font-size:.8rem}.attendance-table [data-attendance-row]{grid-template-columns:minmax(180px,1fr) minmax(150px,.55fr) minmax(145px,.55fr);align-items:center}.attendance-exception>summary{min-height:44px;display:flex;align-items:center;cursor:pointer;color:var(--boost-muted)}.attendance-exception>div{display:grid;gap:8px;grid-column:1/-1;padding:8px 0}.attendance-save-bar{position:sticky;bottom:0;z-index:4;display:flex;justify-content:flex-end;padding:14px;background:linear-gradient(180deg,transparent,var(--boost-bg) 28%)}
@media(max-width:680px){.attendance-table [data-attendance-row]{grid-template-columns:1fr}.attendance-save-bar .boost-button{width:100%}}
.inventory-card-photo{display:block;width:100%;height:190px;margin:0 0 14px;border-radius:14px;object-fit:cover;background:var(--boost-surface-soft)}.inventory-photo-field{display:grid;gap:8px;padding:14px;border:1px dashed var(--boost-line);border-radius:14px;background:var(--boost-surface-raised)}.inventory-photo-field small{color:var(--boost-muted)}

/* A roster is a working list, not a wall of profile cards. */
.students-main .students-list{gap:8px}.students-main .student-card{grid-template-columns:minmax(230px,1.35fr) minmax(180px,.85fr) minmax(160px,.7fr) auto auto;gap:12px;align-items:center;padding:12px 14px}.students-main .student-card-head{min-width:0;align-items:center}.students-main .student-card h3{margin:3px 0;font-size:1.05rem}.students-main .student-card p{font-size:.84rem}.students-main .student-contact{display:grid;gap:3px;font-size:.84rem;overflow-wrap:anywhere}.students-main .student-family{gap:2px;padding:8px 10px}.students-main .student-family strong{font-size:.78rem}.students-main .student-family span{font-size:.8rem}.students-main .student-card>.boost-actions{justify-content:flex-end}.students-main .student-card>details>summary{display:flex;align-items:center;min-height:44px;color:var(--boost-text);font-weight:800;cursor:pointer}.students-main .student-card>details[open]{grid-column:1/-1}
@media(max-width:1050px){.students-main .student-card{grid-template-columns:minmax(220px,1fr) minmax(170px,.8fr) auto}.students-main .student-family{grid-column:1/3}.students-main .student-card>.boost-actions{grid-column:3;grid-row:1}.students-main .student-card>details{grid-column:3;grid-row:2}.students-main .student-card>details[open]{grid-column:1/-1;grid-row:auto}}
@media(max-width:680px){.students-main .student-card{grid-template-columns:1fr}.students-main .student-family,.students-main .student-card>.boost-actions,.students-main .student-card>details{grid-column:auto;grid-row:auto}.students-main .student-card>.boost-actions{justify-content:flex-start}.students-main .student-groups{display:none}}
.music-main .music-parts{max-height:430px;overflow:auto;padding-right:6px;overscroll-behavior:contain}.music-main .music-parts>div{min-height:58px}.music-main .music-parts::-webkit-scrollbar{width:10px}.music-main .music-parts::-webkit-scrollbar-thumb{border-radius:10px;background:var(--boost-line)}
.inventory-import-panel>summary{display:flex;align-items:center;min-height:52px;cursor:pointer}.inventory-import-panel>summary span{display:grid;gap:3px}.inventory-import-panel>summary small{color:var(--boost-muted);font-weight:500}.inventory-import-body{display:grid;gap:14px;margin-top:14px}.inventory-main .inventory-list{max-height:68vh;overflow:auto;padding-right:6px;overscroll-behavior:contain}.inventory-main .inventory-list::-webkit-scrollbar{width:10px}.inventory-main .inventory-list::-webkit-scrollbar-thumb{border-radius:10px;background:var(--boost-line)}.inventory-main .inventory-select,.help-main .help-toggle{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}.inventory-main .inventory-select input[type=checkbox]{width:20px;height:20px;flex:0 0 20px}.portal-computed-summary a{display:inline-flex;align-items:center;min-height:44px;padding-inline:6px}

/* Help Center: task-first guidance inside the four-product boundary. */
.help-main{gap:clamp(22px,3vw,36px)}
.help-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.7fr);gap:32px;align-items:end;padding:clamp(26px,4vw,50px);border:1px solid rgba(246,195,68,.24);border-radius:26px;background:radial-gradient(circle at 0 0,rgba(246,195,68,.16),transparent 38%),linear-gradient(135deg,var(--boost-surface),var(--boost-surface-soft));box-shadow:var(--boost-shadow)}
.help-hero h1,.help-guide-header h1{max-width:900px;margin:7px 0 12px;font-size:clamp(2.35rem,5vw,4.7rem);line-height:.98;letter-spacing:-.05em}
.help-hero p:not(.eyebrow),.help-guide-header p{max-width:760px;margin:0;color:var(--boost-muted);font-size:1.05rem;line-height:1.65}
.help-search-shell{display:grid;gap:8px;padding:16px;border:1px solid var(--boost-line);border-radius:18px;background:var(--boost-surface-raised);font-weight:800}
.help-search-shell input{width:100%;min-height:54px;padding:0 16px;border-radius:13px;font-size:1rem}
.help-search-shell small{min-height:18px;color:var(--boost-muted);font-weight:600}
.help-product-switcher{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.help-product-switcher a{display:grid;gap:7px;min-height:132px;padding:18px;border:1px solid var(--boost-line);border-radius:18px;color:var(--boost-text);background:var(--boost-surface);text-decoration:none;transition:transform .16s ease,border-color .16s ease,background .16s ease}
.help-product-switcher a:hover{transform:translateY(-2px);border-color:var(--boost-gold)}
.help-product-switcher a.active{border-color:var(--boost-gold);background:linear-gradient(145deg,rgba(246,195,68,.13),var(--boost-surface))}
.help-product-switcher strong{font-size:1.05rem}.help-product-switcher span{color:var(--boost-muted);font-size:.84rem;line-height:1.45}
.help-context-panel,.help-library-v2,.help-related{display:grid;gap:18px}
.help-context-panel{padding:clamp(20px,3vw,30px);border:1px solid rgba(246,195,68,.3);border-radius:22px;background:rgba(246,195,68,.055)}
.help-context-heading{display:flex;justify-content:space-between;gap:20px;align-items:end}
.help-context-heading h2,.help-library-v2 h2,.help-related h2{margin:4px 0 0;font-size:clamp(1.6rem,3vw,2.4rem)}
.help-context-heading>a{color:var(--boost-gold);font-weight:800}
.help-workflow-group{display:grid;gap:12px}.help-workflow-group>h3{margin:4px 0;font-size:1rem;letter-spacing:.02em}
.help-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.help-guide-card{display:grid;grid-template-rows:auto auto 1fr auto;gap:8px;min-height:180px;padding:20px;border:1px solid var(--boost-line);border-radius:18px;color:var(--boost-text);background:var(--boost-surface);text-decoration:none;box-shadow:0 8px 24px rgba(0,0,0,.06);transition:transform .16s ease,border-color .16s ease}
.help-guide-card:hover{transform:translateY(-2px);border-color:var(--boost-gold)}
.help-guide-card small{color:var(--boost-gold);font-size:.72rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.help-guide-card strong{font-size:1.12rem;line-height:1.25}.help-guide-card span{color:var(--boost-muted);font-size:.9rem;line-height:1.5}.help-guide-card em{color:var(--boost-muted);font-size:.78rem;font-style:normal}
.help-assistance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.help-assistance-grid>.office-card{height:100%}
.help-form{display:grid;gap:13px}.help-form label{display:grid;gap:7px}.help-form input,.help-form textarea{width:100%;min-width:0}.help-form .boost-button{justify-self:start;width:auto;min-width:160px}
.help-answer{margin-top:18px;padding:18px;border:1px solid rgba(246,195,68,.25);border-radius:15px;background:rgba(246,195,68,.07)}
.help-screen-context{display:flex;justify-content:space-between;gap:12px;padding:11px 13px;border-radius:12px;background:var(--boost-surface-soft)}.help-screen-context span{color:var(--boost-muted)}
.help-preferences-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.help-preferences-row>article{display:grid;align-content:start;gap:15px;padding:22px;border:1px solid var(--boost-line);border-radius:18px;background:var(--boost-surface)}.help-preferences-row h2{margin:0}.help-preferences-row p{margin:5px 0 0;color:var(--boost-muted)}
.help-inline-form{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.help-inline-form .boost-button{width:auto;min-width:100px}
.ticket-list.compact{display:grid;gap:8px}.ticket-list.compact>div{display:grid;grid-template-columns:1fr auto;gap:3px 12px;padding:11px 0;border-top:1px solid var(--boost-line)}.ticket-list.compact p,.ticket-list.compact small{grid-column:1/-1;margin:0}
.help-no-results{padding:28px;border:1px dashed var(--boost-line);border-radius:18px;text-align:center}.help-no-results h3{margin:0}.help-no-results p{color:var(--boost-muted)}
.help-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;color:var(--boost-muted);font-size:.86rem}.help-breadcrumbs a{color:var(--boost-gold)}
.help-guide{overflow:hidden;border:1px solid var(--boost-line);border-radius:26px;background:var(--boost-surface);box-shadow:var(--boost-shadow)}
.help-guide-header{display:flex;justify-content:space-between;gap:30px;align-items:start;padding:clamp(28px,5vw,58px);background:radial-gradient(circle at 0 0,rgba(246,195,68,.17),transparent 42%)}
.help-guide-time{flex:0 0 auto;padding:9px 13px;border:1px solid var(--boost-line);border-radius:999px;color:var(--boost-muted);font-size:.8rem;font-weight:800}
.help-guide-steps{padding:0 clamp(28px,5vw,58px) clamp(30px,5vw,58px)}.help-guide-steps h2{margin:0 0 18px;font-size:1.5rem}.help-guide-steps ol{display:grid;gap:0;margin:0;padding:0;list-style:none;counter-reset:help-step}.help-guide-steps li{counter-increment:help-step;display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;align-items:start;padding:17px 0;border-top:1px solid var(--boost-line);line-height:1.6}.help-guide-steps li:before{content:counter(help-step);display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:#101722;background:var(--boost-gold);font-weight:900}
.help-guide-footer{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:22px clamp(28px,5vw,58px);border-top:1px solid var(--boost-line);background:var(--boost-surface-soft)}
.help-guide-feedback{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;align-items:center}.help-guide-feedback>span{font-weight:800}.help-guide-feedback button{min-height:38px;padding:7px 13px;border:1px solid var(--boost-line);border-radius:999px;color:var(--boost-text);background:var(--boost-surface);cursor:pointer}.help-guide-feedback button.selected{border-color:var(--boost-gold);background:rgba(246,195,68,.13)}.help-guide-feedback small{flex-basis:100%;color:var(--boost-muted);text-align:right}
.boost-app.theme-light .help-hero,.boost-app.theme-light .help-product-switcher a,.boost-app.theme-light .help-guide-card,.boost-app.theme-light .help-preferences-row>article,.boost-app.theme-light .help-guide{box-shadow:0 12px 34px rgba(30,48,68,.08)}
@media(max-width:1100px){.help-product-switcher{grid-template-columns:repeat(2,minmax(0,1fr))}.help-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.help-hero,.help-assistance-grid,.help-preferences-row{grid-template-columns:1fr}.help-hero{align-items:stretch}.help-context-heading,.help-guide-header,.help-guide-footer{display:grid}.help-guide-feedback{justify-content:flex-start}.help-guide-feedback small{text-align:left}}
@media(max-width:560px){.help-product-switcher,.help-card-grid{grid-template-columns:1fr}.help-product-switcher a{min-height:0}.help-guide-header,.help-guide-steps,.help-guide-footer{padding-left:20px;padding-right:20px}.help-guide-steps li{grid-template-columns:40px minmax(0,1fr)}}
.attire-main .attire-list{max-height:68vh;overflow:auto;padding-right:6px;overscroll-behavior:contain}.attire-main .attire-list::-webkit-scrollbar{width:10px}.attire-main .attire-list::-webkit-scrollbar-thumb{border-radius:10px;background:var(--boost-line)}

/* Instruction plans are working records, not generic production-task rows. */
.coverage-main .reports-grid{grid-template-columns:minmax(0,1fr)}
.coverage-main .reports-grid>article:first-child .production-task-list>div{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"plan-type plan-title plan-status" "plan-time plan-time plan-time" "plan-action plan-action plan-action";align-items:start;gap:7px 14px;padding:16px;border:1px solid var(--boost-line);border-radius:16px;background:var(--boost-surface-raised)}
.coverage-main .reports-grid>article:first-child .production-task-list>div>span{grid-area:plan-type;align-self:center}
.coverage-main .reports-grid>article:first-child .production-task-list>div>strong{grid-area:plan-title;font-size:1.05rem;line-height:1.35}
.coverage-main .reports-grid>article:first-child .production-task-list>div>time{grid-area:plan-time;color:var(--boost-muted);font-size:.88rem}
.coverage-main .reports-grid>article:first-child .production-task-list>div>em{grid-area:plan-status;justify-self:end;padding:5px 9px;border-radius:999px;background:rgba(246,195,68,.12);font-size:.76rem;font-weight:800;text-transform:uppercase}
.coverage-main .reports-grid>article:first-child .production-task-list>div>details{grid-area:plan-action;width:100%;margin-top:8px;padding-top:10px;border-top:1px solid var(--boost-line)}
.coverage-main .reports-grid>article:first-child .production-task-list>div>details>summary{display:flex;align-items:center;min-height:44px;color:var(--boost-gold);font-weight:800;cursor:pointer}
.coverage-main .reports-grid>article:first-child .production-task-list>div>details[open]>summary{margin-bottom:12px}
.coverage-main .reports-grid>article:first-child .production-task-list>div>details .compact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start;padding:16px;border-radius:14px;background:var(--boost-surface-soft)}
.coverage-main .reports-grid>article:first-child .production-task-list>div>details .compact-form>label:first-of-type{grid-column:1/-1}
.coverage-main .reports-grid>article:first-child .production-task-list>div>details .compact-form textarea{min-height:108px}
.coverage-main .reports-grid>article:first-child .production-task-list>div>details .compact-form>.boost-button{align-self:end;justify-self:stretch;min-height:48px}
.coverage-main .reports-grid>article:first-child .production-task-list>div:not(:has(details)){opacity:.66;background:transparent}
.boost-app.theme-light .boost-button.secondary{color:var(--boost-text)!important;border-color:var(--boost-line)!important;background:var(--boost-surface)!important}
@media(max-width:680px){.coverage-main .reports-grid>article:first-child .production-task-list>div{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"plan-type plan-status" "plan-title plan-title" "plan-time plan-time" "plan-action plan-action"}.coverage-main .reports-grid>article:first-child .production-task-list>div>details .compact-form{grid-template-columns:minmax(0,1fr);padding:12px}.coverage-main .reports-grid>article:first-child .production-task-list>div>details .compact-form>*{grid-column:1;width:100%;min-width:0;max-width:100%}}
.boost-address-shell{position:relative;display:block;min-width:0}.boost-address-shell>.address-autocomplete{width:100%}.boost-address-suggestions{position:absolute;z-index:120;top:calc(100% + 4px);right:0;left:0;display:grid;max-height:280px;overflow:auto;padding:6px;border:1px solid var(--boost-line);border-radius:12px;background:var(--boost-surface);box-shadow:var(--boost-shadow)}.boost-address-suggestions[hidden]{display:none}.boost-address-suggestions button{min-height:44px;padding:9px 11px;border:0;border-radius:8px;color:var(--boost-text);background:transparent;text-align:left;font:inherit;cursor:pointer}.boost-address-suggestions button:hover,.boost-address-suggestions button[aria-selected="true"]{background:var(--boost-surface-soft)}.address-autocomplete-hint{display:block;margin-top:6px;color:var(--boost-muted)}.address-autocomplete-hint[data-status="selected"]{color:#2a8d63}.address-autocomplete-hint[data-status="unavailable"]{color:#b05d26}
.connected-learning-workspace{margin-top:clamp(1rem,2vw,1.75rem)}
.connected-learning-workspace details{border:1px solid var(--boost-border,#334155);border-radius:18px;padding:1rem;margin-top:1rem}
.connected-learning-workspace summary{cursor:pointer;font-weight:800;min-height:44px;display:flex;align-items:center}
.connected-provider-list,.connected-results{display:grid;gap:.75rem;margin-top:1rem}
.connected-provider-list article,.connected-results article{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--boost-border,#334155);border-radius:16px;background:var(--boost-surface-2,rgba(255,255,255,.035))}
.connected-provider-list p,.connected-results p{margin:.3rem 0 0;color:var(--boost-muted,#aab7c4)}
.connected-result-review{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.connected-learning-launch{display:inline-flex;margin-top:.7rem}
.connected-learning-picker small{display:block;margin-top:.5rem;color:var(--boost-muted,#aab7c4)}
@media(max-width:680px){.connected-provider-list article,.connected-results article{align-items:stretch;flex-direction:column}.connected-result-review .boost-button{flex:1}.connected-learning-workspace .section-heading{align-items:flex-start}}

/* Jaded-teacher acceptance: every operational surface remains legible in light mode. */
.boost-educator-app.theme-light .inventory-kpis article,
.boost-educator-app.theme-light .finance-kpis article,
.boost-educator-app.theme-light .reports-kpis article,
.boost-educator-app.theme-light .production-task,
.boost-educator-app.theme-light .production-task-list > div,
.boost-educator-app.theme-light .production-index > a,
.boost-educator-app.theme-light .production-connectors > a,
.boost-educator-app.theme-light .class-running-plan li,
.boost-educator-app.theme-light .music-tool-grid section,
.boost-educator-app.theme-light .trip-step,
.boost-educator-app.theme-light .student-family {
  color:var(--boost-text)!important;
  border-color:var(--boost-line)!important;
  background:var(--boost-surface-raised)!important;
}
.boost-educator-app.theme-light .inventory-kpis strong,
.boost-educator-app.theme-light .finance-kpis strong,
.boost-educator-app.theme-light .reports-kpis strong,
.boost-educator-app.theme-light .production-task strong,
.boost-educator-app.theme-light .production-task input,
.boost-educator-app.theme-light .production-task select,
.boost-educator-app.theme-light .production-connectors a,
.boost-educator-app.theme-light .class-running-plan h3 { color:var(--boost-text)!important; }
.boost-educator-app.theme-light .office-empty strong,
.boost-educator-app.theme-light .class-context-bar a { color:var(--boost-text)!important; }
.boost-educator-app.theme-light .class-context-bar a { border-color:var(--boost-line)!important;background:var(--boost-surface)!important; }
.boost-educator-app.theme-light .class-context-bar a.active { color:#10263c!important;border-color:#b77905!important;background:#ffe09a!important; }
.boost-educator-app.theme-light .inventory-bulk-panel,
.boost-educator-app.theme-light .inventory-list { color:var(--boost-text)!important;border-color:var(--boost-line)!important;background:var(--boost-surface)!important; }
.boost-educator-app.theme-light .workspace-section,
.boost-educator-app.theme-light .inventory-bulk-toolbar { color:var(--boost-text)!important;border-color:var(--boost-line)!important;background:var(--boost-surface)!important;box-shadow:var(--boost-shadow)!important; }
.boost-educator-app.theme-light .inventory-bulk-toolbar>strong { color:#755000!important; }
.boost-educator-app.theme-light .inventory-bulk-toolbar label { color:var(--boost-text-muted)!important; }
.boost-educator-app.theme-light .inventory-kpis span,
.boost-educator-app.theme-light .inventory-facts dt,
.boost-educator-app.theme-light .inventory-activity span,
.boost-educator-app.theme-light .production-index span,
.boost-educator-app.theme-light .production-connectors span,
.boost-educator-app.theme-light .production-task > span,
.boost-educator-app.theme-light .production-task-list > div > span,
.boost-educator-app.theme-light .class-running-plan p,
.boost-educator-app.theme-light .class-running-plan span { color:var(--boost-text-muted)!important; }

/* A production is led phase by phase, not edited as one database table. */
.production-phase{margin:12px 0;border:1px solid var(--boost-line);border-radius:16px;background:var(--boost-surface)}
.production-phase>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:12px 16px;cursor:pointer;font-size:1.02rem;font-weight:850}
.production-phase>summary strong{color:var(--boost-text-muted);font-size:.82rem}
.production-phase>.production-task-list{padding:0 14px 14px}
.production-phase .production-task{grid-template-columns:minmax(260px,1.5fr) minmax(180px,.8fr) minmax(150px,.65fr) auto;background:var(--boost-surface-raised)}
.production-phase .production-task label{display:grid;gap:5px;min-width:0;font-size:.76rem;font-weight:800;text-transform:uppercase}
.production-phase.has-unfinished{border-color:color-mix(in srgb,var(--boost-gold) 44%,var(--boost-line))}.production-phase.has-unfinished>summary{background:color-mix(in srgb,var(--boost-gold) 8%,transparent)}.production-phase.is-complete{opacity:.72}.production-phase-progress{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;background:var(--boost-surface-raised)}.production-phase.has-unfinished .production-phase-progress{background:color-mix(in srgb,var(--boost-gold) 18%,var(--boost-surface));color:var(--boost-gold)}.production-phase.is-complete .production-phase-progress{color:#76d6a1}.production-step-state{grid-column:1/-1;justify-self:start;display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;background:var(--boost-surface-soft);color:var(--boost-muted);font-size:.74rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;cursor:help}.production-task.status-doing{border-left:4px solid #53a8ff}.production-task.status-doing .production-step-state{background:rgba(83,168,255,.16);color:#8bc4ff}.production-task.status-blocked{border-left:4px solid #ff7f73}.production-task.status-blocked .production-step-state,.production-task.is-overdue .production-step-state{background:rgba(255,127,115,.16);color:#ff9e95}.production-task.is-overdue{border-left:4px solid #ff7f73}.production-task.status-todo:not(.is-overdue){border-left:4px solid var(--boost-gold)}.production-task.status-todo:not(.is-overdue) .production-step-state{background:color-mix(in srgb,var(--boost-gold) 14%,transparent);color:var(--boost-gold)}
.production-tool-phases{display:grid;gap:18px}.production-tool-phases>section{padding:16px;border:1px solid var(--boost-line);border-radius:16px;background:var(--boost-surface)}.production-tool-phases h3{margin:0 0 12px}

.connected-admin-setup>summary,.calendar-source-details>summary{display:flex;justify-content:space-between;gap:14px;align-items:center;min-height:52px;cursor:pointer;font-weight:800}
.connected-admin-setup>summary span,.calendar-source-details>summary span{color:var(--boost-text-muted);font-size:.8rem}
.connected-admin-setup>section{display:grid;gap:18px;padding-top:18px}.connected-registration code{overflow-wrap:anywhere}
.attendance-roster .attendance-table{max-height:64vh;overflow:auto;padding-right:6px;overscroll-behavior:contain}
.forms-main .forms-list{max-height:68vh;overflow:auto;padding-right:6px;overscroll-behavior:contain}
@media(max-width:900px){.production-phase .production-task{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.production-phase .production-task label:first-of-type{grid-column:1/-1}}
@media(max-width:680px){.production-phase>summary{align-items:flex-start;flex-direction:column}.production-phase .production-task{grid-template-columns:1fr}.production-phase .production-task>*{grid-column:1!important;width:100%}.attendance-roster .attendance-table{max-height:58vh}}

/*
 * Educator card system.
 *
 * Card identity is assigned once by the shared educator shell. Page-specific
 * classes may continue to control their internal grids, but may not establish
 * a competing surface, radius, padding, or responsive width.
 */
.boost-educator-app {
  --boost-card-radius: 20px;
  --boost-card-padding: 22px;
  --boost-card-gap: 16px;
  --boost-card-list-padding: 16px;
  --boost-card-summary-padding: 18px;
}

.boost-educator-app .boost-main,
.boost-educator-app .boost-main > *,
.boost-educator-app [data-boost-card] {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

.boost-educator-app [data-boost-card] {
  padding: var(--boost-card-padding);
  border: 1px solid var(--boost-line);
  border-radius: var(--boost-card-radius);
  color: var(--boost-text);
  background: linear-gradient(145deg, var(--boost-surface), var(--boost-surface-raised));
  box-shadow: var(--boost-shadow);
  overflow-wrap: anywhere;
}

.boost-educator-app [data-boost-card="action"] { --boost-card-padding: 22px; }
.boost-educator-app [data-boost-card="summary"] { --boost-card-padding: var(--boost-card-summary-padding); }
.boost-educator-app [data-boost-card="list"] { --boost-card-padding: var(--boost-card-list-padding); }
.boost-educator-app [data-boost-card="form"] { --boost-card-padding: 22px; }
.boost-educator-app [data-boost-card="warning"] {
  --boost-card-padding: 18px;
  border-color: color-mix(in srgb, var(--boost-gold) 58%, var(--boost-line));
  background: color-mix(in srgb, var(--boost-gold) 10%, var(--boost-surface));
}
.boost-educator-app [data-boost-card="production"] {
  --boost-card-padding: 24px;
  border-color: color-mix(in srgb, var(--boost-blue) 36%, var(--boost-line));
}
.boost-educator-app [data-boost-card="empty"] {
  --boost-card-padding: 24px;
  border-style: dashed;
  background: var(--boost-surface);
  box-shadow: none;
}

.boost-educator-app [data-boost-card] > :first-child { margin-top: 0; }
.boost-educator-app [data-boost-card] > :last-child { margin-bottom: 0; }
.boost-educator-app [data-boost-card] h2,
.boost-educator-app [data-boost-card] h3,
.boost-educator-app [data-boost-card] p,
.boost-educator-app [data-boost-card] a,
.boost-educator-app [data-boost-card] strong,
.boost-educator-app [data-boost-card] code { overflow-wrap: anywhere; }

.boost-educator-app .production-connectors {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
  min-width: 0;
  max-width: 100%;
}
.boost-educator-app .production-connectors > span,
.boost-educator-app .production-connectors > a {
  display: grid;
  align-content: start;
  gap: 4px;
  min-width: 0;
  padding: 12px;
}
.boost-educator-app .production-connectors strong,
.boost-educator-app .production-connectors small { display: block; }

.boost-educator-app .working-board-grid {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  overscroll-behavior-inline: contain;
}
.boost-educator-app .production-workspace {
  grid-template-columns: minmax(0, 1fr);
}
.boost-educator-app .production-workspace > * {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}
@media (max-width: 1100px) {
  .boost-educator-app .board-add {
    grid-template-columns: minmax(0, 1fr);
  }
  .boost-educator-app .board-task-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .boost-educator-app .board-task-form .boost-button {
    width: 100%;
  }
}

.boost-educator-app .classroom-planning-main{
  gap:12px;
  padding-top:18px;
}
.boost-educator-app .classroom-planning-main .workspace-hero{
  min-height:0;
  padding:22px 26px;
  border-radius:18px;
  box-shadow:0 12px 30px rgba(0,0,0,.14);
}
.boost-educator-app .classroom-planning-main .workspace-hero h1{
  max-width:none;
  margin:.18rem 0 .35rem;
  font-size:clamp(2rem,3.4vw,3.25rem);
}
.boost-educator-app .classroom-planning-main .workspace-hero .lede{
  max-width:720px;
  font-size:.94rem;
  line-height:1.45;
}
.boost-educator-app .classroom-planning-main .workspace-hero .boost-actions{
  margin-top:14px;
}
.boost-educator-app .classroom-planning-main .workspace-hero .boost-button{
  min-height:40px;
  padding:8px 15px;
  border-radius:10px;
}
.boost-educator-app .classroom-planning-tabs{
  position:sticky;
  top:8px;
  z-index:24;
  width:100%;
  padding:5px;
  border-radius:13px;
  background:color-mix(in srgb,var(--boost-surface-raised) 94%,transparent);
  box-shadow:0 9px 24px rgba(0,8,20,.12);
  backdrop-filter:blur(18px);
}
.boost-educator-app .classroom-planning-tabs a{
  min-height:38px;
  padding:7px 11px;
  border-radius:9px;
  font-size:.8rem;
}
.boost-educator-app .classroom-planning-main .workspace-section{
  gap:14px;
  padding:22px 24px;
  border-radius:15px;
  box-shadow:0 8px 22px rgba(0,7,18,.08);
}
.boost-educator-app .classroom-planning-main .section-heading h2{
  font-size:clamp(1.45rem,2.2vw,2rem);
}
.boost-educator-app.theme-light .classroom-planning-tabs{
  background:rgba(255,255,255,.94);
  box-shadow:0 9px 22px rgba(29,50,71,.09);
}
@media(max-width:900px){
  .boost-educator-app .classroom-planning-tabs{
    position:static;
    overflow-x:auto;
    flex-wrap:nowrap;
  }
  .boost-educator-app .classroom-planning-tabs a{
    flex:0 0 auto;
  }
}
.boost-educator-app .account-main h2,
.boost-educator-app .account-main strong,
.boost-educator-app .account-main code { overflow-wrap: anywhere; word-break: break-word; }

@media (min-width: 681px) and (max-width: 900px) {
  .boost-educator-app .boost-main,
  .boost-educator-app .educator-shell-context {
    width: auto;
    max-width: none;
    margin-right: 14px;
    margin-left: calc(var(--educator-rail) + 14px);
  }
  .boost-educator-app .production-summary,
  .boost-educator-app .help-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .boost-educator-app #trip-proposal-main .office-heading {
    align-items: flex-start;
    flex-direction: column;
  }
  .boost-educator-app #trip-proposal-main .office-heading > .boost-button {
    min-width: 190px;
    white-space: nowrap;
  }
}

@media (max-width: 760px) {
  .boost-educator-app {
    --boost-card-radius: 16px;
    --boost-card-padding: 16px;
    --boost-card-list-padding: 14px;
    --boost-card-summary-padding: 14px;
  }
  .boost-educator-app [data-boost-card="action"],
  .boost-educator-app [data-boost-card="form"],
  .boost-educator-app [data-boost-card="production"],
  .boost-educator-app [data-boost-card="empty"] { --boost-card-padding: 16px; }
  .boost-educator-app .production-connectors { grid-template-columns: minmax(0, 1fr); }
  .boost-educator-app .production-connectors > span,
  .boost-educator-app .production-connectors > a { padding: 10px 12px; }
  .boost-educator-app .production-connectors > span {
    grid-template-columns: minmax(94px, .55fr) minmax(0, 1fr);
    align-items: baseline;
  }
  .boost-educator-app .board-task-form { grid-template-columns: minmax(0, 1fr); }
}
.travel-bid-builder{display:grid;gap:1rem}.travel-bid-form{display:grid;gap:.8rem}.travel-bid-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;padding:1rem}.travel-bid-fields label{min-width:0}.travel-bid-fields textarea{min-height:5.5rem;resize:vertical}.bid-comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));gap:1rem}.bid-comparison-grid>.office-card{margin:0;min-width:0}@media(max-width:820px){.travel-bid-fields{grid-template-columns:1fr}}@media(max-width:680px){.travel-bid-fields{padding:.75rem}.travel-bid-builder .production-summary dl{grid-template-columns:1fr 1fr}}

/* Public product architecture: explain choices before feature depth. */
.boost-product-section,.boost-onboarding-section{width:100%;margin:34px 0;padding:clamp(28px,5vw,56px);border:1px solid rgba(255,255,255,.12);border-radius:28px;background:linear-gradient(145deg,rgba(19,32,48,.96),rgba(11,20,31,.98));box-sizing:border-box}
.boost-product-heading{max-width:780px;margin-bottom:28px}.boost-product-heading h2,.boost-onboarding-section h2{margin:.35rem 0 .7rem;font-size:clamp(2rem,4vw,3.4rem);line-height:1.02}.boost-product-heading>p:last-child,.boost-onboarding-section>div>p:last-child{max-width:760px;color:var(--boost-muted);font-size:1.08rem;line-height:1.65}
.boost-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.boost-product-card{display:flex;flex-direction:column;min-width:0;padding:26px;border:1px solid rgba(255,255,255,.14);border-radius:20px;background:rgba(255,255,255,.045)}.boost-product-card>span{align-self:flex-start;padding:5px 9px;border-radius:999px;background:rgba(246,195,68,.13);color:var(--boost-gold);font-size:.73rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.boost-product-card h3{margin:18px 0 10px;font-size:1.55rem}.boost-product-card p{flex:1;margin:0 0 20px;color:var(--boost-muted);line-height:1.6}.boost-product-card strong{font-size:.92rem;line-height:1.45}.boost-product-card.educator{border-color:rgba(246,195,68,.48);background:linear-gradient(145deg,rgba(246,195,68,.1),rgba(255,255,255,.04))}.boost-product-card.office{border-color:rgba(70,154,211,.42)}
.boost-problem-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 26px}.boost-problem-grid article{padding:22px;border-radius:18px;background:rgba(255,255,255,.04)}.boost-problem-grid span,.boost-adoption-grid article>span{color:var(--boost-gold);font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.boost-problem-grid h3{margin:9px 0 7px;font-size:1.2rem}.boost-problem-grid p{margin:0;color:var(--boost-muted);line-height:1.55}
.boost-configurations{margin-top:22px;padding:24px;border-radius:20px;background:rgba(255,255,255,.035)}.boost-configurations h3{margin:0 0 16px}.boost-configurations ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;counter-reset:configuration}.boost-configurations li{display:grid;grid-template-columns:minmax(130px,.65fr) minmax(0,1fr);gap:12px;padding:14px 16px;border-left:3px solid var(--boost-gold);background:rgba(0,0,0,.15)}.boost-configurations span{color:var(--boost-muted);line-height:1.4}.boost-product-actions{margin-top:24px}
.boost-adoption-paths{margin-top:22px;padding:26px;border-radius:20px;background:linear-gradient(135deg,rgba(13,79,121,.34),rgba(255,255,255,.035))}.boost-adoption-paths>div:first-child{max-width:760px}.boost-adoption-paths h3{margin:.3rem 0 18px;font-size:clamp(1.45rem,3vw,2.2rem)}.boost-adoption-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.boost-adoption-grid article{padding:20px;border:1px solid rgba(255,255,255,.1);border-radius:15px;background:rgba(0,0,0,.14)}.boost-adoption-grid h4{margin:9px 0 7px;font-size:1.05rem}.boost-adoption-grid p{margin:0;color:var(--boost-muted);line-height:1.55}
.boost-product-comparison{margin-top:26px;padding:26px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(0,0,0,.18)}.boost-comparison-heading{max-width:780px;margin-bottom:20px}.boost-comparison-heading h3{margin:.3rem 0 .5rem;font-size:clamp(1.5rem,3vw,2.2rem)}.boost-comparison-heading>p:last-child{margin:0;color:var(--boost-muted);line-height:1.55}.boost-comparison-table{display:grid;gap:1px;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.12)}.boost-comparison-row{display:grid;grid-template-columns:minmax(150px,.78fr) repeat(3,minmax(0,1fr));background:#111f2d}.boost-comparison-row>*{min-width:0;padding:14px 15px;line-height:1.4;overflow-wrap:anywhere}.boost-comparison-row>*+*{border-left:1px solid rgba(255,255,255,.1)}.boost-comparison-row.heading{background:#1b3043}.boost-comparison-row.heading strong{color:var(--boost-gold);font-size:.84rem;letter-spacing:.06em;text-transform:uppercase}.boost-comparison-row>strong[role="rowheader"]{font-size:.9rem}.boost-comparison-row>span{color:var(--boost-muted);font-size:.9rem}.boost-comparison-row .yes{color:#e8f5dd}.boost-comparison-row .no{color:#aeb9c3}
.boost-onboarding-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,64px);align-items:start}.boost-onboarding-steps{display:grid;gap:12px;margin:0;padding:0;list-style:none}.boost-onboarding-steps li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;padding:16px;border-radius:16px;background:rgba(255,255,255,.045)}.boost-onboarding-steps li>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--boost-gold);color:#101820;font-weight:900}.boost-onboarding-steps strong{display:block;margin:2px 0 5px}.boost-onboarding-steps p{margin:0;color:var(--boost-muted);line-height:1.45}
@media(max-width:900px){.boost-product-grid{grid-template-columns:1fr}.boost-onboarding-section{grid-template-columns:1fr}.boost-configurations ol{grid-template-columns:1fr}.boost-comparison-table{display:block;overflow:visible;border:0;background:transparent}.boost-comparison-row{grid-template-columns:1fr;margin-bottom:12px;border:1px solid rgba(255,255,255,.12);border-radius:12px;overflow:hidden}.boost-comparison-row.heading{display:none}.boost-comparison-row>*+*{border-left:0;border-top:1px solid rgba(255,255,255,.08)}.boost-comparison-row>span::before{display:block;margin-bottom:3px;color:var(--boost-gold);font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.boost-comparison-row>span:nth-child(2)::before{content:"Classroom"}.boost-comparison-row>span:nth-child(3)::before{content:"Educator"}.boost-comparison-row>span:nth-child(4)::before{content:"Booster Office"}}
@media(max-width:600px){.boost-product-section,.boost-onboarding-section{width:min(100% - 24px,1180px);padding:24px 18px;border-radius:20px}.boost-configurations,.boost-product-comparison{padding:16px}.boost-configurations li{grid-template-columns:1fr;gap:4px}.boost-product-card{padding:20px}.boost-product-actions .boost-button{width:100%;text-align:center}}
@media(max-width:900px){.boost-adoption-grid{grid-template-columns:1fr}}
@media(max-width:600px){.boost-product-section,.boost-onboarding-section{width:100%}.boost-problem-grid{grid-template-columns:1fr}.boost-adoption-paths{padding:16px}}
.boost-demo-card.classroom-demo{border-color:rgba(246,195,68,.55);background:linear-gradient(145deg,rgba(246,195,68,.11),rgba(18,41,55,.96))}.boost-demo-classroom-mark{display:grid;place-items:center;width:112px;height:112px;margin:4px auto;border:2px solid rgba(246,195,68,.65);border-radius:26px;background:#123f35;color:var(--boost-gold);font:900 3.4rem/1 Georgia,serif}.boost-demo-card.classroom-demo .eyebrow{color:var(--boost-gold)}
.boost-demo-card.combined-demo .boost-demo-classroom-mark{font-size:2.35rem;letter-spacing:-.09em}
.boost-demo-card.classroom-demo{
  border-color:color-mix(in srgb,var(--demo-accent) 62%,transparent);
  background:linear-gradient(145deg,color-mix(in srgb,var(--demo-primary) 22%,var(--boost-surface)),var(--boost-surface-raised));
}
.boost-demo-card.classroom-demo .eyebrow,
.boost-demo-card.classroom-demo .boost-demo-school{
  color:var(--demo-accent);
}
.boost-demo-school-logo{
  width:112px !important;
  height:112px !important;
  margin:4px auto;
  border:3px solid color-mix(in srgb,var(--demo-accent) 74%,white);
  border-radius:26px !important;
  background:var(--demo-primary) !important;
  object-fit:contain !important;
  box-shadow:0 8px 24px color-mix(in srgb,var(--demo-primary) 32%,transparent);
}
@media(max-width:520px){
  .boost-demo-school-logo{
    width:68px !important;
    height:68px !important;
    border-radius:17px !important;
  }
}
.class-standards-picker{grid-column:1/-1}.class-standards-picker>p{margin:.35rem 0 1rem;color:var(--muted,#bac3d0)}.class-standards-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.class-standards-columns section{padding:1rem;border:1px solid rgba(255,255,255,.14);border-radius:1rem;background:rgba(255,255,255,.035)}.class-standards-columns h3{margin:0 0 .75rem}.class-standards-columns label{display:grid;grid-template-columns:auto 1fr;gap:.65rem;align-items:start;margin:.65rem 0}.class-standards-columns label span{display:grid;gap:.25rem}.class-standards-columns label strong{display:block}.class-standards-columns label a{width:max-content}.class-plan-standards{margin:0 0 1rem;padding:1rem;border-left:4px solid #6fd5b3;background:rgba(111,213,179,.08);border-radius:.75rem}.class-plan-standards h3{margin:0 0 .5rem}.class-plan-standards ul{margin:0;padding-left:1.2rem}.class-plan-standards li{margin:.35rem 0;overflow-wrap:anywhere}@media(max-width:760px){.class-standards-columns{grid-template-columns:1fr}}
.standards-plan-overview{margin-bottom:1rem}.standards-use-list{display:grid;gap:.55rem;padding:0;list-style:none}.standards-use-list li{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.standards-use-list span{overflow-wrap:anywhere}.standards-use-list strong{white-space:nowrap}

/* Inventory is a working register: scan first, act second, inspect media on demand. */
.inventory-main .inventory-list{max-height:none;overflow:visible;padding-right:0;gap:8px}
.inventory-main .inventory-card{position:relative;display:grid;grid-template-columns:112px minmax(220px,1.15fr) minmax(320px,1fr);grid-template-areas:"photo head facts" "photo history facts" "select actions actions";gap:8px 18px;align-items:center;padding:14px 16px}
.inventory-main .inventory-card:not(:has(.inventory-card-photo)){grid-template-columns:minmax(250px,1.15fr) minmax(320px,1fr);grid-template-areas:"head facts" "history facts" "select actions"}
.inventory-main .inventory-card-photo{grid-area:photo;width:112px;height:84px;margin:0;border:1px solid var(--boost-line);border-radius:10px;object-fit:contain;background:var(--boost-bg)}
.inventory-main .inventory-card-head{grid-area:head;align-items:center;min-width:0;gap:12px}
.inventory-main .inventory-card h3{margin:4px 0 2px;font-size:1.08rem;line-height:1.2}
.inventory-main .inventory-card p{font-size:.84rem;line-height:1.35}
.inventory-main .inventory-identifiers{justify-content:flex-start;gap:6px}
.inventory-main .inventory-identifiers span{padding:5px 8px;font-size:.75rem}
.inventory-main .inventory-facts{grid-area:facts;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.inventory-main .inventory-facts div{padding:8px 10px;background:var(--boost-surface-raised)}
.inventory-main .inventory-facts dt{font-size:.67rem}
.inventory-main .inventory-facts dd{margin-top:2px;font-size:.88rem;line-height:1.25}
.inventory-main .inventory-history{grid-area:history;font-size:.76rem}
.inventory-main .inventory-select{grid-area:select;min-height:36px;font-size:.78rem}
.inventory-main .inventory-select input[type=checkbox]{width:18px;height:18px;flex-basis:18px}
.inventory-main .inventory-card>.boost-actions{grid-area:actions;justify-content:flex-end;gap:7px;margin:0}
.inventory-main .inventory-card>.boost-actions .boost-button{min-height:38px;padding:7px 12px;border-radius:9px;font-size:.82rem}
.inventory-main .inventory-bulk-toolbar[hidden]{display:none}
@media(max-width:1100px){.inventory-main .inventory-card,.inventory-main .inventory-card:not(:has(.inventory-card-photo)){grid-template-columns:96px minmax(0,1fr);grid-template-areas:"photo head" "facts facts" "history history" "select actions"}.inventory-main .inventory-card:not(:has(.inventory-card-photo)){grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "facts" "history" "select" "actions"}.inventory-main .inventory-card-photo{width:96px;height:72px}.inventory-main .inventory-card>.boost-actions{justify-content:flex-start}}
@media(max-width:680px){.inventory-main .inventory-card,.inventory-main .inventory-card:not(:has(.inventory-card-photo)){grid-template-columns:72px minmax(0,1fr);grid-template-areas:"photo head" "facts facts" "history history" "select select" "actions actions"}.inventory-main .inventory-card:not(:has(.inventory-card-photo)){grid-template-columns:1fr;grid-template-areas:"head" "facts" "history" "select" "actions"}.inventory-main .inventory-card-photo{width:72px;height:64px}.inventory-main .inventory-card-head{align-items:flex-start;flex-direction:column}.inventory-main .inventory-facts{grid-template-columns:1fr}.inventory-main .inventory-card>.boost-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.inventory-main .inventory-card>.boost-actions .boost-button{width:100%}}
.inventory-main .inventory-record-photo-link{grid-area:photo;display:block;width:max-content}.inventory-main .inventory-record-photo-link .inventory-card-photo{grid-area:auto}.inventory-record-link{color:inherit;text-decoration:none}.inventory-record-link:hover,.inventory-record-link:focus-visible{color:var(--boost-gold);text-decoration:underline}.inventory-main .inventory-open-record{order:-1}

.inventory-asset-record-main{display:grid;gap:18px;max-width:1240px;margin-inline:auto}.inventory-asset-record-heading{margin-bottom:0}.inventory-asset-record-heading h1{overflow-wrap:anywhere}.inventory-asset-record-heading p:last-child{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.inventory-asset-record-layout{display:grid;grid-template-columns:minmax(260px,.34fr) minmax(0,.66fr);gap:18px;align-items:start}.inventory-asset-record-summary{display:grid;gap:18px;position:sticky;top:16px}.inventory-asset-record-summary>a{display:block}.inventory-asset-record-summary img{display:block;width:100%;max-height:260px;border-radius:12px;object-fit:contain;background:var(--boost-bg)}.inventory-asset-record-summary dl{display:grid;gap:1px;margin:0;border:1px solid var(--boost-line);border-radius:12px;overflow:hidden}.inventory-asset-record-summary dl div{padding:10px 12px;background:var(--boost-surface-raised)}.inventory-asset-record-summary dt{color:var(--boost-muted);font-size:.7rem;font-weight:800;text-transform:uppercase}.inventory-asset-record-summary dd{margin:3px 0 0}.inventory-asset-record-history{border-top:1px solid var(--boost-line);padding-top:16px}.inventory-asset-record-history h2{margin:0 0 10px;font-family:inherit;font-size:1.05rem;letter-spacing:0}.inventory-asset-record-history p{margin:7px 0;font-size:.88rem}.inventory-asset-record-editor .inventory-asset-section-heading h2{font-family:inherit;font-size:1.35rem;letter-spacing:0}.inventory-asset-record-form{display:grid;gap:18px}.inventory-asset-record-form>.inventory-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.inventory-asset-record-form>label{display:grid;gap:7px;font-weight:800}.inventory-asset-record-save{display:flex;justify-content:flex-end;border-top:1px solid var(--boost-line);padding-top:16px}.inventory-asset-record-status{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center}.inventory-asset-record-status h2{margin:0 0 5px;font-family:inherit;font-size:1.2rem;letter-spacing:0}.inventory-asset-record-status p{margin:0}.inventory-delete-control{grid-column:1/-1;border-top:1px solid var(--boost-line);padding-top:14px}.inventory-delete-control>summary{cursor:pointer;font-weight:800}.inventory-delete-control form{display:flex;align-items:end;flex-wrap:wrap;gap:10px;margin-top:12px}.inventory-delete-control label{display:grid;gap:5px}.boost-button.danger{border-color:#d76b63;background:#6f2825;color:#fff}@media(max-width:900px){.inventory-asset-record-layout{grid-template-columns:1fr}.inventory-asset-record-summary{position:static}.inventory-asset-record-form>.inventory-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.inventory-asset-record-form>.inventory-form-grid{grid-template-columns:1fr}.inventory-asset-record-status{grid-template-columns:1fr}.inventory-asset-record-status>.boost-actions{justify-content:flex-start}.inventory-asset-record-save .boost-button{width:100%}}
.boost-main.inventory-asset-new-main,.boost-main.inventory-asset-record-main{max-width:none}
.educator-add-tools>summary{font-size:0}.educator-add-tools>summary::after{content:"Customize sidebar";font-size:.78rem}.educator-tools-explanation{margin:0 0 7px;padding:4px 6px 10px;border-bottom:1px solid var(--boost-line);color:var(--boost-muted);font-size:.78rem;line-height:1.4}
.educator-tools-status{margin:5px 0 0;padding:8px 6px;color:var(--boost-text);font-size:.76rem;font-weight:750;line-height:1.35}.educator-tools-done{min-height:40px;margin-top:2px;border:0;border-radius:9px;background:var(--boost-gold);color:#101722;font:inherit;font-size:.82rem;font-weight:850;cursor:pointer}.educator-tool-list a.educator-tool-confirmed{outline:3px solid color-mix(in srgb,var(--boost-gold) 75%,transparent);outline-offset:2px}
.educator-add-tools{display:none!important}
.boost-educator-app .classes-location-card{gap:16px;padding:18px}.boost-educator-app .classes-location-card>header{align-items:center;padding-bottom:12px;border-bottom:1px solid var(--boost-line)}.boost-educator-app .classes-location-card>header h2{margin:2px 0;font-family:inherit;font-size:1.3rem;letter-spacing:0}.boost-educator-app .class-card{gap:12px;padding:15px 16px}.boost-educator-app .class-card h3{margin:4px 0 2px;font-size:1.12rem}.boost-educator-app .class-card-facts{gap:6px}.boost-educator-app .class-card-facts span{padding:6px 9px;font-size:.79rem}.boost-educator-app .class-card nav{margin-top:auto}.boost-educator-app .class-card nav a{min-height:40px;padding:8px 12px}.boost-educator-app .class-card details{padding-top:9px}.boost-educator-app .class-card summary{min-height:36px;display:flex;align-items:center;color:var(--boost-muted);font-size:.82rem}.boost-educator-app .classes-location-card .classes-grid{align-items:stretch}@media(max-width:720px){.boost-educator-app .classes-location-card{padding:14px}}

/* Classroom theme parity: every responsive workspace uses the same readable token set. */
.boost-app{
  --boost-muted:var(--boost-text-muted);
  --boost-border:var(--boost-line);
  --boost-card:var(--boost-surface);
  --boost-card-raised:var(--boost-surface-raised);
}
.boost-app .workspace-section,
.boost-app .office-card,
.boost-app .boost-card,
.boost-app .classes-location-card,
.boost-app .class-card{color:var(--boost-text)}
.boost-app .section-heading>p:not(.eyebrow),
.boost-app .workspace-section>p,
.boost-app .office-card>p,
.boost-app .boost-card>p,
.boost-app .class-card>p{color:var(--boost-text-muted)}
.boost-app .section-heading .eyebrow,
.boost-app .workspace-section>.eyebrow,
.boost-app .office-card>.eyebrow{color:var(--boost-gold)}
.boost-app.theme-light .section-heading p:not(.eyebrow){
  color:var(--boost-text-muted)!important;
}

/* Selected navigation remains legible without turning into a heavy solid button. */
.boost-educator-app .educator-tool-list a.active{
  border-color:color-mix(in srgb,var(--program-accent,var(--boost-gold)) 68%,var(--boost-line))!important;
  background:color-mix(in srgb,var(--program-color,var(--boost-gold)) 16%,var(--boost-surface-soft))!important;
  color:var(--boost-text)!important;
}
.boost-educator-app .educator-tool-list a.active *{color:inherit!important}

/* Intentional inverse teaching board: isolate it from the light theme. */
.boost-app .classroom-day-board{
  --boost-text:#f5f9fd;
  --boost-text-muted:#b6cbe0;
  --boost-muted:#b6cbe0;
  color:#f5f9fd;
}
.boost-app .classroom-day-board h1,
.boost-app .classroom-day-board h2,
.boost-app .classroom-day-board h3,
.boost-app .classroom-day-board strong{color:#f5f9fd}
.boost-app .classroom-day-board .classroom-day-intro>p:not(.eyebrow){color:#c3d2dc}

/* Location headers and standards metrics use the active theme rather than legacy navy. */
.boost-educator-app .classes-location-card>header{
  background:transparent;
  color:var(--boost-text);
}
.boost-educator-app .classes-location-card>header *{color:inherit}
.boost-app .standards-plan-overview .classroom-day-facts{
  color:var(--boost-text);
}
.boost-app .standards-plan-overview .classroom-day-facts div{
  border-color:var(--boost-line);
  background:var(--boost-surface-raised);
}
.boost-app .standards-plan-overview .classroom-day-facts dt,
.boost-app .standards-plan-overview .classroom-day-facts small{color:var(--boost-text-muted)}
.boost-app .standards-plan-overview .classroom-day-facts dd{color:var(--boost-text)}

/* Email is a working page, not a billboard. Keep its hero within the app rhythm. */
#communications-main .workspace-hero{min-height:0;padding-block:clamp(28px,4vw,52px)}
#communications-main .workspace-hero .boost-hero-copy{max-width:820px}
#communications-main .workspace-hero h1{
  max-width:12ch;
  font-size:clamp(2.5rem,6vw,5.25rem);
  line-height:.96;
  overflow-wrap:normal;
}
#communications-main .workspace-hero .lede{max-width:720px}
#communications-main .communications-draft-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));
  align-items:stretch;
}
#communications-main .communications-draft-card{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-content:start;
  gap:12px;
  min-width:0;
  overflow:hidden;
}
#communications-main .communications-draft-card>*{
  min-width:0;
  max-width:100%;
}
#communications-main .communications-draft-card>span{
  justify-self:start;
  margin:0;
}
#communications-main .communications-draft-card h3,
#communications-main .communications-draft-card p,
#communications-main .communications-draft-card small,
#communications-main .communications-draft-card dt,
#communications-main .communications-draft-card dd{
  overflow-wrap:anywhere;
  word-break:normal;
}
#communications-main .communications-draft-card .reports-list{margin:0}
#communications-main .communications-draft-card .boost-button{
  justify-self:start;
  max-width:100%;
  white-space:normal;
}
@media(max-width:680px){
  #communications-main .workspace-hero h1{max-width:none;font-size:clamp(2.25rem,13vw,3.7rem)}
  #communications-main .workspace-hero .boost-actions{display:grid;grid-template-columns:1fr}
  #communications-main .workspace-hero .boost-button{width:100%;text-align:center}
  #communications-main .communications-draft-grid{grid-template-columns:1fr}
  #communications-main .communications-draft-card .boost-button{justify-self:stretch;width:100%;text-align:center}
}

/* Planning and review is an operating workspace, with compact scanable structure. */
.classroom-planning-main{display:grid;gap:18px}
.classroom-planning-main .workspace-hero{min-height:0;padding-block:clamp(28px,4vw,52px)}
.classroom-planning-main .workspace-hero h1{max-width:15ch;font-size:clamp(2.7rem,5.4vw,5.25rem)}
.classroom-planning-tabs{
  position:sticky;
  z-index:5;
  top:10px;
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  width:max-content;
  max-width:100%;
  padding:7px;
  border:1px solid var(--boost-line);
  border-radius:14px;
  background:color-mix(in srgb,var(--boost-surface) 92%,transparent);
  box-shadow:0 12px 30px rgba(0,0,0,.12);
  backdrop-filter:blur(18px);
}
.classroom-planning-tabs a{
  padding:9px 12px;
  border-radius:9px;
  color:var(--boost-text-muted);
  font-size:.84rem;
  font-weight:800;
  text-decoration:none;
}
.classroom-planning-tabs a:hover,
.classroom-planning-tabs a:focus-visible{background:var(--boost-surface-soft);color:var(--boost-text)}
.classroom-planning-main .workspace-section{display:grid;gap:20px;scroll-margin-top:90px}
.classroom-leadership-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.classroom-leadership-kpis article{
  display:grid;
  gap:5px;
  padding:16px;
  border:1px solid var(--boost-line);
  border-radius:14px;
  background:var(--boost-surface-raised);
}
.classroom-leadership-kpis strong{font-size:clamp(1.65rem,3vw,2.35rem);line-height:1}
.classroom-leadership-kpis span{color:var(--boost-text-muted);font-size:.78rem;font-weight:750}
.classroom-planning-list{display:grid;gap:8px}
.classroom-planning-list>article{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:5px 18px;
  align-items:center;
  padding:14px 16px;
  border:1px solid var(--boost-line);
  border-radius:12px;
  background:var(--boost-surface-raised);
}
.classroom-planning-list>article>div{display:grid;gap:3px}
.classroom-planning-list span,
.classroom-planning-list small{color:var(--boost-text-muted);font-size:.8rem}
.classroom-planning-list>article>p{grid-column:1/-1;margin:3px 0 0;color:var(--boost-text-muted)}
.classroom-plan-table{display:grid;overflow:hidden;border:1px solid var(--boost-line);border-radius:14px}
.classroom-plan-row{
  display:grid;
  grid-template-columns:80px minmax(150px,1fr) minmax(220px,1.5fr) minmax(105px,.65fr) minmax(105px,.65fr);
  gap:14px;
  align-items:center;
  padding:14px 16px;
  background:var(--boost-surface-raised);
}
.classroom-plan-row+.classroom-plan-row{border-top:1px solid var(--boost-line)}
.classroom-plan-row>span{min-width:0;overflow-wrap:anywhere}
.classroom-plan-row>span strong,
.classroom-plan-row>span small{display:block}
.classroom-plan-row>span small{margin-top:3px;color:var(--boost-text-muted)}
.classroom-plan-head{background:var(--boost-surface-soft);color:var(--boost-text-muted);font-size:.7rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.classroom-plan-row>details{grid-column:1/-1;border-top:1px solid var(--boost-line);padding-top:10px}
.classroom-plan-row>details>summary{cursor:pointer;color:var(--boost-gold);font-weight:800}
.classroom-review-forms,
.classroom-planning-form form,
.curriculum-lesson-list form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.section-copy-tool{margin-top:14px;padding:16px;border:1px solid var(--boost-line);border-radius:14px;background:var(--boost-surface-raised)}
.section-copy-tool>summary{cursor:pointer;color:var(--boost-text);font-weight:850}
.section-copy-tool form{grid-template-columns:1fr}
.section-copy-choices{display:grid;gap:12px;margin:0;padding:16px;border:1px solid var(--boost-line);border-radius:12px}
.section-copy-choices>p{margin:0;color:var(--boost-text-muted)}
.section-copy-choices>div{display:flex;flex-wrap:wrap;gap:8px 14px;padding-top:10px;border-top:1px solid var(--boost-line)}
.section-copy-choices>div>strong{flex:0 0 100%}
.section-copy-choices label{display:flex;align-items:center;gap:7px;font-weight:700}
.lesson-bank-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lesson-bank-actions>details{padding:16px;border:1px solid var(--boost-line);border-radius:14px;background:var(--boost-surface-raised)}
.lesson-bank-actions>details>summary{cursor:pointer;color:var(--boost-text);font-weight:850}
.lesson-bank-actions form{display:grid;gap:12px;margin-top:14px}
.lesson-bank-grid>.boost-card{align-self:start}
@media(max-width:720px){.lesson-bank-actions{grid-template-columns:1fr}}
.template-remove-tool form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.template-remove-tool form .boost-button{grid-column:1/-1;justify-self:start}@media(max-width:680px){.template-remove-tool form{grid-template-columns:1fr}.template-remove-tool form .boost-button{width:100%}}
.classroom-workspace-page{display:grid;gap:18px;max-width:none}.classroom-workspace-page>.workspace-hero{min-height:0;padding:clamp(22px,3vw,34px);border-radius:18px}.classroom-workspace-page>.workspace-hero .boost-hero-copy{max-width:1000px}.classroom-workspace-page>.workspace-hero h1{max-width:none;margin:.18rem 0 .5rem;font-size:clamp(2.35rem,4.8vw,4.7rem);line-height:.96}.classroom-workspace-page>.workspace-hero .lede{max-width:820px;font-size:1rem;line-height:1.5}.teaching-year-main{display:grid;gap:18px;max-width:none}.teaching-year-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:14px}.teaching-year-list>.boost-card{display:grid;align-content:start;gap:12px}.teaching-year-list>.boost-card.is-current{grid-column:1/-1}.teaching-year-list h3,.teaching-year-list p{margin:0}.teaching-year-actions{display:flex;flex-wrap:wrap;gap:8px}.teaching-year-actions form{margin:0}.teaching-year-list details{padding-top:10px;border-top:1px solid var(--boost-line)}.teaching-year-list summary{cursor:pointer;color:var(--boost-text);font-weight:800}.teaching-year-list details form{display:grid;gap:12px;margin-top:12px}.teaching-year-create{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.teaching-year-create>label,.teaching-year-create>.form-pair,.teaching-year-create>.boost-button{min-width:0}.teaching-year-create>.boost-button{grid-column:1/-1;justify-self:start}@media(max-width:820px){.teaching-year-list,.teaching-year-create{grid-template-columns:1fr}.teaching-year-create>.boost-button{width:100%}}
.classroom-review-forms form{display:grid;gap:10px}
.classroom-planning-form,
.curriculum-lesson-list details{border-top:1px solid var(--boost-line);padding-top:12px}
.classroom-planning-form>summary,
.curriculum-lesson-list summary{cursor:pointer;font-weight:800}
.classroom-boundary{border-left:4px solid var(--boost-gold)}
.lesson-layout-editor{margin:1.25rem 0;padding:clamp(1rem,2vw,1.5rem);border:1px solid color-mix(in srgb,var(--boost-gold) 32%,var(--border));border-radius:22px;background:color-mix(in srgb,var(--surface) 94%,var(--boost-gold) 6%)}
.lesson-layout-editor .section-heading{align-items:flex-start;margin-bottom:1rem}.lesson-layout-editor .section-heading h3{margin:.1rem 0;font-size:clamp(1.2rem,2vw,1.65rem)}
.lesson-layout-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.lesson-layout-sections>label,.lesson-layout-sections>fieldset,.lesson-layout-list-note{display:flex;flex-direction:column;gap:.45rem;margin:0;padding:1rem;border:1px solid var(--border);border-radius:16px;background:var(--surface)}
.lesson-layout-sections textarea{width:100%;min-height:8rem;resize:vertical}.lesson-layout-list-note span{color:var(--muted)}
.lesson-list-choice{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:.65rem!important;padding:.35rem 0!important;border:0!important;background:transparent!important}.lesson-list-choice input{width:auto;margin-top:.25rem}
.lesson-layout-gallery .boost-card{display:flex;flex-direction:column;gap:.75rem}.lesson-layout-outline{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}.lesson-layout-outline li{display:flex;justify-content:space-between;gap:1rem;padding:.7rem .8rem;border-radius:12px;background:color-mix(in srgb,var(--surface) 86%,var(--text) 4%)}.lesson-layout-outline small{color:var(--muted);text-align:right}
.lesson-layout-builder>summary{font-size:1.05rem;font-weight:800}.lesson-layout-builder form{margin-top:1rem}.lesson-layout-builder-head{display:flex;justify-content:space-between;gap:1rem;align-items:end;margin:1rem 0 .7rem}.lesson-layout-builder-head span{color:var(--muted)}
.lesson-layout-builder-rows{display:grid;gap:.65rem;margin-bottom:1rem}.lesson-layout-builder-rows fieldset{display:grid;grid-template-columns:auto minmax(12rem,2fr) minmax(8rem,1fr) minmax(10rem,1.25fr) auto;gap:.75rem;align-items:end;margin:0;padding:.8rem;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.lesson-section-number{display:grid;place-items:center;width:2rem;height:2rem;align-self:center;border-radius:999px;background:color-mix(in srgb,var(--boost-gold) 20%,var(--surface));font-weight:850}.lesson-section-title{display:flex!important;flex-direction:row!important;align-items:center;gap:.45rem!important;padding-bottom:.7rem}.lesson-section-title input,.lesson-layout-default input{width:auto}.lesson-layout-default{display:flex!important;flex-direction:row!important;align-items:center;gap:.55rem!important}
@media(max-width:900px){.lesson-layout-sections{grid-template-columns:1fr}.lesson-layout-builder-rows fieldset{grid-template-columns:auto 1fr 1fr}.lesson-layout-builder-rows fieldset label:nth-of-type(3){grid-column:2/4}.lesson-section-title{grid-column:2/4}}
@media(max-width:620px){.lesson-layout-builder-rows fieldset{grid-template-columns:auto 1fr}.lesson-layout-builder-rows fieldset label{grid-column:2}.lesson-layout-builder-head{align-items:flex-start;flex-direction:column}.lesson-layout-outline li{align-items:flex-start;flex-direction:column}.lesson-layout-outline small{text-align:left}}
.lesson-template-gallery{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}.lesson-template-gallery .boost-card{display:flex;min-width:0;flex-direction:column;gap:.7rem}.lesson-template-gallery .boost-card>small{color:var(--muted)}.lesson-template-gallery ul{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}.lesson-template-gallery li{display:grid;gap:.15rem;padding:.65rem .75rem;border-radius:12px;background:color-mix(in srgb,var(--surface) 88%,var(--text) 3%)}.lesson-template-gallery li span{color:var(--muted);font-size:.86rem}.lesson-template-gallery form{margin-top:auto}.template-favorite-form{margin-top:.35rem!important}.template-create-options{display:grid;gap:.8rem;margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--border)}.lesson-template-builder>summary{font-weight:850}.lesson-template-builder .lesson-layout-sections{margin:1rem 0}
.lesson-template-gallery .boost-card li span{display:block;margin:0;padding:0;border-radius:0;color:var(--muted);background:transparent;font-size:.86rem;font-weight:500;line-height:1.45;text-transform:none;letter-spacing:normal}
.lesson-template-gallery .compact-form{display:grid;grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:.75rem}.lesson-template-gallery .compact-form .boost-button{width:auto;min-height:46px;white-space:nowrap}.lesson-template-gallery .template-favorite-form .boost-button{width:auto}@media(max-width:700px){.lesson-template-gallery .compact-form{grid-template-columns:1fr}.lesson-template-gallery .compact-form .boost-button{width:100%}}
.classroom-boundary>p{margin:0}
@media(max-width:900px){
  .classroom-leadership-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .classroom-plan-head{display:none}
  .classroom-plan-row{grid-template-columns:90px minmax(0,1fr)}
  .classroom-plan-row>span:nth-child(n+3){grid-column:2}
}
@media(max-width:620px){
  .classroom-planning-tabs{position:static;width:100%}
  .classroom-planning-tabs a{flex:1 1 140px;text-align:center}
  .classroom-leadership-kpis{grid-template-columns:1fr 1fr}
  .classroom-planning-list>article,
  .classroom-plan-row,
  .classroom-review-forms,
  .classroom-planning-form form,
  .curriculum-lesson-list form{grid-template-columns:1fr}
  .classroom-planning-list>article>* ,
  .classroom-plan-row>span:nth-child(n+3){grid-column:1}
}

/* Classroom desktop shell: a real navigation sidebar, not a compressed icon rail. */
@media(min-width:901px){
  .boost-educator-app{--educator-rail:224px}
  .boost-educator-sidebar{padding:16px 14px}
  .educator-sidebar-brand{
    place-items:center;
    min-height:118px;
    margin:0 4px 14px;
  }
  .educator-sidebar-brand img{width:184px;height:108px}
  .educator-sidebar-label{padding:8px 12px 6px}
  .educator-tool-list{gap:3px}
  .educator-tool-list a,
  .educator-sidebar-bottom a,
  .educator-sidebar-bottom button{
    grid-template-columns:30px minmax(0,1fr);
    place-items:center start;
    gap:10px;
    min-height:46px;
    padding:9px 11px;
    border-radius:11px;
    text-align:left;
  }
  .educator-tool-list a>span,
  .educator-sidebar-bottom a>span{
    display:grid;
    place-items:center;
    width:30px;
    font-size:1.02rem;
  }
  .educator-tool-list strong,
  .educator-sidebar-bottom strong,
  .educator-sidebar-bottom button strong{
    font-size:.86rem;
    line-height:1.2;
  }
  .educator-sidebar-bottom{gap:2px;padding-top:12px}
  .educator-sidebar-bottom .boost-theme-toggle{grid-template-columns:30px minmax(0,1fr);min-height:44px}
}
@media(min-width:901px) and (max-width:1179px){
  .boost-educator-app{--educator-rail:190px}
  .boost-educator-app .boost-main{margin-right:18px;margin-left:calc(var(--educator-rail) + 18px)}
  .educator-shell-context{margin-right:18px;margin-left:calc(var(--educator-rail) + 18px)}
}

/* Classroom pages lead with the work, using compact headers and consistent panels. */
.boost-educator-app .workspace-hero{
  padding:clamp(24px,3vw,34px);
  border-radius:20px;
  box-shadow:0 16px 38px rgba(0,0,0,.16);
}
.boost-educator-app .workspace-hero .boost-hero-copy{max-width:900px}
.boost-educator-app .workspace-hero h1,
.classroom-planning-main .workspace-hero h1,
#communications-main .workspace-hero h1{
  max-width:18ch;
  margin:.2rem 0 .55rem;
  font-size:clamp(2.35rem,4.25vw,4.25rem);
  line-height:.98;
}
.boost-educator-app .workspace-hero .lede{max-width:760px;font-size:1rem;line-height:1.5}
.boost-educator-app .workspace-section{
  margin:0;
  padding:clamp(20px,2.5vw,28px);
  border-radius:18px;
  box-shadow:0 12px 30px rgba(0,0,0,.12);
}
.boost-educator-app .section-heading{margin-bottom:4px}
.boost-educator-app .section-heading h2{font-size:clamp(1.55rem,2.6vw,2.35rem);line-height:1.05}
.classroom-planning-main{gap:14px}
.classroom-planning-main .workspace-section{gap:16px}

/* Teaching planner: one responsive planning surface for day, week, month, and year. */
.teaching-planner-main{display:grid;gap:16px;max-width:none}
.teaching-planner-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:0;padding:26px 28px}
.teaching-planner-heading h1{margin:.2rem 0 .35rem;font-size:clamp(2.1rem,4vw,3.8rem);line-height:1}
.teaching-planner-heading p:last-child{margin:0;color:var(--boost-muted,#9eb0c3)}
.teaching-planner-toolbar{display:grid;grid-template-columns:auto auto minmax(150px,1fr) minmax(130px,.7fr);align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--boost-border,#31475e);border-radius:16px;background:var(--boost-panel,#102840)}
.teaching-planner-toolbar nav,.teaching-planner-toolbar>div{display:flex;align-items:center;gap:4px}
.teaching-planner-toolbar>div{justify-self:center}
.teaching-planner-toolbar a{display:inline-grid;min-height:40px;place-items:center;padding:8px 13px;border-radius:10px;color:inherit;text-decoration:none;font-weight:800}
.teaching-planner-toolbar a:hover,.teaching-planner-toolbar a.active{background:var(--program-color,#f6c344);color:#0b1d30}
.teaching-planner-toolbar label{display:grid;gap:5px;font-size:.78rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.teaching-planner-toolbar select{width:100%;min-height:42px}
.planner-filter-panel{position:relative;min-width:0}.planner-filter-panel>summary{min-height:40px;padding:10px 13px;border:1px solid var(--boost-border,#31475e);border-radius:10px;color:var(--boost-text);font-weight:850;list-style:none;cursor:pointer}.planner-filter-panel>summary::-webkit-details-marker{display:none}.planner-filter-panel[open]>summary{border-color:var(--program-color,#f6c344)}.planner-filter-form{position:absolute;z-index:20;top:calc(100% + 8px);right:0;width:min(560px,calc(100vw - 48px));max-height:min(680px,75vh);overflow:auto;padding:20px;border:1px solid var(--boost-border,#31475e);border-radius:16px;background:var(--boost-panel,#102840);box-shadow:0 20px 50px rgba(0,0,0,.32)}.planner-filter-form fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.planner-filter-form .boost-actions{justify-self:stretch;justify-content:flex-start}.planner-filter-form>.boost-button{justify-self:start}.theme-light .planner-filter-form{background:#fff;border-color:#cbd8e5}.theme-light .planner-filter-panel>summary{border-color:#cbd8e5}
.teaching-week-view{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));gap:8px;overflow-x:auto;padding-bottom:8px}
.teaching-week-day,.teaching-day-view,.teaching-month-view>div{min-width:0;border:1px solid var(--boost-border,#31475e);border-radius:14px;background:var(--boost-panel,#102840)}
.teaching-week-day{display:flex;min-height:440px;flex-direction:column;gap:8px;padding:10px}
.teaching-week-day>header{display:flex;align-items:center;justify-content:space-between;padding:2px 3px 8px;color:var(--boost-muted,#9eb0c3)}
.teaching-week-day>header strong{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;font-size:1.1rem}
.teaching-week-day.today>header strong{background:var(--program-color,#f6c344);color:#0b1d30}
.teaching-add-plan{margin-top:auto;padding:9px;border-radius:9px;color:var(--boost-muted,#9eb0c3);text-align:center;text-decoration:none;font-weight:800}
.teaching-plan-card{position:relative;display:grid;gap:4px;padding:10px;border:1px solid color-mix(in srgb,var(--program-accent,#1e75b0) 45%,transparent);border-left:4px solid var(--program-color,#f6c344);border-radius:10px;background:color-mix(in srgb,var(--boost-panel-raised,#193653) 90%,transparent);cursor:grab}
.teaching-plan-card.dragging{opacity:.5}
.teaching-plan-card>span,.teaching-plan-card>small{color:var(--boost-muted,#9eb0c3);font-size:.72rem}
.teaching-plan-card>strong{line-height:1.2}
.teaching-plan-details{display:grid;gap:5px;margin-top:5px;padding-top:7px;border-top:1px solid var(--boost-border,#31475e)}.teaching-plan-details p{margin:0;color:var(--boost-muted,#9eb0c3);font-size:.75rem;line-height:1.35}.teaching-plan-details b{color:var(--boost-text)}.equal-size-lessons .teaching-plan-card{min-height:220px;grid-template-rows:auto auto auto 1fr auto}.orientation-horizontal .teaching-week-day{display:grid;grid-template-columns:repeat(var(--planner-columns,2),minmax(190px,1fr));align-content:start;overflow-x:auto}.orientation-horizontal .teaching-week-day>header,.orientation-horizontal .teaching-week-day>.teaching-add-plan{grid-column:1/-1}.orientation-horizontal .teaching-day-view{grid-template-columns:repeat(var(--planner-columns,2),minmax(240px,1fr))}.orientation-horizontal .teaching-day-view>header,.orientation-horizontal .teaching-day-view>.teaching-meeting-slot{grid-column:1/-1}
.lesson-tag-editor{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin:14px 0;padding:14px;border:1px solid var(--boost-border,#31475e);border-radius:16px;background:var(--boost-panel-soft,#112438)}.lesson-tag-editor label{display:grid;gap:7px;font-weight:800}.lesson-tag-list{display:flex;gap:5px;flex-wrap:wrap}.lesson-tag-list span{padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--boost-accent,#f6bd36) 18%,transparent);color:var(--boost-text);font-size:.68rem;font-weight:800}.density-compact .teaching-plan-card{gap:4px;padding:9px;border-radius:12px}.density-compact .teaching-plan-details{gap:3px;margin-top:2px;padding-top:4px}.density-compact .teaching-plan-details p{font-size:.69rem;line-height:1.2}.density-compact .teaching-plan-actions{margin-top:2px}.density-compact.equal-size-lessons .teaching-plan-card{min-height:160px}
@media(max-width:680px){.lesson-tag-editor{grid-template-columns:1fr}.lesson-tag-editor .boost-button{width:100%}}
.lesson-portability-main{width:min(100%,1680px)}.lesson-portability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.lesson-portability-grid>.workspace-section{margin:0}.lesson-import-preview{margin-top:22px}.lesson-import-preview ol{display:grid;gap:7px;padding-left:24px}.unit-output-link{margin:4px 0 16px}
@media(max-width:800px){.lesson-portability-grid{grid-template-columns:1fr}}
.administration-shared-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.shared-list-heading{margin-top:28px}.shared-list-items{display:grid;gap:8px;margin:14px 0}.shared-list-item-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:1px solid var(--boost-border,#31475e);border-radius:12px}.shared-list-item-row span{display:grid;gap:2px}.shared-list-item-row small{color:var(--boost-muted)}
@media(max-width:800px){.administration-shared-lists{grid-template-columns:1fr}.shared-list-item-row{align-items:flex-start;flex-direction:column}}
.administration-resource-heading{margin-top:28px}.administration-resource-manager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.administration-resource-card{display:flex;flex-direction:column;gap:12px}.administration-resource-title,.administration-resource-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.administration-resource-title b{padding:5px 9px;border-radius:999px;background:var(--boost-accent,#ffc43d);color:#10243a;font-size:.75rem}.administration-resource-impact{display:flex;gap:8px;flex-wrap:wrap}.administration-resource-impact span{padding:8px 10px;border:1px solid var(--boost-border,#31475e);border-radius:10px;color:var(--boost-muted)}.administration-resource-impact strong{color:var(--boost-text);margin-right:3px}.administration-layout-section{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;padding:10px 0;border-bottom:1px solid var(--boost-border,#31475e)}
@media(max-width:800px){.administration-resource-manager{grid-template-columns:1fr}.administration-layout-section{grid-template-columns:1fr}.administration-resource-actions{align-items:stretch;flex-direction:column}.administration-resource-actions form,.administration-resource-actions button{width:100%}}
.layout-format-options{grid-column:1/-1;margin-top:8px}.layout-format-options summary{cursor:pointer;color:var(--boost-muted);font-weight:700}.layout-format-enable{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px!important;margin-top:10px}.layout-format-grid{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:10px;margin-top:10px}.layout-format-grid label{display:grid;gap:6px;font-size:.8rem}.layout-format-grid input[type=color]{width:100%;height:42px;padding:4px;border-radius:10px}.layout-format-grid :disabled{opacity:.45}
@media(max-width:900px){.layout-format-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.layout-format-grid{grid-template-columns:1fr}}
.teaching-planner-bulk{margin-block:16px}.boost-educator-app .workspace-section.teaching-planner-bulk:not([open]){padding:0}.teaching-planner-bulk:not([open])>summary{display:flex;align-items:center;min-height:52px;padding:13px 18px}.teaching-planner-bulk>summary{cursor:pointer;font-weight:800}.teaching-bulk-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.teaching-bulk-list .lesson-list-choice span{display:grid;gap:2px}.teaching-bulk-list small{color:var(--boost-muted)}@media(max-width:700px){.teaching-bulk-list{grid-template-columns:1fr}}
.teaching-plan-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:5px}
.teaching-plan-actions>a,.teaching-plan-actions button,.teaching-plan-actions summary{border:0;background:none;color:var(--program-color,#f6c344);font:inherit;font-size:.75rem;font-weight:900;text-decoration:none;cursor:pointer}
.theme-dark .teaching-plan-actions>a,.theme-dark .teaching-plan-actions button:not(.danger-link),.theme-dark .teaching-plan-actions summary{color:#dceeff}.theme-dark .teaching-plan-actions>a:hover,.theme-dark .teaching-plan-actions button:not(.danger-link):hover,.theme-dark .teaching-plan-actions summary:hover{color:#fff;text-decoration:underline}.teaching-plan-actions>a:focus-visible,.teaching-plan-actions button:focus-visible,.teaching-plan-actions summary:focus-visible{outline:3px solid var(--boost-focus,#63b3ff);outline-offset:3px;border-radius:5px}
.teaching-plan-actions form{margin:0}
.teaching-plan-actions details{position:relative}
.teaching-plan-actions details>div{position:absolute;z-index:8;right:0;display:grid;gap:10px;width:220px;padding:12px;border:1px solid var(--boost-border,#31475e);border-radius:11px;background:var(--boost-panel,#102840);box-shadow:0 14px 28px rgba(0,0,0,.28)}
.teaching-plan-actions details>div form{display:grid;gap:7px}
.teaching-plan-actions details>div form+form{padding-top:10px;border-top:1px solid var(--boost-border,#31475e)}
.teaching-plan-actions label{display:grid;gap:4px;color:var(--boost-muted,#9eb0c3);font-size:.72rem;font-weight:800}
.teaching-plan-actions input[type=date]{width:100%;min-height:38px}
.planner-drop-day.drag-over{outline:3px solid var(--program-color,#f6c344);outline-offset:-3px}
.teaching-day-view{display:grid;gap:10px;padding:18px}
.teaching-day-view>header{display:flex;align-items:center;justify-content:space-between}
.teaching-meeting-slot{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:14px;padding:14px;border:1px solid var(--boost-border,#31475e);border-radius:12px}
.teaching-meeting-slot a{color:var(--program-color,#f6c344);font-weight:900}
.teaching-month-view{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:7px;overflow-x:auto}
.teaching-month-view>div{display:grid;align-content:start;gap:6px;min-height:150px;padding:9px}
.teaching-month-view>div>header{font-weight:900}
.teaching-month-view .is-empty{border-color:transparent;background:transparent}
.teaching-month-view .teaching-plan-card>span,.teaching-month-view .teaching-plan-actions{display:none}
.teaching-year-view{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:12px}
.teaching-year-view>a{display:grid;gap:4px;min-height:150px;align-content:end;padding:20px;border:1px solid var(--boost-border,#31475e);border-radius:16px;background:var(--boost-panel,#102840);color:inherit;text-decoration:none}
.teaching-year-view>a:hover{border-color:var(--program-color,#f6c344);transform:translateY(-2px)}
.teaching-year-view span{color:var(--boost-muted,#9eb0c3);font-weight:900;text-transform:uppercase}
.teaching-year-view strong{font-size:2.2rem}
.teaching-list-view{display:grid;gap:10px;padding:18px;border:1px solid var(--boost-border,#31475e);border-radius:16px;background:var(--boost-panel,#102840)}.teaching-list-view>header{display:flex;align-items:center;justify-content:space-between}.teaching-list-row{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:start;gap:12px}.teaching-list-row>time{padding-top:12px;color:var(--boost-muted,#9eb0c3);font-weight:850}.teaching-bank-result{padding:16px;border:1px solid var(--boost-border,#31475e);border-radius:12px;background:var(--boost-panel-raised,#193653)}.teaching-bank-result span{color:var(--boost-muted,#9eb0c3);font-size:.76rem;font-weight:850;text-transform:uppercase}.teaching-bank-result h3,.teaching-bank-result p{margin:.35rem 0}.teaching-bank-result a{color:var(--program-color,#f6c344);font-weight:850}.theme-light .teaching-planner-toolbar,.theme-light .teaching-week-day,.theme-light .teaching-day-view,.theme-light .teaching-month-view>div,.theme-light .teaching-year-view>a,.theme-light .teaching-list-view{background:#fff;border-color:#cbd8e5}.theme-light .teaching-bank-result{background:#f3f7fb;border-color:#cbd8e5}
.theme-light .teaching-plan-card{background:#eef4fa;color:#10263f}
.theme-light .teaching-plan-actions details>div{background:#fff;border-color:#cbd8e5}
.teaching-plan-card.is-locked{cursor:default;border-left-color:var(--boost-muted)}
.teaching-plan-action-menu{max-height:min(520px,70vh);overflow:auto}
.teaching-plan-actions .danger-link{color:#ef8c86}
.teaching-history{margin-top:8px}
.teaching-history-list{display:grid;gap:8px}
.teaching-history-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid var(--boost-line);border-radius:12px;background:var(--boost-surface-raised)}
.teaching-history-list article>div{display:grid;gap:3px;min-width:0}
.teaching-history-list article span{color:var(--boost-text-muted);font-size:.8rem}
.teaching-history-list form{margin:0}
.teaching-history-list .boost-button{min-height:38px;padding:7px 13px}
.teaching-history-undone{padding:7px 10px;border-radius:999px;background:var(--boost-surface-soft)}
@media(max-width:620px){.teaching-history-list article{align-items:stretch;flex-direction:column}.teaching-history-list .boost-button{width:100%}}
.class-plan-resources{display:grid;gap:8px;margin:0 0 14px;padding:14px 16px;border:1px solid var(--boost-border,#31475e);border-radius:14px;background:color-mix(in srgb,var(--boost-panel-raised,#193653) 78%,transparent)}
.class-plan-resources h3{margin:0}
.class-plan-resources details{padding:9px 0;border-top:1px solid var(--boost-border,#31475e)}
.class-plan-resources summary{cursor:pointer;font-weight:900}
.class-plan-resources p{margin:.55rem 0;line-height:1.5}
.class-plan-resources small{color:var(--boost-muted,#9eb0c3)}
.theme-light .class-plan-resources{background:#eef4fa;border-color:#cbd8e5}
.lesson-save-state{display:inline-flex;align-items:center;justify-self:end;min-height:30px;padding:5px 10px;border-radius:999px;background:var(--boost-surface-soft);color:var(--boost-text-muted);font-size:.78rem;font-weight:900}
.lesson-save-state[data-state="saving"]{color:var(--program-color,#f6c344)}
.lesson-save-state[data-state="dirty"]{color:#efb966}
.lesson-save-state[data-state="saved"]{color:#71d69b}
.lesson-save-state[data-state="error"]{background:rgba(190,48,48,.18);color:#ff9f99}
.lesson-rich-toolbar{display:flex;flex-wrap:wrap;gap:5px;margin:6px 0 7px}
.lesson-rich-toolbar button{min-height:34px;padding:5px 10px;border:1px solid var(--boost-border,#31475e);border-radius:8px;background:var(--boost-surface-raised,#193653);color:var(--boost-text,#f7fbff);font:inherit;font-size:.76rem;font-weight:900;cursor:pointer}
.lesson-rich-toolbar button:hover,.lesson-rich-toolbar button:focus-visible{border-color:var(--program-color,#f6c344);outline:none}
.lesson-rich-source{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
.lesson-rich-editor{min-height:150px;padding:13px 14px;border:1px solid var(--boost-border,#31475e);border-radius:10px;background:var(--boost-input,#0e2237);color:var(--boost-text,#f7fbff);font:inherit;line-height:1.55;outline:none}
.lesson-rich-editor:focus{border-color:var(--program-color,#f6c344);box-shadow:0 0 0 3px color-mix(in srgb,var(--program-color,#f6c344) 22%,transparent)}
.lesson-rich-editor p:first-child{margin-top:0}.lesson-rich-editor p:last-child{margin-bottom:0}.lesson-rich-editor table{width:100%;border-collapse:collapse}.lesson-rich-editor th,.lesson-rich-editor td{padding:7px;border:1px solid var(--boost-border,#31475e);text-align:left}
.lesson-attachments{display:grid;gap:14px;margin:0 0 14px;padding:clamp(16px,2.2vw,24px);border:1px solid var(--boost-border,#31475e);border-radius:16px;background:var(--boost-panel,#102840)}
.lesson-attachments .section-heading{margin:0}.lesson-attachments .section-heading p:last-child{margin:.35rem 0 0;color:var(--boost-muted,#9eb0c3)}
.lesson-attachment-list{display:grid;gap:8px}
.lesson-attachment-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px 14px;border:1px solid var(--boost-border,#31475e);border-radius:11px;background:var(--boost-surface-raised,#193653)}
.lesson-attachment-list article>div{display:grid;gap:3px;min-width:0}.lesson-attachment-list span{color:var(--boost-muted,#9eb0c3);font-size:.75rem;font-weight:800;text-transform:uppercase}.lesson-attachment-list a{overflow-wrap:anywhere;color:inherit;text-decoration:none}.lesson-attachment-list a:hover{color:var(--program-color,#f6c344)}
.lesson-attachments details{border-top:1px solid var(--boost-border,#31475e);padding-top:12px}.lesson-attachments summary{cursor:pointer;font-weight:900}
.lesson-attachment-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.lesson-attachment-form label{display:grid;gap:6px}.lesson-attachment-form .lesson-attachment-file{grid-column:1/-1}.lesson-attachment-form .boost-button{justify-self:start}
.theme-light .lesson-rich-toolbar button,.theme-light .lesson-attachment-list article{background:#f3f7fb;color:#10263f;border-color:#cbd8e5}.theme-light .lesson-rich-editor{background:#fff;color:#10263f;border-color:#cbd8e5}.theme-light .lesson-attachments{background:#fff;border-color:#cbd8e5}.theme-light .lesson-save-state[data-state="saved"]{color:#237844}
@media(max-width:620px){.lesson-attachment-form{grid-template-columns:1fr}.lesson-attachment-form .boost-button,.lesson-attachment-list form,.lesson-attachment-list .boost-button{width:100%}.lesson-attachment-list article{grid-template-columns:1fr}.lesson-save-state{justify-self:start}}

/* Daily lesson composer */
.classroom-day-grid+.classroom-anchor+.class-plan-panel{padding:22px 24px}
.class-plan-panel .class-plan-builder{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;width:100%;margin:0}
.class-plan-builder>.form-pair{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);gap:14px}
.class-plan-builder>label{margin:0}
.class-plan-builder>.form-pair,.class-plan-builder>label{order:1}
.class-plan-builder>.class-plan-sections{order:2}
.class-plan-builder>.lesson-layout-editor{order:3}
.class-plan-builder>.class-plan-support{order:4}
.class-plan-builder>.boost-button:last-child{order:5;justify-self:end;min-width:190px}
.class-plan-sections{position:relative;padding-top:48px}
.class-plan-sections:before{content:"Class flow";position:absolute;inset:5px auto auto 0;color:var(--boost-text);font-size:1.35rem;font-weight:900;letter-spacing:-.02em}
.class-plan-sections fieldset{align-content:start;margin:0;background:var(--boost-surface-raised,#193653)}
.class-plan-sections fieldset legend{padding:0 7px;font-size:1rem;font-weight:900}
.class-plan-support{display:grid;grid-template-columns:minmax(240px,.42fr) minmax(0,1.58fr);gap:14px}
.class-plan-support>fieldset{align-content:start;margin:0;padding:20px;border:1px solid var(--boost-line);border-radius:16px;background:var(--boost-surface-raised,#193653)}
.class-plan-support>.class-standards-picker{grid-column:auto}
.lesson-layout-editor{margin:0;padding:22px;border-radius:18px}
.lesson-layout-editor .section-heading{margin-bottom:14px}
.lesson-layout-editor .section-heading .eyebrow{display:none}
.lesson-layout-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lesson-layout-sections>label,.lesson-layout-sections>fieldset,.lesson-layout-list-note{position:relative;display:grid;align-content:start;gap:7px;margin:0;padding:16px;border:1px solid var(--boost-border,#31475e);border-radius:14px;background:var(--boost-surface-raised,#193653);font-weight:900}
.lesson-layout-sections>label[hidden]{display:none!important}
.lesson-layout-sections>label:last-child:nth-child(odd){grid-column:1/-1}
.lesson-format-tools{position:absolute;top:10px;right:10px;z-index:2}
.lesson-format-tools>summary{padding:6px 10px;border:1px solid var(--boost-border,#31475e);border-radius:8px;color:var(--boost-muted);font-size:.75rem;font-weight:850;list-style:none;cursor:pointer}
.lesson-format-tools>summary::-webkit-details-marker{display:none}
.lesson-format-tools[open]{position:absolute;min-width:min(420px,calc(100vw - 64px));padding:8px;border:1px solid var(--boost-border,#31475e);border-radius:11px;background:var(--boost-panel,#102840);box-shadow:0 16px 36px rgba(0,0,0,.28)}
.lesson-format-tools[open]>summary{margin-left:auto;width:max-content}
.lesson-rich-toolbar{margin:6px 0 0}
.lesson-rich-editor{min-height:132px;margin-top:16px}
.class-standards-picker{padding:20px!important;background:color-mix(in srgb,var(--program-color,#f6c344) 5%,var(--boost-surface-raised,#193653))!important}
.standards-picker-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;margin:10px 0 14px}
.standards-picker-tools label{display:grid;gap:6px;margin:0}
.standards-selected-count{padding:10px 12px;border-radius:999px;background:var(--boost-panel,#102840);color:var(--boost-muted);font-size:.8rem;font-weight:900}
.class-standards-columns{display:grid;grid-template-columns:1fr;gap:8px;margin:0}
.standards-group{border:1px solid var(--boost-border,#31475e);border-radius:12px;background:var(--boost-panel,#102840)}
.standards-group>summary{padding:13px 15px;font-weight:900;cursor:pointer}
.standards-group>h3{display:none}
.standards-group>label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin:0;padding:12px 14px;border-top:1px solid var(--boost-border,#31475e);font-weight:500}
.standards-group>label:hover{background:color-mix(in srgb,var(--program-color,#f6c344) 7%,transparent)}
.standards-group>label span{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;min-width:0}
.standards-group>label strong{grid-column:1/-1;font-size:.9rem;line-height:1.35}
.standards-group>label a{align-self:start;font-size:.76rem;font-weight:850}
.standards-group>label[hidden]{display:none}
.standards-custom{margin-top:10px;border-top:1px solid var(--boost-border,#31475e);padding-top:10px}.standards-custom>summary{cursor:pointer;font-weight:850}.standards-custom>label{display:grid;gap:7px;margin-top:10px}
.theme-light .class-plan-sections fieldset,.theme-light .class-plan-support>fieldset,.theme-light .lesson-layout-sections>label,.theme-light .lesson-layout-sections>fieldset,.theme-light .lesson-layout-list-note{background:#fff;border-color:#cbd8e5}
.theme-light .lesson-format-tools[open],.theme-light .standards-group,.theme-light .standards-selected-count{background:#fff;border-color:#cbd8e5;color:#51677e}
@media(max-width:760px){.class-plan-builder>.form-pair,.lesson-layout-sections,.class-plan-support{grid-template-columns:1fr}.lesson-layout-sections>label:last-child:nth-child(odd){grid-column:auto}.standards-picker-tools{grid-template-columns:1fr}.class-plan-builder>.boost-button:last-child{width:100%;justify-self:stretch}.lesson-format-tools[open]{right:0;min-width:min(340px,calc(100vw - 54px))}}
.classroom-to-performance{display:grid;gap:14px}
.classroom-performance-plans{display:grid;gap:9px}
.classroom-performance-plans>article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:15px 16px;border:1px solid var(--boost-border,#31475e);border-radius:13px;background:color-mix(in srgb,var(--boost-panel-raised,#193653) 72%,transparent)}
.classroom-performance-plans h3{margin:.18rem 0;font-size:1.05rem}
.classroom-performance-plans p{margin:.25rem 0;color:var(--boost-muted,#9eb0c3)}
.classroom-performance-plans span,.classroom-performance-plans small{color:var(--boost-muted,#9eb0c3);font-size:.78rem}
.theme-light .classroom-performance-plans>article{background:#f3f7fb;border-color:#cbd8e5}
.layout-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.layout-card-actions .boost-button{min-height:38px;padding:7px 12px}
.layout-manage{margin-top:12px;padding-top:12px;border-top:1px solid var(--boost-border,#31475e)}.layout-manage>summary{cursor:pointer;font-weight:900}.layout-manage>.boost-form{margin-top:12px}
.layout-section-editor{display:grid;gap:8px;padding:0;list-style:none}.layout-section-editor>li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:10px;padding:10px;border:1px solid var(--boost-border,#31475e);border-radius:10px}.layout-section-editor>li>label{margin:0}.layout-section-editor>li>div{display:flex;gap:5px}.layout-section-editor .boost-button{min-height:36px;padding:6px 9px}.layout-archive-form{margin-top:12px;padding-top:12px;border-top:1px solid var(--boost-border,#31475e)}
@media(max-width:620px){.layout-section-editor>li{grid-template-columns:1fr}.layout-section-editor>li>div,.layout-section-editor .boost-button{width:100%}.layout-section-editor>li>div{display:grid;grid-template-columns:1fr 1fr}}
.classroom-units-main{display:grid;gap:16px;max-width:none}.classroom-unit-list{display:grid;gap:14px}.classroom-unit-card{display:grid;gap:16px;padding:clamp(18px,2.5vw,26px);border:1px solid var(--boost-border,#31475e);border-radius:18px;background:var(--boost-panel,#102840)}.classroom-unit-card>header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px}.classroom-unit-card header span,.classroom-unit-card header time{color:var(--boost-muted,#9eb0c3);font-size:.78rem;font-weight:900;text-transform:uppercase}.classroom-unit-card h3{margin:.25rem 0;font-size:clamp(1.35rem,2.2vw,2rem)}.classroom-unit-card p{margin:.25rem 0;color:var(--boost-muted,#9eb0c3)}.unit-plan-list,.unit-resource-list{display:grid;gap:8px}.unit-plan-list h4,.unit-resource-list h4{margin:0}.unit-plan-list ol{display:grid;gap:7px;margin:0;padding:0;list-style:none}.unit-plan-list li,.unit-resource-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:11px 12px;border:1px solid var(--boost-border,#31475e);border-radius:11px;background:var(--boost-surface-raised,#193653)}.unit-plan-list li>div,.unit-resource-list a{display:grid;gap:2px;color:inherit;text-decoration:none}.unit-plan-list span,.unit-resource-list span{color:var(--boost-muted,#9eb0c3);font-size:.76rem}.unit-card-tools{display:flex;align-items:flex-start;flex-wrap:wrap;gap:8px;padding-top:12px;border-top:1px solid var(--boost-border,#31475e)}.unit-card-tools details{min-width:min(100%,300px)}.unit-card-tools summary{cursor:pointer;font-weight:900}.unit-card-tools .boost-form{margin-top:10px}.unit-archive-form{margin-left:auto}.classroom-unit-create{max-width:920px}.theme-light .classroom-unit-card{background:#fff;border-color:#cbd8e5}.theme-light .unit-plan-list li,.theme-light .unit-resource-list>div{background:#f3f7fb;color:#10263f;border-color:#cbd8e5}
.unit-edit-list{display:grid;gap:8px}.unit-edit-list details{padding:12px 14px;border:1px solid var(--boost-border,#31475e);border-radius:12px;background:var(--boost-surface-raised,#193653)}.unit-edit-list summary{cursor:pointer;font-weight:900}.unit-edit-list .boost-form{margin-top:12px}.lesson-unit-context{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;margin:0 0 14px;padding:16px 18px;border:1px solid color-mix(in srgb,var(--program-color,#f6c344) 55%,var(--boost-border,#31475e));border-radius:14px;background:color-mix(in srgb,var(--program-color,#f6c344) 8%,var(--boost-panel,#102840))}.lesson-unit-context h3{margin:.25rem 0}.lesson-unit-context p{margin:.35rem 0;color:var(--boost-muted,#9eb0c3)}.lesson-unit-resources{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.lesson-unit-resources a{display:grid;gap:1px;padding:8px 10px;border:1px solid var(--boost-border,#31475e);border-radius:9px;color:inherit;text-decoration:none}.lesson-unit-resources a:hover{border-color:var(--program-color,#f6c344)}.lesson-unit-resources span{color:var(--boost-muted,#9eb0c3);font-size:.72rem}.theme-light .unit-edit-list details{background:#f3f7fb;border-color:#cbd8e5}.theme-light .lesson-unit-context{background:#fff9e8;border-color:#d6b04b}
.unit-section-editors{display:grid;gap:8px}.unit-section-editors>details{padding:12px 14px;border:1px solid var(--boost-border,#31475e);border-radius:12px;background:var(--boost-surface-raised,#193653)}.unit-section-editors>details>summary{cursor:pointer;font-weight:900}.unit-section-editors .boost-form{margin-top:12px}.lesson-unit-shared-content{margin-top:9px;padding:9px 11px;border:1px solid var(--boost-border,#31475e);border-radius:9px}.lesson-unit-shared-content>summary{cursor:pointer;font-weight:900}.lesson-unit-shared-content>section{display:grid;gap:4px;padding:8px 0;border-top:1px solid var(--boost-border,#31475e)}.lesson-unit-shared-content>section:first-of-type{margin-top:8px}.theme-light .unit-section-editors>details{background:#f3f7fb;border-color:#cbd8e5}
.classroom-organizer-main{display:grid;gap:16px;max-width:none}.organizer-reminder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.organizer-reminder-grid>article{display:grid;align-content:start;gap:7px;min-height:150px;padding:18px;border:1px solid var(--boost-border,#31475e);border-radius:15px;background:var(--boost-surface-raised,#193653)}.organizer-reminder-grid>article>span{color:var(--boost-muted,#9eb0c3);font-size:.78rem;font-weight:900;text-transform:uppercase}.organizer-reminder-grid>article>strong{font-size:2.4rem}.organizer-reminder-grid p{display:grid;margin:0;padding-top:7px;border-top:1px solid var(--boost-border,#31475e)}.organizer-reminder-grid small{color:var(--boost-muted,#9eb0c3)}.organizer-reminder-grid .is-overdue>strong{color:#ff9f99}.organizer-task-list,.organizer-note-list{display:grid;gap:9px}.organizer-task-list>article,.organizer-note-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;padding:15px 16px;border:1px solid var(--boost-border,#31475e);border-radius:13px;background:var(--boost-surface-raised,#193653)}.organizer-task-list h3,.organizer-note-list h3{margin:.2rem 0}.organizer-task-list p,.organizer-note-list p{margin:.35rem 0;color:var(--boost-muted,#9eb0c3)}.organizer-task-list span,.organizer-note-list span{color:var(--boost-muted,#9eb0c3);font-size:.76rem;font-weight:900;text-transform:uppercase}.organizer-task-list>article>div:last-child{display:flex;align-items:start;gap:7px}.organizer-task-list details,.organizer-task-editor,.organizer-editor,.unit-edit-list details{margin-top:10px}.organizer-task-list summary,.organizer-task-editor>summary,.organizer-editor>summary{cursor:pointer;font-weight:900}.organizer-task-list .boost-form,.organizer-task-editor .boost-form,.organizer-editor .boost-form{margin-top:10px}.organizer-note-search{display:flex;align-items:end;gap:8px}.organizer-note-search label{display:grid;gap:4px}.organizer-email-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.organizer-email-grid .boost-form{margin:0;padding:20px;border:1px solid var(--boost-border,#31475e);border-radius:15px;background:var(--boost-surface-raised,#193653)}.organizer-email-handoff .organizer-actions{margin-top:18px}.theme-light .organizer-reminder-grid>article,.theme-light .organizer-task-list>article,.theme-light .organizer-note-list>article,.theme-light .organizer-email-grid .boost-form{background:#fff;border-color:#cbd8e5}
.classroom-units-main .workspace-hero,.classroom-organizer-main .workspace-hero{min-height:0;padding:clamp(22px,3vw,34px);border-radius:18px}.classroom-units-main .workspace-hero .boost-hero-copy,.classroom-organizer-main .workspace-hero .boost-hero-copy{max-width:1000px}.classroom-units-main .workspace-hero h1,.classroom-organizer-main .workspace-hero h1{max-width:none;margin:.18rem 0 .5rem;font-size:clamp(2.35rem,4.8vw,4.7rem);line-height:.96}.classroom-units-main .workspace-hero .lede,.classroom-organizer-main .workspace-hero .lede{max-width:820px;font-size:1rem;line-height:1.5}
@media(max-width:1100px){.organizer-task-list>article,.organizer-note-list>article{grid-template-columns:1fr}.organizer-task-list>article>div:last-child{display:grid;grid-template-columns:auto minmax(0,1fr);width:100%}.organizer-task-list>article>div:last-child>details{min-width:0;width:100%}.organizer-task-list .boost-form,.organizer-note-list .boost-form,.organizer-task-editor .boost-form,.organizer-editor .boost-form{grid-template-columns:1fr}.organizer-note-list>article>details{width:100%}.organizer-note-list textarea{min-height:150px}.organizer-completed-tasks .organizer-task-list>article>form{justify-content:flex-start}}
.collaboration-share-form{align-items:start}.collaboration-share-form>label{align-self:start}.collaboration-share-form select{min-height:48px;height:auto}.collaboration-share-form fieldset{align-self:start}
.classroom-resource-list{display:grid;gap:14px}.classroom-resource-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px;border:1px solid var(--boost-border,#31475e);border-radius:15px;background:var(--boost-surface-raised,#193653)}.classroom-resource-list>article>div{display:grid;gap:6px;min-width:0}.classroom-resource-list h3,.classroom-resource-list p{margin:0}.classroom-resource-list .boost-actions{justify-content:flex-end}.classroom-resource-form{align-items:start}.classroom-resource-form>label{align-self:start}.classroom-resource-form input,.classroom-resource-form select{min-height:48px;height:auto}.theme-light .classroom-resource-list>article{background:#fff;border-color:#cbd8e5}@media(max-width:720px){.classroom-resource-list>article{grid-template-columns:1fr}.classroom-resource-list .boost-actions{justify-content:flex-start}.classroom-resource-form{grid-template-columns:1fr}}
@media(max-width:720px){.organizer-reminder-grid,.organizer-email-grid{grid-template-columns:1fr}.organizer-task-list>article>div:last-child{grid-template-columns:1fr}.organizer-task-list>article>div:last-child{flex-wrap:wrap}.organizer-note-search{align-items:stretch;flex-direction:column}.organizer-note-search .boost-button{width:100%}}

/* Classroom lesson output and controlled sharing */
.plan-output-main{display:grid;gap:18px;max-width:none}.plan-output-main>.office-heading{align-items:center;min-height:0;padding-block:14px}.plan-output-main>.office-heading h1{max-width:none;margin:.2rem 0;font-size:clamp(2.25rem,4vw,3.4rem);line-height:1.02}.plan-output-controls{flex-wrap:nowrap}.plan-output-controls>*{white-space:nowrap}.lesson-output-sheet{width:100%;margin:0;padding:clamp(28px,5vw,64px);border:1px solid var(--boost-border,#31475e);border-radius:24px;background:var(--boost-surface-raised,#193653);box-shadow:0 22px 55px rgba(0,0,0,.2)}.lesson-output-sheet>header{display:block!important;min-height:0!important;padding:0 0 20px!important;border:0!important;border-bottom:4px solid #f5bd3f!important;background:transparent!important;color:inherit!important;box-shadow:none!important}.lesson-output-sheet .kicker{margin:0;color:var(--boost-muted,#9eb0c3);font-size:.76rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.lesson-output-sheet h1{margin:.35rem 0;font-size:clamp(2rem,5vw,3.4rem);line-height:1.02}.lesson-output-sheet .meta{color:var(--boost-muted,#9eb0c3);font-weight:700}.lesson-output-sheet section{padding:18px 0;border-bottom:1px solid var(--boost-border,#31475e)}.lesson-output-sheet section:last-child{border-bottom:0}.lesson-output-sheet h2{margin:0 0 .7rem;font-size:1.35rem}.lesson-output-sheet h3{margin:.8rem 0 .25rem}.lesson-output-sheet li{margin:.45rem 0}.lesson-output-sheet a{overflow-wrap:anywhere}.plan-share-created{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.plan-share-created p{grid-column:1/-1;margin:0}.plan-share-created input{min-width:0}.plan-share-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(360px,1.2fr);gap:22px;align-items:start}.plan-share-list{display:grid;gap:10px}.plan-share-list>h3{margin:0}.plan-share-list>article{display:flex;justify-content:space-between;gap:18px;align-items:start;padding:16px;border:1px solid var(--boost-border,#31475e);border-radius:15px;background:var(--boost-surface-raised,#193653)}.plan-share-list h4{margin:.35rem 0}.plan-share-list p{margin:.2rem 0;color:var(--boost-muted,#9eb0c3)}.theme-light .lesson-output-sheet,.theme-light .plan-share-list>article{background:#fff;color:#14283d;border-color:#cbd8e5}.theme-light .lesson-output-sheet .kicker,.theme-light .lesson-output-sheet .meta,.theme-light .plan-share-list p{color:#58718a}
@media(max-width:820px){.plan-share-grid{grid-template-columns:1fr}.plan-output-controls{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.plan-output-controls>*{min-width:0;padding-inline:10px;white-space:normal}.plan-share-created{grid-template-columns:1fr}.plan-share-created p{grid-column:auto}.lesson-output-sheet{padding:24px;border-radius:18px}}@media(max-width:520px){.plan-output-controls{grid-template-columns:1fr}}
.shared-views-main{display:grid;gap:16px;max-width:none}.shared-views-main>.office-heading{min-height:0;padding-block:12px}.shared-views-main>.office-heading h1{max-width:900px;margin:.2rem 0;font-size:clamp(2rem,2.8vw,2.55rem);line-height:1.05}.shared-views-main>.office-heading p:last-child{max-width:850px;margin:.4rem 0 0}.shared-views-main .workspace-section{margin:0;padding:clamp(20px,3vw,30px);border-color:var(--boost-line);background:var(--boost-surface);box-shadow:var(--boost-shadow)}.shared-views-main .section-heading h2{margin:.2rem 0;font-family:inherit;font-size:clamp(1.35rem,1.8vw,1.65rem);line-height:1.18;letter-spacing:-.02em}.shared-view-builder{width:100%;max-width:none}.shared-view-builder fieldset{margin:0;padding:16px;border:1px solid var(--boost-border,#31475e);border-radius:15px}.shared-view-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}.shared-view-builder .plan-share-email{align-self:end;min-height:48px}.shared-views-main .plan-share-list>article{background:var(--boost-surface-raised,#193653)}.theme-light .shared-views-main .workspace-section{border-color:#d7e0e8;background:#fff;box-shadow:0 12px 28px rgba(33,58,82,.08)}.theme-light .shared-views-main .plan-share-list>article{background:#f6f9fc}.shared-views-main .plan-share-list .boost-actions{align-items:center;flex-wrap:wrap}.shared-views-main .plan-share-list form{margin:0}@media(max-width:720px){.shared-view-choices{grid-template-columns:1fr}.shared-views-main>.office-heading h1{font-size:2rem}.shared-views-main .plan-share-list>article{display:grid}.shared-views-main .plan-share-list .boost-actions{width:100%}.shared-views-main .plan-share-list .boost-actions>*{flex:1}}
/* Shared lesson view builder: page-scoped vertical layout. Restores one-column form so
   the two .form-pair rows, the announcement textarea, and every fieldset span full width.
   Does not modify the generic .boost-form grid used elsewhere across BOOST!. */
.shared-views-main .shared-view-builder{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-content:start;font-size:1rem}
.shared-views-main .shared-view-builder>.form-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.shared-views-main .shared-view-builder>fieldset{grid-column:1/-1;margin:0;padding:18px;border:1px solid var(--boost-border,#31475e);border-radius:15px;background:color-mix(in srgb,var(--boost-surface-raised,#193653) 68%,transparent)}
.shared-views-main .shared-view-builder>fieldset>legend{margin-bottom:10px;padding:0 6px;color:var(--boost-text);font-weight:800;font-size:1rem;letter-spacing:0}
.shared-views-main .shared-view-builder>label:has(textarea){grid-column:1/-1;display:grid;gap:8px;color:var(--boost-text);font-weight:850}
.shared-views-main .shared-view-builder>label:has(textarea)>textarea{width:100%;min-height:84px;resize:vertical;border:1px solid var(--boost-border,#31475e);border-radius:14px;background:var(--boost-surface-raised,#193653);color:var(--boost-text);padding:13px 14px;font:inherit}
.shared-views-main .shared-view-builder>.field-help{grid-column:1/-1}
.shared-views-main .shared-view-builder>.boost-button{grid-column:1/-1;justify-self:start;width:auto;min-width:200px;max-width:100%;min-height:46px;height:auto;padding:12px 22px;border-radius:12px;line-height:1.2}
.shared-views-main .shared-view-builder .shared-view-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:10px}
.shared-views-main .shared-view-builder .lesson-list-choice{display:flex!important;align-items:flex-start;gap:.65rem;min-height:44px;padding:10px 12px;border:1px solid var(--boost-border,#31475e)!important;border-radius:11px;background:var(--boost-surface,#102b42)!important;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}
.shared-views-main .shared-view-builder .lesson-list-choice:hover{border-color:var(--boost-blue,#5eb7ff)!important;background:color-mix(in srgb,var(--boost-blue,#5eb7ff) 8%,var(--boost-surface,#102b42))!important}
.shared-views-main .shared-view-builder .lesson-list-choice:has(input:checked){border-color:color-mix(in srgb,var(--boost-gold,#f6c344) 60%,var(--boost-border,#31475e))!important}
.shared-views-main .shared-view-builder .lesson-list-choice>input[type=checkbox]{flex:0 0 auto;width:18px;height:18px;min-width:18px;min-height:18px;margin:0;margin-top:.2rem;accent-color:var(--boost-gold,#f6c344);cursor:pointer}
.shared-views-main .shared-view-builder .lesson-list-choice>span{flex:1 1 auto;min-width:0;color:var(--boost-text);font-weight:600;line-height:1.35}
.shared-views-main .shared-view-builder .lesson-list-choice>input[type=checkbox]:focus-visible{outline:2px solid var(--boost-blue,#5eb7ff);outline-offset:2px}
.shared-views-main .shared-view-builder input[type=date],
.shared-views-main .shared-view-builder select,
.shared-views-main .shared-view-builder input[type=text]{width:100%;min-width:0;border:1px solid var(--boost-border,#31475e);border-radius:14px;background:var(--boost-surface-raised,#193653);color:var(--boost-text);padding:13px 14px;font:inherit}
.shared-views-main .shared-view-builder label{display:grid;gap:8px;color:var(--boost-text);font-weight:800}
.shared-views-main .shared-view-builder input:focus-visible,
.shared-views-main .shared-view-builder select:focus-visible,
.shared-views-main .shared-view-builder textarea:focus-visible{outline:2px solid var(--boost-blue,#5eb7ff);outline-offset:2px;border-color:var(--boost-blue,#5eb7ff)}
.shared-views-main .shared-view-builder input:disabled,
.shared-views-main .shared-view-builder select:disabled{opacity:.5;cursor:not-allowed}
.theme-light .shared-views-main .shared-view-builder>fieldset{border-color:#d7e0e8;background:#f7f9fb}
.theme-light .shared-views-main .shared-view-builder>fieldset>legend{color:var(--boost-text)}
.theme-light .shared-views-main .shared-view-builder>label:has(textarea)>textarea{background:#fff;color:var(--boost-text);border-color:#cbd8e5}
.theme-light .shared-views-main .shared-view-builder input[type=date],
.theme-light .shared-views-main .shared-view-builder select,
.theme-light .shared-views-main .shared-view-builder input[type=text]{background:#fff;color:var(--boost-text);border-color:#cbd8e5}
.theme-light .shared-views-main .shared-view-builder .lesson-list-choice>span{color:var(--boost-text)}
.theme-light .shared-views-main .shared-view-builder .lesson-list-choice>input[type=checkbox]{accent-color:var(--boost-gold,#b77905)}
.theme-light .shared-views-main .shared-view-builder .lesson-list-choice{border-color:#d7e0e8!important;background:#fff!important}
.theme-light .shared-views-main .shared-view-builder .lesson-list-choice:hover{border-color:#7aa8cf!important;background:#f4f8fb!important}
.theme-light .shared-views-main .shared-view-builder .lesson-list-choice:has(input:checked){border-color:#c28a16!important;background:#fffaf0!important}
@media(max-width:720px){.shared-views-main .shared-view-builder>.form-pair{grid-template-columns:1fr}.shared-views-main .shared-view-builder>.boost-button{justify-self:stretch;width:100%}.shared-views-main .shared-view-builder .shared-view-choices{grid-template-columns:1fr}}
@media(max-width:620px){.classroom-unit-card>header,.unit-plan-list li,.unit-resource-list>div{grid-template-columns:1fr}.unit-card-tools{display:grid}.unit-card-tools details,.unit-card-tools .boost-button,.unit-archive-form{width:100%;margin-left:0}.lesson-unit-context{grid-template-columns:1fr}.lesson-unit-context>.boost-button{width:100%}}
.class-plan-heading-actions{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px}.classroom-plan-submit{display:flex;align-items:flex-end;flex-wrap:wrap;gap:8px}.classroom-plan-submit label{display:grid;gap:4px}.classroom-plan-submit input{min-width:min(280px,65vw)}.classroom-plan-submit small{color:var(--boost-muted)}
.administration-plan-report{display:grid;gap:18px}.administration-plan-filters{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:12px;align-items:end;padding:18px;border:1px solid var(--boost-border);border-radius:16px;background:var(--boost-surface-raised)}.administration-plan-filters label{display:grid;gap:6px}.administration-plan-filters .boost-actions{grid-column:1/-1}.administration-plan-summary{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;padding:4px}.administration-plan-summary strong{font-size:2rem}.administration-plan-summary span,.administration-plan-summary b{color:var(--boost-muted)}.administration-plan-list{display:grid;gap:12px}.administration-plan-list>article{display:grid;gap:14px;padding:18px;border:1px solid var(--boost-border);border-radius:16px;background:var(--boost-surface-raised)}.administration-plan-list article>header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px}.administration-plan-list h3{margin:.25rem 0}.administration-plan-list p{margin:.25rem 0;color:var(--boost-muted)}.administration-plan-state{display:flex;flex-wrap:wrap;gap:7px;align-items:start}.administration-plan-state span{padding:6px 10px;border:1px solid var(--boost-border);border-radius:999px;font-size:.75rem;font-weight:900;text-transform:capitalize}.administration-plan-state .is-submitted{color:#71d69b}.administration-plan-state .is-pending{color:#efb966}.administration-plan-list dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0}.administration-plan-list dl>div{padding:10px 12px;border-radius:10px;background:var(--boost-surface-soft)}.administration-plan-list dt{font-size:.7rem;font-weight:900;text-transform:uppercase;color:var(--boost-muted)}.administration-plan-list dd{margin:3px 0 0;font-weight:800;text-transform:capitalize}.administration-teacher-note{padding:10px 12px;border-left:3px solid var(--program-color)}.theme-light .administration-plan-filters,.theme-light .administration-plan-list>article{background:#fff;border-color:#cbd8e5}
@media(max-width:1050px){.administration-plan-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:680px){.administration-plan-filters{grid-template-columns:1fr}.administration-plan-list article>header,.administration-plan-list dl{grid-template-columns:1fr}.class-plan-heading-actions,.classroom-plan-submit,.classroom-plan-submit label,.classroom-plan-submit input,.classroom-plan-submit .boost-button{width:100%}}
@media(max-width:620px){.classroom-performance-plans>article{grid-template-columns:1fr}.classroom-performance-plans form,.classroom-performance-plans .boost-button{width:100%}}
@media(max-width:900px){
  .teaching-planner-heading{align-items:start;flex-direction:column;padding:20px}
  .teaching-planner-toolbar{grid-template-columns:1fr}
  .teaching-planner-toolbar nav{display:grid;grid-template-columns:repeat(5,1fr)}
  .teaching-planner-toolbar>div{justify-self:start}
  .planner-filter-form{position:static;width:100%;max-height:none;margin-top:8px}.planner-filter-panel{width:100%}
  .teaching-year-view{grid-template-columns:repeat(2,minmax(140px,1fr))}
}
@media(max-width:560px){
  .teaching-planner-main{gap:11px}
  .teaching-planner-heading .boost-button{width:100%}
  .teaching-planner-toolbar{padding:10px}
  .teaching-planner-toolbar a{padding:8px}
  .teaching-week-view{grid-template-columns:repeat(7,minmax(235px,78vw))}
  .teaching-month-view{grid-template-columns:repeat(7,minmax(105px,1fr))}
  .teaching-year-view{grid-template-columns:1fr 1fr;gap:8px}
  .teaching-year-view>a{min-height:120px;padding:14px}
  .teaching-meeting-slot{grid-template-columns:1fr}
.planner-filter-form fieldset{grid-template-columns:1fr}.teaching-list-row{grid-template-columns:1fr}.orientation-horizontal .teaching-day-view{grid-template-columns:1fr}
}
.planner-filter-form [data-display-preferences]{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:13px;border:1px solid var(--boost-border);border-radius:12px}.planner-filter-form [data-display-preferences] legend{font-weight:900}.planner-filter-form [data-display-preferences] label{display:grid;gap:5px}.planner-filter-form [data-display-preferences] output{color:var(--boost-muted);font-weight:800}@media(max-width:560px){.planner-filter-form [data-display-preferences]{grid-template-columns:1fr}}
.school-day-counter{display:inline-flex;align-items:center;min-height:38px;padding:7px 12px;border:1px solid var(--boost-border);border-radius:999px;color:var(--boost-muted);font-size:.78rem;font-weight:900;white-space:nowrap}
.planner-formatted-date{display:block;grid-column:1/-1;margin-top:3px;color:var(--boost-muted);font-size:.66rem;font-weight:800;line-height:1.15;overflow-wrap:anywhere}
.calendar-events-main{display:grid;gap:18px;max-width:none}.calendar-series-form{max-width:none}.calendar-weekday-choices{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.calendar-weekday-choices label{display:flex;align-items:center;gap:5px;padding:9px;border:1px solid var(--boost-border);border-radius:9px}.calendar-series-list{display:grid;gap:12px}.calendar-series-list>article{padding:18px;border:1px solid var(--boost-border);border-radius:16px;background:var(--boost-surface-raised)}.calendar-series-list h3{margin:.25rem 0}.calendar-series-list p{color:var(--boost-muted)}.calendar-series-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:12px}.theme-light .calendar-series-list>article{background:#fff;border-color:#cbd8e5}@media(max-width:700px){.calendar-weekday-choices{grid-template-columns:repeat(4,minmax(0,1fr))}.calendar-series-actions{grid-template-columns:1fr}}
.calendar-notification-form{max-width:none}.calendar-notification-list{display:grid;gap:8px;margin-top:16px}.calendar-notification-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--boost-border);border-radius:12px;background:var(--boost-surface-raised)}.calendar-notification-list>article>div{display:grid}.calendar-notification-list span{color:var(--boost-muted);font-size:.78rem}.calendar-notification-list b{text-transform:capitalize}.theme-light .calendar-notification-list>article{background:#fff;border-color:#cbd8e5}@media(max-width:650px){.calendar-notification-list>article{grid-template-columns:1fr}.calendar-notification-list form,.calendar-notification-list button{width:100%}}

/* Classroom application design system: compact chrome and work-first planning. */
.boost-educator-app{
  --classroom-radius:14px;
  --classroom-control-height:38px;
}
.boost-educator-app .teaching-planner-main{
  gap:12px;
  padding-top:18px;
}
.boost-educator-app .teaching-planner-heading{
  align-items:center;
  min-height:0;
  margin:0;
  padding:10px 4px 12px;
}
.boost-educator-app .teaching-planner-heading h1{
  margin:.18rem 0 .25rem;
  font-size:clamp(2rem,3.35vw,3.15rem);
  letter-spacing:-.045em;
}
.boost-educator-app .teaching-planner-heading p:last-child{
  max-width:680px;
  font-size:.92rem;
}
.boost-educator-app .teaching-planner-heading .boost-actions{
  flex-wrap:nowrap;
}
.boost-educator-app .teaching-planner-heading .boost-button{
  min-height:40px;
  padding:8px 15px;
  border-radius:10px;
}
.boost-educator-app .teaching-planner-toolbar{
  position:sticky;
  top:8px;
  z-index:25;
  grid-template-columns:auto auto minmax(130px,1fr) minmax(96px,.45fr) auto;
  gap:8px;
  padding:8px;
  border-radius:var(--classroom-radius);
  background:color-mix(in srgb,var(--boost-surface-raised) 94%,transparent);
  box-shadow:0 10px 26px rgba(0,8,20,.14);
  backdrop-filter:blur(18px);
}
.boost-educator-app .teaching-planner-toolbar nav{
  gap:2px;
  padding:3px;
  border-radius:10px;
  background:var(--boost-surface-soft);
}
.boost-educator-app .teaching-planner-toolbar a{
  min-height:var(--classroom-control-height);
  padding:7px 11px;
  border-radius:8px;
  font-size:.84rem;
}
.boost-educator-app .teaching-planner-toolbar a.active{
  box-shadow:0 2px 8px rgba(0,0,0,.16);
}
.boost-educator-app .planner-date-navigation{
  gap:0!important;
  justify-self:start!important;
}
.boost-educator-app .planner-filter-panel>summary{
  display:flex;
  align-items:center;
  min-height:var(--classroom-control-height);
  padding:7px 11px;
  border-radius:9px;
  font-size:.82rem;
}
.boost-educator-app .teaching-week-view{
  grid-template-columns:repeat(5,minmax(150px,1fr));
  gap:7px;
  padding:0;
  overflow:visible;
}
.boost-educator-app .teaching-week-day{
  min-height:540px;
  gap:7px;
  padding:8px;
  border-radius:var(--classroom-radius);
  background:color-mix(in srgb,var(--boost-surface) 88%,var(--boost-bg));
  box-shadow:0 8px 18px rgba(0,7,18,.08);
}
.boost-educator-app .teaching-week-day.is-weekend.is-empty-day{
  display:none;
}
.boost-educator-app .teaching-week-day>header{
  min-height:44px;
  padding:2px 4px 7px;
  border-bottom:1px solid var(--boost-line);
}
.boost-educator-app .teaching-week-day>header span{
  color:var(--boost-text);
  font-size:.78rem;
  font-weight:850;
}
.boost-educator-app .teaching-week-day>header strong{
  width:30px;
  height:30px;
  font-size:1rem;
}
.boost-educator-app .teaching-week-view .planner-formatted-date{
  display:none;
}
.teaching-week-schedule{
  display:grid;
  gap:5px;
  padding-bottom:2px;
}
.teaching-week-meeting{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:7px;
  min-height:0!important;
  padding:7px 8px!important;
  border:1px solid var(--boost-line);
  border-radius:9px!important;
  background:var(--boost-surface-raised);
  color:var(--boost-text)!important;
  text-decoration:none;
}
.teaching-week-meeting time{
  color:var(--boost-text-muted);
  font-size:.68rem;
  font-weight:800;
  white-space:nowrap;
}
.teaching-week-meeting strong{
  overflow:hidden;
  font-size:.75rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.boost-educator-app .teaching-add-plan{
  min-height:36px;
  margin-top:auto;
  padding:7px;
  border:1px dashed var(--boost-line);
  border-radius:9px;
  font-size:.78rem;
}
.boost-educator-app .teaching-add-plan:hover{
  border-color:var(--program-color,var(--boost-gold));
  color:var(--boost-text);
  background:var(--boost-surface-soft);
}
.boost-educator-app.theme-light .teaching-planner-toolbar{
  background:rgba(255,255,255,.94);
  border-color:#d5dee7;
  box-shadow:0 10px 24px rgba(29,50,71,.10);
}
.boost-educator-app.theme-light .teaching-week-day{
  background:#f8fafc;
  border-color:#d9e2ea;
  box-shadow:0 7px 18px rgba(35,57,78,.07);
}
.boost-educator-app.theme-light .teaching-week-meeting{
  background:#fff;
  border-color:#dde5ec;
}
@media(min-width:901px){
  .boost-educator-app{--educator-rail:236px}
  .boost-educator-app .boost-main{
    margin-right:20px;
    margin-left:calc(var(--educator-rail) + 20px);
  }
  .boost-educator-app .educator-shell-context{
    margin-right:20px;
    margin-left:calc(var(--educator-rail) + 20px);
  }
  .boost-educator-sidebar{
    padding:15px 14px;
    box-shadow:6px 0 24px rgba(0,7,18,.12);
    overflow-x:hidden;
  }
  .educator-sidebar-brand{
    min-height:124px;
    margin-bottom:10px;
  }
  .educator-sidebar-brand img{
    width:204px;
    height:118px;
  }
}

.boost-educator-app .class-day-main{
  gap:14px;
  padding-top:18px;
}
.boost-educator-app .class-day-heading{
  min-height:0;
  padding:10px 4px 14px;
}
.boost-educator-app .class-day-heading h1{
  margin:.2rem 0;
  font-size:clamp(2rem,3.35vw,3.15rem);
}
.boost-educator-app .classroom-day-board{
  grid-template-columns:minmax(0,1fr) minmax(390px,.82fr);
  gap:20px;
  padding:clamp(22px,3vw,30px);
  border-radius:18px;
  box-shadow:0 14px 36px rgba(0,0,0,.16);
}
.boost-educator-app .classroom-day-intro h2{
  margin:5px 0 9px;
  font-size:clamp(1.65rem,2.7vw,2.45rem);
}
.boost-educator-app .classroom-day-intro>p:not(.eyebrow){
  font-size:.96rem;
  line-height:1.5;
}
.boost-educator-app .classroom-day-intro .boost-actions{
  margin-top:18px;
}
.boost-educator-app .classroom-day-facts{
  gap:8px;
}
.boost-educator-app .classroom-day-facts div{
  min-height:94px;
  padding:13px 14px;
  border-radius:12px;
}
.boost-educator-app .classroom-day-facts dd{
  margin:4px 0 1px;
  font-size:1.08rem;
}
@media(max-width:1100px){
  .boost-educator-app .classroom-day-board{
    grid-template-columns:1fr;
  }
}
@media(max-width:680px){
  .boost-educator-app .class-day-heading{
    padding-inline:0;
  }
  .boost-educator-app .classroom-day-board{
    padding:18px;
  }
}
@media(max-width:1120px) and (min-width:901px){
  .boost-educator-app .teaching-week-view{
    grid-template-columns:repeat(5,minmax(180px,1fr));
    overflow-x:auto;
    padding-bottom:8px;
  }
}
@media(max-width:1200px) and (min-width:901px){
  .boost-educator-app .teaching-planner-toolbar{
    grid-template-columns:minmax(0,1fr) minmax(150px,.7fr) auto;
  }
  .boost-educator-app .teaching-planner-toolbar>nav:first-child{
    grid-column:1/-1;
    justify-self:start;
  }
}
@media(max-width:900px){
  .boost-educator-app .teaching-planner-heading{
    padding:8px 0;
  }
  .boost-educator-app .teaching-planner-heading .boost-actions{
    width:100%;
  }
  .boost-educator-app .teaching-planner-heading .boost-button{
    flex:1;
  }
  .boost-educator-app .teaching-planner-toolbar{
    position:static;
    grid-template-columns:1fr;
  }
  .boost-educator-app .teaching-week-view{
    grid-template-columns:repeat(5,minmax(230px,78vw));
    overflow-x:auto;
    scroll-snap-type:x proximity;
  }
  .boost-educator-app .teaching-week-day{
    min-height:470px;
    scroll-snap-align:start;
  }
}
.google-calendar-import-form{max-width:none}.google-calendar-actions{display:flex;flex-wrap:wrap;gap:10px}.google-calendar-status-list{display:grid;gap:8px;margin-top:16px}.google-calendar-status-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--boost-border);border-radius:12px;background:var(--boost-surface-raised)}.google-calendar-status-list>article>div{display:grid}.google-calendar-status-list span{color:var(--boost-muted);font-size:.82rem}.theme-light .google-calendar-status-list>article{background:#fff;border-color:#cbd8e5}@media(max-width:650px){.google-calendar-actions,.google-calendar-actions>*{width:100%}.google-calendar-status-list>article{grid-template-columns:1fr}}
.calendar-date-list{display:grid;gap:10px}.calendar-date-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:start;gap:12px;padding:14px;border:1px solid var(--boost-border);border-radius:14px;background:var(--boost-surface-raised)}.calendar-date-list>article>div{display:grid}.calendar-date-list span{color:var(--boost-muted);font-size:.82rem}.calendar-date-list details{min-width:min(620px,60vw)}.calendar-csv-import{margin-top:16px}.theme-light .calendar-date-list>article{background:#fff;border-color:#cbd8e5}@media(max-width:760px){.calendar-date-list>article{grid-template-columns:1fr}.calendar-date-list details{min-width:0}.calendar-date-list button{width:100%}}
.classroom-collaboration-main{display:grid;gap:18px;max-width:none}.collaboration-grant-form{max-width:none}.collaboration-permission-list,.live-source-list{display:grid;gap:10px}.collaboration-permission-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:14px;border:1px solid var(--boost-border);border-radius:14px;background:var(--boost-surface-raised)}.collaboration-permission-list>article>div{display:grid}.collaboration-permission-list span,.live-source-list span{color:var(--boost-muted);font-size:.82rem}.live-source-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.live-source-list>article{padding:18px;border:1px solid var(--boost-border);border-radius:16px;background:var(--boost-surface-raised)}.live-source-list li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--boost-border)}.theme-light .collaboration-permission-list>article,.theme-light .live-source-list>article{background:#fff;border-color:#cbd8e5}@media(max-width:720px){.collaboration-permission-list>article{grid-template-columns:1fr}.collaboration-permission-list button{width:100%}}
.classroom-message-layout{display:grid;grid-template-columns:minmax(18rem,.72fr) minmax(0,1.6fr);gap:1.25rem;align-items:start}.classroom-thread-list{display:grid;gap:.55rem}.classroom-thread-list a{display:grid;gap:.25rem;padding:1rem;border:1px solid var(--boost-border);border-radius:1rem;color:inherit;text-decoration:none}.classroom-thread-list a.active{border-color:var(--program-color,#f6c344);background:color-mix(in srgb,var(--program-color,#f6c344) 12%,transparent)}.classroom-thread-list span,.classroom-message-thread time{color:var(--boost-muted);font-size:.84rem}.classroom-message-thread{display:grid;gap:.8rem;margin-bottom:1rem}.classroom-message-thread article{padding:1rem;border:1px solid var(--boost-border);border-radius:1rem;background:var(--boost-surface)}.classroom-message-thread header{display:flex;justify-content:space-between;gap:1rem}.classroom-message-compose{max-width:none}@media(max-width:850px){.classroom-message-layout{grid-template-columns:1fr}.classroom-message-thread header{display:grid}}
.roster-preview-counts{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;margin-bottom:1rem}.roster-preview-counts article,.roster-run-list article,.roster-identity-list article{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid var(--boost-border);border-radius:1rem}.roster-preview-counts article{display:grid}.roster-preview-counts strong{font-size:1.75rem}.roster-run-list,.roster-identity-list{display:grid;gap:.6rem}.roster-run-list article>div{display:grid}.roster-run-list span,.roster-identity-list span{color:var(--boost-muted)}
.boost-institution-sso{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.65rem;margin:1rem 0}.boost-institution-sso p{grid-column:1/-1;margin:.2rem 0;color:var(--boost-muted);font-size:.86rem}.boost-sso-provider{display:flex;align-items:center;gap:.65rem;padding:.8rem 1rem;border:1px solid var(--boost-border);border-radius:.9rem;color:inherit;text-decoration:none;background:var(--boost-surface)}.boost-sso-provider:hover,.boost-sso-provider:focus-visible{border-color:var(--program-color,#f6c344)}.boost-sso-provider span{display:grid;place-items:center;width:1.8rem;height:1.8rem;border-radius:.55rem;background:var(--program-color,#f6c344);color:#071522;font-weight:900}.boost-login-divider{display:flex;align-items:center;gap:.7rem;margin:1rem 0;color:var(--boost-muted);font-size:.8rem}.boost-login-divider:before,.boost-login-divider:after{content:"";height:1px;background:var(--boost-border);flex:1}
.layout-manage form.boost-form{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:1rem}.layout-manage form.boost-form>label,.layout-manage form.boost-form>.layout-section-editor,.layout-manage form.boost-form>.layout-add-sections,.layout-manage form.boost-form>button{grid-column:1}.layout-live-preview{grid-column:2;grid-row:1/span 8;align-self:start;position:sticky;top:1rem;padding:1rem;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.layout-live-preview>strong{display:block;margin-bottom:.75rem}.layout-live-preview>div{display:grid;gap:.6rem}.layout-live-preview section{min-height:4.6rem;padding:.75rem;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface) 93%,var(--text) 3%)}.layout-live-preview h4{margin:0 0 .4rem}.layout-live-preview p{margin:0;color:var(--muted);font-size:.88rem}.layout-edit-row{position:relative}.layout-remove-section{display:flex!important;align-items:center;gap:.45rem!important;color:var(--muted);font-size:.85rem}.layout-remove-section input{width:auto}.layout-add-sections{margin:0;padding:1rem;border:1px dashed var(--border);border-radius:16px}.layout-add-sections legend{font-weight:850;padding:0 .35rem}.layout-add-sections>p{margin:.1rem 0 .8rem;color:var(--muted)}.layout-new-section-rows{display:grid;gap:.65rem}.layout-new-section{display:grid;grid-template-columns:minmax(12rem,2fr) minmax(8rem,1fr) minmax(10rem,1.25fr) auto;gap:.65rem;align-items:end;padding:.75rem;border-radius:14px;background:color-mix(in srgb,var(--surface) 88%,var(--text) 3%)}.layout-new-remove{min-height:44px;padding:.6rem .8rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--muted);font-weight:750}.layout-add-section{margin-top:.75rem}.compact-form select[multiple]{min-height:7rem;padding:.35rem}.field-help{display:block;margin-top:.35rem;color:var(--muted);font-weight:500;line-height:1.35}
@media(max-width:900px){.layout-manage form.boost-form{grid-template-columns:1fr}.layout-manage form.boost-form>*{grid-column:1!important}.layout-live-preview{grid-row:auto;position:static}.layout-new-section{grid-template-columns:1fr 1fr}.layout-new-section>label:first-child{grid-column:1/-1}}
@media(max-width:620px){.layout-new-section{grid-template-columns:1fr}.layout-new-section>*{grid-column:1!important}}
.classroom-template-edit-main{display:grid;gap:1.25rem;max-width:none}.template-edit-workspace{display:grid;gap:1.25rem}.template-edit-form{max-width:none}.template-class-rules{display:grid;gap:1rem;padding-top:1.25rem;border-top:1px solid var(--boost-border)}.template-rule-list{display:grid;gap:.65rem}.template-rule-list>article{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--boost-border);border-radius:14px;background:var(--boost-surface-raised)}.template-rule-list>article>div{display:grid;gap:.2rem}.template-rule-list span{color:var(--boost-muted);font-size:.86rem}.template-rule-form{max-width:none;padding:1rem;border:1px solid var(--boost-border);border-radius:16px}.template-rule-form select[multiple]{min-height:8rem}.template-weekdays{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin:0}.template-weekdays label{display:flex;align-items:center;gap:.45rem;padding:.65rem;border:1px solid var(--boost-border);border-radius:10px}.template-weekdays input{width:auto}.template-retire-form{padding-top:.75rem;border-top:1px solid var(--boost-border)}
@media(max-width:700px){.template-rule-list>article{align-items:stretch;flex-direction:column}.template-rule-list button{width:100%}.template-weekdays{grid-template-columns:repeat(2,minmax(0,1fr))}}
.classroom-onboarding-progress{align-self:center;display:grid;min-width:9rem;padding:1.1rem 1.35rem;border:1px solid var(--boost-border,#31475d);border-radius:1.25rem;background:rgba(5,20,32,.38);text-align:center}
.classroom-onboarding-progress strong{font-size:1.65rem;line-height:1}
.classroom-onboarding-progress span{margin-top:.35rem;color:var(--boost-muted,#9db0c3);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem}
.theme-light .classroom-onboarding-progress{background:#fff}
@media(max-width:700px){.classroom-onboarding-progress{width:100%}}
.demo-guided-steps{list-style:none;margin:0;padding:0;display:grid;gap:14px}.demo-guided-steps li{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px;border:1px solid var(--boost-line);border-radius:18px;background:var(--boost-card)}.demo-guided-steps li>span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--boost-accent);color:#10243a;font-weight:900}.demo-guided-steps h3,.demo-guided-steps p{margin:0}.demo-guided-steps p{margin-top:4px}@media(max-width:700px){.demo-guided-steps li{grid-template-columns:40px minmax(0,1fr)}.demo-guided-steps .boost-button{grid-column:1/-1;width:100%}}

/* Fluid application contract: every program route uses the available viewport. */
.boost-app{
  overflow-x:clip;
}
.boost-educator-sidebar{
  box-sizing:border-box;
}
.boost-app .boost-shell,
.boost-app .boost-main{
  box-sizing:border-box;
  width:auto;
  max-width:none;
  margin-right:24px;
  margin-left:24px;
}
.boost-app .boost-main{
  min-width:0;
}
.boost-app .boost-main>*,
.boost-app .boost-main .workspace-section,
.boost-app .boost-main .office-card,
.boost-app .boost-main .boost-card,
.boost-app .boost-main .boost-panel{
  box-sizing:border-box;
  min-width:0;
  max-width:none;
}
.boost-app .boost-main>.workspace-section,
.boost-app .boost-main>.office-card,
.boost-app .boost-main>.boost-panel,
.boost-app .boost-main>.boost-hero,
.boost-app .boost-main>.office-heading,
.boost-app .boost-main>.classroom-planning-tabs{
  width:100%;
}
.boost-app .boost-main details,
.boost-app .boost-main details>form,
.boost-app .boost-main form.boost-form,
.boost-app .boost-main fieldset{
  box-sizing:border-box;
  min-width:0;
  max-width:none;
}
.boost-app .boost-main details>form,
.boost-app .boost-main form.boost-form{
  width:100%;
}
.boost-app .boost-main input,
.boost-app .boost-main select,
.boost-app .boost-main textarea{
  box-sizing:border-box;
  min-width:0;
  max-width:100%;
}
.boost-app .boost-main label>input,
.boost-app .boost-main label>select,
.boost-app .boost-main label>textarea{
  width:100%;
}
.administration-main,
.administration-getting-started-main,
.administration-shared-views-main,
.calendar-events-main,
.school-calendar-main,
.consolidated-main{
  width:auto!important;
  max-width:none!important;
}
.administration-main .classroom-planning-tabs{
  width:100%;
}
.administration-main .classroom-planning-tabs a{
  flex:1 1 150px;
  text-align:center;
}
.administration-main .classroom-planning-form[open],
.administration-main .boost-card>details[open]{
  width:100%;
  padding:18px;
  border:1px solid var(--boost-line);
  border-radius:14px;
  background:var(--boost-surface-soft);
}
.administration-main .classroom-planning-form:not(.lesson-layout-builder):not(.lesson-template-builder)>form{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));
}
.administration-main .administration-invite-form{
  grid-template-columns:minmax(260px,1fr) minmax(320px,1.5fr) auto;
  align-items:end;
}
.boost-app.theme-light .administration-main .classroom-planning-form[open],
.boost-app.theme-light .administration-main .boost-card>details[open]{
  border-color:#cbd8e5;
  background:#f5f9fd;
}
.boost-app.theme-light .demo-start-main>.workspace-hero h1,
.boost-app.theme-light .demo-start-main>.workspace-hero .lede,
.boost-app.theme-light .demo-start-main>.workspace-hero strong{
  color:#fff;
}
.boost-app.theme-light .demo-start-main>.workspace-section h2,
.boost-app.theme-light .demo-start-main>.workspace-section h3{
  color:#10263c;
}
.boost-app.theme-light .demo-start-main>.workspace-section>div>p,
.boost-app.theme-light .demo-start-main .demo-guided-steps p{
  color:#536f88;
}
@media(min-width:1200px){
  .boost-educator-app{
    --educator-rail:272px;
  }
  .boost-educator-sidebar{
    padding-right:16px;
    padding-left:16px;
  }
  .educator-sidebar-brand{
    min-height:136px;
  }
  .educator-sidebar-brand img{
    width:232px;
    height:128px;
  }
  .educator-sidebar-label{
    padding:9px 13px 7px;
    font-size:.88rem;
  }
  .educator-tool-list{
    gap:4px;
  }
  .educator-tool-list a,
  .educator-sidebar-bottom a,
  .educator-sidebar-bottom button{
    grid-template-columns:34px minmax(0,1fr);
    gap:11px;
    min-height:52px;
    padding:10px 12px;
  }
  .educator-tool-list a>span,
  .educator-sidebar-bottom a>span{
    width:34px;
    font-size:1.12rem;
  }
  .educator-tool-list strong,
  .educator-sidebar-bottom strong,
  .educator-sidebar-bottom button strong{
    overflow:visible;
    font-size:1rem;
    line-height:1.22;
    white-space:normal;
  }
}
@media(min-width:901px) and (max-width:1199px){
  .boost-educator-app{
    --educator-rail:244px;
  }
  .educator-tool-list strong,
  .educator-sidebar-bottom strong,
  .educator-sidebar-bottom button strong{
    font-size:.92rem;
    white-space:normal;
  }
}
@media(min-width:901px){
  .boost-educator-app .boost-main{
    width:auto;
    max-width:none;
    margin-right:20px;
    margin-left:calc(var(--educator-rail) + 20px);
  }
}
@media(max-width:900px){
  .boost-app .boost-shell,
  .boost-app .boost-main{
    margin-right:14px;
    margin-left:14px;
  }
  .boost-educator-app .boost-main{
    margin-right:14px;
    margin-left:calc(var(--educator-rail) + 14px);
  }
  .administration-main .administration-invite-form{
    grid-template-columns:1fr;
  }
}
@media(max-width:560px){
  .boost-app .boost-shell,
  .boost-app .boost-main{
    margin-right:10px;
    margin-left:10px;
  }
  .administration-main .classroom-planning-form[open],
  .administration-main .boost-card>details[open]{
    padding:14px;
  }
}
@media(max-width:680px){
  .boost-educator-app .boost-main{
    width:calc(100% - 24px);
    margin-right:auto;
    margin-left:auto;
  }
}

/* Bottom rail product signature: follows Account and the Light/Dark control. */
@media(min-width:901px){
  .educator-sidebar-brand{
    flex:0 0 auto;
    min-height:92px;
    margin:10px 0 0;
    padding:12px 6px 2px;
    border-top:1px solid var(--boost-line);
  }
  .educator-sidebar-brand img{
    width:min(170px,100%);
    height:82px;
  }
}
@media(min-width:1200px){
  .educator-sidebar-brand{
    min-height:104px;
  }
  .educator-sidebar-brand img{
    width:min(190px,100%);
    height:94px;
  }
}

/* Shared publisher signature for every BOOST! application page. */
.boost-credit-footer{
  display:block !important;
  box-sizing:border-box;
  width:auto;
  margin:34px 20px 18px;
  padding:18px 12px;
  border-top:1px solid var(--boost-line);
  color:var(--boost-muted);
  text-align:center;
  font-size:12px;
  line-height:1.4;
}
.boost-educator-app > footer.boost-credit-footer,
.boost-booster-app > footer.boost-credit-footer{
  display:block !important;
}
.boost-credit-footer p,
.boost-credit-footer address{
  margin:0;
}
.boost-credit-footer address{
  color:inherit;
  font-style:normal;
}
.boost-credit-logos{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  margin:7px 0 8px;
}
.boost-credit-logos a{
  display:grid;
  min-width:44px;
  min-height:44px;
  place-items:center;
  border-radius:10px;
}
.boost-credit-logos a:focus-visible{
  outline:3px solid var(--boost-accent);
  outline-offset:3px;
}
.boost-credit-logos .boost-credit-sbo{
  box-sizing:border-box;
  padding:7px 9px;
  background:#0b1b2a;
}
.boost-credit-logos img{
  display:block;
  width:68px;
  max-width:68px;
  height:auto;
  max-height:44px;
  object-fit:contain;
}
.boost-credit-logos a:last-child img{
  width:68px;
  max-width:68px;
  height:auto;
  max-height:44px;
}
@media(min-width:901px){
  .boost-educator-app .boost-credit-footer{
    margin-left:calc(var(--educator-rail) + 20px);
  }
}
@media(max-width:680px){
  .boost-credit-footer{
    margin:26px 12px 88px;
    font-size:11px;
  }
}

/* Teaching-team creation uses the full workspace row. */
.classroom-teaching-team-grid > .teaching-team-create{
  grid-column:1 / -1;
  width:100%;
  max-width:none;
}
.teaching-team-create .boost-form,
.teaching-team-create label,
.teaching-team-create input{
  width:100%;
  max-width:none;
}

/* Empty Messages state gives the composer the whole workspace. */
.classroom-message-layout:has(> .workspace-section:first-child .office-empty){
  grid-template-columns:minmax(0,1fr);
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) > .workspace-section:first-child{
  display:none;
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) > .workspace-section:last-child{
  width:100%;
  max-width:none;
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose>fieldset{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:8px 14px;
  padding:14px 16px;
  border:1px solid var(--boost-border);
  border-radius:14px;
  background:var(--boost-surface-raised);
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose>label:nth-of-type(1){
  grid-column:1/-1;
  grid-row:auto;
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose>label:nth-of-type(2){
  grid-column:1/-1;
  grid-row:auto;
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose>label:nth-of-type(3){
  grid-column:1;
  grid-row:auto;
  align-self:end;
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose>.boost-button{
  grid-column:2;
  align-self:end;
  justify-self:end;
  min-width:150px;
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose>fieldset .lesson-list-choice{
  display:grid;
  grid-template-columns:20px minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-height:46px;
  margin:0;
  padding:9px 11px;
  border:1px solid var(--boost-border);
  border-radius:11px;
  background:color-mix(in srgb,var(--boost-surface) 82%,transparent);
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose>fieldset .lesson-list-choice input{
  width:18px;
  height:18px;
  margin:0;
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose>fieldset .lesson-list-choice span{
  min-width:0;
  overflow-wrap:anywhere;
  font-weight:750;
  line-height:1.25;
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose input[name="subject"]{
  min-height:48px;
  height:48px;
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose textarea[name="body"]{
  min-height:240px;
  resize:vertical;
}
.classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose input[type="file"]{
  min-height:48px;
  padding:9px 11px;
}
.theme-light .classroom-message-layout .section-heading h2{
  color:#10263f;
}
.lesson-bank-entry,
.administration-shared-list-entry{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  width:100%;
  padding:18px 20px;
  border:1px solid var(--boost-border);
  border-radius:16px;
  background:color-mix(in srgb,var(--program-color,#f6c344) 8%,var(--boost-surface));
  color:var(--boost-text);
  text-decoration:none;
}
.lesson-bank-entry span,
.administration-shared-list-entry span{
  display:grid;
  gap:3px;
}
.lesson-bank-entry small,
.administration-shared-list-entry small{
  color:var(--program-color,#f6c344);
  font-weight:850;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.lesson-bank-entry strong,
.administration-shared-list-entry strong{
  font-size:1.15rem;
}
.lesson-bank-entry em,
.administration-shared-list-entry em{
  color:var(--boost-muted);
  font-style:normal;
}
.lesson-bank-entry b,
.administration-shared-list-entry b{
  font-size:1.5rem;
}

/* One coherent lesson canvas on wide screens. */
@media(min-width:1100px){
  .class-plan-builder>.lesson-layout-editor{order:2}
  .class-plan-builder>.class-plan-sections{order:3}
  .lesson-layout-sections{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lesson-layout-sections>label:last-child:nth-child(odd){grid-column:auto}
  .class-plan-sections{
    grid-template-columns:minmax(0,1fr);
    padding-top:0;
  }
  .class-plan-sections>.section-heading{grid-column:1/-1}
  .class-plan-sections:before{content:none}
  .class-plan-sections fieldset{
    grid-template-columns:minmax(230px,.36fr) minmax(0,1fr);
    align-items:start;
    padding:20px;
  }
  .class-plan-sections fieldset input,
  .class-plan-sections fieldset textarea{
    min-width:0;
  }
  .class-plan-sections fieldset textarea{
    min-height:96px;
  }
}
@media(max-width:760px){
  .classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose{
    grid-template-columns:1fr;
  }
  .classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose>*{
    grid-column:1!important;
    grid-row:auto!important;
  }
  .classroom-message-layout:has(> .workspace-section:first-child .office-empty) .classroom-message-compose>.boost-button{
    width:100%;
  }
}

/* Daily-work hierarchy: primary work stays visible; optional tools open on demand. */
.class-tools-panel{width:100%;scroll-margin-top:92px}
.class-tools-panel>summary,
.class-plan-disclosure>summary{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  min-height:72px;cursor:pointer;list-style:none;
}
.class-tools-panel>summary::-webkit-details-marker,
.class-plan-disclosure>summary::-webkit-details-marker{display:none}
.class-tools-panel>summary span,
.class-plan-disclosure>summary span{display:grid;gap:4px}
.class-tools-panel>summary strong,
.class-plan-disclosure>summary strong{font-size:1.18rem;color:var(--boost-text)}
.class-tools-panel>summary small,
.class-plan-disclosure>summary small{color:var(--boost-muted)}
.class-tools-panel>summary b,
.class-plan-disclosure>summary b{
  flex:0 0 auto;
  color:var(--boost-blue);
  white-space:nowrap;
  overflow-wrap:normal;
}
.class-tools-panel>summary b{
  font-size:0;
}
.class-tools-panel>summary b::after{
  content:"Open";
  font-size:.9rem;
}
.class-tools-panel[open]>summary b::after{
  content:"Close";
}
.class-tools-panel[open]>summary,
.class-plan-disclosure[open]>summary{
  margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--boost-border);
}
@media(max-width:720px){
  .class-day-phase-nav{
    padding:4px;
  }
  .class-day-phase-nav a{
    min-height:38px;
    padding:6px 10px;
  }
  .class-day-main .class-tools-panel{
    padding:18px;
  }
  .class-tools-panel>summary{
    align-items:flex-start;
    gap:12px;
    min-height:0;
  }
  .class-tools-panel>summary span{
    min-width:0;
  }
  .class-tools-panel>summary small{
    font-size:.88rem;
    line-height:1.4;
  }
  .class-tools-panel[open]>summary{
    margin-bottom:12px;
    padding-bottom:12px;
  }
  .class-day-main .music-tool-grid{
    gap:10px;
  }
  .class-day-main .music-tool-grid section,
  .class-day-main .music-tool-grid section:last-child{
    min-height:0;
    gap:8px;
    padding:14px;
  }
  .class-day-main .music-tool-grid .boost-button{
    width:100%;
    min-height:42px;
  }
  .class-day-main .music-tool-grid h3{
    font-size:1.2rem;
  }
  .class-day-main .tuner-note{
    font-size:2rem;
  }
}
@media(min-width:721px) and (max-width:900px){
  .classroom-day-grid .music-tool-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .classroom-day-grid .music-tool-grid section:last-child{
    grid-column:1/-1;
  }
}
.class-review-disclosure{min-width:min(100%,220px)}
.class-review-disclosure>summary{
  display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;
  border:1px solid var(--boost-border);border-radius:11px;color:var(--boost-text);
  background:var(--boost-surface-raised);font-weight:850;list-style:none;cursor:pointer;
}
.class-review-disclosure>summary::-webkit-details-marker{display:none}
.class-review-disclosure>summary:focus-visible{outline:3px solid var(--boost-focus,#61aef5);outline-offset:3px}
.class-review-disclosure[open]{width:min(100%,430px)}
.class-review-disclosure[open]>summary{border-color:var(--program-color,#61aef5)}
.class-review-disclosure .classroom-plan-submit{
  display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px;margin-top:10px;
  padding:14px;border:1px solid var(--boost-border);border-radius:13px;background:var(--boost-surface);
}
.class-review-disclosure .classroom-plan-submit label{min-width:0}
.class-review-disclosure .classroom-plan-submit input{width:100%;min-width:0}
.class-review-disclosure .classroom-plan-submit small{grid-column:1/-1}
.class-day-notice{
  position:fixed;right:24px;bottom:24px;z-index:60;width:min(420px,calc(100vw - 48px));
  margin:0;padding:13px 16px;border-color:rgba(97,174,245,.55);
  background:color-mix(in srgb,var(--boost-surface) 94%,transparent);
  box-shadow:0 16px 40px rgba(0,0,0,.28);backdrop-filter:blur(16px);
}
@media(max-width:680px){
  .class-review-disclosure,.class-review-disclosure[open]{width:100%}
  .class-review-disclosure .classroom-plan-submit{grid-template-columns:1fr}
  .class-review-disclosure .classroom-plan-submit .boost-button{width:100%}
  .class-day-notice{right:12px;bottom:76px;width:calc(100vw - 24px)}
}
.class-plan-sections{grid-template-columns:minmax(0,1fr)}
.class-plan-support{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
.class-plan-support .class-plan-disclosure{
  min-width:0;padding:0 18px;border:1px solid var(--boost-border);
  border-radius:16px;background:var(--boost-surface);
}
.class-plan-support .class-plan-disclosure>div{padding-bottom:18px}
.class-plan-save{
  position:sticky;bottom:12px;z-index:8;display:flex;align-items:center;gap:14px;
  width:max-content;max-width:100%;margin-left:auto;padding:10px;border:1px solid var(--boost-border);
  border-radius:18px;background:color-mix(in srgb,var(--boost-surface) 92%,transparent);
  box-shadow:0 12px 30px rgba(0,0,0,.18);backdrop-filter:blur(14px);
}
.class-plan-save small{color:var(--boost-muted)}
.administration-plan-shortcuts{display:flex;flex-wrap:wrap;gap:8px}
.administration-plan-list .classroom-review-forms form{align-content:start}
.administration-plan-list .classroom-review-forms .boost-button{width:auto;min-height:44px;justify-self:start;align-self:start}
.administration-plan-list details>summary:focus-visible{outline:3px solid var(--program-color);outline-offset:3px}
.administration-plan-shortcuts a{
  padding:10px 14px;border:1px solid var(--boost-border);border-radius:999px;
  color:var(--boost-text);text-decoration:none;font-weight:800;
}
.administration-plan-filters{
  position:sticky;top:10px;z-index:12;padding:16px;border:1px solid var(--boost-border);
  border-radius:18px;background:color-mix(in srgb,var(--boost-surface) 94%,transparent);
  box-shadow:0 12px 30px rgba(0,0,0,.12);backdrop-filter:blur(16px);
}
.office-task{color:inherit;text-decoration:none}
.office-task>b{margin-left:auto;color:var(--boost-blue)}
.working-task:target{outline:3px solid var(--boost-blue);outline-offset:4px}
@media(max-width:760px){
  .class-plan-support{grid-template-columns:1fr}
  .class-plan-save{width:100%;justify-content:space-between}
  .class-plan-save .boost-button{flex:1}
  .administration-plan-filters{position:static}
}
@media(min-width:761px){
  .class-plan-sections fieldset{
    grid-template-columns:minmax(230px,.36fr) minmax(0,1fr);
    align-items:start;
    padding:20px;
  }
  .class-plan-sections fieldset input,
  .class-plan-sections fieldset textarea{
    min-width:0;
  }
  .class-plan-sections fieldset textarea{
    min-height:96px;
  }
}

/* Collaboration results must be unmistakable after an action. */
.classroom-teaching-team-grid{
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
}
.teaching-team-card{
  scroll-margin-top:24px;
}
.teaching-team-card.is-new,
.teaching-team-card:target{
  border-color:var(--program-color,#f6c344);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--program-color,#f6c344) 24%,transparent);
}
.teaching-team-add-member{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid var(--boost-border);
}

/*
 * Production workspace normalization
 * One quiet visual system for Classroom, Educator, Administration, and Booster Office.
 */
.boost-app {
  --boost-bg: #111820;
  --boost-bg-deep: #0c1218;
  --boost-surface: #18222c;
  --boost-surface-raised: #202c37;
  --boost-surface-soft: #273541;
  --boost-line: #344553;
  --boost-text: #f3f6f8;
  --boost-text-muted: #b2c0ca;
  --boost-blue: #78add0;
  --boost-blue-strong: #5b94bb;
  --boost-gold: #d8ac4e;
  --boost-shadow: 0 8px 24px rgba(0, 0, 0, .18);
  background: var(--boost-bg);
}

.boost-app.theme-light {
  --boost-bg: #f1f3f4;
  --boost-bg-deep: #f7f8f8;
  --boost-surface: #ffffff;
  --boost-surface-raised: #f7f8f8;
  --boost-surface-soft: #edf0f2;
  --boost-line: #d5dce1;
  --boost-text: #1d2b35;
  --boost-text-muted: #5b6c78;
  --boost-blue: #356f95;
  --boost-blue-strong: #285a7a;
  --boost-gold: #8b6a24;
  --boost-shadow: 0 6px 20px rgba(28, 42, 52, .08);
  background: var(--boost-bg);
}

.boost-app *,
.boost-app *::before,
.boost-app *::after {
  box-sizing: border-box;
}

.boost-app main,
.boost-app section,
.boost-app article,
.boost-app form,
.boost-app fieldset,
.boost-app label,
.boost-app nav,
.boost-app div {
  min-width: 0;
}

.boost-app img,
.boost-app video,
.boost-app iframe {
  max-width: 100%;
}

.boost-app:not(.boost-educator-app) .office-card,
.boost-app .boost-card,
.boost-app .boost-panel,
.boost-app .panel,
.boost-app .card,
.boost-app .workspace-section,
.boost-app .portal-welcome,
.boost-app .identity-heading,
.boost-app .portal-programs,
.boost-booster-app .office-card {
  border: 1px solid var(--boost-line);
  border-radius: 16px;
  color: var(--boost-text);
  background: var(--boost-surface);
  box-shadow: var(--boost-shadow);
}

.boost-app .workspace-section {
  padding: clamp(18px, 2.5vw, 28px);
}

.boost-app .office-card,
.boost-app .boost-card {
  padding: clamp(18px, 2.2vw, 24px);
}

.boost-app .office-heading h1,
.boost-app .portal-welcome h1,
.boost-app .identity-heading h1 {
  max-width: none;
  color: var(--boost-text);
  font-family: inherit;
  font-size: clamp(2rem, 4vw, 3.4rem);
  line-height: 1.04;
  letter-spacing: -.04em;
  overflow-wrap: anywhere;
}

.boost-app .office-card h2,
.boost-app .office-card h3,
.boost-app .boost-card h2,
.boost-app .boost-card h3,
.boost-app .section-heading h2,
.boost-app .section-heading h3 {
  color: var(--boost-text);
  font-family: inherit;
  line-height: 1.15;
  letter-spacing: -.025em;
}

.boost-app .office-heading p,
.boost-app .office-card p,
.boost-app .boost-card p,
.boost-app .portal-welcome p,
.boost-app .identity-heading p,
.boost-app small {
  color: var(--boost-text-muted);
}

.boost-app .eyebrow {
  color: var(--boost-text-muted);
  letter-spacing: .1em;
}

.boost-app .boost-button,
.boost-app a.boost-button,
.boost-app button:not(.boost-theme-toggle) {
  width: auto;
  min-width: 0;
  min-height: 44px;
  padding: 10px 16px;
  border: 1px solid var(--boost-line);
  border-radius: 10px;
  color: var(--boost-text);
  background: var(--boost-surface-raised);
  box-shadow: none;
  font: inherit;
  font-size: .95rem;
  font-weight: 760;
  line-height: 1.2;
  text-align: center;
  white-space: normal;
}

.boost-app .boost-button.primary,
.boost-app button.primary,
.boost-app button[type="submit"]:not(.secondary) {
  border-color: var(--boost-blue-strong);
  color: #ffffff;
  background: var(--boost-blue-strong);
}

.boost-app.theme-light .boost-button.primary,
.boost-app.theme-light button.primary,
.boost-app.theme-light button[type="submit"]:not(.secondary) {
  color: #ffffff;
}

.boost-app .boost-button.secondary,
.boost-app button.secondary {
  border-color: var(--boost-line);
  color: var(--boost-text);
  background: var(--boost-surface-raised);
}

.boost-app .boost-button:hover,
.boost-app button:not(.boost-theme-toggle):hover {
  border-color: var(--boost-blue);
  filter: none;
}

.boost-app input,
.boost-app select,
.boost-app textarea {
  width: 100%;
  max-width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--boost-line);
  border-radius: 9px;
  color: var(--boost-text);
  background: var(--boost-surface-raised);
  font: inherit;
}

.boost-app textarea {
  min-height: 112px;
}

/*
 * Native selection controls are not text fields.
 * Keep this after the shared form rules so checkboxes and radios cannot inherit
 * the full-width, 44px text-input treatment on any BOOST! working page.
 */
.boost-app input[type="checkbox"],
.boost-app input[type="radio"] {
  box-sizing: border-box;
  width: 18px;
  max-width: 18px;
  min-width: 18px;
  height: 18px;
  min-height: 18px;
  padding: 0;
  border-radius: 4px;
  accent-color: var(--boost-blue);
}

.boost-app input[type="radio"] {
  border-radius: 50%;
}

.boost-app .lesson-list-choice {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: start;
  gap: 10px !important;
  min-width: 0;
  padding: 9px 10px !important;
  border: 1px solid var(--boost-line) !important;
  border-radius: 10px;
  color: var(--boost-text);
  background: var(--boost-surface-raised) !important;
  cursor: pointer;
  font-size: 16px;
  font-weight: 650;
  letter-spacing: normal;
  line-height: 1.35;
  text-transform: none;
}

.boost-app .lesson-list-choice:hover,
.boost-app .lesson-list-choice:focus-within {
  border-color: var(--boost-blue) !important;
  background: color-mix(in srgb, var(--boost-blue) 8%, var(--boost-surface-raised)) !important;
}

.boost-app .lesson-list-choice:has(input:checked) {
  border-color: var(--boost-blue) !important;
  background: color-mix(in srgb, var(--boost-blue) 14%, var(--boost-surface-raised)) !important;
}

.boost-app .lesson-list-choice > input[type="checkbox"],
.boost-app .lesson-list-choice > input[type="radio"] {
  margin: 2px 0 0;
}

.boost-app .lesson-list-choice > span {
  min-width: 0;
  overflow-wrap: normal;
  word-break: normal;
  white-space: normal;
  color: inherit;
  font: inherit;
  letter-spacing: normal;
  line-height: inherit;
  text-transform: none;
}

/*
 * The lesson finder is a working drawer, not a cramped floating dialog.
 * Opening either planner control expands the toolbar and keeps the planning
 * surface in the normal document flow.
 */
.boost-educator-app .teaching-planner-toolbar:has(.planner-filter-panel[open]) {
  grid-template-columns: auto auto minmax(150px, 1fr) minmax(130px, .7fr);
}

.boost-educator-app .planner-filter-panel[open] {
  grid-column: 1 / -1;
  width: 100%;
}

.boost-educator-app .planner-filter-panel[open] > summary {
  width: 100%;
  border-color: var(--boost-blue);
  background: color-mix(in srgb, var(--boost-blue) 10%, var(--boost-surface-raised));
}

.boost-educator-app .planner-filter-form {
  position: static;
  width: 100%;
  max-height: none;
  margin-top: 10px;
  overflow: visible;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  padding: clamp(16px, 2vw, 24px);
  border-radius: 14px;
  box-shadow: none;
}

.boost-educator-app .planner-filter-form > fieldset {
  min-width: 0;
  margin: 0;
  padding: 14px;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr));
  align-content: start;
  gap: 9px;
  border: 1px solid var(--boost-line);
  border-radius: 12px;
}

.boost-educator-app .planner-filter-form > fieldset legend {
  padding: 0 6px;
  color: var(--boost-text);
  font-size: 17px;
  font-weight: 800;
  letter-spacing: normal;
  text-transform: none;
}

.boost-educator-app .planner-filter-form .boost-actions {
  grid-column: 1 / -1;
}

@media (max-width: 760px) {
  .boost-educator-app .teaching-planner-toolbar,
  .boost-educator-app .teaching-planner-toolbar:has(.planner-filter-panel[open]),
  .boost-educator-app .planner-filter-form {
    grid-template-columns: 1fr;
  }

  .boost-educator-app .planner-filter-panel,
  .boost-educator-app .planner-filter-panel[open],
  .boost-educator-app .planner-filter-form > fieldset,
  .boost-educator-app .planner-filter-form .boost-actions {
    grid-column: 1;
  }

  .boost-educator-app .planner-filter-form {
    padding: 14px;
  }

  .boost-educator-app .planner-filter-form > fieldset {
    grid-template-columns: 1fr;
  }
}

.boost-app .boost-global-nav a.active,
.boost-app .office-nav a:hover,
.boost-app .assistant-tabs a:hover,
.boost-app .assistant-tabs a.active,
.boost-app .boost-nav-more > summary:hover,
.boost-app .boost-nav-more > summary.active,
.boost-app .boost-nav-daily > summary:hover,
.boost-app .boost-nav-daily > summary.active {
  color: var(--boost-text);
  background: var(--boost-surface-soft);
  box-shadow: inset 3px 0 0 var(--boost-blue);
}

.boost-app .office-count,
.boost-app .connector-status,
.boost-app .dashboard-kicker {
  color: var(--boost-text-muted);
  background: var(--boost-surface-soft);
}

.boost-app dialog {
  max-width: calc(100vw - 24px);
  max-height: calc(100dvh - 24px);
  border-color: var(--boost-line);
  border-radius: 16px;
  color: var(--boost-text);
  background: var(--boost-surface);
}

@media (max-width: 700px) {
  .boost-app {
    font-size: 17px;
  }

  .boost-booster-app .boost-global-nav {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 6px;
    margin: 8px 10px 0;
    padding: 8px;
    overflow-x: auto;
    border-radius: 14px;
    -webkit-overflow-scrolling: touch;
  }

  .boost-booster-app .boost-global-nav > a:not(.boost-app-brand),
  .boost-booster-app .boost-nav-more,
  .boost-booster-app .boost-theme-toggle {
    flex: 0 0 auto;
    width: auto;
    min-width: 0;
    min-height: 42px;
    margin: 0;
    padding: 9px 12px;
    text-align: center;
  }

  .boost-booster-app .boost-app-brand {
    position: static;
    flex: 0 0 78px;
    min-width: 78px;
    padding-inline: 6px !important;
  }

  .boost-booster-app .boost-app-brand img {
    width: 68px;
    height: 38px;
  }

  .boost-app main.boost-main,
  .boost-booster-app main.boost-main {
    width: calc(100% - 24px) !important;
    margin-inline: 12px !important;
    overflow-x: clip;
  }

  .boost-app .office-heading,
  .boost-app .portal-welcome,
  .boost-app .identity-heading,
  .boost-app .office-card-head {
    align-items: stretch;
    flex-direction: column;
    gap: 14px;
  }

  .boost-app .office-heading {
    padding: 20px 0;
  }

  .boost-app .office-heading h1,
  .boost-app .portal-welcome h1,
  .boost-app .identity-heading h1 {
    font-size: clamp(2rem, 10vw, 2.75rem);
  }

  .boost-app .boost-actions,
  .boost-app .office-heading-actions {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .boost-app .boost-actions > *,
  .boost-app .office-heading-actions > *,
  .boost-app form > .boost-button:last-child {
    width: 100%;
  }

  .boost-app .boost-grid,
  .boost-app .office-grid,
  .boost-app .reports-grid,
  .boost-app .classroom-teaching-team-grid {
    grid-template-columns: 1fr;
  }

  .boost-app table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/*
 * iPhone safeguard: Safari's "Request Desktop Website" can expose a desktop
 * layout viewport. Physical phone dimensions still activate the touch shell.
 */
body.boost-phone.boost-educator-app {
  --educator-rail: 0px;
}

body.boost-phone.boost-educator-app .boost-main {
  width: calc(100% - 24px);
  margin: 0 auto;
  padding-bottom: calc(112px + env(safe-area-inset-bottom));
  overflow-x: clip;
}

body.boost-phone .educator-shell-context {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4px;
  margin: 0 12px;
  padding: 10px 0;
}

body.boost-phone .educator-shell-context span:first-child,
body.boost-phone .educator-sidebar-brand,
body.boost-phone .educator-sidebar-label,
body.boost-phone .educator-add-tools,
body.boost-phone .educator-booster-link,
body.boost-phone .educator-sidebar-bottom {
  display: none;
}

body.boost-phone .educator-shell-context strong {
  max-width: 100%;
}

body.boost-phone .boost-educator-sidebar {
  inset: auto 8px calc(8px + env(safe-area-inset-bottom));
  width: auto;
  height: 76px;
  padding: 6px 8px;
  border: 1px solid var(--boost-line);
  border-radius: 18px;
  overflow: visible;
}

@media (max-height: 420px) {
  body.boost-phone .boost-educator-sidebar {
    position: static;
    width: calc(100% - 16px);
    height: auto;
    margin: 8px;
  }
}

body.boost-phone .educator-tool-list {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 4px;
}

body.boost-phone .educator-tool-list a {
  display: none;
  min-width: 0;
  min-height: 62px;
  padding-inline: 1px;
}

body.boost-phone .educator-tool-list a:nth-child(-n+5) {
  display: grid;
}

body.boost-phone .educator-tool-list strong {
  max-width: 100%;
  font-size: .54rem;
  letter-spacing: -.01em;
  white-space: nowrap;
}

body.boost-phone.boost-booster-app .boost-global-nav {
  display: flex;
  flex-wrap: nowrap;
  gap: 6px;
  margin: 8px 10px 0;
  padding: 8px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Classroom task navigation: seven recognizable jobs, with the existing
   specialist pages kept one level down instead of competing in one long rail. */
.educator-tool-group {
  margin: 0;
}
.educator-phone-only {
  display: none;
}
.educator-tool-group > summary {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  padding: 9px 11px;
  border-radius: 11px;
  color: var(--boost-text-muted);
  cursor: pointer;
  list-style: none;
}
.educator-tool-group > summary::-webkit-details-marker {
  display: none;
}
.educator-tool-group > summary:hover,
.educator-tool-group > summary.active {
  color: #fff;
  background: #356f95;
}
.educator-tool-group > summary > span:first-child {
  display: grid;
  place-items: center;
  width: 30px;
  font-size: 1.02rem;
}
.educator-tool-group > summary strong {
  min-width: 0;
  font-size: .86rem;
  line-height: 1.2;
}
.educator-tool-chevron {
  transition: transform .16s ease;
}
.educator-tool-group[open] > summary .educator-tool-chevron {
  transform: rotate(90deg);
}
.educator-tool-group > div {
  display: grid;
  gap: 2px;
  margin: 3px 0 7px 15px;
  padding-left: 8px;
  border-left: 1px solid var(--boost-line);
}
.educator-tool-group > div > a {
  min-height: 40px;
  padding-block: 7px;
}
.educator-tool-group > div > a strong {
  font-size: .8rem;
}

body.boost-phone .educator-tool-list {
  position: relative;
}
body.boost-phone .educator-workflow-spine {
  display: none;
}
body.boost-phone .educator-tool-list > a,
body.boost-phone .educator-tool-group {
  display: block;
  min-width: 0;
}
body.boost-phone .educator-tool-list > a:first-child,
body.boost-phone .educator-tool-group > summary {
  display: grid;
  grid-template-columns: 1fr;
  place-items: center;
  gap: 2px;
  min-height: 62px;
  padding: 4px 1px;
  text-align: center;
}
body.boost-phone .educator-tool-group > summary > span:first-child {
  width: auto;
}
body.boost-phone .educator-tool-group > summary strong {
  font-size: .54rem;
  white-space: nowrap;
}
body.boost-phone .educator-tool-chevron {
  display: none;
}
body.boost-phone .educator-tool-group-library,
body.boost-phone .educator-tool-group-communicate {
  display: none;
}
body.boost-phone .educator-tool-group[open] > div,
body.boost-phone .educator-tool-group[open] .educator-phone-only {
  display: grid;
}
body.boost-phone .educator-tool-group > div {
  position: fixed;
  right: 10px;
  bottom: calc(92px + env(safe-area-inset-bottom));
  left: 10px;
  z-index: 120;
  max-height: min(55vh, 430px);
  margin: 0;
  padding: 10px;
  border: 1px solid var(--boost-line);
  border-radius: 16px;
  background: var(--boost-surface);
  box-shadow: var(--boost-shadow);
  overflow-y: auto;
}
body.boost-phone .educator-tool-group > div > a,
body.boost-phone .educator-tool-group > div > button {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  min-height: 48px;
  padding: 8px 10px;
  text-align: left;
}
body.boost-phone .educator-tool-group > div > a strong,
body.boost-phone .educator-tool-group > div > button strong {
  font-size: .88rem;
  white-space: normal;
}

@media (prefers-reduced-motion: reduce) {
  .educator-tool-chevron {
    transition: none;
  }
}

body.boost-phone.boost-booster-app .boost-global-nav > a:not(.boost-app-brand),
body.boost-phone.boost-booster-app .boost-nav-more,
body.boost-phone.boost-booster-app .boost-theme-toggle {
  flex: 0 0 auto;
  width: auto;
  min-width: 0;
  margin: 0;
}

body.boost-phone.boost-booster-app main.boost-main {
  width: calc(100% - 24px) !important;
  margin: 0 12px !important;
  padding-bottom: calc(112px + env(safe-area-inset-bottom)) !important;
  overflow-x: clip;
}

.classroom-class-manager {
  padding: 0 !important;
  overflow: clip;
}

.classroom-class-manager > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 64px;
  padding: 16px 20px;
  cursor: pointer;
  list-style: none;
}

.classroom-class-manager > summary::-webkit-details-marker {
  display: none;
}

.classroom-class-manager > summary span {
  color: var(--boost-text-muted);
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.classroom-class-manager > summary::after {
  content: "+";
  color: var(--boost-text-muted);
  font-size: 1.35rem;
}

.classroom-class-manager[open] > summary {
  border-bottom: 1px solid var(--boost-line);
}

.classroom-class-manager[open] > summary::after {
  content: "−";
}

.classroom-class-manager > .boost-grid,
.classroom-class-manager > details {
  margin-inline: 20px;
}

/* Acceptance corrections from the current-page visual review. */
.boost-app .office-heading h1,
.boost-app .portal-welcome h1,
.boost-app .identity-heading h1,
.boost-app .classes-main > .office-heading h1 {
  font-size: clamp(1.9rem, 3.2vw, 2.8rem);
}

.boost-app .class-card nav a {
  min-height: 44px;
  padding: 10px 14px;
  border-color: var(--boost-line);
  border-radius: 10px;
  color: var(--boost-text);
  background: var(--boost-surface-raised);
  font-weight: 760;
}

.boost-app .class-card nav .class-start-link,
.boost-app .class-card nav .class-start-link:hover {
  border-color: var(--boost-blue-strong) !important;
  color: #ffffff !important;
  background: var(--boost-blue-strong) !important;
}

@media (max-width: 700px) {
  .boost-app main.boost-main {
    padding-bottom: calc(112px + env(safe-area-inset-bottom)) !important;
  }

  .boost-app .office-heading h1,
  .boost-app .portal-welcome h1,
  .boost-app .identity-heading h1,
  .boost-app .classes-main > .office-heading h1 {
    font-size: clamp(1.9rem, 8.5vw, 2.4rem);
  }
}
/* State and national professional resources */
.professional-resources-main{display:grid;gap:26px}
.professional-school-match{display:grid;gap:3px;min-width:min(100%,280px);padding:16px 18px;border:1px solid var(--boost-border);border-radius:16px;background:var(--boost-surface-raised)}
.professional-school-match span,.professional-resource-card>span,.professional-workflow-grid span{color:var(--boost-text-muted);font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.professional-school-match strong{font-size:1.05rem}.professional-school-match small{color:var(--boost-text-muted)}
.professional-source-section{display:grid;gap:18px;padding:24px;border:1px solid var(--boost-border);border-radius:22px;background:var(--boost-surface)}
.professional-resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px}
.professional-resource-card{display:flex;flex-direction:column;min-height:220px;padding:20px;border:1px solid var(--boost-border);border-radius:17px;background:var(--boost-surface-raised)}
.professional-resource-card h3{margin:.45rem 0 .65rem;font-size:1.18rem}.professional-resource-card p{margin:0 0 1rem;color:var(--boost-text-muted);line-height:1.55}
.professional-resource-card a{margin-top:auto;width:max-content;max-width:100%;font-weight:900}
.professional-workflow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.professional-workflow-grid>a{display:grid;gap:7px;padding:19px;border:1px solid var(--boost-border);border-radius:16px;background:var(--boost-surface-raised);color:var(--boost-text);text-decoration:none}
.professional-workflow-grid>a:hover,.professional-workflow-grid>a:focus-visible{border-color:var(--program-color,#f6c344);transform:translateY(-1px)}
.professional-workflow-grid small{color:var(--boost-text-muted);line-height:1.45}
.professional-source-note{padding:18px 20px;border-left:4px solid var(--program-color,#f6c344);border-radius:12px;background:var(--boost-surface-raised)}
.professional-source-note p{margin:.35rem 0 0;color:var(--boost-text-muted)}
.professional-news-list{display:grid}.professional-news-list article{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:18px;align-items:start;padding:18px 0;border-top:1px solid var(--boost-border)}
.professional-news-list article:first-child{border-top:0}.professional-news-list time{color:var(--boost-text-muted);font-weight:800}.professional-news-list h3{margin:0 0 5px;font-size:1.05rem}.professional-news-list p{margin:0;color:var(--boost-text-muted);line-height:1.5}.professional-news-list a{font-weight:900;white-space:nowrap}
@media(max-width:820px){.professional-source-section{padding:18px}.professional-workflow-grid{grid-template-columns:1fr}.professional-school-match{width:100%}}
@media(max-width:640px){.professional-news-list article{grid-template-columns:1fr;gap:8px}.professional-news-list a{white-space:normal}}

/* Classroom Messages is an email workspace, not a generic database form. */
.classroom-messages-main{
  display:grid;
  gap:20px;
  max-width:none;
}
.classroom-messages-main .office-heading{
  margin-bottom:0;
}
.classroom-message-layout{
  grid-template-columns:minmax(250px,320px) minmax(0,1fr);
  gap:20px;
}
.classroom-message-layout>.workspace-section{
  min-width:0;
  padding:clamp(18px,2.4vw,28px);
}
.classroom-message-compose.boost-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  width:100%;
  max-width:none;
  margin:0;
}
.classroom-message-compose>fieldset,
.classroom-message-compose>label:has(input[name="subject"]),
.classroom-message-compose>label:has(textarea[name="body"]){
  grid-column:1/-1;
}
.classroom-message-compose>fieldset{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));
  gap:10px;
  width:100%;
  margin:0;
  padding:14px;
  border:1px solid var(--boost-border);
  border-radius:14px;
  background:var(--boost-surface-raised);
}
.classroom-message-compose>fieldset legend{
  padding:0 6px;
  color:var(--boost-text);
  font-size:1rem;
  font-weight:850;
}
.classroom-message-compose>fieldset .lesson-list-choice{
  display:grid;
  grid-template-columns:20px minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-height:48px;
  margin:0;
  padding:10px 12px;
  border:1px solid var(--boost-border);
  border-radius:11px;
  background:var(--boost-surface);
  cursor:pointer;
}
.classroom-message-compose>fieldset .lesson-list-choice:hover{
  border-color:var(--program-color,#f6c344);
}
.classroom-message-compose>fieldset .lesson-list-choice:has(input:checked){
  border-color:var(--program-color,#f6c344);
  background:color-mix(in srgb,var(--program-color,#f6c344) 12%,var(--boost-surface));
}
.classroom-message-compose>fieldset .lesson-list-choice input{
  width:18px;
  height:18px;
  margin:0;
}
.classroom-message-compose>fieldset .lesson-list-choice span{
  min-width:0;
  overflow-wrap:anywhere;
  font-weight:750;
  line-height:1.3;
}
.classroom-message-compose label{
  min-width:0;
  color:var(--boost-text);
  font-size:1rem;
  font-weight:800;
}
.classroom-message-compose input[name="subject"]{
  height:48px;
  min-height:48px;
  padding:11px 13px;
  font-size:1rem;
  line-height:1.25;
}
.classroom-message-compose textarea[name="body"]{
  width:100%;
  min-height:clamp(280px,38vh,430px);
  padding:15px 16px;
  font-size:1rem;
  line-height:1.55;
  resize:vertical;
}
.classroom-message-compose label:has(input[type="file"]){
  grid-column:1;
  align-self:end;
}
.classroom-message-compose input[type="file"]{
  min-height:48px;
  padding:9px 11px;
}
.classroom-message-compose>.boost-button{
  grid-column:2;
  align-self:end;
  justify-self:end;
  width:auto;
  min-width:150px;
  min-height:48px;
  margin:0;
}
.classroom-message-thread{
  max-height:42vh;
  overflow:auto;
  padding-right:4px;
}
.classroom-message-thread article{
  line-height:1.55;
}
.classroom-message-thread header{
  align-items:baseline;
}
.theme-light .classroom-message-compose>fieldset,
.theme-light .classroom-message-compose>fieldset .lesson-list-choice{
  border-color:#cbd8e5;
  background:#f7fafc;
}
.theme-light .classroom-message-compose>fieldset .lesson-list-choice:has(input:checked){
  border-color:var(--program-color,#b88100);
  background:#fff8df;
}
@media(max-width:900px){
  .classroom-message-layout{
    grid-template-columns:1fr;
  }
  .classroom-thread-list{
    grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));
  }
}
@media(max-width:640px){
  .classroom-message-compose.boost-form{
    grid-template-columns:1fr;
    gap:14px;
  }
  .classroom-message-compose>*{
    grid-column:1!important;
  }
  .classroom-message-compose>.boost-button{
    width:100%;
  }
  .classroom-message-compose textarea[name="body"]{
    min-height:300px;
  }
  .classroom-message-thread{
    max-height:none;
    overflow:visible;
  }
}

/* Planner views serve different jobs; do not expand every lesson everywhere. */
.planner-view-week .teaching-plan-details,
.planner-view-week .lesson-tag-list,
.planner-view-month .teaching-plan-details,
.planner-view-month .lesson-tag-list,
.planner-view-list .teaching-plan-details,
.planner-view-list .lesson-tag-list {
  display: none;
}

.planner-view-week .teaching-plan-card,
.planner-view-list .teaching-plan-card,
.planner-view-month .teaching-plan-card,
.planner-view-week.equal-size-lessons .teaching-plan-card,
.planner-view-list.equal-size-lessons .teaching-plan-card,
.planner-view-month.equal-size-lessons .teaching-plan-card {
  min-height: 0;
  grid-template-rows: none;
}

.planner-view-month .teaching-plan-card {
  gap: 3px;
  padding: 7px;
  border-left-width: 3px;
  border-radius: 8px;
}

.planner-view-month .teaching-plan-card > span,
.planner-view-month .teaching-plan-card > small {
  font-size: .68rem;
}

.planner-view-month .teaching-plan-card > strong {
  font-size: .78rem;
  line-height: 1.2;
}

.planner-view-month .teaching-plan-actions details {
  display: none;
}

.planner-view-month .teaching-plan-actions > a {
  min-height: 32px;
  padding: 5px 8px;
  font-size: .72rem;
}
.planner-view-month .planner-drop-day > header{display:flex;align-items:center;justify-content:space-between;gap:8px}.planner-view-month .planner-drop-day > header>a,.month-more-lessons{color:var(--boost-link,#1e75b0);font-size:.78rem;font-weight:800;text-decoration:none}.planner-view-month .planner-drop-day > header>a:hover,.month-more-lessons:hover{text-decoration:underline}.planner-view-month .planner-drop-day > header>a:focus-visible,.month-more-lessons:focus-visible{outline:3px solid var(--boost-focus,#4da3ff);outline-offset:3px;border-radius:4px}.month-more-lessons{display:block;padding:7px 4px;text-align:center}

.planner-view-list .teaching-list-row {
  align-items: center;
}

.planner-view-list .teaching-plan-card {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.planner-view-list .teaching-plan-card > span,
.planner-view-list .teaching-plan-card > small,
.planner-view-list .teaching-plan-card > strong {
  grid-column: 1;
}

.planner-view-list .teaching-plan-actions {
  grid-column: 2;
  grid-row: 1 / span 3;
}

.boost-educator-app .teaching-planner-toolbar nav a,
.boost-educator-app .planner-date-navigation a,
.boost-educator-app .planner-filter-panel > summary {
  min-height: 44px;
}

.boost-educator-app .planner-date-navigation a[aria-label="Previous"],
.boost-educator-app .planner-date-navigation a[aria-label="Next"] {
  min-width: 44px;
}

/* Lesson planning is a set of focused workspaces, not one 26,000px page. */
.classroom-planning-main > #curriculum,
.classroom-planning-main > #templates,
.classroom-planning-main > #personal-lists,
.classroom-planning-main > #layouts,
.classroom-planning-main > .template-remove-tool,
.classroom-planning-main > .classroom-bulk-template {
  display: none;
}

.classroom-planning-main > #curriculum:target,
.classroom-planning-main > #templates:target,
.classroom-planning-main > #personal-lists:target,
.classroom-planning-main > #layouts:target,
.classroom-planning-main > .classroom-bulk-template:target {
  display: grid;
}

.classroom-planning-main:has(#curriculum:target) > #plans,
.classroom-planning-main:has(#templates:target) > #plans,
.classroom-planning-main:has(#personal-lists:target) > #plans,
.classroom-planning-main:has(#layouts:target) > #plans,
.classroom-planning-main:has(.classroom-bulk-template:target) > #plans {
  display: none;
}

.classroom-planning-main:has(#templates:target) > .template-remove-tool {
  display: grid;
}

.classes-setup {
  padding: 0;
  border: 1px solid var(--boost-border);
  border-radius: 16px;
  background: var(--boost-surface);
}

.classes-setup > summary {
  display: flex;
  align-items: center;
  min-height: 56px;
  padding: 14px 18px;
  cursor: pointer;
  list-style: none;
}

.classes-setup > summary::-webkit-details-marker {
  display: none;
}

.classes-setup > summary span {
  display: grid;
  gap: 3px;
}

.classes-setup > summary small {
  color: var(--boost-muted);
  font-weight: 500;
}

.classes-setup[open] > summary {
  border-bottom: 1px solid var(--boost-border);
}

.classes-setup > .classes-setup-grid {
  padding: 18px;
}

.class-day-phase-nav {
  position: sticky;
  z-index: 12;
  top: 8px;
  display: flex;
  gap: 6px;
  width: max-content;
  max-width: 100%;
  padding: 5px;
  border: 1px solid var(--boost-border);
  border-radius: 12px;
  background: color-mix(in srgb, var(--boost-surface) 94%, transparent);
  box-shadow: 0 8px 24px rgba(0, 8, 20, .14);
  backdrop-filter: blur(16px);
}

.class-day-phase-nav a {
  display: grid;
  min-width: 92px;
  min-height: 44px;
  place-items: center;
  padding: 8px 14px;
  border-radius: 9px;
  color: var(--boost-text);
  text-decoration: none;
  font-weight: 800;
}

.class-day-phase-nav a:hover,
.class-day-phase-nav a:focus-visible {
  color: #fff;
  background: var(--boost-blue);
}

@media(max-width:680px) {
  .class-day-phase-nav {
    width: 100%;
  }

  .class-day-phase-nav a {
    flex: 1;
    min-width: 0;
  }
}

/*
 * The week planner must become a true responsive schedule. Tablets show two
 * complete days per row; phones show one complete day without horizontal
 * paging or hidden off-screen columns.
 */
@media (min-width: 681px) and (max-width: 900px) {
  .boost-educator-app .teaching-week-view {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow-x: visible;
    scroll-snap-type: none;
  }
}

@media (max-width: 680px) {
  .boost-educator-app .teaching-week-view {
    grid-template-columns: minmax(0, 1fr);
    overflow-x: visible;
    scroll-snap-type: none;
  }

  .boost-educator-app .teaching-week-day {
    width: 100%;
    min-height: 0;
    scroll-snap-align: none;
  }
}

.boost-educator-app .teaching-planner-toolbar nav a.active,
.boost-educator-app .teaching-planner-toolbar nav a.active:hover,
.boost-educator-app .teaching-planner-toolbar nav a.active:focus-visible {
  color: #fff;
}

/* Classroom navigation remains a five-item phone rail: Today plus four task groups. */
@media(max-width:680px){
  .boost-educator-app .educator-tool-list{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:4px;
  }
  .boost-educator-app .educator-tool-list>.educator-tool-group{
    display:block;
    min-width:0;
  }
  .boost-educator-app .educator-tool-list>.educator-tool-group>summary,
  .boost-educator-app .educator-tool-list>a:first-child{
    display:grid;
    grid-template-columns:1fr;
    place-items:center;
    gap:2px;
    min-height:62px;
    padding:4px 1px;
    text-align:center;
  }
  .boost-educator-app .educator-tool-list>.educator-tool-group>summary>span:first-child{
    width:auto;
  }
  .boost-educator-app .educator-tool-list>.educator-tool-group>summary strong{
    max-width:100%;
    font-size:.54rem;
    line-height:1.05;
    white-space:nowrap;
  }
  .boost-educator-app .educator-tool-list>.educator-tool-group>summary .educator-tool-chevron,
  .boost-educator-app .educator-tool-list>.educator-tool-group-library,
  .boost-educator-app .educator-tool-list>.educator-tool-group-communicate{
    display:none;
  }
  .boost-educator-app .educator-tool-list>.educator-tool-group:not([open])>div{
    display:none;
  }
  .boost-educator-app .educator-tool-list>.educator-tool-group[open]>div,
  .boost-educator-app .educator-tool-list>.educator-tool-group[open] .educator-phone-only{
    display:grid;
  }
}

/*
 * Light mode uses a quiet blue interaction accent.
 * Amber remains reserved for actual warning and pending states.
 */
.boost-app.theme-light,
body.portal-ipad-app.theme-light{
  --boost-gold:#356f95;
  --boost-accent:#356f95;
  --program-accent:#4f86ad !important;
}
.boost-app.theme-light .boost-theme-toggle{
  border-color:#4f86ad;
  color:#fff;
  background:#356f95;
}
.boost-app.theme-light .boost-card span{
  color:#245f88;
  background:#dcecf6;
}
.boost-app.theme-light .educator-tool-group>summary:hover,
.boost-app.theme-light .educator-tool-group>summary.active,
.boost-app.theme-light .educator-tool-list>a:hover,
.boost-app.theme-light .educator-sidebar-bottom>a:hover,
.boost-app.theme-light .educator-sidebar-bottom>button:hover,
.boost-app.theme-light .portal-ipad-rail a:hover,
.boost-app.theme-light .portal-ipad-rail a.active,
.boost-app.theme-light .classes-stepper button.active{
  color:#fff !important;
  background:#356f95;
}
.boost-app.theme-light .educator-tool-group>summary:hover *,
.boost-app.theme-light .educator-tool-group>summary.active *,
.boost-app.theme-light .educator-tool-list>a:hover *{
  color:inherit !important;
}
.boost-app.theme-light .class-context-bar a.active{
  border-color:#4f86ad !important;
  color:#17344a !important;
  background:#dcecf6 !important;
}
.boost-app.theme-light .lesson-unit-context{
  border-color:#8fb6cf;
  background:#eef6fb;
}
.boost-app.theme-light .bulk-template-option:has(input:checked),
.boost-app.theme-light .bulk-lesson-options .lesson-list-choice:has(input:checked),
.boost-app.theme-light .classroom-message-compose>fieldset .lesson-list-choice:has(input:checked){
  border-color:#4f86ad;
  background:#e7f2f9;
}

/* Forms must be inspectable before they are assigned. */
.form-preview-main{display:grid;gap:20px;max-width:none}.form-preview-main>.office-heading{margin-bottom:0}.form-preview-main>.office-heading .boost-actions form{margin:0}.form-recipient-preview{display:grid;gap:22px;width:100%;max-width:none;padding:clamp(22px,3vw,36px)}.form-recipient-preview>header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:24px;padding-bottom:18px;border-bottom:1px solid var(--boost-border)}.form-recipient-preview h2{margin:.2rem 0;font-family:inherit;font-size:clamp(1.4rem,2vw,1.8rem);letter-spacing:-.02em}.form-preview-facts{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:10px;margin:0}.form-preview-facts div{padding:11px 13px;border:1px solid var(--boost-border);border-radius:12px;background:var(--boost-surface-raised)}.form-preview-facts dt{color:var(--boost-muted);font-size:.72rem;font-weight:850;text-transform:uppercase}.form-preview-facts dd{margin:4px 0 0;font-weight:850}.form-preview-form.boost-form{display:grid;grid-template-columns:1fr;gap:18px;width:100%;max-width:920px}.form-preview-form>label,.form-preview-form fieldset{display:grid;gap:8px}.form-preview-form>label>span:first-child{font-weight:850}.form-preview-form input:disabled,.form-preview-form select:disabled,.form-preview-form textarea:disabled{opacity:1;color:var(--boost-muted);background:var(--boost-surface-raised);cursor:default}.form-preview-form>.boost-button{justify-self:start}.theme-light .form-preview-facts div,.theme-light .form-preview-form input:disabled,.theme-light .form-preview-form select:disabled,.theme-light .form-preview-form textarea:disabled{border-color:#cbd8e5;background:#f5f8fb;color:#506579}@media(max-width:760px){.form-recipient-preview>header{grid-template-columns:1fr}.form-preview-facts{grid-template-columns:1fr}.form-preview-main>.office-heading .boost-actions,.form-preview-main>.office-heading .boost-actions>*{width:100%}}
.forms-dialog [data-form-builder]{grid-template-columns:minmax(0,1fr)}.forms-dialog [data-form-builder]>*{grid-column:1/-1}.forms-dialog [data-form-builder]>[data-form-close]{justify-self:end;width:auto;min-width:96px}.forms-dialog [data-form-builder][data-template-selected="false"] .form-template-library{width:100%;max-width:none}.forms-dialog [data-form-builder][data-template-selected="false"] .form-template-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.forms-dialog [data-form-builder][data-template-selected="false"] .form-template-card{min-height:150px;padding:16px;text-align:left}.forms-dialog [data-form-builder][data-template-selected="true"]>[data-form-fields]{display:grid;gap:16px}.forms-dialog [data-form-builder][data-template-selected="true"]>.form-builder-preview{width:100%;max-width:none}
.forms-workflow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;width:100%;padding:14px 16px;border:1px solid var(--boost-border);border-radius:16px;background:var(--boost-surface-raised)}.forms-workflow span{display:flex;align-items:center;gap:9px;min-width:0;color:var(--boost-muted);font-size:.95rem;font-weight:800}.forms-workflow strong{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;color:#fff;background:var(--boost-accent,#1769aa)}.form-delivery-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px;padding:20px;border-color:var(--boost-accent,#1769aa)}.form-delivery-panel h2{margin:.15rem 0 .35rem;font-family:inherit;font-size:1.35rem}.form-delivery-panel p{margin:.25rem 0}.form-delivery-panel label{display:grid;gap:7px;margin-top:12px;font-weight:800}.form-delivery-panel input{width:100%}.forms-section-help{margin-top:-.35rem;color:var(--boost-muted)}
@media(max-width:760px){.forms-workflow{grid-template-columns:1fr}.forms-workflow span{padding:4px}.form-delivery-panel{grid-template-columns:1fr}.form-delivery-panel .boost-actions,.form-delivery-panel .boost-actions>*{width:100%}}
@media print{.boost-nav,.site-shell,.forms-workflow,.form-preview-main>.office-heading .boost-actions,.form-delivery-panel .boost-actions,footer{display:none!important}.boost-main,.form-preview-main,.form-recipient-preview{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important}.form-recipient-preview input:disabled,.form-recipient-preview select:disabled,.form-recipient-preview textarea:disabled{border:1px solid #777!important;background:#fff!important;color:#111!important}.form-delivery-panel{display:block!important;color:#111!important;background:#fff!important}}

/* Five-star workflow repair. */
.class-day-grid .class-plan-peek{position:sticky;z-index:12;top:12px;display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:0;padding:16px 20px;border-color:color-mix(in srgb,var(--boost-accent) 55%,var(--boost-border));box-shadow:0 12px 30px rgba(0,0,0,.18)}
.class-plan-peek h2,.class-plan-peek p{margin:.2rem 0}.class-plan-peek .boost-button{flex:0 0 auto}.class-day-grid .class-tools-panel{grid-column:1/-1}
.administration-plan-filters{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.administration-draft-feedback{padding:16px;border:1px solid var(--boost-border);border-radius:14px;background:var(--boost-surface-soft)}
.administration-draft-feedback p{margin:.35rem 0 0;color:var(--boost-muted)}
.administration-school-scope{display:grid;gap:12px;margin-bottom:22px}.administration-school-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.administration-school-grid a{display:grid;gap:5px;min-width:0;padding:16px;border:1px solid var(--boost-border);border-radius:14px;color:var(--boost-text);text-decoration:none;background:var(--boost-surface-raised)}.administration-school-grid a span{color:var(--boost-muted)}.administration-school-grid a.active{border-color:var(--boost-accent);box-shadow:inset 4px 0 var(--boost-accent)}
.volunteer-add-work>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;cursor:pointer}
.volunteer-add-work>summary span:first-child{display:grid;gap:3px}.volunteer-add-work>summary small{color:var(--boost-muted);font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.volunteer-add-work>.consolidated-grid{margin-top:20px}.volunteer-add-work>.consolidated-grid>article{min-width:0;padding:0}
.finance-toolbar{flex-wrap:wrap}.finance-toolbar>label{flex:1 1 420px;min-width:min(100%,320px)}.finance-toolbar [data-finance-search]{width:100%}.finance-toolbar>.boost-actions{flex:0 1 auto}
.destructive-disclosure{margin-top:12px}.destructive-disclosure>summary{color:var(--boost-muted);font-weight:800;cursor:pointer}.destructive-disclosure form{margin-top:10px}.boost-button.danger{border-color:#a94747;color:#fff;background:#7e2d2d}
@media(max-width:900px){.class-day-grid .class-plan-peek{order:-1}.class-plan-peek{display:grid}.class-plan-peek .boost-button{width:100%}}
@media(max-width:760px){.administration-plan-list article>header,.administration-plan-list dl,.classroom-review-forms{grid-template-columns:1fr}}

/* Booster Office uses the same calm, persistent sidebar grammar. */
@media(min-width:701px){
body.boost-booster-app{--booster-rail:238px;padding-left:var(--booster-rail)}
.boost-booster-app .boost-global-nav{position:fixed;z-index:50;inset:0 auto 0 0;display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;align-content:flex-start;width:var(--booster-rail);height:100dvh;margin:0;padding:16px 14px;border:0;border-right:1px solid var(--boost-border);border-radius:0;overflow-y:auto;background:var(--boost-surface)}
.boost-booster-app .boost-global-nav .boost-app-brand{display:grid;place-items:center;width:100%;min-height:82px;margin:0 0 8px}.boost-booster-app .boost-global-nav .boost-app-brand img{width:min(126px,80%);height:auto}
.boost-booster-app .booster-shell-context{display:grid;width:100%;min-width:0;margin:0 0 12px;padding:10px 8px;border-bottom:1px solid var(--boost-border)}
.boost-booster-app .boost-global-nav>a,.boost-booster-app .boost-global-nav>button,.boost-booster-app .boost-global-nav>details{width:100%;min-width:0;flex:0 0 auto}
.boost-booster-app .boost-global-nav>a,.boost-booster-app .boost-global-nav>button,.boost-booster-app .boost-global-nav>details>summary{display:flex;align-items:center;justify-content:flex-start;min-height:44px;padding:9px 12px;border-radius:10px;text-align:left;white-space:normal}
.boost-booster-app .boost-nav-more-links,.boost-booster-app .boost-nav-daily-links{position:static;display:grid;width:100%;min-width:0;margin:4px 0 8px;padding:6px;border:0;box-shadow:none;background:var(--boost-surface-soft)}
.boost-booster-app .boost-nav-more-links a,.boost-booster-app .boost-nav-daily-links a{min-height:40px;padding:8px 10px;white-space:normal}
.boost-booster-app .boost-main{width:auto!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
}
@media(min-width:701px) and (max-width:980px){body.boost-booster-app{--booster-rail:218px}.boost-booster-app .boost-main{padding-inline:18px!important}}
@media(max-width:700px){.finance-toolbar>label{flex-basis:100%;min-width:0}.finance-toolbar>.boost-actions,.finance-toolbar>.boost-actions>*{width:100%}}

/*
 * Safari, iPadOS, zoom, and software-keyboard acceptance contract.
 * Keep the task in view; navigation and fixed actions must never compete with
 * a focused field or a reduced visual viewport.
 */
:root{
  --boost-visual-height:100dvh;
  --boost-keyboard-height:0px;
}
html{
  min-height:100%;
  scroll-padding-top:max(20px,env(safe-area-inset-top));
  scroll-padding-bottom:calc(32px + env(safe-area-inset-bottom));
}
.boost-app{
  min-height:100dvh;
  padding-top:env(safe-area-inset-top);
  padding-right:env(safe-area-inset-right);
  padding-bottom:env(safe-area-inset-bottom);
  padding-left:env(safe-area-inset-left);
}
.boost-app :is(input,select,textarea,[contenteditable="true"]){
  scroll-margin-top:96px;
  scroll-margin-bottom:calc(120px + env(safe-area-inset-bottom));
}
.boost-app :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid var(--boost-focus,#63b3ff);
  outline-offset:3px;
}
.boost-keyboard-open{
  scroll-padding-bottom:calc(var(--boost-keyboard-height) + 24px);
}
.boost-keyboard-open .boost-educator-sidebar,
.boost-keyboard-open.boost-booster-app .boost-global-nav,
.boost-keyboard-open .inventory-asset-page-actions{
  position:absolute !important;
}
.boost-keyboard-open :is(dialog,.forms-dialog,.inventory-dialog,.students-dialog,.finance-dialog){
  max-height:calc(var(--boost-visual-height) - 16px);
}

/* iPad portrait: preserve the recognizable rail but return more room to work. */
@media (min-width:681px) and (max-width:900px){
  .boost-educator-app{--educator-rail:170px}
  .boost-educator-sidebar{
    padding:12px 8px calc(12px + env(safe-area-inset-bottom));
  }
  .educator-shell-context{
    margin-inline:6px;
  }
  .educator-shell-context span:first-child,
  .educator-sidebar-label{
    font-size:.64rem;
  }
  .educator-tool-list a,
  .educator-tool-group>summary,
  .educator-sidebar-bottom a,
  .educator-sidebar-bottom button{
    grid-template-columns:26px minmax(0,1fr);
    gap:7px;
    min-height:46px;
    padding:8px 7px;
  }
  .educator-tool-list strong,
  .educator-tool-group>summary strong,
  .educator-sidebar-bottom strong,
  .educator-sidebar-bottom button strong{
    font-size:.76rem;
    line-height:1.15;
    white-space:normal;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
  }
  .educator-tool-group>summary{
    grid-template-columns:26px minmax(0,1fr) 12px;
  }
  .educator-tool-group>div{
    margin-left:8px;
    padding-left:5px;
  }
  .educator-tool-group>div>a{
    min-height:42px;
  }
  .educator-sidebar-brand{
    min-height:68px;
  }
  .educator-sidebar-brand img{
    width:102px;
    height:62px;
  }
  .boost-educator-app .boost-main{
    margin-left:calc(var(--educator-rail) + max(14px,env(safe-area-inset-left)));
    margin-right:max(14px,env(safe-area-inset-right));
  }
  .boost-app .office-heading{
    align-items:flex-start;
    gap:16px;
  }
  .boost-app .office-heading>.boost-actions{
    flex-wrap:wrap;
  }
  .boost-app .office-heading>.boost-actions>*{
    min-height:44px;
  }
  .boost-app :is(.classroom-planning-tabs,.teaching-planner-toolbar nav,.class-day-phase-nav){
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scrollbar-width:thin;
  }
}

/* iPad landscape: show productive columns, but never more than the content can carry. */
@media (min-width:901px) and (max-width:1180px){
  .boost-educator-app{--educator-rail:208px}
  .boost-educator-app .boost-main{
    margin-left:calc(var(--educator-rail) + max(18px,env(safe-area-inset-left)));
    margin-right:max(18px,env(safe-area-inset-right));
  }
  .educator-tool-list strong,
  .educator-tool-group>summary strong,
  .educator-sidebar-bottom strong{
    white-space:normal;
  }
}

/*
 * Reflow at 200% and 400%: no horizontal task canvas, no sticky panel covering
 * the next control, and no multi-column form that forces word-by-word labels.
 */
@media (max-width:700px){
  .boost-app{
    padding-right:max(0px,env(safe-area-inset-right));
    padding-left:max(0px,env(safe-area-inset-left));
  }
  .boost-app .boost-main{
    margin-right:max(10px,env(safe-area-inset-right));
    margin-left:max(10px,env(safe-area-inset-left));
  }
  .class-day-grid .class-plan-peek,
  .inventory-asset-record-summary,
  .layout-live-preview{
    position:static;
  }
  .boost-app :is(
    .boost-grid,.office-grid,.reports-grid,.consolidated-grid,
    .students-kpis,.inventory-kpis,.attire-kpis,.music-kpis,.finance-kpis,
    .classroom-teaching-team-grid,.professional-workflow-grid,
    .class-plan-sections,.music-tool-grid,.form-card dl,
    .administration-school-grid,.planner-filter-form,
    .shared-view-builder .form-pair
  ){
    grid-template-columns:minmax(0,1fr) !important;
  }
  .boost-app :is(.office-heading,.section-heading,.student-card-head,.finance-toolbar,.class-plan-peek){
    align-items:stretch;
    flex-direction:column;
  }
  .boost-app :is(.office-heading,.section-heading)>.boost-actions,
  .boost-app :is(.office-heading,.section-heading)>.boost-actions>*{
    width:100%;
  }
  .boost-app :is(.planner-filter-panel,.boost-nav-more,.educator-tool-group)[open]>*:not(summary){
    max-width:calc(100vw - 20px);
  }
  .boost-app table{
    font-size:max(.9rem,14px);
  }
}
/* Students: compact, consistent record actions without squeezing identity chips. */
.students-main .student-card{
  grid-template-columns:minmax(250px,1.2fr) minmax(175px,.8fr) minmax(175px,.8fr) minmax(132px,auto);
  gap:12px 18px;
  padding:16px 18px;
}
.students-main .student-card-head{
  display:grid;
  justify-content:stretch;
  gap:8px;
}
.students-main .student-groups{
  justify-content:flex-start;
}
.students-main .student-groups span{
  padding:5px 9px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:.75rem;
}
.students-main .student-card>.boost-actions{
  align-self:center;
  justify-content:flex-start;
}
.students-main .student-card>.boost-actions .boost-button,
.students-main .student-card>details>summary{
  width:auto;
  min-width:0;
  min-height:40px;
  padding:8px 12px;
  border:1px solid var(--boost-line);
  border-radius:10px;
  background:var(--boost-surface);
  color:var(--boost-text);
  font-size:.88rem;
  line-height:1.15;
  font-weight:750;
  white-space:nowrap;
}
.students-main .student-card>details>summary{
  justify-content:center;
}
.students-main .student-card>details{
  justify-self:start;
}
.students-main .student-card>details[open]{
  justify-self:stretch;
}
.students-main .student-card>details>summary:hover,
.students-main .student-card>details>summary:focus-visible,
.students-main .student-card>.boost-actions .boost-button:hover,
.students-main .student-card>.boost-actions .boost-button:focus-visible{
  border-color:var(--boost-blue);
  background:var(--boost-surface-raised);
}
@media(max-width:1050px){
  .students-main .student-card{
    grid-template-columns:minmax(230px,1fr) minmax(180px,.8fr) minmax(150px,auto);
  }
}
@media(max-width:680px){
  .students-main .student-card{
    grid-template-columns:minmax(0,1fr);
  }
  .students-main .student-groups{
    display:flex;
  }
  .students-main .student-card>.boost-actions{
    justify-content:flex-start;
  }
}

@media (max-width:420px){
  .boost-app{
    font-size:16px;
  }
  .boost-app .boost-main{
    width:calc(100% - 16px) !important;
    margin-inline:8px !important;
  }
  .boost-app :is(.office-card,.workspace-section,.boost-card,.boost-panel,fieldset){
    padding:14px;
    border-radius:14px;
  }
  .boost-app :is(.office-heading h1,.portal-welcome h1,.identity-heading h1){
    font-size:clamp(1.65rem,9vw,2rem);
    overflow-wrap:anywhere;
  }
  .boost-app :is(.boost-actions,.office-heading-actions,.planner-date-navigation){
    display:grid;
    grid-template-columns:minmax(0,1fr);
    width:100%;
  }
  .boost-app :is(.boost-actions,.office-heading-actions,.planner-date-navigation)>*{
    width:100%;
    min-width:0;
  }
  .boost-app .teaching-planner-toolbar{
    display:grid;
    grid-template-columns:minmax(0,1fr);
  }
  .boost-app .teaching-planner-toolbar nav{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .boost-app .teaching-planner-toolbar nav a{
    text-align:center;
  }
  .boost-app .class-day-phase-nav{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .boost-app .class-day-phase-nav a{
    width:100%;
  }
  .boost-app :is(input,select,textarea,button,.boost-button){
    min-height:44px;
    font-size:1rem;
  }
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .boost-app *, .boost-app *::before, .boost-app *::after{
    scroll-behavior:auto !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
}

/*
 * Repeated-record action normalization.
 * Keep working controls compact and horizontal instead of allowing a card or
 * form grid to stretch them into full-width bars or narrow vertical columns.
 */
.boost-app .music-card{
  align-content:start;
}
.boost-app .music-card>.boost-button{
  justify-self:start;
  align-self:end;
  width:auto;
  max-width:100%;
  min-width:150px;
}
.boost-app .music-return,
.boost-app .attire-activity form{
  display:grid;
  grid-template-columns:minmax(132px,1fr) minmax(142px,1fr) auto;
  align-items:end;
  gap:8px;
}
.boost-app .music-return>.boost-button,
.boost-app .attire-activity form>.boost-button{
  align-self:end;
  width:auto;
  min-width:84px;
  white-space:nowrap;
}
.boost-app .classes-main .compact-form>.boost-button,
.boost-app .occurrence-card .compact-form>.boost-button,
.boost-app .reports-main .workspace-form>button{
  justify-self:start;
  align-self:end;
  width:auto;
  max-width:100%;
  min-height:44px;
  height:auto;
}
.boost-app .reports-main>.office-heading>.boost-button{
  align-self:center;
  width:auto;
  min-width:184px;
  max-width:100%;
  min-height:44px;
  height:auto;
  border-color:var(--boost-blue-strong);
  color:#fff;
  background:var(--boost-blue-strong);
  box-shadow:0 1px 2px rgba(10,31,48,.12);
  white-space:nowrap;
}
.boost-app.theme-light .reports-main>.office-heading>.boost-button{
  border-color:var(--boost-blue-strong) !important;
  color:#fff !important;
  background:var(--boost-blue-strong) !important;
}
.boost-app summary.portal-section-heading{
  overflow:visible;
  line-height:1.25;
}

@media(max-width:860px){
  .boost-app .music-return,
  .boost-app .attire-activity form{
    grid-template-columns:1fr;
  }
  .boost-app .music-card>.boost-button,
  .boost-app .music-return>.boost-button,
  .boost-app .attire-activity form>.boost-button,
  .boost-app .classes-main .compact-form>.boost-button,
  .boost-app .occurrence-card .compact-form>.boost-button,
  .boost-app .reports-main .workspace-form>button,
  .boost-app .reports-main>.office-heading>.boost-button{
    justify-self:stretch;
    width:100%;
  }
}
/* Google Classroom educator integration */
.google-classroom-main{width:100%;max-width:none}
.google-classroom-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 24px}
.google-classroom-summary article{display:grid;gap:6px;padding:18px;border:1px solid var(--boost-line);border-radius:18px;background:var(--boost-surface-raised)}
.google-classroom-summary span{font-size:.85rem;color:var(--boost-text-muted)}
.google-classroom-summary strong{font-size:1.25rem}
.google-classroom-summary small{font-size:.9rem;color:var(--boost-text-muted)}
.google-classroom-course-list{display:grid;gap:18px}
.google-classroom-course{padding:22px;border:1px solid var(--boost-line);border-radius:20px;background:var(--boost-surface-raised)}
.google-classroom-course>header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.google-classroom-course h3{margin:.2rem 0;font-size:1.45rem}
.google-classroom-counts{display:flex;gap:10px;flex-wrap:wrap}
.google-classroom-counts span{padding:9px 12px;border-radius:999px;background:var(--boost-surface-soft);white-space:nowrap}
.google-classroom-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.google-classroom-detail-grid details{border:1px solid var(--boost-line);border-radius:15px;background:var(--boost-surface);padding:14px}
.google-classroom-detail-grid summary{display:flex;align-items:center;min-height:44px;cursor:pointer;font-weight:750;font-size:1rem}
.google-classroom-detail-grid h4{margin:14px 0 0;font-size:1rem}
.google-classroom-detail-grid ul{display:grid;gap:8px;margin:14px 0 0;padding-left:1.25rem}
.google-classroom-detail-grid li span{display:block;color:var(--boost-text-muted);font-size:.9rem}
.google-classroom-boundary{margin:22px 0 0;color:var(--boost-text-muted);font-size:.95rem}
.google-demo-workflow{display:grid;gap:20px}
.google-demo-steps{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}
.google-demo-steps>article{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:start;padding:20px;border:1px solid var(--boost-line);border-radius:18px;background:var(--boost-surface-raised)}
.google-demo-steps h3{margin:.2rem 0 .45rem;font-size:1.25rem}
.google-demo-steps p{margin:.25rem 0;color:var(--boost-text-muted)}
.google-demo-step-number{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--boost-accent);color:#fff;font-weight:850}
.google-demo-preview{margin-top:14px;border-top:1px solid var(--boost-line);padding-top:8px}
.google-demo-preview summary{display:flex;align-items:center;min-height:44px;cursor:pointer;color:var(--boost-link);font-weight:800}
.google-demo-preview[open] summary{margin-bottom:10px}
.google-connection-details{margin-top:22px;border:1px solid var(--boost-line);border-radius:20px;background:var(--boost-surface-raised);overflow:clip}
.google-connection-details>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:70px;padding:14px 20px;cursor:pointer;list-style:none}
.google-connection-details>summary::-webkit-details-marker{display:none}
.google-connection-details>summary span:first-child{display:grid;gap:3px}
.google-connection-details>summary small{color:var(--boost-text-muted);font-size:.92rem;font-weight:500}
.google-connection-details>summary span:last-child{color:var(--boost-link);font-weight:800}
.google-connection-details[open]>summary{border-bottom:1px solid var(--boost-line)}
.google-connection-details-body{display:grid;gap:22px;padding:20px}
@media(max-width:900px){.google-classroom-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.google-classroom-summary,.google-classroom-detail-grid{grid-template-columns:1fr}.google-classroom-course>header{display:grid}.google-classroom-main .office-heading,.google-classroom-main .boost-actions{align-items:stretch}.google-classroom-main .boost-actions,.google-classroom-main .boost-actions form,.google-classroom-main .boost-button{width:100%}}
.clever-library-main{width:100%;max-width:none}
.clever-library-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 24px}
.clever-library-summary article{display:grid;gap:6px;padding:18px;border:1px solid var(--boost-line);border-radius:18px;background:var(--boost-surface-raised)}
.clever-library-summary span{font-size:.9rem;color:var(--boost-text-muted)}
.clever-library-summary strong{font-size:1.25rem}
.clever-library-selection fieldset{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;width:100%;padding:0;border:0}
.clever-library-selection legend{width:100%;margin:0 0 12px;font-size:1rem;font-weight:800}
.clever-library-choice{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:76px;padding:14px;border:1px solid var(--boost-line);border-radius:15px;background:var(--boost-surface);cursor:pointer}
.clever-library-choice:hover{border-color:var(--program-color)}
.clever-library-choice:has(input:focus-visible){outline:3px solid var(--program-color);outline-offset:3px}
.clever-library-choice input{width:18px;height:18px;margin:0}
.clever-library-choice span{display:grid;gap:4px;min-width:0}
.clever-library-choice strong,.clever-library-choice small{overflow-wrap:anywhere}
.clever-library-choice small{color:var(--boost-text-muted);font-size:.9rem}
.clever-library-choice b{padding:5px 8px;border-radius:999px;background:var(--boost-surface-soft);font-size:.78rem}
.clever-library-imports{display:grid;gap:10px}
.clever-library-imports article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--boost-line);border-radius:15px;background:var(--boost-surface)}
.clever-library-imports article>span{display:grid;gap:4px;min-width:0}
.clever-library-imports small{color:var(--boost-text-muted)}
@media(max-width:900px){.clever-library-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.clever-library-summary,.clever-library-selection fieldset{grid-template-columns:1fr}.clever-library-imports article{align-items:stretch;flex-direction:column}.clever-library-main .boost-actions,.clever-library-main .boost-actions form,.clever-library-main .boost-button{width:100%}}
.google-sync-workflow,.google-linked-course,.google-roster-preview{display:grid;gap:20px}
.google-classroom-main .office-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:start}
.google-classroom-main h1{font-size:clamp(2.35rem,5vw,4rem);line-height:1.02}
.google-classroom-main .workspace-section h2{font-size:clamp(1.65rem,3vw,2.5rem);line-height:1.08;overflow-wrap:anywhere}
.google-permission-status{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 24px}
.google-permission-status span{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 14px;padding:14px 16px;border:1px solid var(--boost-line);border-radius:14px;background:var(--boost-surface)}
.google-permission-status small{grid-column:1/-1;color:var(--boost-text-muted);font-size:.9rem}
.google-permission-status b{color:#7ed7ad}
.google-course-link-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:16px;align-items:end}
.google-course-link-form label,.google-submission-row label{display:grid;gap:8px;font-size:1rem;font-weight:700}
.google-change-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.google-change-summary span{display:grid;gap:3px;padding:14px;border:1px solid var(--boost-line);border-radius:14px;background:var(--boost-surface-soft)}
.google-change-summary strong{font-size:1.35rem}
.google-change-list{display:grid;gap:8px}
.google-change-row{display:grid;grid-template-columns:100px minmax(150px,.7fr) minmax(0,1.4fr);gap:14px;align-items:center;padding:13px 15px;border:1px solid var(--boost-line);border-radius:13px;background:var(--boost-surface)}
.google-change-type{display:inline-flex;width:max-content;padding:6px 9px;border-radius:999px;background:var(--boost-surface-soft);font-size:.82rem;font-weight:800;text-transform:capitalize}
.google-change-type.add,.google-change-type.restore{background:color-mix(in srgb,#2c9a67 18%,var(--boost-surface));color:var(--boost-text)}
.google-change-type.withdraw{background:color-mix(in srgb,#d85d5d 18%,var(--boost-surface));color:var(--boost-text)}
.google-assignment-panel{border:1px solid var(--boost-line);border-radius:15px;background:var(--boost-surface);padding:14px 16px}
.google-assignment-panel summary{cursor:pointer;font-size:1.05rem;font-weight:800;min-height:44px;display:flex;align-items:center}
.google-assignment-panel[open] summary{margin-bottom:16px}
.google-coursework-row,.google-submission-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 0;border-top:1px solid var(--boost-line)}
.google-submission-list{display:grid;gap:10px}
.google-submission-row{grid-template-columns:minmax(0,1fr) 140px auto;padding:14px;border:1px solid var(--boost-line);border-radius:14px}
@media(max-width:900px){.google-classroom-main .office-heading{grid-template-columns:1fr}.google-course-link-form{grid-template-columns:1fr 1fr}.google-course-link-form .boost-button{grid-column:1/-1}.google-change-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.google-permission-status,.google-course-link-form,.google-change-summary,.google-change-row,.google-coursework-row,.google-submission-row{grid-template-columns:1fr}.google-course-link-form .boost-button{grid-column:auto}.google-change-row{align-items:start}.google-permission-status span{grid-template-columns:1fr;align-items:start}.google-permission-status small{grid-column:auto}.google-demo-steps>article{grid-template-columns:1fr}.google-connection-details>summary{align-items:flex-start;flex-direction:column}.google-connection-details-body{padding:16px}}
