:root{
  --bg:#fff9f4;
  --bg-soft:#fff1e2;
  --bg-accent:#ffe1bd;
  --panel:#ffffff;
  --panel-soft:#fffaf5;
  --line:#efd8c0;
  --line-strong:#ebb67a;
  --text:#25150a;
  --text-soft:#6f5238;
  --title:#1d1108;
  --accent:#f47a1f;
  --accent-2:#e6670d;
  --accent-3:#cb5604;
  --accent-deep:#7d3606;
  --accent-brown:#5f2f0f;
  --gold:#ffc47d;
  --shadow-soft:0 12px 28px rgba(103,52,17,.08);
  --shadow:0 18px 40px rgba(103,52,17,.11);
  --shadow-strong:0 26px 60px rgba(103,52,17,.16);
}

*{text-shadow:none !important;filter:none !important}
html,body{
  background:
    radial-gradient(circle at top right, rgba(255,220,182,.45), transparent 26%),
    linear-gradient(180deg, #fffdfa 0%, #fff6ec 44%, #fffaf6 100%) !important;
  color:var(--text) !important;
}
body{
  font-family:"Malgun Gothic", Arial, sans-serif !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.page-grid,.wrap,.content{background:transparent !important}

/* Sidebar */
.sidebar{
  background:linear-gradient(180deg,#fffefc 0%,#fff9f1 52%,#fff4e7 100%) !important;
  border-right:1px solid #ecd6bf !important;
  box-shadow:12px 0 28px rgba(103,52,17,.08) !important;
  color:var(--text) !important;
  position:relative;
}
.sidebar::before{
  content:"";
  position:absolute;
  left:0; top:0; bottom:0;
  width:7px;
  background:linear-gradient(180deg,#ffbb6b 0%,#f47a1f 55%,#cf5a07 100%);
}
.brand-card{
  position:relative;
  background:linear-gradient(180deg,#ffffff 0%,#fff8ef 100%) !important;
  border:1px solid #edd7c0 !important;
  box-shadow:var(--shadow) !important;
  overflow:hidden;
}
.brand-card::after{
  content:"";
  position:absolute;
  right:-30px; bottom:-30px;
  width:120px; height:120px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(244,122,31,.18), rgba(244,122,31,0));
  pointer-events:none;
}
.logo-circle{
  width:138px !important;
  height:138px !important;
  border-radius:28px !important;
  background:linear-gradient(180deg,#fffefa 0%,#fff6eb 100%) !important;
  border:1px solid #efd3b0 !important;
  box-shadow:0 16px 34px rgba(103,52,17,.14) !important;
  padding:12px !important;
}
.logo-circle img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  border-radius:18px !important;
}
.brand-title{
  color:var(--title) !important;
  font-size:22px !important;
  font-weight:900 !important;
  letter-spacing:-0.8px !important;
}
.brand-sub-wrap{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:7px !important;
  margin-top:6px !important;
}
.brand-sub-pill{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:24px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#fff2de 0%,#ffe0b8 100%) !important;
  border:1px solid #efc089 !important;
  color:#9a531a !important;
  font-size:11px !important;
  font-weight:900 !important;
  letter-spacing:.4px !important;
  box-shadow:0 8px 18px rgba(184,93,16,.10) !important;
}
.brand-sub{
  color:#6d3e1d !important;
  font-weight:900 !important;
  font-size:12px !important;
  line-height:1.45 !important;
  letter-spacing:.1px !important;
  text-align:center !important;
  opacity:1 !important;
}
.menu-title{
  color:#8f5726 !important;
  letter-spacing:.9px !important;
  font-size:11px !important;
  font-weight:900 !important;
  text-transform:uppercase;
}
.menu a{
  color:#2d1809 !important;
  background:#fffaf5 !important;
  border:1px solid #efd9c1 !important;
  box-shadow:0 4px 10px rgba(123,67,20,.04) !important;
  text-shadow:none !important;
  opacity:1 !important;
  line-height:1.25 !important;
}
.menu a:hover{
  background:#fff0dd !important;
  border-color:#eab980 !important;
  color:#1f1107 !important;
  box-shadow:0 8px 16px rgba(219,99,8,.10) !important;
}
.menu a.active{
  background:linear-gradient(135deg,#ffb460 0%,#f47a1f 58%,#db6308 100%) !important;
  color:#fffdfa !important;
  border-color:#ed7d25 !important;
  box-shadow:0 12px 26px rgba(219,99,8,.24) !important;
}

/* Cards and surfaces */
.card,.stat-card,.toolbar,.table-wrap,.meta-box,.stack-item,.summary-card,.detail-box,.script-box,
.glass-card,.notice,.info-box,.hint-box,.login-box,.popup-card,.popup-message-card,.table-shell,
.category-item,.hero-kpi,.hero-stat-card,.success-box{
  background:linear-gradient(180deg,#ffffff 0%,#fffaf4 100%) !important;
  border:1px solid var(--line) !important;
  box-shadow:var(--shadow-soft) !important;
}
.content{position:relative}
.hero{
  background:
    radial-gradient(circle at top right, rgba(255,255,255,.18), transparent 24%),
    linear-gradient(135deg,#ffbf74 0%,#f58a31 36%,#eb7016 72%,#cf5a07 100%) !important;
  border:1px solid #efa35a !important;
  color:#fffdfa !important;
  box-shadow:var(--shadow-strong) !important;
  position:relative;
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(255,255,255,.14), rgba(255,255,255,0));
  pointer-events:none;
}
.hero-title,.section-title,.card h2,.title,.stat-value,.meta-value,.summary-value,.detail-value,.customer-link,
.popup-title,.hero-kpi .value,.hero-stat-value{
  color:var(--title) !important;
}
.hero .hero-title,.hero .hero-sub,.hero .hero-badge,.hero .hero-kpi .label,.hero .hero-kpi .value,
.hero .hero-stat-label,.hero .hero-stat-value{
  color:#fffdfa !important;
}
.hero-badge{
  background:rgba(255,255,255,.18) !important;
  border:1px solid rgba(255,255,255,.24) !important;
  color:#fffdfa !important;
}
.hero-kpi,.hero-stat-card{
  background:rgba(255,248,240,.16) !important;
  border-color:rgba(255,255,255,.24) !important;
  box-shadow:none !important;
}
.hero-sub,.section-sub,.muted,.meta-label,.stat-label,.stat-title,.sub,.detail-label,.popup-sub,.popup-meta,.kv-label,.notice,.empty-box,.empty,.guide{
  color:var(--text-soft) !important;
}
.notice{
  background:linear-gradient(180deg,#fffdfb 0%,#fff8f1 100%) !important;
}
.info-box{
  background:linear-gradient(135deg,#fff3df,#ffe4c1) !important;
  color:#8b4b19 !important;
  border-color:#efc48c !important;
}
.hint-box{
  background:linear-gradient(135deg,#fff8ef,#ffedd9) !important;
  color:#7e5029 !important;
  border:1px solid #efd1ae !important;
}
.success-box{
  background:linear-gradient(135deg,#f2fff6,#e5f8eb) !important;
  color:#166534 !important;
  border-color:#bfe8cb !important;
}

/* Inputs */
.input,.search-form input,.search-form select,.form-grid input,.form-grid select,.form-grid textarea,.group input,.group select,.group textarea,select,textarea{
  background:#fffdfa !important;
  color:var(--text) !important;
  border:1px solid #efcfab !important;
}
.input::placeholder,.search-form input::placeholder,.form-grid input::placeholder,.form-grid textarea::placeholder,.group input::placeholder,.group textarea::placeholder{
  color:#b17b52 !important;
}
.input:focus,.search-form input:focus,.search-form select:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.group input:focus,.group select:focus,.group textarea:focus,select:focus,textarea:focus{
  border-color:var(--accent) !important;
  box-shadow:0 0 0 4px rgba(244,122,31,.12) !important;
}

/* Buttons */
.btn,.action-group a,.action-group button{
  font-weight:900 !important;
  transition:transform .18s ease, box-shadow .18s ease !important;
}
.btn:hover,.action-group a:hover,.action-group button:hover{transform:translateY(-1px)}
.btn-primary{
  background:linear-gradient(135deg,#ffb460 0%,#f47a1f 58%,#db6308 100%) !important;
  color:#fffdfa !important;
  box-shadow:0 12px 24px rgba(219,99,8,.22) !important;
}
.btn-dark{
  background:linear-gradient(135deg,#bb6718 0%,#d87a13 100%) !important;
  color:#fffdfa !important;
  border:1px solid #864716 !important;
}
.btn-gray{
  background:#fff2e1 !important;
  color:#8d521c !important;
  border:1px solid #efcea7 !important;
}
.btn-green{box-shadow:0 10px 20px rgba(21,128,61,.14) !important}
.btn-red{box-shadow:0 10px 20px rgba(220,38,38,.14) !important}
.popup-copy-btn,.popup-fill-btn{
  background:#fff2e1 !important;
  color:#9b510f !important;
  border:1px solid #efcfab !important;
}
.popup-close{
  background:#fff2e1 !important;
  color:#7d4c26 !important;
  border:1px solid #efd1b0 !important;
}

/* Tables */
.table-wrap,table,.table-shell{border-radius:20px !important;overflow:hidden !important}
thead,.table thead{
  background:linear-gradient(135deg,#b86118 0%,#d87a13 52%,#f29a32 100%) !important;
  color:#fffdfa !important;
}
th,td,.table th,.table td{
  border-bottom-color:#f5e3d1 !important;
  color:var(--text) !important;
}
tbody tr:nth-child(even){background:#fffaf4 !important}
tbody tr:hover{background:#fff1e1 !important}
.badge-blue{background:#fff1e3 !important;color:#ba5d12 !important}
.badge-orange{background:#ffe6c7 !important;color:#9f5114 !important}
.badge-gray{background:#fff5eb !important;color:#8c5e37 !important}
.badge-green{background:#edf9f1 !important;color:#166534 !important}

/* Login */
body:has(.login-box){
  background:
    radial-gradient(circle at top left, rgba(255,222,186,.52), transparent 28%),
    linear-gradient(135deg,#fffaf5 0%,#fff2e1 56%,#ffedd6 100%) !important;
}
.login-box{
  width:min(430px, calc(100vw - 32px)) !important;
  border-radius:28px !important;
  padding:34px 30px !important;
  box-shadow:0 28px 72px rgba(103,52,17,.18) !important;
  border:1px solid #edd5bc !important;
}
.login-box .title{font-size:32px !important;color:var(--title) !important}
.login-box .sub{color:#8c603d !important;font-weight:700 !important}
.group label{color:#41240e !important}
.login-box .btn{margin-top:10px !important}
.guide{color:#8c603d !important;font-size:13px !important}
.error{background:#fff0ec !important;border:1px solid #ffc6bc !important;color:#b42318 !important}

/* Links and misc */
a,.customer-link{color:var(--accent-deep) !important}
a:hover,.customer-link:hover{color:var(--accent-3) !important}
hr{border-color:#f1dece !important}
::selection{background:#ffd8b2;color:#28170b}

@media (max-width:1200px){.sidebar{box-shadow:none !important}}
