@media (max-width: 900px) {
    .app-main { margin-left: 0; }
    .app-sidebar { transform: translateX(-100%); }
    .app-sidebar.is-open { transform: translateX(0); box-shadow: var(--shadow-md); }
    .app-header__menu { display: block; }
    .app-content { padding: 28px 22px; }
    .dashboard-grid { grid-template-columns: 1fr; }
    .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .module-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .knowledge-layout { grid-template-columns: 1fr; }
    .free-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .question-index { position: static; }
    .question-index__list { max-height: 260px; }
    .app-overlay.is-visible { position: fixed; inset: 0; z-index: 25; display: block; background: rgb(16 24 40 / 42%); }
}

@media (max-width: 560px) {
    .app-header { height: 68px; padding: 0 16px; }
    .app-header__user { display: none; }
    .app-header__account { gap: 6px; }
    .app-header__avatar { width: 34px; height: 34px; }
    .app-content { padding: 24px 16px; }
    .app-card, .login-panel { padding: 22px; }
    .metric-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
    .metric-card { min-height: 128px; padding: 17px; }
    .progress-hero { display: grid; gap: 14px; }
    .page-heading--split { display: grid; }
    .workspace-summary { text-align: left; }
    .workspace-toolbar { display: grid; }
    .module-grid { grid-template-columns: 1fr; }
    .question-stage { min-height: auto; }
    .question-stage__context { margin-top: 36px; }
    .question-navigation { display: grid; grid-template-columns: 1fr 1fr; }
    .question-navigation a { grid-column: 1 / -1; grid-row: 2; }
    .response-editor__heading, .attachments__heading { display: grid; }
    .attachment-item { grid-template-columns: 40px minmax(0, 1fr) 28px; }
    .attachment-item [data-download-file] { grid-column: 1 / -1; }
    .audio-recorder__idle, .audio-recorder__review { display: grid; }
    .audio-recorder__review:not([hidden]) { display: grid; }
    .audio-recorder__review > div { justify-content: flex-end; }
    .free-hero { display: grid; padding: 24px; }
    .free-card-grid { grid-template-columns: 1fr; }
    .free-create__actions { display: grid; }
}
@media (max-width: 900px) {
    .agent-story { grid-template-columns: 1fr; }
    .agent-story > i { display: none; }
}

@media (max-width: 720px) {
    .agent-grid { grid-template-columns: 1fr; }
    .apprentice-progress { grid-template-columns: 1fr; gap: 14px; }
    .consultant-readiness { align-items: flex-start; flex-wrap: wrap; }
    .apprentice-chat__status { align-items: flex-start; flex-wrap: wrap; }
    .apprentice-chat__scope { width: 100%; text-align: center; }
    .apprentice-chat__messages { min-height: 360px; max-height: none; padding: 16px; }
    .chat-message { max-width: 90%; }
    .apprentice-chat__composer { grid-template-columns: 1fr; }
    .apprentice-chat__actions { width: 100%; }
    .apprentice-chat__actions .app-button { flex: 1; }
}
