/* AI Compute section stylesheet (Sep 26 2026). Own shell, own palette: graphite ink on cool paper with one electric accent,
   solid blocks and strong rules. Shares only the font families with the component site. Nothing here targets the main
   site's classes, and site.css never loads on these pages. */
:root{
  --ac-ink:#0b1220; --ac-ink-2:#3b475c; --ac-ink-3:#6b7689;
  --ac-paper:#ffffff; --ac-bg:#f3f5f9; --ac-line:#d6dce6; --ac-line-2:#e7ebf1;
  --ac-accent:#1f5eff; --ac-accent-2:#153fb3; --ac-accent-ink:#ffffff;
  --ac-dark:#0f172a; --ac-dark-2:#1c2740; --ac-good:#0f7a43; --ac-warn:#9a5b00; --ac-bad:#b42318;
  --ac-sans:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --ac-display:"Archivo",Helvetica,Arial,sans-serif;
  --ac-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --ac-wrap:1180px; --ac-gutter:16px; --ac-r:8px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--ac-bg);-webkit-text-size-adjust:100%}
body.ac{font-family:var(--ac-sans);font-size:16px;line-height:1.55;color:var(--ac-ink);background:var(--ac-bg);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%}
a{color:var(--ac-ink);text-decoration:underline;text-underline-offset:2px}
a:hover{color:var(--ac-accent)}
h1,h2,h3{font-family:var(--ac-display);line-height:1.15;letter-spacing:-.01em}
h1{font-size:clamp(28px,4vw,42px);font-weight:800}
h2{font-size:clamp(22px,2.6vw,28px);font-weight:700}
h3{font-size:18px;font-weight:700}
.ac-wrap{width:100%;max-width:var(--ac-wrap);margin:0 auto;padding:0 var(--ac-gutter)}
.ac-narrow{max-width:860px}
.ac-main{min-height:60vh;padding-bottom:48px}
.ac-muted{color:var(--ac-ink-3)}
.ac-small{font-size:14px;color:var(--ac-ink-2)}
.ac-num{text-align:right;font-variant-numeric:tabular-nums}
.ac-mono,.ac-mpn{font-family:var(--ac-mono);font-size:14px;font-weight:600;letter-spacing:.01em}
.ac-kicker{display:inline-block;font-family:var(--ac-mono);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ac-accent);margin-bottom:8px}
.ac-kicker-light{color:#9cc0ff}

/* header */
.ac-header{background:var(--ac-dark);color:#fff;border-bottom:4px solid var(--ac-accent);position:sticky;top:0;z-index:30}
.ac-head-row{display:flex;align-items:center;gap:20px;min-height:64px}
.ac-wordmark{font-family:var(--ac-display);font-weight:800;font-size:20px;color:#fff;text-decoration:none;white-space:nowrap}
.ac-wordmark span{display:inline-block;margin-left:10px;padding:2px 8px;background:var(--ac-accent);color:#fff;font-size:12px;letter-spacing:.06em;text-transform:uppercase;vertical-align:middle;border-radius:4px}
.ac-nav{display:flex;gap:4px;flex:1;flex-wrap:wrap}
.ac-nav a{color:#dbe3f2;text-decoration:none;padding:8px 10px;border-radius:6px;font-weight:500;font-size:15px}
.ac-nav a:hover,.ac-nav a[aria-current]{background:var(--ac-dark-2);color:#fff}
.ac-cartlink{color:#fff;text-decoration:none;font-weight:600;padding:8px 14px;border:2px solid #fff;border-radius:6px;white-space:nowrap}
.ac-cartlink:hover{background:#fff;color:var(--ac-dark)}
.ac-badge{display:inline-block;min-width:22px;margin-left:8px;padding:0 6px;background:var(--ac-accent);color:#fff;border-radius:11px;font-size:13px;text-align:center;line-height:22px}
.ac-menu{display:none;background:none;border:2px solid #fff;border-radius:6px;width:42px;height:38px;padding:8px;flex-direction:column;justify-content:space-between;cursor:pointer}
.ac-menu span{display:block;height:2px;background:#fff}
@media (max-width:900px){
  .ac-nav{display:none;position:absolute;left:0;right:0;top:64px;background:var(--ac-dark);padding:8px 16px 16px;flex-direction:column;border-bottom:4px solid var(--ac-accent)}
  .ac-nav.open{display:flex}
  .ac-menu{display:flex}
  .ac-wordmark span{display:none}
}

/* hero */
.ac-hero{background:linear-gradient(160deg,var(--ac-dark) 0%,#14203a 60%,#1b2a4d 100%);color:#fff;padding:56px 0 48px;border-bottom:1px solid var(--ac-line)}
.ac-hero h1{color:#fff;max-width:820px}
.ac-hero-lead{font-size:18px;max-width:760px;margin-top:16px;color:#dbe3f2}
.ac-hero-avail{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.ac-hero-avail span{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);padding:8px 12px;border-radius:6px;font-size:14px;color:#fff}
.ac-hero-cta{margin-top:26px;display:flex;flex-wrap:wrap;gap:10px}

/* buttons */
.ac-btn{display:inline-block;padding:10px 16px;border:2px solid var(--ac-ink);border-radius:6px;background:#fff;color:var(--ac-ink);font-weight:600;text-decoration:none;cursor:pointer;font-family:var(--ac-sans);font-size:15px;line-height:1.2}
.ac-btn:hover{background:var(--ac-ink);color:#fff}
.ac-btn-primary{background:var(--ac-accent);border-color:var(--ac-accent);color:#fff}
.ac-btn-primary:hover{background:var(--ac-accent-2);border-color:var(--ac-accent-2);color:#fff}
.ac-btn-light{background:transparent;border-color:#fff;color:#fff}
.ac-btn-light:hover{background:#fff;color:var(--ac-dark)}
.ac-btn-lg{padding:14px 22px;font-size:16px}
.ac-btn[disabled],.ac-btn:disabled{opacity:.5;cursor:not-allowed}

/* sections and grids */
.ac-sec{margin:36px 0}
.ac-sec>h2{margin-bottom:16px}
.ac-sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}
.ac-grid{display:grid;gap:14px}
.ac-grid-3{grid-template-columns:repeat(3,1fr)}
.ac-grid-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:960px){.ac-grid-4{grid-template-columns:repeat(2,1fr)}.ac-grid-3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.ac-grid-4,.ac-grid-3{grid-template-columns:1fr}}
.ac-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media (max-width:960px){.ac-tiles{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.ac-tiles{grid-template-columns:1fr}}
.ac-tile{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--ac-line);border-top:4px solid var(--ac-ink);border-radius:var(--ac-r);padding:18px;text-decoration:none;color:var(--ac-ink)}
.ac-tile:hover{border-top-color:var(--ac-accent);color:var(--ac-ink)}
.ac-tile-name{font-family:var(--ac-display);font-weight:700;font-size:19px}
.ac-tile-n{font-family:var(--ac-mono);font-size:12px;color:var(--ac-accent);text-transform:uppercase;letter-spacing:.06em}
.ac-tile-lead{font-size:14px;color:var(--ac-ink-2)}

/* cards */
.ac-card{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--ac-line);border-radius:var(--ac-r);padding:18px;text-decoration:none;color:var(--ac-ink);position:relative}
.ac-card:hover{border-color:var(--ac-ink);color:var(--ac-ink)}
.ac-card-kicker{font-family:var(--ac-mono);font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ac-ink-3)}
.ac-card-name{font-family:var(--ac-display);font-weight:700;font-size:17px;line-height:1.25}
.ac-card-desc{font-size:14px;color:var(--ac-ink-2);flex:1}
.ac-card-price{font-family:var(--ac-display);font-weight:800;font-size:22px;margin-top:6px}
.ac-card-price small{font-family:var(--ac-sans);font-weight:500;font-size:13px;color:var(--ac-ink-3)}
.ac-card-sub{font-size:13px;color:var(--ac-ink-3)}
.ac-card-cta{margin-top:10px;display:inline-block;align-self:flex-start;padding:8px 12px;background:var(--ac-ink);color:#fff;border-radius:6px;font-weight:600;font-size:14px}
.ac-card:hover .ac-card-cta{background:var(--ac-accent)}

/* product page */
.ac-crumbs{font-size:14px;color:var(--ac-ink-3);margin:18px 0 8px;display:flex;gap:8px;flex-wrap:wrap}
.ac-crumbs a{color:var(--ac-ink-2);text-decoration:none}
.ac-crumbs a:hover{color:var(--ac-accent)}
.ac-pagehead{margin:8px 0 20px}
.ac-pagehead p{max-width:760px;margin-top:10px;font-size:17px;color:var(--ac-ink-2)}
.ac-product{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:28px;align-items:start;margin-top:8px}
@media (max-width:900px){.ac-product{grid-template-columns:1fr}}
.ac-product-main h1{margin-bottom:6px}
.ac-mpnline{color:var(--ac-ink-2);margin-bottom:14px}
.ac-lead{font-size:17px;max-width:720px}
.ac-avail{display:flex;flex-direction:column;gap:6px;margin:18px 0;padding:14px 16px;background:#fff;border-left:5px solid var(--ac-good);border-radius:0 var(--ac-r) var(--ac-r) 0}
.ac-avail p{margin:0;font-size:15px}
.ac-specs{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--ac-line);border-radius:var(--ac-r);overflow:hidden;margin:6px 0 10px}
.ac-specs th,.ac-specs td{padding:10px 14px;border-bottom:1px solid var(--ac-line-2);text-align:left;vertical-align:top;font-size:15px}
.ac-specs th{width:38%;color:var(--ac-ink-2);font-weight:500;background:var(--ac-bg)}
.ac-specs tr:last-child th,.ac-specs tr:last-child td{border-bottom:0}
.ac-product-side{position:sticky;top:84px}
.ac-price{background:#fff;border:2px solid var(--ac-ink);border-radius:var(--ac-r);padding:20px}
.ac-price-lead{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:12px}
.ac-from{font-size:14px;color:var(--ac-ink-3);text-transform:uppercase;letter-spacing:.06em;font-family:var(--ac-mono)}
.ac-big{font-family:var(--ac-display);font-weight:800;font-size:30px;letter-spacing:-.01em}
.ac-unit{font-size:14px;color:var(--ac-ink-3);flex-basis:100%}
.ac-tiers{width:100%;border-collapse:collapse;margin:6px 0 10px;font-size:15px}
.ac-tiers th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ac-ink-3);padding:6px 0;border-bottom:2px solid var(--ac-ink)}
.ac-tiers th:last-child{text-align:right}
.ac-tiers td{padding:8px 0;border-bottom:1px solid var(--ac-line-2)}
.ac-tiers td span{font-size:12px;color:var(--ac-ink-3)}
.ac-minline{font-size:14px;color:var(--ac-ink-2);margin:8px 0 12px}
.ac-add{display:flex;flex-wrap:wrap;gap:10px;align-items:end}
.ac-add label{display:flex;flex-direction:column;font-size:13px;color:var(--ac-ink-2);gap:4px}
.ac-add input{width:120px;padding:10px;border:2px solid var(--ac-ink);border-radius:6px;font-size:16px;font-family:var(--ac-mono)}
.ac-add-note{flex-basis:100%;font-size:14px;color:var(--ac-good);min-height:1.2em}
.ac-add-note.bad{color:var(--ac-bad)}

/* steps, prose, faq */
.ac-steps ol{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 0 18px}
@media (max-width:900px){.ac-steps ol{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.ac-steps ol{grid-template-columns:1fr}}
.ac-steps li{background:#fff;border:1px solid var(--ac-line);border-radius:var(--ac-r);padding:18px}
.ac-steps li span{display:inline-block;width:32px;height:32px;line-height:32px;text-align:center;background:var(--ac-ink);color:#fff;border-radius:16px;font-family:var(--ac-display);font-weight:800;margin-bottom:10px}
.ac-steps li p{font-size:15px}
.ac-prose p{max-width:760px;margin:10px 0;font-size:16px}
.ac-prose ol,.ac-prose ul{margin:10px 0 10px 22px;max-width:760px}
.ac-about{background:#fff;border:1px solid var(--ac-line);border-left:6px solid var(--ac-ink);border-radius:var(--ac-r);padding:20px 24px}
.ac-faq h2{margin-bottom:10px}
.ac-faq .faq-q{margin-top:16px;font-size:17px}
.ac-faq .faq-a p{max-width:760px;margin:6px 0;color:var(--ac-ink-2)}

/* cart, checkout, forms */
.ac-cart,.ac-checkout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:28px;align-items:start}
@media (max-width:900px){.ac-cart,.ac-checkout{grid-template-columns:1fr}}
.ac-lines{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--ac-line);border-radius:var(--ac-r);overflow:hidden}
.ac-lines th,.ac-lines td{padding:12px 14px;border-bottom:1px solid var(--ac-line-2);text-align:left;vertical-align:top;font-size:15px}
.ac-lines th{background:var(--ac-bg);font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ac-ink-3)}
.ac-lines td.ac-num,.ac-lines th.ac-num{text-align:right}
.ac-lines input[type=number]{width:96px;padding:8px;border:2px solid var(--ac-ink);border-radius:6px;font-family:var(--ac-mono);font-size:15px}
.ac-lines .ac-line-bad{color:var(--ac-bad);font-size:13px;display:block;margin-top:4px}
.ac-lines .ac-line-tier{color:var(--ac-ink-3);font-size:13px;display:block;margin-top:4px}
.ac-remove{background:none;border:0;color:var(--ac-ink-3);text-decoration:underline;cursor:pointer;font-size:13px;padding:0;font-family:var(--ac-sans)}
.ac-summary{background:#fff;border:2px solid var(--ac-ink);border-radius:var(--ac-r);padding:20px}
.ac-summary-sticky{position:sticky;top:84px}
.ac-summary h2{font-size:20px;margin-bottom:12px}
.ac-sum{width:100%;border-collapse:collapse;margin-bottom:12px}
.ac-sum td{padding:6px 0;border-bottom:1px solid var(--ac-line-2);font-size:15px}
.ac-sum td:last-child{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.ac-sum tr.ac-total td{font-weight:700;font-size:17px;border-bottom:0;padding-top:10px}
.ac-sum tr.ac-due td{background:var(--ac-bg);font-weight:700}
.ac-rule{margin:8px 0;padding:10px 12px;border-radius:6px;font-size:14px;background:#fff4e5;color:var(--ac-warn);border:1px solid #f3d9a4}
.ac-rule.bad{background:#fdecea;color:var(--ac-bad);border-color:#f2b8b3}
.ac-rule.good{background:#e8f6ee;color:var(--ac-good);border-color:#b6e2c8}
.ac-form fieldset{border:1px solid var(--ac-line);background:#fff;border-radius:var(--ac-r);padding:18px 18px 8px;margin-bottom:18px;display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
@media (max-width:640px){.ac-form fieldset{grid-template-columns:1fr}}
.ac-form legend{font-family:var(--ac-display);font-weight:700;font-size:18px;padding:0 6px}
.ac-field{display:flex;flex-direction:column;gap:5px;margin-bottom:8px}
.ac-field.ac-wide,.ac-form .ac-check,.ac-form .ac-notice,.ac-form .ac-form-err,.ac-form button,.ac-form .ac-small,.ac-form .ac-turnstile{grid-column:1 / -1}
.ac-field label{font-size:14px;font-weight:600}
.ac-req{font-weight:400;color:var(--ac-ink-3);font-size:12px}
.ac-field input,.ac-field select,.ac-field textarea{padding:10px 12px;border:2px solid var(--ac-line);border-radius:6px;font-size:16px;font-family:var(--ac-sans);background:#fff;width:100%}
.ac-field input:focus,.ac-field select:focus,.ac-field textarea:focus{border-color:var(--ac-accent);outline:none}
.ac-field.invalid input,.ac-field.invalid select{border-color:var(--ac-bad)}
.ac-hint{font-size:13px;color:var(--ac-ink-3)}
.ac-check{display:flex;gap:10px;align-items:flex-start;font-size:15px;margin:4px 0 10px}
.ac-check input{margin-top:4px}
.ac-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.ac-notice{padding:12px 14px;border-radius:6px;background:#fff4e5;border:1px solid #f3d9a4;color:var(--ac-warn);font-size:14px}
.ac-notice.bad{background:#fdecea;border-color:#f2b8b3;color:var(--ac-bad)}
.ac-form-err{color:var(--ac-bad);font-weight:600}
.ac-terms{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--ac-line);margin:14px 0 8px;font-size:15px}
.ac-terms caption{text-align:left;font-family:var(--ac-display);font-weight:700;padding:0 0 8px}
.ac-terms th,.ac-terms td{padding:9px 12px;border-bottom:1px solid var(--ac-line-2);text-align:left}
.ac-terms th{background:var(--ac-bg);font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--ac-ink-3)}
.ac-terms-block{margin-top:20px}
.ac-terms-block p{margin:8px 0}
.ac-done{background:#fff;border:2px solid var(--ac-good);border-radius:var(--ac-r);padding:24px;margin-top:20px}

/* order page */
.ac-order{background:#fff;border:1px solid var(--ac-line);border-radius:var(--ac-r);padding:24px}
.ac-order h2{font-size:20px;margin:18px 0 8px}
.ac-order .ac-status{display:inline-block;padding:4px 10px;border-radius:12px;background:var(--ac-bg);font-family:var(--ac-mono);font-size:13px}
.ac-order .ac-instr{padding:14px 16px;background:#eef3ff;border-left:5px solid var(--ac-accent);margin:14px 0;border-radius:0 6px 6px 0}

/* admin */
.ac-admin table{width:100%;border-collapse:collapse;background:#fff;font-size:14px}
.ac-admin th,.ac-admin td{padding:8px 10px;border-bottom:1px solid var(--ac-line-2);text-align:left;vertical-align:top}
.ac-admin th{background:var(--ac-bg);font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.ac-admin .ac-flag{display:inline-block;padding:2px 8px;border-radius:10px;background:#fff4e5;color:var(--ac-warn);font-size:12px;margin-right:4px}
.ac-admin .ac-flag.bad{background:#fdecea;color:var(--ac-bad)}
.ac-admin select,.ac-admin button,.ac-admin input{font-size:14px;padding:6px 8px;border:1px solid var(--ac-line);border-radius:4px;background:#fff}
.ac-admin details{margin-top:6px}
.ac-admin pre{white-space:pre-wrap;font-size:12px;background:var(--ac-bg);padding:8px;border-radius:4px}

/* footer */
.ac-footer{background:var(--ac-dark);color:#dbe3f2;margin-top:40px;padding:36px 0 40px;border-top:6px solid var(--ac-accent)}
.ac-foot-grid{display:grid;grid-template-columns:1.1fr 1.4fr .9fr;gap:28px}
@media (max-width:900px){.ac-foot-grid{grid-template-columns:1fr}}
.ac-foot-brand{font-family:var(--ac-display);font-weight:800;font-size:20px;color:#fff;margin-bottom:8px}
.ac-footer address{font-style:normal;line-height:1.6}
.ac-footer a{color:#fff}
.ac-foot-legal{margin-top:10px;font-size:13px;color:#9aa8c2}
.ac-foot-avail p{margin:0 0 8px;font-size:14px}
.ac-foot-avail b{color:#fff}
.ac-foot-links{display:flex;flex-direction:column;gap:8px;font-size:15px}

/* unified cart (Sep 26 2026) */
.ac-add-config{flex-direction:column;align-items:stretch}
.ac-add-config label.ac-wide{width:100%}
.ac-add-config select,.ac-add-config textarea{width:100%;padding:10px;border:2px solid var(--ac-line);border-radius:6px;font-size:15px;font-family:var(--ac-sans);background:#fff}
.ac-add-config select:focus,.ac-add-config textarea:focus{border-color:var(--ac-accent);outline:none}
.ac-add-config input{width:120px}
.ac-cart-h{font-size:20px;margin:18px 0 8px}
.ac-line-notes{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--ac-ink-2);margin-top:6px}
.ac-line-notes textarea{width:100%;max-width:520px;padding:8px;border:1px solid var(--ac-line);border-radius:6px;font-family:var(--ac-sans);font-size:14px}
.ac-admin-lines{margin-bottom:6px}
.ac-admin-lines td{font-size:13px;padding:4px 6px}
.ac-pricetable td,.ac-pricetable th{font-size:15px}
.ac-compare th{width:auto}
.ac-compare thead th{background:var(--ac-bg);font-family:var(--ac-display);font-size:16px}
.ac-answers{margin:8px 0 0 22px}
.ac-answers li{margin:6px 0;font-size:16px}
