/* ============================================================================
   RESPONSIVE STYLES — base (desktop+ defaults) + max-width cascade
   (largest → smallest). Single direction. No min-width queries.

   Smaller-screen rules win via source order at the overlap.
   ============================================================================ */

/* ── Base (desktop+ defaults — overridden by max-width cascades below) ────── */
.side-bar-toggle { display: none; }
.main-logo-aspire-mobile { display: none !important; }
.contact-left-panel .signup-container { margin: auto !important; }
.main-logo-small,
.main-logo-small.logo-default,
.main-logo-small.logo-dark { display: none !important; }
[data-theme="dark"] .main-logo-small,
[data-theme="dark"] .main-logo-small.logo-default,
[data-theme="dark"] .main-logo-small.logo-dark { display: none !important; }
.container { min-width: 0 !important; max-width: 1400px; margin-left: auto; margin-right: auto; }
.contact-us-full { margin-left: 30px !important; margin-right: 30px !important; }

@media (max-width: 1600px) {
    /* Desktop (1200-1599) */
    .nav-bar { padding: 0 8px; }
}

@media (max-width: 1200px) {
    /* Laptop (992-1199) */
    .signup-image-container { display: none !important; }
    .signup-container { flex: 0 0 100%; max-width: 100%; justify-content: center !important; padding-right: 0 !important; }
    .container { min-width: 100% !important; max-width: none !important; }
    .signup-container-wrapper { margin-bottom: 96px !important; }
    .contact-us-full { margin-left: revert !important; margin-right: revert !important; }
}

@media (max-width: 992px) {
    /* Tablet (768-991) */
    .main-logo-large { display: none; }
    .main-logo-aspire { display: none !important; }
    .ah-grid { grid-template-columns: repeat(2, 1fr) !important; }
    .bp-post-page { max-width: 100%; }
    .bp-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
    .admin-analytics-wrapper { flex-direction: column !important; }
    .contact-us-full { flex-direction: column !important; }
    .profileTab-left-col, .profileTab-right-col { margin-left: 0 !important; margin-right: 0 !important; }
    .profileTab-save-wrapper-desktop { display: none !important; }
    .profileTab-save-wrapper-mobile { display: flex !important; flex-direction: column !important; width: 100% !important; align-items: stretch !important; }
    .profileTab-save-mobile-button { min-width: 100% !important; width: 100% !important; }
    .profileTab-checklist-wrap { order: 2 !important; margin-top: 24px !important; }
    .profileTab-social-section { order: 1 !important; margin-top: 0 !important; }
    .contact-page-root { flex-direction: column !important; }
    .contact-left-panel { flex: 0 0 100% !important; max-width: 100% !important; min-width: 0 !important; padding: 48px 40px !important; width: 100% !important; }
    .contact-form-card { width: 100% !important; min-width: 0 !important; max-width: none !important; margin: 0 !important; }
    /* Brand Footprint redesign — tablet */
    .bf-body--result { padding-left: 16px; padding-right: 16px; }
    .t-row-2 { grid-template-columns: 1fr; }
    .t-row-4 { grid-template-columns: repeat(2, 1fr); }
    .t-snap-grid { grid-template-columns: repeat(2, 1fr); }
    .t-channels { grid-template-columns: 1fr; }    .social-grid { grid-template-columns: repeat(2, 1fr); }
    .org-grid { grid-template-columns: repeat(2, 1fr); }
    .brand-id { grid-template-columns: 1fr; gap: 16px; }
    .brand-id-stats { grid-template-columns: repeat(4, 1fr); gap: 16px; }
    .brand-swatches { grid-template-columns: repeat(4, 1fr); }
    .container { min-width: 100% !important; }
    .main-logo-aspire-mobile { display: revert !important; }
    .contact-left-panel .signup-container { margin: revert !important; }
    .main-logo-small.logo-default { display: inline !important; }
    .main-logo-small.logo-dark { display: none !important; }
    [data-theme="dark"] .main-logo-small.logo-default { display: none !important; }
    [data-theme="dark"] .main-logo-small.logo-dark { display: inline !important; }
    .signup-container-wrapper { margin-bottom: revert !important; }
}

@media (max-width: 767px) {
    /* Small tablet (576-767) */
    .contact-left-panel { padding: 40px 32px !important; }
    .container { min-width: 100% !important; max-width: 100% !important; padding-left: 5px !important; padding-right: 5px !important; }
    .side-bar-toggle { display: revert; margin: 0; }
    .button-login,
    .button-signup,
    .button-switch-admin { display: none; }
    .nav-bar-start { display: none !important; }
    #collapsible-nav-dropdown { display: none !important; }
    .nav-bar { margin-bottom: 30px; }
    .navbar-nav .dropdown-menu { display: none; }
    .login-panel { margin-top: 120px !important; }
    .aa-summary { grid-template-columns: repeat(2, 1fr) !important; }
    .ah-grid { grid-template-columns: repeat(2, 1fr) !important; }
    .bp-grid { grid-template-columns: 1fr; gap: 16px; }
    .bp-post-title { font-size: 30px; }
    .contact-us-sidebar { display: flex !important; flex-direction: column !important; align-self: center !important; margin-top: 30px !important; min-width: 100% !important; }
    .contact-us-main { min-width: 100% !important; }
    .contact-us-full { margin-left: 0 !important; margin-right: 0 !important; }
    .login-wrapper,
    .pass-reset-wrapper { flex-direction: column; min-width: calc(100vw - 60px) !important; margin: 60px auto 0 auto !important; padding: 5px !important; }
    .login-content, .pass-reset-content { min-width: 80% !important; margin: 0 auto !important; padding: 30px; }
    .pass-reset-wrapper { min-width: calc(100vw - 60px) !important; margin: 60px 0 0 10px !important; }
    [data-theme="dark"] .main-logo-large.logo-dark { display: none; }
    .main-header-title { font-size: 36px !important; }
    .register-modal .modal-content { width: auto !important; }
    .onboarding-col-left { min-width: 80% !important; }
    .aic-body { grid-template-columns: 1fr; }
    .ip-card--bio, .ip-card--niches, .ip-card--metrics, .ip-card--contact, .ip-card--meta { grid-column: span 12; }
    .ip-hero__body { flex-direction: column; gap: 24px; }
    .ip-hero__actions { align-items: flex-start; flex-direction: row; }
    /* Brand Footprint redesign — small tablet */
    .t-canvas { padding: 20px 16px 24px; }
    .t-shell-h { padding: 14px 16px 0; }
    .t-tabs { margin: 0 -16px; padding: 4px 16px 12px; }
    .t-row-4 { grid-template-columns: repeat(2, 1fr); }
    .t-snap-grid { grid-template-columns: repeat(2, 1fr); }    .social-grid { grid-template-columns: repeat(2, 1fr); }
    .org-grid { grid-template-columns: 1fr; }
    .t-globe-stats { grid-template-columns: repeat(2, 1fr); row-gap: 14px; }
    .t-brand-row { grid-template-columns: 48px 1fr; gap: 14px; }
    .t-brand-mark { width: 48px; height: 48px; font-size: 16px; border-radius: 12px; }
    .t-brand-name { font-size: 22px; }
    .org-bar { grid-template-columns: 120px 1fr 60px; }
    .org-bar-pct { display: none; }
    .social-ch { grid-template-columns: 10px 1fr auto; gap: 8px; }
    .social-ch-bar { display: none; }
    .brand-id-stats { grid-template-columns: repeat(2, 1fr); }
    .brand-pos-grid { grid-template-columns: 1fr; }
    .brand-swatches { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 576px) {
    /* Phablet (500-576) */
    .contact-left-panel { padding: 32px 24px !important; }
    .bp-post-title { font-size: 28px; }
    .app-header-top-row { flex-wrap: wrap !important; gap: 8px !important; }
    .if-header__chips { flex-shrink: 1 !important; min-width: 0 !important; max-width: 100% !important; }
    .if-mode-tabs-left { flex-wrap: wrap !important; }
    .main-header-title { font-size: 32px !important; }
    .generate-hero-row { padding: 42px 12px 56px 20px !important; flex-direction: column !important; }
    .generate-hero-title { font-size: 33px !important; }
    .generate-hero-text { font-size: 15px !important; }
    .generate-textarea { font-size: 16px !important; }
    .generate-reset-icon { top: 10px !important; right: 10px !important; }
    .ai-notification-text { font-size: 15px !important; }
    .ai-notification-button { font-size: 15px !important; }
    .home-steps { grid-template-columns: 1fr; gap: 16px; }
    .home-steps__item:not(:last-child)::after { display: none; }
    .home-wyg__heading { font-size: 28px; }
    .home-wyg { padding: 56px 24px 72px; }
    .generate-hero-right { min-width: auto !important; }
    .modal-header .btn-close { transform: scale(0.7); top: 12px; right: 12px; }
    .atc-tab-bar { flex-wrap: nowrap !important; overflow-x: auto !important; scrollbar-width: none !important; }
    .atc-tab-bar::-webkit-scrollbar { display: none !important; }
    .atc-tab { flex-shrink: 0 !important; font-size: 11px !important; padding: 7px 10px !important; white-space: nowrap !important; }
    .notificationsTab-status-text { font-size: 14px !important; min-width: 100% !important; }
    .bc-list { grid-template-columns: 1fr; }
    .bc-gen-results { grid-template-columns: 1fr; }
    /* Brand Footprint redesign — phablet */
    .t-row-4 { grid-template-columns: 1fr 1fr; }
    .t-snap-grid { grid-template-columns: 1fr; }    .social-grid { grid-template-columns: 1fr; }
    .news-row { grid-template-columns: 1fr auto; }
    .news-row .news-cat { display: none; }
    .job-row { grid-template-columns: 1fr auto; }
    .sig-row { grid-template-columns: 22px 1fr auto; }
    .sig-row svg { display: none; }
    .brand-id-stats { grid-template-columns: repeat(2, 1fr); gap: 12px; }
    .brand-swatches { grid-template-columns: repeat(2, 1fr); }
    .t-promo { flex-direction: column; align-items: stretch; gap: 12px; }
    .t-promo .t-btn-primary { width: 100%; }
    .t-tabs { font-size: 12px; }
    .t-tab { padding: 8px 10px; font-size: 12px; }
    .bf-socials-empty { flex-direction: column; align-items: stretch; }
}

@media (max-width: 500px) {
    /* Small phablet (415-500) */
    .contact-left-panel { padding: 24px 20px !important; }
    .contact-us-full { margin-left: -15px !important; margin-right: -15px !important; }
    .contact-us-main { margin: 0 !important; overflow-y: auto !important; }
    .login-content,
    .pass-reset-content { max-width: 100% !important; }
    .nav-bar { padding: 0 5px; }
    .home-wyg { padding: 48px 22px 64px; }
    .home-wyg__heading { font-size: 26px; margin-bottom: 32px; }
    .settings-full-page .nav-tabs { font-size: 13px !important; margin: 8px 0 30px 0 !important; width: calc(100%) !important; }
    .settings-title { font-size: 24px !important; }
    .main-header { padding-top: 0 !important; }
    .generate-step1-wrapper { padding: 0 18px !important; }
    .generate-page-subtitle { font-size: 12px !important; }
    .templates-thumb-skeleton { width: 86.749% !important; }
    .generate-hero-title { font-size: 30px !important; }
    .generate-hero-text { font-size: 14px !important; }
    .generate-textarea { font-size: 13px !important; }
    .generate-reset-icon { top: 8px !important; right: 8px !important; }
    .bp-post-title { font-size: 26px; }
    .bp-post-body { font-size: 15px; }
    .main-header-title { font-size: 35px !important; }
    .generate-copy-button { right: -8px !important; }
    .generate-page-title { font-size: 26px !important; }
    .ai-notification-text { font-size: 14px !important; }
    .ai-notification-button { font-size: 13px !important; }
    .nav-bar-end { margin-left: -30px !important; }
    .navbar-brand { margin-right: 0 !important; }
    .main-logo-wrapper { margin: 0 !important; }
    .profileTab-wrapper { justify-content: center !important; margin-left: 0 !important; }
}

@media (max-width: 415px) {
    /* Mobile (0-415) */
    .contact-left-panel { padding: 24px 16px !important; }
    .signup-wrapper { margin: 0 30px !important; min-width: calc(100vw - 30px) !important; max-width: calc(100vw - 30px) !important; padding: 60px 15px !important; }
    .bp-grid { gap: 14px; }
    .home-wyg { padding: 40px 18px 56px; }
    .home-wyg__heading { font-size: 24px; margin-bottom: 28px; }
    .home-steps__item { padding: 22px 18px 18px; }
    .home-steps__num { font-size: 2.2rem; margin-bottom: 10px; }
    .home-includes { margin-top: 36px; }
    .home-includes__chip { font-size: 0.78rem; padding: 7px 12px; }
    .bp-page-title { font-size: 26px; }
    .bp-page-sub { font-size: 14px; }
    .bp-post-title { font-size: 24px; }
    .bp-post-h2 { font-size: 18px; }
    .bp-post-h3 { font-size: 16px; }
    .bp-post-cover { border-radius: 10px; height: 220px; }
    .bc-card-actions { flex-wrap: wrap; }
    .bc-toggle-wrap { width: 100%; margin-right: 0; }
    .bc-editor-actions { flex-direction: column; }
    .bc-editor-actions .bc-primary-btn,
    .bc-editor-actions .bc-secondary-btn { width: 100%; text-align: center; }
    .profileTab-left-col,
    .profileTab-right-col { margin-left: -24px !important; }
    .side-bar-toggle { margin: 0; }
    .main-header-title { font-size: 30px !important; }
    .main-logo-small { margin-right: -8px; margin-left: -8px; }
    .onboarding-item { flex-wrap: nowrap; }
    .aa-stat__num { font-size: 18px !important; }
    .generate-hero-row { padding: 36px 8px 48px 15px !important; flex-direction: column !important; }
    .generate-copy-button { right: -16px !important; }
    .generate-page-title { font-size: 24px !important; }
    .ai-notification-text { font-size: 13px !important; }
    .ai-notification-button { font-size: 11px !important; }
    .ip-hero__body { flex-direction: column; gap: 20px; }
    .ip-hero__actions { align-items: flex-start; flex-direction: column; }
    .ip-hero__name { font-size: 1.4rem; }
}
