/* Ciao Bella Growth Tools — AI Audit. Scoped to .cbgt; override the --cbgt-* tokens per site. */
.cbgt{
  --cbgt-bg:#0B0B0B; --cbgt-fg:#FFFDF9; --cbgt-muted:#A9A69C; --cbgt-line:#2E2D2A;
  --cbgt-card:#161615; --cbgt-accent:#FFD426; --cbgt-shadow:#FF4A34; --cbgt-good:#00D48A; --cbgt-bad:#FF4A34;
  --cbgt-input:#FFFDF9; --cbgt-input-fg:#0B0B0B;
  background:var(--cbgt-bg); color:var(--cbgt-fg); padding:72px 0 76px; font-family:inherit;
}
.cbgt--light{
  --cbgt-bg:#FFFDF9; --cbgt-fg:#0B0B0B; --cbgt-muted:#55534E; --cbgt-line:#DCD8CF;
  --cbgt-card:#FFFFFF; --cbgt-input:#FFFFFF; --cbgt-input-fg:#0B0B0B;
}
.cbgt *{box-sizing:border-box;}
.cbgt [hidden]{display:none !important;}
.cbgt-wrap{max-width:1240px; margin:0 auto; padding:0 30px;}
.cbgt-head{display:grid; grid-template-columns:1.3fr 1fr; gap:44px; align-items:end; margin-bottom:30px;}
.cbgt-kick{font-family:'IBM Plex Mono',ui-monospace,monospace; font-size:12px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--cbgt-accent);}
.cbgt h2{font-size:clamp(32px,3.6vw,52px); line-height:.98; margin:12px 0 0; color:var(--cbgt-fg);}
.cbgt-hl{color:var(--cbgt-accent);}
.cbgt-head p{font-size:17px; line-height:1.6; margin:0; color:var(--cbgt-muted);}
.cbgt-head p b{color:var(--cbgt-fg);}
.cbgt-head p em{font-style:normal; color:var(--cbgt-fg); font-weight:700;}

.cbgt-form{display:grid; grid-template-columns:1.2fr 1.4fr .8fr auto; gap:12px; align-items:end;}
.cbgt-field{display:flex; flex-direction:column; gap:6px; min-width:0;}
.cbgt-field span{font-family:'IBM Plex Mono',ui-monospace,monospace; font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--cbgt-muted);}
.cbgt-field input{width:100%; font:inherit; font-size:18px; padding:16px 16px; border:3px solid var(--cbgt-fg); border-radius:0;
  background:var(--cbgt-input); color:var(--cbgt-input-fg);}
.cbgt--dark .cbgt-field input{border-color:var(--cbgt-input);}
.cbgt-field input:focus{outline:none; box-shadow:5px 5px 0 var(--cbgt-shadow);}
.cbgt-go{display:inline-block; cursor:pointer; font:inherit; font-weight:700; font-size:16px; padding:18px 26px; text-decoration:none;
  background:var(--cbgt-accent); color:#0B0B0B; border:3px solid var(--cbgt-accent); border-radius:9px; box-shadow:6px 6px 0 var(--cbgt-shadow);
  transition:transform .15s, box-shadow .15s; white-space:nowrap;}
.cbgt-go:hover{transform:translate(6px,6px); box-shadow:0 0 0 var(--cbgt-shadow); color:#0B0B0B;}
.cbgt-go[disabled]{opacity:.6; cursor:default; transform:none;}
.cbgt-fine{font-size:13px; color:var(--cbgt-muted); margin:14px 0 0;}
.cbgt-err{margin:14px 0 0; padding:10px 14px; border-left:4px solid var(--cbgt-bad); background:rgba(255,74,52,.12); font-size:15px;}

.cbgt-steps{list-style:none; margin:30px 0 0; padding:0; display:grid; gap:8px; font-family:'IBM Plex Mono',ui-monospace,monospace; font-size:14px;}
.cbgt-step{display:flex; align-items:center; gap:12px;}
.cbgt-step-s{margin-left:auto; color:var(--cbgt-muted); text-transform:uppercase; font-size:11px; letter-spacing:.12em;}
.cbgt-dot{width:12px; height:12px; border-radius:50%; flex:0 0 12px; border:2px solid var(--cbgt-accent);}
.cbgt-step.is-run .cbgt-dot{animation:cbgt-pulse 1s ease-in-out infinite;}
.cbgt-step.is-ok .cbgt-dot{background:var(--cbgt-good); border-color:var(--cbgt-good);}
.cbgt-step.is-skip .cbgt-dot{border-color:var(--cbgt-muted);}
.cbgt-step.is-skip{color:var(--cbgt-muted);}
@keyframes cbgt-pulse{50%{background:var(--cbgt-accent); transform:scale(.8);}}
@media (prefers-reduced-motion:reduce){.cbgt-step.is-run .cbgt-dot{animation:none; background:var(--cbgt-accent);}}

.cbgt-results{margin-top:34px; display:grid; gap:22px;}
.cbgt-grid{display:grid; grid-template-columns:1fr 1fr; gap:22px;}
.cbgt-card{background:var(--cbgt-card); border:2px solid var(--cbgt-line); padding:24px; min-width:0;}
.cbgt-card-h{font-family:'IBM Plex Mono',ui-monospace,monospace; font-size:13px; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
  color:var(--cbgt-accent); margin:0 0 16px; padding-bottom:10px; border-bottom:2px solid var(--cbgt-fg);}
.cbgt-sub{font-family:'IBM Plex Mono',ui-monospace,monospace; font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--cbgt-muted); margin:18px 0 8px;}
.cbgt-note, .cbgt-src{font-size:13px; color:var(--cbgt-muted); margin:10px 0 0;}
.cbgt-lockline{margin:12px 0 0; font-size:14px; font-weight:700; color:var(--cbgt-accent);}
.cbgt-lockline:before{content:'\1F512  ';}

.cbgt-big{display:flex; flex-direction:column; gap:4px; padding:14px 16px; border-left:6px solid var(--cbgt-bad); background:rgba(255,74,52,.08);}
.cbgt-big.is-good{border-left-color:var(--cbgt-good); background:rgba(0,212,138,.08);}
.cbgt-engine-n{font-family:'IBM Plex Mono',ui-monospace,monospace; font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--cbgt-muted);}
.cbgt-engine-v{font-size:22px; font-weight:700; line-height:1.2;}
.cbgt-prompts{list-style:none; margin:0; padding:0;}
.cbgt-prompts > li{display:flex; flex-wrap:wrap; gap:6px 12px; align-items:baseline; padding:10px 0; border-bottom:1px solid var(--cbgt-line); font-size:15px;}
.cbgt-q{flex:1 1 60%; min-width:0;}
.cbgt-tag{font-family:'IBM Plex Mono',ui-monospace,monospace; font-size:11px; text-transform:uppercase; letter-spacing:.08em; padding:2px 8px; border:1px solid currentColor;}
.is-yes .cbgt-tag{color:var(--cbgt-good);} .is-no .cbgt-tag{color:var(--cbgt-bad);}
.cbgt-lock{flex-basis:100%; font-size:13px; color:var(--cbgt-muted);}
.cbgt-lock:before{content:'\1F512  ';}
.cbgt-answer{flex-basis:100%; margin-top:6px; padding:12px 14px; border:1px solid var(--cbgt-line); font-size:14.5px; line-height:1.55;}
.cbgt-answer summary{cursor:pointer; font-weight:700;}
.cbgt-answer p{margin:10px 0 0;}
.cbgt-sources{margin:0; padding-left:20px; font-size:13.5px;}
.cbgt-sources li{padding:3px 0; word-break:break-word;}
.cbgt-sources a{color:var(--cbgt-accent); text-decoration:underline;}
.cbgt-sources li.is-you a{color:var(--cbgt-good); font-weight:700;}

.cbgt-score{display:flex; align-items:baseline; gap:10px;}
.cbgt-score-n{font-size:64px; font-weight:800; line-height:1; color:var(--cbgt-accent);}
.cbgt-score-of{font-size:17px; color:var(--cbgt-muted);}
.cbgt-bar{height:10px; background:var(--cbgt-line); margin:14px 0 4px;}
.cbgt-bar span{display:block; height:100%; background:var(--cbgt-accent);}
.cbgt-fails{list-style:none; margin:0; padding:0;}
.cbgt-fails li{padding:9px 0 9px 22px; position:relative; border-bottom:1px solid var(--cbgt-line); font-size:15px;}
.cbgt-fails li:before{content:'\2715'; position:absolute; left:0; color:var(--cbgt-bad); font-weight:700;}
.cbgt-fails li.is-clean:before{content:'';}
.cbgt-detail, .cbgt-fix{display:block; font-size:14px; margin-top:4px; color:var(--cbgt-muted);}
.cbgt-fix{color:var(--cbgt-fg);}
.cbgt-fix:before{content:'\2192  '; color:var(--cbgt-good);}

.cbgt-tablewrap{overflow-x:auto;}
.cbgt-kw{width:100%; border-collapse:collapse; font-size:14.5px;}
.cbgt-kw th{text-align:left; font-family:'IBM Plex Mono',ui-monospace,monospace; font-size:11px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--cbgt-muted); padding:0 8px 8px 0;}
.cbgt-kw td{padding:9px 8px 9px 0; border-top:1px solid var(--cbgt-line);}
.cbgt-kw .num{text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums;}
.cbgt-kw th:not(:first-child){text-align:right;}

.cbgt-gate{background:var(--cbgt-accent); color:#0B0B0B; padding:26px; border:3px solid var(--cbgt-accent);}
.cbgt-gate .cbgt-card-h{color:#0B0B0B; border-bottom-color:#0B0B0B;}
.cbgt-gate > p{margin:0 0 16px; font-size:16px;}
.cbgt-gate-row{display:grid; grid-template-columns:1fr 1.3fr 1fr auto; gap:12px; align-items:end;}
.cbgt-gate .cbgt-field span{color:#0B0B0B;}
.cbgt-gate .cbgt-field input{border-color:#0B0B0B; background:#FFFDF9; color:#0B0B0B;}
.cbgt-gate .cbgt-go{background:#0B0B0B; color:#FFFDF9; border-color:#0B0B0B;}
.cbgt-gate .cbgt-go:hover{color:#FFFDF9;}
.cbgt-privacy{font-size:12.5px; margin:12px 0 0 !important;}
.cbgt-privacy a{color:#0B0B0B; text-decoration:underline;}
.cbgt-gate .cbgt-err{color:#0B0B0B;}
.cbgt-hp{position:absolute !important; left:-9999px !important; width:1px; height:1px; opacity:0;}
.cbgt-thanks{margin:0; padding:14px 16px; border-left:6px solid var(--cbgt-good); background:rgba(0,212,138,.1); font-weight:700;}
.cbgt-cta{border:2px solid var(--cbgt-accent); padding:24px; display:grid; grid-template-columns:1fr auto; gap:8px 24px; align-items:center;}
.cbgt-cta h3{margin:0; font-size:24px; color:var(--cbgt-fg);}
.cbgt-cta p{margin:0; color:var(--cbgt-muted); grid-column:1;}
.cbgt-cta .cbgt-go{grid-column:2; grid-row:1 / span 2;}

@media (max-width:940px){
  .cbgt{padding:56px 0 60px;}
  .cbgt-wrap{padding:0 16px;}
  .cbgt-head{grid-template-columns:1fr; gap:16px;}
  .cbgt-form, .cbgt-gate-row{grid-template-columns:1fr;}
  .cbgt-go{width:100%; text-align:center;}
  .cbgt-grid{grid-template-columns:1fr;}
  .cbgt-cta{grid-template-columns:1fr;}
  .cbgt-cta .cbgt-go{grid-column:1; grid-row:auto;}
  .cbgt-card{padding:18px;}
  .cbgt-kw th:nth-child(4), .cbgt-kw td:nth-child(4){display:none;}
}
