/* ClearComplaint v2 Generator Live CRO Polish v1.5
   Feature flag: generator_live_cro_polish_v1_5_enabled / CC_GENERATOR_LIVE_CRO_POLISH_V1_5_ENABLED.
   Scope: app/Views/generator/show_live_cro_v1_5.php.
   Purpose: reversible public generator conversion polish with one-primary-action flow,
   stronger preview-to-unlock value copy, mobile sticky CTA, and current-site colour scheme. */

.cc-gen-cro-v15-hero .cc-gen-hero__content{
  background:
    radial-gradient(circle at 86% 8%, rgba(111,50,214,.15), transparent 34%),
    linear-gradient(135deg,#fff 0%,#fbfaff 48%,var(--cc-gen-purple-soft) 100%);
}

.cc-gen-cro-v15-hero h1{
  max-width:850px;
}

.cc-gen-cro-v15-note{
  position:relative;
  z-index:1;
  margin:.85rem 0 0 !important;
  padding:.78rem 1rem;
  border:1px solid var(--cc-gen-purple-line);
  border-radius:18px;
  background:rgba(255,255,255,.72);
  color:var(--cc-gen-ink-soft) !important;
  font-size:.95rem !important;
  font-weight:760;
  line-height:1.45 !important;
}

.cc-gen-cro-v15{
  position:relative;
}

.cc-gen-cro-v15 .cc-gen-builder__head{
  border-bottom:1px solid var(--cc-gen-border);
  margin:-.1rem -.1rem 1rem;
  padding:0 0 1rem;
}

.cc-gen-cro-v15 .cc-gen-builder__head h2,
.cc-gen-cro-v15 .cc-gen-review-pane h3{
  letter-spacing:-.04em;
}

.cc-gen-cro-v15 .cc-gen-actions .cc-button,
.cc-gen-cro-v15 .cc-gen-mobile-primary .cc-button{
  min-height:48px;
}

.cc-gen-cro-v15 .cc-cro-one-primary{
  display:flex;
  gap:.75rem;
  align-items:center;
}

.cc-gen-cro-v15 .cc-cro-one-primary[data-cro-primary-action="preview"]{
  justify-content:flex-end;
}

.cc-gen-cro-v15 .cc-cro-one-primary[data-cro-primary-action="unlock"]{
  border:1px solid var(--cc-gen-purple-line);
  border-radius:24px;
  background:linear-gradient(135deg,var(--cc-gen-purple-soft) 0%,#fff 72%);
  box-shadow:0 16px 36px rgba(111,50,214,.1);
}

.cc-gen-cro-v15 [data-primary-preview-button],
.cc-gen-cro-v15 [data-primary-unlock-button],
.cc-gen-cro-v15 [data-mobile-sticky-preview],
.cc-gen-cro-v15 [data-mobile-sticky-unlock]{
  font-weight:920;
}

.cc-gen-cro-v15 .cc-gen-review-pane .cc-gen-review{
  border-radius:22px;
  background:var(--cc-gen-bg);
}

.cc-gen-cro-v15 .cc-review-price-note{
  padding:.85rem 1rem;
  border:1px solid var(--cc-gen-border);
  border-radius:18px;
  background:#fff;
}

.cc-gen-cro-v15 .cc-review-reassurance li{
  background:var(--cc-gen-purple-soft);
  border-color:var(--cc-gen-purple-line);
  color:var(--cc-gen-ink-soft);
}

.cc-gen-cro-v15 .cc-review-reassurance li::before{
  background:var(--cc-gen-purple);
  box-shadow:0 0 0 5px rgba(111,50,214,.11);
}

.cc-gen-cro-v15 .cc-gen-cro-preview{
  border-color:var(--cc-gen-purple-line);
  box-shadow:0 20px 46px rgba(17,26,53,.12);
}

.cc-gen-cro-v15 .cc-gen-sales-preview__head{
  background:linear-gradient(135deg,var(--cc-gen-purple-soft),var(--cc-gen-blue-soft));
}

.cc-gen-cro-v15 .cc-gen-preview-badge{
  border-color:var(--cc-gen-purple-line);
  background:#fff;
  color:var(--cc-gen-purple-dark);
}

.cc-gen-cro-v15 .cc-gen-unlock-panel{
  border:1px solid var(--cc-gen-purple-line);
  border-radius:24px;
  background:linear-gradient(135deg,var(--cc-gen-purple) 0%,var(--cc-gen-purple-dark) 100%);
  color:#fff;
  box-shadow:0 22px 46px rgba(111,50,214,.28);
}

.cc-gen-cro-v15 .cc-gen-unlock-panel strong,
.cc-gen-cro-v15 .cc-gen-unlock-panel small,
.cc-gen-cro-v15 .cc-gen-unlock-price{
  color:#fff;
}

.cc-gen-cro-v15 .cc-gen-unlock-panel small{
  opacity:.84;
}

.cc-gen-cro-v15 .cc-gen-unlock-panel__action .cc-button{
  background:#fff !important;
  border-color:#fff !important;
  color:var(--cc-gen-purple-dark) !important;
  box-shadow:0 16px 30px rgba(17,26,53,.2);
}

.cc-gen-cro-v15 .cc-gen-unlock-panel__action .cc-button:hover{
  background:var(--cc-gen-blue-soft) !important;
  border-color:var(--cc-gen-blue-soft) !important;
  color:var(--cc-gen-purple-dark) !important;
}

.cc-gen-cro-v15 .cc-gen-cro-value-row .cc-gen-value-card:last-child{
  border-color:var(--cc-gen-purple-line);
  background:linear-gradient(135deg,#fff 0%,var(--cc-gen-purple-soft) 100%);
}

.cc-gen-cro-v15 .cc-gen-cro-unlock-card{
  border-color:var(--cc-gen-purple-line);
  background:linear-gradient(135deg,#fff 0%,#fbfaff 52%,var(--cc-gen-purple-soft) 100%);
  box-shadow:0 20px 48px rgba(111,50,214,.14);
}

.cc-gen-cro-v15 .cc-gen-cro-unlock-card h2{
  color:var(--cc-gen-ink);
  letter-spacing:-.04em;
}

.cc-gen-cro-v15 .cc-gen-cro-unlock-card > p:not(.cc-kicker):not(.cc-gen-cro-legal-note){
  color:var(--cc-gen-muted);
  font-weight:680;
  line-height:1.5;
}

.cc-gen-cro-v15 .cc-gen-cro-legal-note,
.cc-gen-cro-readiness-copy{
  margin:.85rem 0 0;
  color:var(--cc-gen-muted);
  font-size:.84rem;
  line-height:1.45;
  font-weight:650;
}

.cc-gen-cro-v15 .cc-gen-checkout-list span{
  border-color:rgba(111,50,214,.2);
  background:#fff;
}

.cc-gen-cro-v15 .cc-gen-mobile-primary{
  display:none;
}

.cc-gen-cro-v15 .cc-gen-field:focus,
.cc-gen-cro-v15 textarea.cc-gen-field:focus,
.cc-gen-cro-v15 select.cc-gen-field:focus{
  border-color:var(--cc-gen-purple) !important;
  box-shadow:0 0 0 4px rgba(111,50,214,.12) !important;
}

.cc-gen-cro-v15 .cc-gen-choice.is-active,
.cc-gen-cro-v15 .cc-gen-choice[aria-pressed="true"]{
  border-color:var(--cc-gen-purple);
  background:var(--cc-gen-purple-soft);
}

.cc-gen-cro-v15 .cc-gen-choice-grid--outcomes .cc-gen-choice.is-active,
.cc-gen-cro-v15 .cc-gen-choice-grid--outcomes .cc-gen-choice[aria-pressed="true"]{
  box-shadow:0 16px 34px rgba(111,50,214,.13);
}

@media (max-width:980px){
  .cc-gen-cro-v15-hero{
    grid-template-columns:1fr;
  }
}

@media (max-width:720px){
  .cc-gen-cro-v15{
    padding-bottom:88px;
  }

  .cc-gen-cro-v15 .cc-gen-mobile-primary{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:60;
    display:block;
    padding:.72rem .9rem calc(.72rem + env(safe-area-inset-bottom));
    border-top:1px solid var(--cc-gen-border);
    background:rgba(255,255,255,.96);
    box-shadow:0 -16px 40px rgba(17,26,53,.14);
    backdrop-filter:saturate(150%) blur(14px);
  }

  .cc-gen-cro-v15 .cc-gen-mobile-primary .cc-button{
    width:100%;
    justify-content:center;
    min-height:52px;
  }

  .cc-gen-cro-v15 .cc-gen-side{
    gap:.9rem;
  }

  .cc-gen-cro-v15 .cc-gen-score{
    width:86px;
    height:86px;
  }

  .cc-gen-cro-v15 .cc-gen-unlock-panel{
    grid-template-columns:1fr;
  }

  .cc-gen-cro-v15 .cc-gen-unlock-panel__action{
    align-items:stretch;
  }

  .cc-gen-cro-v15 .cc-cro-one-primary[data-cro-primary-action="unlock"]{
    padding:.85rem;
  }
}

@media (max-width:540px){
  .cc-gen-cro-v15-hero h1{
    font-size:clamp(2.2rem,12vw,3.3rem);
  }

  .cc-gen-cro-v15-hero .cc-gen-trust-strip{
    grid-template-columns:1fr;
  }

  .cc-gen-cro-v15 .cc-review-reassurance{
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .cc-gen-cro-v15 .cc-review-reassurance li{
    border-radius:16px;
  }
}

html[data-theme="dark"] .cc-gen-cro-v15-note,
html[data-theme="dark"] .cc-gen-cro-v15 .cc-review-price-note,
html[data-theme="dark"] .cc-gen-cro-v15 .cc-gen-cro-unlock-card{
  background:rgba(15,23,42,.72);
  border-color:rgba(255,255,255,.12);
}

html[data-theme="dark"] .cc-gen-cro-v15 .cc-gen-mobile-primary{
  background:rgba(15,23,42,.96);
  border-color:rgba(255,255,255,.12);
}

/* ai_preview_upgrade_v1: make the free preview persuasive without giving away the paid letter */
.cc-gen-cro-v15 .cc-gen-ai-preview-text,
.cc-gen-ai-preview-text{
  white-space:pre-line;
  font-size:1.02rem;
  line-height:1.72;
  color:var(--cc-text, #111a35);
}

.cc-gen-cro-v15 .cc-gen-ai-preview-meta,
.cc-gen-ai-preview-meta{
  display:inline-flex;
  width:max-content;
  margin-top:.45rem;
  padding:.25rem .55rem;
  border:1px solid rgba(111,50,214,.22);
  border-radius:999px;
  background:#f2ecff;
  color:#5522b4;
  font-size:.75rem;
  font-weight:800;
}

.cc-gen-cro-v15 .cc-gen-locked-structure,
.cc-gen-locked-structure{
  position:relative;
  margin:1.1rem 0 0;
  padding:1rem;
  border:1px dashed rgba(111,50,214,.34);
  border-radius:20px;
  background:linear-gradient(135deg, rgba(242,236,255,.92), rgba(237,243,255,.82));
  overflow:hidden;
}

.cc-gen-cro-v15 .cc-gen-locked-structure::after,
.cc-gen-locked-structure::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:40%;
  background:linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,.92));
  pointer-events:none;
}

.cc-gen-cro-v15 .cc-gen-locked-structure > strong,
.cc-gen-locked-structure > strong{
  display:flex;
  align-items:center;
  gap:.45rem;
  margin-bottom:.55rem;
  color:#111a35;
  font-size:.92rem;
}

.cc-gen-cro-v15 .cc-gen-locked-structure > strong::before,
.cc-gen-locked-structure > strong::before{
  content:"🔒";
  font-size:.92rem;
}

.cc-gen-cro-v15 .cc-gen-locked-structure ul,
.cc-gen-locked-structure ul{
  display:grid;
  gap:.42rem;
  margin:0;
  padding-left:1.1rem;
}

.cc-gen-cro-v15 .cc-gen-locked-structure li,
.cc-gen-locked-structure li{
  color:#24304d;
  font-size:.9rem;
  line-height:1.45;
}

.cc-gen-cro-v15 [data-paid-min-words],
[data-paid-min-words]{
  font-weight:900;
}

html[data-theme="dark"] .cc-gen-cro-v15 .cc-gen-ai-preview-meta,
html[data-theme="dark"] .cc-gen-ai-preview-meta{
  background:rgba(111,50,214,.18);
  border-color:rgba(255,255,255,.16);
  color:#d9c9ff;
}

html[data-theme="dark"] .cc-gen-cro-v15 .cc-gen-locked-structure,
html[data-theme="dark"] .cc-gen-locked-structure{
  background:linear-gradient(135deg, rgba(111,50,214,.16), rgba(37,99,235,.12));
  border-color:rgba(255,255,255,.14);
}

html[data-theme="dark"] .cc-gen-cro-v15 .cc-gen-locked-structure::after,
html[data-theme="dark"] .cc-gen-locked-structure::after{
  background:linear-gradient(to bottom, rgba(15,23,42,0), rgba(15,23,42,.92));
}

/* AI Preview Reveal Control v1.1 */
.cc-gen-locked-visuals {
  display: grid;
  gap: .7rem;
  margin: .75rem 0 1rem;
}

.cc-gen-locked-visual-block {
  display: grid;
  gap: .4rem;
  padding: .85rem;
  border: 1px solid rgba(111, 50, 214, .18);
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(242, 236, 255, .78), rgba(237, 243, 255, .72));
  position: relative;
  overflow: hidden;
}

.cc-gen-locked-visual-block::after {
  content: "Locked";
  position: absolute;
  top: .55rem;
  right: .65rem;
  font-size: .64rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #5522b4;
  background: rgba(255, 255, 255, .86);
  border: 1px solid rgba(111, 50, 214, .18);
  border-radius: 999px;
  padding: .15rem .45rem;
}

.cc-gen-locked-visual-block span {
  display: block;
  height: .55rem;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(17, 26, 53, .13), rgba(17, 26, 53, .06), rgba(17, 26, 53, .12));
  filter: blur(.35px);
  opacity: .82;
}

.cc-gen-ai-preview-text {
  max-height: none;
}

.cc-gen-cro-preview .cc-gen-ai-preview-text::after {
  content: "";
  display: block;
  width: 42%;
  height: .55rem;
  margin-top: .75rem;
  border-radius: 999px;
  background: rgba(111, 50, 214, .18);
}


/* AI Preview Letter Continuation UI v1.2 + Funnel Recording Reliability v1 */
.cc-gen-letter-continuation{
  position:relative;
  margin:1.15rem 0 0;
  padding:0;
  border:0;
  background:transparent;
  overflow:hidden;
}

.cc-gen-letter-section-title--locked{
  color:#111a35;
  opacity:.9;
}

.cc-gen-continuation-preview,
.cc-gen-locked-visuals{
  display:grid;
  gap:.95rem;
  margin:.65rem 0 0;
  max-height:22rem;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(to bottom, #000 0%, #000 62%, rgba(0,0,0,.72) 78%, transparent 100%);
  mask-image:linear-gradient(to bottom, #000 0%, #000 62%, rgba(0,0,0,.72) 78%, transparent 100%);
}

.cc-gen-letter-continuation-block,
.cc-gen-locked-visual-block{
  display:block;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  position:relative;
  overflow:hidden;
}

.cc-gen-letter-continuation-block::after,
.cc-gen-locked-visual-block::after{
  display:none !important;
  content:none !important;
}

.cc-gen-letter-continuation-block strong{
  display:block;
  margin:0 0 .45rem;
  color:#111a35;
  font-size:.92rem;
  font-weight:900;
}

.cc-gen-letter-continuation-block span,
.cc-gen-locked-visual-block span{
  display:block;
  height:.58rem;
  margin:.38rem 0;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(17,26,53,.14), rgba(111,50,214,.12), rgba(17,26,53,.08));
  filter:blur(.45px);
  opacity:.78;
}

.cc-gen-continuation-overlay{
  position:absolute;
  left:0;
  right:0;
  bottom:.15rem;
  z-index:3;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:1rem 1.1rem;
  border:1px solid rgba(111,50,214,.28);
  border-radius:18px;
  background:rgba(255,255,255,.94);
  box-shadow:0 16px 36px rgba(17,26,53,.14);
  backdrop-filter:blur(8px);
}

.cc-gen-continuation-overlay strong{
  display:flex;
  align-items:center;
  gap:.45rem;
  color:#111a35;
  font-size:.98rem;
  font-weight:950;
}

.cc-gen-continuation-overlay strong::before{
  content:"🔒";
  font-size:.9rem;
}

.cc-gen-continuation-overlay span{
  color:#24304d;
  font-size:.86rem;
  line-height:1.35;
  text-align:right;
}

.cc-gen-continuation-labels{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  clip:rect(1px, 1px, 1px, 1px) !important;
  white-space:nowrap !important;
}

html[data-theme="dark"] .cc-gen-letter-continuation-block strong,
html[data-theme="dark"] .cc-gen-letter-section-title--locked,
html[data-theme="dark"] .cc-gen-continuation-overlay strong{
  color:#f8fafc;
}

html[data-theme="dark"] .cc-gen-continuation-overlay{
  background:rgba(15,23,42,.94);
  border-color:rgba(255,255,255,.16);
}

html[data-theme="dark"] .cc-gen-continuation-overlay span{
  color:#d6dce9;
}

@media (max-width: 720px){
  .cc-gen-continuation-overlay{
    position:relative;
    margin-top:-.45rem;
    flex-direction:column;
    align-items:flex-start;
  }
  .cc-gen-continuation-overlay span{
    text-align:left;
  }
  .cc-gen-continuation-preview,
  .cc-gen-locked-visuals{
    max-height:18rem;
  }
}
