/* One shell geometry. Chat, dialogs and payment SDK mounts have their own semantics. */
.myopal-site :is(.myopal-mobile-nav,.myopal-purchase-bar,.myopal-cart-summary,.myopal-reward-action,.myopal-design-actions,.myopal-custom-enquiry,.myopal-action-footer--fixed) {
 position:fixed; top:auto; left:max(var(--myopal-dock-gutter),env(safe-area-inset-left,0px)); right:max(var(--myopal-dock-gutter),env(safe-area-inset-right,0px));
 bottom:calc(var(--myopal-floating-bottom) + var(--myopal-keyboard-inset,0px)); inset-inline-start:max(var(--myopal-dock-gutter),env(safe-area-inset-left,0px)); inset-inline-end:max(var(--myopal-dock-gutter),env(safe-area-inset-right,0px)); inset-block-end:calc(var(--myopal-floating-bottom) + var(--myopal-keyboard-inset,0px));
 width:auto; max-width:var(--myopal-dock-width); height:auto; min-height:var(--myopal-action-height); margin:0 auto; padding:var(--myopal-dock-padding);
 border:1px solid var(--myopal-color-border); border-radius:var(--myopal-dock-radius); box-shadow:var(--myopal-dock-shadow); z-index:var(--myopal-layer-navigation);
}
.myopal-site :is(.myopal-mobile-nav,.myopal-purchase-bar,.myopal-design-actions,.myopal-custom-enquiry){background:var(--myopal-color-black);color:var(--myopal-color-on-dark);border-color:var(--myopal-color-black)}
.myopal-site :is(.myopal-cart-summary,.myopal-reward-action,.myopal-designer-actions){background:var(--myopal-color-surface);color:var(--myopal-color-ink)}
.myopal-site :is(.myopal-mobile-nav,.myopal-purchase-bar,.myopal-design-actions,.myopal-custom-enquiry,.myopal-reward-action) .myopal-icon{width:var(--myopal-dock-icon);height:var(--myopal-dock-icon);flex-shrink:0}
.myopal-site .myopal-mobile-nav > :is(a,button){min-height:var(--myopal-action-height);font-size:var(--myopal-text-xs)}
.myopal-site :is(.myopal-product-action,.myopal-design-actions > button,.myopal-design-actions .myopal-favorite-control){min-height:var(--myopal-action-height);font-size:var(--myopal-text-xs)}
.myopal-site .myopal-custom-enquiry{justify-content:center;font-size:var(--myopal-action-font-size)}
.myopal-site :is(.myopal-design-actions--saved,.myopal-designer-actions) .myopal-action {min-height:var(--myopal-action-height);padding:var(--myopal-action-padding);font-size:var(--myopal-action-font-size);border:1px solid var(--myopal-color-gold);border-radius:var(--myopal-radius-pill);background:var(--myopal-action-background);color:var(--myopal-action-foreground);flex-direction:row}
.myopal-site :is(.myopal-design-actions--saved,.myopal-designer-actions) .myopal-action--secondary{background:var(--myopal-action-secondary-background);color:var(--myopal-action-secondary-foreground);border-color:var(--myopal-color-border)}
.myopal-site .myopal-designer-actions .myopal-action--danger{background:var(--myopal-action-danger-background);color:var(--myopal-action-danger-foreground);border-color:var(--myopal-action-danger-foreground)}
.myopal-site :is(.myopal-reward-action a,.myopal-design-enquiry,.myopal-cart-primary,.myopal-cart-remove-selected){min-height:var(--myopal-action-height);padding:var(--myopal-action-padding);font-size:var(--myopal-action-font-size);background:var(--myopal-action-background);color:var(--myopal-action-foreground);border-radius:var(--myopal-radius-pill);line-height:1.4;text-align:center;white-space:normal}
.myopal-site :is(.myopal-cart-done button){min-height:var(--myopal-action-height);font-size:var(--myopal-action-font-size)}
.myopal-site :is(.myopal-cart-remove-selected [data-confirm-clear] button){background:var(--myopal-action-danger-background);color:var(--myopal-action-danger-foreground);border-color:var(--myopal-action-danger-foreground);border-radius:var(--myopal-radius-pill)}
.myopal-action-row--three{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--myopal-space-2);--myopal-action-padding:.7rem .4rem}

/* Edge section variant: the first action is the full outer gold segment. */
.myopal-site .myopal-purchase-bar{padding:var(--myopal-dock-purchase-padding);border-width:0}
.myopal-purchase-bar>.myopal-product-design{align-self:stretch;border-radius:var(--myopal-dock-radius) 0 0 var(--myopal-dock-radius);background:var(--myopal-action-background);color:var(--myopal-action-foreground)}
.myopal-site .myopal-mobile-nav{overflow:visible}
/* Compact contextual tools share positioning tokens, but are not a full-width dock. */
.myopal-floating-tools{position:fixed;right:max(var(--myopal-dock-gutter),env(safe-area-inset-right,0px));bottom:calc(max(var(--myopal-dock-clearance,0px),var(--myopal-floating-bottom)) + var(--myopal-keyboard-inset,0px));display:flex;align-items:center;gap:var(--myopal-space-2);z-index:var(--myopal-layer-navigation)}
.myopal-floating-action{display:grid;place-items:center;width:var(--myopal-floating-action-size);height:var(--myopal-floating-action-size);padding:0;border:1px solid var(--myopal-color-border);border-radius:50%;background:var(--myopal-action-background);color:var(--myopal-action-foreground);box-shadow:var(--myopal-dock-shadow);font:600 var(--myopal-text-sm)/1 var(--myopal-font-body);cursor:pointer}
.myopal-floating-tools form{margin:0;order:-1}.myopal-floating-tools .myopal-action{padding:.5rem .75rem;box-shadow:var(--myopal-dock-shadow)}
.myopal-action-surface--expandable{max-height:calc(var(--myopal-visible-height,100dvh) - var(--myopal-header-height,0px) - 1.5rem);overflow-y:auto}
.myopal-action-input{display:block;width:100%;min-height:min(8rem,25dvh);max-height:min(15rem,38dvh);margin-block:.5rem;padding:.75rem;border:1px solid var(--myopal-color-border);border-radius:var(--myopal-radius-md);font:inherit;line-height:1.5;resize:none;overflow-y:auto}
.myopal-action-surface--expandable .myopal-dismissible{display:flex;align-items:center}

.myopal-site .myopal-cart-remove-selected{background:var(--myopal-action-danger-background);color:var(--myopal-action-danger-foreground);border-color:var(--myopal-action-danger-foreground)}

/* Expandable input composition shares spacing with other action surfaces. */
.myopal-action-composer{display:grid;gap:var(--myopal-space-2);margin:0 0 var(--myopal-space-3);padding:var(--myopal-space-2)}
.myopal-action-composer .myopal-action-input{margin:0}
