/* FactorPrint CMS 1.3.34 — CSS Snapshot 2026: Back-to-top geometry only.
   JS controls display using inline !important; do not force visibility:visible. */
:where(.public-body,.admin-body) > .fp-back-to-top[data-fp-back-to-top]{
 position:fixed!important;inset-inline-end:calc(18px + env(safe-area-inset-right,0px))!important;
 inset-block-end:calc(18px + env(safe-area-inset-bottom,0px))!important;
 display:none!important; /* Progressive hard-hide; JS inline important overrides on scroll. */
 z-index:1200;place-items:center;box-sizing:border-box;
 width:46px;min-width:46px;height:46px;min-height:46px;padding:0;
 border:1px solid rgb(255 255 255 / 24%);border-radius:50%;background:#176b9c;color:#fff!important;
 font:700 24px/1 system-ui,sans-serif;text-align:center;text-decoration:none!important;
 box-shadow:0 5px 20px rgb(18 49 76 / 26%);cursor:pointer;touch-action:manipulation;
 transition:transform .16s ease,background-color .16s ease;
}
:where(.public-body,.admin-body) > .fp-back-to-top[data-fp-back-to-top].is-scrolled:hover{
 background:#0c537c;transform:translateY(-2px);
}
:where(.public-body,.admin-body) > .fp-back-to-top[data-fp-back-to-top]:focus-visible{
 outline:3px solid #fbd367;outline-offset:3px;
}
@media(max-width:700px){
 :where(.public-body,.admin-body) > .fp-back-to-top[data-fp-back-to-top]{
  inset-inline-end:calc(14px + env(safe-area-inset-right,0px))!important;
  inset-block-end:calc(20px + env(safe-area-inset-bottom,0px))!important;
  width:48px;min-width:48px;height:48px;min-height:48px;
 }
}
@media(prefers-reduced-motion:reduce){
 :where(.public-body,.admin-body) > .fp-back-to-top[data-fp-back-to-top]{transition:none}
 :where(.public-body,.admin-body) > .fp-back-to-top[data-fp-back-to-top].is-scrolled:hover{transform:none}
}
