/* MN617 original: /Book/assets/mobile590.css */

/* 590: compact mobile records. Keep every value readable without tall empty cards. */
@media(max-width:767px){
 html body[data-surface=web] #app-root .responsive-table.admin-data-table tbody tr{padding:10px 12px!important}
 html body[data-surface=web] #app-root .responsive-table.admin-data-table tbody tr>td{display:grid!important;grid-template-columns:minmax(58px,25%) minmax(0,1fr)!important;align-items:start!important;gap:10px!important;padding:6px 0!important}
 html body[data-surface=web] #app-root .responsive-table.admin-data-table .table-cell-label{margin:0!important;line-height:1.5!important;font-size:12px!important}
 html body[data-surface=web] #app-root .responsive-table.admin-data-table .table-cell{min-height:0!important;font-size:14px!important;line-height:1.5!important}
 html body[data-surface=web] #app-root .responsive-table.admin-data-table .table-cell :is(p,ul){margin-block:0!important}
 html body[data-surface=web] #app-root .responsive-table.admin-data-table .admin-row-actions{gap:6px!important}
 html body[data-surface=web] #app-root .responsive-table.admin-data-table .admin-row-actions :is(button,a){margin:0!important}
 html body[data-surface=web] #app-root table.school470-students-table.sl-table579>tbody>tr[data-sl-row]{grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:14px!important;padding:10px 12px!important}
 html body[data-surface=web] #app-root table.school470-students-table.sl-table579>tbody>tr[data-sl-row]>:is(th,td){grid-column:auto!important;padding:5px 0!important;font-size:14px!important;line-height:1.5!important}
 html body[data-surface=web] #app-root table.school470-students-table.sl-table579>tbody>tr[data-sl-row]>:is(th,td:nth-child(2),td:nth-child(3),td:nth-child(4),td:nth-child(5),td:nth-child(9)){grid-column:1/-1!important}
 html body[data-surface=web] #app-root table.school470-students-table.sl-table579>tbody>tr[data-sl-row]>:is(td:nth-child(2),td:nth-child(3),td:nth-child(4),td:nth-child(5)){display:grid!important;grid-template-columns:minmax(58px,25%) minmax(0,1fr)!important;gap:10px!important;align-items:start!important}
 html body[data-surface=web] #app-root table.sl-table579 tr[data-sl-row]>td::before{margin:0!important;line-height:1.5!important}
 html body[data-surface=web] #app-root table.sl-table579 .sl-name579{min-height:44px!important;line-height:1.5!important;font-size:16px!important}
 html body[data-surface=web] #app-root table.sl-table579 :is(.sl-state,.sl-expand579){width:fit-content!important;max-width:100%!important}
 html body[data-surface=web] #app-root table.sl-table579 .sl-courses579 summary{min-height:0!important;padding:0!important}
 html body[data-surface=web] #app-root table.sl-table579 .sl-courses579 summary span{line-height:1.5!important}
 html body[data-surface=web] #app-root table.sl-table579 tr[data-sl-row]>td:nth-child(9){padding-top:8px!important}
}

/* MN612: compact HOTKEY order cards; no horizontal table or fixed record height on phones. */
.hk546-admin .hk546-table[hidden]{display:none!important}
@media(max-width:760px){
 html body[data-surface=web] #app-root .hk546-admin{padding-block:12px;min-width:0;max-width:100%}
 html body[data-surface=web] #app-root .hk546-admin>.panel{min-height:0;height:auto;padding:12px}
 html body[data-surface=web] #app-root .hk546-admin .hk546-admin-heading{gap:12px;margin-bottom:12px}
 html body[data-surface=web] #app-root .hk546-admin .hk546-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-block:12px}
 html body[data-surface=web] #app-root .hk546-admin .hk546-summary>.panel{padding:12px;min-width:0;min-height:0;height:auto}
 html body[data-surface=web] #app-root .hk546-admin .hk546-summary h2{font-size:16px;margin:0 0 6px;overflow-wrap:anywhere}
 html body[data-surface=web] #app-root .hk546-admin .hk546-summary p{font-size:12px;line-height:1.6;margin:4px 0;overflow-wrap:anywhere}
 html body[data-surface=web] #app-root .hk546-admin .hk546-summary strong{font-size:24px}
 html body[data-surface=web] #app-root .hk546-admin .hk546-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 12px;align-items:end}
 html body[data-surface=web] #app-root .hk546-admin .hk546-filters>label{min-width:0;width:100%;gap:5px;font-size:13px}
 html body[data-surface=web] #app-root .hk546-admin .hk546-filters>label:first-child,
 html body[data-surface=web] #app-root .hk546-admin .hk546-filters>button{grid-column:1/-1}
 html body[data-surface=web] #app-root .hk546-admin .hk546-filters :is(input,select,button){box-sizing:border-box;width:100%;min-width:0;min-height:44px;height:auto;font-size:16px;padding:9px 10px}
 html body[data-surface=web] #app-root .hk546-admin .hk546-table{overflow:visible;min-width:0;max-width:100%}
 html body[data-surface=web] #app-root .hk546-admin table.hk612-orders{position:relative;display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;min-height:0!important;white-space:normal!important;border:0!important;table-layout:auto!important}
 html body[data-surface=web] #app-root .hk546-admin table.hk612-orders thead{position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
 html body[data-surface=web] #app-root .hk546-admin table.hk612-orders tbody{display:grid!important;gap:10px!important;width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;align-content:start!important;grid-auto-rows:max-content!important}
 html body[data-surface=web] #app-root .hk546-admin table.hk612-orders tbody tr{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:none!important;grid-auto-rows:min-content!important;align-items:start!important;align-content:start!important;align-self:start!important;gap:10px 14px!important;box-sizing:border-box;width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;min-height:0!important;padding:12px!important;border:1px solid var(--theme-line,#d7e2df)!important;border-radius:12px;background:var(--theme-panel,#fff)}
 html body[data-surface=web] #app-root .hk546-admin table.hk612-orders tbody td{display:block!important;box-sizing:border-box;min-width:0!important;width:auto!important;max-width:100%!important;height:auto!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;text-align:start!important;vertical-align:top!important;font-size:14px;line-height:1.5}
 html body[data-surface=web] #app-root .hk546-admin table.hk612-orders tbody td::before{content:attr(data-label);display:block;margin:0 0 3px;color:var(--theme-muted,#657870);font-size:12px;line-height:1.5;font-weight:500}
 html body[data-surface=web] #app-root .hk546-admin table.hk612-orders tbody :is(.hk612-buyer,.hk612-actions){grid-column:1/-1!important}
 html body[data-surface=web] #app-root .hk546-admin table.hk612-orders .hk612-buyer strong{font-size:15px;line-height:1.5}
 html body[data-surface=web] #app-root .hk546-admin table.hk612-orders small{font-size:12px;line-height:1.5;margin-top:3px;overflow-wrap:anywhere}
 html body[data-surface=web] #app-root .hk546-admin .hk549-row-actions{display:flex;align-items:stretch;gap:8px;min-width:0;max-width:100%}
 html body[data-surface=web] #app-root .hk546-admin .hk549-row-actions .button{box-sizing:border-box;flex:1 1 8rem;min-width:0;max-width:100%;min-height:44px;height:auto;padding:9px 10px;font-size:14px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;justify-content:center;text-align:center}
 html body[data-surface=web] #app-root .hk546-admin .hk546-pagination{gap:8px;margin-top:12px;min-height:0;height:auto;font-size:13px}
 html body[data-surface=web] #app-root .hk546-admin .hk546-pagination button{min-height:44px}
 /* Student lists already use cards. Prevent inherited heights or stretched grid rows adding blank space. */
 html body[data-surface=web] #app-root table.school470-students-table:is(.school483-groups,.sl-table579) tbody{height:auto!important;min-height:0!important;align-content:start!important;grid-auto-rows:max-content!important}
 html body[data-surface=web] #app-root table.school470-students-table:is(.school483-groups,.sl-table579) tbody>tr:is([data-school483-student],[data-sl-row]){height:auto!important;min-height:0!important;grid-template-rows:none!important;grid-auto-rows:min-content!important;align-content:start!important;align-self:start!important;row-gap:6px!important;padding:10px 12px!important}
 html body[data-surface=web] #app-root table.school470-students-table:is(.school483-groups,.sl-table579) tbody>tr:is([data-school483-student],[data-sl-row])>td{height:auto!important;min-height:0!important;vertical-align:top!important}
 html body[data-surface=web] #app-root .school470-students-page table.school483-groups tbody td:first-child{padding-top:0!important;align-self:start!important}
 html body[data-surface=web] #app-root .school470-students-page .school483-courses summary{min-height:44px!important;box-sizing:border-box;padding-block:6px!important;gap:3px 8px!important}
 html body[data-surface=web] #app-root .school470-students-page .school486-student-identity{min-height:0!important;gap:3px!important}
 html body[data-surface=web] #app-root .school470-students-page .school483-enrollments{height:auto!important;min-height:0!important;align-content:start!important;grid-auto-rows:min-content!important}
}
@media(max-width:480px){
 html body[data-surface=web] #app-root .hk546-admin .hk546-filters{grid-template-columns:minmax(0,1fr)}
}

/* MN617 original: /Web/assets/nav603.css */
/* 603: keep the primary navigation visible above the page on desktop.
 * Below 1400px use a second header row rather than replacing the links with
 * the phone drawer. The existing sticky header remains in document flow.
 * Phone layouts and dedicated scanner/campaign shells retain their rules.
 */
@media (min-width: 768px) and (max-width: 1399.98px) {
  html:not(.scanner-access-only448):not(.penny-campaign-only473)
  body[data-surface="web"] .site-header.web-header .header-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    align-items: center !important;
    column-gap: 20px !important;
    row-gap: 4px !important;
    box-sizing: border-box;
    width: 100% !important;
    max-width: 1600px !important;
    padding: 10px clamp(16px, 2vw, 32px) 6px !important;
  }

  html:not(.scanner-access-only448):not(.penny-campaign-only473)
  body[data-surface="web"] .site-header.web-header .header-inner > .web-brand {
    grid-area: 1 / 1 !important;
    justify-self: start !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: max-content;
    max-width: 180px;
    margin: 0 !important;
  }

  html:not(.scanner-access-only448):not(.penny-campaign-only473)
  body[data-surface="web"] .site-header.web-header .web-header-actions {
    grid-area: 1 / 2 !important;
    justify-self: end !important;
    display: flex !important;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100%;
    margin: 0 !important;
  }

  html:not(.scanner-access-only448):not(.penny-campaign-only473)
  body[data-surface="web"] .site-header.web-header .web-main-nav {
    grid-area: 2 / 1 / 3 / -1 !important;
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    justify-self: stretch;
    gap: 2px clamp(10px, 1.5vw, 20px);
    position: relative;
    inset: auto;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    max-width: none;
    margin: 0;
    padding: 4px 0;
    overflow: visible;
    font-size: 14px;
    line-height: 1.5;
  }

  html:not(.scanner-access-only448):not(.penny-campaign-only473)
  body[data-surface="web"] .site-header.web-header .web-main-nav > a,
  html:not(.scanner-access-only448):not(.penny-campaign-only473)
  body[data-surface="web"] .site-header.web-header .web-main-nav > details > summary {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding-block: 6px;
    white-space: nowrap;
  }

  html:not(.scanner-access-only448):not(.penny-campaign-only473)
  body[data-surface="web"] .site-header.web-header .web-main-nav > details {
    position: relative;
    flex: 0 0 auto;
  }

  html:not(.scanner-access-only448):not(.penny-campaign-only473)
  body[data-surface="web"] .site-header.web-header .web-menu-toggle,
  html:not(.scanner-access-only448):not(.penny-campaign-only473)
  body[data-surface="web"] .site-header.web-header .web-header-social {
    display: none !important;
  }
}
