:root { color-scheme:dark; --bg:#0c0e10; --surface:#141719; --line:#ffffff18; --muted:#a4abb3; --text:#eff1f3; --accent:#cbd8a4; }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--text); font:14px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:inherit; text-decoration:none; }
a:hover { text-decoration:underline; text-underline-offset:4px; }
button,input,textarea { font:inherit; }
:where(a,button,input,textarea,summary):focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.program-header,main,footer { width:min(1040px,calc(100% - 48px)); margin:auto; }
.program-header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px 0; border-bottom:1px solid var(--line); }
.scooby-brand { font-size:22px; font-weight:800; letter-spacing:-.04em; }
nav { display:flex; flex-wrap:wrap; gap:24px; font-size:12px; color:var(--muted); }
.program-intro { padding:36px 0 26px; }
h1 { font-size:clamp(28px,4vw,38px); letter-spacing:-.045em; line-height:1.2; margin:0 0 10px; font-weight:650; }
.program-intro>p { color:var(--muted); margin:0; font-size:15px; }
.program-terms { list-style:none; display:flex; flex-wrap:wrap; gap:10px 26px; padding:0; margin:20px 0 0; font-size:12px; color:var(--muted); }
.program-terms strong { color:var(--text); font-weight:600; }
.calculator-layout { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:32px; align-items:start; }
.calculator-inputs { min-width:0; }
h2 { font-size:17px; line-height:1.4; letter-spacing:-.02em; margin:0; font-weight:650; }
.section-heading,.summary-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.section-heading { padding:10px 0 18px; }
.section-heading>span,.summary-heading>span { color:var(--muted); font-size:11px; }
.product-columns,.product-row { display:grid; grid-template-columns:minmax(0,1fr) 74px 80px 90px; gap:14px; align-items:center; }
.product-columns { color:var(--muted); font-size:11px; padding:0 0 10px; }
.product-columns>*:nth-child(n+3),.unit-cell,.subtotal-cell { text-align:right; }
.product-row { border-top:1px solid var(--line); padding:16px 0; font-variant-numeric:tabular-nums; font-size:13px; }
.product-name a { font-weight:600; }
.product-name small { display:block; font-size:11px; color:var(--muted); margin-top:3px; }
.subtotal-cell { font-weight:600; overflow-wrap:anywhere; }
.unit-cell { color:var(--muted); }
input,textarea { width:100%; min-width:0; border:1px solid #ffffff29; border-radius:7px; background:#0d1012; color:var(--text); padding:9px 10px; font-variant-numeric:tabular-nums; }
input:invalid { border-color:#edaf8b; }
input { min-height:42px; }
.small { font-size:11px; line-height:1.6; }
.muted { color:var(--muted); }
#quantity-help { margin:4px 0 20px; }
.selling-options { border-top:1px solid var(--line); padding:16px 0; }
summary { cursor:pointer; font-size:12px; }
.selling-options summary span { margin-left:8px; color:var(--muted); font-size:11px; }
.selling-inputs { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:16px 0; }
label { display:block; margin-bottom:6px; font-size:11px; color:var(--muted); }
dl { margin:18px 0 0; font-size:12px; }
dl>div { display:flex; justify-content:space-between; gap:16px; padding:6px 0; }
dt { color:var(--muted); }
dd { margin:0; text-align:right; font-weight:600; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
#order-profit { color:var(--accent); }
#order-profit.negative { color:#edaf8b; }
.order-summary { padding:22px; background:var(--surface); border:1px solid var(--line); border-radius:14px; }
.order-total { display:block; font-size:36px; font-weight:650; letter-spacing:-.05em; line-height:1.3; margin-top:18px; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.currency-note { color:var(--muted); font-size:11px; margin:4px 0 0; }
progress { appearance:none; display:block; width:100%; height:4px; border:0; border-radius:4px; overflow:hidden; margin:16px 0 10px; background:#303437; }
progress::-webkit-progress-bar { background:#303437; }
progress::-webkit-progress-value { background:var(--accent); }
progress::-moz-progress-bar { background:var(--accent); }
.discount-help { color:var(--muted); font-size:11px; margin:0; }
.notice { font-size:11px; color:var(--accent); margin:14px 0; }
.notice.is-error { color:#edaf8b; }
.button { display:inline-flex; justify-content:center; align-items:center; min-height:43px; padding:10px 16px; border:1px solid #ffffff29; border-radius:8px; font-size:12px; font-weight:600; cursor:pointer; transition:background .15s,border-color .15s; }
.button:hover { text-decoration:none; border-color:var(--accent); }
.button:active { transform:translateY(1px); }
.primary { background:var(--accent); color:#1b2115; border-color:var(--accent); }
.primary:hover { background:#dce7bc; }
.secondary { background:transparent; color:var(--text); }
.button:disabled { opacity:.4; cursor:not-allowed; }
.order-summary .button { width:100%; margin-top:9px; }
.order-instruction { margin:12px 0 0; }
#copy-status:empty { display:none; }
#order-text-details { margin-top:14px; color:var(--muted); }
textarea { margin-top:12px; font-size:11px; resize:vertical; }
.media-pack { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:18px; margin-top:30px; padding:24px 0; border-top:1px solid var(--line); }
.media-pack h2 { font-size:15px; }
.media-pack p { color:var(--muted); font-size:12px; margin:5px 0 0; }
footer { display:flex; justify-content:space-between; gap:20px; padding:20px 0; border-top:1px solid var(--line); color:var(--muted); font-size:11px; }
.skip-link { position:absolute; top:-100px; left:12px; background:var(--accent); color:#151b10; padding:10px; z-index:10; }
.skip-link:focus { top:12px; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
@media(max-width:800px) { .calculator-layout { grid-template-columns:1fr; gap:16px; } .order-summary { max-width:none; } .program-intro { padding-top:28px; } }
@media(max-width:480px) {
 .program-header,main,footer { width:calc(100% - 32px); }
 .program-header { gap:10px; padding:18px 0; } .program-header nav { gap:10px; font-size:10px; } .scooby-brand { font-size:19px; }
 .program-header .scooby-emblem { width:25px; height:30px; }
 .program-terms { gap:8px 16px; font-size:11px; }
 .product-columns,.product-row { grid-template-columns:minmax(0,1fr) 58px 62px 64px; gap:7px; }
 .product-row { font-size:11px; padding:14px 0; } .product-name small { font-size:9px; } .product-columns { font-size:9px; } input { padding:8px 6px; }
 .section-heading>span { font-size:10px; } .selling-inputs { gap:12px; } .media-pack .button { width:100%; }
 footer nav { gap:16px; }
}
@media(prefers-reduced-motion:reduce) { .button { transition:none; } }
/* Regional pricing, visible profit and product downloads. */
.pricing-options { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
select { width:100%; min-width:0; min-height:42px; padding:9px 10px; border:1px solid #ffffff29; border-radius:7px; background:#0d1012; color:var(--text); font:inherit; font-size:12px; }
select:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
#market-note { margin:10px 0 22px; }
.order-summary .profit-totals { border-top:1px solid var(--line); padding-top:12px; }
.profit-totals #order-profit { font-size:20px; line-height:1.2; }
.order-instruction a { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
.existing-resellers { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; padding:20px 0 28px; }
.existing-resellers h2 { font-size:15px; }
.existing-resellers p { margin:5px 0 0; font-size:12px; color:var(--muted); }
#media-dialog { margin:auto; width:min(580px,calc(100% - 32px)); max-height:calc(100dvh - 32px); overflow:auto; padding:24px; border:1px solid #ffffff29; border-radius:16px; background:var(--surface); color:var(--text); }
#media-dialog::backdrop { background:#050709c9; }
#media-dialog header { display:flex; align-items:start; justify-content:space-between; gap:16px; }
#media-dialog h2 { font-size:21px; }
#media-dialog header p { font-size:12px; color:var(--muted); margin:7px 0 0; }
#close-media-pack { flex-shrink:0; width:40px; height:40px; border:1px solid var(--line); border-radius:8px; background:transparent; color:var(--text); font-size:25px; cursor:pointer; }
#media-dialog h3 { font-size:12px; color:var(--muted); margin:22px 0 10px; }
.media-links { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.media-links a { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px; min-height:44px; border:1px solid var(--line); border-radius:8px; font-size:12px; }
.media-links a:hover { background:#ffffff08; border-color:var(--accent); text-decoration:none; }
.media-links span { color:var(--accent); }
#media-dialog footer { width:100%; margin:22px 0 0; padding:18px 0 0; flex-wrap:wrap; gap:10px; }
#media-dialog footer .button { flex:1; }
@media(max-width:480px) { .pricing-options { grid-template-columns:1fr; gap:12px; } .existing-resellers .button { width:100%; } #media-dialog { padding:18px; } .media-links a { font-size:11px; padding:10px; } }
