/* Floating quick actions and page navigation, using the existing Arial Black system. */
body{padding-bottom:0}
.site-footer{padding-bottom:calc(150px + env(safe-area-inset-bottom))}
.page-marysville .site-footer,.page-three-rivers .site-footer,.page-niles .site-footer{padding-bottom:calc(200px + env(safe-area-inset-bottom))}
.mobile-actions{display:flex;position:fixed;left:auto;right:24px;bottom:calc(24px + env(safe-area-inset-bottom));z-index:55;width:168px;max-width:calc(100vw - 32px);flex-direction:column;gap:8px;padding:0;border:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:none;transition:opacity .25s,visibility .25s}
.mobile-actions>a{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 14px;border:1px solid #ffffff33;border-radius:999px;background:linear-gradient(135deg,#bb1730,#920c20);color:#fff;font-size:14px;font-weight:600;line-height:1.35;box-shadow:0 8px 24px #bb17303d,inset 0 1px 0 #ffffff4d;pointer-events:auto;transition:transform .25s var(--motion-ease),box-shadow .25s var(--motion-ease),background .25s}
.mobile-actions>a+a{background:#fffffff2;color:var(--blue);border:1px solid #ffffffcc;box-shadow:0 8px 24px #3a202b29;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.mobile-actions>a>.icon{width:17px;height:17px}
.mobile-actions.actions-pair{flex-direction:row;width:336px;gap:10px}
.mobile-actions.actions-pair>a{flex:1 1 0;min-width:0;white-space:nowrap}
.mobile-actions.actions-pair>a:first-child{flex-grow:1.2}
.mobile-actions.actions-trio{flex-direction:row;width:408px;gap:10px}
.mobile-actions.actions-trio>a{flex:1 1 0;min-width:0;white-space:nowrap}
.mobile-actions.actions-trio>a:nth-child(2){background:linear-gradient(135deg,#bb1730,#920c20);color:#fff;border-color:#ffffff33;box-shadow:0 8px 24px #bb17303d,inset 0 1px 0 #ffffff4d;backdrop-filter:none;-webkit-backdrop-filter:none}
.page-marysville .mobile-actions>a:first-child,.page-three-rivers .mobile-actions>a:first-child,.page-niles .mobile-actions>a:first-child{background:linear-gradient(135deg,#df2834,#be1723);box-shadow:0 8px 24px #b30c2033,inset 0 1px 0 #ffffff4d}

.page-tools{position:fixed;left:24px;bottom:calc(24px + env(safe-area-inset-bottom));z-index:56;display:flex;flex-direction:column;align-items:flex-start;gap:16px;pointer-events:none}
.back-to-top{display:flex;align-items:center;justify-content:center;flex:none;width:46px;height:46px;padding:0;border:0;border-radius:10px;background:linear-gradient(135deg,#bb1730,#d43a50);color:#fff;box-shadow:0 8px 24px #bb173059;line-height:0;pointer-events:auto;transition:opacity .28s,visibility .28s,transform .28s var(--motion-ease),box-shadow .25s}
.back-to-top>.icon{width:20px;height:20px;stroke-width:2.2}
.section-jump{pointer-events:auto}
.jump-button{display:flex;align-items:center;gap:8px;min-height:44px;padding:11px 18px 11px 14px;border:0;border-radius:999px;background:#ffffffe6;color:var(--ink);font-size:14px;font-weight:600;line-height:1.4;list-style:none;cursor:pointer;user-select:none;box-shadow:0 8px 24px #3a202b29;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transition:transform .25s var(--motion-ease),box-shadow .25s}
.jump-button::-webkit-details-marker{display:none}.jump-button::marker{content:""}
.jump-button>.icon{width:18px;height:18px;color:var(--bright);transition:transform .3s}
.section-jump[open]>.jump-button>.icon{transform:rotate(180deg)}
.jump-label-short{display:none}
.jump-panel{position:absolute;left:0;bottom:calc(100% + 12px);width:260px;max-width:calc(100vw - 32px);max-height:calc(100vh - 240px);max-height:min(420px,calc(100dvh - 240px - env(safe-area-inset-bottom)));overflow:auto;overscroll-behavior:contain;padding:10px;border:1px solid #ffffffcc;border-radius:16px;background:#fffffff7;box-shadow:0 20px 48px #3a202b33;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.jump-panel ul{list-style:none;margin:0;padding:0}.jump-panel li{margin:0;padding:0}
.jump-panel a{display:block;padding:10px 14px;border-radius:10px;color:var(--ink);font-size:14px;font-weight:600;line-height:1.5;transition:background .2s,color .2s}
.section-jump[open] .jump-panel{animation:studio-jump-open .25s ease both}
@keyframes studio-jump-open{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.page-tools .control-hidden{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px)}
.section-jump{transition:opacity .28s,visibility .28s,transform .28s var(--motion-ease)}
.menu-open .mobile-actions,.menu-open .page-tools,.dialog-open .mobile-actions,.dialog-open .page-tools,.section-menu-open .mobile-actions{opacity:0;visibility:hidden;pointer-events:none}
.menu-open .mobile-actions>a,.dialog-open .mobile-actions>a,.section-menu-open .mobile-actions>a{pointer-events:none}

@media(hover:hover) and (pointer:fine){
.mobile-actions>a:hover,.back-to-top:hover,.jump-button:hover{transform:translateY(-2px);box-shadow:0 12px 28px #bb173047}
.jump-panel a:hover{background:#bb173017;color:var(--blue)}
}
@media(max-width:760px){
.mobile-actions{right:16px;bottom:calc(16px + env(safe-area-inset-bottom));width:148px}
.mobile-actions>a{min-height:44px;padding:11px 12px;font-size:13px;gap:7px}
.mobile-actions>a>.icon{width:15px;height:15px}
.mobile-actions.actions-pair{left:16px;right:16px;width:auto}
.mobile-actions.actions-trio{left:16px;right:16px;width:auto;gap:8px}
.mobile-actions.actions-trio>a{padding:11px 10px;gap:6px}
.has-action-pair .page-tools,.has-action-trio .page-tools{bottom:calc(76px + env(safe-area-inset-bottom))}
.has-action-pair .jump-panel,.has-action-trio .jump-panel{max-height:calc(100vh - 300px);max-height:min(420px,calc(100dvh - 300px - env(safe-area-inset-bottom)))}
.has-action-pair .site-footer,.has-action-trio .site-footer{padding-bottom:calc(190px + env(safe-area-inset-bottom))}
.page-tools{left:16px;bottom:calc(16px + env(safe-area-inset-bottom));gap:12px}
.back-to-top{width:44px;height:44px}
.jump-button{min-height:44px;padding:11px 14px 11px 12px;font-size:13px}
}
@media(max-width:380px){.mobile-actions.actions-trio>a{padding-inline:6px;font-size:12px;gap:5px}}
@media(max-width:480px){.jump-label-long{display:none}.jump-label-short{display:inline}.jump-button{gap:7px}}
@media(prefers-reduced-motion:reduce){
.mobile-actions,.mobile-actions>a,.page-tools .back-to-top,.section-jump,.jump-button,.jump-button>.icon,.jump-panel a{transition:none}
.section-jump[open] .jump-panel{animation:none}
.mobile-actions>a:hover,.back-to-top:hover,.jump-button:hover,.page-tools .control-hidden{transform:none}
}
@media print{.page-tools,.mobile-actions{display:none!important}}
