.metric-action { min-height:36px; padding:.35rem .65rem; border-radius:999px; font-size:.82rem; }
.hero .metric-action { border-color:#ffffff33; background:#ffffff22; color:white; }
.hero .metric-action:hover { background:#ffffff30; }
.today-actions { display:flex; gap:.6rem; flex-wrap:wrap; margin-top:.8rem; }
.hero .today-actions button { border-color:#ffffff55; background:white; color:#244b3b; }
.mobile-header-title { flex:1; min-width:0; }
.sidebar-refresh { width:100%; text-align:left; border:1px solid #ffffff44; background:transparent; color:white; margin-top:.7rem; }
.cottage-card-link { width:100%; text-align:left; color:inherit; }
.cottage-card-link p { text-align:left; }
.guest-reservation-link { display:inline-block; margin-top:.35rem; color:#244b3b; font-weight:700; text-decoration:underline; text-underline-offset:2px; }
.photo-picker { padding:.8rem; border:1px dashed #aebbb4; border-radius:.8rem; background:#fafbf9; }
.photo-picker>span { display:block; margin:.2rem 0 .55rem; font-size:.82rem; font-weight:400; }
.photo-picker input[type="file"] { min-height:48px; padding:.55rem; background:white; }
.attachment-list { margin:.5rem 0; padding:.65rem; border:1px solid #e0e2dd; border-radius:.7rem; background:#fafbf9; }
.attachment-list .actions { flex-wrap:wrap; margin-top:.45rem; }
.attachment-list button { min-height:40px; }
.maintenance-issue .attachment-list { margin-top:.7rem; }
.contact-section-title { margin:1.4rem 0 .55rem; font-size:1rem; color:#526159; }
.contact-list { overflow:hidden; border:1px solid #d8d5cc; border-radius:.9rem; background:white; }
.contact-row { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(220px,1fr) auto; gap:1rem; align-items:center; padding:.8rem 1rem; border-bottom:1px solid #e7e5df; cursor:pointer; }
.contact-row:last-child { border-bottom:0; }
.contact-row:hover { background:#fafbf9; }
.contact-row-main { display:grid; gap:.15rem; min-width:0; }
.contact-row-main span { color:#66716b; font-size:.86rem; }
.contact-row-links { display:flex; gap:.8rem; align-items:center; justify-content:flex-end; flex-wrap:wrap; }
.contact-row-links a,.contact-detail a { color:#244b3b; font-weight:650; }
.contact-row-arrow { color:#7c8982; font-size:1.4rem; }
.contact-phone-actions { position:relative; }
.contact-phone-actions summary { color:#244b3b; font-weight:650; cursor:pointer; list-style:none; text-decoration:underline; text-underline-offset:2px; }
.contact-phone-actions summary::-webkit-details-marker { display:none; }
.contact-link-actions { display:flex; gap:.45rem; margin-top:.45rem; }
.contact-link-actions a { display:inline-flex; align-items:center; min-height:38px; padding:.45rem .65rem; border:1px solid #d8d5cc; border-radius:.55rem; background:white; text-decoration:none; }
.contact-edit { max-width:none; }
.contact-admin-panel { display:grid; gap:.8rem; max-width:850px; margin-top:1rem; }
.contact-access,.contact-danger-zone { padding:1rem; border:1px solid #d8d5cc; border-radius:.9rem; background:white; }
.contact-access { display:grid; grid-template-columns:minmax(0,1fr) minmax(190px,260px) auto; gap:.8rem; align-items:end; }
.contact-access p,.contact-danger-zone p { margin:.25rem 0 0; }
.contact-access label { display:grid; gap:.35rem; }
.contact-access select { min-height:44px; padding:.65rem; border:1px solid #d8d5cc; border-radius:.6rem; background:white; }
.contact-danger-zone { border-color:#e5b7b2; }
button:disabled { opacity:.5; cursor:not-allowed; }
.task-filters,.inspection-filters,.history-filters { margin-bottom:1rem; }
.task-meta-grid { display:grid; grid-template-columns:minmax(120px,.8fr) minmax(180px,1.7fr) minmax(150px,1.1fr) minmax(110px,.8fr) minmax(110px,.8fr); gap:.65rem 1rem; margin-top:.55rem; }
.task-meta-grid>div { display:grid; gap:.15rem; min-width:0; }
.task-meta-grid small { color:#6a766f; font-size:.7rem; text-transform:uppercase; letter-spacing:.055em; }
.task-meta-grid strong { font-size:.9rem; overflow-wrap:anywhere; }
.operational-schedule>.schedule-group,.operational-schedule .schedule-vertical { width:100%; max-width:none; }
.settings-table-wrap,.history-table-wrap { width:100%; overflow-x:auto; margin:.8rem 0 1rem; border:1px solid #d8d5cc; border-radius:.8rem; background:white; }
.settings-data-table,.history-table { width:100%; border-collapse:collapse; background:white; }
.settings-data-table { min-width:980px; }
.history-table { min-width:900px; }
.settings-data-table th,.settings-data-table td,.history-table th,.history-table td { padding:.65rem; border-right:1px solid #e3e2dc; border-bottom:1px solid #e3e2dc; text-align:left; vertical-align:top; }
.settings-data-table tr:last-child td,.history-table tr:last-child td { border-bottom:0; }
.settings-data-table th:last-child,.settings-data-table td:last-child,.history-table th:last-child,.history-table td:last-child { border-right:0; }
.settings-data-table thead th,.history-table thead th { background:#f2f4f1; color:#53615a; font-size:.78rem; text-transform:uppercase; letter-spacing:.04em; }
.settings-data-table input,.settings-data-table select { width:100%; min-width:100px; min-height:42px; padding:.5rem; border:1px solid #d8d5cc; border-radius:.5rem; background:white; }
.settings-data-table .post-active { width:72px; text-align:center; }
.settings-data-table .post-active input { width:20px; min-width:20px; min-height:20px; }
.post-checkout-table th:nth-child(2),.post-checkout-table td:nth-child(2) { min-width:300px; }
.post-checkout-table th:nth-child(3),.post-checkout-table td:nth-child(3) { min-width:190px; }
.post-checkout-table th:nth-child(4),.post-checkout-table td:nth-child(4) { min-width:150px; }
.history-table td { font-size:.86rem; }
.history-table td:nth-child(6) { min-width:250px; white-space:normal; }
@media (max-width:620px) {
  .hero .metrics { display:grid; grid-template-columns:1fr; align-items:stretch; }
  .hero .metric-action { width:100%; text-align:left; }
  .hero .today-actions button { width:100%; }
  .cottage-card-link { min-height:120px; }
  .maintenance-issue { align-items:flex-start; flex-direction:column; }
  .maintenance-issue>.actions { width:100%; flex-wrap:wrap; }
  .contact-row { grid-template-columns:1fr auto; gap:.55rem; }
  .contact-row-links { grid-column:1/-1; justify-content:flex-start; }
  .contact-access { grid-template-columns:1fr; }
  .task { align-items:flex-start; flex-direction:column; }
  .task>.grow,.task>button { width:100%; }
  .task-meta-grid { grid-template-columns:1fr 1fr; }
  .task-meta-grid>div:nth-child(2) { grid-column:1/-1; order:-1; }
}
