/* RetreatStay Final UI Stabilization — v3.9.0-build24 */
:root{
  --rst24-font-size:14px;
  --rst24-line:1.45;
  --rst24-title:24px;
  --rst24-section:18px;
  --rst24-value:22px;
  --rst24-control-h:38px;
  --rst24-gap:12px;
  --rst24-panel-pad:16px;
}
.rst-build24,.rst-build24 input,.rst-build24 select,.rst-build24 textarea,.rst-build24 button,
.rst-ui-admin,.rst-ui-admin input,.rst-ui-admin select,.rst-ui-admin textarea,.rst-ui-admin button{
  font-size:var(--rst24-font-size)!important;line-height:var(--rst24-line)!important;
}
.rst-build24 h1,.rst-ui-admin .wrap>h1,.rst-ui-admin .wrap>h2:first-child,.rst-ui-workspace .rst-fp-page-title h1{
  font-size:var(--rst24-title)!important;line-height:1.2!important;margin:0 0 4px!important;letter-spacing:-.018em!important;
}
.rst-build24 h2,.rst-ui-admin h2,.rst-ui-workspace h2{font-size:var(--rst24-section)!important;line-height:1.3!important;margin-top:0!important}
.rst-build24 h3,.rst-ui-admin h3,.rst-ui-workspace h3{font-size:16px!important;line-height:1.35!important}
.rst-ui-workspace .rst-fp-hero h1{font-size:26px!important}.rst-ui-workspace .rst-fp-hero p{font-size:14px!important;max-width:760px}

/* One container = one visual card. Child text never becomes another card. */
.rst-ui-admin .rs-card-label,.rst-ui-admin .rs-card-value,.rst-ui-admin .rs-card-sub,
.rst-ui-admin [class$="-card-label"],.rst-ui-admin [class$="-card-value"],.rst-ui-admin [class$="-card-sub"],
.rst-ui-workspace .rst-fp-kpi small,.rst-ui-workspace .rst-fp-kpi strong,.rst-ui-workspace .rst-fp-kpi span{
  background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding-left:0!important;padding-right:0!important;
}
.rst-ui-admin .rs-card,.rst-ui-admin .rs-kpi,.rst-ui-admin .rst-card,.rst-ui-admin .rst-panel,.rst-ui-admin .postbox,
.rst-ui-workspace .rst-fp-panel,.rst-ui-workspace .rst-fp-kpi,.rst-ui-workspace .rst-fp-property{
  border-radius:14px!important;box-shadow:0 4px 16px rgba(11,37,64,.045)!important;
}

/* Compact, consistent action system */
.rst-build24 .button,.rst-build24 .rst-btn,.rst-build24 .rst-primary-button,.rst-build24 .rst-login-button,
.rst-ui-admin .button,.rst-ui-admin .page-title-action{
  min-height:var(--rst24-control-h)!important;padding:7px 13px!important;border-radius:9px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;font-weight:700!important;white-space:nowrap!important;vertical-align:middle!important;text-decoration:none!important;
}
.rst-build24 .button.button-small,.rst-ui-admin .button.button-small{min-height:32px!important;padding:5px 10px!important;font-size:13px!important}
.rst-build24 .button-large,.rst-ui-admin .button-large{min-height:42px!important;padding:8px 16px!important}
.rst-build24 a,.rst-build24 button,.rst-build24 [role=button],.rst-ui-admin a,.rst-ui-admin button{cursor:pointer!important}
.rst-build24 [disabled],.rst-build24 .disabled,.rst-ui-admin [disabled],.rst-ui-admin .disabled{cursor:not-allowed!important}

/* Forms: smaller labels, aligned controls, no giant inputs */
.rst-build24 label,.rst-ui-admin label{font-size:13px!important;font-weight:650!important;color:#344054}
.rst-build24 input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.rst-build24 select,.rst-build24 textarea,
.rst-ui-admin input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.rst-ui-admin select,.rst-ui-admin textarea{
  min-height:var(--rst24-control-h)!important;border-radius:9px!important;border:1px solid #ced8e3!important;padding:7px 10px!important;box-shadow:none!important;background:#fff!important;
}
.rst-build24 textarea,.rst-ui-admin textarea{min-height:92px!important;resize:vertical}
.rst-build24 input:focus,.rst-build24 select:focus,.rst-build24 textarea:focus,.rst-ui-admin input:focus,.rst-ui-admin select:focus,.rst-ui-admin textarea:focus{border-color:#0a7c83!important;box-shadow:0 0 0 3px rgba(10,124,131,.12)!important;outline:0!important}
.rst-form-grid,.rst-workflow-form .grid,.rst-ui-admin .grid{gap:12px!important}

/* Page headings and actions align to the same baseline */
.rst-fp-page-title,.rst-ui-admin .rst-page-head,.rst-ui-admin .hero{align-items:center!important}
.rst-fp-page-title{display:flex!important;justify-content:space-between!important;gap:14px!important;margin-bottom:14px!important}
.rst-fp-page-title>div:first-child{min-width:0}.rst-fp-page-title p{margin:2px 0 0!important;color:#667085!important;font-size:13px!important}
.rst-inline-actions,.rst-action-grid,.rst-form-actions{align-items:center!important;gap:8px!important}

/* KPIs: compact, consistent, semantic */
.rst-fp-kpis{grid-template-columns:repeat(5,minmax(135px,1fr))!important;gap:10px!important;margin-bottom:14px!important}
.rst-fp-kpis.rst-kpis-4{grid-template-columns:repeat(4,minmax(140px,1fr))!important}.rst-fp-kpis.rst-kpis-3{grid-template-columns:repeat(3,minmax(160px,1fr))!important}
.rst-fp-kpi{padding:14px 15px!important;min-height:94px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;position:relative!important;overflow:hidden!important}
.rst-fp-kpi small{font-size:11px!important;letter-spacing:.055em!important;text-transform:uppercase!important;color:#667085!important;font-weight:800!important}
.rst-fp-kpi strong{font-size:var(--rst24-value)!important;line-height:1.12!important;margin-top:6px!important;color:#102a43!important}
.rst-fp-kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#4f7cac}.rst-fp-kpi.is-success:before{background:#16a05d}.rst-fp-kpi.is-warning:before{background:#d18a00}.rst-fp-kpi.is-danger:before{background:#c92a2a}.rst-fp-kpi.is-info:before{background:#3478d4}
.rst-fp-kpi.is-success strong{color:#0d7d49!important}.rst-fp-kpi.is-warning strong{color:#9a6200!important}.rst-fp-kpi.is-danger strong{color:#b42318!important}.rst-fp-kpi.is-info strong{color:#245ea8!important}
.rst-value-text,.rst-value-date{font-size:18px!important}

/* Tables: dense but readable; consistent button alignment */
.rst-fp-scroll,.rst-calendar-scroll,.rst-ui-admin .rst-table-wrap,.rst-ui-admin .rs-av-table-wrap,.rst-ui-admin .rst-finance-table-wrap{border-radius:12px!important;border:1px solid #dfe7ef!important;box-shadow:none!important;background:#fff!important}
.rst-fp-table th,.rst-fp-table td,.rst-ui-admin table.wp-list-table th,.rst-ui-admin table.wp-list-table td{padding:9px 10px!important;vertical-align:middle!important}
.rst-fp-table th{font-size:11px!important;letter-spacing:.035em!important;text-transform:uppercase!important;font-weight:800!important;background:#123d5d!important}
.rst-fp-table td{font-size:13px!important}.rst-compact-table{min-width:900px!important}.rst-cell-sub{display:block;color:#7a8898;font-size:11px!important;margin-top:2px}.rst-error-cell{max-width:300px;white-space:normal!important}
.rst-fp-table td:last-child .rst-btn,.rst-ui-admin table td .button{min-height:32px!important;padding:5px 9px!important}
.rst-fp-badge{font-size:11px!important;padding:4px 8px!important;border-radius:999px!important;font-weight:750!important}.rst-fp-badge.is-success{background:#e8f7ef!important;color:#087a43!important}.rst-fp-badge.is-warning{background:#fff4d8!important;color:#8f5c00!important}.rst-fp-badge.is-danger{background:#fff0ef!important;color:#b42318!important}.rst-fp-badge.is-info{background:#edf4ff!important;color:#245ea8!important}
.rst-text-link{font-weight:750;text-decoration:none;color:#0a7580!important}.rst-text-link:hover{text-decoration:underline}

/* Panels and section hierarchy */
.rst-fp-panel{padding:var(--rst24-panel-pad)!important;margin-bottom:14px!important}.rst-fp-panel>h2{margin-bottom:10px!important}.rst-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.rst-section-head h2{margin:0!important}.rst-section-head p{margin:2px 0 0;color:#667085;font-size:13px}
.rst-empty-state{padding:34px 18px!important;text-align:center!important;border:1px dashed #ccd8e3!important;background:#fbfcfd!important;border-radius:12px!important}.rst-empty-state strong{display:block;font-size:16px;margin-bottom:4px}.rst-empty-state span{display:block;color:#667085;font-size:13px}

/* Staff shell: app-like density, readable nav, no huge chrome */
.rst-staff-shell{grid-template-columns:230px minmax(0,1fr)!important;min-height:100vh!important}.rst-staff-side{padding:18px 12px!important}.rst-staff-brand{font-size:14px!important;letter-spacing:.14em!important;margin:2px 8px 14px!important}.rst-staff-user{padding:11px 10px!important;margin-bottom:10px!important}.rst-staff-user strong{font-size:13px!important}.rst-staff-user small{font-size:11px!important;margin-top:2px!important}.rst-staff-nav a{min-height:39px!important;padding:8px 10px!important;border-radius:8px!important;gap:9px!important;font-size:13px!important}.rst-staff-nav .dashicons{font-size:18px!important;width:18px!important;height:18px!important;line-height:18px!important;flex:0 0 18px}.rst-nav-label{overflow:hidden;text-overflow:ellipsis}.rst-staff-main{padding:20px 22px 34px!important;max-width:1700px!important;width:100%!important;margin:0 auto!important}

/* Dashboard quick actions / filter bar */
.rst-quick-actions{display:flex;flex-wrap:wrap;gap:8px;margin:-2px 0 14px}.rst-quick-actions .rst-btn{min-height:36px!important}.rst-filter-chips{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.rst-filter-chip{display:inline-flex;align-items:center;min-height:32px;padding:5px 10px;border:1px solid #d9e3eb;border-radius:999px;text-decoration:none;color:#344054!important;background:#fff}.rst-filter-chip.active{background:#0a7c83;color:#fff!important;border-color:#0a7c83}

/* Availability cards: status is obvious without giant blocks */
.rst-fp-property-grid{grid-template-columns:repeat(4,minmax(220px,1fr))!important;gap:10px!important}.rst-fp-property{padding:14px!important;display:flex;flex-direction:column;gap:5px}.rst-fp-property strong{font-size:15px!important}.rst-fp-property span{width:max-content;margin-top:4px!important}.rst-fp-property .no{background:#fff4d8!important;color:#8f5c00!important}.rst-fp-property .rst-btn{margin-top:auto!important;align-self:flex-start}

/* Calendar density and controls */
.rst-calendar-table th,.rst-calendar-table td{padding:6px!important;font-size:12px!important}.rst-calendar-table th{min-width:54px!important}.rst-calendar-table .sticky-col{min-width:180px!important}.rst-cal-cell{min-height:26px!important;border-radius:6px!important}.rst-calendar-legend{font-size:12px!important;margin-top:8px!important}

/* WordPress-admin modules: neutralize old oversized inline declarations */
.rst-ui-admin .wrap{max-width:1700px!important;margin-top:16px!important}.rst-ui-admin [class*="hero"]{padding:20px 22px!important;border-radius:16px!important;margin-bottom:14px!important}.rst-ui-admin [class*="hero"] h1,.rst-ui-admin [class*="hero"] h2{font-size:24px!important}.rst-ui-admin .card,.rst-ui-admin .postbox,.rst-ui-admin .rst-card,.rst-ui-admin .rst-panel,.rst-ui-admin .rs-card,.rst-ui-admin .rs-kpi{padding-top:14px!important;padding-bottom:14px!important}
.rst-ui-admin .page-title-action{top:0!important;margin-left:8px!important}

/* Login: compact and centered, not oversized */
.rst-staff-login-card{max-width:410px!important;padding:18px!important}.rst-staff-login-card h1{font-size:24px!important}.rst-login-brand{font-size:13px!important}.rst-login-options{font-size:12px!important}.rst-login-button{width:100%;min-height:42px!important;margin-top:4px}

/* Responsive behavior */
@media(max-width:1200px){.rst-fp-kpis{grid-template-columns:repeat(3,minmax(140px,1fr))!important}.rst-fp-property-grid{grid-template-columns:repeat(3,minmax(200px,1fr))!important}}
@media(max-width:900px){.rst-staff-shell{grid-template-columns:1fr!important}.rst-staff-side{position:sticky!important;top:0!important;z-index:50!important;min-height:auto!important;padding:10px!important}.rst-staff-brand,.rst-staff-user{display:none!important}.rst-staff-nav{display:flex!important;overflow-x:auto!important;gap:5px!important;padding-bottom:2px}.rst-staff-nav a{white-space:nowrap!important;flex:0 0 auto!important}.rst-staff-logout{display:none!important}.rst-staff-main{padding:16px!important}.rst-fp-kpis,.rst-fp-kpis.rst-kpis-4,.rst-fp-kpis.rst-kpis-3{grid-template-columns:repeat(2,minmax(140px,1fr))!important}.rst-fp-property-grid{grid-template-columns:repeat(2,minmax(180px,1fr))!important}.rst-fp-page-title{align-items:flex-start!important}.rst-inline-actions{justify-content:flex-start}}
@media(max-width:600px){:root{--rst24-title:21px;--rst24-section:17px;--rst24-value:20px}.rst-staff-main{padding:12px!important}.rst-fp-kpis,.rst-fp-kpis.rst-kpis-4,.rst-fp-kpis.rst-kpis-3,.rst-fp-property-grid{grid-template-columns:1fr!important}.rst-fp-page-title{display:block!important}.rst-fp-page-title>.rst-btn,.rst-fp-page-title>div+.rst-inline-actions,.rst-fp-page-title>span{margin-top:10px}.rst-inline-actions .rst-btn{flex:1 1 auto}.rst-fp-filter{display:grid!important;grid-template-columns:1fr!important}.rst-fp-filter>*{width:100%!important}.rst-fp-kpi{min-height:82px!important}.rst-workflow-form .rst-form-grid{grid-template-columns:1fr!important}.rst-detail-list{grid-template-columns:1fr!important}.rst-ui-admin .wrap{margin-left:10px!important;margin-right:10px!important}.rst-ui-admin [class*="hero"]{padding:16px!important}}

@media(min-width:1800px){.rst-staff-main{padding-left:30px!important;padding-right:30px!important}.rst-fp-kpis{gap:12px!important}.rst-fp-property-grid{grid-template-columns:repeat(5,minmax(220px,1fr))!important}}
/* Targeted legacy-module oversized text normalization */
.rst-ui-admin .rst-health-score{font-size:24px!important;line-height:1.15!important}
.rst-ui-admin .rst21-hero h1,.rst-ui-admin .rst-na-hero h1,.rst-ui-admin .rst-pe .hero h1{font-size:24px!important}
.rst-ui-admin .rst21-kpis strong,.rst-ui-admin .rst-na-kpi strong,.rst-ui-admin [class*="kpi"] strong{font-size:22px!important;line-height:1.15!important}
.rst-ui-admin .rst21-hero,.rst-ui-admin .rst-pe .hero{padding:20px 22px!important;border-radius:16px!important}
