/* ==========================================================
   SIRX / DS SHOP THEME - ajuste geral de bases e layout
   Remove bases claras, padroniza cards, inputs, tabelas e pagamentos.
   ========================================================== */
:root{
  --ds-bg:#050608;
  --ds-bg2:#090b10;
  --ds-card:#101217;
  --ds-card2:#171a21;
  --ds-soft:#1c2028;
  --ds-line:rgba(255,255,255,.085);
  --ds-line2:rgba(255,255,255,.16);
  --ds-text:#f8fafc;
  --ds-muted:#9aa4b2;
  --ds-blue:#2f7dff;
  --ds-purple:#6d5cff;
  --ds-green:#00e08a;
  --ds-orange:#ffb13d;
  --ds-red:#ef4444;
  --ds-radius:18px;
  --ds-shadow:0 18px 60px rgba(0,0,0,.28);
}

*{box-sizing:border-box}
html,body{
  background:
    radial-gradient(circle at top left,rgba(255,255,255,.045),transparent 34%),
    radial-gradient(circle at bottom right,rgba(47,125,255,.06),transparent 30%),
    linear-gradient(180deg,#090a0e,#050607)!important;
  color:var(--ds-text)!important;
  font-family:Inter,Arial,Helvetica,sans-serif!important;
}
body{scrollbar-color:rgba(255,255,255,.22) #08090d;}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:#08090d}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:999px;border:2px solid #08090d}
::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.28)}

/* Bases principais: deixa todas no estilo DS Shop */
.card,.box,.panel,.stat,.mini,.pay-card,.table-wrap,.tabs,.tab,.step,.mov,.notice,.note,.filters a,.amounts button,.method,.gateway,.produto-card,.pedido-card,.wallet-card,.admin-card,.config-card,.categoria-card,.service-card,.plan-card,.saldo-card,.product-card,.product-row,.category-block,.category-manage,.category-products,.empty,.topbar,.frame-box,.preview-shell,.side,.loja-preview,.demo-card,.group,.lock-box,.msg,.erro,.search,.filter,.filters input,.filters select,.balance-card,.fees,.fee,.pedido,.order,.checkout,.cart-item,.category,.categoria,.product,.produto,.item,.wallet{
  background:linear-gradient(180deg,rgba(255,255,255,.052),rgba(255,255,255,.022))!important;
  border:1px solid var(--ds-line)!important;
  border-radius:var(--ds-radius)!important;
  color:var(--ds-text)!important;
  box-shadow:0 14px 38px rgba(0,0,0,.20)!important;
}
.card:hover,.panel:hover,.pay-card:hover,.stat:hover,.mini:hover,.box:hover,.produto-card:hover,.pedido-card:hover,.product-card:hover,.product-row:hover,.category-block:hover{
  border-color:rgba(255,255,255,.15)!important;
}

/* Texto */
h1,h2,h3,h4,h5,b,strong,label,th,.card-title,.panel-title,.product-title,.demo-name,.product-row-name{color:#fff!important;}
p,small,.muted,.panel-desc,.card-sub,.subtitle,.top p,.top-title p,.stat span,.mini span,.card span,.product-row-meta,.cat-count,td{color:var(--ds-muted)!important;}
.stat b,.mini b,.card b,.panel b,td b,.price,.demo-price,.balance-card strong{color:#fff!important;}

/* Inputs e filtros */
input,select,textarea,.search,.filter,.filters input,.filters select{
  background:#0d0f14!important;
  border:1px solid var(--ds-line)!important;
  color:#fff!important;
  border-radius:14px!important;
  outline:none!important;
  box-shadow:none!important;
}
input::placeholder,textarea::placeholder{color:#6b7280!important;}
input:focus,select:focus,textarea:focus{
  border-color:rgba(47,125,255,.62)!important;
  box-shadow:0 0 0 3px rgba(47,125,255,.12)!important;
}
input[type=color]{padding:3px!important;min-height:44px!important;background:#0d0f14!important;}
input[type=checkbox],input[type=radio]{accent-color:var(--ds-blue)!important;}

/* Botões */
button,.btn,.btnx,a.btn,.btn2,.btn-edit,.btn-delete,.btn-move,.save,.ok,.danger,.filters a.active,.top-link,.btn-back{
  border-radius:14px!important;
  font-weight:900!important;
  border:1px solid rgba(255,255,255,.09)!important;
  transition:.18s ease!important;
}
.btn,button[type=submit],.save,.btn-ok,.top-link,.filters a.active{
  background:linear-gradient(135deg,var(--ds-blue),var(--ds-purple))!important;
  color:#fff!important;
}
button:hover,.btn:hover,.btn2:hover,.btn-edit:hover,.btn-delete:hover,.btn-move:hover,.btn-back:hover{transform:translateY(-1px);filter:brightness(1.08)}
.btn.dark,.btnx.light,.btn2,.filters a,.tab,.btn-back{
  background:#11141a!important;
  color:#cbd5e1!important;
}
.btn.green,.btnx.green,.ok,.connected,.badge.ok,.btn-edit{
  background:rgba(0,224,138,.12)!important;
  border-color:rgba(0,224,138,.28)!important;
  color:#77ffc8!important;
}
.btn-bad,.bad,.err,.danger,.btn-delete{
  background:rgba(239,68,68,.13)!important;
  border-color:rgba(239,68,68,.28)!important;
  color:#fecaca!important;
}
.warn,.wait{
  background:rgba(255,177,61,.13)!important;
  border-color:rgba(255,177,61,.28)!important;
  color:#ffe3aa!important;
}

/* Tabelas */
table{background:transparent!important;color:#dbe4ef!important;border-color:var(--ds-line)!important;}
th{background:#12151b!important;color:#aeb8c7!important;border-color:var(--ds-line)!important;}
td{border-color:rgba(255,255,255,.065)!important;}
tr{border-color:rgba(255,255,255,.065)!important;}
tbody tr:hover{background:rgba(255,255,255,.035)!important;}
.table-wrap{overflow:auto!important;}

/* Sidebar/menu externo */
.sidebar{
  background:linear-gradient(180deg,#090b10,#050607)!important;
  border-right:1px solid var(--ds-line)!important;
  box-shadow:20px 0 60px rgba(0,0,0,.25)!important;
}
.sidebar-header,.sidebar-footer{border-color:var(--ds-line)!important;}
.menu a,.menu button{color:#aeb8c7!important;border:1px solid transparent!important;}
.menu a:hover,.menu button:hover,.menu a.active,.menu button.active{background:#151820!important;color:#fff!important;border-color:var(--ds-line)!important;}
.menu-icon{background:#1a1d24!important;color:#cbd5e1!important;}
.brand-icon,.brand-logo,.logo.sirx-brand{
  background:linear-gradient(135deg,#fff,#cfd6e4)!important;
  color:#09090b!important;
  box-shadow:0 10px 30px rgba(255,255,255,.10)!important;
}
.logout{background:rgba(239,68,68,.14)!important;border-color:rgba(239,68,68,.28)!important;color:#fecaca!important;}

/* Iframe/áreas internas */
.frame-box{background:rgba(10,12,18,.84)!important;}
.frame-head{background:#151820!important;border-bottom:1px solid var(--ds-line)!important;}
.frame-wrap,iframe{background:#07080c!important;}
html.sirx-embedded .btn-back[href="index.php"],
html.sirx-embedded a[href="index.php"].btn-back,
html.sirx-embedded a[href="painel.php"].btn2,
html.sirx-embedded a[href="index.php"].btn2{display:none!important;}

/* Pagamentos / gateways / bancos */
.payment-page .page{display:block!important;min-height:100vh!important;}
.payment-page .content{width:100%!important;max-width:1180px!important;margin:0 auto!important;padding:22px!important;}
.payment-page .payment-nav{display:none!important;}
.pay-card{overflow:hidden!important;background:#101217!important;position:relative!important;}
.pay-card:has(input:checked),#cardCart[style*="outline"],#cardMp[style*="outline"]{box-shadow:0 0 0 1px rgba(0,224,138,.35),0 24px 70px rgba(0,0,0,.35)!important;}
.pay-head{background:#101217!important;border-bottom:1px solid rgba(255,255,255,.065)!important;}
.pay-body{background:#0f1116!important;}
.fees{background:#1b1e24!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:14px!important;box-shadow:none!important;}
.fee{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:12px!important;}
.fee b{color:var(--ds-orange)!important;}
.fee.green b{color:var(--ds-green)!important;}
.logo{width:46px!important;height:46px!important;border-radius:14px!important;font-size:13px!important;font-weight:1000!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.20),0 10px 24px rgba(0,0,0,.28)!important;display:grid!important;place-items:center!important;}
.logo.mp{background:linear-gradient(135deg,#00a7ff,#005eff)!important;color:#fff!important;}
.logo.sx{background:linear-gradient(135deg,#00e08a,#0b5a38)!important;color:#06130c!important;}
.logo.efi{background:#ff7a1a!important;color:#121212!important;}
.logo.pushin{background:#5038ff!important;color:#fff!important;}
.logo.atos{background:#06170b!important;color:#00ff80!important;border:2px solid #00ff80!important;}
.logo.mistic{background:linear-gradient(135deg,#7c3aed,#c026d3)!important;color:#fff!important;}
.logo.asaas{background:#1f4cff!important;color:#fff!important;}
.logo.stripe{background:#635bff!important;color:#fff!important;}
.logo.suit{background:#00d932!important;color:#fff!important;}
.status.off,.off{background:#fff!important;color:#111!important;border-color:#fff!important;}
.balance-card{background:linear-gradient(135deg,rgba(0,224,138,.10),rgba(0,224,138,.035))!important;border:1px solid rgba(0,224,138,.24)!important;}
.balance-card strong{color:var(--ds-green)!important;}
.links{color:#60a5fa!important;}

/* Dashboard / gráficos / cards */
.grid,.stats,.quick-grid,.actions-top{gap:14px!important;}
.stat strong,.stat b,.mini b{font-size:22px!important;}
.badge,.pill{border-radius:999px!important;border:1px solid rgba(255,255,255,.10)!important;background:#151820!important;color:#dbeafe!important;}

/* Loja pública */
.product,.produto,.item,.cart-item,.order,.pedido,.wallet,.checkout,.category,.categoria,.produto-card,.pedido-card{
  background:#101217!important;
  border:1px solid var(--ds-line)!important;
  color:#fff!important;
  border-radius:18px!important;
}
img{max-width:100%;}

/* Mobile */
@media(max-width:980px){
  .payment-page .content{padding:14px!important;}
}
@media(max-width:760px){
  body{background:#07080c!important;}
  .content,.wrap,main{padding-left:12px!important;padding-right:12px!important;}
  .card,.panel,.box,.pay-card,.stat,.mini,.product-card,.product-row{border-radius:16px!important;}
  table,tbody,tr,td{max-width:100%!important;}
  td:before{color:#9ec5ff!important;}
  .grid-methods,.form-grid,.sim,.grid,.stats{grid-template-columns:1fr!important;}
  .fees,.amounts,.vals{grid-template-columns:1fr 1fr!important;}
  .pay-head{align-items:flex-start!important;flex-direction:column!important;}
}
