
:root{--bg:#070912;--panel:#101421;--soft:#181e2f;--text:#f7f8ff;--muted:#9aa4bb;--primary:#7758ff;--accent:#22d3a6;--danger:#ff5577;--border:#ffffff16}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% 0,#211755 0,transparent 36%),var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;min-height:100vh}
button,input,select,textarea{font:inherit}.container{width:min(1180px,92%);margin:auto}.nav{position:sticky;top:0;z-index:20;background:#070912d9;backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}.navin{height:72px;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:900;letter-spacing:.08em}.brand b{color:var(--accent)}.navlinks{display:flex;gap:10px}.btn{border:0;border-radius:13px;padding:12px 17px;background:var(--primary);color:white;font-weight:800;cursor:pointer;text-decoration:none}.btn.ghost{background:#ffffff0c;border:1px solid var(--border)}.btn.green{background:var(--accent);color:#05110d}.hero{padding:86px 0 46px;display:grid;grid-template-columns:1.25fr .75fr;gap:38px;align-items:center}.hero h1{font-size:clamp(42px,7vw,82px);line-height:.94;margin:0 0 22px;letter-spacing:-.055em}.gradient{background:linear-gradient(90deg,#fff,#ad9eff,#42e7bd);-webkit-background-clip:text;color:transparent}.hero p{font-size:19px;color:var(--muted);max-width:650px}.heroCard{background:linear-gradient(145deg,#ffffff12,#ffffff04);border:1px solid var(--border);border-radius:30px;padding:25px;box-shadow:0 30px 80px #0007}.metric{display:flex;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--border)}.section{padding:30px 0 70px}.sectionTitle{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}.section h2{font-size:34px;margin:0}.muted{color:var(--muted)}.filters{display:flex;gap:10px;flex-wrap:wrap}.input{background:var(--panel);border:1px solid var(--border);color:var(--text);padding:13px;border-radius:12px;outline:none}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:linear-gradient(145deg,#141a2a,#0d111c);border:1px solid var(--border);border-radius:22px;padding:20px;position:relative;overflow:hidden}.emoji{font-size:46px}.badge{display:inline-block;border-radius:999px;background:#ffffff10;padding:6px 10px;color:var(--muted);font-size:12px}.price{font-size:28px;font-weight:900;margin:15px 0}.stock{font-size:13px;color:var(--accent)}.stock.low{color:#ffca55}.cardActions{display:flex;gap:8px;margin-top:18px}.announcement{background:linear-gradient(90deg,#6b4dff,#1cbf9b);padding:10px;text-align:center;font-weight:800}.modal{border:1px solid var(--border);border-radius:24px;background:var(--panel);color:var(--text);width:min(550px,92%);padding:0}.modal::backdrop{background:#000a;backdrop-filter:blur(4px)}.modalHead,.modalBody{padding:20px}.modalHead{display:flex;justify-content:space-between;border-bottom:1px solid var(--border)}.form{display:grid;gap:12px}.form label{display:grid;gap:6px;color:var(--muted);font-size:13px}.notice{padding:13px;border-radius:12px;background:#ffffff0a;color:var(--muted);white-space:pre-wrap}.footer{border-top:1px solid var(--border);padding:30px 0;color:var(--muted)}
.adminLayout{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:#0a0d17;border-right:1px solid var(--border);padding:24px;position:sticky;top:0;height:100vh}.sidebar a{display:block;padding:12px;color:var(--muted);text-decoration:none;border-radius:10px}.sidebar a:hover{background:var(--soft);color:white}.main{padding:28px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.stat{background:var(--panel);padding:18px;border:1px solid var(--border);border-radius:17px}.stat b{display:block;font-size:28px;margin-top:8px}.tableWrap{overflow:auto;background:var(--panel);border:1px solid var(--border);border-radius:18px;margin-top:20px}table{width:100%;border-collapse:collapse}th,td{padding:13px;text-align:left;border-bottom:1px solid var(--border);font-size:13px}th{color:var(--muted)}.tabs{display:flex;gap:8px;margin:20px 0}.hide{display:none!important}
@media(max-width:850px){.hero{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.heroCard{display:none}.stats{grid-template-columns:repeat(2,1fr)}.adminLayout{grid-template-columns:1fr}.sidebar{height:auto;position:relative}.navlinks .desktop{display:none}}

.adminTop{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.adminTop h1{margin:0}.dashGrid{display:grid;grid-template-columns:1.3fr .7fr;gap:18px;margin:20px 0}.bars{display:flex;align-items:end;gap:8px;height:190px;padding-top:20px;overflow-x:auto}.bars.compact{height:150px}.barCol{min-width:30px;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:end;height:100%}.bar{width:70%;min-height:3px;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,var(--accent),var(--primary))}.barCol small{font-size:10px;color:var(--muted);margin-top:7px}.progressRow{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border)}.actions{display:flex;gap:6px;flex-wrap:wrap}.btn.mini{padding:7px 10px;font-size:11px}.danger{background:#ff55771b!important;color:#ff849c!important;border-color:#ff557744!important}.auditItem{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--border);font-size:12px}.auditItem span{color:var(--muted)}#productsGrid{grid-template-columns:repeat(3,1fr)}#productEditor{margin-bottom:20px}.form .filters label{min-width:140px;flex:1}.form label{display:grid;gap:6px}.sidebar a{margin:4px 0}.sidebar a:hover{transform:translateX(3px);transition:.2s}.card{transition:transform .2s,border-color .2s}.card:hover{transform:translateY(-2px);border-color:#ffffff28}
@media(max-width:1000px){.dashGrid{grid-template-columns:1fr}#productsGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){#productsGrid{grid-template-columns:1fr}.adminTop{align-items:flex-start;gap:12px}.stats{grid-template-columns:1fr 1fr}.main{padding:18px}}

#proofModal{position:fixed;inset:0;z-index:999;display:grid;place-items:center;padding:22px}#proofModal.hide{display:none}#proofModal .modalBackdrop{position:absolute;inset:0;background:#02040bdd;backdrop-filter:blur(8px)}#proofModal .modalCard{position:relative;width:min(980px,96vw);max-height:94vh;overflow:auto;background:#0d1220;border:1px solid var(--border);border-radius:22px;padding:20px;box-shadow:0 30px 90px #0009}#proofModal .modalHead,#proofModal .modalActions{display:flex;justify-content:space-between;align-items:center;gap:12px}#proofModal .modalHead h2{margin:0}#proofModal .modalActions{justify-content:flex-end;margin-top:16px;flex-wrap:wrap}#proofModal .proofViewer{display:grid;place-items:center;min-height:420px;margin-top:16px;background:#050812;border:1px solid var(--border);border-radius:16px;overflow:hidden}#proofModal .proofViewer img{display:block;max-width:100%;max-height:68vh;object-fit:contain}#proofModal .proofViewer iframe{width:100%;height:68vh;border:0;background:#fff}.modalOpen{overflow:hidden}.proofBtn{white-space:nowrap}
@media(max-width:650px){#proofModal .proofViewer{min-height:280px}#proofModal{padding:8px}#proofModal .modalCard{padding:14px}#proofModal .modalActions .btn{width:100%;text-align:center}}

.promoGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkoutSummary{display:grid;gap:8px;padding:14px;border:1px solid var(--border);border-radius:14px;background:#060914}.checkoutSummary>div{display:flex;justify-content:space-between;gap:12px}.checkoutSummary .success{color:#48ddb7}.checkoutSummary .total{font-size:18px;border-top:1px solid var(--border);padding-top:10px;margin-top:3px}.success{color:#48ddb7}@media(max-width:560px){.promoGrid{grid-template-columns:1fr}}


/* ===== Checkout corregido v6.0.1 ===== */
.checkoutModal {
  width: min(550px, 92vw);
  max-height: 90vh;
  margin: auto;
  padding: 0;
  overflow: auto;
  border: 1px solid var(--border);
  border-radius: 24px;
  color: var(--text);
  background: var(--panel);
  box-shadow: 0 30px 90px #000b;
}

.checkoutModal:not([open]) {
  display: none !important;
}

.checkoutModal[open] {
  display: block;
}

.checkoutModal::backdrop {
  background: rgba(0, 0, 0, 0.72);
  backdrop-filter: blur(5px);
}

.checkoutModal .modalHead,
.checkoutModal .modalBody {
  padding: 20px;
}

.checkoutModal .modalHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid var(--border);
}

.selectedBox {
  display: block;
  min-height: 64px;
  padding: 14px 16px;
  color: #f4f6ff;
  background: #090d19;
  border: 1px solid #273047;
  border-radius: 14px;
}

.selectedProduct {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.selectedProduct span {
  display: grid;
  gap: 5px;
}

.selectedProduct b {
  color: #fff;
  font-size: 15px;
}

.selectedProduct small {
  color: #9aa6c1;
  font-size: 12px;
}

.selectedProduct strong {
  color: #2bd2ae;
  font-size: 16px;
  white-space: nowrap;
}

.checkoutSummary {
  display: grid;
  gap: 10px;
  padding: 14px 16px;
  color: #f4f6ff;
  background: #090d19;
  border: 1px solid #273047;
  border-radius: 14px;
}

.checkoutSummary > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  color: #c7cee0;
}

.checkoutSummary b {
  color: #fff;
}

.checkoutSummary .success,
.checkoutSummary .success b {
  color: #2bd2ae;
}

.checkoutSummary .total {
  margin-top: 3px;
  padding-top: 11px;
  color: #fff;
  font-size: 17px;
  border-top: 1px solid #273047;
}

#payment,
#payment option {
  color: #fff;
  background: #101522;
}

.promoMessage {
  min-height: 20px;
}

@media (max-width: 560px) {
  .selectedProduct {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* ===== NOVA STREAM V7 · Pedido premium ===== */
.orderPage {
  overflow-x: hidden;
  background:
    radial-gradient(circle at 15% 0%, rgba(119,88,255,.28), transparent 34%),
    radial-gradient(circle at 90% 30%, rgba(34,211,166,.13), transparent 28%),
    #070912;
}

.orderGlow {
  position: fixed;
  z-index: -1;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  filter: blur(100px);
  opacity: .18;
  pointer-events: none;
}
.orderGlowOne { top: -170px; left: -150px; background: #7758ff; }
.orderGlowTwo { right: -170px; bottom: -190px; background: #22d3a6; }

.orderNav {
  width: min(1120px, 92%);
  height: 82px;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.orderBrand {
  color: #fff;
  font-weight: 950;
  letter-spacing: .09em;
  text-decoration: none;
}
.orderBrand b { color: var(--accent); }
.orderBack {
  padding: 11px 15px;
  color: #d9def0;
  text-decoration: none;
  border: 1px solid var(--border);
  border-radius: 13px;
  background: rgba(255,255,255,.04);
}

.orderShell {
  width: min(920px, 92%);
  margin: 25px auto 90px;
}
.orderHero {
  max-width: 700px;
  margin-bottom: 28px;
}
.orderEyebrow,
.orderLabel {
  color: #7debd0;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .15em;
}
.orderHero h1 {
  margin: 9px 0 12px;
  font-size: clamp(38px, 7vw, 66px);
  line-height: .98;
  letter-spacing: -.055em;
}
.orderHero p {
  max-width: 600px;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.65;
}

.orderLookup,
.orderMainCard,
.orderSummaryCard,
.orderPaymentCard,
.orderUploadCard,
.orderReviewCard,
.orderCredentialCard,
.orderStateCard {
  border: 1px solid var(--border);
  background: rgba(16,20,33,.88);
  box-shadow: 0 26px 70px rgba(0,0,0,.26);
  backdrop-filter: blur(18px);
}
.orderLookup {
  padding: 20px;
  border-radius: 22px;
}
.orderLookupForm label {
  display: block;
  margin-bottom: 9px;
  color: #aeb8ce;
  font-size: 13px;
}
.orderLookupRow {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
}
.orderControl {
  width: 100%;
  min-height: 50px;
  padding: 0 15px;
  color: #fff;
  border: 1px solid #ffffff18;
  border-radius: 14px;
  outline: none;
  background: #090d19;
}
.orderControl:focus {
  border-color: rgba(34,211,166,.6);
  box-shadow: 0 0 0 4px rgba(34,211,166,.08);
}
.orderPrimary,
.orderSecondary {
  min-height: 50px;
  padding: 0 20px;
  border: 0;
  border-radius: 14px;
  font-weight: 900;
  cursor: pointer;
}
.orderPrimary {
  color: #04120e;
  background: linear-gradient(135deg, #38e0b7, #1cc79f);
  box-shadow: 0 12px 30px rgba(34,211,166,.18);
}
.orderPrimary:disabled { opacity: .6; cursor: wait; }
.orderSecondary {
  margin-top: 16px;
  color: #fff;
  background: #7758ff;
}
.orderFull { width: 100%; }

.orderView {
  display: grid;
  gap: 18px;
  margin-top: 18px;
}
.orderSuccessBanner {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 17px 19px;
  color: #dffff7;
  border: 1px solid rgba(34,211,166,.28);
  border-radius: 18px;
  background: rgba(34,211,166,.09);
}
.orderSuccessBanner p,
.orderReviewCard p {
  margin: 4px 0 0;
  color: #9ec9bd;
}
.orderSuccessIcon,
.orderReviewIcon,
.orderCredentialIcon {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 14px;
}
.orderSuccessIcon,
.orderCredentialIcon {
  color: #07120f;
  background: var(--accent);
}
.orderReviewIcon {
  background: rgba(255,202,85,.14);
}

.orderTopGrid {
  display: grid;
  grid-template-columns: 1.45fr .75fr;
  gap: 18px;
}
.orderMainCard,
.orderSummaryCard,
.orderPaymentCard,
.orderUploadCard,
.orderCredentialCard {
  padding: 23px;
  border-radius: 24px;
}
.orderCardTop,
.orderPaymentHeading,
.orderCredentialHeading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
}
.orderCardTop h2,
.orderPaymentHeading h3,
.orderUploadCard h3,
.orderCredentialHeading h3 {
  margin: 6px 0 0;
}
.orderBadge {
  padding: 8px 11px;
  color: #ffd46d;
  font-size: 12px;
  font-weight: 850;
  border: 1px solid rgba(255,202,85,.2);
  border-radius: 999px;
  background: rgba(255,202,85,.08);
  white-space: nowrap;
}
.orderBadge.isPaid {
  color: #66e7c6;
  border-color: rgba(34,211,166,.25);
  background: rgba(34,211,166,.09);
}
.orderBadge.isRejected {
  color: #ff8ca4;
  border-color: rgba(255,85,119,.25);
  background: rgba(255,85,119,.09);
}
.orderBadge.isReview {
  color: #b7a8ff;
  border-color: rgba(119,88,255,.3);
  background: rgba(119,88,255,.12);
}

.orderFolioBox {
  margin: 20px 0;
  padding: 15px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #090d19;
}
.orderFolioBox > span,
.orderBankGrid span,
.orderCredentialGrid span {
  display: block;
  margin-bottom: 7px;
  color: #8591aa;
  font-size: 12px;
}
.orderFolioBox > div,
.orderBankGrid > div > div,
.orderCredentialGrid > div > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.orderFolioBox strong {
  overflow-wrap: anywhere;
}
.orderCopy {
  padding: 7px 10px;
  color: #c8d0e5;
  border: 1px solid var(--border);
  border-radius: 9px;
  background: rgba(255,255,255,.05);
  cursor: pointer;
}

.orderSteps {
  display: grid;
  gap: 12px;
}
.orderStep {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 12px;
  align-items: center;
  opacity: .52;
}
.orderStep > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  color: #9ca7bd;
  font-weight: 850;
  border: 1px solid var(--border);
  border-radius: 50%;
}
.orderStep small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
}
.orderStep.isActive { opacity: 1; }
.orderStep.isDone { opacity: 1; }
.orderStep.isDone > span {
  color: #07120f;
  border-color: transparent;
  background: var(--accent);
}

.orderSummaryCard {
  align-self: start;
}
.orderMoneyRow,
.orderTotalRow {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}
.orderMoneyRow {
  padding: 14px 0;
  color: #aeb7cb;
  border-bottom: 1px solid var(--border);
}
.orderTotalRow {
  align-items: flex-end;
  padding-top: 19px;
}
.orderTotalRow strong {
  color: #55e5c2;
  font-size: 22px;
}

.orderPaymentHeading {
  margin-bottom: 18px;
}
.orderSecure {
  color: #8995ac;
  font-size: 12px;
}
.orderBankGrid,
.orderCredentialGrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.orderBankGrid > div,
.orderCredentialGrid > div {
  padding: 15px;
  border: 1px solid var(--border);
  border-radius: 15px;
  background: #090d19;
}
.orderBankGrid .orderWide {
  grid-column: 1 / -1;
}
.orderBankGrid b,
.orderCredentialGrid b {
  overflow-wrap: anywhere;
}
.orderWarning {
  margin-top: 15px;
  padding: 13px 15px;
  color: #e5cc91;
  border: 1px solid rgba(255,202,85,.18);
  border-radius: 13px;
  background: rgba(255,202,85,.06);
}

.orderUploadCard {
  display: grid;
  gap: 17px;
}
.orderUploadCard p {
  margin: 6px 0 0;
  color: var(--muted);
}
.orderDropzone {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 175px;
  padding: 22px;
  text-align: center;
  border: 1px dashed rgba(125,235,208,.34);
  border-radius: 18px;
  background: rgba(34,211,166,.035);
  cursor: pointer;
}
.orderDropzone input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}
.orderUploadIcon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  margin-bottom: 10px;
  color: #07120f;
  font-size: 24px;
  font-weight: 900;
  border-radius: 14px;
  background: var(--accent);
}
.orderDropzone small {
  margin-top: 5px;
  color: var(--muted);
}
.orderFormMessage {
  min-height: 20px;
  margin: 0 !important;
  text-align: center;
}

.orderReviewCard {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 19px;
  border-radius: 20px;
}
.orderCredentialCard {
  border-color: rgba(34,211,166,.3);
  background:
    linear-gradient(145deg, rgba(34,211,166,.08), rgba(16,20,33,.94));
}
.orderCredentialHeading {
  justify-content: flex-start;
  margin-bottom: 17px;
}
.orderCredentialExtra {
  margin: 15px 0 0;
  color: #aeb8ce;
}

.orderStateCard {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-top: 18px;
  padding: 20px;
  border-radius: 20px;
}
.orderStateCard p {
  margin: 5px 0 0;
  color: var(--muted);
}
.orderSpinner {
  width: 34px;
  height: 34px;
  border: 3px solid rgba(255,255,255,.12);
  border-top-color: var(--accent);
  border-radius: 50%;
  animation: orderSpin .75s linear infinite;
}
@keyframes orderSpin { to { transform: rotate(360deg); } }

.orderError {
  margin-top: 18px;
  padding: 17px;
  color: #ff9bb0;
  border: 1px solid rgba(255,85,119,.22);
  border-radius: 17px;
  background: rgba(255,85,119,.07);
}
.orderToast {
  position: fixed;
  z-index: 1000;
  right: 20px;
  bottom: 20px;
  padding: 13px 16px;
  color: #06110e;
  font-weight: 850;
  border-radius: 13px;
  background: var(--accent);
  box-shadow: 0 18px 45px rgba(0,0,0,.35);
}

@media (max-width: 760px) {
  .orderNav {
    height: 68px;
  }
  .orderBack {
    padding: 9px 11px;
    font-size: 12px;
  }
  .orderShell {
    margin-top: 12px;
  }
  .orderLookupRow,
  .orderTopGrid,
  .orderBankGrid,
  .orderCredentialGrid {
    grid-template-columns: 1fr;
  }
  .orderLookupRow .orderPrimary {
    width: 100%;
  }
  .orderBankGrid .orderWide {
    grid-column: auto;
  }
  .orderCardTop,
  .orderPaymentHeading {
    align-items: flex-start;
    flex-direction: column;
  }
  .orderMainCard,
  .orderSummaryCard,
  .orderPaymentCard,
  .orderUploadCard,
  .orderCredentialCard {
    padding: 18px;
    border-radius: 20px;
  }
}
