/* Global layout breakpoints. Navigation responsiveness lives in navigation.css. */
@media (max-width: 1500px) {
    :root { --content-padding-x: 24px; --content-padding-y: 24px; }
    .workspace { grid-template-columns: minmax(0, 1fr) 210px; gap: 18px; }
    .utility-section { padding: 14px 0; }
    .attention-grid { gap: 12px; }
    .gradebook-filters { gap: 10px; }
}

@media (max-width: 1280px) {
    :root { --sidebar-width: 216px; --content-padding-x: 20px; }
    .workspace { grid-template-columns: minmax(0, 1fr); }
    .utility-column { display: none; }
    .gradebook-filters { grid-template-columns: 1fr 1fr; }
    .settings-grid { gap: 14px; }
    .today-columns { gap: 16px; }
    .group-summary { grid-template-columns: repeat(3,1fr); }
}

@media (max-width: 980px) {
    .attention-grid,.today-columns,.case-grid { grid-template-columns: 1fr; }
    .provider-details { grid-template-columns: 1fr; }
    .integration-layout { grid-template-columns: 1fr; }
    .summary-card { grid-template-columns: repeat(2, 1fr); }
    .start-work-controls { grid-template-columns: 1fr; }
    .metric:nth-child(3),.metric:nth-child(4) { border: 0; }
}

@media (max-width: 760px) {
    body { padding-bottom: 0; }
    .mobile-header { position: sticky; z-index: 30; top: 0; display: flex; min-height: var(--topbar-height); align-items: center; gap: 10px; padding: 8px 14px; border-bottom: 1px solid var(--border); background: var(--surface); }
    .mobile-header .brand { color: var(--text); font-size: 16px; font-weight: 750; }
    .mobile-header .brand { flex: 1; }
    .mobile-theme { width: auto; min-height: 36px; }
    .workspace,.today-workspace,.gradebook-workspace { padding: 20px 14px 32px; }
    .app-shell > .main-column { padding: 20px 14px 32px; }
    .input,.select,textarea { font-size: 16px; }
    .button,.icon-button { min-height: 44px; }
    #attendance-body td:first-child { min-width: 160px; }
    .page-heading,.page-header { align-items: stretch; flex-direction: column; }
    .page-heading > .button { width: 100%; }
    .heading-actions { display: grid; width: 100%; grid-template-columns: repeat(2,minmax(0,1fr)); }
    .heading-actions .button { width: 100%; min-width: 0; }
    .start-work-card { padding: 16px; }
    .start-work-actions { display: grid; grid-template-columns: 1fr; }
    .work-steps { display: grid; gap: 10px; }
    .work-steps li:not(:last-child)::after { display: none; }
    .select-compact { width: 100%; }
    .analysis-card,.toolbar,.gradebook-filters { grid-template-columns: 1fr; }
    .analysis-status { justify-self: start; }
    .form-grid,.settings-grid,.ai-insight-grid { grid-template-columns: 1fr; }
    .analytics-workspace { padding: 20px 14px 32px; }
    .analytics-insight-grid { grid-template-columns: 1fr; }
    .form-field.full,.settings-grid > .settings-card:last-child { grid-column: auto; }
    .summary-three { grid-template-columns: 1fr 1fr; }
    .summary-three .metric:nth-child(3) { grid-column: 1 / -1; }
    .stack-row { align-items: flex-start; flex-direction: column; }
    .gradebook-scroll { max-height: calc(100vh - 370px); overscroll-behavior-x: contain; }
    .gradebook-table .sticky-student { min-width: 178px; max-width: 178px; }
    .toast-region { right: 12px; bottom: 76px; left: 12px; }
    .toast { width: 100%; min-width: 0; }
}

@media (max-width: 520px) {
    .summary-card,.summary-three { grid-template-columns: 1fr; }
    .metric + .metric { border: 0; }
    .heading-actions { grid-template-columns: 1fr; }
    .drawer-header,.drawer-body { padding-right: 16px; padding-left: 16px; }
}

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