/* WOK preservation polish. Existing themes, assets, gradients and corner shapes remain authoritative. */
:root{
  --wok-bg:var(--bg);--wok-surface:var(--surface);--wok-raised:var(--surface-2);
  --wok-border:var(--line);--wok-control-border:#65707c;
  --wok-text:var(--text);--wok-muted:var(--text-2);--wok-quiet:var(--text-3);
  --wok-accent:var(--red-hi);--wok-radius:var(--r);--wok-control-radius:13px 13px 5px 13px;
}

/* Five actual plans: preserve the lacquer cards and the featured-plan treatment. */
.shop-page .pricing-section::before{top:96px}
@media(max-width:1199px){.shop-page .pricing-section::before{top:140px}}
@media(max-width:520px){.shop-page .pricing-section::before{top:292px}}
@media(min-width:1200px){
  .shop-page .plans{grid-template-columns:repeat(5,minmax(0,1fr))}
  .shop-page .plan-card{padding:24px 20px}
  .shop-page .plan-card>.btn{padding-inline:10px;font-size:12px}
  .shop-page .plan-name h2{font-size:18px}
  .shop-page .plan-glyph{width:32px;height:32px;flex:0 0 32px}
  .shop-page .plan-glyph .ti{width:16px;height:16px}
  .shop-page .plan-price{font-size:clamp(38px,3.4vw,52px)}
}
@media(min-width:761px) and (max-width:1199px){
  .shop-page .plans{grid-template-columns:repeat(6,minmax(0,1fr))}
  .shop-page .plan-card{grid-column:span 2;padding:22px 18px}
  .shop-page .plan-card:nth-last-child(-n+2){grid-column:span 3}
  .shop-page .plan-card>.btn{padding-inline:10px;font-size:12px}
  .shop-page .plan-name h2{font-size:18px}
  .shop-page .plan-glyph{width:30px;height:30px;flex:0 0 30px}
}
@media(min-width:761px){
  .shop-page .plan-top{min-height:52px}
  .shop-page .plan-price small{min-height:36px;line-height:1.5}
}
.shop-page .plan-price small{font-size:12px}
.shop-page .plan-monthly{font-size:12px}
.shop-page .plan-limit span{font-size:11px;line-height:1.5}
.shop-page .plan-included{font-size:12px;line-height:1.55}
.shop-page .plan-card>.btn{white-space:normal;min-height:44px}
.shop-page .capability-bundle-state{font-size:10px;line-height:1.5}
.shop-page .capability-bundle-card p{font-size:12px;line-height:1.6}
.shop-page .capability-bundle-card ul{font-size:11px;line-height:1.5}
.shop-page .capability-bundle-price span,.shop-page .bundle-cta-static{font-size:11px;line-height:1.5}
.shop-page .bundle-cta{min-height:40px;font-size:12px}
.shop-page .capability-bundles-head p,.shop-page .payment-fees header p{font-size:12px;line-height:1.65}
.shop-page .capability-bundles-note,.shop-page .payment-fee-note{font-size:11px;line-height:1.65}
.shop-page .payment-fee-grid b{font-size:12px}
.shop-page .payment-fee-grid span{font-size:11px;line-height:1.5}

/* SPA section headings are h2 on dedicated routes; the existing h1-only rule missed them. */
.shop-page .account-page-head h2,.shop-page .status-head h2{
  max-width:18ch;margin:0;font-family:var(--feature-font);font-size:clamp(32px,3.4vw,48px);
  font-weight:650;line-height:1.15;letter-spacing:-.025em;
}
.shop-page .account-security-note{font-size:12px;line-height:1.65}
.shop-page .account-page-head,.shop-page .status-head{align-items:center}
.shop-page .account-identity code{font-size:11px;line-height:1.5}
.shop-page .account-identity>span{font-size:10px;line-height:1.5}
.shop-page .security-title p,.shop-page .account-panel header p{font-size:12px;line-height:1.6}
.shop-page .account-gate-point p,.shop-page .auth-rule,.shop-page .auth-message{font-size:12px;line-height:1.6}
.shop-page .auth-field{font-size:12px;line-height:1.5}
.shop-page .auth-text-button{font-size:12px;min-height:36px;line-height:1.5}
.shop-page .auth-divider{font-size:11px;line-height:1.5}
.shop-page .auth-steam>p{font-size:11px!important;line-height:1.6!important}
.shop-page .security-form-copy p,.shop-page .security-notice{font-size:12px;line-height:1.65}
.shop-page .subscription-title small,.shop-page .subscription-limit span{font-size:11px;line-height:1.55}
.shop-page .subscription-source-status,.shop-page .account-key-note{font-size:11px;line-height:1.55}
.shop-page .subscription-source>span{font-size:12px}
.shop-page .account-order small,.shop-page .account-order-status strong{font-size:11px;line-height:1.5}
.shop-page .account-empty p{font-size:12px;line-height:1.65}
.shop-page .email-address strong,.shop-page .email-pending{overflow-wrap:anywhere}
.shop-page .email-check small{font-size:12px;line-height:1.7}
.shop-page .email-account-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px 24px}
.shop-page .email-identity{min-width:0;flex:1 1 260px;display:grid;gap:8px}
.shop-page .email-account-row .email-actions{flex:0 1 auto;justify-content:flex-start;gap:8px}
.shop-page .email-preferences{margin-top:0;gap:20px}
.shop-page .email-check{max-width:760px;min-height:44px;gap:14px}
.shop-page .email-check span{gap:4px}
.shop-page .email-preferences>.auth-rule{max-width:760px;margin:0}
.shop-page .email-check:has(input:disabled){opacity:1}
.shop-page .email-check:has(input:disabled) b{color:var(--shop-muted)}
.shop-page .email-check:has(input:disabled) small{color:var(--shop-quiet)}
.shop-page .auth-method-badge .auth-method-copy small{font-size:10px;line-height:1.4}
.shop-page .auth-method-badge .auth-method-copy b{line-height:1.3}

/* Keep the documentation's existing composition; make descriptions readable. */
.shop-page .reference-auth p,.shop-page .param-row p{font-size:12px;line-height:1.65}
.shop-page .param-row code{overflow-wrap:anywhere}
.shop-page .param-type,.shop-page .param-required{font-size:10px;line-height:1.4}
.shop-page .param-place{font-size:9px}
.shop-page .docs-index-group h3{color:var(--shop-quiet);font-size:10px;line-height:1.4}
.shop-page .docs-index-group button{min-height:36px}
.shop-page .api-status,.shop-page .api-examples header{font-size:11px;line-height:1.4}
.shop-page .api-examples pre{font-size:11px;line-height:1.75}
.shop-page .snippet-copy{min-height:32px;font-size:10px}
.shop-page .docs-artifacts a{font-size:10px;min-height:36px}
.shop-page .api-title{line-height:1.6}
.shop-page .sdk-install-card code{font-size:12px}
.shop-page .status-card p,.shop-page .status-session p{font-size:12px;line-height:1.6}
.shop-page .status-time span,.shop-page .status-summary>div>span,.shop-page .status-card>div>span{font-size:10px;line-height:1.5}

/* Long strings and error messages must fit without changing the surrounding artwork. */
.shop-page .sheet{overscroll-behavior:contain}
.shop-page .payment-value,.shop-page .key-output{overflow-wrap:anywhere}
.shop-page .net span{font-size:11px;line-height:1.5}
.shop-page .checkout-support-link{font-size:11px;min-height:40px}
.shop-page .legal-highlights p,.shop-page .legal-document-foot p,.shop-page .support-channel p{font-size:12px;line-height:1.65}
.shop-page .legal-rail-facts{font-size:11px;line-height:1.6}
.shop-page .footer-group-label{font-size:11px;line-height:1.5}
.shop-page .footer-pay,.shop-page .footer-legal{font-size:12px;line-height:1.6}

/* Tablet/mobile corrections only. The desktop artwork and header stay intact. */
@media(max-width:820px){.shop-page .legal-rail{min-height:137px}}
@media(max-width:600px){.shop-page .legal-rail{min-height:180px}}
@media(max-width:560px){
  .shop-page .email-account-row{gap:12px}
  .shop-page .email-account-row .email-actions{flex-basis:100%}
  .shop-page .email-account-row .email-actions>.btn{flex:1 1 auto}
  .shop-page .email-settings-form .security-form-actions{display:grid;grid-template-columns:minmax(0,1fr)}
  .shop-page .email-settings-form .security-form-actions>.btn{white-space:normal}
}
@media(max-width:980px){
  .shop-page .capability-bundle-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .shop-page .capability-bundle-card:nth-last-child(-n+2){min-height:230px}
  .shop-page .account-columns{grid-template-columns:minmax(0,1fr)}
  .shop-page .docs-toolbar{grid-template-columns:minmax(200px,1fr) auto}
  .shop-page .docs-base{display:none}
}
@media(max-width:760px){
  .shop-page .plans{grid-template-columns:repeat(2,minmax(0,1fr))}
  .shop-page .plan-card{padding:22px 18px}
  .shop-page .plan-card:last-child{grid-column:1/-1}
  .shop-page .plan-price{font-size:42px}
  .shop-page .plan-top{min-height:52px}
  .shop-page .capability-bundle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .shop-page .capability-bundle-card:last-child{grid-column:1/-1}
  .shop-page .account-page-head h2,.shop-page .status-head h2{font-size:34px}
  .shop-page .account-security-panel>header{gap:16px}
  .shop-page .security-summary{flex-wrap:wrap;gap:10px}
  .shop-page .docs-toolbar{position:static;grid-template-columns:minmax(0,1fr)}
  .shop-page .docs-artifacts{flex-wrap:wrap}
  .shop-page .docs-artifacts a{min-height:40px;font-size:11px}
  .shop-page .param-row p{font-size:12px}
  .shop-page .api-title{font-size:12px}
  .shop-page .status-session header{flex-wrap:wrap}
}
@media(max-width:520px){
  .shop-page .plans{grid-template-columns:minmax(0,1fr)}
  .shop-page .plan-card:last-child{grid-column:auto}
  .shop-page .plan-top{min-height:0}
  .shop-page .plan-card>.btn{white-space:nowrap}
  .shop-page .subscription-source{grid-template-columns:minmax(0,1fr)}
  .shop-page .capability-bundle-grid{grid-template-columns:minmax(0,1fr)}
  .shop-page .capability-bundle-card{min-height:0;padding:18px}
  .shop-page .capability-bundle-card .bundle-cta,.shop-page .bundle-cta-static{margin-top:18px}
  .shop-page .payment-fee-grid{grid-template-columns:minmax(0,1fr)}
  .shop-page .payment-fee-grid>article{min-height:76px}
  .shop-page .subscription-limit b{font-size:18px}
}
@media(pointer:coarse){
  .shop-page .btn.small{min-height:44px}
  .shop-page .snippet-copy,.shop-page .auth-password-toggle,.shop-page .auth-text-button{min-height:44px;min-width:44px}
}
