.bca-shell,
.bca-shell * {
  box-sizing: border-box;
}

.bca-shell [hidden] {
  display: none !important;
}

.bca-shell {
  --bca-dark: #080d18;
  --bca-card: #10192a;
  --bca-line: rgba(255,255,255,.09);
  --bca-text: #f8fafc;
  --bca-muted: #97a6bd;
  --bca-yellow: #ffbd17;
  --bca-green: #17e989;
  --bca-pass: #20c997;
  --bca-warning: #ffb020;
  --bca-fail: #ff5d6c;

  position: relative;
  isolation: isolate;
  width: 100vw;
  max-width: none;
  min-height: 100vh;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: clamp(68px,7vw,112px) 0 42px;
  overflow: hidden;
  background:
    radial-gradient(circle at 9% 8%, rgba(255,189,23,.14), transparent 27%),
    radial-gradient(circle at 90% 70%, rgba(23,233,137,.12), transparent 32%),
    linear-gradient(145deg,#060a12 0%,#0d1423 54%,#06110d 100%);
  color: var(--bca-text);
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

.bca-container {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  width: min(1520px,calc(100% - 48px));
  min-height: calc(100vh - 154px);
  margin: 0 auto;
}

.bca-glow {
  position: absolute;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  filter: blur(120px);
  opacity: .18;
  pointer-events: none;
}

.bca-glow-one { top:-190px; left:-190px; background:var(--bca-yellow); }
.bca-glow-two { right:-200px; bottom:-180px; background:var(--bca-green); }

.bca-hero {
  width:100%;
  max-width:1110px;
  min-height:470px;
  margin:0 auto;
  text-align:center;
}

.bca-eyebrow {
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:9px 14px;
  border:1px solid rgba(23,233,137,.28);
  border-radius:999px;
  background:rgba(23,233,137,.07);
  color:#7ff8bd;
  font-size:13px;
  font-weight:800;
  letter-spacing:.055em;
  text-transform:uppercase;
}

.bca-eyebrow span {
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--bca-green);
  box-shadow:0 0 0 5px rgba(23,233,137,.12);
}

.bca-hero h2 {
  max-width:1080px;
  margin:25px auto 18px;
  color:#fff;
  font-size:clamp(42px,5.1vw,76px);
  line-height:1.03;
  letter-spacing:-.046em;
}

.bca-hero h2 em {
  display:block;
  color:var(--bca-yellow);
  font-style:normal;
}

.bca-hero > p {
  max-width:900px;
  min-height:62px;
  margin:0 auto;
  color:var(--bca-muted);
  font-size:clamp(16px,1.35vw,20px);
  line-height:1.75;
}

.bca-form {
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  width:100%;
  max-width:940px;
  margin:32px auto 0;
  padding:9px;
  border:1px solid var(--bca-line);
  border-radius:20px;
  background:rgba(255,255,255,.07);
  box-shadow:0 25px 80px rgba(0,0,0,.27);
  backdrop-filter:blur(16px);
}

.bca-input-wrap {
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:0 10px;
}

.bca-input-wrap svg {
  width:24px;
  min-width:24px;
  fill:#7f8da5;
}

.bca-input-wrap input {
  width:100%;
  min-width:0;
  height:58px;
  border:0;
  outline:0;
  background:transparent;
  color:#fff;
  font-size:16px;
}

.bca-input-wrap input::placeholder { color:#738098; }

.bca-form button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:58px;
  padding:0 24px;
  border:0;
  border-radius:14px;
  background:linear-gradient(135deg,#ffd24f,#f5a900);
  box-shadow:0 12px 30px rgba(255,189,23,.22);
  color:#111;
  cursor:pointer;
  font-size:15px;
  font-weight:900;
  transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;
}

.bca-form button:hover { transform:translateY(-2px); box-shadow:0 17px 34px rgba(255,189,23,.28); }
.bca-form button:disabled { transform:none; opacity:.65; cursor:wait; }
.bca-form button svg { width:20px; fill:currentColor; }

.bca-trust {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:22px;
  min-height:22px;
  margin-top:19px;
  color:#8190a8;
  font-size:13px;
}

.bca-status {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  margin-top:10px;
  color:#ffd463;
  font-size:14px;
}

.bca-status.is-success { color:#76efb7; }
.bca-status.is-error {
  width:fit-content;
  max-width:100%;
  margin-right:auto;
  margin-left:auto;
  padding:10px 16px;
  border:1px solid rgba(255,93,108,.26);
  border-radius:12px;
  background:rgba(255,93,108,.1);
  color:#ff9ba5;
}

.bca-loader {
  width:18px;
  height:18px;
  border:2px solid rgba(0,0,0,.25);
  border-top-color:#111;
  border-radius:50%;
  animation:bca-spin .7s linear infinite;
}
@keyframes bca-spin { to { transform:rotate(360deg); } }

.bca-results {
  width:100%;
  min-height:760px;
  margin-top:12px;
  animation:bca-fade .35s ease both;
}
@keyframes bca-fade { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:none; } }

.bca-summary {
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(430px,.9fr);
  gap:22px;
}

.bca-score-card,
.bca-stat,
.bca-metric,
.bca-priority-card,
.bca-check,
.bca-contact-cta {
  border:1px solid var(--bca-line);
  background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025));
  box-shadow:0 24px 70px rgba(0,0,0,.18);
  backdrop-filter:blur(14px);
}

.bca-score-card {
  display:flex;
  align-items:center;
  gap:28px;
  min-height:230px;
  padding:34px;
  border-radius:28px;
}

.bca-ring {
  --score:0;
  position:relative;
  display:grid;
  place-items:center;
  width:156px;
  height:156px;
  min-width:156px;
  border-radius:50%;
  background:conic-gradient(var(--bca-yellow) calc(var(--score)*1%),rgba(255,255,255,.08) 0);
}

.bca-ring::before {
  content:"";
  position:absolute;
  inset:12px;
  border-radius:50%;
  background:#10182a;
  box-shadow:inset 0 0 32px rgba(0,0,0,.3);
}

.bca-ring > div { position:relative; z-index:1; display:flex; align-items:flex-end; }
.bca-ring strong { font-size:48px; line-height:1; letter-spacing:-.05em; }
.bca-ring span { margin:0 0 5px 3px; color:#8e9cb1; font-size:15px; }

.bca-score-copy > span,
.bca-section-heading > span,
.bca-toolbar > div:first-child > span,
.bca-contact-copy > span {
  color:#8e9db5;
  font-size:12px;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.bca-score-copy h3 { margin:8px 0 8px; color:#fff; font-size:clamp(25px,2.2vw,36px); line-height:1.12; }
.bca-score-copy p { max-width:650px; margin:0; color:#a3b0c3; font-size:15px; line-height:1.65; }
.bca-score-copy small { display:block; max-width:620px; margin-top:12px; overflow:hidden; color:#6f7e94; text-overflow:ellipsis; white-space:nowrap; }

.bca-stat-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.bca-stat { display:flex; flex-direction:column; justify-content:center; min-height:230px; padding:24px; border-radius:24px; }
.bca-stat span { color:#94a2b7; font-size:14px; line-height:1.35; }
.bca-stat strong { margin-top:16px; font-size:44px; }
.bca-stat-pass strong { color:var(--bca-pass); }
.bca-stat-warning strong { color:var(--bca-warning); }
.bca-stat-fail strong { color:var(--bca-fail); }

.bca-metrics { display:grid; grid-template-columns:repeat(6,1fr); gap:14px; margin-top:20px; }
.bca-metric { min-width:0; padding:22px; border-radius:20px; }
.bca-metric span { display:block; color:#8391a7; font-size:12px; }
.bca-metric strong { display:block; margin-top:9px; overflow:hidden; color:#fff; font-size:21px; text-overflow:ellipsis; white-space:nowrap; }

.bca-priority { margin-top:52px; }
.bca-section-heading { margin-bottom:18px; }
.bca-section-heading h3,.bca-toolbar h3 { margin:7px 0 0; color:#fff; font-size:clamp(25px,2.2vw,34px); }
.bca-priority-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.bca-priority-card { display:flex; gap:17px; min-height:160px; padding:24px; border-radius:22px; }
.bca-priority-number { color:rgba(255,255,255,.22); font-size:31px; font-weight:900; line-height:1; }
.bca-priority-card span { color:#fff; font-size:16px; font-weight:800; }
.bca-priority-card p { margin:10px 0 0; color:#98a6ba; font-size:14px; line-height:1.65; }
.bca-priority-fail { border-color:rgba(255,93,108,.25); }
.bca-priority-warning { border-color:rgba(255,176,32,.22); }

.bca-toolbar {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:25px;
  margin:58px 0 20px;
}

.bca-filters { display:flex; flex-wrap:wrap; gap:8px; }
.bca-filters button {
  padding:10px 14px;
  border:1px solid var(--bca-line);
  border-radius:999px;
  background:rgba(255,255,255,.035);
  color:#8c9ab0;
  cursor:pointer;
  font-size:13px;
  font-weight:750;
}
.bca-filters button.is-active { border-color:rgba(255,189,23,.38); background:rgba(255,189,23,.12); color:#ffd568; }

.bca-checks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.bca-check { display:grid; grid-template-columns:44px 1fr; gap:15px; min-height:146px; padding:22px; border-radius:20px; }
.bca-check-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:13px; font-size:20px; font-weight:950; }
.bca-check h4 { margin:1px 0 8px; color:#fff; font-size:16px; }
.bca-check p { margin:0; color:#94a2b7; font-size:14px; line-height:1.62; }
.bca-check small { display:block; margin-top:11px; color:#b1bdcf; font-size:13px; line-height:1.55; }
.bca-check small b { color:#fff; }
.bca-check-pass .bca-check-icon { background:rgba(32,201,151,.12); color:var(--bca-pass); }
.bca-check-warning .bca-check-icon { background:rgba(255,176,32,.12); color:var(--bca-warning); }
.bca-check-fail .bca-check-icon { background:rgba(255,93,108,.12); color:var(--bca-fail); }
.bca-check-pass { border-color:rgba(32,201,151,.12); }
.bca-check-warning { border-color:rgba(255,176,32,.16); }
.bca-check-fail { border-color:rgba(255,93,108,.18); }

.bca-disclaimer {
  margin:22px 0 0;
  padding:16px 18px;
  border:1px solid rgba(255,255,255,.07);
  border-radius:15px;
  background:rgba(255,255,255,.025);
  color:#718096;
  font-size:12px;
  line-height:1.65;
}

.bca-contact-cta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  width:100%;
  margin-top:auto;
  padding:30px 34px;
  border-radius:26px;
  background:
    radial-gradient(circle at 82% 15%,rgba(23,233,137,.13),transparent 32%),
    linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025));
}

.bca-results:not([hidden]) + .bca-contact-cta { margin-top:42px; }
.bca-contact-copy { max-width:670px; }
.bca-contact-copy h3 { margin:8px 0 8px; color:#fff; font-size:clamp(23px,2vw,32px); }
.bca-contact-copy p { margin:0; color:#91a0b5; font-size:14px; line-height:1.6; }
.bca-contact-actions { display:flex; gap:12px; flex-shrink:0; }
.bca-contact-button { display:flex; align-items:center; gap:12px; min-width:225px; padding:13px 17px; border-radius:17px; color:#fff; text-decoration:none!important; transition:transform .2s ease,box-shadow .2s ease; }
.bca-contact-button:hover { transform:translateY(-2px); color:#fff; }
.bca-contact-phone { border:1px solid rgba(255,189,23,.33); background:rgba(255,189,23,.09); }
.bca-contact-whatsapp { border:1px solid rgba(23,233,137,.3); background:rgba(23,233,137,.08); }
.bca-contact-icon { display:grid; place-items:center; width:43px; height:43px; min-width:43px; border-radius:13px; }
.bca-contact-icon svg { width:22px; fill:currentColor; }
.bca-contact-phone .bca-contact-icon { background:rgba(255,189,23,.13); color:var(--bca-yellow); }
.bca-contact-whatsapp .bca-contact-icon { background:rgba(23,233,137,.13); color:var(--bca-green); }
.bca-contact-button span:last-child { display:flex; flex-direction:column; }
.bca-contact-button small { color:#8796ab; font-size:11px; }
.bca-contact-button strong { margin-top:3px; color:#fff; font-size:14px; }

@media (max-width:1180px) {
  .bca-summary { grid-template-columns:1fr; }
  .bca-stat { min-height:135px; }
  .bca-metrics { grid-template-columns:repeat(3,1fr); }
  .bca-contact-cta { align-items:flex-start; flex-direction:column; }
}

@media (max-width:900px) {
  .bca-shell { padding-top:58px; }
  .bca-container { width:min(100% - 28px,1520px); }
  .bca-hero { min-height:500px; }
  .bca-form { grid-template-columns:1fr; }
  .bca-form button { width:100%; }
  .bca-priority-grid,.bca-checks { grid-template-columns:1fr; }
  .bca-toolbar { align-items:flex-start; flex-direction:column; }
}

@media (max-width:680px) {
  .bca-shell { padding-top:44px; }
  .bca-container { width:calc(100% - 20px); }
  .bca-hero { min-height:520px; }
  .bca-hero h2 { font-size:clamp(38px,12vw,56px); }
  .bca-score-card { align-items:flex-start; flex-direction:column; padding:24px; }
  .bca-ring { width:130px; height:130px; min-width:130px; }
  .bca-ring strong { font-size:40px; }
  .bca-stat-grid { grid-template-columns:1fr; }
  .bca-stat { min-height:105px; }
  .bca-metrics { grid-template-columns:repeat(2,1fr); }
  .bca-contact-cta { padding:23px 18px; }
  .bca-contact-actions { width:100%; flex-direction:column; }
  .bca-contact-button { width:100%; min-width:0; }
}

@media (prefers-reduced-motion:reduce) {
  .bca-shell * { scroll-behavior:auto!important; animation-duration:.01ms!important; transition-duration:.01ms!important; }
}
