:root{
  --bg:#09090b;
  --bg-2:#0f0f13;
  --panel:#17171c;
  --panel-2:#1d1d23;
  --panel-3:#111116;
  --text:#f7f2e8;
  --text-bright:#ffffff;
  --muted:#a8a8b0;
  --muted-2:#7e7e87;
  --gold:#d8b56a;
  --gold-light:#f3d58f;
  --gold-dark:#9d7a37;
  --gold-soft:rgba(216,181,106,.13);
  --magenta:#C0003B;
  --danger:#c74747;
  --success:#5ac384;
  --warning:#d59c45;
  --info:#65a9df;
  --border:rgba(255,255,255,.095);
  --border-gold:rgba(216,181,106,.32);
  --shadow:0 26px 70px rgba(0,0,0,.34);
  --shadow-soft:0 10px 30px rgba(0,0,0,.20);
  --radius:22px;
  --radius-sm:14px;
}

*{
  box-sizing:border-box;
  margin:0;
  padding:0;
}

html{
  min-height:100%;
  background:var(--bg);
}

body{
  min-height:100vh;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif;
  color:var(--text);
  line-height:1.55;
  background:
    radial-gradient(circle at 10% 2%,rgba(216,181,106,.11),transparent 27%),
    radial-gradient(circle at 92% 0%,rgba(192,0,59,.07),transparent 24%),
    linear-gradient(180deg,#08080a 0%,#101014 44%,#09090c 100%);
  background-attachment:fixed;
}

body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.18;
  background-image:
    linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);
  background-size:34px 34px;
  mask-image:linear-gradient(to bottom,black,transparent 80%);
}

a{
  color:inherit;
  text-decoration:none;
}

button,input,select,textarea{
  font:inherit;
}

.wrap{
  max-width:1380px;
  margin:auto;
  padding:30px 28px 42px;
}

/* ---------- PREMIUM TOP BAR ---------- */

.top{
  position:sticky;
  top:0;
  z-index:1000;
  background:rgba(8,8,10,.82);
  border-bottom:1px solid var(--border);
  box-shadow:0 14px 36px rgba(0,0,0,.20);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.top-inner{
  max-width:1380px;
  margin:auto;
  padding:16px 28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:wrap;
}

.brand{
  position:relative;
  padding-left:38px;
  color:var(--gold-light);
  font-size:18px;
  font-weight:900;
  letter-spacing:1.1px;
  text-transform:uppercase;
}

.brand:before{
  content:"S";
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border:1px solid var(--border-gold);
  border-radius:9px;
  color:#111;
  background:linear-gradient(145deg,var(--gold-light),var(--gold));
  box-shadow:0 6px 18px rgba(216,181,106,.18);
  font-size:14px;
  letter-spacing:0;
}

.nav{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}

.nav a{
  min-height:39px;
  padding:9px 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--border);
  border-radius:999px;
  color:#e9e5dc;
  background:rgba(255,255,255,.035);
  font-size:12px;
  font-weight:800;
  letter-spacing:.2px;
  transition:.18s ease;
}

.nav a:hover{
  color:#15120c;
  background:linear-gradient(135deg,var(--gold),var(--gold-light));
  border-color:rgba(255,224,156,.35);
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(0,0,0,.25);
}

/* ---------- TYPOGRAPHY ---------- */

h1,h2,h3,h4{
  color:var(--text-bright);
  line-height:1.18;
  letter-spacing:-.35px;
}

h1{
  font-size:clamp(28px,4vw,42px);
  margin-bottom:9px;
}

h2{
  font-size:23px;
  margin-bottom:16px;
}

h3{
  font-size:18px;
  margin-bottom:12px;
}

.muted{
  color:var(--muted)!important;
}

small,.small{
  color:var(--muted);
}

/* ---------- HERO / CARDS ---------- */

.hero-card,
.card,
.panel,
.box{
  position:relative;
  overflow:hidden;
  color:var(--text);
  background:linear-gradient(180deg,rgba(28,28,34,.96),rgba(17,17,22,.985))!important;
  border:1px solid var(--border)!important;
  border-radius:var(--radius)!important;
  box-shadow:var(--shadow);
  backdrop-filter:blur(15px);
}

.hero-card{
  padding:30px 32px!important;
  margin-bottom:20px;
}

.hero-card:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:linear-gradient(180deg,var(--gold-light),var(--gold));
}

.hero-card:after{
  content:"";
  position:absolute;
  right:-85px;
  top:-125px;
  width:285px;
  height:285px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(216,181,106,.13),transparent 68%);
  pointer-events:none;
}

.card,
.panel,
.box{
  padding:25px!important;
  margin-bottom:18px;
}

.card:hover{
  border-color:rgba(216,181,106,.16)!important;
}

.luxury-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:10px;
  color:var(--gold-light);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:1.45px;
}

.luxury-kicker:before{
  content:"";
  width:24px;
  height:1px;
  background:var(--gold);
}

.luxury-section-label{
  margin-bottom:9px;
  color:var(--gold-light);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:1.25px;
}

/* ---------- STAT CARDS ---------- */

.grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:14px;
  margin:18px 0;
}

.stat{
  position:relative;
  overflow:hidden;
  min-height:112px;
  padding:19px 20px!important;
  color:var(--text);
  background:linear-gradient(180deg,#1a1a20,#121217)!important;
  border:1px solid var(--border)!important;
  border-radius:19px!important;
  box-shadow:var(--shadow-soft);
  transition:.18s ease;
}

.stat:after{
  content:"";
  position:absolute;
  right:-26px;
  bottom:-34px;
  width:100px;
  height:100px;
  border-radius:50%;
  background:radial-gradient(circle,var(--gold-soft),transparent 68%);
}

.stat:hover{
  transform:translateY(-2px);
  border-color:var(--border-gold)!important;
  box-shadow:0 18px 38px rgba(0,0,0,.28);
}

.stat span{
  display:block;
  color:var(--muted)!important;
  font-size:10px!important;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.9px;
}

.stat strong{
  position:relative;
  z-index:1;
  display:block;
  margin-top:7px;
  color:var(--gold-light)!important;
  font-size:34px!important;
  line-height:1;
  font-weight:900;
}

/* ---------- BUTTONS ---------- */

.btn,
button.btn,
input[type="submit"],
button[type="submit"]{
  min-height:42px;
  padding:10px 17px!important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:1px solid var(--border)!important;
  border-radius:999px!important;
  outline:none;
  cursor:pointer;
  color:#f7f2e8;
  background:#18181e;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1.15;
  letter-spacing:.2px;
  box-shadow:0 9px 20px rgba(0,0,0,.18);
  transition:transform .15s ease,box-shadow .15s ease,filter .15s ease,border-color .15s ease;
}

.btn:hover,
button.btn:hover,
input[type="submit"]:hover,
button[type="submit"]:hover{
  transform:translateY(-1px);
  box-shadow:0 13px 28px rgba(0,0,0,.27);
  filter:brightness(1.05);
}

.btn-primary{
  color:#15120c!important;
  background:linear-gradient(135deg,var(--gold),var(--gold-light))!important;
  border-color:rgba(255,226,163,.38)!important;
}

.btn-dark{
  color:#f3efe6!important;
  background:#111116!important;
}

.btn-success{
  color:#07150d!important;
  background:linear-gradient(135deg,#419d68,#73d59a)!important;
  border-color:rgba(115,213,154,.30)!important;
}

.btn-danger,
.btn-warning{
  color:#fff!important;
  background:linear-gradient(135deg,#7f2323,#c74747)!important;
  border-color:rgba(255,123,123,.25)!important;
}

.btn-info{
  color:#07121a!important;
  background:linear-gradient(135deg,#5796c7,#83c4f1)!important;
}

.actions-row,
.mini-actions,
.actions,
.row-actions{
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
}

/* ---------- FORMS ---------- */

.form-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:15px;
}

.field{
  margin-bottom:15px;
}

label{
  display:block;
  color:#d9d7d0!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.75px;
  text-transform:uppercase;
}

input,
select,
textarea{
  width:100%;
  margin-top:7px;
  padding:12px 13px!important;
  color:#f7f2e8!important;
  caret-color:var(--gold-light);
  background:#0f0f13!important;
  border:1px solid rgba(255,255,255,.11)!important;
  border-radius:13px!important;
  outline:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018);
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}

input,
select{
  min-height:47px;
}

textarea{
  min-height:98px;
  resize:vertical;
}

input::placeholder,
textarea::placeholder{
  color:#676771;
}

input:focus,
select:focus,
textarea:focus{
  border-color:var(--gold)!important;
  background:#111116!important;
  box-shadow:0 0 0 3px rgba(216,181,106,.11)!important;
}

input:disabled,
select:disabled,
textarea:disabled{
  opacity:.68;
  cursor:not-allowed;
}

select option{
  color:#fff;
  background:#111116;
}

input[type="checkbox"],
input[type="radio"]{
  width:17px;
  height:17px;
  min-height:auto;
  margin:0 6px 0 0;
  accent-color:var(--gold);
  vertical-align:middle;
}

/* ---------- TABLES ---------- */

.table-wrap,
.table-responsive{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

table{
  width:100%;
  margin-top:13px;
  border-collapse:separate!important;
  border-spacing:0 8px!important;
  background:transparent!important;
  border:none!important;
  overflow:visible!important;
}

thead th,
th{
  padding:7px 11px!important;
  color:#aaaab2!important;
  background:transparent!important;
  border:none!important;
  font-size:9px!important;
  font-weight:900!important;
  text-transform:uppercase;
  letter-spacing:.82px;
  white-space:nowrap;
}

tbody tr{
  background:linear-gradient(180deg,#18181e,#131318);
  box-shadow:0 7px 20px rgba(0,0,0,.15);
}

td{
  padding:13px 11px!important;
  color:#eeeae1!important;
  background:transparent!important;
  border-top:1px solid rgba(255,255,255,.055)!important;
  border-bottom:1px solid rgba(255,255,255,.055)!important;
  font-size:12px!important;
  vertical-align:middle;
}

tbody td:first-child{
  border-left:1px solid rgba(255,255,255,.055)!important;
  border-radius:13px 0 0 13px;
}

tbody td:last-child{
  border-right:1px solid rgba(255,255,255,.055)!important;
  border-radius:0 13px 13px 0;
}

tbody tr:hover{
  background:linear-gradient(180deg,#1d1d24,#16161c);
}

/* ---------- STATUS PILLS ---------- */

.status,
.badge,
.pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:27px;
  padding:5px 9px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.09);
  font-size:9px!important;
  font-weight:900!important;
  line-height:1;
  letter-spacing:.55px;
  text-transform:uppercase;
}

.pending{
  color:#f1d28b!important;
  background:rgba(159,111,23,.16)!important;
  border-color:rgba(241,210,139,.20)!important;
}

.approved{
  color:#9ce4b9!important;
  background:rgba(49,128,81,.17)!important;
  border-color:rgba(115,213,154,.20)!important;
}

.rejected{
  color:#ffabab!important;
  background:rgba(154,47,47,.18)!important;
  border-color:rgba(255,123,123,.20)!important;
}

.ordered{
  color:#9dccf1!important;
  background:rgba(57,114,157,.18)!important;
  border-color:rgba(101,169,223,.20)!important;
}

.delivered{
  color:#9ce7c6!important;
  background:rgba(45,130,94,.18)!important;
  border-color:rgba(90,195,132,.20)!important;
}

.partial{
  color:#f2d895!important;
  background:rgba(140,104,25,.18)!important;
  border-color:rgba(216,181,106,.20)!important;
}

/* ---------- ALERTS ---------- */

.alert,
.ok,
.notice,
.message{
  padding:12px 14px!important;
  margin-bottom:15px;
  border-radius:13px!important;
  font-size:12px;
  font-weight:700;
}

.alert{
  color:#ffc0c0!important;
  background:rgba(159,42,42,.15)!important;
  border:1px solid rgba(255,123,123,.23)!important;
}

.ok,
.success-message{
  color:#a9e7bf!important;
  background:rgba(47,132,80,.15)!important;
  border:1px solid rgba(115,213,154,.22)!important;
}

/* ---------- ITEM ROWS / SUPPLY CONTROLS ---------- */

.items-row{
  display:grid;
  grid-template-columns:2fr 1fr 1fr auto;
  gap:10px;
  align-items:end;
  margin-bottom:10px;
  padding:10px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:15px;
  background:rgba(255,255,255,.018);
}

/* ---------- LOGIN ---------- */

.login-page{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:24px;
  background:
    radial-gradient(circle at 50% 0%,rgba(216,181,106,.16),transparent 34%),
    radial-gradient(circle at 80% 100%,rgba(192,0,59,.08),transparent 30%),
    linear-gradient(180deg,#070709,#111116);
}

.login-box{
  width:100%;
  max-width:440px;
  padding:34px!important;
  border-radius:27px!important;
}

.login-box:before{
  width:100%!important;
  height:3px;
  top:0!important;
  bottom:auto!important;
  background:linear-gradient(90deg,var(--gold-dark),var(--gold-light),var(--gold-dark))!important;
}

.login-box h1{
  color:#fff!important;
  font-size:32px;
}

.login-box .btn{
  width:100%;
  margin-top:4px;
}

/* ---------- FOOTER ---------- */

.footer-note{
  margin-top:28px;
  padding:20px 12px 8px;
  color:#686870!important;
  text-align:center;
  font-size:10px!important;
  font-weight:700;
  letter-spacing:.45px;
  border-top:1px solid rgba(255,255,255,.045);
}

.footer-note:after{
  content:"  •  Premium Operations Platform";
  color:var(--gold-dark);
}

/* ---------- MISC ---------- */

hr{
  height:1px;
  margin:20px 0;
  border:0;
  background:linear-gradient(90deg,transparent,var(--border),transparent);
}

code,pre{
  border:1px solid var(--border);
  border-radius:12px;
  background:#0c0c10;
  color:#e9d49f;
}

::-webkit-scrollbar{
  width:10px;
  height:10px;
}

::-webkit-scrollbar-track{
  background:#0a0a0d;
}

::-webkit-scrollbar-thumb{
  border:2px solid #0a0a0d;
  border-radius:999px;
  background:#393940;
}

::-webkit-scrollbar-thumb:hover{
  background:#55555d;
}

/* ---------- RESPONSIVE ---------- */

@media(max-width:900px){
  .wrap{
    padding:22px 18px 34px;
  }

  .top-inner{
    padding:14px 18px;
  }

  .hero-card{
    padding:25px!important;
  }
}

@media(max-width:700px){
  .top{
    position:relative;
  }

  .top-inner{
    align-items:flex-start;
  }

  .brand{
    width:100%;
    font-size:14px;
  }

  .nav{
    width:100%;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .nav a{
    width:100%;
  }

  .wrap{
    padding:16px 12px 28px;
  }

  .hero-card,
  .card,
  .panel,
  .box{
    border-radius:19px!important;
    padding:19px!important;
  }

  .hero-card h1{
    font-size:28px;
  }

  .grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }

  .stat{
    min-height:98px;
    padding:15px!important;
  }

  .stat strong{
    font-size:29px!important;
  }

  .form-grid,
  .items-row{
    grid-template-columns:1fr;
  }

  .actions-row,
  .mini-actions,
  .actions{
    display:grid!important;
    grid-template-columns:1fr!important;
  }

  .actions-row .btn,
  .mini-actions .btn,
  .actions .btn{
    width:100%;
  }

  table{
    display:table;
    min-width:690px;
  }

  .card:has(table),
  .panel:has(table){
    overflow-x:auto;
  }
}

@media(max-width:430px){
  .grid{
    grid-template-columns:1fr 1fr;
  }

  .nav{
    grid-template-columns:1fr 1fr;
  }

  .brand{
    padding-left:34px;
    line-height:1.25;
  }
}

@media print{
  body{
    color:#111!important;
    background:#fff!important;
  }

  body:before,.top,.nav,.footer-note,.btn{
    display:none!important;
  }

  .wrap{
    max-width:none;
    padding:0;
  }

  .hero-card,.card,.panel,.box,.stat{
    color:#111!important;
    background:#fff!important;
    border:1px solid #ddd!important;
    box-shadow:none!important;
  }

  h1,h2,h3,td,th,.muted{
    color:#111!important;
  }
}
