/* Owner Reservations tab (Bahía Ballena layout) in Pepe's dashboard colours. */
#operations{--res-wine:#8b2e50;--res-line:#d9d3c8;--res-muted:#617084}
#operations [hidden]{display:none!important}
#operations .ops-floor-tabs{display:flex;gap:6px;margin:0 0 10px}
#operations .ops-floor-tabs button{min-height:36px;padding:6px 14px;border:1px solid var(--res-line);border-radius:99px;background:transparent;color:var(--navy);font:600 .78rem/1 inherit;cursor:pointer}
#operations .ops-floor-tabs button[aria-selected=true]{border-color:var(--navy);background:var(--navy);color:#fff}
#operations .tables--live{min-height:320px}
#operations .ops-table.is-round{border-radius:50%}
#operations .ops-table.is-held{border-color:var(--res-wine);background:var(--res-wine);color:#fff}
#operations .agenda ol{margin-top:6px}
#operations .upcoming .reservation-list{display:block}
.reservation-group-list{display:grid;gap:10px;min-width:0}
.reservation-group-list .reservation-guest{min-width:0;overflow-wrap:anywhere}
#operations .reservation-row{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:14px 0;border-top:1px solid var(--res-line)}
#operations .reservation-row time{height:min-content;padding:5px 8px;background:var(--navy);color:#fff;font-size:.75rem;font-weight:700}
#operations .reservation-row strong,#operations .reservation-row .reservation-guest span{display:block}
#operations .reservation-row .reservation-guest span{margin-top:3px;color:var(--res-muted);font-size:.76rem}
#operations .reservation-status{border-radius:99px;padding:4px 8px;font-size:.65rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;background:#eef1f4;color:var(--navy)}
#operations .reservation-status.status-verified{background:#e1f1e6;color:#1f6b3a}
#operations .reservation-status.status-pending{background:#fbefd9;color:#8a5a00}
#operations .reservation-status.status-cancelled{background:#f6e3e7;color:var(--res-wine)}
.reservation-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px}
#operations .verify-deposit,#operations .mini-action{min-height:38px;border:1px solid var(--res-wine);background:transparent;color:var(--res-wine);padding:7px 10px;font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
#operations .verify-deposit:hover,#operations .mini-action:hover{background:#f8e9ee}
#operations .cancel-reservation{min-height:38px;border:1px solid #d9b3bd;background:transparent;color:#a3262a;padding:7px 10px;font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
#operations .cancel-reservation:hover{border-color:#a3262a;background:#fbecec}
#operations button:disabled{opacity:.55;cursor:wait}
.reservation-cancel-confirm{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #e3c2c9;background:#fcf3f5;padding:13px 14px}
.reservation-cancel-confirm strong,.reservation-cancel-confirm span{display:block}
.reservation-cancel-confirm strong{font-size:.84rem}
.reservation-cancel-confirm span{max-width:68ch;margin-top:2px;color:var(--res-muted);font-size:.74rem;line-height:1.45}
.reservation-cancel-actions{display:flex;flex:0 0 auto;gap:7px}
.reservation-cancel-actions button{min-height:40px;border:1px solid var(--res-line);background:#fff;color:var(--navy);padding:8px 10px;cursor:pointer}
.reservation-cancel-actions .confirm-cancel-reservation{border-color:#a3262a;background:#a3262a;color:#fff}
.reservation-disclosure{min-width:0;border-top:1px solid var(--res-line)}
.reservation-disclosure>summary{box-sizing:border-box;min-height:44px;padding:12px 8px;color:var(--navy);font-weight:700;font-size:.875rem;cursor:pointer}
.reservation-disclosure>summary:hover{background:#f3f6f9}
.reservation-archive-note{margin:0 8px 12px;color:var(--res-muted);font-size:.8125rem;line-height:1.5}
.reservation-action-note{min-height:1.3em;margin:12px 0 0;color:#1f6b3a;font-size:.8rem}
#operations .empty-message{color:var(--res-muted);font-size:.85rem}
.owner-daily-notes{margin-top:14px;padding:18px 20px;border:1px solid #dfe3df;background:var(--paper)}
.owner-daily-notes .panel-heading{margin-bottom:13px}
.owner-daily-notes .panel-heading p:last-child{margin:5px 0 0;color:var(--res-muted);font-size:12px}
.owner-daily-notes form{display:grid;grid-template-columns:minmax(150px,190px) minmax(250px,1fr) auto;align-items:end;gap:12px}
.owner-daily-notes label,.deposit-settings label{display:block;color:var(--res-muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.owner-daily-notes input,.owner-daily-notes textarea,.deposit-settings input{display:block;width:100%;min-height:42px;margin-top:5px;padding:8px 9px;border:1px solid #c9d1cd;border-radius:4px;background:#fffefa;color:var(--ink);font:inherit;resize:vertical}
#dailyNoteList{display:grid;gap:7px;margin-top:14px}
.owner-daily-note{display:flex;align-items:start;justify-content:space-between;gap:12px;padding:10px 12px;background:#f2f5f0;border-radius:6px}
.owner-daily-note p{margin:0;font-size:13px;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}
.owner-daily-note button{min-height:30px;border:0;background:none;color:#8a453c;font-size:11px;font-weight:700;cursor:pointer}
.deposit-settings{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:10px;max-width:620px;margin-top:14px;border:1px solid #dfe3df;background:var(--paper);padding:18px 20px}
.deposit-settings .dash-label,.deposit-settings .save-note{grid-column:1/-1;margin:0}
.save-note{min-height:1.2em;color:var(--res-muted);font-size:.78rem}
@media(max-width:760px){.owner-daily-notes form{grid-template-columns:1fr}
  #operations .reservation-row{grid-template-columns:auto 1fr auto}
  #operations .reservation-row .reservation-actions{grid-column:2/-1;justify-self:start;margin-top:4px}
  .reservation-cancel-confirm{align-items:stretch;flex-direction:column;gap:11px}
  .reservation-cancel-actions{display:grid;grid-template-columns:1fr 1fr}
  .deposit-settings{grid-template-columns:1fr auto;padding:15px}}
#operations .agenda li{grid-template-columns:64px 1fr}
/* Reservation email states under each booking. */
#operations .reservation-row .reservation-emails{display:block;margin-top:5px;color:var(--res-muted);font-size:.72rem;line-height:1.5}
#operations .reservation-emails .email-sent{color:#1f6b3a}
#operations .reservation-emails .email-manual_review{color:#a3262a;font-weight:700}
#operations .email-resend{margin-left:4px;padding:2px 8px;min-height:26px;border:1px solid #a3262a;border-radius:4px;background:transparent;color:#a3262a;font-size:.68rem;font-weight:700;cursor:pointer}
.reservation-email-settings{max-width:820px}
#operations .reservation-row .reservation-emails span{display:inline;margin:0}
