/* ═══════════════════════════════════════════════════════════════
   B2BMarket Account — Responsive Styles
   Breakpoints: xl >1400 | lg 992-1399 | md 768-991 | sm <768 | xs <480
   ═══════════════════════════════════════════════════════════════ */


/* ── Large (1400px+) ─────────────────────────────────────────── */
@media only screen and (min-width: 1400px) {

    .auth_page .auth_brand {
        flex: 0 0 480px;
    }

    .auth_page .auth_brand_headline {
        font-size: 34px;
    }

    .auth_page .auth_form_box {
        max-width: 420px;
    }
}

@media (max-width: 991px) {
    .wanted_request_hero_metrics {
        grid-template-columns: 1fr;
    }

    .wanted_offer_metrics {
        grid-template-columns: repeat(2, 1fr);
    }

    .wanted_offer_contact_grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .wanted_offer_card_head {
        flex-direction: column;
    }

    .wanted_offer_status_meta {
        align-items: flex-start;
    }
}

@media (max-width: 640px) {
    .wanted_request_hero {
        padding: 16px;
        border-radius: 16px;
    }

    .wanted_request_hero_title {
        font-size: 21px;
    }

    .wanted_request_hero_taxonomy span {
        width: 100%;
        justify-content: center;
    }

    .wanted_offer_metrics,
    .wanted_offer_contact_grid {
        grid-template-columns: 1fr;
    }

    .wanted_offer_card {
        padding: 14px;
    }

    .wanted_offer_actions {
        flex-direction: column;
    }

    .wanted_offer_actions .btn,
    .wanted_offer_note {
        width: 100%;
        min-width: 0;
    }
}


/* ── Small Laptop (1200px – 1280px) ─────────────────────────── */
@media only screen and (max-width: 1280px) {

    .account_aside {
        width: 210px;
    }

    .account_main {
        margin-inline-start: 210px;
    }

    .account_layout.aside_collapsed .account_aside {
        width: 60px;
    }

    .account_layout.aside_collapsed .account_main {
        margin-inline-start: 60px;
    }

    .account_page_header_title {
        font-size: clamp(15px, 1.4vw, 18px);
    }
}

/* ── Medium / iPad Landscape (992px – 1199px) ────────────────── */
@media only screen and (max-width: 1199px) {

    .auth_page .auth_brand {
        flex: 0 0 380px;
        padding: 40px 40px;
    }

    .auth_page .auth_brand_headline {
        font-size: 26px;
    }

    .auth_page .auth_brand_logo {
        margin-bottom: 48px;
    }

    .account_aside {
        width: 200px;
    }

    .account_main {
        margin-inline-start: 200px;
    }

    .account_layout.aside_collapsed .account_aside {
        width: 60px;
    }

    .account_layout.aside_collapsed .account_main {
        margin-inline-start: 60px;
    }
}


/* ── iPad Portrait (768px – 991px) ──────────────────────────── */
@media only screen and (max-width: 991px) {

    .auth_page .auth_brand {
        flex: 0 0 300px;
        padding: 36px 32px;
    }

    .auth_page .auth_brand_logo {
        margin-bottom: 40px;
    }

    .auth_page .auth_brand_headline {
        font-size: 22px;
        letter-spacing: -0.3px;
    }

    .auth_page .auth_brand_desc {
        font-size: 13px;
        max-width: 240px;
    }

    .auth_page .auth_brand_features {
        display: none;
    }

    .auth_page .auth_brand_divider {
        margin: 16px 0;
    }

    .auth_page .auth_form_top {
        padding: 16px 28px;
    }

    .auth_page .auth_form_center {
        padding: 36px 24px;
    }

    .auth_page .auth_form_box {
        max-width: 360px;
    }

    .auth_page .auth_form_box_title {
        font-size: 22px;
    }

    .account_aside {
        width: 88px;
        transition: width var(--ease-out), transform var(--ease-out);
    }

    .account_main {
        margin-inline-start: 88px;
    }

    .account_aside .aside_logo {
        height: 64px;
        padding: 0 10px;
        justify-content: center;
    }

    .account_aside .aside_logo_link {
        justify-content: center;
        flex: none;
    }

    .account_aside .aside_logo_name,
    .account_aside .aside_nav_label,
    .account_aside .aside_nav_text,
    .account_aside .aside_user_info,
    .account_aside .aside_sign_out_form {
        display: none;
    }

    .account_layout.aside_mobile_open .account_aside {
        width: 240px;
        z-index: 320;
        box-shadow: var(--shadow-xl);
    }

    .account_layout.aside_mobile_open .aside_mobile_backdrop {
        display: block;
        position: fixed;
        inset: 0;
        background: rgba(17, 24, 39, .32);
        border: 0;
        padding: 0;
        margin: 0;
        z-index: 310;
    }

    .account_layout.aside_mobile_open .account_aside .aside_logo {
        justify-content: space-between;
        padding: 0 14px 0 18px;
    }

    .account_layout.aside_mobile_open .account_aside .aside_logo_link {
        justify-content: flex-start;
        flex: 1;
    }

    .account_layout.aside_mobile_open .account_aside .aside_logo_name,
    .account_layout.aside_mobile_open .account_aside .aside_nav_label,
    .account_layout.aside_mobile_open .account_aside .aside_nav_text,
    .account_layout.aside_mobile_open .account_aside .aside_user_info,
    .account_layout.aside_mobile_open .account_aside .aside_sign_out_form {
        display: block;
    }

    .account_aside .aside_toggle_btn {
        display: none;
    }

    .account_aside .aside_nav {
        padding: 12px 8px;
        gap: 8px;
    }

    .account_aside .aside_nav_group {
        gap: 6px;
        padding-bottom: 10px;
    }

    .account_aside .aside_nav_item,
    .account_layout.aside_collapsed .account_aside .aside_nav_item {
        width: 44px;
        min-width: 44px;
        height: 44px;
        padding: 0;
        margin-inline: auto;
        justify-content: center;
    }

    .account_layout.aside_mobile_open .account_aside .aside_nav_item {
        width: 100%;
        min-width: 0;
        padding: 0 10px;
        margin-inline: 0;
        justify-content: flex-start;
    }

    .account_layout.aside_mobile_open .account_aside .aside_nav_item::after {
        display: none;
    }

    .account_aside .aside_footer {
        padding: 10px 8px;
        justify-content: center;
    }

    .account_aside .aside_user,
    .account_layout.aside_collapsed .account_aside .aside_user {
        flex: none;
        padding: 0;
        border: none;
        background: transparent;
        justify-content: center;
    }

    .account_aside .aside_user_avatar {
        width: 42px;
        height: 42px;
    }

    .account_layout.aside_mobile_open .account_aside .aside_footer {
        justify-content: space-between;
        padding: 12px;
    }

    .account_layout.aside_mobile_open .account_aside .aside_user {
        flex: 1;
        padding: 8px;
        border: 1px solid var(--border-light);
        background: var(--c-white);
        justify-content: flex-start;
    }
}


/* ── Mobile (< 768px) ───────────────────────────────────────── */
@media only screen and (max-width: 767px) {

    .auth_page .auth_screen {
        flex-direction: column;
        min-height: 100vh;
    }

    /* Collapse brand panel into a slim top bar */
    .auth_page .auth_brand {
        flex: none;
        padding: 20px 24px;
        min-height: auto;
    }

    .auth_page .auth_brand_glow_top,
    .auth_page .auth_brand_glow_bottom {
        display: none;
    }

    .auth_page .auth_brand_inner {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        height: auto;
        gap: 12px;
    }

    .auth_page .auth_brand_logo {
        margin-bottom: 0;
    }

    .auth_page .auth_brand_logo_name {
        font-size: 16px;
    }

    .auth_page .auth_brand_logo_mark {
        width: 34px;
        height: 34px;
        font-size: 14px;
        border-radius: 9px;
    }

    /* Hide everything except logo on mobile bar */
    .auth_page .auth_brand_eyebrow,
    .auth_page .auth_brand_headline,
    .auth_page .auth_brand_divider,
    .auth_page .auth_brand_desc,
    .auth_page .auth_brand_features,
    .auth_page .auth_brand_footer {
        display: none;
    }

    /* Form side takes the rest */
    .auth_page .auth_form_side {
        flex: 1;
    }

    .auth_page .auth_form_side::before {
        display: none;
    }

    .auth_page .auth_form_top {
        padding: 14px 20px;
        border-bottom: 1px solid var(--border-light);
    }

    .auth_page .auth_form_center {
        flex: 1;
        padding: 32px 20px 40px;
        align-items: flex-start;
    }

    .auth_page .auth_form_box {
        max-width: 100%;
        width: 100%;
    }

    .auth_page .auth_form_box_header {
        margin-bottom: 24px;
    }

    .auth_page .auth_form_box_title {
        font-size: 22px;
    }

    .auth_page .auth_lang_menu {
        inset-inline-end: 0;
        inset-inline-start: auto;
    }

    .account_aside {
        width: 74px;
    }

    .account_main {
        margin-inline-start: 74px;
    }

    .account_layout.aside_mobile_open .account_aside {
        width: 220px;
    }

    .account_aside .aside_logo_mark {
        width: 34px;
        height: 34px;
        border-radius: 10px;
    }

    .account_aside .aside_logo_mark svg,
    .account_aside .aside_nav_icon svg {
        width: 16px;
        height: 16px;
    }

    .account_aside .aside_nav_item,
    .account_layout.aside_collapsed .account_aside .aside_nav_item {
        width: 40px;
        min-width: 40px;
        height: 40px;
    }

    .account_aside .aside_nav_icon {
        width: 24px;
        height: 24px;
    }

    .account_aside .aside_footer {
        min-height: 64px;
    }

    .account_aside .aside_user_avatar,
    .account_aside .aside_sign_out_btn {
        width: 36px;
        height: 36px;
    }
}


/* ── Small Mobile (< 480px) ─────────────────────────────────── */
@media only screen and (max-width: 479px) {

    .auth_page .auth_brand {
        padding: 16px 18px;
    }

    .auth_page .auth_brand_logo_name {
        font-size: 15px;
    }

    .auth_page .auth_form_top {
        padding: 12px 18px;
    }

    .auth_page .auth_form_center {
        padding: 24px 18px 32px;
    }

    .auth_page .auth_form_box_title {
        font-size: 20px;
    }

    .auth_page .auth_form_box_subtitle {
        font-size: 13px;
    }

    .auth_page .auth_field_wrap input,
    .auth_page .auth_field_wrap select {
        height: 44px;
        font-size: 14px;
    }

    .auth_page .btn_auth_submit {
        height: 46px;
        font-size: 14px;
    }

    /* Stack first/last name fields vertically */
    .auth_names_grid {
        grid-template-columns: 1fr !important;
    }

    .auth_page .auth_slug_prefix {
        font-size: 11px;
        padding: 0 9px;
    }

    .account_aside {
        width: 50px;
    }

    .account_main {
        margin-inline-start: 50px;
    }

    .account_layout.aside_mobile_open .account_aside {
        width: min(280px, calc(100vw - 22px));
    }

    .account_aside .aside_logo {
        padding: 0 8px;
    }

    .account_aside .aside_nav {
        padding: 10px 6px;
    }

    .account_aside .aside_nav_item,
    .account_layout.aside_collapsed .account_aside .aside_nav_item {
        width: 38px;
        min-width: 38px;
        height: 38px;
    }

    .account_aside .aside_footer {
        padding: 8px 6px;
    }
}

@media only screen and (max-width: 991px) {

    .account_profile_page .profile_banner .card-body,
    .account_profile_page .profile_panel .card-body,
    .account_profile_page .profile_side_card .card-body {
        padding: 1.05rem;
    }

    .product_table_body {
        padding: 1rem;
    }

    .product_filters_actions {
        flex-direction: column;
    }

    .product_tiers_head {
        flex-direction: column;
    }

    .product_tier_note_wrap {
        align-items: stretch;
    }

    .account_profile_page .profile_banner_head {
        flex-direction: column;
        align-items: flex-start;
    }

    .account_profile_page .profile_banner_status {
        justify-content: flex-start;
    }

    .account_profile_page .profile_panel_grid,
    .account_profile_page .profile_contact_grid,
    .account_profile_page .profile_password_grid {
        grid-template-columns: 1fr;
    }

    .account_profile_page .profile_password_field:last-child {
        grid-column: auto;
    }

    .account_profile_page .profile_password_help {
        flex-direction: column;
    }
}

@media only screen and (max-width: 767px) {

    .account_profile_page::before {
        inset: -18px 0 auto;
        height: 180px;
        border-radius: 26px;
    }

    .account_profile_page .profile_summary_cover {
        height: 120px;
    }

    .account_profile_page .profile_summary_body {
        padding: 0 16px 16px;
        margin-top: -42px;
    }

    .account_profile_page .profile_summary_avatar {
        width: 88px;
        height: 88px;
        border-radius: 24px;
        font-size: 28px;
    }

    .account_profile_page .profile_summary_name,
    .account_profile_page .profile_banner_title {
        font-size: 1.6rem;
    }

    .account_profile_page .profile_summary_actions {
        flex-direction: column;
    }

    .account_profile_page .profile_summary_actions>*,
    .account_profile_page .profile_summary_actions .btn {
        width: 100%;
    }

    .account_profile_page .profile_banner .card-body {
        padding: 18px;
    }

    .account_profile_page .profile_stat_card {
        padding: 16px;
    }

    .account_profile_page .profile_stat_value {
        font-size: 1.75rem;
    }

    .account_form_section {
        padding: .95rem 1rem;
    }

    .entity_form_section {
        padding: .95rem 1rem;
    }

    .account_section_head h6 {
        font-size: 1rem;
    }

    .product_main_image_preview,
    .product_main_image_placeholder,
    .product_main_image_preview_img {
        min-height: 180px;
        height: 180px;
    }

    .product_filters_actions .btn {
        width: 100%;
    }

    .product_tier_row {
        padding: .85rem;
    }

    .account_dropzone {
        min-height: 180px;
        border-radius: 16px;
        padding: 1rem;
    }
}

@media only screen and (max-width: 480px) {

    .account_profile_page .profile_summary_list div,
    .account_profile_page .profile_panel_item,
    .account_profile_page .profile_contact_item,
    .account_profile_page .profile_limits_list div {
        padding: 12px 13px;
        border-radius: 14px;
    }

    .account_profile_page .profile_summary_meta {
        gap: 6px 10px;
        font-size: .74rem;
    }

    .account_profile_page .profile_banner_text,
    .account_profile_page .profile_summary_text,
    .account_profile_page .profile_panel_text p {
        font-size: .9rem;
    }

    .account_page_header_title {
        font-size: 17px;
    }

    .account_profile_page .profile_panel_grid,
    .account_profile_page .profile_contact_grid {
        grid-template-columns: 1fr;
    }

    .account_profile_page .profile_panel_item:nth-child(even),
    .account_profile_page .profile_contact_item:nth-child(even) {
        padding-inline-start: 0;
        border-inline-start: none;
    }

    .account_profile_page .profile_panel_item:nth-last-child(-n+2),
    .account_profile_page .profile_contact_item:nth-last-child(-n+2) {
        border-bottom: 1px solid var(--border-light);
    }

    .account_profile_page .profile_panel_item:last-child,
    .account_profile_page .profile_contact_item:last-child {
        border-bottom: none;
    }
}


/* ── Product Details ─────────────────────────────────────────── */

@media only screen and (max-width: 1500px) {

    .prod_hero_actions {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media only screen and (max-width: 1199px) {

    .prod_detail_main_grid {
        grid-template-columns: 300px 1fr;
    }
}

@media only screen and (max-width: 991px) {

    .prod_detail_main_grid {
        grid-template-columns: 1fr;
    }

    .prod_detail_media {
        max-width: 560px;
    }

    .prod_hero_body {
        grid-template-columns: 1fr;
    }

    .prod_hero_actions {
        border-inline-start: none;
        border-top: 1px solid var(--border-light);
        min-width: unset;
        grid-template-columns: repeat(3, 1fr);
    }

    .prod_detail_metrics_row {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media only screen and (max-width: 767px) {

    .an_metric_card {
        flex-direction: column;
        gap: 6px;
        padding: 10px;
    }

    .prod_detail_shell {
        gap: 12px;
    }

    .prod_detail_metrics_row {
        grid-template-columns: 1fr 1fr;
    }

    .prod_detail_metric_card:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }

    .prod_detail_main_image_wrap {
        height: 240px;
    }

    .prod_detail_video_meta {
        flex-direction: column;
        align-items: flex-start;
    }

    .prod_detail_video_actions {
        width: 100%;
    }

    .prod_detail_video_actions .btn,
    .prod_detail_video_actions form {
        flex: 1 1 0;
    }

    .prod_detail_video_actions form .btn {
        width: 100%;
    }

    .prod_detail_gallery {
        grid-template-columns: repeat(3, 1fr);
    }

    .prod_detail_fields {
        grid-template-columns: 1fr;
    }

    .prod_detail_field:nth-child(even) {
        padding-inline-start: 0;
        border-inline-start: none;
    }

    .prod_detail_field:nth-last-child(-n+2) {
        border-bottom: 1px solid var(--border-light);
    }

    .prod_detail_field:last-child {
        border-bottom: none;
    }
}

@media only screen and (max-width: 479px) {

    .prod_hero_actions {
        grid-template-columns: repeat(2, 1fr);
    }

    .prod_detail_top_chips {
        flex-wrap: wrap;
    }

    .prod_detail_metrics_row {
        grid-template-columns: 1fr;
    }

    .prod_detail_metric_card:last-child:nth-child(odd) {
        grid-column: auto;
    }

    .prod_detail_gallery {
        grid-template-columns: repeat(2, 1fr);
    }
}


/* ── Topbar ──────────────────────────────────────────────────────── */

@media only screen and (max-width: 1199px) {

    .topbar_search_input {
        width: 200px;
    }

    .topbar_search_input:focus {
        width: 240px;
    }
}

@media only screen and (max-width: 991px) {

    .topbar_burger {
        display: flex;
    }

    .topbar_identity {
        display: none;
    }

    .topbar_search_input {
        width: 180px;
    }

    .topbar_search_input:focus {
        width: 220px;
    }
}

@media only screen and (max-width: 767px) {

    .account_topbar_inner {
        padding: 0 14px;
        gap: 10px;
    }

    .topbar_search_input {
        width: 140px;
    }

    .topbar_search_input:focus {
        width: 180px;
    }

    .topbar_lang_code {
        display: none;
    }

    .topbar_lang_btn {
        width: 38px;
        padding: 0;
    }
}

@media only screen and (max-width: 479px) {

    .topbar_search_wrap {
        display: none;
    }
}


/* ── Settings ────────────────────────────────────────────────────── */

@media only screen and (max-width: 1099px) {

    .settings_layout {
        grid-template-columns: 190px 1fr;
    }
}

@media only screen and (max-width: 991px) {

    .an_toolbar {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
    }

    .an_period_form {
        width: 100%;
        overflow-x: auto;
    }

    .db_banner {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .db_row_2col,
    .db_row_3col,
    .db_row_main_side {
        grid-template-columns: 1fr;
    }

    .an_hero {
        grid-template-columns: 1fr;
    }

    .an_metrics_col {
        grid-template-columns: repeat(3, 1fr);
    }

    .an_secondary_row {
        grid-template-columns: 1fr;
    }

    .subs_hero_inner {
        grid-template-columns: 1fr;
    }

    .subs_plans_grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .subs_meta_grid {
        grid-template-columns: 1fr 1fr;
    }

    .settings_layout {
        grid-template-columns: 1fr;
    }

    .settings_sidenav {
        position: static;
    }

    .settings_sidenav_inner {
        gap: 4px;
        padding: 8px;
    }

    .settings_sidenav_label {
        display: none;
    }

    .settings_sidenav_item {
        padding: 6px 10px;
        font-size: 12.5px;
        flex: 0 0 auto;
    }

    .settings_sidenav_icon {
        width: 24px;
        height: 24px;
    }

    .settings_display_grid {
        grid-template-columns: 1fr;
    }

    .team_stats_grid,
    .team_permissions_grid {
        grid-template-columns: 1fr 1fr;
    }

    .team_upgrade_inner {
        flex-direction: column;
        align-items: flex-start;
    }

    .settings_card_head {
        padding: 18px 18px 0;
    }

    .settings_form {
        padding: 16px 18px;
    }
}

@media only screen and (max-width: 767px) {

    .account_topbar_end {
        gap: 4px;
    }

    .an_metrics_col {
        grid-template-columns: repeat(2, 1fr);
    }

    .an_product_stats {
        display: none;
    }

    .settings_session_item,
    .settings_session_head,
    .subs_current_plan_head,
    .subs_plan_head,
    .subs_history_item {
        flex-direction: column;
        align-items: flex-start;
    }

    .subs_plans_grid {
        grid-template-columns: 1fr;
    }

    .subs_meta_grid {
        grid-template-columns: 1fr;
    }

    .team_stats_grid,
    .team_permissions_grid {
        grid-template-columns: 1fr;
    }

    .team_actions,
    .team_permission_legend,
    .team_table_meta {
        justify-content: flex-start;
    }

    .team_member_form .modal-body,
    .team_modal .modal-header,
    .team_modal_footer {
        padding-left: 18px;
        padding-right: 18px;
    }

    .settings_radio_group {
        grid-template-columns: 1fr;
    }

    .settings_theme_picker {
        flex-direction: row;
    }

    .settings_card_head {
        flex-direction: column;
        gap: 12px;
    }
}

@media only screen and (max-width: 479px) {

    .settings_shell {
        gap: 14px;
    }

    .settings_card_head {
        padding: 14px 14px 0;
    }

    .settings_form {
        padding: 14px;
    }

    .team_stat_card {
        padding: 15px;
    }

    .settings_toggle_row {
        padding: 12px 14px;
    }

    .settings_link_row {
        padding: 12px 14px;
    }
}

@media (max-width: 767px) {
    .settings_inline_fields {
        grid-template-columns: 1fr;
    }

    .settings_chip_grid {
        gap: 8px;
    }

    .settings_check_chip span {
        min-height: 36px;
        padding: 0 12px;
    }
}


/* ── Product filter — mobile bottom sheet ────────────────────── */

/* Desktop: hide mobile-only elements */
.acct_filter_open_btn {
    display: none;
}

.acct_filter_sheet {
    display: none;
}

@media only screen and (max-width: 767px) {


    /* Card header layout: intro + filter button side by side */
    .product_table_header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: .65rem;
        padding-bottom: 14px;
    }

    /* Mobile filter trigger button */
    .acct_filter_open_btn {
        display: inline-flex;
        align-items: center;
        gap: .4rem;
        padding: .42rem .85rem;
        border: 1px solid var(--border-light, #e5e7eb);
        border-radius: 10px;
        background: transparent;
        cursor: pointer;
        font-size: .82rem;
        font-weight: 500;
        color: var(--c-primary, #243b53);
        position: relative;
        line-height: 1;
        transition: background .15s ease, border-color .15s ease;
        flex-shrink: 0;
    }

    .acct_filter_open_btn:hover {
        background: var(--c-surface, #f8f9fa);
        border-color: var(--c-accent, #6366f1);
    }

    .acct_filter_open_btn svg {
        width: 15px;
        height: 15px;
        flex-shrink: 0;
    }

    .acct_filter_badge {
        position: absolute;
        top: -5px;
        inset-inline-end: -5px;
        width: 15px;
        height: 15px;
        border-radius: 999px;
        background: var(--c-accent, #6366f1);
        color: #fff;
        font-size: .6rem;
        font-weight: 700;
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
    }

    /* ── Bottom sheet shell ── */
    .acct_filter_sheet {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 1050;
        pointer-events: none;
    }

    .acct_filter_sheet.is_open {
        pointer-events: auto;
    }

    /* Backdrop */
    .acct_filter_sheet_bg {
        position: absolute;
        inset: 0;
        background: rgba(17, 24, 39, .38);
        opacity: 0;
        transition: opacity .28s ease;
        backdrop-filter: blur(2px);
        -webkit-backdrop-filter: blur(2px);
    }

    .acct_filter_sheet.is_open .acct_filter_sheet_bg {
        opacity: 1;
    }

    /* Sliding panel */
    .acct_filter_sheet_panel {
        position: absolute;
        bottom: 0;
        inset-inline: 0;
        background: #fff;
        border-radius: 22px 22px 0 0;
        padding-bottom: env(safe-area-inset-bottom, 0);
        transform: translateY(100%);
        transition: transform .32s cubic-bezier(.32, 0, .22, 1);
        max-height: 90vh;
        max-height: 90dvh;
        display: flex;
        flex-direction: column;
        overflow: hidden;
        box-shadow: 0 -8px 40px rgba(17, 24, 39, .14);
    }

    .acct_filter_sheet.is_open .acct_filter_sheet_panel {
        transform: translateY(0);
    }

    /* Drag handle */
    .acct_filter_sheet_drag {
        width: 38px;
        height: 4px;
        background: var(--border-light, #e5e7eb);
        border-radius: 999px;
        margin: 10px auto 0;
        flex-shrink: 0;
    }

    /* Header row */
    .acct_filter_sheet_head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: .85rem 1.25rem .75rem;
        border-bottom: 1px solid var(--border-light, #e5e7eb);
        flex-shrink: 0;
    }

    .acct_filter_sheet_title {
        font-size: .95rem;
        font-weight: 600;
        color: var(--c-primary, #243b53);
    }

    .acct_filter_sheet_close {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 30px;
        height: 30px;
        border: 1px solid var(--border-light, #e5e7eb);
        border-radius: 8px;
        background: transparent;
        cursor: pointer;
        padding: 0;
        color: var(--c-text-muted, #6b7280);
        transition: background .15s ease;
        flex-shrink: 0;
    }

    .acct_filter_sheet_close:hover {
        background: var(--c-surface, #f8f9fa);
    }

    .acct_filter_sheet_close svg {
        width: 15px;
        height: 15px;
    }

    /* Scrollable fields area */
    .acct_filter_sheet_form {
        display: flex;
        flex-direction: column;
        flex: 1;
        overflow: hidden;
        min-height: 0;
    }

    .acct_filter_sheet_fields {
        display: flex;
        flex-direction: column;
        gap: .9rem;
        padding: 1rem 1.25rem;
        overflow-y: auto;
        flex: 1;
        min-height: 0;
    }

    .acct_filter_field {
        display: flex;
        flex-direction: column;
        gap: .35rem;
    }

    .acct_filter_field .form-label {
        font-size: .78rem;
        font-weight: 600;
        color: var(--c-primary, #243b53);
        margin: 0;
        letter-spacing: .01em;
    }

    .acct_filter_field .form-control {
        min-height: 44px;
        border-radius: 10px;
    }

    /* Sticky action row */
    .acct_filter_sheet_actions {
        display: flex;
        gap: .6rem;
        padding: .85rem 1.25rem 1.25rem;
        border-top: 1px solid var(--border-light, #e5e7eb);
        flex-shrink: 0;
    }

    .acct_filter_sheet_actions .btn {
        flex: 1;
        min-height: 44px;
        border-radius: 11px;
    }

    .mkt_msg_sheet_panel {
        width: calc(100vw - 8px);
        height: 86vh;
        border-radius: 22px 22px 0 0;
    }

    .mkt_msg_sheet_head {
        padding: .85rem .85rem .9rem;
    }

    .mkt_msg_sheet_head_row {
        align-items: center;
    }

    .mkt_msg_sheet_head_actions {
        gap: .4rem;
    }

    .mkt_msg_open_link {
        display: none;
    }

    .mkt_msg_sheet_body {
        padding: .85rem .8rem 1rem;
    }

    .mkt_msg_bubble {
        max-width: 90%;
        padding: .76rem .85rem .7rem;
    }

    .mkt_msg_sheet_foot {
        padding: .75rem .8rem calc(.8rem + env(safe-area-inset-bottom));
    }

    .mkt_msg_compose_wrap {
        grid-template-columns: 1fr;
    }

    .mkt_msg_compose_btn {
        width: 100%;
        justify-content: center;
    }
}

/* ─── RahaBay Page — Responsive ─────────────────────────────────────────────── */

@media only screen and (max-width: 640px) {
    .rahabay_hero {
        grid-template-columns: 1fr;
        padding: 18px;
        border-radius: 18px;
    }

    .rahabay_feature_grid,
    .rahabay_metrics,
    .rahabay_sync_grid {
        grid-template-columns: 1fr;
    }

    .rahabay_preview_flow {
        grid-template-columns: 1fr;
    }

    .rahabay_preview_flow_arrow {
        display: none;
    }

    .rahabay_primary_cta,
    .rahabay_secondary_btn,
    .rahabay_primary_link_btn,
    .rahabay_disconnect_btn,
    .rahabay_sync_btn {
        width: 100%;
    }

    .rahabay_section_head,
    .rahabay_item_row,
    .rahabay_cred_field_row,
    .rahabay_sync_footer {
        flex-direction: column;
        align-items: flex-start;
    }

    .rahabay_item_row {
        padding: 14px;
    }

    .rahabay_sync_badge {
        width: 100%;
        justify-content: center;
    }

    .rahabay_cred_copy_btn {
        width: 100%;
        justify-content: center;
    }
}
