@font-face { font-family:Manrope; src:url('/assets/fonts/manrope-ui.woff2') format('woff2'); font-style:normal; font-weight:400 800; font-display:swap; }
@font-face { font-family:'Space Grotesk'; src:url('/assets/fonts/spacegrotesk-ui.woff2') format('woff2'); font-style:normal; font-weight:400 700; font-display:swap; }
:root {
  --void:#131416; --ink:#f1f2ed; --muted:#adb0b4; --line:#36383d;
  --glass:#1c1e21; --glass-strong:#24272b; --cyan:#dbea84; --gold:#e6bd8f;
  --violet:#8acac7; --green:#a0d7b5; --surface:#1c1e21; --surface-alt:#26292d;
  --button-ink:#1b2112; --accent-soft:#2c3121; --secondary:#8acac7; --icon-filter:invert(1);
  --font-body:Manrope,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-display:'Space Grotesk',var(--font-body);
}
:root[data-theme="light"] {
  --void:#e9eae7; --ink:#24272b; --muted:#596065; --line:#c9ceca;
  --glass:#f2f3f0; --glass-strong:#e0e4df; --cyan:#465c13; --gold:#805726;
  --violet:#206b69; --green:#267046; --surface:#f2f3f0; --surface-alt:#dfe4df;
  --button-ink:#f7faef; --accent-soft:#e0e8ca; --secondary:#206b69; --icon-filter:none;
}
body, :root[data-theme="light"] body { background:var(--void); color:var(--ink); }
body { font-family:var(--font-body); font-size:15px; -webkit-font-smoothing:antialiased; }
::selection { background:var(--cyan); color:var(--button-ink); }
h1,h2,h3,h4,.brand,.studio-price,.admin-kpis strong { font-family:var(--font-display); }
h1,h2,h3,h4 { text-wrap:balance; }
button,input,select,textarea { font-family:var(--font-body); }
.visually-hidden { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
body *, body *::before, body *::after { letter-spacing:0; }
body::before, .ambient, .button::after, .brand::before { display:none; }
h1,h2,h3,h4,strong,button,label { font-weight:650; }
body p { line-height:1.6; }
a,button,input,select,textarea,summary { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid var(--cyan); outline-offset:4px; }
.skip-link { position:fixed; left:16px; top:-80px; z-index:100; background:var(--surface); padding:12px 20px; }
.skip-link:focus { top:12px; }
.site-header, :root[data-theme="light"] .site-header { background:var(--void); border-bottom:1px solid var(--line); box-shadow:none; backdrop-filter:none; padding:15px 32px; min-height:74px; gap:20px; }
.brand { display:inline-flex; align-items:center; gap:0; font-size:23px; font-weight:750; white-space:nowrap; }
.brand img { margin-right:10px; border-radius:5px; width:38px; height:38px; border:1px solid #5c523e; }
.brand span, :root[data-theme="light"] .brand span { color:var(--ink); text-shadow:none; }
.site-header nav { display:flex; align-items:center; gap:24px; }
.site-header nav a,.link-button,:root[data-theme="light"] nav a { font-size:14px; color:var(--ink); font-weight:550; }
.site-header nav a:hover { color:var(--cyan); }
.site-header nav a.button,:root[data-theme="light"] .site-header nav a.button { color:var(--button-ink); }
.button, :root[data-theme="light"] .button { display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:12px 20px; min-height:46px; background:var(--cyan); color:var(--button-ink); border:1px solid var(--cyan); border-radius:5px; box-shadow:none; font-size:14px; font-weight:700; animation:none; text-align:center; transition:background .18s ease,transform .18s ease,border-color .18s ease; }
.button-arrow { flex-shrink:0; }
:root[data-theme="light"] .button-arrow { filter:invert(1); }
.button:hover { filter:brightness(.93); transform:translateY(-1px); box-shadow:none; }
.button.ghost, :root[data-theme="light"] .button.ghost { background:transparent; color:var(--ink); border-color:var(--line); box-shadow:none; }
.button.small { min-height:40px; padding:9px 14px; }
button:disabled { cursor:not-allowed; opacity:.55; }
.site-header nav .theme-toggle,:root[data-theme="light"] .site-header nav .theme-toggle { background:transparent; color:var(--ink); border:1px solid var(--line); box-shadow:none; width:42px; height:42px; min-width:42px; min-height:42px; padding:10px; display:inline-flex; justify-content:center; align-items:center; flex:0 0 42px; border-radius:50%; }
.theme-toggle::before { display:none; }
.theme-toggle img { filter:var(--icon-filter); }
.theme-moon,:root[data-theme="light"] .theme-sun { display:none; }
:root[data-theme="light"] .theme-moon { display:block; }
.nav-toggle { display:none; }
.store-width { width:calc(100% - 64px); max-width:1240px; margin-inline:auto; }
.store-intro { display:flex; justify-content:space-between; align-items:end; gap:40px; padding-top:34px; padding-bottom:30px; }
.store-intro h1 { margin:5px 0 10px; font-size:80px; line-height:1.03; font-weight:700; }
.brand-stop { color:var(--cyan); }
.eyebrow { color:var(--cyan); font-size:11px; font-weight:750; text-transform:uppercase; }
.store-intro .eyebrow { display:flex; gap:10px; align-items:center; }
.store-intro .eyebrow::before { content:''; display:block; width:22px; height:3px; background:var(--cyan); }
.store-lead { margin:0; font-size:16px; color:var(--muted); }
.store-intro-note { flex:0 0 290px; font-size:13px; color:var(--muted); margin:0 0 3px; padding-left:22px; border-left:1px solid var(--line); }
.store-intro-note p { margin:9px 0 12px; }
.edition-label { font-size:10px; font-weight:750; color:var(--secondary); }
.store-intro-note a { display:inline-flex; align-items:center; gap:9px; color:var(--ink); font-weight:700; }
.store-intro-note img { filter:var(--icon-filter); }
.store-products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding-bottom:32px; }
.store-product { display:block; min-width:0; --product-accent:#dbea84; }
.product-hoodie { --product-accent:#9bd0cb; }
.product-hat { --product-accent:#e4bba1; }
.product-caption { display:flex; justify-content:space-between; align-items:center; gap:10px; background:var(--product-accent); color:#252a23; padding:11px 14px; border-radius:6px 6px 0 0; font-size:11px; font-weight:750; text-transform:uppercase; }
.product-caption img { transition:transform .22s ease; flex-shrink:0; }
.store-product:hover .product-caption img { transform:translate(2px,-2px); }
.store-product-image { position:relative; aspect-ratio:1.24; overflow:hidden; background:#e2e4df; border-radius:0 0 5px 5px; }
.store-product-image img { width:100%; height:100%; object-fit:cover; transition:transform .28s ease; }
.store-product:hover .store-product-image>img { transform:scale(1.035); }
.store-product-image>.product-image-cta { position:absolute; bottom:14px; right:14px; left:auto; background:#f1f2ed; color:#252a23; font-size:12px; font-weight:650; padding:9px 12px; border-radius:4px; display:flex; align-items:center; gap:10px; box-shadow:0 2px 8px #0000000d; }
.product-image-cta img { width:18px; height:18px; }
.store-product-heading { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:8px; margin-top:15px; }
.store-product-heading h2 { margin:0; font-size:28px; font-weight:600; }
.store-product-heading strong { font-size:15px; font-weight:550; color:var(--ink); }
.store-product>p { margin:5px 0 0; color:var(--muted); font-size:14px; }
.store-shipping-note { grid-column:1/-1; margin:0; color:var(--muted); font-size:12px; }
.store-assurances { border-block:1px solid var(--line); background:var(--surface); }
.store-assurances>div { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; padding-block:23px; font-size:12px; color:var(--ink); }
.store-assurances span { display:flex; align-items:center; gap:12px; }
.store-assurances img { filter:var(--icon-filter); opacity:.8; flex-shrink:0; }
.store-process,.store-memberships,.store-faq { padding-block:56px; border-bottom:1px solid var(--line); }
.section-title h2,.store-faq h2 { font-size:30px; line-height:1.2; }
.store-process .section-title>a,.store-faq a { font-size:14px; color:var(--cyan); text-decoration:underline; text-underline-offset:4px; }
.store-process-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px; padding-top:18px; }
.store-process-grid article { border-top:1px solid var(--line); padding-top:18px; }
.store-process-grid article>span { color:var(--secondary); font-size:28px; font-family:var(--font-display); }
.store-process-grid h3 { font-size:19px; margin:16px 0 8px; }
.store-process-grid p { color:var(--muted); font-size:14px; margin:0; }
.membership-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:28px; }
.membership { padding:28px; border:1px solid var(--line); border-radius:6px; background:var(--surface); border-top:3px solid var(--secondary); }
.membership-pro { border-top-color:var(--gold); }
.availability-label { display:inline-block; color:var(--muted); font-family:var(--font-body); font-size:10px; font-weight:600; border:1px solid var(--line); border-radius:3px; padding:4px 6px; vertical-align:middle; margin-left:7px; }
.membership-title { display:flex; justify-content:space-between; align-items:baseline; gap:16px; }
.membership-title h3 { font-size:25px; margin:0; }
.membership-title strong { font-size:28px; }
.membership-title small { font-size:13px; font-weight:400; margin-left:3px; color:var(--muted); }
.membership p,.membership li { font-size:14px; color:var(--muted); }
.membership ul { padding:0; line-height:1.7; margin-block:24px; list-style:none; }
.membership li { padding:7px 0 7px 26px; position:relative; }
.membership li::before { content:''; width:15px; height:15px; position:absolute; left:0; top:11px; background:var(--secondary); mask:url('/assets/icons/check.svg') center/contain no-repeat; }
.membership-availability { border-top:1px solid var(--line); padding-top:16px; }
.store-faq { display:grid; grid-template-columns:1fr 1.5fr; gap:64px; }
.store-faq summary { padding:20px 34px 20px 0; cursor:pointer; font-size:15px; font-weight:600; list-style:none; position:relative; }
.store-faq summary::-webkit-details-marker { display:none; }
.store-faq summary::after { content:''; position:absolute; right:0; top:22px; width:18px; height:18px; background:var(--secondary); mask:url('/assets/icons/plus.svg') center/contain no-repeat; transition:transform .2s ease; }
.store-faq details[open] summary::after { transform:rotate(45deg); }
.store-faq details { border-bottom:1px solid var(--line); }
.store-faq details p { margin:0 0 20px; color:var(--muted); font-size:14px; }
.site-footer,:root[data-theme="light"] .site-footer { display:block; padding:44px 0 24px; background:var(--surface); color:var(--muted); border-top:1px solid var(--line); }
.footer-grid { display:grid; grid-template-columns:1.6fr 1fr 1.2fr 1fr; gap:36px; }
.footer-brand p { font-size:13px; margin:16px 0; }
.footer-contact { font-size:12px; overflow-wrap:anywhere; }
.footer-grid nav { display:flex; flex-direction:column; align-items:start; gap:12px; }
.footer-grid nav h2 { font-size:13px; margin:8px 0 4px; color:var(--ink); }
.footer-grid nav a { font-size:12px; line-height:1.5; }
.footer-bottom { display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px; padding-top:24px; border-top:1px solid var(--line); margin-top:38px; font-size:11px; }
.footer-bottom nav { display:flex; gap:20px; flex-wrap:wrap; }
.site-footer a:hover { color:var(--ink); text-decoration:underline; }
.panel.narrow,.sidebar,.preview-lab,.design-path-panel,.generator,.admin-card,.checkout-review,.order-card,
:root[data-theme="light"] .panel.narrow,:root[data-theme="light"] .sidebar,:root[data-theme="light"] .preview-lab,:root[data-theme="light"] .generator,:root[data-theme="light"] .design-path-panel,:root[data-theme="light"] .admin-card,:root[data-theme="light"] .checkout-review,:root[data-theme="light"] .order-card { background:var(--surface); border-color:var(--line); box-shadow:none; color:var(--ink); }
.panel.narrow h1 { font-size:36px; line-height:1.15; }
.auth-panel { margin:48px auto 64px; }
.auth-links { display:flex; flex-wrap:wrap; justify-content:space-between; gap:16px; margin-top:22px; font-size:13px; color:var(--cyan); }
input,select,textarea,:root[data-theme="light"] input,:root[data-theme="light"] select,:root[data-theme="light"] textarea { background:var(--void); border:1px solid var(--line); color:var(--ink); border-radius:5px; box-shadow:none; font:inherit; min-height:44px; }
label,:root[data-theme="light"] label { color:var(--ink); font-size:13px; font-weight:550; }
input[type="color"] { min-height:38px; padding:4px; width:100%; }
input[type="range"] { accent-color:var(--cyan); min-height:24px; margin:0; width:100%; }
label output { color:var(--muted); font-size:12px; }
.field-help,.sidebar-help,.auth-copy { color:var(--muted); font-size:13px; line-height:1.6; }
.notice { max-width:1200px; margin:18px auto; padding:14px 20px; border-radius:5px; }
.workspace { width:calc(100% - 48px); max-width:1440px; margin:26px auto 56px; display:grid; grid-template-columns:250px minmax(0,1fr); gap:24px; }
.workspace>*,.control-grid>*,form>label { min-width:0; }
.studio-main { grid-template-columns:minmax(0,1fr); }
.studio-main>*,.preview-lab>* { min-width:0; }
.sidebar { position:sticky; top:98px; align-self:start; padding:20px; }
.sidebar h1 { font-size:30px; line-height:1.15; }
.studio-guidance { display:none; }
.preview-lab { grid-template-columns:280px minmax(0,1fr); padding:20px; gap:24px; align-items:start; }
.preview-controls h2 { font-size:23px; line-height:1.2; }
.product-preview-wrap,:root[data-theme="light"] .product-preview-wrap { min-height:0; display:flex; flex-direction:column; background:var(--void); border:1px solid var(--line); padding:16px; gap:12px; border-radius:5px; position:sticky; top:98px; overflow:visible; }
.product-preview,.product-preview.hoodie,.product-preview.hat { width:100%; max-width:600px; aspect-ratio:1; border-radius:4px; filter:none; background:#e2e4df; }
.preview-toolbar { display:flex; gap:4px; padding:3px; background:var(--surface); border:1px solid var(--line); border-radius:5px; }
.preview-toolbar button { padding:9px 12px; border:0; background:transparent; color:var(--muted); font-size:12px; border-radius:3px; cursor:pointer; }
.preview-toolbar button[aria-pressed="true"] { color:var(--ink); background:var(--surface-alt); }
.product-preview .print-safe-frame,.product-preview.hoodie .print-safe-frame,.product-preview.hat .print-safe-frame,
.product-preview .preview-print-zone,.product-preview.hoodie .preview-print-zone,.product-preview.hat .preview-print-zone { left:38%; top:37%; width:25%; height:auto; aspect-ratio:var(--print-ratio,.75); min-width:0; transform:none; border-radius:0; mix-blend-mode:normal; }
.product-preview.hoodie .print-safe-frame,.product-preview.hoodie .preview-print-zone { left:39%; top:38%; width:24%; }
.product-preview.hat .print-safe-frame,.product-preview.hat .preview-print-zone { left:40%; top:23%; width:23%; }
.product-preview .print-safe-frame { border:1px dashed #146951; box-shadow:none; z-index:4; }
.print-safe-frame span { display:none; }
.preview-print-zone { z-index:3; overflow:hidden; touch-action:none; }
.product-preview .preview-print-zone>[data-preview-art],.product-preview .preview-print-zone>[data-preview-copy] { display:none; }
.product-preview .preview-print-zone>.composite-preview { display:block; position:absolute; inset:0; width:100%; height:100%; opacity:1; object-fit:contain; pointer-events:none; }
.product-preview .preview-print-zone>.composite-preview[hidden] { display:none; }
.product-preview-wrap>.field-help { font-size:12px; margin:0; text-align:center; }
.swatch-row { flex-wrap:wrap; }
.swatch-row button { width:27px; height:27px; flex:0 0 27px; border-radius:50%; }
.quick-text-tools button,.prompt-tools button { border:1px solid var(--line); background:var(--surface-alt); color:var(--ink); font-weight:500; min-height:36px; border-radius:4px; }
.design-card small { overflow-wrap:anywhere; }
.generation-modal { background:var(--surface); border:1px solid var(--line); box-shadow:none; }
.generation-bar { overflow:hidden; background:var(--line); }
.generation-bar span.is-indeterminate { width:30%; background:var(--cyan); animation:progress-slide 1.5s ease-in-out infinite; }
@keyframes progress-slide { from { transform:translateX(-110%); } to { transform:translateX(440%); } }
.admin-hero h1 { font-size:38px; line-height:1.2; }
.admin-kpis strong { font-size:30px; }
.admin-card { border:0; border-top:1px solid var(--line); padding:28px 0; border-radius:0; }
.admin-card,.customer-orders,.seo-section,.style-gallery { min-width:0; contain-intrinsic-size:auto 0px auto 420px; }
.admin-grid>* { min-width:0; }
.admin-table-wrap { max-width:100%; overflow:auto; }
.admin-table { font-size:13px; }
.admin-nav { display:flex; gap:18px; flex-wrap:wrap; padding:16px 0; border-block:1px solid var(--line); margin-bottom:24px; font-size:14px; }
.admin-nav a { color:var(--cyan); }
.checkout-shell { align-items:start; }
.shipping-fields { border:0; padding:0; margin:0; min-width:0; }
.checkout-review h2 { font-size:25px; }
.checkout-preview img { object-fit:contain; }
.checkout-status { min-height:28px; }
.order-confirmed { border-left:3px solid var(--cyan); padding:18px; background:var(--surface-alt); margin-bottom:20px; }
/* Keep legacy surfaces in the shared palette without recoloring customer artwork. */
:root[data-theme] :is(.admin-kpis article,.queue-grid article,.health-grid article,.design-card,.order-card,.path-option,.checkout-safety,.checkout-timeline,.showcase-card,.launch-copy-grid article) { background:var(--surface); border-color:var(--line); box-shadow:none; color:var(--ink); }
:root[data-theme] :is(.quota,.readiness-panel,.prompt-coach,.auth-proof,.upload-checklist span,.checkout-proof-grid span,.mode-toggle) { background:transparent; border-color:var(--line); box-shadow:none; color:var(--ink); }
:root[data-theme] :is(.plan-pill,.chip,.prompt-chip,.status-pill) { background:var(--accent-soft); border-color:var(--line); color:var(--cyan); box-shadow:none; }
:root[data-theme] :is(.status-paid,.status-shipped,.status-fulfilled) { color:var(--green); background:var(--surface-alt); }
:root[data-theme] :is(.status-cancelled,.status-refunded,.status-on-hold) { color:var(--gold); background:var(--surface-alt); }
:root[data-theme] :is(.seo-feature-grid article,.seo-use-grid article,.content-page article) { border:0; border-top:1px solid var(--line); border-radius:0; background:transparent; box-shadow:none; padding:24px 0; }
:root[data-theme] :is(.style-grid article,.style-grid a,.auth-proof span) { background:var(--surface-alt); border-color:var(--line); color:var(--ink); box-shadow:none; }
:root[data-theme] :is(.design-card img,.empty-preview,.checkout-preview) { background:#e1e3df; color:#343a33; box-shadow:none; }
:root[data-theme] :is(.panel.narrow,.generator,.design-path-panel,.preview-lab) { border-radius:6px; }
:root[data-theme] :is(.content-page,.policy-page) { border:0; background:transparent; box-shadow:none; }
:root[data-theme] :is(.seo-section,.style-gallery,.quality-gate) { border:0; border-top:1px solid var(--line); border-radius:0; background:transparent; box-shadow:none; padding-block:36px; }
:root[data-theme] .seo-section { padding-inline:0; }
:root[data-theme] .panel.narrow.auth-panel { border-top:3px solid var(--secondary); padding:32px; }
.auth-panel .auth-copy { font-size:14px; margin-bottom:26px; }
.auth-panel form { gap:18px; }
.auth-panel .auth-proof { gap:8px; margin-top:26px; }
.auth-proof span { font-size:10px; font-weight:600; line-height:1.5; padding:8px; }
.auth-switch { border-top:1px solid var(--line); padding-top:22px; font-size:13px; }
.auth-switch a { color:var(--cyan); font-weight:700; }
.sidebar { scrollbar-width:thin; scrollbar-color:var(--line) transparent; }
.sidebar h1 { margin-top:16px; margin-bottom:18px; }
.sidebar .plan-pill { padding:5px 9px; font-size:10px; min-height:0; border-radius:4px; }
.sidebar .quota { border:0; border-block:1px solid var(--line); padding:15px 0; border-radius:0; display:flex; align-items:center; gap:15px; margin-block:18px; }
.quota strong { font-family:var(--font-display); font-size:32px; }
.quota span { font-size:12px; line-height:1.6; max-width:145px; color:var(--muted); }
.sidebar label { margin-bottom:13px; }
.sidebar select { margin-top:6px; }
.studio-price { background:transparent; border:0; padding:16px 0; color:var(--ink); font-size:19px; }
.preview-controls>label { display:block; margin-bottom:4px; }
.preview-controls h2 { font-size:22px; margin:14px 0 22px; }
.preview-controls .control-grid { gap:14px; margin-bottom:4px; }
.preview-controls .control-grid label { display:block; }
.preview-controls label>output { display:inline; float:right; font-size:11px; color:var(--muted); margin:0; font-variant-numeric:tabular-nums; }
.preview-controls input[type="range"] { display:block; margin-top:7px; clear:both; }
.preview-controls input,.preview-controls select { margin-top:6px; }
.quick-text-tools { margin:0 0 8px; gap:7px; }
.quick-text-tools button { font-size:10px; padding:8px; }
.preview-actions { display:flex; gap:6px; align-items:center; flex-wrap:wrap; margin:18px 0 12px; }
.preview-actions .button { font-size:11px; min-height:40px; padding:8px 10px; }
.button.icon-only { width:40px; height:40px; flex:0 0 40px; padding:10px; }
.control-icon { flex-shrink:0; filter:var(--icon-filter); }
.preview-toolbar { align-self:center; }
.preview-toolbar button { display:flex; align-items:center; justify-content:center; gap:7px; min-height:40px; font-weight:600; }
.preview-toolbar button[aria-pressed="true"] { background:var(--accent-soft); color:var(--cyan); }
.generator::before { background:var(--secondary); height:2px; }
.generator h2,.design-path-panel h2 { font-size:28px; line-height:1.2; }
:root[data-theme] .path-switch button { background:transparent; color:var(--muted); border-color:var(--line); box-shadow:none; border-radius:5px; }
:root[data-theme] .path-switch button.is-active { background:var(--accent-soft); color:var(--cyan); border-color:var(--cyan); }
:root[data-theme] .design-card:hover { box-shadow:none; border-color:var(--secondary); transform:translateY(-2px); }
:root[data-theme] th { background:var(--surface-alt); color:var(--muted); font-size:10px; font-weight:700; }
:root[data-theme] td { color:var(--ink); }
.admin-kpis article { border-top:2px solid var(--secondary); }
.admin-kpis strong { font-weight:600; font-variant-numeric:tabular-nums; }
.admin-table tbody tr:hover { background:var(--surface-alt); }
.admin-nav a { padding:8px 0; }
.seo-hero { gap:44px; }
.seo-hero h1 { font-size:48px; line-height:1.1; }
.seo-hero picture { transform:none; border-radius:6px; overflow:hidden; box-shadow:none; border:1px solid var(--line); }
.seo-hero p,.content-page p,.faq-list p { font-size:15px; line-height:1.8; }
.seo-section h2,.style-gallery h2 { font-size:30px; line-height:1.2; }
.section-title>p { color:var(--muted); font-size:13px; }
[id] { scroll-margin-top:96px; }
:root[data-theme] input:focus,:root[data-theme] select:focus,:root[data-theme] textarea:focus { border-color:var(--secondary); box-shadow:0 0 0 2px color-mix(in srgb,var(--secondary) 20%,transparent); outline:none; }
:root[data-theme] .button:focus-visible,:root[data-theme] .theme-toggle:focus-visible { outline:3px solid var(--secondary); outline-offset:4px; }
@media (hover:hover) {
  .store-product:hover .store-product-heading h2 { color:var(--cyan); }
  .site-header nav>a:not(.button):hover { text-decoration:underline; text-underline-offset:7px; text-decoration-color:var(--secondary); }
}
@media (max-width:1100px) {
  .workspace { grid-template-columns:220px minmax(0,1fr); gap:16px; }
  .preview-lab { grid-template-columns:minmax(0,1fr); }
  .product-preview-wrap { position:static; order:-1; }
  .product-preview { max-width:480px; }
}
@media (max-width:760px) {
  .site-header,:root[data-theme="light"] .site-header { padding:12px 20px; min-height:64px; flex-wrap:wrap; flex-direction:row; align-items:center; }
  .brand { font-size:21px; }
  .nav-toggle { display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; border:1px solid var(--line); border-radius:5px; background:var(--surface); margin-left:auto; }
  .nav-toggle img { filter:invert(1); }
  :root[data-theme="light"] .nav-toggle img { filter:none; }
  .site-header nav { display:none; flex:0 0 100%; align-items:stretch; gap:8px; flex-direction:column; padding:8px 0; }
  .site-header nav.is-open { display:flex; }
  .site-header nav>a { display:block; padding:12px 8px; }
  .site-header nav form { margin:0; }
  .store-width { width:calc(100% - 40px); }
  .store-intro { padding-top:28px; gap:14px; align-items:start; flex-direction:column; }
  .store-intro h1 { font-size:54px; }
  .store-lead { font-size:14px; max-width:330px; }
  .store-intro-note { display:none; }
  .store-products { gap:20px; grid-template-columns:1fr; }
  .store-product-image { aspect-ratio:1.24; }
  .store-product-heading h2 { font-size:23px; }
  .store-assurances>div { grid-template-columns:1fr 1fr; gap:14px; font-size:12px; }
  .store-process,.store-memberships,.store-faq { padding-block:36px; }
  .store-process-grid { grid-template-columns:1fr; gap:24px; }
  .section-title h2,.store-faq h2 { font-size:25px; }
  .membership-grid,.store-faq { grid-template-columns:1fr; gap:24px; }
  .membership { padding:22px; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:26px 20px; }
  .footer-brand { grid-column:1/-1; }
  .footer-bottom nav { gap:16px; }
  .workspace { width:calc(100% - 28px); grid-template-columns:minmax(0,1fr); margin-top:18px; }
  .sidebar { position:static; max-height:none; overflow:visible; }
  .sidebar .eyebrow,.sidebar .readiness-panel,.sidebar .upgrade { display:none; }
  .sidebar h1,.sidebar .plan-pill { display:inline-block; width:auto; margin:0 12px 12px 0; }
  .sidebar [data-checkout-form] { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
  .sidebar [data-checkout-form]>:not(label) { grid-column:1/-1; }
  .sidebar [data-checkout-form]>label:nth-of-type(3) { grid-column:1/-1; }
  .sidebar .quota { display:flex; gap:12px; align-items:center; }
  .sidebar h1 { font-size:28px; }
  .preview-lab { padding:14px; }
  .preview-controls { min-width:0; }
  .preview-controls h2 { font-size:24px; }
  .product-preview-wrap { padding:10px; }
  input,select,textarea { font-size:16px; }
  .auth-panel { margin-block:28px; width:calc(100% - 32px); }
  .panel.narrow h1 { font-size:29px; }
  .admin-hero h1 { font-size:30px; }
  .admin-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .admin-grid.two,.admin-grid.signup-grid { grid-template-columns:minmax(0,1fr); }
  .admin-kpis strong { font-size:26px; }
  .sidebar .quota { margin-block:10px 18px; }
  .sidebar h1 { margin-top:0; }
  .sidebar label { margin-bottom:0; }
  :root[data-theme] .panel.narrow.auth-panel { padding:24px; }
  .seo-hero h1 { font-size:36px; }
  .seo-section h2 { font-size:26px; }
  .generator h2,.design-path-panel h2 { font-size:25px; }
  .membership-title { flex-wrap:wrap; gap:12px; }
}
@media (max-width:360px) {
  .store-intro h1 { font-size:46px; }
  .store-intro .eyebrow { font-size:10px; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation-duration:.01ms !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}
