/* Mobile calendar: reservations take priority over controls. Desktop stays intact. */
.dc-mobile-controls{display:none}
@media(max-width:768px),(max-width:1024px) and (pointer:coarse){
  body.dc-mobile-calendar{height:100dvh!important;padding-bottom:0!important;overflow:hidden!important}
  body.dc-mobile-calendar #admin-layout{height:100dvh!important;min-height:0!important}
  body.dc-mobile-calendar #main-area{min-width:0!important;min-height:0!important;height:100%!important}
  body.dc-mobile-calendar #sidebar{position:fixed;left:0;top:0;height:100dvh;z-index:200}
  body.dc-mobile-calendar #sidebar.mobile-hidden{transform:translateX(-100%)}
  body.dc-mobile-calendar #content{padding:0!important;overflow:hidden!important;min-height:0!important;flex:1!important}
  body.dc-mobile-calendar #topbar{height:44px!important;min-height:44px!important;padding:0 10px!important;gap:10px!important;overflow:hidden!important;flex-shrink:0!important}
  body.dc-mobile-calendar #topbar>*:not(.hamburger):not(#panel-title):not(#tenant-brand):not(#tenant-impersonation){display:none!important}
  body.dc-mobile-calendar #tenant-brand{max-width:120px!important;min-width:0!important;padding:0!important;border:0!important;gap:5px!important;margin:0!important;flex-shrink:1!important}
  body.dc-mobile-calendar #tenant-brand-name{font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  body.dc-mobile-calendar #tenant-brand-logo{width:22px!important;height:22px!important;flex-shrink:0!important}
  body.dc-mobile-calendar #tenant-impersonation{font-size:10px!important;padding:2px 4px!important;gap:3px!important;min-width:0!important}
  body.dc-mobile-calendar #topbar>.hamburger{display:flex!important;align-items:center;justify-content:center;min-width:40px!important;min-height:40px!important;font-size:22px!important;flex-shrink:0!important}
  body.dc-mobile-calendar #topbar>#panel-title{display:block!important;font-size:15px!important;line-height:1.2!important;white-space:nowrap!important;flex:1!important}
  body.dc-mobile-calendar #global-alerts,body.dc-mobile-calendar .dc-desktop-controls{display:none!important}
  body.dc-mobile-calendar #panel-calendario{padding:0!important;margin:0!important;min-width:0!important}
  body.dc-mobile-calendar #drag-calendar-container{min-width:0!important;width:100%!important}
  body.dc-mobile-calendar .dc-mobile-controls{display:grid!important;grid-template-columns:36px minmax(0,1fr) 36px 44px 40px;align-items:center;gap:4px;position:relative;z-index:25;height:48px;padding:4px 6px;background:var(--surface,#fff);border-bottom:1px solid #c9d5cd}
  body.dc-mobile-calendar .dc-mobile-controls .dc-btn{display:flex!important;align-items:center;justify-content:center;width:100%;min-width:0!important;min-height:40px!important;height:40px!important;margin:0!important;padding:0 5px!important;font:600 13px/1 system-ui,sans-serif!important;border-radius:9px!important;letter-spacing:0!important;color:#173c2b!important;background:#f1f5f2!important;border:1px solid #d5dfd8!important;touch-action:manipulation}
  body.dc-mobile-calendar .dc-mobile-controls>button:first-child,body.dc-mobile-calendar .dc-mobile-controls>button:nth-child(3){font-size:26px!important;font-weight:400!important}
  body.dc-mobile-calendar .dc-mobile-title{min-width:0;text-align:center;font:750 16px/1.15 system-ui,sans-serif;color:#173c2b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  body.dc-mobile-calendar .dc-mobile-options{position:static}
  body.dc-mobile-calendar .dc-mobile-options>summary{list-style:none;cursor:pointer}
  body.dc-mobile-calendar .dc-mobile-options>summary::-webkit-details-marker{display:none}
  body.dc-mobile-calendar .dc-mobile-menu{position:absolute;right:6px;top:46px;width:min(290px,calc(100vw - 12px));max-height:calc(100dvh - 160px);overflow:auto;background:#fff;color:#173c2b;border:1px solid #cbd9cf;border-radius:14px;padding:16px;box-shadow:0 12px 40px #10251c33;display:grid;gap:12px;font:14px/1.4 system-ui,sans-serif}
  body.dc-mobile-calendar .dc-mobile-menu .dc-mobile-count{font-size:12px;color:#52675a}
  body.dc-mobile-calendar .dc-mobile-menu>.dc-btn{justify-content:flex-start!important;padding:0 12px!important}
  body.dc-mobile-calendar .dc-mobile-zoom{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:8px}
  body.dc-mobile-calendar .dc-mobile-controls .dc-btn:focus-visible{outline:3px solid #a16b00!important;outline-offset:2px}
  body.dc-mobile-calendar .dc-status-legend{height:24px!important;margin:0!important;padding:3px 8px!important;gap:4px 12px!important;flex-wrap:nowrap!important;overflow:hidden!important;font:10px/18px system-ui,sans-serif!important;background:#fff;color:#243c30!important}
  body.dc-mobile-calendar .dc-status-legend>span{gap:4px!important}
  body.dc-mobile-calendar .dc-status-legend>span>span{width:7px!important;height:7px!important}
  body.dc-mobile-calendar .dc-scroll{border-radius:0!important;border-left:0!important;border-right:0!important;max-width:100%!important;touch-action:pan-x pan-y!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:thin}
  body.dc-mobile-calendar .dc-scroll::-webkit-scrollbar{width:4px;height:4px}
  body.dc-mobile-calendar .dc-label-cell{padding:0 6px!important;gap:4px!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important}
  body.dc-mobile-calendar .dc-unit-code{font-size:12px!important;line-height:16px!important;min-width:0!important}
  body.dc-mobile-calendar .dc-unit-name{font-size:10px!important;line-height:14px!important;width:100%;max-width:100%!important;opacity:.85}
  body.dc-mobile-calendar .dc-header-label{font-size:10px!important;letter-spacing:.2px!important}
  body.dc-mobile-calendar .dc-day-name{font-size:9px!important;line-height:12px!important}
  body.dc-mobile-calendar .dc-day-num{font-size:15px!important;line-height:18px!important}
  body.dc-mobile-calendar .dc-day-occ{font-size:9px!important;line-height:10px!important}
  body.dc-mobile-calendar .dc-bar{padding:0 5px!important;gap:4px!important;cursor:pointer!important}
  body.dc-mobile-calendar .dc-bar-text{font-size:12px!important}
  body.dc-mobile-calendar .dc-bar-handle{display:none!important}
  body.dc-mobile-calendar .dc-payment-coin{width:18px!important;height:18px!important;font-size:12px!important;flex-shrink:0}
  body.dc-mobile-calendar .lemu-bnav{height:calc(52px + env(safe-area-inset-bottom))!important;padding-bottom:env(safe-area-inset-bottom)!important}
  body.dc-mobile-calendar .lemu-bnav-icon{font-size:18px!important;line-height:18px!important}
  body.dc-mobile-calendar .lemu-bnav-label{font-size:9px!important;letter-spacing:0!important}
  body.dc-mobile-calendar .lemu-bnav-fab{width:38px!important;height:38px!important;font-size:24px!important;box-shadow:none!important}
  body.dc-mobile-calendar:not(.dc-calendar-help) #klo-guia{display:none!important}
  body.dc-mobile-calendar #dc-modal-overlay{z-index:1000!important}
}
