/* Mobile dashboard marketplace theme - inspired by modern app UI */
:root{
  --dm-bg:#f7f9fc;
  --dm-surface:#ffffff;
  --dm-surface-2:#f9fafc;
  --dm-text:#1f2937;
  --dm-heading:#111827;
  --dm-muted:#6b7280;
  --dm-border:#e5e7eb;
  --dm-border-soft:#eef0f5;
  --dm-primary:#4f46e5;
  --dm-primary-2:#6366f1;
  --dm-primary-soft:#eef2ff;
  --dm-primary-soft-2:#e0e7ff;
  --dm-primary-border:#c7d2fe;
  --dm-accent:#7c3aed;
  --dm-warning-bg:#fefce8;
  --dm-warning-text:#a16207;
  --dm-warning-border:#fde68a;
  --dm-success:#16a34a;
  --dm-success-soft:#dcfce7;
  --dm-danger:#ef4444;
  --dm-danger-soft:#fee2e2;
  --dm-radius:16px;
  --dm-radius-sm:12px;
  --dm-radius-lg:20px;
  --dm-shadow:0 1px 3px rgba(17,24,39,.05);
  --dm-shadow-md:0 4px 12px rgba(17,24,39,.06);
  --dm-shadow-lg:0 14px 36px rgba(17,24,39,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  max-width:100%!important;
  margin:0 auto!important;
  padding:0 16px 110px!important;
  background:var(--dm-bg)!important;
  color:var(--dm-text)!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;
  font-size:14px!important;
  line-height:1.55!important;
}
a{color:var(--dm-primary);text-decoration:none!important;transition:.18s ease}
a:hover{color:var(--dm-primary-2)}
img{max-width:100%;height:auto}

/* App header */
.new-header{
  position:sticky!important;
  top:0!important;
  z-index:2000!important;
  margin:0 -16px 14px!important;
  padding:14px 18px 12px!important;
  min-height:62px;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  background:rgba(247,249,252,.95)!important;
  border:0!important;
  border-bottom:1px solid var(--dm-border-soft)!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.header-logo{
  max-width:55vw;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  color:var(--dm-heading)!important;
  font-size:1.05rem!important;
  font-weight:800!important;
  letter-spacing:-.025em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.header-logo:before{
  content:"";
  flex:0 0 34px;
  width:34px;height:34px;border-radius:10px;
  background:linear-gradient(135deg,var(--dm-primary),#8b5cf6);
  box-shadow:0 6px 16px rgba(79,70,229,.28);
}
.header-icons{display:flex!important;align-items:center!important;gap:8px!important}
.icon-button{
  width:38px!important;height:38px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border:1px solid var(--dm-border)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:var(--dm-primary)!important;
  font-size:15px!important;
  box-shadow:var(--dm-shadow)!important;
}
.icon-button:active{transform:scale(.96)}
.icon-badge{top:-4px!important;right:-4px!important;background:var(--dm-danger)!important;border:2px solid #fff!important;color:#fff!important}
.search-container{
  max-width:520px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  top:-120px!important;
  padding:12px 16px!important;
  background:#fff!important;
  border:1px solid var(--dm-border)!important;
  border-radius:0 0 16px 16px!important;
  box-shadow:var(--dm-shadow-lg)!important;
}
.search-container.show{top:62px!important}
.search-container form{margin:0!important}
.search-container input,input,textarea,select{
  width:100%;min-height:44px;
  border:1px solid var(--dm-border)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:var(--dm-text)!important;
  padding:10px 14px!important;
  outline:none!important;
  box-shadow:none!important;
}
.search-container input:focus,input:focus,textarea:focus,select:focus{border-color:var(--dm-primary)!important;box-shadow:0 0 0 3px rgba(79,70,229,.12)!important}
.popup-menu{width:84%!important;max-width:340px!important;background:#fff!important;border-left:1px solid var(--dm-border);box-shadow:-18px 0 45px rgba(17,24,39,.18)!important}
.popup-header{background:#fafafe!important;color:var(--dm-heading)!important;border-bottom:1px solid var(--dm-border)!important}
.popup-body a{color:var(--dm-text)!important;border-bottom:1px solid var(--dm-border-soft)!important;font-weight:600!important}
.popup-body a:hover{background:var(--dm-primary-soft)!important;color:var(--dm-primary)!important}
.overlay{background:rgba(17,24,39,.45)!important;backdrop-filter:blur(2px)}

/* === DASHBOARD HEADER === */
.dm-page-head{
  margin:6px 0 16px;
  padding:0;
}
.dm-page-head-row{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
}
.dm-page-head h1{
  margin:0!important;
  color:var(--dm-heading)!important;
  font-size:24px!important;
  font-weight:800!important;
  letter-spacing:-.025em;
  line-height:1.2!important;
}
.dm-page-head .dm-sub{
  margin:4px 0 0!important;
  color:var(--dm-muted)!important;
  font-size:13.5px!important;
  font-weight:500;
  line-height:1.4;
}
.dm-head-icon{
  flex:0 0 44px;width:44px;height:44px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:12px;
  background:var(--dm-primary-soft);
  color:var(--dm-primary);
  font-size:18px;
  border:1px solid var(--dm-primary-border);
}

/* === INFO CARD (BLUE) === */
.dm-info-card{
  display:flex;align-items:flex-start;gap:12px;
  margin:0 0 14px;padding:16px;
  background:var(--dm-primary-soft);
  border:1px solid var(--dm-primary-border);
  border-radius:var(--dm-radius);
  color:#1e1b4b;
}
.dm-info-card .dm-info-icon{
  flex:0 0 32px;width:32px;height:32px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:8px;
  background:#fff;
  color:var(--dm-primary);
  font-size:14px;
  border:1px solid var(--dm-primary-border);
}
.dm-info-card .dm-info-body{flex:1;min-width:0}
.dm-info-card .dm-info-title{
  margin:0 0 4px;
  font-size:13.5px;font-weight:700;
  color:#312e81;letter-spacing:-.01em;
}
.dm-info-card .dm-info-text{
  margin:0;
  font-size:12.5px;line-height:1.5;
  color:#4338ca;
}
.dm-info-card .dm-info-text b{color:#312e81;font-weight:700}

/* === STATUS ROW (2-col) === */
.dm-status-row{
  display:grid;grid-template-columns:1fr 1fr;gap:12px;
  margin:0 0 14px;
}
.dm-status-card{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:14px 16px;
  background:#fff;
  border:1px solid var(--dm-border);
  border-radius:var(--dm-radius);
  box-shadow:var(--dm-shadow);
  transition:transform .15s ease;
}
.dm-status-card:active{transform:scale(.98)}
.dm-status-card .dm-status-meta{display:flex;flex-direction:column;gap:2px;min-width:0}
.dm-status-card .dm-status-label{
  font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:var(--dm-muted);
}
.dm-status-card .dm-status-value{
  font-size:24px;font-weight:800;letter-spacing:-.025em;
  color:var(--dm-heading);line-height:1;
}
.dm-status-card .dm-status-icon{
  flex:0 0 36px;width:36px;height:36px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:10px;font-size:15px;
}
.dm-status-card.is-online .dm-status-icon{background:var(--dm-success-soft);color:var(--dm-success)}
.dm-status-card.is-offline .dm-status-icon{background:var(--dm-danger-soft);color:var(--dm-danger)}
.dm-status-card.is-success .dm-status-icon{background:var(--dm-success-soft);color:var(--dm-success)}
.dm-status-card.is-warning .dm-status-icon{background:#fef3c7;color:#b45309}

/* === BALANCE / FEATURED CARD === */
.dm-balance-card{
  margin:0 0 14px;padding:18px;
  background:#fff;
  border:1px solid var(--dm-border);
  border-radius:var(--dm-radius);
  box-shadow:var(--dm-shadow);
}
.dm-balance-card .dm-balance-label{
  display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:var(--dm-muted);margin:0 0 6px;
}
.dm-balance-card .dm-balance-amount{
  display:block;font-size:28px;font-weight:800;letter-spacing:-.025em;
  color:var(--dm-heading);line-height:1.1;
}
.dm-balance-card .dm-balance-foot{
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  margin-top:12px;padding-top:12px;
  border-top:1px solid var(--dm-border-soft);
}
.dm-balance-card .dm-balance-meta{display:flex;flex-direction:column;gap:1px}
.dm-balance-card .dm-balance-meta b{font-size:14px;font-weight:700;color:var(--dm-heading)}
.dm-balance-card .dm-balance-meta span{font-size:11.5px;color:var(--dm-muted)}

/* === ACTION GRID (CATEGORY) === */
.dm-section-head{
  display:flex;align-items:center;justify-content:space-between;
  margin:14px 0 8px;padding:0;
}
.dm-section-head h2{
  margin:0!important;color:var(--dm-heading)!important;
  font-size:12px!important;font-weight:700!important;letter-spacing:0;
}
.dm-section-head a{font-size:12.5px;font-weight:700;color:var(--dm-primary)}

.dm-cats{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;
  margin:0 0 16px;
}
.dm-cat{
  display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:7px;
  min-height:84px;padding:10px 6px;
  background:#fff;
  color:var(--dm-heading)!important;
  border:1px solid var(--dm-border);
  border-radius:var(--dm-radius);
  box-shadow:var(--dm-shadow);
  font-weight:700;font-size:11.5px;text-align:center;line-height:1.2;
  transition:transform .15s ease;
}
.dm-cat:active{transform:scale(.96)}
.dm-cat i{
  display:flex;align-items:center;justify-content:center;
  width:36px;height:36px;border-radius:10px;
  background:var(--dm-primary-soft);color:var(--dm-primary);
  font-size:15px;
}
.dm-cat.is-orange i{background:#fff7ed;color:#ea580c}
.dm-cat.is-green i{background:var(--dm-success-soft);color:var(--dm-success)}
.dm-cat.is-pink i{background:#fce7f3;color:#db2777}
.dm-cat.is-amber i{background:#fef3c7;color:#b45309}

/* === CTA / WARNING CARD === */
.dm-warning-card{
  display:flex;align-items:flex-start;gap:12px;
  margin:0 0 14px;padding:14px 16px;
  background:var(--dm-warning-bg);
  border:1px solid var(--dm-warning-border);
  border-radius:var(--dm-radius);
  color:var(--dm-warning-text);
}
.dm-warning-card i{
  flex:0 0 28px;width:28px;height:28px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:8px;background:#fef3c7;color:#b45309;font-size:13px;
}
.dm-warning-card .dm-warning-body{flex:1;min-width:0}
.dm-warning-card .dm-warning-body b{display:block;font-size:13px;color:#854d0e;margin-bottom:2px}
.dm-warning-card .dm-warning-body span{font-size:12px;line-height:1.45}

/* === Existing legacy content cards (refine) === */
.tmenu,.tnews,.phdr{
  display:flex!important;align-items:center;justify-content:space-between;gap:8px;
  margin:14px 0 8px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;
  color:var(--dm-heading)!important;font-weight:700!important;font-size:12px!important;letter-spacing:0;
}
.tmenu b,.tnews b,.phdr b{font-weight:700}
.tmenu:before,.tnews:before,.phdr:before{display:none!important}
.tmenu a,.tnews a,.phdr a{color:var(--dm-primary)!important;font-size:12.5px!important;font-weight:700!important;float:none!important}

.menu,.list,.container,.back-menu,.news,.guest-form,.rmenu,.gmenu,.bmenu,.omenu,.tmn,.maintxt{
  margin:8px 0!important;padding:11px!important;border:1px solid var(--dm-border)!important;border-radius:var(--dm-radius)!important;
  background:#fff!important;color:var(--dm-text)!important;box-shadow:var(--dm-shadow)!important;
}
.rmenu{background:#fff7ed!important;border-color:#fed7aa!important}
.gmenu{background:var(--dm-success-soft)!important;border-color:#bbf7d0!important}
.omenu{background:var(--dm-warning-bg)!important;border-color:var(--dm-warning-border)!important}
.menu a,.list a,.container a{font-weight:600;color:var(--dm-heading);font-size:12.5px}
small,.sub,.gray,.grey,.time{color:var(--dm-muted)!important;font-size:11px!important}
.blog-thumbnail{
  width:60px!important;height:46px!important;
  border-radius:10px!important;
  margin-right:10px!important;
  object-fit:cover!important;
  box-shadow:var(--dm-shadow);
}
.banner-slider{
  margin:14px 0!important;border-radius:var(--dm-radius)!important;overflow:hidden!important;
  background:#fff!important;border:1px solid var(--dm-border)!important;box-shadow:var(--dm-shadow)!important;
}
.banner-slide img{display:block;width:100%;border-radius:0!important}

.paging{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:14px 0!important}
.paging a,.button,button,input[type=submit],input[type=button]{
  display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px!important;
  border-radius:12px!important;border:1px solid var(--dm-primary)!important;background:var(--dm-primary)!important;color:#fff!important;
  font-weight:700!important;box-shadow:0 6px 16px rgba(79,70,229,.18)!important;
}
hr{border:0;border-top:1px solid var(--dm-border-soft);margin:14px 0}
table{width:100%;border-collapse:separate;border-spacing:0}
.new-footer{background:transparent!important;color:var(--dm-muted)!important}

/* Product card legacy refresh - softer cards with rounded corners */
[class*="product"] img,[class*="produk"] img{border-radius:12px}

@media(min-width:721px){
  body{max-width:1180px!important;padding:0 24px 40px!important}
  .new-header{margin:0 -24px 18px!important;padding:16px 28px!important;max-width:none!important}
  .search-container{max-width:920px!important}
  .mainpage{max-width:1180px;margin:0 auto}
  .dm-cats{grid-template-columns:repeat(6,minmax(0,1fr))!important}
  .menu,.list,.container,.back-menu,.news,.guest-form{padding:16px!important}
}
@media(max-width:380px){
  body{padding-left:12px!important;padding-right:12px!important}
  .new-header{margin-left:-12px!important;margin-right:-12px!important;padding-left:14px!important;padding-right:14px!important}
  .header-logo{max-width:42vw;font-size:.95rem!important}
  .icon-button{width:36px!important;height:36px!important}
  .header-icons{gap:6px!important}
  .dm-page-head h1{font-size:21px!important}
  .dm-balance-card .dm-balance-amount{font-size:24px}
  .dm-status-card .dm-status-value{font-size:21px}
  .dm-cats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
  .dm-cat{font-size:10.5px;min-height:78px}
}

/* === Quick menu scrollable wrapper (overrides grid for >4 items) === */
.dm-cats-wrap{
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  margin:0 -12px;
  padding:4px 12px 8px 12px;
}
.dm-cats-wrap::-webkit-scrollbar{display:none}
.dm-cats-wrap .dm-cats{
  display:flex !important;
  grid-template-columns:none !important;
  gap:8px !important;
  flex-wrap:nowrap;
  width:max-content;
}
.dm-cats-wrap .dm-cat{
  flex:0 0 calc((100vw - 24px - 24px) / 4);
  max-width:96px;
  min-width:72px;
  scroll-snap-align:start;
}
.dm-cat.is-blue i{background:#dbeafe;color:#2563eb}
.dm-cat.is-purple i{background:#ede9fe;color:#7c3aed}
.dm-cat.is-gold i{background:#fef9c3;color:#ca8a04}
