/* CRIVO Ticket Builder V3 — unified configurator, fewer boxes, stronger hierarchy. */
#view-tickets.crivo-tickets-v2 .ticket-builder-shell{
  overflow:visible!important;
  border:0!important;
  border-radius:26px!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* Hero: cleaner and more premium; the target becomes a circular gauge, not another card. */
#view-tickets.crivo-tickets-v2 .ticket-builder-head{
  position:relative;
  overflow:hidden;
  min-height:170px!important;
  padding:30px 34px 48px!important;
  border-radius:26px 26px 0 0!important;
  background:
    radial-gradient(circle at 84% 22%,rgba(114,176,255,.42),transparent 23%),
    radial-gradient(circle at 60% 120%,rgba(40,104,239,.55),transparent 34%),
    linear-gradient(120deg,#0a2a72 0%,#134bd0 52%,#2f78f4 100%)!important;
  box-shadow:0 24px 54px rgba(20,71,230,.16)!important;
}
#view-tickets.crivo-tickets-v2 .ticket-builder-head:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(115deg,rgba(255,255,255,.06),transparent 34%);
}
#view-tickets.crivo-tickets-v2 .ticket-builder-head:after{
  content:"";
  position:absolute;
  width:310px;height:310px;
  right:-105px;top:-180px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:50%;
  box-shadow:0 0 0 48px rgba(255,255,255,.035),0 0 0 96px rgba(255,255,255,.022);
}
#view-tickets.crivo-tickets-v2 .ticket-builder-head>div:first-child{position:relative;z-index:2}
#view-tickets.crivo-tickets-v2 .ticket-builder-head h2{
  font-size:36px!important;
  line-height:1.02!important;
  max-width:760px!important;
}
#view-tickets.crivo-tickets-v2 .ticket-builder-head p{
  max-width:720px!important;
  font-size:11.5px!important;
  line-height:1.55!important;
}
#view-tickets.crivo-tickets-v2 .ticket-hero-stat{
  position:relative;
  z-index:2;
  width:116px!important;
  min-width:116px!important;
  height:116px!important;
  padding:0!important;
  display:grid!important;
  place-content:center!important;
  text-align:center!important;
  border-radius:50%!important;
  border:1px solid rgba(255,255,255,.28)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.08))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 12px 32px rgba(7,31,86,.16)!important;
  backdrop-filter:blur(12px)!important;
}
#view-tickets.crivo-tickets-v2 .ticket-hero-stat span{
  font-size:9px!important;
  margin-bottom:4px!important;
}
#view-tickets.crivo-tickets-v2 .ticket-hero-stat strong{
  font-size:28px!important;
  line-height:1!important;
  letter-spacing:-.05em!important;
}
#view-tickets.crivo-tickets-v2 .ticket-hero-stat small{
  margin-top:5px!important;
  font-size:8px!important;
  line-height:1.25!important;
}

/* One floating control deck instead of several disconnected rectangles. */
#view-tickets.crivo-tickets-v2 .ticket-source-notice{
  position:relative;
  z-index:4;
  margin:-26px 24px 0!important;
  min-height:64px!important;
  padding:13px 18px!important;
  border:1px solid #dce5f2!important;
  border-bottom:0!important;
  border-radius:20px 20px 0 0!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 -4px 20px rgba(16,34,64,.035)!important;
}
#view-tickets.crivo-tickets-v2 .ticket-source-notice:before{
  content:"";
  position:absolute;
  left:18px;right:18px;bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,#e4eaf2 8%,#e4eaf2 92%,transparent);
}
#view-tickets.crivo-tickets-v2 .ticket-source-icon{
  width:36px!important;
  height:36px!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,#edf4ff,#e3edff)!important;
  color:#1555dc!important;
  box-shadow:inset 0 0 0 1px #d7e3ff!important;
}
#view-tickets.crivo-tickets-v2 .ticket-source-copy .eyebrow{
  color:#1555dc!important;
  letter-spacing:.12em!important;
}
#view-tickets.crivo-tickets-v2 .ticket-source-copy h3{font-size:11.5px!important}
#view-tickets.crivo-tickets-v2 .ticket-source-copy p{font-size:8.8px!important}
#view-tickets.crivo-tickets-v2 .ticket-source-notice .button{
  min-height:auto!important;
  padding:7px 2px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#1555dc!important;
  box-shadow:none!important;
  font-size:9px!important;
}
#view-tickets.crivo-tickets-v2 .ticket-source-notice .button:hover{transform:none!important;text-decoration:underline}

#view-tickets.crivo-tickets-v2 .ticket-builder-grid{
  position:relative;
  z-index:3;
  margin:0 24px!important;
  padding:8px 0 12px!important;
  gap:0!important;
  grid-template-columns:.9fr .95fr 1.65fr!important;
  border:1px solid #dce5f2!important;
  border-top:0!important;
  border-radius:0 0 20px 20px!important;
  background:#fff!important;
  box-shadow:0 18px 40px rgba(24,42,72,.075)!important;
}
#view-tickets.crivo-tickets-v2 .ticket-builder-step{
  position:relative;
  min-height:132px!important;
  padding:16px 20px 14px!important;
  border:0!important;
  border-right:1px solid #edf1f6!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#view-tickets.crivo-tickets-v2 .ticket-builder-step:last-child{border-right:0!important}
#view-tickets.crivo-tickets-v2 .ticket-builder-step:before{
  content:"";
  position:absolute;
  left:20px;right:20px;top:49px;
  height:1px;
  background:#f0f3f7;
}
#view-tickets.crivo-tickets-v2 .ticket-step-title{
  position:relative;
  z-index:2;
  margin:0 0 17px!important;
  align-items:center!important;
}
#view-tickets.crivo-tickets-v2 .ticket-step-title>span{
  width:30px!important;
  height:30px!important;
  border-radius:50%!important;
  border:1px solid #cfddff!important;
  background:#f3f7ff!important;
  color:#1555dc!important;
  box-shadow:0 4px 12px rgba(20,71,230,.06)!important;
}
#view-tickets.crivo-tickets-v2 .ticket-step-title strong{
  color:#172b47!important;
  font-size:10.5px!important;
}
#view-tickets.crivo-tickets-v2 .ticket-step-title small{
  color:#8d99aa!important;
  font-size:8px!important;
}

/* Segmented controls feel like one control, not nested cards. */
#view-tickets.crivo-tickets-v2 .ticket-lines-switch,
#view-tickets.crivo-tickets-v2 .ticket-mode-switch{
  min-height:45px!important;
  padding:3px!important;
  border:0!important;
  border-radius:13px!important;
  background:#f0f3f8!important;
  box-shadow:inset 0 0 0 1px #e5eaf1!important;
}
#view-tickets.crivo-tickets-v2 .ticket-mode-btn{
  min-height:39px!important;
  border:0!important;
  border-radius:10px!important;
  color:#6d7b8f!important;
  background:transparent!important;
  font-size:9px!important;
  font-weight:850!important;
  box-shadow:none!important;
}
#view-tickets.crivo-tickets-v2 .ticket-mode-btn.active{
  color:#124fd6!important;
  background:#fff!important;
  box-shadow:0 5px 14px rgba(26,47,80,.09),inset 0 0 0 1px #e3e9f2!important;
}

/* Criteria becomes a compact action row. */
#view-tickets.crivo-tickets-v2 .ticket-control-grid{
  gap:9px!important;
  align-items:end!important;
}
#view-tickets.crivo-tickets-v2 .ticket-control-grid label>span{
  display:block!important;
  margin-bottom:6px!important;
  color:#718096!important;
  font-size:7.5px!important;
  letter-spacing:.09em!important;
}
#view-tickets.crivo-tickets-v2 .ticket-percent-input,
#view-tickets.crivo-tickets-v2 .ticket-odd-input,
#view-tickets.crivo-tickets-v2 #ticketScope{
  height:43px!important;
  border:1px solid #d9e1eb!important;
  border-radius:11px!important;
  background:#fbfcfe!important;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.025)!important;
}
#view-tickets.crivo-tickets-v2 .ticket-percent-input:focus-within,
#view-tickets.crivo-tickets-v2 .ticket-odd-input:focus-within,
#view-tickets.crivo-tickets-v2 #ticketScope:focus{
  border-color:#8eb1ff!important;
  box-shadow:0 0 0 3px rgba(20,71,230,.075)!important;
}
#view-tickets.crivo-tickets-v2 #ticketGenerateBtn{
  height:43px!important;
  min-height:43px!important;
  padding:0 18px!important;
  border:0!important;
  border-radius:11px!important;
  background:linear-gradient(135deg,#1769ff,#1247d7)!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(20,71,230,.18)!important;
  font-size:9px!important;
  font-weight:900!important;
}
#view-tickets.crivo-tickets-v2 #ticketGenerateBtn:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 13px 26px rgba(20,71,230,.22)!important;
}

/* Footnote is now a quiet footer line, not a fourth rectangle. */
#view-tickets.crivo-tickets-v2 .ticket-builder-footnote{
  margin:0 24px!important;
  padding:12px 4px 3px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#7c899a!important;
  font-size:8.5px!important;
  box-shadow:none!important;
}
#view-tickets.crivo-tickets-v2 .ticket-builder-footnote>span{
  width:18px;height:18px;display:grid;place-items:center;
  border-radius:50%;background:#eef4ff;color:#1555dc;
}

@media(max-width:1200px){
  #view-tickets.crivo-tickets-v2 .ticket-builder-grid{grid-template-columns:1fr 1fr!important}
  #view-tickets.crivo-tickets-v2 .ticket-builder-criteria{grid-column:1/-1;border-top:1px solid #edf1f6!important;border-right:0!important}
  #view-tickets.crivo-tickets-v2 .ticket-builder-step:nth-child(2){border-right:0!important}
}
@media(max-width:700px){
  #view-tickets.crivo-tickets-v2 .ticket-builder-head{padding:24px 20px 50px!important;grid-template-columns:1fr auto!important;gap:14px!important}
  #view-tickets.crivo-tickets-v2 .ticket-builder-head h2{font-size:29px!important}
  #view-tickets.crivo-tickets-v2 .ticket-builder-head p{font-size:10px!important}
  #view-tickets.crivo-tickets-v2 .ticket-hero-stat{width:92px!important;min-width:92px!important;height:92px!important}
  #view-tickets.crivo-tickets-v2 .ticket-hero-stat strong{font-size:23px!important}
  #view-tickets.crivo-tickets-v2 .ticket-source-notice{margin:-22px 12px 0!important;padding:12px!important;grid-template-columns:34px 1fr!important}
  #view-tickets.crivo-tickets-v2 .ticket-source-notice .button{grid-column:2;justify-self:start!important}
  #view-tickets.crivo-tickets-v2 .ticket-builder-grid{margin:0 12px!important;grid-template-columns:1fr!important;padding-bottom:6px!important}
  #view-tickets.crivo-tickets-v2 .ticket-builder-step{min-height:auto!important;padding:15px 14px!important;border-right:0!important;border-top:1px solid #edf1f6!important}
  #view-tickets.crivo-tickets-v2 .ticket-builder-step:first-child{border-top:0!important}
  #view-tickets.crivo-tickets-v2 .ticket-builder-step:before{left:14px;right:14px}
  #view-tickets.crivo-tickets-v2 .ticket-builder-criteria{grid-column:auto!important}
  #view-tickets.crivo-tickets-v2 .ticket-builder-footnote{margin:0 12px!important;padding-bottom:0!important}
}
