/* ===========================
   TAHOURSA DASHBOARD (RTL)
   - Palette Applied
   =========================== */

:root{
  /* Brand palette */
  --dash-primary: #2FA4B7;   /* teal */
  --dash-navy: #1F3A5F;      /* dark navy */
  --dash-accent: #E45A2A;    /* orange */
  --dash-gray-100: #D9D9D9;  /* light gray */
  --dash-gray-600: #6B6E72;  /* gray */

  /* System tokens */
  --dash-bg: #f6f7fb;
  --dash-ink: var(--dash-navy);
  --dash-muted: var(--dash-gray-600);
  --dash-border: rgba(31,58,95,.14);
  --dash-card: rgba(255,255,255,.92);

  --dash-shadow: 0 18px 55px rgba(2,6,23,.12);
  --dash-shadow-sm: 0 12px 34px rgba(2,6,23,.10);
  --dash-r: 18px;

  /* Focus ring */
  --dash-ring: rgba(47,164,183,.18);
}

/* Reset small */
.dash-body{
  font-family: var(--font-primary, 'Tajawal', sans-serif);
  background: var(--dash-bg);
  color: var(--dash-ink);
  overflow-x: hidden;
}

.dash-skip{
  position:absolute;
  top:-60px;
  right:16px;
  z-index:9999;
  background: var(--dash-navy);
  color:#fff;
  padding:10px 14px;
  border-radius:12px;
  text-decoration:none;
  font-weight:900;
  transition:top .2s;
}
.dash-skip:focus{ top:16px; }

/* Layout */
.dash-wrap{
  min-height: 100vh;
  display:grid;
  grid-template-rows: auto 1fr auto;
  margin-right: 280px; /* sidebar width */
}

.dash-topbar{
  position: sticky;
  top:0;
  z-index: 50;
  background: rgba(255,255,255,.75);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--dash-border);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
  padding: 14px 18px;
}

.dash-topbar-left{
  display:flex;
  align-items:center;
  gap: 14px;
}
.dash-page-title__label{
  font-weight: 900;
  font-size: 18px;
}
.dash-page-title__hint{
  font-weight: 700;
  font-size: 12px;
  color: var(--dash-muted);
  margin-top: 2px;
}

.dash-topbar-right{
  display:flex;
  align-items:center;
  gap: 10px;
}

.dash-search{
  display:flex;
  align-items:center;
  gap: 10px;
  background: rgba(31,58,95,.04);
  border: 1px solid rgba(31,58,95,.12);
  border-radius: 999px;
  padding: 10px 12px;
  min-width: 320px;
}
.dash-search i{ color: var(--dash-muted); }
.dash-search input{
  border:0;
  outline:0;
  background: transparent;
  width:100%;
  font-weight: 800;
  color: var(--dash-ink);
}

.dash-main{
  padding: 16px 18px 28px;
}

.dash-footer{
  padding: 14px 18px;
  border-top: 1px solid var(--dash-border);
  color: var(--dash-muted);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap: 12px;
  background: rgba(255,255,255,.55);
  backdrop-filter: blur(10px);
}
.dash-footer-muted{ font-weight: 800; opacity: .9; }

/* Sidebar */
.dash-sidebar{
  position: fixed;
  top:0;
  right:0;
  width: 280px;
  height: 100vh;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.78));
  border-left: 1px solid var(--dash-border);
  backdrop-filter: blur(10px);
  box-shadow: var(--dash-shadow-sm);
  z-index: 100;
  display:flex;
  flex-direction:column;
}

.dash-brand{
  display:flex;
  align-items:center;
  gap: 12px;
  padding: 14px 14px;
  border-bottom: 1px solid var(--dash-border);
}
.dash-brand-logo{
  width: 46px;
  height: 46px;
  border-radius: 14px;
  overflow:hidden;
  background: rgba(47,164,183,.12);
  border: 1px solid rgba(47,164,183,.22);
  display:flex;
  align-items:center;
  justify-content:center;
}
.dash-brand-logo img{
  width:100%;
  height:100%;
  object-fit: cover;
}
.dash-brand-fallback{
  font-weight: 900;
  color: var(--dash-primary);
  font-size: 18px;
}
.dash-brand-name{ font-weight: 900; }
.dash-brand-sub{ font-weight: 800; font-size: 12px; color: var(--dash-muted); }

.dash-close-sidebar{ margin-right:auto; display:none; }

.dash-nav{
  padding: 10px;
  display:flex;
  flex-direction:column;
  gap: 8px;
}
.dash-nav-item{
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(255,255,255,.72);
  border-radius: 14px;
  padding: 11px 12px;
  display:flex;
  align-items:center;
  gap: 10px;
  cursor:pointer;
  font-weight: 900;
  color: var(--dash-ink);
  transition: .18s ease;
  text-align:right;
}
.dash-nav-item i{ color: var(--dash-primary); }
.dash-nav-item:hover{
  transform: translateY(-1px);
  box-shadow: 0 14px 34px rgba(2,6,23,.10);
}
.dash-nav-item.active{
  background: rgba(47,164,183,.12);
  border-color: rgba(47,164,183,.30);
}

.dash-sidebar-footer{
  margin-top:auto;
  padding: 12px;
  border-top: 1px solid var(--dash-border);
  display:flex;
  flex-direction:column;
  gap: 10px;
}
.dash-back-site{
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(31,58,95,.03);
  text-decoration:none;
  color: var(--dash-ink);
  font-weight: 900;
}
.dash-back-site:hover{ background: rgba(47,164,183,.08); }

.dash-danger{
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(228,90,42,.35);
  background: rgba(228,90,42,.12);
  color: #b33d1f;
  font-weight: 900;
  cursor:pointer;
}

/* Overlay */
.dash-overlay{
  position: fixed;
  inset:0;
  background: rgba(31,58,95,.55);
  z-index: 90;
  opacity:0;
  pointer-events:none;
  transition: .2s ease;
}
.dash-overlay.show{
  opacity:1;
  pointer-events:auto;
}

/* Buttons */
.dash-icon-btn{
  width: 42px;
  height: 42px;
  border-radius: 14px;
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(255,255,255,.78);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}
.dash-icon-btn:hover{ background: rgba(47,164,183,.08); }

.dash-pill{
  height: 42px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(255,255,255,.86);
  cursor:pointer;
  font-weight: 900;
  display:inline-flex;
  align-items:center;
  gap: 10px;
}
.dash-pill:hover{ background: rgba(47,164,183,.08); }
.dash-pill.ghost{
  background: rgba(31,58,95,.03);
}

.dash-link-btn{
  border:0;
  background: transparent;
  cursor:pointer;
  font-weight: 900;
  color: var(--dash-primary);
}
.dash-link-btn:hover{ text-decoration: underline; }

.dash-actions{
  display:flex;
  align-items:center;
  gap: 10px;
  flex-wrap:wrap;
}

/* Views */
.dash-view{ display:none; }
.dash-view.active{ display:block; }

/* Cards & grids */
.dash-grid{
  display:grid;
  gap: 14px;
  margin-bottom: 14px;
}
.dash-grid-4{ grid-template-columns: repeat(4, minmax(0,1fr)); }
.dash-grid-2{ grid-template-columns: repeat(2, minmax(0,1fr)); }

.dash-card{
  border-radius: var(--dash-r);
  border: 1px solid var(--dash-border);
  background: var(--dash-card);
  box-shadow: var(--dash-shadow-sm);
  overflow:hidden;
}
.dash-card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  padding: 14px 14px 10px;
  border-bottom: 1px solid rgba(31,58,95,.08);
}
.dash-card-head h2{
  margin:0;
  font-size: 16px;
  font-weight: 900;
  color: var(--dash-ink);
}

/* Stats */
.dash-stat{
  display:flex;
  align-items:center;
  gap: 12px;
  padding: 14px;
}
.dash-stat-icon{
  width: 48px;
  height: 48px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(47,164,183,.12);
  border: 1px solid rgba(47,164,183,.22);
  color: var(--dash-primary);
}
.dash-stat-label{ font-weight: 900; color: var(--dash-muted); font-size: 12px; }
.dash-stat-value{ font-weight: 900; font-size: 20px; margin-top: 2px; }
.dash-stat-sub{ font-weight: 800; color: var(--dash-muted); font-size: 12px; margin-top: 4px; }

/* Tables */
.dash-table-wrap{ overflow:auto; }
.dash-table{
  width:100%;
  border-collapse: collapse;
  min-width: 760px;
}
.dash-table thead th{
  text-align:right;
  font-weight: 900;
  font-size: 12px;
  color: var(--dash-muted);
  padding: 12px 14px;
  background: rgba(31,58,95,.03);
  border-bottom: 1px solid rgba(31,58,95,.08);
}
.dash-table tbody td{
  padding: 12px 14px;
  border-bottom: 1px solid rgba(31,58,95,.08);
  font-weight: 800;
  vertical-align: middle;
}
.dash-table tbody tr:hover{
  background: rgba(47,164,183,.07);
}
.dash-thumb{
  width: 42px;
  height: 42px;
  border-radius: 14px;
  object-fit: cover;
  border: 1px solid rgba(31,58,95,.12);
  background: var(--dash-gray-100);
}

.dash-row-actions{
  display:flex;
  align-items:center;
  gap: 8px;
  flex-wrap:wrap;
}
.dash-mini{
  height: 36px;
  padding: 0 12px;
  border-radius: 12px;
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(255,255,255,.92);
  cursor:pointer;
  font-weight: 900;
  display:inline-flex;
  align-items:center;
  gap: 8px;
}
.dash-mini:hover{ background: rgba(47,164,183,.08); }
.dash-mini.danger{
  border-color: rgba(228,90,42,.35);
  background: rgba(228,90,42,.12);
  color: #b33d1f;
}

/* Filters */
.dash-filters{
  display:grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 12px;
  padding: 12px 14px 14px;
}
.dash-filter label{
  display:block;
  font-weight: 900;
  font-size: 12px;
  color: var(--dash-muted);
  margin-bottom: 6px;
}
.dash-filter input,
.dash-filter select{
  width:100%;
  height: 44px;
  border-radius: 14px;
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(255,255,255,.94);
  padding: 0 12px;
  font-weight: 800;
  outline: none;
}
.dash-filter input:focus,
.dash-filter select:focus{
  border-color: rgba(47,164,183,.45);
  box-shadow: 0 0 0 4px var(--dash-ring);
}

/* List in overview */
.dash-list{
  padding: 12px 14px 14px;
  display:flex;
  flex-direction:column;
  gap: 10px;
}
.dash-list-item{
  display:flex;
  align-items:center;
  gap: 12px;
  border-radius: 16px;
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(255,255,255,.88);
  padding: 10px;
}
.dash-list-item .meta{
  display:flex;
  flex-direction:column;
  gap: 2px;
}
.dash-list-item .name{ font-weight: 900; }
.dash-list-item .sub{ font-weight: 800; color: var(--dash-muted); font-size: 12px; }
.dash-badge{
  margin-right:auto;
  font-weight: 900;
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(31,58,95,.03);
}

/* Status pills */
.pill-status{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(31,58,95,.03);
}
.pill-status.pending{ background: rgba(228,90,42,.12); border-color: rgba(228,90,42,.30); color:#9a351d; }
.pill-status.shipped{ background: rgba(47,164,183,.14); border-color: rgba(47,164,183,.32); color: var(--dash-navy); }
.pill-status.delivered{ background: rgba(47,164,183,.14); border-color: rgba(47,164,183,.32); color: var(--dash-navy); }
.pill-status.canceled{ background: rgba(228,90,42,.12); border-color: rgba(228,90,42,.30); color:#9a351d; }
.pill-status.active{ background: rgba(47,164,183,.14); border-color: rgba(47,164,183,.32); color: var(--dash-navy); }
.pill-status.hidden{ background: rgba(107,110,114,.12); border-color: rgba(107,110,114,.28); color:#2b2e33; }

/* Inbox */
.dash-inbox{
  padding: 12px 14px 14px;
  display:flex;
  flex-direction:column;
  gap: 10px;
}
.dash-msg{
  border-radius: 16px;
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(255,255,255,.90);
  padding: 12px;
  cursor:pointer;
  transition: .15s ease;
}
.dash-msg:hover{ transform: translateY(-1px); box-shadow: 0 14px 34px rgba(2,6,23,.10); }
.dash-msg.active{ background: rgba(47,164,183,.12); border-color: rgba(47,164,183,.30); }
.dash-msg-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
}
.dash-msg-title{ font-weight: 900; }
.dash-msg-sub{ font-weight: 800; color: var(--dash-muted); font-size: 12px; margin-top: 4px; }

.dash-message-view{
  padding: 14px;
}
.dash-empty{
  border-radius: 16px;
  border: 1px dashed rgba(31,58,95,.22);
  padding: 14px;
  color: var(--dash-muted);
  font-weight: 900;
  background: rgba(255,255,255,.70);
}

/* Settings */
.dash-settings{
  padding: 14px;
  display:flex;
  flex-direction:column;
  gap: 12px;
}
.dash-setting{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  border-radius: 16px;
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(255,255,255,.90);
  padding: 12px;
}
.dash-setting-title{ font-weight: 900; }
.dash-setting-sub{ font-weight: 800; color: var(--dash-muted); font-size: 12px; margin-top: 2px; }
.dash-setting select{
  height: 44px;
  border-radius: 14px;
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(255,255,255,.94);
  padding: 0 10px;
  font-weight: 900;
}

/* Modal */
.dash-modal{
  position: fixed;
  inset:0;
  background: rgba(31,58,95,.55);
  display:none;
  align-items:center;
  justify-content:center;
  z-index: 200;
  padding: 18px;
}
.dash-modal.show{ display:flex; }
.dash-modal-card{
  width: min(640px, 100%);
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.20);
  background: rgba(255,255,255,.94);
  box-shadow: var(--dash-shadow);
  overflow:hidden;
}
.dash-modal-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  padding: 14px;
  border-bottom: 1px solid rgba(31,58,95,.10);
}
.dash-modal-head h3{ margin:0; font-weight: 900; }

.dash-form{
  padding: 14px;
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.dash-form .full{ grid-column: 1 / -1; }
.dash-form label{
  display:block;
  font-weight: 900;
  font-size: 12px;
  color: var(--dash-muted);
  margin-bottom: 6px;
}
.dash-form input,
.dash-form select,
.dash-form textarea{
  width:100%;
  border-radius: 14px;
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(255,255,255,.96);
  padding: 10px 12px;
  font-weight: 800;
  outline:none;
}
.dash-form input:focus,
.dash-form select:focus,
.dash-form textarea:focus{
  border-color: rgba(47,164,183,.45);
  box-shadow: 0 0 0 4px var(--dash-ring);
}
.dash-form textarea{ min-height: 110px; resize: vertical; }

.dash-form .form-actions{
  grid-column: 1 / -1;
  display:flex;
  gap: 10px;
  justify-content:flex-start;
  padding-top: 6px;
}
.dash-form .primary{
  background: var(--dash-primary);
  border-color: rgba(47,164,183,.35);
  color:#fff;
}
.dash-form .primary:hover{ filter: brightness(.95); }

/* Toast */
.dash-toast{
  position: fixed;
  bottom: 18px;
  left: 18px;
  z-index: 300;
  display:flex;
  flex-direction:column;
  gap: 10px;
}
.toast-item{
  border-radius: 16px;
  border: 1px solid rgba(31,58,95,.12);
  background: rgba(255,255,255,.94);
  box-shadow: 0 14px 34px rgba(2,6,23,.14);
  padding: 12px 14px;
  font-weight: 900;
  display:flex;
  align-items:center;
  gap: 10px;
}
.toast-item i{ color: var(--dash-primary); }

/* Responsive */
@media (max-width: 1100px){
  .dash-grid-4{ grid-template-columns: repeat(2, minmax(0,1fr)); }
  .dash-grid-2{ grid-template-columns: 1fr; }
  .dash-search{ min-width: 240px; }
  .dash-filters{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 860px){
  .dash-wrap{ margin-right: 0; }
  .dash-sidebar{
    transform: translateX(110%);
    transition: .2s ease;
  }
  .dash-sidebar.show{ transform: translateX(0); }
  .dash-close-sidebar{ display:flex; }
  .dash-search{ display:none; }
  .dash-filters{ grid-template-columns: 1fr; }
  .dash-table{ min-width: 680px; }
}
