:root{--blue:#154f86;--blue2:#1d6fb8;--border:#d7e0ea;--text:#1d2939;--muted:#667085;--bg:#eef2f6;--danger:#b42318}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg);font-size:14px}.topbar{height:76px;background:#111c2d;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:10px 18px;box-shadow:0 2px 7px #0003}.brand-wrap{display:flex;align-items:center;gap:13px}.logo{height:48px;max-width:150px;object-fit:contain}.brand-title{font-size:20px;font-weight:800}.version{font-size:11px;color:#a9b6c7}.header-meta{display:flex;align-items:center;gap:8px;margin-top:3px}.logged-user{font-size:11px;color:#d6dee8;font-weight:700}.button-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-sizing:border-box}.header-actions{display:flex;gap:8px}.card{background:#fff;border:1px solid var(--border);border-radius:12px;margin:12px 2px;padding:12px;box-shadow:0 1px 2px #00000008}button,input,select,textarea{font:inherit}button{cursor:pointer}.primary,.secondary,.danger,.whatsapp-btn,.reservation-confirmed-button{border-radius:8px;min-height:38px;padding:8px 14px;font-weight:700}.primary{background:#376ba5;color:white;border:1px solid #376ba5}.secondary{background:#fff;border:1px solid #c6d2df;color:#1f2937}.danger{background:#fff1f0;border:1px solid #f3b4ad;color:var(--danger)}.danger.small{min-height:28px;padding:3px 8px}.whatsapp-btn{background:#25d366;color:#fff;border:1px solid #25d366}.reservation-confirmed-button{background:#1769aa;color:#fff;border:1px solid #1769aa}.register-toolbar-line{display:flex;align-items:flex-end;gap:12px}.register-filter-row{display:flex;align-items:flex-end;gap:8px;flex:1;flex-wrap:wrap}.register-refresh-btn{margin-left:auto}.register-stats-line{display:flex;gap:18px;padding-top:9px;margin-top:8px;border-top:1px solid #e5e7eb}.count{font-size:12px;color:#667085}.build-marker{margin-left:auto}.search{min-width:280px}.register-filter-row input,.register-filter-row select{height:38px;border:1px solid #c7d3df;border-radius:8px;padding:6px 10px;background:#fff}.register-date-filter{display:flex;flex-direction:column;gap:3px;font-size:11px;font-weight:700;color:#64748b}.register-heading{display:flex;justify-content:space-between;align-items:start;padding:0 6px 10px}.register-heading h2{margin:0;font-size:20px}.section-subtitle{font-size:12px;color:#667085;margin-top:4px}.table-wrap{overflow:auto;max-height:calc(100vh - 215px);border-top:1px solid #d8e0e8}.register-table{width:100%;border-collapse:collapse;min-width:1250px}.register-table th{position:sticky;top:0;background:#f7f9fb;border-bottom:1px solid #cfd8e3;text-align:left;padding:9px 8px;font-size:12px;z-index:2}.register-table td{border-bottom:1px solid #dce3ea;padding:7px 8px;vertical-align:top}.register-table tr:nth-child(even){background:#fafbfd}.header-sort{border:0;background:transparent;padding:0;font-weight:700;cursor:pointer}.header-sort.active{color:#1769aa}.submitted-cell{white-space:nowrap}.edit-cell{padding-top:4px!important;padding-bottom:4px!important}.edit-btn{height:25px;min-height:25px;padding:2px 8px;font-size:11px}.calendar-date-link{color:#1769aa;font-weight:700}.confirmation-yes{color:#138a4d;font-size:18px;font-weight:900}.empty-register{text-align:center;padding:24px;color:#667085}.modal-backdrop{position:fixed;inset:0;background:#0008;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.hidden{display:none!important}.modal{background:#fff;border-radius:14px;width:min(720px,96vw);max-height:92vh;overflow:auto;padding:22px;position:relative;box-shadow:0 16px 50px #0005}.modal.small{width:min(480px,96vw)}.manage-modal{width:min(950px,96vw)}.modal-x{position:absolute;right:12px;top:9px;border:0;background:transparent;font-size:26px}.modal-title{font-size:20px;font-weight:800;margin-bottom:14px}.grid,.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.span-2{grid-column:1/-1}.field{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700}.field input,.field select,.field textarea{border:1px solid #c8d3df;border-radius:8px;padding:9px;background:#fff;width:100%}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.error{background:#fff0ef;border:1px solid #f3aaa4;color:#912018;padding:10px;border-radius:8px}.page-error{margin:10px}.message-box{background:#f5f8fb;padding:12px;border-radius:8px}.save-result-row{display:flex;gap:9px;padding:6px 0}.save-result-ok{color:#0e7c47}.save-result-fail{color:#9b291e}.tabs{display:flex;gap:5px;border-bottom:1px solid #d7e0ea;margin-bottom:16px;flex-wrap:wrap}.tab{border:0;background:#eef3f8;padding:9px 12px;border-radius:8px 8px 0 0}.tab.active{background:#376ba5;color:#fff}.settings-section{border:1px solid #d9e2eb;border-radius:10px;padding:12px}.settings-section-title{font-weight:800;margin-bottom:10px}.settings-two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.add-row{display:flex;gap:8px;margin:12px 0}.add-row input{flex:1;padding:9px;border:1px solid #c8d3df;border-radius:8px}.space-row{display:flex;justify-content:space-between;align-items:center;padding:8px;border-bottom:1px solid #e5ebf0}.confirmation-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.confirmation-type-card{padding:14px;text-align:left;border:1px solid #cad6e2;background:#fff;border-radius:8px}.confirmation-type-card.active{border-color:#1769aa;box-shadow:0 0 0 2px #1769aa22}.confirmation-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.confirmation-choice{display:block;padding:7px}.context-menu{position:fixed;z-index:2000;background:#fff;border:1px solid #cdd6e0;border-radius:8px;box-shadow:0 8px 24px #0002;padding:6px}.context-menu button{border:0;background:#fff;padding:8px 12px}.toast{position:fixed;right:20px;bottom:20px;background:#111827;color:#fff;padding:11px 16px;border-radius:8px;z-index:3000}.reservation-mode-badge{display:inline-flex;padding:4px 9px;border-radius:999px;background:#edf1f5;font-size:11px;font-weight:800;text-transform:uppercase}.reservation-mode-badge.staff{background:#e5f0ff;color:#14559a}.reservation-form-heading{display:flex;gap:10px;align-items:center}.reservation-standalone-body{background:#f5f7fa;padding:20px}.reservation-standalone-body #reservationBackdrop{position:relative;background:transparent;display:flex}.reservation-standalone-body #reservationBackdrop .modal-x{display:none}@media(max-width:850px){.topbar{height:auto;align-items:flex-start}.header-actions{flex-wrap:wrap}.register-toolbar-line{flex-wrap:wrap}.register-refresh-btn{margin-left:0}.grid,.settings-grid,.settings-two-col{grid-template-columns:1fr}.span-2{grid-column:auto}}

/* v2.0.6.4 reservation register refinements */
.register-table th{background:#376ba5;color:#fff;border-bottom-color:#2f5f94;white-space:nowrap}
.header-sort{display:inline-flex;align-items:center;gap:4px;color:#fff;white-space:nowrap;line-height:1}
.header-sort span{display:inline-block;color:#fff;opacity:.92}
.header-sort.active{color:#fff}
.location-cell{white-space:nowrap;max-width:150px}
.register-table tr[data-id].editable-row{cursor:pointer}
.register-table tr[data-id].editable-row:hover{background:#eef5fc}

/* Dedicated public iframe form. No staff chrome or application metadata. */
.reservation-embed-html,.reservation-embed-body{background:transparent!important}.reservation-embed-body{margin:0;padding:20px;color:var(--text);overflow-x:hidden}
.reservation-embed-card{width:min(760px,100%);margin:0 auto;padding:24px 26px;background:#fff;border:1px solid #e1e6ec;border-radius:16px;box-shadow:0 14px 32px #00000024}
.embed-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:14px;row-gap:13px}
.reservation-embed-card .field{gap:6px;font-size:12px;font-weight:700}
.reservation-embed-card .field input,.reservation-embed-card .field select,.reservation-embed-card .field textarea{min-height:38px;border:1px solid #c7d3df;border-radius:9px;padding:9px 12px;background:#fff;box-shadow:0 1px 2px #00000008}
.reservation-embed-card .field textarea{min-height:92px;resize:vertical}
.embed-actions{display:flex;justify-content:flex-end;margin-top:17px}
.embed-actions .primary{min-width:158px}
.embed-success{text-align:center;padding:34px 20px}
.embed-success-icon{width:52px;height:52px;margin:0 auto 12px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#e9f7ef;color:#16784a;font-size:28px;font-weight:900}
.embed-success h2{margin:0 0 8px;font-size:22px}
.embed-success p{margin:0 auto 12px;max-width:560px;line-height:1.45;color:#475467}
.embed-confirmation-number{font-weight:800;font-size:18px;margin:12px 0 20px;color:#1769aa}
.embed-dialog{position:fixed;inset:0;background:#0008;display:flex;align-items:center;justify-content:center;padding:18px;z-index:5000}
.embed-dialog-card{width:min(460px,96vw);background:#fff;border-radius:14px;padding:22px;box-shadow:0 16px 50px #0005}
.embed-dialog-card h2{margin:0 0 10px}
.embed-dialog-card p{line-height:1.45}
.embed-link-button{display:inline-flex;text-decoration:none;align-items:center;justify-content:center;margin-right:8px}
/* Only phones collapse to one column. Tablets and desktop remain two-column. */
@media(max-width:560px){.reservation-embed-body{padding:10px 10px 84px;overflow-y:auto;-webkit-overflow-scrolling:touch}.reservation-embed-card{padding:18px 16px 22px;border-radius:14px}.embed-grid{grid-template-columns:1fr;row-gap:10px}.embed-grid .span-2{grid-column:auto}.embed-actions{position:fixed;left:10px;right:10px;bottom:10px;z-index:50;margin:0;padding:8px;background:#fff;border:1px solid #e1e6ec;border-radius:12px;box-shadow:0 8px 24px #00000028}.embed-actions .primary{width:100%;min-width:0}}
/* v2.0.7 settings/register workflow */
.settings-section textarea,.manage-tab textarea{resize:vertical;min-height:72px}
.date-status-row{display:grid;grid-template-columns:1.35fr .8fr;gap:10px}
.status-badge{display:inline-block;border-radius:999px;padding:5px 10px;font-weight:800;font-size:12px;white-space:nowrap}.status-pending{background:#fff3bf;color:#725500}.status-confirmed{background:#d9f7e5;color:#176b3a}.status-waitlist{background:#e8e0ff;color:#5b36a8}.status-cancelled,.status-no-show{background:#ffe0df;color:#a51d18}
.register-filter-row>*{min-height:38px}.register-filter-row button{height:38px}.draggable-location{touch-action:none;user-select:none}.drag-handle{cursor:grab;font-size:18px;color:#667085;margin-right:10px}.location-name{flex:1}.public-preview-frame{width:100%;height:650px;border:1px solid #d7e0ea;border-radius:12px;background:#000}.public-preview-note{margin:0 0 10px;color:#667085}.manage-tab[data-panel="blocked"] .grid{align-items:start}

/* v2.0.8 */
.register-table th:nth-child(4),.register-table td:nth-child(4){min-width:100px;white-space:nowrap}
.confirmation-template-choices{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.confirmation-choice{border:1px solid #c6d2df;border-radius:8px;padding:8px 12px;background:#fff;cursor:pointer}.confirmation-choice.active{background:#376ba5;color:#fff;border-color:#376ba5}.confirmation-choice input{display:none}
.contact-input{display:flex;gap:6px}.contact-input input{flex:1}.contact-icon{width:40px;border:1px solid #c8d3df;border-radius:8px;background:#f7f9fb;font-size:18px}.action-popover{position:fixed;z-index:4000;width:min(360px,90vw);background:#fff;border:1px solid #cbd5e1;border-radius:12px;box-shadow:0 12px 35px #0004;padding:14px;font-weight:700}.action-popover-buttons{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.action-popover-buttons button{min-height:34px;border-radius:7px;padding:6px 12px;font-weight:700}.action-popover-buttons .ok{background:#376ba5;color:#fff;border:1px solid #376ba5}.action-popover-buttons .cancel{background:#fff;border:1px solid #c6d2df}

.confirmation-type-row{display:flex;gap:8px;flex-wrap:nowrap;margin:10px 0}.confirmation-type-row .confirmation-type-card{flex:1;min-width:0;white-space:nowrap;padding:10px 8px;border:1px solid #c6d2df;border-radius:8px;background:#fff;font-weight:700}.confirmation-type-row .confirmation-type-card.active{background:#376ba5;color:#fff;border-color:#376ba5}@media(max-width:650px){.confirmation-type-row{gap:4px}.confirmation-type-row .confirmation-type-card{font-size:12px;padding:9px 4px}}

.reservation-number-inline{font-size:.62em;font-weight:600;color:#6b7280;margin-left:.35rem;vertical-align:middle}

/* v2.0.12 admin bulk edit */
.register-heading-actions{display:flex;align-items:center;gap:10px}.bulk-edit-toggle{display:inline-flex;align-items:center;gap:6px;font-weight:700;white-space:nowrap}.bulk-select-col{width:38px;min-width:38px;text-align:center!important}.bulk-select-col input{width:17px;height:17px;cursor:pointer}.register-table th.bulk-select-col{padding-left:8px;padding-right:8px}

/* v2.0.20 usability */
input[type="date"]{min-height:42px;padding-right:8px}
input[type="date"]::-webkit-calendar-picker-indicator{width:28px;height:28px;cursor:pointer;padding:5px}
.location-editor-grid,.location-edit-grid{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;width:100%}
.location-contact-check{display:flex;align-items:center;gap:7px;font-weight:700;min-height:40px}
.location-contact-check input{width:20px;height:20px}
.location-summary{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}.location-summary small{color:#667085;white-space:normal}.contact-only-badge{display:inline-block;width:max-content;font-size:10px;background:#fff3cd;color:#765d00;border:1px solid #eed78a;border-radius:999px;padding:2px 7px;margin-top:2px}.whatsapp-settings{margin-top:14px}.secondary.small,.primary.small{min-height:30px;padding:4px 9px}.location-manage-row{gap:8px}
@media(max-width:850px){.location-editor-grid,.location-edit-grid{grid-template-columns:1fr}.location-edit-grid .span-2{grid-column:auto}}

.location-info-message{margin-top:10px;background:#edf9f1;border:1px solid #86c99d;color:#176b3a;padding:12px;border-radius:8px;line-height:1.35}.submitting-indicator{display:inline-flex;align-items:center;gap:3px;margin-left:7px}.submitting-indicator i{display:block;width:6px;height:6px;border-radius:50%;background:currentColor;animation:aquaBounce .9s infinite ease-in-out}.submitting-indicator i:nth-child(2){animation-delay:.15s}.submitting-indicator i:nth-child(3){animation-delay:.3s}@keyframes aquaBounce{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-5px);opacity:1}}

.group-message{margin:10px 0;background:#edf9f1;border:1px solid #86c99d;color:#176b3a;padding:12px;border-radius:8px;line-height:1.35}

/* v2.0.21 mobile operations UI */
@media(max-width:600px){
  body{font-size:13px}
  .topbar{padding:7px 10px;align-items:center;gap:8px}
  .logo{height:36px;max-width:112px}.brand-wrap{gap:8px}.brand-title{font-size:16px;line-height:1.05}.brand-wrap .version{display:none}
  .header-actions{margin-left:auto;flex-wrap:nowrap}.header-actions #manageBtn{display:none!important}.header-meta{gap:6px}.logged-user{font-size:10px}#logOffBtn{min-height:34px;padding:6px 9px;font-size:12px;white-space:nowrap}
  #addReservationBtn{min-height:34px;padding:6px 10px;font-size:12px;white-space:nowrap}
  .register-toolbar-card{padding:8px;margin:6px 2px}.register-toolbar-line{display:block}
  .register-filter-row{display:grid;grid-template-columns:1fr 1fr;gap:6px;width:100%}
  .register-filter-row .search{grid-column:1/-1;min-width:0;width:100%}
  .register-filter-row input,.register-filter-row select{height:34px;min-width:0;width:100%;padding:4px 7px;font-size:12px;border-radius:7px}
  .register-date-filter{font-size:10px;min-width:0}
  .register-refresh-btn{width:100%;min-height:32px;margin:7px 0 0;padding:5px 8px;font-size:12px}
  .register-stats-line{display:none!important}
  .register-card{margin-top:6px;padding:8px}.register-heading{padding:0 2px 6px}.register-heading h2{font-size:16px}.register-heading .section-subtitle{display:none!important}
  .register-heading-actions{display:flex!important;align-items:center;gap:6px}.register-heading-actions .bulk-edit-toggle,.register-heading-actions #bulkDeleteBtn,#bulkSelectHeader,.bulk-select-col{display:none!important}.register-add-btn{min-height:32px!important;padding:5px 9px!important;font-size:11px!important;white-space:nowrap}
  .table-wrap{max-height:calc(100vh - 190px)}
  .modal-backdrop{padding:6px;align-items:center}.modal{width:calc(100vw - 12px);max-height:96vh;padding:14px;border-radius:12px}
  .reservation-modal{padding:14px 14px 12px}.reservation-modal .modal-title{font-size:18px;margin-bottom:10px;padding-right:30px}
  .reservation-modal .grid{display:flex;flex-direction:column;gap:8px}.reservation-modal .field{gap:3px;font-size:11px}
  .reservation-modal .field input,.reservation-modal .field select,.reservation-modal .field textarea{padding:7px 9px;min-height:36px;font-size:13px;border-radius:7px}
  .reservation-modal #editGuests{width:82px;max-width:82px}
  .reservation-modal .date-status-row{grid-template-columns:1fr 1fr;gap:8px;width:100%}
  .reservation-modal #editDate,.reservation-modal #editStatus{width:100%;min-width:0}
  .reservation-modal #editRequests{min-height:68px}
  .reservation-modal .contact-input{gap:5px}.reservation-modal .contact-icon{width:40px;min-width:40px;height:36px;min-height:36px}
  .reservation-modal .modal-actions{display:grid;grid-template-columns:1.35fr 1fr .75fr 1.1fr;gap:5px;margin-top:10px}
  .reservation-modal .modal-actions button{min-width:0;min-height:34px;padding:5px 5px;font-size:10.5px;line-height:1.15;border-radius:7px}
  #manageBackdrop{display:none!important}
  .confirmation-modal{padding:16px}.confirmation-modal .confirmation-actions{gap:6px}.confirmation-modal .confirmation-actions button{min-height:34px;padding:6px 9px;font-size:12px}
}

/* Keep the public/customer form compact on phones as well. */
@media(max-width:560px){
  .reservation-embed-card .field input,.reservation-embed-card .field select,.reservation-embed-card .field textarea{min-height:34px;padding:7px 9px;font-size:13px}
  .reservation-embed-card .field{font-size:11px}.reservation-embed-card .field textarea{min-height:70px}
}

/* v2.0.24 mobile register and reservation layout */
.mobile-refresh-btn,.mobile-date-range-label,.mobile-date-separator{display:none}
.mobile-primary-fields{display:contents}
@media(max-width:600px){
  .mobile-refresh-btn{display:inline-flex!important;align-items:center;justify-content:center;width:34px;min-width:34px;height:34px;min-height:34px;padding:0;font-size:21px;line-height:1}
  .register-filter-row{display:grid!important;grid-template-columns:1fr 1fr;grid-template-areas:"search location" "range range" "apply clear";gap:6px 7px;align-items:end}
  #registerSearch{grid-area:search!important;min-width:0!important;width:100%!important}
  #registerLocationFilter{grid-area:location}
  .mobile-date-range-label{display:block;grid-area:range;align-self:start;font-size:10px;font-weight:700;color:#64748b;margin-bottom:35px;pointer-events:none}
  .from-date{grid-area:range;justify-self:start;width:calc(50% - 10px);margin-top:13px}
  .to-date{grid-area:range;justify-self:end;width:calc(50% - 10px);margin-top:13px}
  .mobile-date-separator{display:block;grid-area:range;align-self:end;justify-self:center;padding-bottom:9px;color:#667085;font-weight:700}
  .register-date-filter span{display:none}
  #applyFiltersBtn{grid-area:apply;min-height:34px;padding:5px 8px;font-size:12px}
  #clearFiltersBtn{grid-area:clear;min-height:34px;padding:5px 8px;font-size:12px}
  #registerStatusFilter,#showRecentBtn,#refreshRegisterBtn{display:none!important}

  .reservation-modal .mobile-primary-fields{display:grid;grid-template-columns:.62fr 1.35fr 1fr;gap:6px;grid-column:1/-1;width:100%}
  .reservation-modal .mobile-primary-fields .field{min-width:0}
  .reservation-modal .mobile-primary-fields #editGuests,.reservation-modal .mobile-primary-fields #editDate,.reservation-modal .mobile-primary-fields #editTime{width:100%;max-width:none;min-width:0}
  .reservation-modal .edit-status-field{display:none!important}

  #reservationForm .grid{display:grid!important;grid-template-columns:.62fr 1.35fr 1fr;gap:8px 6px}
  #reservationForm .grid>.mobile-primary-field{grid-row:1;grid-column:auto;min-width:0}
  #reservationForm .grid>.mobile-primary-field input,#reservationForm .grid>.mobile-primary-field select{width:100%;min-width:0}
  #reservationForm .grid>.field:not(.mobile-primary-field),#reservationForm .grid>#locationInfoMessage{grid-column:1/-1}
}


/* v2.0.24 register column order/mobile readability */
@media(max-width:600px){
  .register-table{font-size:11px}
  .register-table th{font-size:10.5px;padding:6px 5px}
  .register-table td{font-size:10px;padding:5px 5px}
  .register-table th:nth-child(2),.register-table td:nth-child(2),
  .register-table th:nth-child(3),.register-table td:nth-child(3),
  .register-table th:nth-child(4),.register-table td:nth-child(4),
  .register-table th:nth-child(5),.register-table td:nth-child(5),
  .register-table th:nth-child(8),.register-table td:nth-child(8),
  .register-table th:nth-child(11),.register-table td:nth-child(11){font-size:11px;font-weight:600}
}


/* v2.0.25 register density, no-wrap fields, compact mobile controls */
.register-table td.col-date,.register-table td.col-location,
.register-table th:nth-child(3),.register-table th:nth-child(9){white-space:nowrap}
.register-table td.col-id,.register-table td.col-date,.register-table td.col-time,
.register-table td.col-guests,.register-table td.col-name,.register-table td.col-email,
.register-table td.col-phone,.register-table td.col-location,.register-table td.col-submitted,
.register-table td.col-status{white-space:nowrap}
.register-table td.col-requests{white-space:normal;overflow-wrap:anywhere}
.mobile-refresh-btn.is-refreshing{animation:aquaRefreshSpin .7s linear infinite;opacity:.75}
@keyframes aquaRefreshSpin{to{transform:rotate(360deg)}}
@media(max-width:600px){
  .mobile-date-range-label{display:none!important;margin:0!important}
  .register-filter-row{grid-template-areas:"search location" "range range" "apply clear";row-gap:6px}
  .from-date,.to-date{margin-top:0!important;width:calc(50% - 10px)}
  .register-table{width:max-content;min-width:100%;table-layout:auto}
  .register-table th,.register-table td{padding-left:3px!important;padding-right:3px!important}
  .register-table .col-id{min-width:38px;width:38px}
  .register-table .col-date{min-width:72px;width:72px}
  .register-table .col-time{min-width:52px;width:52px}
  .register-table .col-guests{min-width:48px;width:48px;text-align:center}
  .register-table .col-name{min-width:105px}
  .register-table .col-location{min-width:105px}
  .reservation-modal .mobile-primary-fields #editGuests,
  .reservation-modal .mobile-primary-fields #editDate,
  .reservation-modal .mobile-primary-fields #editTime,
  #reservationForm .mobile-primary-field input,
  #reservationForm .mobile-primary-field select{height:36px!important;min-height:36px!important;max-height:36px!important;padding-top:5px!important;padding-bottom:5px!important}
  .reservation-modal .mobile-primary-fields input[type="date"]::-webkit-calendar-picker-indicator,
  #reservationForm .mobile-primary-field input[type="date"]::-webkit-calendar-picker-indicator{width:20px;height:20px;padding:2px}
}

/* v2.0.27 — contact-only customer modals with working WhatsApp CTA. */
.embed-contact-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:16px}
.embed-whatsapp-link{background:#128c55;color:#fff!important;border:1px solid #128c55;border-radius:8px;
  text-decoration:none;display:inline-flex;align-items:center;justify-content:center;
  padding:10px 14px;min-height:42px;font-weight:700;line-height:1.25}
.embed-whatsapp-link:hover,.embed-whatsapp-link:focus-visible{background:#0c7746;border-color:#0c7746}
/* Mobile: action stays directly after Special Requests, not stuck at the iframe bottom. */
@media(max-width:600px){
  .reservation-embed-body{padding:6px 6px 16px!important}
  .reservation-embed-body .embed-actions{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;
    width:100%!important;margin:16px 0 0!important;padding:0!important;border:0!important;box-shadow:none!important;
    background:transparent!important;border-radius:0!important;z-index:auto!important}
  .reservation-embed-body .embed-actions .primary{width:100%;min-width:0}
  .embed-contact-actions{display:flex;flex-direction:column;align-items:stretch}
  .embed-contact-actions .embed-whatsapp-link,.embed-contact-actions .secondary{width:100%}
}

/* v2.0.29 — single, native-autofill guest phone field, without instructions or country picker. */
.reservation-embed-body .embed-phone-field{min-width:0;display:flex;flex-direction:column;gap:6px}
.reservation-embed-body .embed-phone-field>label{font-weight:700}
.reservation-embed-body .embed-phone-field>input{width:100%;min-width:0}
