/* Shared typography uses the existing local fonts, with a calmer weight hierarchy. */
html{color-scheme:dark;scrollbar-color:#676569 #202225}
html:has(dialog[open]){overflow:hidden}
body{font-weight:400;line-height:1.8}
button,input,select,textarea{font-family:inherit;line-height:1.6}
html[lang=ar] h1,html[lang=ar] h2,html[lang=ar] h3{letter-spacing:0}
h2,h3,.config h2,.product-cover .name{font-weight:650}
.nav{gap:24px;font-size:14px;font-weight:500}
.tools{gap:14px}
.cta,.button{font-size:16px;font-weight:600}
.lead,.sub,.hint,.supplier-note,.safe{font-size:16px;line-height:1.85}
.supplier-copy strong{font:600 18px/1.55 var(--latin);overflow-wrap:anywhere}
.supplier-copy small{font-size:14px;line-height:1.7}
.config h2{font-size:28px;line-height:1.6}
.summary h3{font-size:23px;line-height:1.55}
.summary dl,.summary .safe{font-size:14px}
.hero--editorial h1#headline{font-weight:650;line-height:1.45}
.cart-open{display:flex;align-items:center;gap:7px;min-width:44px;min-height:44px;font-size:14px;white-space:nowrap}
.cart-open svg{width:23px;height:23px}.cart-open b{font-size:14px;min-width:23px;height:23px;border-radius:50%;background:var(--crimson);line-height:23px;text-align:center}
.add-cart{margin-top:12px}
.cart-dialog{width:min(720px,calc(100vw - 32px));padding:28px}
.cart-dialog .dialog-top{position:sticky;top:-28px;background:var(--surface);z-index:1;padding-block:10px}
.cart-line{padding:22px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:24px}
.cart-line h3{font-size:18px;line-height:1.65;overflow-wrap:anywhere}.cart-line p{font-size:14px;color:var(--muted);margin-top:7px;overflow-wrap:anywhere}
.cart-line-controls{display:grid;gap:10px;justify-items:end}
.cart-quantity{display:flex;align-items:center;border:1px solid #ffffff30;border-radius:5px;gap:8px}.cart-quantity button{width:44px;height:44px;font-size:22px}.cart-quantity span{min-width:20px;text-align:center}
.cart-remove{color:var(--muted);text-decoration:underline;min-height:44px;font-size:14px}
.cart-total{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0}
.cart-note{font-size:14px;line-height:1.8;color:var(--muted);margin:0 0 20px}
.cart-dialog .button+.button{margin-top:12px}.cart-empty{padding:30px 0}
.cart-feedback{position:fixed;z-index:45;bottom:24px;inset-inline:20px;margin:auto;max-width:480px;pointer-events:none;background:#343238;border:1px solid #665258;border-radius:6px;padding:12px 18px;font-size:16px;box-shadow:0 8px 32px #0007}
.cart-feedback:empty{display:none}
.mobile-add{display:none}
@media(min-width:1101px){.header .search span{display:none}.header .search{padding:0;min-width:44px;justify-content:center}}
@media(max-width:640px){
 .header{gap:10px}.tools{gap:6px}.cart-label{display:none}.header .brand{gap:8px}.header .brand b{font-size:18px}
 .lead,.sub,.hint,.supplier-note,.safe,.summary dl,.summary .safe,.supplier-copy small,.cart-line p,.cart-note,.cart-remove,.cart-open{font-size:16px}
 .config h2{font-size:25px}.supplier-copy strong{font-size:17px}.summary h3{font-size:22px}
 .cart-dialog{padding:20px;max-height:calc(100dvh - 32px)}.cart-dialog .dialog-top{top:-20px}.cart-line{grid-template-columns:1fr;gap:16px}.cart-line-controls{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
 #mbar{flex-wrap:wrap;gap:8px;padding:10px 16px}#mbar>.cta{width:auto;flex:1;min-width:155px;font-size:16px;padding:12px}
 #mbar .mobile-add{display:flex;width:100%;min-height:44px;padding:8px}.on-cat{padding-bottom:150px}.cart-feedback{bottom:160px}
 .cart-total{align-items:flex-start;flex-wrap:wrap}
}
