/* BizTorq — Free OpenCart Store Audit (au- prefix; builds on cost-calculator.css) */
.au { --au-good:#1F9D55; --au-mid:#C98A0B; --au-bad:#C0392B; --au-info:#6B6486; }

/* Form */
.au-form { margin-top:26px; max-width:760px; }
.au-label { display:block; font-size:13px; font-weight:700; color:#D6D0EA; margin-bottom:8px; }
.au-form-row { display:flex; gap:10px; flex-wrap:wrap; }
.au-form-row input { flex:1 1 280px; min-width:0; font-family:inherit; font-size:17px; padding:15px 16px; border:2px solid transparent; border-radius:3px; background:#fff; color:#191233; }
.au-form-row input:focus { outline:none; border-color:#A88BFF; }
.au-form-row .cc-btn { width:auto; flex:0 0 auto; padding:15px 26px; }
.au-form-row .cc-btn:disabled { opacity:.75; cursor:wait; }
.au-note { font-size:13px; color:#B9B1D6; margin:10px 0 0; }
.au-fresh { display:flex; gap:8px; align-items:center; font-size:13.5px; color:#D6D0EA; margin-top:10px; }
.au-error { margin-top:14px; background:#FFF3F3; color:#8A2C2C; border:1px solid #E8CACA; padding:12px 14px; border-radius:3px; font-size:14.5px; }

/* Report */
.au-report { background:#F7F5FC; padding:clamp(32px,5vw,64px) 0; }
.au-summary { display:flex; gap:clamp(18px,3vw,36px); align-items:center; flex-wrap:wrap; background:#fff; border:1px solid #E3DDF6; border-radius:4px; padding:clamp(18px,3vw,30px); }
.au-ring { --c: var(--au-bad); width:150px; height:150px; border-radius:50%; flex-shrink:0; display:flex; align-items:center; justify-content:center;
  background: conic-gradient(var(--c) calc(var(--score) * 1%), #ECE8F7 0); }
.au-grade-a, .au-grade-b { --c: var(--au-good); }
.au-grade-c { --c: var(--au-mid); }
.au-grade-d, .au-grade-f { --c: var(--au-bad); }
.au-ring-inner { width:116px; height:116px; border-radius:50%; background:#fff; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.au-ring-inner strong { font-family:'Bricolage Grotesque',sans-serif; font-size:42px; line-height:1; }
.au-ring-inner span { font-size:12px; color:#5A566E; margin-top:4px; }
.au-summary-text { flex:1 1 300px; min-width:0; }
.au-summary-text h2 { font-size:clamp(22px,3vw,30px); margin:6px 0 10px; word-break:break-word; }
.au-meta { list-style:none; padding:0; margin:0 0 14px; display:flex; flex-wrap:wrap; gap:6px 20px; font-size:14px; color:#3E3A52; }
.au-actions { display:flex; flex-wrap:wrap; gap:8px; }
.au-btn-small { font-family:inherit; font-size:13.5px; font-weight:700; padding:9px 14px; border-radius:3px; border:1.5px solid #191233; background:#fff; color:#191233; cursor:pointer; text-decoration:none; }
.au-btn-small:hover { background:#191233; color:#fff; }
.au-btn-wa { background:#1FA855; border-color:#1FA855; color:#fff; }
.au-btn-wa:hover { background:#178F47; border-color:#178F47; color:#fff; }

.au-cats { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; margin:16px 0; }
.au-cat { background:#fff; border:1px solid #E3DDF6; border-radius:4px; padding:12px 14px; }
.au-cat-head { display:flex; justify-content:space-between; font-size:13.5px; font-weight:600; margin-bottom:8px; }
.au-bar { height:7px; background:#ECE8F7; border-radius:4px; overflow:hidden; }
.au-bar-fill { display:block; height:100%; border-radius:4px; }
.is-good { background:var(--au-good); } .is-mid { background:var(--au-mid); } .is-bad { background:var(--au-bad); }

.au-ps { background:#fff; border:1px solid #E3DDF6; border-radius:4px; padding:16px 18px; margin-bottom:22px; }
.au-ps h3 { margin:0 0 10px; font-size:17px; }
#au-ps-body { display:flex; gap:18px; align-items:center; flex-wrap:wrap; }
.au-ps-score { width:64px; height:64px; border-radius:50%; color:#fff; font-family:'Bricolage Grotesque',sans-serif; font-weight:800; font-size:24px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.au-ps-metrics { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:6px 18px; flex:1 1 300px; font-size:13.5px; }
.au-ps-metrics li { display:flex; justify-content:space-between; gap:10px; border-bottom:1px dashed #E3DDF6; padding:4px 0; }
.au-muted { color:#5A566E; font-size:14px; margin:0; }

.au-h3 { font-size:clamp(19px,2.2vw,23px); margin:26px 0 12px; }
.au-top { padding:0; margin:0; list-style:none; counter-reset:top; display:flex; flex-direction:column; gap:10px; }
.au-top li { counter-increment:top; background:#fff; border:1px solid #E3DDF6; border-left:4px solid var(--au-mid); border-radius:4px; padding:14px 16px 14px 50px; position:relative; }
.au-top li::before { content:counter(top); position:absolute; left:14px; top:14px; width:24px; height:24px; border-radius:50%; background:#191233; color:#fff; font-size:13px; font-weight:700; display:flex; align-items:center; justify-content:center; }
.au-top .au-top-fail { border-left-color:var(--au-bad); }
.au-top p { margin:6px 0 0; font-size:14.5px; line-height:1.55; color:#3E3A52; }
.au-chip { display:inline-block; font-size:12px; font-weight:700; background:#F1EEFA; color:#3E3A52; padding:2px 8px; border-radius:10px; margin-left:6px; vertical-align:middle; }
.au-fix { color:#2A2640 !important; }
.au-allgood { background:#E8F7EE; border:1px solid #B9E3C8; padding:14px; border-radius:4px; }

.au-group { background:#fff; border:1px solid #E3DDF6; border-radius:4px; margin-bottom:12px; overflow:hidden; }
.au-group h4 { margin:0; padding:12px 16px; background:#191233; color:#fff; font-size:15px; display:flex; justify-content:space-between; }
.au-group h4 span { color:#A88BFF; }
.au-check { display:flex; gap:12px; padding:12px 16px; border-top:1px solid #EEEAFA; }
.au-check:first-of-type { border-top:none; }
.au-icon { width:24px; height:24px; border-radius:50%; flex-shrink:0; color:#fff; font-size:13px; font-weight:800; display:flex; align-items:center; justify-content:center; margin-top:1px; }
.au-check-pass .au-icon { background:var(--au-good); }
.au-check-warn .au-icon { background:var(--au-mid); }
.au-check-fail .au-icon { background:var(--au-bad); }
.au-check-info .au-icon { background:var(--au-info); }
.au-check-body { flex:1; min-width:0; }
.au-check-head { display:flex; flex-wrap:wrap; gap:4px 8px; align-items:center; }
.au-check-head .au-chip { margin-left:0; }
.au-check-body p { margin:4px 0 0; font-size:14px; line-height:1.5; color:#3E3A52; word-break:break-word; }

.au-callout { margin-top:18px; background:#EEEAFA; border:1px solid #DCD4F2; border-radius:4px; padding:16px 18px; font-size:15px; line-height:1.6; }
.au-callout a { display:inline-block; margin-left:6px; font-weight:700; }

.au-label-dark { font-size:13px; font-weight:700; color:#2A2640; margin:0 0 6px !important; }
.au-services { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:2px 14px; margin-bottom:14px; }
.au-services .cc-check { font-size:14px; }

@media (max-width:600px) {
  .au-ring { width:120px; height:120px; }
  .au-ring-inner { width:92px; height:92px; }
  .au-ring-inner strong { font-size:34px; }
  .au-form-row .cc-btn { width:100%; }
}

/* Print / "Download PDF": only the report */
@media print {
  header, footer, .au-hero, .au-noprint, .au-actions, a[aria-label="WhatsApp"], .cc-mbar { display:none !important; }
  body { background:#fff !important; }
  .au-report { padding:0; background:#fff; }
  .au-summary, .au-cat, .au-ps, .au-group, .au-top li { break-inside:avoid; box-shadow:none; }
  .au-ring, .au-bar-fill, .au-icon, .au-ps-score, .au-group h4, .au-top li::before { -webkit-print-color-adjust:exact; print-color-adjust:exact; }
}
