/* K.PUBLIC.STORE projection of canonical FGRID/RGBM; no new token system. */
@font-face { font-family:'Noto Sans Thai'; src:url('/assets/fonts/noto-sans-thai/NotoSansThai.ttf') format('truetype'); font-weight:100 900; font-style:normal; font-display:swap; }
body[data-route="store"] { --store-font:var(--f-font-sans); --store-line-factor:1; --store-cyan:var(--rgbm-navigation); --store-green:var(--rgbm-action); --store-amber:var(--rgbm-warning); }
html:lang(th) body[data-route="store"] { --store-font:'Noto Sans Thai',var(--f-font-sans); --store-line-factor:var(--f-locale-line-th); }
html:lang(zh-cn) body[data-route="store"] { --store-line-factor:var(--f-locale-line-zh); }
html body[data-store-page][data-route="store"] .store-page :is(h1,h2,h3,h4,p,a,button,label,small,strong,span) { font-family:var(--store-font); letter-spacing:var(--f-track-normal); font-synthesis:none; }
html body[data-store-page][data-route="store"] .store-page h1 { font-size:var(--f-size-13); line-height:calc(var(--f-line-heading) * var(--store-line-factor)); font-weight:var(--f-weight-bold); text-wrap:balance; }
html body[data-store-page][data-route="store"] .store-page h2 { font-size:var(--f-size-10); line-height:calc(var(--f-line-heading) * var(--store-line-factor)); font-weight:var(--f-weight-bold); }
html body[data-store-page][data-route="store"] .store-page h3 { font-size:var(--f-size-09); line-height:calc(var(--f-line-heading) * var(--store-line-factor)); font-weight:var(--f-weight-semibold); }
html body[data-store-page][data-route="store"] .store-page :is(p,.store-hero-copy .lede) { font-size:var(--f-size-07); line-height:calc(var(--f-line-relaxed) * var(--store-line-factor)); text-wrap:pretty; }
html body[data-store-page][data-route="store"] .store-page :is(a,button,label,small,.store-product-type,.store-product-status,.store-product-code,.store-complexity-level,.store-price-quote,.services-offer-status,.store-hero-pills span,.store-product-avail-badge) { font-size:var(--f-size-05); line-height:calc(var(--f-line-normal) * var(--store-line-factor)); }
html body[data-store-page][data-route="store"] .store-page :is(.store-rail-note,.store-section-summary,.services-evidence,.services-offer-deliverable,.store-rail-commercial-badge) p { font-size:var(--f-size-05); }
html body[data-store-page][data-route="store"] .store-page :is(code,.store-coordinate) { font-family:var(--f-font-mono); font-size:var(--f-size-03); line-height:var(--f-line-code); letter-spacing:var(--f-track-code); }
html body[data-store-page][data-route="store"] .store-page .store-menu-code { display:block; margin-bottom:4px; color:var(--rgbm-navigation); }
html body[data-store-page][data-route="store"] .store-page :is(.store-collection-card,.store-rail-nav a,.store-rail-nav button,.store-hero-actions a,.store-product-link) { min-height:44px; box-sizing:border-box; }
html body[data-store-page][data-route="store"] .store-page .store-product-link { display:inline-flex; align-items:center; white-space:normal; }
html body[data-store-page][data-route="store"] .store-page .store-product-card > p { min-height:0; }
html body[data-store-page][data-route="store"] .store-page .store-collections { border-inline-start:3px solid var(--rgbm-navigation); }
html body[data-store-page][data-route="store"] .store-page .store-products { border-inline-start:3px solid var(--rgbm-system); }
html body[data-store-page][data-route="store"] .store-page :is(.store-services,.store-order-process) { border-inline-start:3px solid var(--rgbm-insight); }
html body[data-store-page][data-route="store"] .store-page :is(.store-services h2,.store-service-card h3,.store-order-process .store-kicker) { color:var(--rgbm-insight); }
html body[data-store-page][data-route="store"] .store-page :is(.store-price-level,.store-price-quote,.store-product-status,.store-tier-badge,.store-service-tier-badge) { color:var(--rgbm-warning); }
html body[data-store-page][data-route="store"] .store-page :is(.store-product-avail-badge,.store-badge-live,.store-hero-pills span) { color:var(--text-dim); }
html body[data-store-page][data-route="store"] .store-page :is(.store-product-link,.store-primary-action) { color:var(--rgbm-action); }
html body[data-store-page][data-route="store"] .store-page .store-primary-action { color:#04150f; background:var(--rgbm-action); }
@media(max-width:1199px) { html body[data-store-page][data-route="store"] .store-page h1 { font-size:var(--f-size-12); } }
@media(max-width:767px) { html body[data-store-page][data-route="store"] .store-page h1 { font-size:var(--f-size-11); } html body[data-store-page][data-route="store"] .store-page h2 { font-size:var(--f-size-09); } }
