/* SOLID — responsive rules
   Customer + courier: mobile-first (375 / 390 / 430), usable on tablet & desktop.
   Admin: desktop-first (1440 / 1280) with a tablet layout at 1024 and below. */

/* --- small phones (375) --- */
@media (max-width: 380px) {
  :root { --fs-2xl: 1.5rem; --fs-4xl: 2.5rem; }
  .page { padding: var(--s-3); gap: var(--s-5); }
  .grid-2 { gap: var(--s-2); }
  .pcard--grid .pcard__art { height: 116px; }
  .bnav span { font-size: 10px; }
  .kds-board { grid-template-columns: 1fr; }
}

/* --- large phones (430) --- */
@media (min-width: 415px) {
  .pcard--grid .pcard__art { height: 142px; }
}

/* --- tablet (768) --- */
@media (min-width: 768px) {
  .app-courier .phone-root, .app-customer .phone-root { border-inline: 2px solid var(--ink); }
  .admin-shell { grid-template-columns: 76px 1fr; }
  .admin-shell .side__label, .admin-shell .side__foot-text { display: none; }
  .admin-shell .side__link { justify-content: center; }
  .admin-kpis { grid-template-columns: repeat(3, 1fr); }
  .admin-split { grid-template-columns: 1fr; }
}

/* --- small desktop (1024+) --- */
@media (min-width: 1024px) {
  .admin-kpis { grid-template-columns: repeat(3, 1fr); }
}

/* --- desktop (1280) --- */
@media (min-width: 1280px) {
  .admin-shell { grid-template-columns: var(--sidebar) 1fr; }
  .admin-shell .side__label, .admin-shell .side__foot-text { display: block; }
  .admin-shell .side__link { justify-content: flex-start; }
  .admin-kpis { grid-template-columns: repeat(6, 1fr); }
  .admin-split { grid-template-columns: 1.6fr 1fr; }
}

/* --- wide desktop (1440+) --- */
@media (min-width: 1440px) {
  .admin-main { padding: var(--s-7) var(--s-8); }
  .admin-canvas { max-width: 1520px; margin-inline: auto; }
}

/* --- print (kitchen tickets / order slips) --- */
@media print {
  .appbar, .bottomnav, .admin-side, .admin-topbar, .cartcta, .toastwrap { display: none !important; }
  body { background: var(--white); }
  .card { box-shadow: none; }
}
