/* HESTIA PMS V7.10.6 — Stable Lite UX overrides */
@media (min-width:769px){
  html,body{height:100%;background:#f3f0e8}
  .shell{width:100vw;height:100dvh;margin:0;border-radius:0;box-shadow:none;grid-template-columns:238px minmax(0,1fr)}
  .sb{padding:20px 14px 16px}
  .main{border-radius:0}
  .topbar{padding:20px 26px 12px;align-items:center}
  .con{padding:0 24px 20px}
  .v7-page-title{font-size:30px}
  .v7-room-toolbar{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}
  .v7-room-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));justify-content:stretch}
  .v7-room{max-width:none;min-height:164px}
  .v7-room__guest{font-size:12px}.v7-room__timing{font-size:10px}.v7-room__finance,.v7-room__hk{font-size:9.5px}
  .v7-table th{position:sticky;top:0;z-index:2}
  .v7-table td{font-size:10.5px}.v7-table th{font-size:9px}
  .v7-row-actions button{width:30px;height:30px}
  .modal{max-height:min(92dvh,900px)}
}

/* Clearer state contrast without changing the established V7 palette. */
.v7-room.is-available{box-shadow:inset 3px 0 #46a36b,0 2px 8px rgba(31,39,53,.025)}
.v7-room.is-occupied{box-shadow:inset 3px 0 #4b91e5,0 2px 8px rgba(31,39,53,.025)}
.v7-room.is-arrival{box-shadow:inset 3px 0 #e7ae20,0 2px 8px rgba(31,39,53,.025)}
.v7-room.is-dirty{box-shadow:inset 3px 0 #e09a18,0 2px 8px rgba(31,39,53,.025)}
.v7-room.is-ooo{box-shadow:inset 3px 0 #78838f,0 2px 8px rgba(31,39,53,.025)}
.v7-room__status b{letter-spacing:.02em}
.v7-room__ready{display:inline-flex;align-items:center;gap:5px}

/* Better keyboard/touch ergonomics. */
button,.ni,.v7-room{touch-action:manipulation}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.ni:focus-visible,.v7-room:focus-visible{outline:3px solid rgba(244,181,28,.30);outline-offset:2px}

/* Stable Lite cleaning action is intentionally prominent. */
#rm-foot .btn.success{font-weight:800;min-height:38px;padding-inline:16px}

@media (max-width:768px){
  :root{--m78-page:#f7f4ee}
  .m78-header{position:sticky;top:0;z-index:35;background:rgba(247,244,238,.96);backdrop-filter:blur(12px)}
  .m78-content{padding-bottom:calc(102px + env(safe-area-inset-bottom,0px))}
  .m78-bottom-nav{padding-bottom:max(8px,env(safe-area-inset-bottom,0px))}
  .m78-room-card,.m78-booking-card,.m78-simple-card{box-shadow:0 3px 14px rgba(31,39,53,.045)}
  .m78-room-card{min-height:142px}
  .m78-room-card__detail{font-size:10px;line-height:1.45}
  .m78-room-card__guest{font-size:12px}
  .m78-action,.m78-wide-btn,.btn{min-height:46px}
  .m78-sheet header{position:sticky;top:0;z-index:2;background:#fffdfa}
}

@media (max-width:360px){
  .m78-room-grid{grid-template-columns:1fr!important}
  .m78-header{padding-left:12px;padding-right:12px}
  .m78-content{padding-left:10px;padding-right:10px}
}
