/* Shared control geometry. Labels may wrap; controls in the same row stretch together. */
:root{--button-height:44px;--button-compact-height:40px;--button-line:20px}
:root .btn{box-shadow:none;border-radius:16px;transition:background-color .18s,border-color .18s,color .18s}
:root .btn:hover,:root .btn:active{box-shadow:none;transform:none}
:root .btn:not(.secondary):hover{background:color-mix(in srgb,var(--green) 94%,var(--ink))}
:root :is(.btn,.chip,.quick-add,.compare-toggle,.plain-button){box-sizing:border-box;min-height:var(--button-height);height:auto;padding:10px 18px;font-family:inherit;font-size:13px;font-weight:700;line-height:var(--button-line);display:inline-flex;align-items:center;justify-content:center;gap:10px;text-align:center;vertical-align:middle;white-space:normal;overflow-wrap:anywhere;max-width:100%;border-width:1px;flex-shrink:0}
:root .plain-button{border:1px solid transparent;border-radius:14px}
:root :is(.quick-add,.compare-toggle){width:100%;min-height:44px;padding:10px 12px;font-size:12px;line-height:20px}
:root .btn.small{min-height:40px;height:40px;padding:8px 14px;font-size:12px;line-height:20px}
:root .icon-btn{box-sizing:border-box;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1}
:root :is(.filters .chip,.catalog-suggestions .chip,.company-jumps .chip,.stock-alternative>.chip){min-height:40px;padding:8px 12px;font-size:12px;line-height:20px}
:root button.stock-size{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-width:52px;width:52px;height:40px;padding:0;line-height:20px;font-size:13px;flex-shrink:0}
:root .gallery-arrows>.chip{box-sizing:border-box;min-width:44px;width:44px;min-height:44px;padding:0}
:root :is(.company-links,.scenario-actions,.selection-add,.size-tools,.quick-links,.print-actions,.receipt-actions,.selection-export-actions,.shared-actions,.catalog-filter-actions,.compare-actions,.article-route-footer){display:flex;flex-wrap:wrap;align-items:stretch;gap:12px}
:root :is(.company-links,.scenario-actions,.selection-add,.size-tools,.quick-links,.print-actions,.receipt-actions,.selection-export-actions,.shared-actions,.catalog-filter-actions,.compare-actions,.article-route-footer)>:is(.btn,.chip,.plain-button,.text-link,.quiet-link){box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:44px;height:auto;padding:10px 16px;line-height:20px;font-size:13px;font-weight:700;text-align:center;border:1px solid var(--line);border-radius:16px;white-space:normal;overflow-wrap:anywhere;flex:1 1 150px;margin:0;max-width:100%}
:root .company-links>a.text-link,:root .scenario-actions>a.text-link,:root .quick-links>a.text-link,:root .size-tools>:is(a,button),:root .article-route-footer>a{background:transparent}
:root .shared-actions{margin-top:18px}
:root .shared-actions>.plain-button{margin:0}
:root .selection-export-actions>.chip{font-size:12px}
:root .selection-add .btn{font-size:13px!important}
:root .quick-links>a.text-link{font-size:12px}
:root .catalog-filter-actions{justify-content:space-between}
:root .catalog-filter-actions>:is(.chip,a.text-link){flex:0 1 200px}
:root .compare-actions{flex:0 1 440px}
:root .header-actions{align-items:center;min-width:max-content}
:root .btn:not(.secondary){border-color:var(--green)}
:root .product-overview>.compare-toggle{width:auto}
:root .size-calculator>:is(button,a.text-link){box-sizing:border-box;display:flex;align-items:center;justify-content:center;min-height:44px;height:auto;width:100%;padding:10px 16px;border:1px solid var(--line);border-radius:16px;font-size:13px;font-weight:700;line-height:20px;text-align:center}
:root .size-calculator>.btn{border-color:var(--green)}
@media(width > 650px){
 :root .header-actions .header-selection,:root .filter-apply{display:none}
}
@media(650px < width <= 800px){:root .site-masthead .masthead{gap:12px}}
@media(max-width:650px){
 :root .site-masthead .icon-btn,:root .masthead-leading #menu-toggle{width:36px;height:36px;min-width:36px;min-height:36px;padding:0}
 :root .site-masthead .masthead{grid-template-columns:36px minmax(0,1fr) auto;gap:6px}
 :root .site-masthead .brand{min-width:0;max-width:100%}
 :root .site-masthead .brand>img{max-width:100%}
 :root .header-actions>.btn.small{display:none}
 :root .catalog-filter-panel .catalog-filter-actions>a{display:none}
 :root .catalog-filter-panel .catalog-filter-actions{justify-content:flex-end}
 :root .catalog-compact-bar{align-items:stretch;gap:12px}
 :root .catalog-compact-bar>:is(.filter-toggle,a.text-link){box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex:1 1 0;min-width:0;min-height:44px;height:auto;padding:10px 12px;border:1px solid var(--line);border-radius:14px;font-size:13px;line-height:20px;text-align:center;margin:0;gap:6px}
 :root :is(.company-links,.scenario-actions,.selection-add,.size-tools,.quick-links,.print-actions,.receipt-actions,.shared-actions)>:is(.btn,.chip,.plain-button,.text-link,.quiet-link){flex-basis:100%}
 :root .selection-checkout-dock .btn{min-height:44px;padding:10px 14px;line-height:20px;font-size:12px;white-space:nowrap}
 :root .product-dock .btn{min-height:44px;padding:10px 14px;line-height:20px;font-size:12px}
}
