/* CRIVO commercial polish — isolated overrides loaded after the legacy bundle. */
:root{
  --crivo-brand-blue:#1447e6;
  --crivo-brand-blue-2:#3b82f6;
  --crivo-brand-blue-soft:#eef4ff;
  --crivo-ink:#172033;
  --crivo-muted-ink:#667085;
  --crivo-surface:#ffffff;
  --crivo-canvas:#f5f7fb;
  --crivo-border:#dfe6ef;
}

/* Auth — keep the dark premium shell, swap decorative green for CRIVO blue. */
body.crivo-auth-page{
  --crivo-green:#6da9ff;
  --crivo-green-2:#3f86f5;
  background:
    radial-gradient(circle at 12% 0%,rgba(109,169,255,.15),transparent 30%),
    radial-gradient(circle at 90% 10%,rgba(63,134,245,.12),transparent 28%),
    linear-gradient(180deg,#090c12 0%,#07090e 100%) !important;
}
body.crivo-auth-page .crivo-auth-primary{
  color:#fff !important;
  background:linear-gradient(135deg,#6da9ff,#3f86f5) !important;
  box-shadow:0 12px 30px rgba(63,134,245,.20) !important;
}
body.crivo-auth-page .crivo-auth-head .eyebrow,
body.crivo-auth-page .crivo-auth-note strong,
body.crivo-auth-page .crivo-auth-note a,
body.crivo-auth-page .crivo-trial-chip{
  color:#83b8ff !important;
}
body.crivo-auth-page .crivo-auth-note,
body.crivo-auth-page .crivo-trial-chip{
  border-color:rgba(109,169,255,.24) !important;
  background:rgba(109,169,255,.075) !important;
}
body.crivo-auth-page .crivo-auth-form input:focus,
body.crivo-auth-page .crivo-price-card input:focus{
  border-color:rgba(109,169,255,.62) !important;
  box-shadow:0 0 0 3px rgba(109,169,255,.10) !important;
}
body.crivo-auth-page .crivo-plan-choice em{
  background:#6da9ff !important;
  color:#071426 !important;
}
body.crivo-auth-page .crivo-plan-choice input:checked + .crivo-plan-choice-body{
  border-color:rgba(109,169,255,.58) !important;
  background:rgba(109,169,255,.09) !important;
  box-shadow:inset 0 0 0 1px rgba(109,169,255,.12) !important;
}
body.crivo-auth-page .crivo-legal-check input{accent-color:#6da9ff !important}
body.crivo-auth-page .crivo-auth-links a:hover,
body.crivo-auth-page .crivo-auth-footer a:hover{color:#83b8ff !important}

/* Admin — same hierarchy, now on a light operational canvas. */
body.admin-body{
  background:
    radial-gradient(circle at 88% -5%,rgba(20,71,230,.07),transparent 28%),
    #f4f7fb !important;
  color:var(--crivo-ink) !important;
}
body.admin-body .admin-topbar{
  background:rgba(255,255,255,.95) !important;
  border-bottom:1px solid #e2e8f0 !important;
  box-shadow:0 4px 18px rgba(15,23,42,.05) !important;
  backdrop-filter:blur(16px);
}
body.admin-body .admin-shell{color:var(--crivo-ink) !important}
body.admin-body .eyebrow{color:var(--crivo-brand-blue) !important}
body.admin-body .admin-heading h1,
body.admin-body .admin-kpi strong,
body.admin-body .admin-panel h2,
body.admin-body .admin-plan-strip strong,
body.admin-body .crivo-price-card strong,
body.admin-body .admin-heading-user strong,
body.admin-body .admin-user-cell strong{color:#111827 !important}
body.admin-body .admin-heading p,
body.admin-body .admin-kpi span,
body.admin-body .admin-kpi small,
body.admin-body .admin-plan-strip span,
body.admin-body .crivo-admin-price-intro p,
body.admin-body .crivo-price-actions p,
body.admin-body .crivo-price-card>span,
body.admin-body .crivo-price-card small,
body.admin-body .admin-heading-user small,
body.admin-body .admin-user-cell small,
body.admin-body .admin-block-small,
body.admin-body .admin-mono,
body.admin-body .admin-empty{color:#667085 !important}
body.admin-body .admin-heading-user,
body.admin-body .admin-kpi,
body.admin-body .admin-panel,
body.admin-body .admin-plan-strip,
body.admin-body .crivo-admin-nav,
body.admin-body .admin-filters,
body.admin-body .crivo-price-card{
  background:#fff !important;
  border-color:#e2e8f0 !important;
  box-shadow:0 10px 28px rgba(15,23,42,.055) !important;
}
body.admin-body .crivo-admin-nav{box-shadow:none !important}
body.admin-body .crivo-admin-nav a{color:#667085 !important}
body.admin-body .crivo-admin-nav a:hover{
  color:var(--crivo-brand-blue) !important;
  background:#eef4ff !important;
}
body.admin-body .admin-role-pill{
  color:#1746c8 !important;
  border-color:#c9d8ff !important;
  background:#eef4ff !important;
}
body.admin-body .admin-top-actions .button.ghost,
body.admin-body .admin-top-actions .button.soft{
  color:#344054 !important;
  border-color:#d7dee8 !important;
  background:#fff !important;
}
body.admin-body .button.primary,
body.admin-body .crivo-price-actions .button.primary{
  color:#fff !important;
  background:linear-gradient(135deg,#1447e6,#2563eb) !important;
  border-color:#1447e6 !important;
  box-shadow:0 8px 20px rgba(20,71,230,.16) !important;
}
body.admin-body .admin-filters label>span{color:#667085 !important}
body.admin-body .admin-filters input,
body.admin-body .admin-filters select,
body.admin-body .crivo-price-input{
  background:#fff !important;
  border-color:#d8e0ea !important;
  color:#172033 !important;
}
body.admin-body .admin-filters input::placeholder{color:#98a2b3 !important}
body.admin-body .admin-filters input:focus,
body.admin-body .admin-filters select:focus,
body.admin-body .crivo-price-card input:focus{
  border-color:rgba(20,71,230,.55) !important;
  box-shadow:0 0 0 3px rgba(20,71,230,.08) !important;
}
body.admin-body .crivo-price-card.featured{
  border-color:#bfd0ff !important;
  background:linear-gradient(180deg,#f8fbff,#eef4ff) !important;
}
body.admin-body .crivo-price-input b{color:#667085 !important}
body.admin-body .crivo-price-card input{color:#111827 !important}
body.admin-body .admin-table-wrap{border-color:#e2e8f0 !important;background:#fff !important}
body.admin-body .admin-table{background:#fff !important}
body.admin-body .admin-table th{
  background:#f8fafc !important;
  color:#667085 !important;
  border-bottom-color:#e2e8f0 !important;
}
body.admin-body .admin-table td{
  color:#344054 !important;
  border-bottom-color:#eef2f6 !important;
}
body.admin-body .admin-table tbody tr:hover{background:#f8fbff !important}
body.admin-body .admin-user-cell>span{
  background:#eef4ff !important;
  color:#1447e6 !important;
}
body.admin-body .admin-detail-link{color:#1447e6 !important}
body.admin-body .admin-count{
  color:#475467 !important;
  background:#f8fafc !important;
  border-color:#e2e8f0 !important;
}
body.admin-body .admin-plan-strip article{
  background:#f8fafc !important;
  border-color:#e7edf4 !important;
}

/* Tickets — sportsbook-inspired simulator, still unmistakably CRIVO. */
#view-tickets .ticket-simulator-panel{
  position:relative;
  overflow:hidden;
  margin-top:22px;
  border:1px solid #dbe4f0 !important;
  border-radius:24px !important;
  background:#fff !important;
  box-shadow:0 22px 58px rgba(22,37,66,.11) !important;
}
#view-tickets .ticket-simulator-head{
  margin:0 !important;
  padding:20px 22px !important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  color:#fff !important;
  background:linear-gradient(135deg,#0f2d75 0%,#1447e6 55%,#2f72f4 100%) !important;
}
#view-tickets .ticket-simulator-head .eyebrow,
#view-tickets .ticket-simulator-head h3,
#view-tickets .ticket-simulator-head p{color:#fff !important}
#view-tickets .ticket-simulator-head p{opacity:.78;margin-bottom:0}
#view-tickets .ticket-simulator-head .button.ghost{
  color:#fff !important;
  background:rgba(255,255,255,.10) !important;
  border-color:rgba(255,255,255,.26) !important;
}
#view-tickets .ticket-simulator-body{
  display:grid !important;
  grid-template-columns:minmax(0,1.45fr) minmax(290px,.75fr) !important;
  gap:18px !important;
  padding:22px !important;
  background:#f5f7fb !important;
}
#view-tickets .ticket-sim-legs{
  position:relative;
  overflow:hidden;
  padding:42px 16px 10px !important;
  border:1px solid #dfe6ef !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 8px 24px rgba(15,23,42,.045);
}
#view-tickets .ticket-sim-legs::before{
  content:"SELEÇÕES DO BILHETE";
  position:absolute;
  inset:0 0 auto 0;
  padding:12px 16px;
  color:#475467;
  background:#f8fafc;
  border-bottom:1px solid #edf1f5;
  font-size:10px;
  font-weight:900;
  letter-spacing:.10em;
}
#view-tickets .sim-leg{
  position:relative;
  display:grid !important;
  grid-template-columns:32px minmax(0,1fr) !important;
  gap:12px !important;
  align-items:flex-start !important;
  padding:15px 4px !important;
  border:0 !important;
  border-bottom:1px dashed #d9e1ec !important;
  background:transparent !important;
}
#view-tickets .sim-leg:last-child{border-bottom:0 !important}
#view-tickets .sim-leg-index{
  width:30px !important;
  height:30px !important;
  display:grid !important;
  place-items:center;
  border:1px solid #cfdbf7 !important;
  border-radius:10px !important;
  color:#1447e6 !important;
  background:#eef4ff !important;
  font-size:12px !important;
  font-weight:900 !important;
}
#view-tickets .sim-leg-game{
  display:flex !important;
  align-items:center;
  gap:7px;
  color:#667085 !important;
  font-size:12px !important;
  font-weight:700;
}
#view-tickets .sim-leg strong{
  display:block;
  margin-top:5px;
  color:#101828 !important;
  font-size:15px !important;
  line-height:1.35;
}
#view-tickets .sim-leg small{
  display:inline-flex !important;
  margin-top:8px !important;
  padding:5px 8px;
  border-radius:999px;
  color:#1746c8 !important;
  background:#eef4ff !important;
  font-size:10px !important;
  font-weight:850 !important;
}
#view-tickets .ticket-sim-side{
  padding:16px !important;
  border:1px solid #dfe6ef !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 8px 24px rgba(15,23,42,.045);
}
#view-tickets .ticket-stake-control>span{
  color:#475467 !important;
  font-size:11px !important;
  font-weight:850 !important;
  letter-spacing:.03em;
}
#view-tickets .ticket-stake-control>div{
  margin-top:7px;
  border:1px solid #d8e0ea !important;
  border-radius:13px !important;
  background:#fff !important;
}
#view-tickets .ticket-stake-control input{
  color:#111827 !important;
  background:transparent !important;
  font-size:20px !important;
  font-weight:900 !important;
}
#view-tickets .ticket-stake-control b{color:#667085 !important}
#view-tickets .ticket-sim-metrics{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:9px !important;
  margin-top:14px !important;
}
#view-tickets .ticket-sim-metrics article{
  min-height:82px;
  padding:12px !important;
  border:1px solid #e4e9f0 !important;
  border-radius:13px !important;
  background:#f8fafc !important;
}
#view-tickets .ticket-sim-metrics article span{color:#667085 !important;font-size:10px !important}
#view-tickets .ticket-sim-metrics article strong{color:#101828 !important;font-size:19px !important}
#view-tickets .ticket-sim-metrics article:nth-child(2){background:#eef4ff !important;border-color:#d7e2ff !important}
#view-tickets .ticket-sim-metrics article:nth-child(2) strong{color:#1447e6 !important}
#view-tickets .ticket-sim-metrics article:nth-child(3),
#view-tickets .ticket-sim-metrics article:nth-child(4){background:#f1fbf6 !important;border-color:#d8efe2 !important}
#view-tickets .ticket-sim-metrics article:nth-child(3) strong,
#view-tickets .ticket-sim-metrics article:nth-child(4) strong{color:#12804a !important}
#view-tickets .ticket-pdf-button{
  width:100%;
  margin-top:12px;
  color:#fff !important;
  background:linear-gradient(135deg,#1447e6,#2563eb) !important;
  border-color:#1447e6 !important;
  box-shadow:0 10px 22px rgba(20,71,230,.16) !important;
}
#view-tickets .ticket-simulation-disclaimer{
  display:block;
  margin-top:10px;
  color:#98a2b3 !important;
  line-height:1.45;
}
#view-tickets .ticket-card{
  border-color:#dfe6ef !important;
  box-shadow:0 10px 28px rgba(15,23,42,.06) !important;
}
#view-tickets .ticket-card-head{background:linear-gradient(180deg,#f8fbff,#f2f6ff) !important}
#view-tickets .ticket-card-odds strong{color:#1447e6 !important}
#view-tickets .ticket-simulate-btn{
  color:#1447e6 !important;
  border-color:#cbd9ff !important;
  background:#eef4ff !important;
}

/* Como funciona — reduce visual noise and keep only the useful path. */
#view-help .help-hero-v3231{
  border:1px solid #dfe6ef !important;
  background:linear-gradient(135deg,#fff 0%,#f3f7ff 100%) !important;
  box-shadow:0 16px 38px rgba(15,23,42,.055) !important;
}
#view-help .help-hero-v3231 h2{max-width:620px}
#view-help .help-journey-mini span{
  border-color:#d7e2ff !important;
  background:#eef4ff !important;
}
#view-help .help-journey-mini span b{color:#1447e6 !important}
#view-help .help-step-grid-v3231{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
}
#view-help .help-step-grid-v3231 .help-step:nth-child(n+5){display:none !important}
#view-help .help-step{
  min-height:170px;
  border-color:#e1e7ef !important;
  background:#fff !important;
  box-shadow:0 10px 24px rgba(15,23,42,.045) !important;
}
#view-help .help-step>span{
  color:#1447e6 !important;
  background:#eef4ff !important;
  border-color:#d7e2ff !important;
}
#view-help .help-step h3{color:#172033 !important}
#view-help .help-step p{color:#667085 !important;line-height:1.5 !important}
#view-help .help-section-heading small{display:none !important}
#view-help .help-explain-grid-v3231{grid-template-columns:repeat(3,1fr) !important;gap:12px !important}
#view-help .help-explain-card{
  border-color:#e1e7ef !important;
  background:#fff !important;
  box-shadow:0 8px 20px rgba(15,23,42,.04) !important;
}
#view-help .help-card-icon{color:#1447e6 !important;background:#eef4ff !important}
#view-help .help-flow-card-v3231{display:none !important}

@media (max-width:980px){
  #view-tickets .ticket-simulator-body{grid-template-columns:1fr !important}
  #view-help .help-step-grid-v3231{grid-template-columns:1fr 1fr !important}
}
@media (max-width:620px){
  #view-tickets .ticket-simulator-panel{border-radius:18px !important}
  #view-tickets .ticket-simulator-head{align-items:flex-start;flex-direction:column;padding:18px !important}
  #view-tickets .ticket-simulator-body{padding:12px !important}
  #view-tickets .ticket-sim-metrics{grid-template-columns:1fr 1fr !important}
  #view-help .help-step-grid-v3231,
  #view-help .help-explain-grid-v3231{grid-template-columns:1fr !important}
  #view-help .help-step{min-height:auto}
}
