/* Shared usability layer for the customer, cleaner and staff portals. Layout only; access rules stay in each page. */
.cr-totop{position:fixed;right:16px;bottom:18px;z-index:900;width:46px;height:46px;border-radius:50%;border:0;background:#1b4f9e;color:#fff;font-size:20px;box-shadow:0 6px 18px rgba(13,24,40,.25);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s}
.cr-totop.show{opacity:1;pointer-events:auto}
.cr-totop:focus-visible{outline:3px solid #087e8b;outline-offset:3px}
.tab-btn:focus-visible{outline:3px solid #087e8b;outline-offset:2px}
.cr-tabs-hint{display:none}
@media(max-width:760px){
  .cr-ux-tabs{position:sticky;top:0;z-index:50;display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:6px!important;margin-left:0!important;margin-right:0!important;padding:10px 2px!important;background:rgba(244,248,255,.97);backdrop-filter:blur(6px);border-bottom:1px solid #d9e4f1;box-shadow:0 4px 12px rgba(13,24,40,.06)}
  .cr-ux-tabs::-webkit-scrollbar{display:none}
  .cr-ux-tabs .tab-btn{flex:0 0 auto;scroll-snap-align:start;white-space:nowrap;min-height:44px;padding:10px 14px!important}
  .cr-tabs-hint{display:block;font-size:11.5px;color:#536780;margin:4px 0 8px;text-align:right}
  .cr-tabs-hint[hidden]{display:none}
}
