/* =====================================================================
   Green Dine BD — component styles (complements Tailwind CDN utilities)
   ===================================================================== */

/* Alpine.js cloak */
[x-cloak]{display:none !important;}

:root{
  --brand:#0b2a4a; --lime:#a3e635; --fresh:#22c55e;
}

html{-webkit-text-size-adjust:100%;}
body{font-family:'Inter','Hind Siliguri',system-ui,sans-serif;}

/* Soft shadow + rounded (mirror of tailwind.config extends, so they work even
   if the CDN config is stripped in production) */
.shadow-soft{box-shadow:0 6px 24px -8px rgba(11,42,74,.15);}
.rounded-xl2{border-radius:1.25rem;}

/* ------------------------------------------------------------------ */
/* Forms                                                              */
/* ------------------------------------------------------------------ */
.gd-label{display:block;font-size:.8rem;font-weight:600;color:#475569;margin-bottom:.35rem;}
.dark .gd-label{color:#cbd5e1;}
.gd-input{
  width:100%;padding:.625rem .75rem;font-size:.9rem;
  border:1px solid #e2e8f0;border-radius:.6rem;background:#fff;color:#0f172a;
  transition:border-color .15s,box-shadow .15s;
}
.gd-input:focus{outline:none;border-color:var(--fresh);box-shadow:0 0 0 3px rgba(34,197,94,.15);}
.dark .gd-input{background:#1e293b;border-color:#334155;color:#e2e8f0;}
textarea.gd-input{resize:vertical;min-height:2.75rem;}

/* ------------------------------------------------------------------ */
/* Tables                                                             */
/* ------------------------------------------------------------------ */
.gd-table{width:100%;border-collapse:collapse;font-size:.875rem;}
.gd-table thead th{
  text-align:left;padding:.75rem 1rem;font-size:.72rem;text-transform:uppercase;
  letter-spacing:.04em;color:#94a3b8;border-bottom:1px solid #e2e8f0;white-space:nowrap;
}
.gd-table tbody td{padding:.8rem 1rem;border-bottom:1px solid #f1f5f9;vertical-align:middle;}
.gd-table tbody tr:hover{background:#f8fafc;}
.dark .gd-table thead th{border-color:#334155;color:#64748b;}
.dark .gd-table tbody td{border-color:#1e293b;}
.dark .gd-table tbody tr:hover{background:rgba(255,255,255,.03);}

/* ------------------------------------------------------------------ */
/* Badges (order statuses etc.)                                       */
/* ------------------------------------------------------------------ */
.badge{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.72rem;font-weight:600;text-transform:capitalize;}
.badge-pending{background:#fef3c7;color:#b45309;}
.badge-confirmed{background:#dbeafe;color:#1d4ed8;}
.badge-preparing{background:#e0e7ff;color:#4338ca;}
.badge-cooking{background:#fae8ff;color:#a21caf;}
.badge-packed{background:#cffafe;color:#0e7490;}
.badge-out_for_delivery{background:#ffedd5;color:#c2410c;}
.badge-delivered{background:#dcfce7;color:#15803d;}
.badge-cancelled{background:#fee2e2;color:#b91c1c;}
.badge-refunded{background:#f1f5f9;color:#475569;}

/* Card helper */
.gd-card{transition:box-shadow .2s;}

/* ------------------------------------------------------------------ */
/* Skeleton loading                                                   */
/* ------------------------------------------------------------------ */
.skeleton{position:relative;overflow:hidden;background:#e2e8f0;border-radius:.5rem;}
.skeleton::after{
  content:"";position:absolute;inset:0;transform:translateX(-100%);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);
  animation:gd-shimmer 1.4s infinite;
}
@keyframes gd-shimmer{100%{transform:translateX(100%);}}

/* ------------------------------------------------------------------ */
/* Toast notifications                                                */
/* ------------------------------------------------------------------ */
.gd-toast-wrap{position:fixed;top:1rem;right:1rem;z-index:9999;display:flex;flex-direction:column;gap:.5rem;max-width:340px;}
.gd-toast{
  padding:.8rem 1rem;border-radius:.75rem;color:#fff;font-size:.875rem;font-weight:500;
  box-shadow:0 8px 24px -6px rgba(0,0,0,.25);animation:gd-slide-in .3s ease;
}
.gd-toast.success{background:#22c55e;}
.gd-toast.error{background:#ef4444;}
.gd-toast.info{background:#0b2a4a;}
@keyframes gd-slide-in{from{opacity:0;transform:translateX(20px);}to{opacity:1;transform:none;}}

/* ------------------------------------------------------------------ */
/* RTL-ready architecture                                             */
/* ------------------------------------------------------------------ */
[dir="rtl"] .gd-table thead th{text-align:right;}
[dir="rtl"] .gd-toast-wrap{right:auto;left:1rem;}
[dir="rtl"] body{font-family:'Noto Sans Arabic','Inter',sans-serif;}

/* Print (invoices) */
@media print{
  .no-print{display:none !important;}
  body{background:#fff !important;}
}

/* Line clamp helper */
.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
