/* Zaersara v1.9.0 mobile branch. Loaded only <=820px, same deploy/package and backend. */
html{overflow-x:hidden}
body{overflow-x:hidden;background:#f5f7fa}
.topbar{min-height:54px;padding:9px 12px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;position:relative}
.brand{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:1px}.brand strong{font-size:16px}.brand small{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:230px}
.mobile-menu-toggle{display:inline-grid;place-items:center;width:42px;height:38px;padding:0;border:1px solid rgba(255,255,255,.25);border-radius:9px;background:#173a56;color:#fff;font-size:21px;line-height:1}
.nav{display:none;grid-column:1/-1;width:100%;padding:8px 0 2px;border-top:1px solid rgba(255,255,255,.12);grid-template-columns:1fr 1fr;gap:7px}
.topbar.nav-open .nav{display:grid}.nav a,.nav .nav-user,.nav .version-chip{margin:0;min-width:0;border-radius:8px;padding:9px 10px;background:rgba(255,255,255,.07);font-size:12px;text-align:center}.nav-user{grid-column:1/-1}.version-chip{direction:ltr}.nav a:last-child{background:rgba(180,35,24,.22)}
.container{width:100%;max-width:none;padding:12px 9px 38px}.admin .container{padding-top:12px}
.card{border-radius:12px}
.page-head{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-bottom:13px}.page-head h1{font-size:22px;line-height:1.45;margin:0}.page-head p{font-size:12px;line-height:1.8}.page-head>.btn,.page-head>.head-actions{align-self:stretch}.head-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.head-actions .btn,.head-actions .pill{text-align:center;font-size:11px;padding:8px}
.notice,.error{font-size:12px;line-height:1.8;padding:10px 11px;margin-bottom:12px}

/* Forms: deliberately single-column on mobile. */
.form-grid,.public-form{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;padding:14px!important}
.form-grid>*,.public-form>*{grid-column:1!important;min-width:0!important;width:100%}
.form-grid label,.public-form label{font-size:12px;min-width:0}.form-grid input,.form-grid select,.form-grid textarea,.public-form input,.public-form select,.public-form textarea{width:100%!important;max-width:100%!important;min-width:0!important;padding:10px!important}
.date-field{grid-template-columns:.85fr 1.4fr 1fr;gap:5px;padding:9px}.date-field legend{font-size:11px}.date-field select{font-size:12px;padding:9px 4px!important}
.checkbox-row{width:100%!important;flex-direction:row!important;align-items:flex-start!important}.checkbox-row input{width:auto!important;flex:0 0 auto;margin-top:3px}
.single-property-fields{padding:11px;border-radius:10px}.single-property-fields h3{font-size:15px}.single-property-fields .form-grid{padding:8px 0 0!important}
.policy-settings-grid,.property-admission-form,.flex-grid{grid-template-columns:1fr!important}
.inline-actions{display:flex;flex-wrap:wrap;gap:6px}.inline-actions .btn,.inline-actions button{flex:1 1 auto;text-align:center}
.btn,button.primary{padding:9px 12px;font-size:12px}

/* Accommodation management gets its own mobile flow instead of squeezing desktop columns. */
.accommodation-create-stack{display:flex;flex-direction:column;gap:20px;margin-bottom:22px}.create-section{width:100%;min-width:0}.section-title{margin:0 3px 8px}.section-title h2{font-size:18px}.section-title p{font-size:11px;line-height:1.75}
.accommodation-grid{display:flex!important;flex-direction:column;gap:11px}.property-card{padding:13px}.property-head,.unit-card{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:9px}.property-head h3{font-size:16px}.property-head p{font-size:11px;line-height:1.7}.single-summary{font-size:11px}.unit-card{padding:10px 0}.unit-card .inline-actions,.property-head .inline-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.unit-card .inline-actions>* ,.property-head .inline-actions>*{min-width:0}.unit-card .inline-actions .btn,.property-head .inline-actions .btn,.unit-card .inline-actions button,.property-head .inline-actions button{width:100%;padding:7px 5px;font-size:10px}.unit-card .inline-actions form,.property-head .inline-actions form{display:block}

/* Calendar mobile branch */
.calendar-scope{margin:0 0 10px;padding:9px;overflow:hidden}.scope-row{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:6px;padding-bottom:3px;scrollbar-width:thin}.scope-label{flex:0 0 auto;align-self:center}.scope-chip{flex:0 0 auto;white-space:nowrap;padding:6px 8px;font-size:9px}.unit-scope .scope-chip{font-size:9px}
.selection-panel{position:sticky;top:0;margin:0 0 10px;padding:9px 10px;border-radius:11px;z-index:18}.selection-row{display:grid;grid-template-columns:1fr 1fr;gap:7px}.selection-field{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:auto}.selection-field span{font-size:9px}.selection-field strong{font-size:12px}.selection-panel .confirm{grid-column:1/-1;width:100%;padding:8px;font-size:12px}.selection-help{font-size:9px;line-height:1.55}
.overview-banner{padding:10px;font-size:11px}.overview-banner span{font-size:10px}
.month{margin-bottom:12px;border-radius:10px}.month-title{padding:8px 9px}.month-title h2{font-size:15px}.month-title small{display:none}.week-head div{padding:6px 0;font-size:8px;white-space:nowrap;overflow:hidden}.calendar-day{min-height:67px;padding:24px 1px 2px}.day-number{right:2px;top:2px;min-width:19px;height:19px;font-size:9px}.day-events{gap:1px}.event{padding:2px 2px;font-size:7px;border-radius:3px;line-height:1.2}.event.unit-event{gap:0}.event-serial{font-size:6px}.event-guest{font-size:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-host,.event-unit{display:none}.day-stat{padding:2px 1px;gap:1px}.day-stat b{font-size:7px}.day-stat span{font-size:6px}
.modal{align-items:end;padding:0}.modal-card{width:100%;max-width:none;max-height:88vh;border-radius:17px 17px 0 0;padding:17px 13px calc(18px + env(safe-area-inset-bottom))}.modal-card h2,.modal-card h3{font-size:18px}.modal-close{top:5px;left:6px}.day-booking-row{padding:9px;font-size:12px}

/* Tables become stacked cards; labels are injected by mobile.js from the desktop header. */
.table-wrap{overflow:visible;background:transparent;border:0;box-shadow:none}.data-table,.permission-table{display:block;width:100%!important;min-width:0!important;border:0}.data-table thead,.permission-table thead{display:none}.data-table tbody,.permission-table tbody{display:flex;flex-direction:column;gap:10px}.data-table tr,.permission-table tr{display:block;background:#fff;border:1px solid #e4e7ec;border-radius:12px;padding:9px 11px;box-shadow:0 2px 8px rgba(16,24,40,.03)}.data-table td,.permission-table td{display:grid!important;grid-template-columns:minmax(88px,34%) minmax(0,1fr);gap:8px;width:100%;padding:7px 0!important;border:0!important;border-bottom:1px dashed #eaecf0!important;text-align:right!important;min-width:0}.data-table td:last-child,.permission-table td:last-child{border-bottom:0!important}.data-table td::before,.permission-table td::before{content:attr(data-label);font-size:10px;font-weight:700;color:#667085;line-height:1.6}.data-table td>* ,.permission-table td>*{min-width:0}.permission-table input[type=checkbox]{width:18px!important}.audit-json{max-width:100%;overflow:auto;font-size:9px}.filter-grid{grid-template-columns:1fr!important;padding:12px}.filter-grid input,.filter-grid select{width:100%}

/* CRM and detail views */
.guest-summary-grid{grid-template-columns:1fr 1fr!important;gap:8px}.summary-card{padding:10px}.summary-card strong{font-size:12px}.guest-section{padding:13px}.guest-section h2{font-size:17px}.property-admission-grid{grid-template-columns:1fr!important}.guest-note-form{flex-direction:column;align-items:stretch}.guest-note-form .grow{min-width:0}.guest-note-form input,.guest-note-form select{width:100%}.section-head{flex-direction:column;align-items:stretch}.guest-timeline{padding-right:16px}
.search-bar{display:flex;flex-direction:column;gap:7px}.search-bar input{width:100%}
.two-col,.users-grid{grid-template-columns:1fr!important}.approval-card,.panel{padding:14px}

/* Public mobile branch */
.public .topbar{display:flex;flex-direction:row}.public .container{padding:0 0 30px}.hero{height:220px}.hero-title{width:96%;bottom:12px}.public-form-section{padding:18px 9px 0}.public-form-section h1{font-size:21px}.policy-public-note{margin:0 0 11px;font-size:11px;padding:10px}.public-form{border-radius:13px}.form-actions button{width:100%}

@media(max-width:430px){
  .guest-summary-grid{grid-template-columns:1fr!important}
  .unit-card .inline-actions,.property-head .inline-actions{grid-template-columns:1fr 1fr}
  .unit-card .inline-actions form,.property-head .inline-actions form{grid-column:1/-1}
  .head-actions{grid-template-columns:1fr}
}

/* v1.10.0 color-coded statistical calendar */
.scope-chip.color-scope{border-color:var(--scope-color);background:var(--scope-bg);color:var(--scope-text)}
.scope-chip.color-scope.active{background:var(--scope-color);color:#fff}
.scope-dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:var(--scope-color);flex:0 0 auto}
.scope-chip.active .scope-dot{background:#fff}
.scope-legend-note{font-size:8px;line-height:1.6;color:#667085;margin-top:6px}
.resource-stat-list{max-height:37px;overflow:auto;display:flex;flex-direction:column;gap:1px}
.resource-stat{display:grid;grid-template-columns:5px minmax(0,1fr) auto;gap:2px;align-items:center;padding:1px 2px 3px;border:1px solid color-mix(in srgb,var(--resource-color) 35%,#fff);border-radius:3px;background:#fff;color:var(--resource-text);font-size:6px;position:relative;overflow:hidden}
.resource-stat.partial,.resource-stat.full{background:var(--resource-bg)}
.resource-dot{width:5px;height:5px;border-radius:50%;background:var(--resource-color)}
.resource-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resource-stat b{font-size:6px}.resource-meter{position:absolute;right:0;left:0;bottom:0;height:1px;background:#e4e7ec}.resource-meter i{display:block;height:100%;background:var(--resource-color)}
