@media (max-width: 1120px) {
    .bl-kpi-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .bl-dashboard-columns, .bl-overview-grid { grid-template-columns: minmax(0,1fr) 300px; }
}
@media (max-width: 900px) {
    :root { --bl-topbar: 62px; }
    .bl-app { display: block; }
    .bl-sidebar { position: fixed; left: 0; top: 0; width: min(88vw,316px); transform: translateX(-104%); transition: transform .2s ease; box-shadow: 18px 0 45px rgba(24,24,23,.14); }
    .bl-app.is-menu-open .bl-sidebar { transform: translateX(0); }
    .bl-sidebar-close { display: inline-grid; }
    .bl-mobile-menu { display: inline-grid; }
    .bl-overlay { position: fixed; inset: 0; z-index: 55; border: 0; background: rgba(24,24,23,.34); }
    .bl-app.is-menu-open .bl-overlay { display: block; }
    .bl-topbar { padding: 0 14px; }
    .bl-topbar-title { display: none; }
    .bl-topbar-center { margin-left: auto; }
    .bl-site-switch { max-width: min(48vw,300px); }
    .bl-site-switch select { min-width: 0; max-width: 100%; }
    .bl-content { padding: 26px 18px 92px; }
    .bl-mobile-nav { position: fixed; left: 12px; right: 12px; bottom: max(10px,env(safe-area-inset-bottom)); z-index: 50; min-height: 58px; padding: 5px; border: 1px solid rgba(209,208,202,.92); border-radius: 16px; background: rgba(255,255,255,.94); box-shadow: 0 16px 45px rgba(24,24,23,.14); backdrop-filter: blur(18px); display: grid; grid-template-columns: repeat(5,1fr); }
    .bl-mobile-nav a, .bl-mobile-nav button { min-width: 0; min-height: 46px; padding: 4px 2px; border: 0; border-radius: 11px; background: transparent; color: var(--bl-muted); display: grid; place-items: center; align-content: center; gap: 3px; font-size: 8px; font-weight: 800; cursor: pointer; }
    .bl-mobile-nav .bl-icon { width: 17px; height: 17px; }
    .bl-mobile-nav a.is-active { background: var(--bl-soft-2); color: var(--bl-brand); }
    .bl-overview-grid, .bl-dashboard-columns, .bl-settings-grid, .bl-state-panel-grid { grid-template-columns: 1fr; }
    .bl-progress-card { min-height: 180px; }
}
@media (max-width: 760px) {
    .bl-page-head { align-items: flex-start; }
    .bl-page-head h1 { font-size: 29px; }
    .bl-page-head p:not(.bl-eyebrow) { font-size: 11.5px; }
    .bl-grid-2, .bl-grid-3, .bl-grid-4, .bl-form-grid, .bl-onboarding-layout, .bl-site-grid { grid-template-columns: 1fr; }
    .bl-site-grid { gap: 10px; }
    .bl-table-shell { border: 0; background: transparent; overflow: visible; }
    .bl-table-wrap { overflow: visible; }
    .bl-table.bl-table-responsive { min-width: 0; display: block; }
    .bl-table.bl-table-responsive thead { display: none; }
    .bl-table.bl-table-responsive tbody { display: grid; gap: 9px; }
    .bl-table.bl-table-responsive tr { display: grid; padding: 13px; border: 1px solid var(--bl-line); border-radius: 13px; background: var(--bl-surface); }
    .bl-table.bl-table-responsive td { min-height: 37px; padding: 8px 0; border-bottom: 1px solid var(--bl-line); display: grid; grid-template-columns: 95px minmax(0,1fr); align-items: center; gap: 12px; text-align: right; }
    .bl-table.bl-table-responsive td::before { content: attr(data-label); color: var(--bl-muted-2); font-size: 8px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; text-align: left; }
    .bl-table.bl-table-responsive td:last-child { padding-bottom: 0; border-bottom: 0; }
    .bl-table.bl-table-responsive .bl-table-actions { white-space: normal; }
    .bl-table.bl-table-responsive .bl-member-cell { justify-content: flex-end; }
    .bl-table.bl-table-responsive .bl-compact-select { margin-left: auto; }
}
@media (max-width: 620px) {
    .bl-topbar-center .bl-button { display: none; }
    .bl-site-switch { max-width: calc(100vw - 170px); border-color: transparent; background: transparent; padding-inline: 4px; }
    .bl-site-switch .bl-icon { display: none; }
    .bl-content { padding-inline: 13px; }
    .bl-page-head { display: grid; gap: 13px; }
    .bl-page-actions { width: 100%; }
    .bl-page-actions .bl-button { flex: 1; }
    .bl-card, .bl-card-wide { padding: 16px; }
    .bl-focus-card { padding: 22px; min-height: 225px; }
    .bl-focus-card h2 { font-size: 28px; }
    .bl-kpi-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .bl-kpi-card { min-height: 112px; padding: 14px; }
    .bl-kpi-card > strong { font-size: 24px; }
    .bl-segments { width: 100%; overflow-x: auto; }
    .bl-segments a, .bl-segments button { flex: 1; white-space: nowrap; }
    .bl-modal { padding: 0; place-items: end stretch; }
    .bl-modal-panel { width: 100%; max-height: 94vh; border-radius: 18px 18px 0 0; border-bottom: 0; }
    .bl-modal-head { min-height: 62px; }
    .bl-auth { padding: 16px 11px; }
    .bl-auth-card { padding: 23px 17px; }
    .bl-auth-links { flex-direction: column; }
    .bl-toast-region { right: 12px; bottom: 82px; width: calc(100vw - 24px); }
}
@media (max-width: 420px) {
    .bl-kpi-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
    .bl-kpi-card { min-height: 106px; }
    .bl-table.bl-table-responsive td { grid-template-columns: 78px minmax(0,1fr); }
}

@media (max-width: 480px) {
    .bl-topbar-actions .bl-popover-wrap:first-child { display: none; }
}
