/* Shared actions stay below native modal dialogs and respect device safe areas. */
body{padding-bottom:100px}
html{scroll-padding-bottom:110px}
.quick-actions{position:fixed;right:28px;bottom:28px;z-index:40}
.floating-calculator{display:flex;align-items:center;gap:12px;min-height:56px;padding:15px 21px;border:1px solid #ffffff55;border-radius:6px;background:var(--navy);color:white;text-decoration:none;font-size:.875rem;box-shadow:0 3px 8px #00000012,0 10px 28px #0000001a}
.floating-calculator svg,.mobile-action svg{flex-shrink:0}
.floating-calculator:hover{background:var(--blue)}
.mobile-actions{display:none}
body:has(dialog[open]) .quick-actions,body:has(#navigation.is-open) .quick-actions{display:none}
.quick-actions a:focus-visible,.quick-actions button:focus-visible{outline:3px solid #759cc5;outline-offset:4px}
@media(max-width:800px){
 body{padding-bottom:calc(90px + env(safe-area-inset-bottom,0px))}
 html{scroll-padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
 .quick-actions{left:0;right:0;bottom:0;padding:9px max(12px,env(safe-area-inset-right,0px)) calc(9px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -4px 18px #0000000a}
 .floating-calculator{display:none}
 .mobile-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:600px;margin-inline:auto}
 .mobile-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:56px;padding:6px 8px;border:1px solid var(--line);border-radius:5px;text-decoration:none;background:transparent;color:var(--navy);font:500 .6875rem/1.3 var(--sans)}
 .quick-request{background:var(--navy);color:white;border-color:var(--navy)}
 .mobile-action:hover{background:#e5ebef}.quick-request:hover{background:var(--blue)}
 .quick-actions.keyboard-open{display:none}
 body:has(input:not([type="checkbox"]):not([type="radio"]):focus,textarea:focus,select:focus) .quick-actions{display:none}
}
@media(prefers-reduced-motion:no-preference){.floating-calculator,.mobile-action{transition:background-color .15s,transform .15s}.floating-calculator:active,.mobile-action:active{transform:scale(.96)}}
@media print{.quick-actions{display:none}body{padding-bottom:0}}
