/*
 * CENTER CRM 0.12.31 — comprehensive mobile workspace
 * IMPORTANT: every rule in this file is media-scoped. Desktop layout is untouched.
 */

@media (max-width: 900px) {
  :root {
    --center-mobile-gutter: 12px;
    --center-mobile-radius: 16px;
    --center-mobile-touch: 44px;
  }

  html {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
  }
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }
  body.center-mobile-menu-open { overflow: hidden !important; }

  /* ---------- global shell / header ---------- */
  .container,
  .page-content {
    width: calc(100% - (var(--center-mobile-gutter) * 2));
    max-width: none;
    margin-inline: auto;
  }
  .page-content {
    min-width: 0;
    padding-top: 18px;
    padding-bottom: calc(32px + env(safe-area-inset-bottom));
  }
  .page-content > * { min-width: 0; }

  .topbar {
    position: sticky;
    z-index: 2500;
    top: 0;
    background: rgba(14,14,14,.97);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
  }
  .topbar-inner {
    width: calc(100% - 16px) !important;
    min-height: 64px;
    gap: 10px;
  }
  .brand.center-brand-final {
    min-width: 0;
    max-width: min(176px, 46vw);
  }
  .center-brand-logo-final {
    display: block;
    width: auto;
    max-width: 100%;
    height: 48px;
    object-fit: contain;
    object-position: left center;
  }
  .nav-toggle {
    min-width: var(--center-mobile-touch);
    min-height: var(--center-mobile-touch);
    margin-left: auto;
    padding: 0 12px;
    border-radius: 13px;
    touch-action: manipulation;
  }
  .site-menu {
    position: fixed !important;
    z-index: 3000;
    top: 70px !important;
    right: 8px !important;
    bottom: calc(8px + env(safe-area-inset-bottom));
    left: 8px !important;
    width: auto !important;
    max-height: calc(100dvh - 78px - env(safe-area-inset-bottom));
    padding: 10px !important;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    border-radius: 18px !important;
    background: rgba(22,22,22,.985) !important;
    box-shadow: 0 28px 80px rgba(0,0,0,.72) !important;
  }
  .site-menu.is-open { display: grid !important; gap: 8px; }
  .main-nav {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 6px;
    width: 100%;
  }
  .main-nav a {
    display: flex;
    min-width: 0;
    min-height: 44px;
    align-items: center;
    padding: 10px 12px !important;
    border: 1px solid transparent;
    border-radius: 12px !important;
    overflow-wrap: anywhere;
  }
  .main-nav a.active {
    border-color: rgba(246,197,67,.18);
    background: rgba(246,197,67,.09) !important;
    color: #f5d36a;
  }
  .site-menu .center-notifications,
  .site-menu .account-box {
    min-width: 0;
  }
  .site-menu .center-notifications {
    margin-top: 3px;
    padding-top: 9px;
    border-top: 1px solid #2c2c2c;
  }
  .center-notification-bell { min-width: 44px; min-height: 44px; }
  .account-box {
    width: 100%;
    margin: 0 !important;
    padding: 8px 0 0 !important;
  }
  .account-menu-trigger {
    width: 100%;
    min-height: 52px;
    justify-content: flex-start;
    padding: 5px 8px;
    border: 1px solid #2c2c2c;
    border-radius: 13px;
    background: #141414;
  }
  .account-identity { min-width: 0; }
  .account-name,
  .account-branch { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .account-menu-chevron { margin-left: auto; }

  .center-notification-popover,
  .account-menu-popover {
    position: fixed !important;
    z-index: 4100 !important;
    top: 78px !important;
    right: 8px !important;
    bottom: auto !important;
    left: 8px !important;
    width: auto !important;
    max-width: none !important;
    max-height: calc(100dvh - 92px - env(safe-area-inset-bottom));
    overflow: auto;
    border-radius: 18px !important;
    box-shadow: 0 28px 80px rgba(0,0,0,.76) !important;
  }

  /* Admin navigation is useful on mobile; never hide it. */
  .admin-bar {
    display: block !important;
    min-width: 0;
    border-top: 1px solid #202020;
    background: #101010;
  }
  .admin-bar-inner {
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 6px 8px 8px;
    gap: 5px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
  }
  .admin-bar-inner::-webkit-scrollbar { display: none; }
  .admin-bar-inner a {
    flex: 0 0 auto;
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    padding: 0 11px !important;
    border-radius: 10px;
    white-space: nowrap;
    scroll-snap-align: start;
  }
  .admin-bar-inner a.active { background: rgba(246,197,67,.10); }

  .site-footer-inner {
    width: calc(100% - 24px);
    min-height: 48px;
    justify-content: center;
    flex-wrap: wrap;
    gap: 4px 12px;
    padding-block: 10px calc(10px + env(safe-area-inset-bottom));
    text-align: center;
  }

  /* ---------- global typography / surfaces / touch ---------- */
  h1 { font-size: clamp(1.75rem, 8vw, 2.35rem); line-height: 1.05; }
  h2 { font-size: clamp(1.15rem, 5vw, 1.45rem); }
  .section-heading,
  .section-heading-row { min-width: 0; }
  .section-heading-row {
    align-items: stretch !important;
    flex-direction: column;
    gap: 12px;
  }
  .section-heading-row > .actions { justify-content: flex-start; }
  .panel {
    min-width: 0;
    padding: 16px;
    border-radius: var(--center-mobile-radius);
  }
  .button,
  button,
  [role="button"] { touch-action: manipulation; }
  body:not(.center-ui-avito-chats-untouched) .button:not(.button-small),
  body:not(.center-ui-avito-chats-untouched) button:not(.center-notification-close):not(.account-menu-trigger):not(.nav-toggle):not(.center-select__button):not(.center-search__clear) {
    min-height: 44px;
  }
  .actions { gap: 8px; }

  input,
  select,
  textarea {
    max-width: 100%;
  }
  textarea { resize: vertical; }

  .form-grid,
  .form-grid-2,
  .form-grid-3,
  .page-grid,
  .dashboard-grid,
  .detail-layout,
  .settings-form-grid,
  .permission-groups,
  .directory-columns {
    min-width: 0;
  }

  .table-wrap,
  [class*="table-wrap"],
  [class*="matrix-wrap"] {
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
  }
  .table-wrap[data-center-mobile-scroll],
  [class*="table-wrap"][data-center-mobile-scroll],
  [class*="matrix-wrap"][data-center-mobile-scroll] {
    scroll-padding-inline: 10px;
  }
  .data-table { min-width: 720px; }
  .table-wrap:focus-visible,
  [class*="table-wrap"]:focus-visible,
  [class*="matrix-wrap"]:focus-visible {
    outline: 2px solid rgba(246,197,67,.5);
    outline-offset: 2px;
  }

  .segmented,
  [class*="tabs"],
  [class*="pills"] {
    max-width: 100%;
  }

  .center-toast-stack,
  .flash-stack {
    right: 8px !important;
    left: 8px !important;
    width: auto !important;
    max-width: none !important;
  }
  .center-flash-notice { width: 100% !important; }

  /* Popovers / custom selects must stay inside viewport. */
  .center-select__popover {
    max-width: calc(100vw - 16px) !important;
    max-height: min(52dvh, 420px) !important;
  }
  .center-search { min-width: 0; }

  /* ---------- home ---------- */
  .home-hero {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  .home-hero-copy,
  .home-profile-card { min-width: 0; }
  .home-hero-actions { flex-wrap: wrap; }
  .home-profile-card { width: 100%; }
  .home-attention-strip,
  .home-shift-team { min-width: 0; }
  .home-attention-items { overflow-x: auto; }
  .operator-break-menu {
    max-width: calc(100vw - 24px);
  }

  /* ---------- clients ---------- */
  .client-db-heading,
  .client-import-heading,
  .client-editor-v2-heading,
  .client-profile-hero {
    align-items: stretch !important;
    flex-direction: column !important;
    gap: 14px !important;
  }
  .client-db-heading-actions,
  .client-profile-actions { justify-content: flex-start; }
  .client-db-stats { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
  .client-db-filter-primary {
    grid-template-columns: minmax(0,1fr) minmax(180px,.55fr) !important;
  }
  .client-db-primary-actions { grid-column: 1 / -1; justify-content: flex-start; }
  .client-db-filter-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .client-db-results-head {
    align-items: flex-start !important;
    flex-direction: column;
    gap: 10px;
  }
  .client-db-results-head-tags { width: 100%; max-width: 100%; }
  .client-db-query-chip { max-width: 100% !important; }
  .client-db-pagination { gap: 8px; }
  .client-db-list-row { border-radius: 0; }
  .client-profile-layout { grid-template-columns: 1fr !important; }
  .client-profile-sidebar { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .client-profile-actions .button { flex: 1 1 auto; }
  .client-identity-panel-head { align-items: flex-start; }
  .client-related-record { min-width: 0; }
  .client-chat-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .client-editor-v2-grid { grid-template-columns: 1fr !important; }
  .client-editor-delivery-card,
  .client-editor-source-card { grid-column: auto !important; }
  .client-import-layout { grid-template-columns: 1fr !important; }
  .client-import-help { order: 2; }

  /* ---------- requests / deliveries ---------- */
  .delivery-page-heading,
  .delivery-detail-topbar {
    align-items: stretch !important;
    flex-direction: column;
    gap: 12px;
  }
  .delivery-heading-live { align-self: flex-start; }
  .delivery-commandbar {
    grid-template-columns: minmax(0,1fr) auto !important;
    gap: 9px !important;
  }
  .delivery-scope-tabs {
    grid-column: 1 / -1;
    width: 100% !important;
    overflow-x: auto;
  }
  .delivery-search { min-width: 0; }
  .delivery-filter-menu { align-self: stretch; }
  .delivery-filter-toggle { width: 100%; }
  .delivery-stat-strip { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .delivery-stat-item:nth-child(2n) { border-right: 0; }
  .delivery-stat-item:nth-child(-n+2) { border-bottom: 1px solid #292929; }
  .delivery-list-head { display: none !important; }
  .delivery-row {
    grid-template-columns: minmax(0,1fr) auto !important;
    grid-template-areas:
      "client id"
      "request request"
      "status status"
      "owner actions";
    min-height: 0 !important;
    gap: 8px 12px !important;
    padding: 14px !important;
  }
  .delivery-row-id { grid-area: id; align-items: flex-end; }
  .delivery-row-client { grid-area: client; }
  .delivery-row-request { grid-area: request; padding-top: 8px; border-top: 1px solid #282828; }
  .delivery-row-status { grid-area: status; }
  .delivery-row-owner { grid-area: owner; }
  .delivery-row-actions { grid-area: actions; }
  .delivery-detail-layout { grid-template-columns: 1fr !important; }
  .delivery-detail-sidebar { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .delivery-detail-facts { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .delivery-history-item { min-width: 0; }

  /* ---------- reports ---------- */
  .reports-v3-hero,
  .analytics-hero,
  .daily-report-heading,
  .tg-page-heading {
    align-items: stretch !important;
    grid-template-columns: 1fr !important;
    flex-direction: column !important;
    gap: 14px !important;
  }
  .reports-v3-side,
  .analytics-hero-side { width: 100%; max-width: none !important; }
  .reports-v3-toolbar,
  .reports-toolbar { grid-template-columns: 1fr !important; }
  .reports-v3-toolbar-block { min-width: 0; }
  .reports-filter { align-items: stretch; flex-wrap: wrap; }
  .report-metrics,
  .analytics-kpi-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .report-grid,
  .analytics-main-grid { grid-template-columns: 1fr !important; }
  .analytics-controls { align-items: stretch; flex-direction: column; }
  .analytics-control-fields { width: 100%; grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .daily-report-layout { grid-template-columns: 1fr !important; }
  .daily-report-preview-grid { grid-template-columns: 1fr !important; }
  .tg-settings-page { min-width: 0; }
  .tg-settings-nav { grid-template-columns: repeat(2,minmax(0,1fr)) !important; position: static !important; }
  .tg-health-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .tg-composer-pane,
  .tg-admin-grid { grid-template-columns: 1fr !important; }
  .tg-preview-sticky { position: static !important; }
  .tg-recipient-form { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .tg-recipient-row { min-width: 0; }
  .tg-network-head,
  .tg-discovery-head { align-items: stretch !important; flex-direction: column; }

  /* ---------- admin / users / roles / settings ---------- */
  .admin-page-header,
  .admin-user-profile-header {
    align-items: stretch !important;
    flex-direction: column !important;
    gap: 14px !important;
  }
  .admin-header-actions { justify-content: flex-start; }
  .admin-metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .admin-users-layout,
  .admin-roles-layout,
  .admin-settings-split,
  .admin-user-edit-grid { grid-template-columns: 1fr !important; }
  .admin-create-card { position: static !important; }
  .admin-users-toolbar { align-items: stretch !important; flex-direction: column; }
  .admin-search-field { width: 100%; }
  .admin-user-card { min-width: 0; }
  .admin-user-topline,
  .admin-role-heading,
  .admin-settings-row {
    align-items: flex-start !important;
    flex-wrap: wrap;
  }
  .admin-role-footer { align-items: stretch !important; flex-direction: column; }
  .admin-permission-list { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .admin-directory-grid,
  .admin-rules-grid { grid-template-columns: 1fr !important; }
  .admin-user-profile-main { min-width: 0; }
  .admin-profile-statuses { flex-wrap: wrap; }
  .admin-edit-card { min-width: 0; }
  .admin-avatar-editor { grid-template-columns: 1fr !important; }

  /* ---------- schedules ---------- */
  .schedule-page { min-width: 0; }
  .schedule-hero {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  .schedule-hero-side { width: 100%; }
  .schedule-hero-actions { justify-content: flex-start; flex-wrap: wrap; }
  .schedule-toolbar {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  .schedule-month-switcher { width: 100%; justify-content: space-between; }
  .schedule-month-main { flex: 1; text-align: center; }
  .schedule-toolbar-search { width: 100%; }
  .schedule-density { justify-self: start; }
  .schedule-metrics { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .schedule-worktime-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .schedule-worktime-summary { align-items: flex-start; flex-wrap: wrap; }
  .schedule-today-list { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .schedule-calendar-head { align-items: flex-start; flex-direction: column; }
  .schedule-matrix { min-width: 760px; }
  .schedule-drawer {
    top: auto !important;
    right: 8px !important;
    bottom: calc(8px + env(safe-area-inset-bottom)) !important;
    left: 8px !important;
    width: auto !important;
    max-width: none !important;
    max-height: min(88dvh, 840px);
    border-radius: 20px !important;
  }
  .schedule-roster-modal {
    width: calc(100vw - 20px) !important;
    max-width: none !important;
    max-height: 88dvh;
  }

  /* ---------- notifications / settings / security ---------- */
  .notification-page-header,
  .settings-page-toolbar,
  .notification-settings-toolbar {
    align-items: stretch !important;
    flex-direction: column !important;
    gap: 12px !important;
  }
  .notification-stat-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .notification-filters { overflow-x: auto; flex-wrap: nowrap !important; }
  .notification-card-main { min-width: 0; }
  .settings-layout,
  .settings-layout-v2 { grid-template-columns: 1fr !important; }
  .settings-sidebar {
    position: static !important;
    width: 100% !important;
    max-width: none !important;
  }
  .settings-sidebar nav,
  .settings-nav {
    position: static !important;
    display: flex !important;
    width: 100%;
    margin-bottom: 14px;
    overflow-x: auto;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
  }
  .settings-sidebar nav::-webkit-scrollbar,
  .settings-nav::-webkit-scrollbar { display: none; }
  .settings-sidebar a,
  .settings-nav a { flex: 0 0 auto; white-space: nowrap; scroll-snap-align: start; }
  .settings-content,
  .settings-content-v2 { min-width: 0; }
  .settings-profile-grid,
  .settings-password-grid,
  .settings-password-grid-v3,
  .settings-start-grid,
  .settings-start-grid-v3,
  .notification-channel-grid { grid-template-columns: 1fr !important; }
  .settings-security-command { grid-template-columns: 1fr !important; }
  .settings-security-command-facts { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .settings-security-disclosure > summary { min-width: 0; }

  /* ---------- Avito: connections / inquiries / blacklist / quick replies ---------- */
  .avito-api-hero,
  .avito-inquiries-hero,
  .avito-blacklist-hero {
    align-items: stretch !important;
    grid-template-columns: 1fr !important;
    flex-direction: column !important;
    gap: 14px !important;
  }
  .avito-api-hero-actions,
  .avito-inquiries-hero-actions,
  .avito-blacklist-hero-actions { justify-content: flex-start; flex-wrap: wrap; }
  .avito-api-summary,
  .avito-inquiries-stats,
  .avito-blacklist-stats { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .avito-api-command-panel { grid-template-columns: 1fr !important; }
  .avito-api-command-actions { justify-content: flex-start; }
  .avito-api-toolbar { align-items: stretch !important; flex-direction: column; }
  .avito-inquiries-panel-head,
  .avito-blacklist-panel-head { align-items: flex-start !important; flex-direction: column; }
  .avito-inquiries-filters,
  .avito-blacklist-filters { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .avito-inquiries-search,
  .avito-blacklist-search { grid-column: 1 / -1; }
  .avito-inquiries-filter-submit,
  .avito-blacklist-filter-submit,
  .avito-inquiries-filter-clear,
  .avito-blacklist-filter-clear { min-height: 44px; }
  .avito-quick-replies-page-head { align-items: stretch !important; flex-direction: column; }
  .avito-quick-replies-page-actions { width: 100%; justify-content: flex-start; }
  .avito-quick-replies-settings-layout,
  .avito-template-layout { grid-template-columns: 1fr !important; }
  .avito-quick-reply-editor { position: static !important; max-height: none !important; }
  .avito-quick-reply-library .avito-template-list { max-height: none !important; }

  /* ---------- system / generic detail / errors ---------- */
  .status-grid,
  .system-details-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .error-panel { max-width: 100%; }

  /* ---------- Auth flow ---------- */
  body.center-auth-flow .topbar { position: relative; }
  body.center-auth-flow .page-content {
    width: 100%;
    padding-inline: 12px;
  }
  .center-auth-frame,
  .center-auth-frame-challenge-single { width: 100% !important; max-width: 520px !important; }
  .center-auth-card,
  .center-auth-wide-card { max-width: 100%; }
  .center-auth-setup-grid,
  .center-auth-recovery-layout { grid-template-columns: 1fr !important; }
}

@media (max-width: 720px) {
  :root { --center-mobile-gutter: 10px; }

  /* iOS: 16px prevents browser zoom on form focus. */
  body:not(.center-ui-avito-chats-untouched) input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
  body:not(.center-ui-avito-chats-untouched) select,
  body:not(.center-ui-avito-chats-untouched) textarea {
    font-size: 16px !important;
  }

  .page-content { padding-top: 14px; }
  .panel { padding: 14px; }
  .main-nav { grid-template-columns: 1fr; }
  .site-menu { top: 68px !important; }

  .actions:not(.center-notification-actions):not(.avito-conversation-actions) {
    align-items: stretch;
  }
  .section-heading-row > .actions .button,
  .admin-header-actions .button,
  .client-db-heading-actions .button,
  .client-profile-actions .button,
  .avito-api-hero-actions .button,
  .avito-inquiries-hero-actions .avito-inquiries-button,
  .avito-blacklist-hero-actions .avito-blacklist-button {
    flex: 1 1 auto;
  }

  .client-db-stats { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .client-db-filter-primary { grid-template-columns: 1fr !important; }
  .client-db-sort,
  .client-db-primary-actions { grid-column: auto; }
  .client-db-primary-actions { width: 100%; }
  .client-db-primary-actions .button { flex: 1; }
  .client-profile-sidebar,
  .client-chat-grid { grid-template-columns: 1fr !important; }
  .client-editor-fields-2,
  .client-editor-deal-options { grid-template-columns: 1fr !important; }
  .client-editor-v2 .field-span-2 { grid-column: auto !important; }
  .client-editor-v2-actions {
    right: 8px !important;
    bottom: calc(8px + env(safe-area-inset-bottom)) !important;
    left: 8px !important;
    width: auto !important;
    padding: 8px !important;
  }
  .client-editor-v2-actions .button { flex: 1; min-width: 0 !important; }
  .client-import-main { padding: 16px !important; }
  .client-import-options { grid-template-columns: 1fr !important; }

  .delivery-commandbar { grid-template-columns: 1fr !important; }
  .delivery-filter-menu { width: 100%; }
  .delivery-stat-strip { border-radius: 14px; }
  .delivery-detail-sidebar,
  .delivery-detail-facts { grid-template-columns: 1fr !important; }
  .delivery-filter-popover {
    position: fixed !important;
    inset: auto 8px calc(8px + env(safe-area-inset-bottom)) 8px !important;
    width: auto !important;
    max-height: min(84dvh, 760px) !important;
    overflow-y: auto !important;
  }
  .delivery-filter-quick-panel { grid-template-columns: 1fr !important; }
  .delivery-filter-fields { grid-template-columns: 1fr !important; }
  .delivery-filter-sheet-field.is-wide { grid-column: auto !important; }

  .report-metrics,
  .analytics-kpi-grid,
  .tg-health-grid { grid-template-columns: 1fr !important; }
  .analytics-control-fields { grid-template-columns: 1fr !important; }
  .tg-settings-nav { grid-template-columns: 1fr 1fr !important; }
  .tg-recipient-form { grid-template-columns: 1fr !important; }
  .tg-recipient-row {
    grid-template-columns: 38px minmax(0,1fr) !important;
    gap: 8px !important;
  }
  .tg-recipient-actions { grid-column: 1 / -1 !important; justify-content: flex-start !important; flex-wrap: wrap; }
  .tg-block-row { min-width: 0; }

  .admin-permission-list { grid-template-columns: 1fr !important; }
  .admin-user-card { padding: 13px !important; }
  .admin-user-topline { gap: 9px; }
  .admin-user-actions { width: 100%; flex-wrap: wrap; }
  .admin-user-actions .button,
  .admin-user-actions form { flex: 1 1 auto; }
  .admin-form-footer { align-items: stretch !important; flex-direction: column; }
  .admin-form-footer .button { width: 100%; }

  .schedule-worktime-grid,
  .schedule-today-list { grid-template-columns: 1fr !important; }
  .schedule-toolbar { padding: 12px !important; }
  .schedule-matrix { min-width: 680px; }
  .schedule-drawer { padding-bottom: env(safe-area-inset-bottom); }
  .schedule-time-grid,
  .schedule-range-grid { grid-template-columns: 1fr !important; }
  .schedule-state-switch { grid-template-columns: 1fr !important; }

  .notification-stat-grid { grid-template-columns: 1fr 1fr !important; }
  .notification-card-main { grid-template-columns: auto minmax(0,1fr) !important; }
  .notification-card-meta { grid-column: 2; }
  .settings-security-command-facts { grid-template-columns: 1fr !important; }

  .avito-api-summary,
  .avito-inquiries-stats,
  .avito-blacklist-stats { grid-template-columns: 1fr 1fr !important; }
  .avito-inquiries-filters,
  .avito-blacklist-filters { grid-template-columns: 1fr !important; }
  .avito-inquiries-search,
  .avito-blacklist-search { grid-column: auto; }
  .avito-inquiries-filter-actions,
  .avito-blacklist-filter-actions { display: grid !important; grid-template-columns: 1fr 1fr; }

  .status-grid,
  .system-details-grid { grid-template-columns: 1fr !important; }

  /* Avito chat is already a one-pane mobile workspace; only protect viewport. */
  body.center-ui-avito-chats-untouched .page-content {
    width: 100% !important;
    padding: 5px 5px calc(5px + env(safe-area-inset-bottom)) !important;
  }
  body.center-ui-avito-chats-untouched .avito-workspace-shell {
    max-width: 100%;
  }
}

@media (max-width: 560px) {
  :root { --center-mobile-gutter: 8px; }

  .topbar-inner { width: calc(100% - 12px) !important; min-height: 60px; }
  .center-brand-logo-final { height: 42px; }
  .brand.center-brand-final { max-width: 158px; }
  .nav-toggle { min-height: 40px; min-width: 40px; padding-inline: 10px; }
  .site-menu { top: 64px !important; right: 6px !important; left: 6px !important; bottom: calc(6px + env(safe-area-inset-bottom)); }
  .admin-bar-inner { padding-inline: 6px; }
  .admin-bar-inner a { min-height: 36px; font-size: .73rem; }

  .page-content { padding-top: 12px; }
  .panel { padding: 12px; border-radius: 14px; }
  h1 { font-size: clamp(1.65rem, 9vw, 2rem); }
  .eyebrow { font-size: .69rem; }

  body:not(.center-ui-avito-chats-untouched) .button:not(.button-small) { min-height: 44px; }
  .section-heading-row > .actions,
  .client-db-heading-actions,
  .client-profile-actions,
  .admin-header-actions,
  .avito-api-hero-actions,
  .avito-inquiries-hero-actions,
  .avito-blacklist-hero-actions {
    display: grid !important;
    grid-template-columns: 1fr;
    width: 100%;
  }
  .section-heading-row > .actions .button,
  .client-db-heading-actions .button,
  .client-profile-actions .button,
  .admin-header-actions .button,
  .avito-api-hero-actions .button,
  .avito-inquiries-hero-actions .avito-inquiries-button,
  .avito-blacklist-hero-actions .avito-blacklist-button { width: 100%; }

  .client-db-stats { grid-template-columns: 1fr 1fr !important; gap: 7px !important; }
  .client-db-stat { padding: 12px !important; }
  .client-db-filter-grid { grid-template-columns: 1fr !important; }
  .client-db-filter-grid label { padding: 10px !important; }
  .client-db-filter-actions { display: grid !important; grid-template-columns: 1fr 1fr; }
  .client-db-results { border-radius: 14px !important; }
  .client-db-list-row { grid-template-columns: 1fr !important; padding: 10px !important; }
  .client-db-list-person { grid-column: auto !important; }
  .client-profile-identity { align-items: flex-start !important; }
  .client-profile-avatar { width: 54px !important; height: 54px !important; }
  .client-related-record-head { align-items: flex-start; flex-direction: column; }
  .client-chat-card-actions { width: 100%; flex-wrap: wrap; }

  .delivery-stat-strip { grid-template-columns: 1fr 1fr !important; }
  .delivery-stat-item { padding: 11px !important; }
  .delivery-row {
    grid-template-columns: 1fr !important;
    grid-template-areas: "client" "id" "request" "status" "owner" "actions" !important;
  }
  .delivery-row-id { align-items: flex-start; }
  .delivery-row-actions { width: 100%; justify-content: flex-start; }
  .delivery-filter-actions { grid-template-columns: 1fr 1fr !important; }

  .reports-v3-context { grid-template-columns: 1fr !important; }
  .reports-toolbar-actions { display: grid !important; grid-template-columns: 1fr; }
  .reports-toolbar-actions .button { width: 100%; }
  .tg-settings-nav { grid-template-columns: 1fr !important; }
  .tg-composer-tabs { display: grid !important; grid-template-columns: 1fr 1fr; }
  .tg-composer-footer,
  .tg-schedule-footer,
  .tg-send-now { align-items: stretch !important; flex-direction: column !important; }
  .tg-composer-footer .actions,
  .tg-send-now-actions { width: 100%; }
  .tg-composer-footer .button,
  .tg-send-now-actions .button { flex: 1; }

  .admin-metric-grid { grid-template-columns: 1fr 1fr !important; gap: 8px !important; }
  .admin-user-profile-main { align-items: flex-start !important; }
  .admin-user-profile-avatar { width: 64px !important; height: 64px !important; }
  .admin-profile-subline { flex-wrap: wrap; }
  .admin-settings-row-actions { width: 100%; justify-content: flex-start; }
  .admin-settings-row-actions .button { flex: 1; }

  .schedule-metrics { grid-template-columns: 1fr 1fr !important; gap: 8px !important; }
  .schedule-metric { padding: 12px !important; }
  .schedule-hero-actions { display: grid !important; grid-template-columns: 1fr; width: 100%; }
  .schedule-hero-actions .button { width: 100%; }
  .schedule-worktime-summary-meta { width: 100%; justify-content: flex-start; flex-wrap: wrap; }
  .schedule-calendar-footer { align-items: flex-start; flex-direction: column; }

  .notification-stat-grid { grid-template-columns: 1fr !important; }
  .notification-card-main { grid-template-columns: 1fr !important; }
  .notification-card-icon { margin-bottom: 4px; }
  .notification-card-meta { grid-column: auto; }

  .avito-api-summary,
  .avito-inquiries-stats,
  .avito-blacklist-stats { grid-template-columns: 1fr !important; }
  .avito-inquiries-filter-actions,
  .avito-blacklist-filter-actions { grid-template-columns: 1fr !important; }
  .avito-quick-replies-overview { grid-template-columns: 1fr !important; }

  .center-auth-shell { padding-inline: 0 !important; }
  .center-auth-card,
  .center-auth-wide-card { border-radius: 18px !important; }
  .center-auth-card { padding: 18px !important; }
  .center-auth-wide-card { padding: 16px !important; }
  .center-auth-recovery-grid { grid-template-columns: 1fr !important; }

  .attachment-grid { grid-template-columns: 1fr 1fr !important; gap: 8px; }
  .attachment-card img { height: 116px; }
}

@media (max-width: 390px) {
  .brand.center-brand-final { max-width: 142px; }
  .center-brand-logo-final { height: 39px; }
  .nav-toggle > span:last-child { display: none; }

  .client-db-stats,
  .admin-metric-grid,
  .schedule-metrics,
  .delivery-stat-strip { grid-template-columns: 1fr !important; }

  .client-db-filter-actions,
  .delivery-filter-actions { grid-template-columns: 1fr !important; }

  .attachment-grid { grid-template-columns: 1fr !important; }
}

@media (max-width: 900px) and (prefers-reduced-motion: reduce) {
  .site-menu,
  .schedule-drawer,
  .center-notification-popover,
  .account-menu-popover { scroll-behavior: auto !important; }
}
