/* Sonic DIY Gig Profit Calculator — scoped under .sdgc so it can live inside existing site pages. */
.sdgc{--ink:#111;--cream:#F2EFE6;--lime:#C8FF32;--pink:#FF3EA5;--orange:#FF5A24;--blue:#376BFF;--midnight:#0D0A2B;--loss:#B00020;
  font-family:"Satoshi",Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream);line-height:1.45;box-sizing:border-box}
.sdgc *,.sdgc *::before,.sdgc *::after{box-sizing:inherit}
.sdgc .sdgc-wrap{max-width:1120px;margin:0 auto;padding:24px 16px 48px}
.sdgc h1,.sdgc h2,.sdgc legend{font-family:"Obviously","Arial Black",Impact,sans-serif;text-transform:uppercase;letter-spacing:-.01em;line-height:1}
.sdgc h1{font-size:clamp(2rem,6vw,3.6rem);margin:.2em 0 .1em;background:var(--ink);color:var(--cream);display:inline-block;padding:.12em .3em;transform:rotate(-1deg)}
.sdgc .sdgc-kicker{display:inline-block;background:var(--lime);border:2px solid var(--ink);padding:2px 8px;font-weight:700;font-size:.85rem;text-transform:uppercase}
.sdgc .sdgc-lede{font-size:1.1rem;max-width:62ch;margin:.8em 0 1.2em}
.sdgc .sdgc-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;align-items:start}
@media (max-width:820px){.sdgc .sdgc-grid{grid-template-columns:1fr}}
.sdgc fieldset{border:3px solid var(--ink);background:#fff;margin:0 0 18px;padding:14px 16px 6px;box-shadow:6px 6px 0 var(--ink)}
.sdgc legend{font-size:1.15rem;background:var(--pink);color:var(--ink);padding:4px 10px;border:2px solid var(--ink)}
.sdgc .sdgc-hint{font-size:.88rem;color:#333;margin:4px 0 10px}
.sdgc .sdgc-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px 14px}
.sdgc .sdgc-field{margin-bottom:12px}
.sdgc label{display:block;font-weight:700;font-size:.95rem;margin-bottom:4px}
.sdgc .sdgc-input{position:relative}
.sdgc .sdgc-input span{position:absolute;top:50%;transform:translateY(-50%);font-weight:700;color:#333;pointer-events:none}
.sdgc .sdgc-input .pre{left:10px}.sdgc .sdgc-input .suf{right:10px}
.sdgc input{width:100%;font:inherit;font-size:1rem;padding:10px 10px 10px 24px;border:2px solid var(--ink);border-radius:0;background:#fff;color:var(--ink);min-height:44px}
.sdgc input.nopre{padding-left:10px}
.sdgc input:focus{outline:3px solid var(--blue);outline-offset:2px}
.sdgc input[aria-invalid="true"]{border-color:var(--loss);background:#fff3f5}
.sdgc .sdgc-err{color:var(--loss);font-size:.85rem;font-weight:700;min-height:0;margin-top:3px}
.sdgc .sdgc-actions{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 18px}
.sdgc button,.sdgc .sdgc-btn{font:inherit;font-weight:800;text-transform:uppercase;border:3px solid var(--ink);padding:10px 16px;min-height:44px;cursor:pointer;background:var(--lime);color:var(--ink);text-decoration:none;display:inline-block}
.sdgc button.secondary{background:#fff}
.sdgc button:focus-visible,.sdgc .sdgc-btn:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.sdgc button:hover,.sdgc .sdgc-btn:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--ink)}
.sdgc .sdgc-results{position:sticky;top:16px;background:var(--midnight);color:#fff;border:3px solid var(--ink);padding:18px;box-shadow:8px 8px 0 var(--pink)}
@media (max-width:820px){.sdgc .sdgc-results{position:static}}
.sdgc .sdgc-results h2{font-size:1.4rem;margin:0 0 12px;color:var(--lime)}
.sdgc dl{margin:0;display:grid;grid-template-columns:1fr auto;gap:6px 12px;font-size:1.02rem}
.sdgc dt{color:#e8e6ff}.sdgc dd{margin:0;text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
.sdgc .sdgc-net{margin:16px 0 10px;padding:12px;border:3px solid #fff;background:var(--lime);color:var(--ink)}
.sdgc .sdgc-net.loss{background:#fff;color:var(--loss)}
.sdgc .sdgc-net strong{display:block;font-family:"Obviously","Arial Black",Impact,sans-serif;font-size:clamp(1.8rem,5vw,2.6rem);line-height:1.05}
.sdgc .sdgc-net small{font-weight:700;text-transform:uppercase;font-size:.8rem}
.sdgc .sdgc-be{background:rgba(255,255,255,.08);border-left:5px solid var(--orange);padding:10px 12px;margin:10px 0}
.sdgc .sdgc-disclaimer{font-size:.82rem;color:#d9d7f0;margin:12px 0 0}
.sdgc .sdgc-cta{margin-top:16px;padding-top:14px;border-top:2px dashed rgba(255,255,255,.4)}
.sdgc .sdgc-cta p{margin:0 0 8px;font-size:.92rem}
.sdgc .sdgc-proposed{display:inline-block;background:var(--orange);color:#111;font-size:.72rem;font-weight:800;padding:1px 6px;text-transform:uppercase;margin-bottom:6px}
.sdgc .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sdgc .sdgc-status{font-size:.85rem;color:var(--lime);min-height:1.2em}
@media (prefers-reduced-motion:reduce){.sdgc *{transition:none!important;transform:none!important}}
.sdgc .sdgc-jump{display:none}
@media (max-width:820px){.sdgc .sdgc-jump{display:block;position:sticky;bottom:0;z-index:5;background:var(--ink);color:var(--lime);font-weight:800;text-transform:uppercase;text-decoration:none;padding:12px 14px;margin:0 -16px 12px;border-top:3px solid var(--lime)}.sdgc .sdgc-jump:focus-visible{outline:3px solid var(--blue)}}
