/* Shared shell breakpoints. Business components and API behavior remain common. */
@media (min-width:768px) and (max-width:1199px) {
  .admin-shell { display:block; }
  .sidebar {
    position:fixed;
    z-index:20;
    inset:0 auto 0 0;
    width:250px;
    height:100dvh;
    transform:translateX(-101%);
    transition:transform .2s;
    box-shadow:12px 0 35px rgba(0,0,0,.16);
  }
  .sidebar.open { transform:none; }
  .menu-toggle {
    display:block;
    margin-right:14px;
    min-height:44px;
    padding:9px 12px;
    border:1px solid var(--line);
    border-radius:5px;
    background:#fff;
  }
  .admin-topbar { padding:0 24px; }
  .admin-content { padding:22px 24px 40px; }
  .data-table th,.data-table td { padding-left:12px;padding-right:12px; }
}

@media (min-width:768px) and (max-width:959px) {
  .metric-grid { grid-template-columns:repeat(2,1fr); }
  .detail-grid,.form-grid { grid-template-columns:1fr; }
  .form-grid .full { grid-column:auto; }
}

@media (max-width:767px) {
  .chat-body { padding:0; }
  .chat-shell { height:100dvh;border:0;border-radius:0; }
  .message-row { max-width:90%; }
  .chat-header { min-height:68px; }
  .login-layout { grid-template-columns:1fr; }
  .login-brand { padding:28px; }
  .login-panel { padding:32px 26px; }
  .login-panel input { min-height:48px;font-size:16px; }
  .login-panel .primary-button { min-height:48px; }
  .admin-shell { display:block; }
  .sidebar {
    position:fixed;
    z-index:20;
    left:0;
    width:230px;
    transform:translateX(-101%);
    transition:transform .2s;
  }
  .sidebar.open { transform:none; }
  .admin-topbar { padding:0 16px; }
  .menu-toggle {
    display:block;
    margin-right:14px;
    min-height:44px;
    padding:9px 11px;
    border:1px solid var(--line);
    border-radius:5px;
    background:#fff;
  }
  .admin-content { padding:16px; }
  .metric-grid { grid-template-columns:1fr 1fr;gap:9px; }
  .metric strong { font-size:22px; }
  .panel { overflow-x:auto; }
  .data-table { min-width:650px; }
  .detail-grid,.form-grid { grid-template-columns:1fr; }
  .form-grid .full { grid-column:auto; }
  .chart-row { grid-template-columns:110px 1fr 30px; }
}
