@font-face { font-family:'Geist'; src:url('/product-site/fonts/Geist-Variable.woff2') format('woff2'); font-weight:100 900; font-display:swap; }
@font-face { font-family:'Noto Sans SC'; src:url('/fonts/noto-sc.woff2') format('woff2'); font-weight:100 900; font-display:swap; }
@font-face { font-family:'Sora'; src:url('/product-site/fonts/Sora-Variable.ttf') format('truetype'); font-weight:100 800; font-display:swap; }
body.product-site { --theme-bg:#fafafa; --theme-ink:#171717; --theme-muted:#666; --theme-line:#eaeaea; --theme-surface:#fff; --theme-font:'Geist','Noto Sans SC','Microsoft YaHei',sans-serif; --theme-body-size:14px; --theme-button:#171717; --theme-button-text:#fff; --theme-button-radius:6px; --gutter:clamp(24px,3.2vw,64px); --ps-max:1440px; margin:0; min-width:280px; background:var(--theme-bg); color:var(--theme-ink); font-family:var(--theme-font); color-scheme:light; -webkit-font-smoothing:antialiased; }
.product-site [hidden] { display:none!important; }
.product-site :where(.ps-home,.ps-container,.ps-header,.ps-footer) :where(h1,h2,h3,p,figure,dl,dd) { margin:0; }
.product-site :where(.ps-home,.ps-container,.ps-header,.ps-footer) a { color:inherit; text-decoration:none; }
.product-site :is(a,button,summary):focus-visible { outline:2px solid #171717; outline-offset:4px; }
.product-site :is(h1,h2,main)[tabindex='-1']:focus { outline:none; }
.product-site .ps-container { box-sizing:border-box; width:min(var(--ps-max),calc(100% - 2 * var(--gutter))); margin-inline:auto; }
.product-site .ps-skip { position:fixed; z-index:50; top:-100px; left:24px; padding:12px 20px; background:#171717; color:#fff; }
.product-site .ps-skip:focus { top:8px; }
.product-site .ps-header { position:sticky; top:0; z-index:30; display:flex; align-items:center; gap:32px; box-sizing:border-box; min-height:64px; padding:10px 24px; background:rgb(250 250 250 / 97%); border-bottom:1px solid transparent; }
.product-site .ps-header[data-navigation-hidden='true'] { border-bottom-color:var(--theme-line); }
.product-site .ps-brand { display:inline-flex; align-items:center; min-height:44px; font-size:21px; }
.product-site .ps-wordmark { font-family:'Sora','Noto Sans SC',sans-serif; font-weight:700; font-synthesis:none; letter-spacing:-.04em; line-height:1.1; white-space:nowrap; }
.product-site .ps-brand-dot { display:inline-block; width:.17em; min-width:4px; aspect-ratio:1; margin-left:.075em; border-radius:50%; background:#e7352b; vertical-align:.025em; }
.product-site .ps-nav { display:flex; align-items:center; gap:8px; }
.product-site .ps-nav a { display:flex; align-items:center; min-height:40px; padding-inline:12px; font-size:14px; color:#666; border-radius:6px; transition:background-color 160ms,color 160ms; }
.product-site .ps-nav a:hover { color:#171717; background:#f0f0f0; }
.product-site .ps-nav a[aria-current] { color:#171717; }
.product-site .ps-navigation-actions { display:flex; align-items:center; margin-left:auto; gap:16px; }
.product-site .ps-nav-download { display:inline-flex; align-items:center; justify-content:center; gap:10px; box-sizing:border-box; min-height:34px; padding:0 14px; border:1px solid #171717; border-radius:6px; color:#fff; background:#171717; font-size:14px; font-weight:500; transition:background-color 160ms; }
.product-site .ps-nav-download:hover { background:#383838; }
.product-site .ps-menu-toggle { display:none; }
@media (min-width:1600px) {
  .product-site .ps-header { top:16px; display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:16px; width:calc(100% - 48px); min-height:52px; margin:16px auto 8px; padding:4px 24px; border:0; border-radius:32px; background:rgb(210 210 210 / 22%); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); transition:transform 240ms cubic-bezier(.2,.7,.2,1); }
  .product-site .ps-header[data-navigation-hidden='true'] { transform:translateY(calc(-100% - 32px)); pointer-events:none; }
  .product-site .ps-brand { justify-self:start; font-size:22px; }
  .product-site .ps-nav { justify-self:center; justify-content:center; gap:0; }
  .product-site .ps-nav a { min-height:44px; padding:0 14px; font-size:16px; border-radius:22px; background:transparent; }
  .product-site .ps-nav a:hover { background:transparent; }
  .product-site .ps-navigation-actions { justify-self:end; margin-left:0; gap:6px; }
  .product-site .ps-nav-download { min-height:36px; padding:0 18px; gap:13px; border:0; border-radius:22px; background:#202020; font-size:13px; }
}
.product-site .ps-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-top:30px; }
.product-site .ps-button { display:inline-flex; align-items:center; justify-content:center; gap:14px; box-sizing:border-box; min-height:44px; padding:0 20px; border:1px solid #171717; border-radius:6px; background:#171717; color:#fff; font:inherit; font-size:14px; font-weight:500; line-height:1.5; text-decoration:none; transition:background-color 160ms,border-color 160ms; }
.product-site .ps-button:hover { background:#383838; border-color:#383838; }
.product-site .ps-button-secondary { background:#fff; color:#171717; border-color:#e8e8e8; }
.product-site .ps-button-secondary:hover { background:#f1f1f1; border-color:#ddd; }
.product-site .ps-button-unavailable,.product-site .ps-button-unavailable:hover { background:#f5f5f5; color:#888; border-color:#e5e5e5; cursor:not-allowed; }
.product-site .ps-availability { font-size:13px; line-height:1.8; color:#777; }
.product-site .ps-back,.product-site .ps-text-link { display:inline-flex; align-items:center; min-height:44px; gap:20px; font-size:14px; }
.product-site .ps-eyebrow { font-size:12px; color:#777; line-height:1.7; }
.product-site .ps-page-heading { padding-block:72px 48px; }
.product-site .ps-page-heading h1 { font-size:48px; font-weight:400; line-height:1.2; letter-spacing:-.045em; }
.product-site .ps-empty { padding-block:96px; min-height:40vh; }
.product-site .ps-empty h1 { font-size:36px; font-weight:400; letter-spacing:-.04em; }
.product-site .ps-empty p { font-size:16px; color:#666; margin-block:20px 28px; }
.product-site .ps-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; box-sizing:border-box; width:100%; padding:32px var(--gutter); border-top:1px solid var(--theme-line); color:#777; font-size:13px; }
.product-site .ps-footer-separator { margin-inline:12px; color:#ccc; }
.product-site .ps-footer nav { display:flex; gap:28px; align-items:center; }
.product-site .ps-footer a { min-height:32px; display:inline-flex; align-items:center; }
.product-site .ps-footer a:hover { color:#171717; }
.product-site .ps-preview-tools { width:100%; font-size:12px; color:#888; }
.product-site .ps-preview-tools summary { cursor:pointer; width:fit-content; min-height:24px; }
.product-site .ps-preview-tools p { line-height:1.8; margin-block:12px; }
.product-site .ps-preview-tools a { margin-right:24px; text-decoration:underline; text-underline-offset:4px; }
.product-site .product-site-loading { width:min(1040px,calc(100% - 2 * var(--gutter))); min-height:40vh; margin:80px auto; font-size:14px; line-height:1.8; color:#666; }
@media (max-width:767px) {
  body.product-site[data-menu-open='true'] { overflow:hidden; }
  body.product-site { --gutter:24px; }
  .product-site .ps-header { padding:8px 24px; min-height:64px; gap:16px; border-bottom-color:var(--theme-line); }
  .product-site .ps-brand { font-size:20px; }
  .product-site .ps-nav { position:fixed; inset:64px 0 0; display:flex; flex-direction:column; align-items:stretch; gap:0; padding:20px 24px; background:#fff; visibility:hidden; opacity:0; pointer-events:none; }
  .product-site .ps-header[data-menu-open='true'] .ps-nav { visibility:visible; opacity:1; pointer-events:auto; }
  .product-site .ps-nav a { min-height:56px; padding:0; font-size:22px; border-radius:0; }
  .product-site .ps-nav-download { min-height:32px; padding-inline:12px; font-size:12px; }
  .product-site .ps-nav-download svg { display:none; }
  .product-site .ps-navigation-actions { gap:12px; }
  .product-site .ps-menu-toggle { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; width:32px; height:44px; padding:0; border:0; background:transparent; cursor:pointer; }
  .product-site .ps-menu-toggle span { width:18px; height:1px; background:#171717; transition:transform 160ms; }
  .product-site .ps-menu-toggle[aria-expanded='true'] span:first-child { transform:translateY(3.5px) rotate(45deg); }
  .product-site .ps-menu-toggle[aria-expanded='true'] span:last-child { transform:translateY(-3.5px) rotate(-45deg); }
  .product-site .ps-footer { font-size:12px; padding-block:28px; gap:16px; }
  .product-site .ps-footer nav { gap:20px; }
  .product-site .ps-page-heading { padding-block:40px 32px; }
  .product-site .ps-page-heading h1 { font-size:32px; }
}

/* Download and documentation: quiet surfaces, readable columns, and fine rules. */
.product-site .ps-download-page { min-height:calc(100svh - 190px); padding-bottom:96px; }
.product-site .ps-download-page .ps-page-heading { padding-block:80px 48px; }
.product-site .ps-download-page .ps-page-heading h1 { font-size:48px; font-weight:500; line-height:1.14; letter-spacing:-.04em; }
.product-site .ps-download-layout { display:grid; grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr); gap:28px 80px; align-items:start; padding-top:48px; border-top:1px solid #eaeaea; }
.product-site :is(.ps-download-package,.ps-installation) { box-sizing:border-box; min-width:0; background:transparent; border:0; border-radius:0; box-shadow:none; }
.product-site .ps-download-package { display:grid; grid-template-columns:40px minmax(0,1fr); align-items:center; gap:28px 20px; padding:0; }
.product-site .ps-package-symbol { width:40px; height:40px; color:#171717; }
.product-site .ps-package-symbol svg { display:block; width:100%; height:100%; }
.product-site .ps-package-info { min-width:0; overflow-wrap:anywhere; }
.product-site .ps-package-info h2 { font-size:28px; font-weight:500; line-height:1.3; letter-spacing:-.035em; }
.product-site .ps-package-info p { margin-top:10px; font-size:14px; line-height:1.8; color:#666; }
.product-site .ps-package-action { grid-column:1/-1; padding-top:12px; }
.product-site .ps-package-action .ps-button { width:100%; max-width:360px; min-width:0; min-height:44px; border-radius:6px; font-size:14px; }
.product-site .ps-package-action .ps-button-unavailable { background:#ededed; border-color:#eaeaea; color:#707070; }
.product-site .ps-installation { grid-column:2; grid-row:1/span 2; padding:0 0 0 64px; border-left:1px solid #eaeaea; }
.product-site .ps-installation h2 { font-size:28px; font-weight:500; line-height:1.3; letter-spacing:-.035em; }
.product-site .ps-installation ol { display:grid; counter-reset:installation; margin:24px 0 0; padding:0; list-style:none; font-size:15px; line-height:1.85; color:#666; }
.product-site .ps-installation li { display:grid; grid-template-columns:28px minmax(0,1fr); gap:16px; padding-block:22px; border-top:1px solid #eaeaea; }
.product-site .ps-installation li::before { counter-increment:installation; content:counter(installation,decimal-leading-zero); color:#888; font-size:13px; line-height:2.1; font-variant-numeric:tabular-nums; }
.product-site .ps-installation li:last-child { padding-bottom:0; }
.product-site .ps-download-links { grid-column:1; grid-row:2; display:flex; flex-direction:column; gap:0; max-width:360px; padding:0; }
.product-site .ps-download-links a { display:flex; justify-content:space-between; align-items:center; gap:20px; min-height:48px; font-size:14px; color:#666; transition:color 160ms ease; }
.product-site .ps-download-links a:hover { color:#171717; text-decoration:underline; text-underline-offset:4px; }

.product-site .ps-docs { padding-block:64px 96px; }
.product-site .ps-docs-layout { display:grid; grid-template-columns:220px minmax(0,1fr); gap:80px; }
.product-site .ps-docs-sidebar { position:sticky; top:104px; align-self:start; min-width:0; }
.product-site .ps-docs-label { display:inline-flex; align-items:center; min-height:28px; font-size:16px; font-weight:500; letter-spacing:-.02em; }
.product-site .ps-docs-search { display:flex; align-items:center; gap:9px; box-sizing:border-box; min-height:44px; padding:0 12px; margin-block:20px 32px; border:1px solid #eaeaea; border-radius:6px; background:#fff; transition:border-color 160ms ease,box-shadow 160ms ease; }
.product-site .ps-docs-search:focus-within { border-color:#a1a1a1; box-shadow:0 0 0 2px rgb(0 0 0 / 6%); }
.product-site .ps-docs-search svg { flex:none; width:16px; height:16px; fill:none; stroke:#666; stroke-width:1.4; }
.product-site .ps-docs-search input { min-width:0; width:100%; border:0; padding:10px 0; outline:none; background:transparent; color:#171717; font:inherit; font-size:14px; }
.product-site .ps-docs-search input::placeholder { color:#707070; }
.product-site .ps-docs-mobile { display:none; }
.product-site .ps-docs-sidebar nav > section + section { margin-top:28px; }
.product-site .ps-docs-sidebar h2 { margin:0 0 10px; font-size:13px; font-weight:500; line-height:1.6; color:#171717; }
.product-site .ps-docs-sidebar nav section > div { border-left:1px solid #eaeaea; }
.product-site .ps-docs-sidebar nav a { display:flex; align-items:center; box-sizing:border-box; min-height:44px; padding:8px 14px; border-left:1px solid transparent; font-size:14px; line-height:1.6; color:#666; transition:color 160ms ease,background-color 160ms ease; }
.product-site .ps-docs-sidebar nav a:hover { color:#171717; background:#f2f2f2; }
.product-site .ps-docs-sidebar nav [aria-current] { border-left-color:#171717; background:#f2f2f2; color:#171717; }
.product-site .ps-docs-help { display:flex; align-items:center; justify-content:space-between; min-height:44px; margin-top:32px; padding-top:8px; border-top:1px solid #eaeaea; font-size:13px; color:#666; }
.product-site .ps-docs-help:hover { color:#171717; }
.product-site .ps-docs-search-status { margin-top:16px; font-size:13px; line-height:1.7; color:#666; }
.product-site .ps-docs-search-status:empty { display:none; }
.product-site .ps-document { box-sizing:border-box; width:100%; max-width:700px; min-width:0; margin-inline:auto; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.product-site .ps-document > :is(nav,header,section,footer) { max-width:700px; }
.product-site .ps-docs-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:12px; min-height:28px; font-size:13px; line-height:1.6; color:#666; }
.product-site .ps-docs-breadcrumb a:hover { color:#171717; }
.product-site .ps-docs-breadcrumb > span[aria-hidden] { color:#b3b3b3; }
.product-site .ps-document > header { padding-block:28px 40px; border-bottom:1px solid #eaeaea; }
.product-site .ps-document h1 { font-size:48px; font-weight:500; line-height:1.2; letter-spacing:-.04em; overflow-wrap:anywhere; }
.product-site .ps-document-summary { margin-top:20px; font-size:16px; line-height:1.85; color:#666; }
.product-site .ps-document > section { padding-block:40px; }
.product-site .ps-document > section + section { border-top:1px solid #eaeaea; }
.product-site .ps-document h2 { margin-bottom:20px; font-size:24px; font-weight:500; line-height:1.45; letter-spacing:-.03em; }
.product-site .ps-document section p,.product-site .ps-document section li { font-size:15px; line-height:1.95; color:#555; overflow-wrap:anywhere; }
.product-site .ps-document section p + p { margin-top:16px; }
.product-site .ps-document section ol { margin:20px 0 0; padding-left:23px; }
.product-site .ps-document section li { margin-top:16px; padding-left:7px; }
.product-site .ps-document section li::marker { font-size:13px; color:#888; font-variant-numeric:tabular-nums; }
.product-site .ps-inline-media { max-width:360px; margin-top:28px; }
.product-site .ps-inline-media a { display:block; padding:16px; border:1px solid #eaeaea; border-radius:6px; background:#fff; transition:border-color 160ms ease; }
.product-site .ps-inline-media a:hover { border-color:#b3b3b3; }
.product-site .ps-inline-media img { display:block; width:100%; height:auto; max-height:240px; object-fit:contain; }
.product-site .ps-inline-media figcaption { margin-top:12px; font-size:12px; line-height:1.7; color:#707070; }
.product-site .ps-inline-media figcaption span { white-space:nowrap; color:#666; }
.product-site .ps-document[data-feature-guide] :is(.ps-document-summary,section p,section li) { font-size:15px; line-height:1.85; }
.product-site .ps-document[data-feature-guide] > :is(nav,header,section,footer) { margin-inline:auto; }
.product-site .ps-document-facts { display:grid; gap:12px; margin-top:28px; }
.product-site .ps-document-facts > div { display:grid; grid-template-columns:80px minmax(0,1fr); gap:16px; font-size:14px; line-height:1.75; }
.product-site .ps-document-facts dt { color:#707070; }
.product-site .ps-document-facts dd { color:#444; }
.product-site .ps-document-parameters > div { display:grid; grid-template-columns:140px minmax(0,1fr); gap:24px; padding-block:18px; font-size:14px; line-height:1.8; }
.product-site .ps-document-parameters > div + div { border-top:1px solid #eaeaea; }
.product-site .ps-document-parameters dt { color:#171717; font-weight:500; }
.product-site .ps-document-parameters dd { color:#666; }
.product-site .ps-document-note { margin-top:24px; padding:8px 0 8px 20px; border-left:2px solid #d4d4d4; font-size:14px; line-height:1.85; color:#666; }
.product-site .ps-document-media-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:28px; }
.product-site .ps-document-media-pair .ps-inline-media { max-width:none; margin-top:0; }
.product-site .ps-document-media-pair .ps-inline-media a { display:grid; place-items:center; box-sizing:border-box; height:260px; background:#fff; }
.product-site .ps-document-media-pair .ps-inline-media img { width:auto; max-width:100%; max-height:226px; }
.product-site .ps-document-media-pair figcaption { font-size:12px; color:#666; }
.product-site .ps-document-footer { margin-top:16px; padding-top:24px; border-top:1px solid #eaeaea; font-size:13px; line-height:1.8; color:#666; }
.product-site .ps-document-pagination { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.product-site .ps-document-pagination a { display:flex; flex-direction:column; gap:9px; min-width:0; padding:20px; border:1px solid #eaeaea; border-radius:6px; transition:border-color 160ms ease,background-color 160ms ease; }
.product-site .ps-document-pagination a:hover { border-color:#b3b3b3; background:#fff; }
.product-site .ps-document-pagination [rel='next'] { grid-column:2; text-align:right; }
.product-site .ps-document-pagination span { font-size:12px; color:#707070; }
.product-site .ps-document-pagination strong { font-size:14px; line-height:1.6; color:#171717; font-weight:500; }
.product-site .ps-document-help { display:inline-flex; align-items:center; gap:20px; min-height:44px; margin-top:20px; font-size:13px; }
.product-site .ps-document-help:hover { color:#171717; text-decoration:underline; text-underline-offset:4px; }

@media (max-width:1100px) {
  .product-site .ps-download-layout { column-gap:48px; }
  .product-site .ps-installation { padding-left:40px; }
  .product-site .ps-docs-layout { grid-template-columns:200px minmax(0,1fr); gap:48px; }
  .product-site .ps-document h1 { font-size:40px; }
}
@media (max-width:900px) {
  .product-site .ps-download-layout { grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:32px; }
  .product-site .ps-installation { padding-left:28px; }
  .product-site .ps-package-info h2,.product-site .ps-installation h2 { font-size:24px; }
  .product-site .ps-download-package { grid-template-columns:32px minmax(0,1fr); gap:24px 16px; }
  .product-site .ps-package-symbol { width:32px; height:32px; }
  .product-site .ps-docs { padding-top:32px; }
  .product-site .ps-docs-layout { grid-template-columns:minmax(0,1fr); gap:40px; }
  .product-site .ps-docs-sidebar { position:static; padding-bottom:0; border-bottom:1px solid #eaeaea; }
  .product-site .ps-docs-label { display:none; }
  .product-site .ps-docs-search { margin-block:0 8px; }
  .product-site .ps-docs-sidebar .ps-docs-desktop { display:none; }
  .product-site .ps-docs-mobile { display:block; }
  .product-site .ps-docs-mobile summary { display:flex; align-items:center; justify-content:space-between; min-height:48px; padding-block:4px; font-size:14px; cursor:pointer; }
  .product-site .ps-docs-mobile summary::-webkit-details-marker { display:none; }
  .product-site .ps-docs-mobile summary > span { font-size:18px; color:#666; }
  .product-site .ps-docs-mobile[open] summary > span { transform:rotate(45deg); }
  .product-site .ps-docs-sidebar .ps-docs-mobile nav { display:flex; flex-wrap:wrap; gap:24px; padding-block:16px 28px; }
  .product-site .ps-docs-sidebar nav section { flex:1 1 160px; }
  .product-site .ps-docs-sidebar nav > section + section { margin-top:0; }
  .product-site .ps-docs-help { display:none; }
  .product-site .ps-docs-search-status:not(:empty) { margin-block:8px 16px; }
}
@media (max-width:767px) {
  .product-site .ps-download-page { padding-bottom:64px; }
  .product-site .ps-download-page .ps-page-heading { padding-block:48px 32px; }
  .product-site .ps-download-page .ps-page-heading h1 { font-size:32px; line-height:1.2; }
  .product-site .ps-download-layout { grid-template-columns:minmax(0,1fr); gap:32px; padding-top:32px; }
  .product-site .ps-download-package { grid-template-columns:32px minmax(0,1fr); gap:24px 16px; }
  .product-site .ps-package-action { padding-top:4px; }
  .product-site .ps-package-action .ps-button { max-width:none; }
  .product-site .ps-installation { grid-column:auto; grid-row:3; padding:32px 0 0; border-left:0; border-top:1px solid #eaeaea; }
  .product-site .ps-installation ol { margin-top:20px; }
  .product-site .ps-installation li { grid-template-columns:24px minmax(0,1fr); gap:12px; padding-block:20px; font-size:14px; }
  .product-site .ps-download-links { grid-column:auto; grid-row:2; max-width:none; }
  .product-site .ps-docs { padding-block:28px 64px; }
  .product-site .ps-docs-layout { gap:32px; }
  .product-site .ps-docs-sidebar h2 { font-size:13px; }
  .product-site .ps-document { padding:0; }
  .product-site .ps-document > header { padding-block:24px 32px; }
  .product-site .ps-document h1 { font-size:32px; line-height:1.25; }
  .product-site .ps-document-summary { margin-top:16px; font-size:15px; }
  .product-site .ps-document > section { padding-block:32px; }
  .product-site .ps-document h2 { margin-bottom:16px; font-size:22px; }
  .product-site .ps-document section p,.product-site .ps-document section li { font-size:15px; }
  .product-site .ps-document-facts > div { grid-template-columns:64px minmax(0,1fr); gap:12px; font-size:13px; }
  .product-site .ps-document-parameters > div { grid-template-columns:1fr; gap:6px; }
  .product-site .ps-document-media-pair { grid-template-columns:1fr; gap:24px; }
  .product-site .ps-document-media-pair .ps-inline-media a { height:280px; }
  .product-site .ps-document-media-pair .ps-inline-media img { max-height:246px; }
  .product-site .ps-document-pagination { gap:12px; }
  .product-site .ps-document-pagination a { padding:16px; }
  .product-site .ps-document-pagination strong { font-size:13px; }
}
@media (prefers-reduced-motion:reduce) {
  .product-site :is(.ps-download-links a,.ps-docs-search,.ps-docs-sidebar nav a,.ps-inline-media a,.ps-document-pagination a) { transition:none; }
}

/* Paramotif commerce: product-only theme. The checkout and recovery data remain unchanged. */
.product-site .commerce-page {
  --commerce-line:#eaeaea;
  --commerce-muted:#666;
  --commerce-ink:#171717;
  --commerce-paper:#fff;
  box-sizing:border-box;
  width:min(1280px,calc(100% - 2 * var(--gutter,48px)));
  min-height:calc(100svh - 300px);
  margin:64px auto 80px;
  font-family:var(--theme-font,Arial,'Noto Sans SC',sans-serif);
  font-size:14px;
  line-height:1.7;
}
.product-site .commerce-layout { grid-template-columns:minmax(0,1fr); gap:32px; }
.product-site .commerce-back { display:none; }
.product-site .commerce-rail { position:static; }
.product-site .commerce-rail h1 { margin:0; font-size:36px; font-weight:500; line-height:1.2; letter-spacing:-.045em; }
.product-site .commerce-rail p { margin-top:16px; font-size:14px; line-height:1.7; color:var(--commerce-muted); }
.product-site .commerce-body { min-width:0; max-width:none; }
.product-site .commerce-page :is(.commerce-heading,.commerce-notice) h2 { margin-bottom:14px; font-size:28px; font-weight:500; line-height:1.3; letter-spacing:-.035em; }
.product-site .commerce-page :is(.commerce-heading,.commerce-notice) p { color:var(--commerce-muted); font-size:14px; line-height:1.8; }
.product-site .commerce-page :is(.commerce-muted,.commerce-reference,.commerce-status) { color:var(--commerce-muted); font-size:13px; line-height:1.8; }
.product-site .commerce-page .commerce-status { min-height:24px; margin-top:16px; }
.product-site .commerce-page .commerce-status[role='alert'] { color:#b42318; }
.product-site .commerce-page .commerce-field-error { font-size:12px; line-height:1.8; color:#b42318; }
.product-site .commerce-page [aria-invalid='true'] { outline:1px solid #b42318; }
.product-site .commerce-page .commerce-field { max-width:640px; margin-top:28px; font-size:14px; line-height:1.6; }
.product-site .commerce-page :is(.commerce-field,.commerce-question) small { margin-left:8px; font-size:12px; color:#777; }
.product-site .commerce-page :is(.commerce-field,.commerce-question) :is(input:not([type='checkbox']),textarea,select) {
  min-height:44px;
  margin-top:9px;
  padding:11px 12px;
  border:1px solid #d9d9d9;
  border-radius:6px;
  background:#fff;
  color:var(--commerce-ink);
  font-size:14px;
  line-height:20px;
  transition:border-color 160ms ease,box-shadow 160ms ease;
}
.product-site .commerce-page :is(input,textarea)::placeholder { color:#909090; opacity:1; }
.product-site .commerce-page :is(input,textarea,select):focus-visible { outline:2px solid #171717; outline-offset:3px; }
.product-site .commerce-page .commerce-question { max-width:760px; margin-top:28px; padding-top:28px; border-top:1px solid var(--commerce-line); }
.product-site .commerce-page .commerce-question legend { padding-bottom:12px; font-size:16px; font-weight:500; line-height:1.6; }
.product-site .commerce-page .commerce-options { gap:4px; }
.product-site .commerce-page .commerce-options label { min-height:40px; gap:10px; font-size:14px; }
.product-site .commerce-page input:is([type='checkbox'],[type='radio']) { width:16px; height:16px; accent-color:var(--commerce-ink); }
.product-site .commerce-page .commerce-button {
  min-height:44px;
  gap:16px;
  padding:10px 18px;
  border:1px solid #dedede;
  border-radius:6px;
  background:#fff;
  color:#171717;
  font-size:14px;
  font-weight:500;
  line-height:22px;
  transition:background-color 160ms ease,border-color 160ms ease,color 160ms ease;
}
.product-site .commerce-page .commerce-button:not(:disabled):hover { border-color:#c8c8c8; background:#f5f5f5; color:#171717; }
.product-site .commerce-page .commerce-button[type='submit'] { background:#171717; border-color:#171717; color:#fff; }
.product-site .commerce-page .commerce-button[type='submit']:not(:disabled):hover { background:#383838; border-color:#383838; color:#fff; }
.product-site .commerce-page .commerce-button:disabled { opacity:.55; cursor:wait; }
.product-site .commerce-page .commerce-actions { margin-top:28px; gap:12px 20px; font-size:13px; }
.product-site .commerce-page .commerce-text-link { display:inline-flex; align-items:center; gap:12px; padding-block:12px; font-size:13px; }
.product-site .commerce-page .commerce-support { margin-top:40px; padding-top:24px; border-top:1px solid var(--commerce-line); font-size:12px; }

/* Three plans share a baseline and a consistent benefit rhythm. */
body.product-site:is([data-view='recovery'],[data-view='purchase']) { display:flex; flex-direction:column; min-height:100svh; }
.product-site:is([data-view='recovery'],[data-view='purchase']) :is(.ps-header,.ps-footer) { flex:none; }
.product-site:is([data-view='recovery'],[data-view='purchase']) #main-content { flex:1; display:grid; align-items:center; }
.product-site .commerce-page:is([data-view='purchase'],[data-view='recovery']) { min-height:0; margin-block:64px; }
.product-site .commerce-page:is([data-view='purchase'],[data-view='recovery']) .commerce-rail { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.product-site .commerce-plan-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; gap:20px; }
.product-site .commerce-plan {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  box-sizing:border-box;
  min-width:0;
  padding:32px;
  border:1px solid #e4e4e4;
  border-radius:6px;
  background:#fff;
  text-align:left;
  transition:border-color 180ms ease,background-color 180ms ease;
}
.product-site .commerce-plan-head { display:flex; align-items:center; justify-content:space-between; align-self:stretch; gap:16px; min-height:24px; }
.product-site .commerce-plan-term { display:block; font-size:12px; font-weight:400; line-height:1.8; color:#666; }
.product-site .commerce-plan-icon { display:block; flex:none; width:24px; height:24px; color:#717171; }
.product-site .commerce-plan-title { display:block; margin-top:22px; font-size:27px; font-weight:500; line-height:1.35; letter-spacing:-.035em; }
.product-site .commerce-plan-summary { display:block; min-height:48px; margin-top:12px; font-size:14px; line-height:1.75; color:#666; }
.product-site .commerce-plan-duration { display:flex; align-items:baseline; gap:10px; margin-top:32px; line-height:1.1; }
.product-site .commerce-plan-duration > span { font-size:56px; font-weight:400; letter-spacing:-.065em; }
.product-site .commerce-plan-duration small { font-size:13px; color:#666; }
.product-site .commerce-plan[data-plan='buyout'] .commerce-plan-duration > span { font-size:42px; line-height:1.47; letter-spacing:-.045em; }
.product-site .commerce-plan-price { display:block; margin-top:20px; font-size:26px; font-weight:500; letter-spacing:-.03em; }
.product-site .commerce-plan-description { display:block; margin-top:8px; color:#666; font-size:12px; line-height:1.7; }
.product-site .commerce-plan-benefits { display:grid; align-content:start; align-self:stretch; gap:14px; margin-top:30px; padding-top:26px; border-top:1px solid var(--commerce-line); color:#454545; font-size:14px; line-height:1.7; }
.product-site .commerce-plan-benefits > span { display:grid; grid-template-columns:12px minmax(0,1fr); align-items:baseline; column-gap:10px; }
.product-site .commerce-plan-benefits > span::before { content:''; box-sizing:border-box; width:9px; height:5px; border-left:1px solid #666; border-bottom:1px solid #666; transform:rotate(-45deg); align-self:start; margin-top:7px; }
.product-site .commerce-plan-foot { display:flex; flex-direction:column; align-items:stretch; align-self:stretch; margin-top:auto; padding-top:30px; }
.product-site .commerce-plan-policy { display:block; min-height:38px; color:#777; font-size:12px; line-height:1.7; }
.product-site .commerce-plan-choice { display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; width:100%; min-height:44px; margin-top:16px; padding:10px 18px; border:1px solid #171717; border-radius:6px; background:#171717; color:#fff; font-size:14px; font-weight:500; line-height:22px; transition:background-color 160ms ease,border-color 160ms ease; }
.product-site .commerce-plan-choice:disabled { border-color:#e4e4e4; background:#f5f5f5; color:#888; cursor:not-allowed; }
.product-site .commerce-plan-available { position:relative; cursor:pointer; }
.product-site .commerce-plan-available > input { position:absolute; width:1px; height:1px; opacity:0; }
.product-site .commerce-plan-available:has(input:focus-visible) { outline:2px solid #171717; outline-offset:4px; }
.product-site .commerce-plan-available:has(input:checked) { border-color:#171717; background:#fff; box-shadow:inset 0 0 0 1px #171717; }
.product-site .commerce-plan-available:has(input:checked) .commerce-plan-choice::after { content:'✓'; margin-left:10px; }
.product-site .commerce-plan-fieldset { min-width:0; padding:0; border:0; }
.product-site .commerce-plan-fieldset legend { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.product-site .commerce-purchase-description { margin-top:28px; color:#666; font-size:14px; }
.product-site .commerce-purchase-options[tabindex='-1']:focus { outline:none; }
.product-site .commerce-purchase-availability { margin-top:24px; color:#777; font-size:13px; text-align:center; }
.product-site .commerce-page[data-view='purchase'] .commerce-body > .commerce-status:empty { display:none; }

/* Recovery and feedback stay compact, with full-width controls and aligned actions. */
.product-site .commerce-page[data-view='recovery'] { width:min(1040px,calc(100% - 2 * var(--gutter,48px))); }
.product-site .commerce-support-layout { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:20px; }
.product-site :is(.commerce-recovery-section,.commerce-help-section) { display:flex; flex-direction:column; box-sizing:border-box; min-width:0; padding:32px; border:1px solid #e4e4e4; border-radius:6px; background:#fff; }
.product-site .commerce-support-layout:has(.commerce-recovery-section > .commerce-heading) .commerce-help-section { align-self:start; }
.product-site .commerce-support-layout > section > form { display:flex; flex:1; flex-direction:column; }
.product-site .commerce-support-layout .commerce-heading h2 { margin-bottom:14px; font-size:26px; font-weight:500; line-height:1.3; letter-spacing:-.035em; }
.product-site .commerce-support-layout .commerce-heading p { min-height:50px; font-size:14px; line-height:1.8; color:#666; }
.product-site .commerce-support-layout .commerce-field { margin-top:24px; font-size:13px; font-weight:500; }
.product-site .commerce-support-layout .commerce-field :is(input,textarea) { border-color:#d9d9d9; border-radius:6px; background:#fff; font-weight:400; }
.product-site .commerce-support-layout form > .commerce-actions { margin-top:auto; padding-top:24px; }
.product-site .commerce-support-layout form > .commerce-actions > .commerce-button[type='submit'] { justify-content:space-between; width:100%; padding-inline:16px; }
.product-site .commerce-proof-options { margin-top:12px; }
.product-site .commerce-proof-options .commerce-button { min-height:36px; padding:0; border:0; border-radius:0; background:transparent; color:var(--commerce-muted); font-size:12px; font-weight:400; }
.product-site .commerce-proof-options .commerce-button:not(:disabled):hover { background:transparent; color:var(--commerce-ink); text-decoration:underline; text-underline-offset:4px; }
.product-site .commerce-help-section .commerce-message-field textarea { height:124px; min-height:124px; max-height:480px; }
.product-site .commerce-support-layout .commerce-status { flex:none; min-height:24px; font-size:12px; line-height:24px; }
.product-site .commerce-support-layout .commerce-actions:has(+ .commerce-deliveries) { margin-top:20px; gap:8px; }
.product-site .commerce-support-layout .commerce-actions:has(+ .commerce-deliveries) .commerce-button { min-height:36px; padding:6px 12px; font-size:12px; }

/* Application and order screens use the same form and border vocabulary. */
.product-site .commerce-page:is([data-view='beta'],[data-view='order']) { width:min(960px,calc(100% - 2 * var(--gutter,48px))); }
.product-site .commerce-page[data-view='beta'] .commerce-layout { grid-template-columns:160px minmax(0,1fr); align-items:start; gap:64px; }
.product-site .commerce-page[data-view='beta'] .commerce-rail h1 { font-size:20px; font-weight:500; line-height:1.8; letter-spacing:-.02em; }
.product-site .commerce-page[data-view='beta'] .commerce-body { min-width:0; }
.product-site .commerce-page[data-view='order'] .commerce-body { padding:32px; border:1px solid #e4e4e4; border-radius:6px; background:#fff; }
.product-site .commerce-page .commerce-facts { gap:0; margin-top:28px; padding-top:4px; border-top:1px solid var(--commerce-line); font-size:13px; }
.product-site .commerce-page .commerce-facts > div { grid-template-columns:104px minmax(0,1fr); gap:20px; padding-block:12px; border-bottom:1px solid var(--commerce-line); }
.product-site .commerce-page .commerce-facts dt { color:#777; }
.product-site .commerce-page .commerce-facts dd { color:#333; font-variant-numeric:tabular-nums; }
.product-site .commerce-page .commerce-payment { margin-top:28px; padding-top:28px; border-top:1px solid var(--commerce-line); }
.product-site .commerce-page .commerce-payment h3 { font-size:18px; font-weight:500; }
.product-site .commerce-page .commerce-qr { padding:12px; border:1px solid var(--commerce-line); border-radius:6px; }
.product-site .commerce-page .commerce-deliveries { margin-top:24px; }
.product-site .commerce-page .commerce-deliveries li { gap:16px; padding-block:20px; }
.product-site .commerce-page .commerce-deliveries h3 { font-size:17px; font-weight:500; }
.product-site .commerce-page .commerce-deliveries p { font-size:13px; }
.product-site .commerce-page .commerce-original { margin-top:28px; padding-top:28px; }
.product-site .commerce-page .commerce-original h3 { font-size:18px; font-weight:500; }
.product-site .commerce-page .commerce-original .commerce-facts > div { grid-template-columns:90px minmax(0,1fr); gap:16px; }
.product-site .commerce-page .commerce-original .commerce-button { font-size:12px; padding-inline:12px; }
.product-site .commerce-page .commerce-original > .commerce-muted { margin-top:20px; font-size:12px; line-height:1.8; }

@media (hover:hover) and (pointer:fine) {
  .product-site .commerce-plan-available:hover { border-color:#aaa; }
  .product-site .commerce-plan-available:hover .commerce-plan-choice { background:#383838; border-color:#383838; }
  .product-site .commerce-page :is(.commerce-field,.commerce-question) :is(input:not([type='checkbox']),textarea,select):hover { border-color:#aaa; }
}
@media (max-width:1100px) and (min-width:768px) {
  .product-site .commerce-plan { padding:28px 24px; }
  .product-site .commerce-plan-grid { gap:16px; }
  .product-site .commerce-plan-title { font-size:24px; }
  .product-site .commerce-plan-benefits { font-size:13px; }
  .product-site :is(.commerce-recovery-section,.commerce-help-section) { padding:28px; }
}
@media (max-width:900px) {
  .product-site .commerce-page[data-view='beta'] .commerce-layout { grid-template-columns:minmax(0,1fr); gap:24px; }
  .product-site .commerce-page[data-view='beta'] .commerce-rail h1 { color:#777; font-size:13px; }
}
@media (max-width:767px) {
  .product-site .commerce-page { width:calc(100% - 48px); margin-block:40px 56px; min-height:0; }
  .product-site .commerce-page:is([data-view='recovery'],[data-view='purchase']) { width:calc(100% - 48px); margin-block:32px 48px; }
  .product-site .commerce-page:is([data-view='beta'],[data-view='order']) { width:calc(100% - 48px); }
  .product-site .commerce-layout { gap:24px; }
  .product-site .commerce-rail h1 { font-size:30px; }
  .product-site .commerce-page :is(.commerce-heading,.commerce-notice) h2 { font-size:24px; }
  .product-site .commerce-plan-grid { grid-template-columns:minmax(0,1fr); gap:16px; }
  .product-site .commerce-plan { padding:28px 24px; }
  .product-site .commerce-plan-title { font-size:26px; margin-top:20px; }
  .product-site .commerce-plan-summary { min-height:0; }
  .product-site .commerce-plan-duration { margin-top:28px; }
  .product-site .commerce-plan-duration > span { font-size:52px; }
  .product-site .commerce-plan[data-plan='buyout'] .commerce-plan-duration > span { font-size:40px; line-height:1.43; }
  .product-site .commerce-plan-benefits { margin-top:26px; padding-top:24px; font-size:14px; }
  .product-site .commerce-plan-policy { min-height:0; }
  .product-site .commerce-plan-foot { padding-top:26px; }
  .product-site .commerce-support-layout { grid-template-columns:minmax(0,1fr); gap:16px; }
  .product-site :is(.commerce-recovery-section,.commerce-help-section) { padding:28px 24px; }
  .product-site .commerce-support-layout .commerce-heading h2 { font-size:24px; }
  .product-site .commerce-support-layout .commerce-heading p { min-height:0; }
  .product-site .commerce-help-section .commerce-message-field textarea { height:140px; min-height:140px; }
  .product-site .commerce-page[data-view='order'] .commerce-body { padding:24px; }
  .product-site .commerce-page .commerce-facts > div { grid-template-columns:minmax(0,1fr); gap:4px; }
  .product-site .commerce-page .commerce-original .commerce-facts > div { grid-template-columns:minmax(0,1fr); gap:4px; }
  .product-site .commerce-page .commerce-question { margin-top:24px; padding-top:24px; }
}
@media (prefers-reduced-motion:reduce) {
  .product-site :is(.commerce-plan,.commerce-plan-choice,.commerce-page .commerce-button),.product-site .commerce-page :is(.commerce-field,.commerce-question) :is(input:not([type='checkbox']),textarea,select) { transition:none; }
}
