/* One light palette is the final colour authority for the whole site. */
:root,html[data-theme=light]{color-scheme:only light;--ui-bg:#f4f6f8;--ui-panel:#ffffff;--ui-raised:#edf2f6;--ui-field:#ffffff;--ui-text:#182c3a;--ui-muted:#526576;--ui-line:#a4b4c1;--ui-accent:#175a84;--ui-accent-hover:#104669;--ui-on-accent:#ffffff;--ui-link:#135c94;--ui-focus:#176caf;--ui-selected:#deedf8;--ui-good:#21643e;--ui-good-bg:#e6f3e9;--ui-warn:#82500c;--ui-warn-bg:#fff2d8;--ui-bad:#a32929;--ui-bad-bg:#fce9e7;--ui-violet:#654399;--ui-violet-bg:#eee8f7;--ui-shadow:0 5px 22px #172c3a12;--ui-backdrop:#0b1b2baa}
html{background:var(--ui-bg);color:var(--ui-text)}
html[data-theme] body:is([data-workspace],.access-page,.security-page){
 --accent:var(--ui-accent);--border:var(--ui-line);--line:var(--ui-line);--muted:var(--ui-muted);--surface:var(--ui-panel);--text:var(--ui-text);
 --admin-ink:var(--ui-text);--admin-muted:var(--ui-muted);--admin-line:var(--ui-line);--admin-surface:var(--ui-panel);--admin-surface-raised:var(--ui-raised);
 --apple-bg:var(--ui-bg);--apple-card:var(--ui-panel);--apple-ink:var(--ui-text);--apple-line:var(--ui-line);--apple-blue:var(--ui-accent);--apple-blue-dark:var(--ui-accent-hover);--apple-shadow:var(--ui-shadow);
 --ws-ink:var(--ui-text);--ws-muted:var(--ui-muted);--ws-line:var(--ui-line);--ws-paper:var(--ui-panel);--ws-primary:var(--ui-accent);--ws-primary-dark:var(--ui-accent-hover);--ws-shadow:var(--ui-shadow);
 --messenger-bg:var(--ui-panel);--messenger-text:var(--ui-text);--messenger-muted:var(--ui-muted);--messenger-line:var(--ui-line);--messenger-accent:var(--ui-link);--messenger-tint:var(--ui-selected);
 --chat-line:var(--ui-line);--chat-muted:var(--ui-muted);--chat-surface:var(--ui-panel);
 --control-bg:var(--ui-raised);--control-hover:var(--ui-selected);--control-ink:var(--ui-text);--control-line:var(--ui-line);--control-focus:var(--ui-focus);--control-disabled-bg:var(--ui-raised);--control-disabled-ink:var(--ui-muted);--control-accent-bg:var(--ui-accent);--control-accent-hover:var(--ui-accent-hover);--control-accent-ink:var(--ui-on-accent);--control-accent-line:var(--ui-accent);
 --green-bg:var(--ui-good-bg);--green-wash:var(--ui-good-bg);--green-ink:var(--ui-good);--amber-bg:var(--ui-warn-bg);--amber-wash:var(--ui-warn-bg);--amber-ink:var(--ui-warn);--red-bg:var(--ui-bad-bg);--red-wash:var(--ui-bad-bg);--red-ink:var(--ui-bad);--blue-bg:var(--ui-selected);--blue-wash:var(--ui-selected);--blue-ink:var(--ui-link);--violet-bg:var(--ui-violet-bg);--violet-wash:var(--ui-violet-bg);--violet-ink:var(--ui-violet);--teal-bg:var(--ui-good-bg);--teal-wash:var(--ui-good-bg);--teal-ink:var(--ui-good);
 background:var(--ui-bg)!important;color:var(--ui-text)!important;
}
/* All structural surfaces, including the request-list container itself. */
html[data-theme] body:is([data-workspace],.access-page,.security-page) :is(article,.panel,fieldset,dialog,.chat-panel,.chat-task,.chat-inbox-row,.login-dialog>section,.offer-column,.compact-pick,.offer-payment-choices,.offer-special-timing,.offer-choice-summary,.theme-settings,.workspace-footer,.operations-more-views>div,.chat-settings-menu,.chat-add>div,.chat-emojis>div,.request-card-popover,.request-status-menu>div,.request-expiry-review,.date-range-popover,.calendar-popover,.hotel-attachment-menu,.hotel-attachment-file,.chat-hidden-dialog,.access-page main){background:var(--ui-panel)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] :is(#incoming-inquiries,#hotel-today,#chat-toolbar,#guest-settings,#guest-profile,.workflow-tabs,.workspace-views,.guest-bottom-nav,.compact-offer-dialog,.admin-panel-heading,.offer-progress,.chat-head,.chat-message-head,.chat-request-screen>header,footer,>header){background:var(--ui-panel)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body:is([data-workspace],.access-page,.security-page) :is(h1,h2,h3,h4,strong,legend,label,summary,.preserve,.guest-name){color:inherit}
html[data-theme] body:is([data-workspace],.access-page,.security-page) :is(.muted,small,time,.chat-preview-text,.chat-bookings,.request-card-time,.request-card-person small,.request-card-menu-hint,.offer-purpose-preview,.offer-expiry,.offer-conditions-intro,.compact-price-equation,.compact-price,.offer-preset-note,.operations-page-identity small,.guest-subtitle,.access-footer){color:var(--ui-muted)!important;opacity:1}
html[data-theme] body:is([data-workspace],.access-page,.security-page) a{color:var(--ui-link)}
html[data-theme] body:is([data-workspace],.access-page,.security-page) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]):not([type=submit]),textarea,select){background:var(--ui-field)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important;color-scheme:inherit;caret-color:var(--ui-text)}
html[data-theme] body:is([data-workspace],.access-page,.security-page) :is(input,textarea)::placeholder{color:var(--ui-muted)!important;opacity:1}
html[data-theme] body:is([data-workspace],.access-page,.security-page) :is(input,textarea,select,button,a,summary):focus-visible{outline:3px solid var(--ui-focus)!important;outline-offset:2px}
html[data-theme] body:is([data-workspace],.access-page,.security-page) input:is([type=checkbox],[type=radio]){accent-color:var(--ui-accent)}
/* Colour pairs are always set together. Transparency never makes white text disappear. */
html[data-theme] body:is([data-workspace],.access-page,.security-page) :is(button,.button,input[type=submit]){background:var(--ui-accent)!important;color:var(--ui-on-accent)!important;border-color:var(--ui-accent)!important}
html[data-theme] body:is([data-workspace],.access-page,.security-page) :is(button,.button):hover{background:var(--ui-accent-hover)!important;color:var(--ui-on-accent)!important}
html[data-theme] body:is([data-workspace],.access-page,.security-page) :is(button.secondary,.button.secondary,button.ghost,.button.ghost,.range-trigger,.request-card-more,.request-card-open,.request-card-popover button,.workflow-tabs button,.workspace-views button,.operations-more-views summary,.today-tile,.chat-inbox-row button){background:var(--ui-raised)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] :is(.workflow-tabs button[aria-selected=true],.workspace-views button[aria-selected=true],.workspace-views button[aria-current=page],.workspace-views button.active,.request-filter.active,.request-filter[aria-pressed=true]){background:var(--ui-selected)!important;color:var(--ui-link)!important;border-color:var(--ui-link)!important}
html[data-theme] body:is([data-workspace],.access-page,.security-page) :is(button,input,select,textarea):disabled{background:var(--ui-raised)!important;color:var(--ui-muted)!important;border-color:var(--ui-line)!important;opacity:1!important;cursor:default}
html[data-theme] body[data-workspace] :is(button.danger,.button.danger){background:var(--ui-bad-bg)!important;color:var(--ui-bad)!important;border-color:var(--ui-bad)!important}
html[data-theme] body[data-workspace] :is(th,.offer-choice-summary,.chat-messages,.guest-code-cell,.guest-code-cell.is-filled){background:var(--ui-raised)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] :is(td,th,table,.offer-section-title,.bar){border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] .compact-pick.is-selected{background:var(--ui-selected)!important;border-color:var(--ui-link)!important;box-shadow:inset 3px 0 var(--ui-link)!important}
html[data-theme] body[data-workspace] .compact-pick.is-unavailable{background:var(--ui-bad-bg)!important;border-color:var(--ui-bad)!important}
html[data-theme] body[data-workspace] :is(.note,.chat-pinned,.debt-pioneer-warning,.connection-notice,.request-queue-alert){background:var(--ui-warn-bg)!important;color:var(--ui-warn)!important;border-color:var(--ui-warn)!important}
html[data-theme] body[data-workspace] :is(.error,.chat-blocked,.request-overdue,.request-card-ui.is-overdue .request-card-deadline){color:var(--ui-bad)!important}
html[data-theme] body[data-workspace] :is(.success,.code-success,.connection-indicator[data-state=online]){color:var(--ui-good)!important}
/* Request state is communicated by an accent and label, not a giant coloured button. */
html[data-theme] body[data-workspace] :is(.request-card-ui,[data-card][data-state]){--request-background:var(--ui-panel);--request-tint:var(--ui-panel);--request-ink:var(--ui-text);--request-stroke:var(--ui-warn);--request-border:var(--ui-warn);background:var(--ui-panel)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important;border-left-color:var(--request-stroke)!important;box-shadow:var(--ui-shadow)!important}
html[data-theme] body[data-workspace] :is([data-decision=working],[data-state=in_progress]){--request-stroke:var(--ui-link);--request-border:var(--ui-link)}
html[data-theme] body[data-workspace] :is([data-decision=approved],[data-state=completed]){--request-stroke:var(--ui-good);--request-border:var(--ui-good)}
html[data-theme] body[data-workspace] :is([data-decision=rejected],[data-decision=archived],[data-state=declined]){--request-stroke:var(--ui-muted);--request-border:var(--ui-muted);background:var(--ui-raised)!important}
html[data-theme] body[data-workspace] [data-card][data-state] :is(form,fieldset,details,summary,.bar,.queue-items,.queue-card-heading,.request-status-menu>div){background:var(--ui-panel)!important;color:var(--ui-text)!important}
html[data-theme] body[data-workspace] [data-card][data-state] :is(p,strong,summary,h3,legend,label,.request-deadline,.request-state,.preserve){color:var(--ui-text)!important}
html[data-theme] body[data-workspace] .request-card-status{background:var(--ui-raised)!important;color:var(--ui-text)!important;border-color:var(--request-stroke)!important}
html[data-theme] body[data-workspace] :is(.offer-step-dot,.offer-progress .offer-step-dot){background:var(--ui-raised)!important;color:var(--ui-muted)!important}
html[data-theme] body[data-workspace] .offer-progress [aria-current=step] .offer-step-dot{background:var(--ui-good-bg)!important;color:var(--ui-good)!important}
html[data-theme] body[data-workspace] .chat-message{background:var(--ui-panel)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] .chat-message.mine{background:var(--ui-selected)!important;color:var(--ui-text)!important}
html[data-theme] body[data-workspace] .chat-message :is(p,header,strong){background:transparent!important;color:inherit!important}
html[data-theme] body[data-workspace] .hotel-attachment-file :is(small,time){color:var(--ui-muted)!important}
html[data-theme] body[data-workspace] .hotel-attachment-image :is(strong,small,time){color:#fff!important}
html[data-theme] body[data-workspace] .hotel-attachment-image .hotel-attachment-caption{color:#fff!important}
html[data-theme] body[data-workspace] .hotel-attachment-thumb:not(img){background:var(--ui-raised)!important;color:var(--ui-text)!important}
html[data-theme] body[data-workspace] :is(.chat-icon-only,.composer-remove){background:transparent!important;color:var(--ui-link)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] .composer-send.chat-icon-only{background:var(--ui-accent)!important;color:var(--ui-on-accent)!important}
html[data-theme] body[data-workspace] .chat-icon-only[aria-pressed=true]{color:var(--ui-bad)!important}
html[data-theme] body[data-workspace] .chat-icon-only:disabled{color:var(--ui-muted)!important;background:var(--ui-raised)!important}
html[data-theme] body[data-workspace] .chat-emojis button{background:transparent!important;color:var(--ui-text)!important}
html[data-theme] dialog::backdrop{background:var(--ui-backdrop)}
.theme-settings{margin:12px 0;padding:10px 14px;border:1px solid var(--ui-line);border-radius:14px}.theme-settings summary{cursor:pointer;font-weight:650}.theme-settings label{display:grid;gap:5px;margin-top:10px}.theme-settings select{width:100%;min-height:42px}
.guest-bottom-nav{display:none}
@media(max-width:700px){body[data-cabinet=guest],body[data-workspace]:has(#guest-chat){padding-bottom:76px}.guest-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:950;display:grid;grid-template-columns:repeat(4,1fr);padding:6px 4px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--ui-line);background:var(--ui-panel);backdrop-filter:blur(20px)}html[data-theme] body[data-workspace] .guest-bottom-nav :is(a,button){display:grid;min-width:0;min-height:48px;place-items:center;padding:5px 2px;border:0;background:transparent!important;color:var(--ui-muted)!important;font:inherit;font-size:11px;font-weight:650;text-align:center;text-decoration:none;box-shadow:none}html[data-theme] body[data-workspace] .guest-bottom-nav [aria-current=page]{color:var(--ui-link)!important}}
@media print{html[data-theme] body[data-workspace]{background:#fff!important;color:#111!important}}

html[data-theme] :is(.access-page,.security-page) :is(main,.access-header,.security-grid>details){background:var(--ui-panel)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] :is(.access-page,.security-page) p{color:var(--ui-muted)}
html[data-theme] :is(.access-page,.security-page) .message{background:var(--ui-warn-bg);color:var(--ui-warn);border-color:var(--ui-warn)}
html[data-theme] body:is([data-workspace],.access-page) :is(.admin-code-cells>span,.guest-code-cells>span){background:var(--ui-field)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body:is([data-workspace],.access-page) :is(.admin-code-field input,.guest-code-field input){background:transparent!important;color:transparent!important;caret-color:transparent!important;border:0!important}
html[data-theme] body:is([data-workspace],.access-page) :is(#admin-code-feedback,.login-code-feedback){color:var(--ui-muted)}
html[data-theme] body:is([data-workspace],.access-page) :is(#admin-code-feedback,.login-code-feedback)[data-state=success]{color:var(--ui-good)!important}
html[data-theme] body:is([data-workspace],.access-page) :is(#admin-code-feedback,.login-code-feedback)[data-state=error]{color:var(--ui-bad)!important}
html[data-theme] body.access-page #admin-code-form[data-code-state=success] .admin-code-cells>span{background:var(--ui-good-bg)!important;border-color:var(--ui-good)!important}
/* Changing themes is atomic: do not animate a light background under dark text. */
html[data-theme]{background:var(--ui-bg)!important;color:var(--ui-text)!important}
html[data-theme] body:is([data-workspace],.access-page,.security-page) *{transition-property:transform,opacity!important}
html[data-theme] body[data-workspace] :is(footer,.workspace-footer)>p{color:var(--ui-muted)!important}
html[data-theme] body[data-workspace] .request-card-open{background:transparent!important;color:inherit!important}
html[data-theme] body[data-workspace] :is(.empty-cabinet,.empty-chat-message,.guest-section,.guest-email-history,.guest-trip-summary,.guest-payment-summary,.guest-photo-disclosure,.guest-stay-guide,.guest-stay-action,.guest-legal-sheet,.guest-cancellation-status,.chat-request,.guest-overflow-options,.calendar-scroll,.calendar-head,.calendar-head>strong,.calendar-apartment,.calendar-popover,.guest-next){background:var(--ui-panel)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] .workspace-views button[aria-pressed=true]{background:var(--ui-selected)!important;color:var(--ui-link)!important;border-color:var(--ui-link)!important}
html[data-theme] body[data-workspace] :is(.request-response-alert,.pioneer-reminder,.guest-next[data-tone=attention],.guest-stay-action.payment-due,.client-status.update-required){background:var(--ui-warn-bg)!important;color:var(--ui-warn)!important;border-color:var(--ui-warn)!important}
html[data-theme] body[data-workspace] :is(#guest-presence[data-online=true],.connection-indicator[data-online=true]){color:var(--ui-good)!important}
html[data-theme] body[data-workspace] .calendar-booking{background:var(--ui-selected)!important;color:var(--ui-text)!important;border-color:var(--ui-link)!important}
html[data-theme] body[data-workspace] :is(.calendar-booking[data-firm=true],.guest-next[data-tone=success]){background:var(--ui-good-bg)!important;color:var(--ui-good)!important;border-color:var(--ui-good)!important}
html[data-theme] body[data-workspace] .calendar-booking.is-proposal{background:var(--ui-warn-bg)!important;color:var(--ui-warn)!important;border-color:var(--ui-warn)!important}
html[data-theme] body[data-workspace] :is(.calendar-booking[data-state=departed],.calendar-booking[data-state=cancelled],.calendar-booking[data-state=declined],.chat-request[data-decision=rejected],.chat-request[data-decision=archived],.guest-next[data-tone=closed]){background:var(--ui-raised)!important;color:var(--ui-muted)!important;border-color:var(--ui-muted)!important}
html[data-theme] body[data-workspace] :is(.progress-dot,.guest-booking-progress b){background:var(--ui-raised)!important;color:var(--ui-muted)!important}
html[data-theme] body[data-workspace] :is(.is-done .progress-dot,.is-current .progress-dot,.guest-booking-progress .done b,.guest-booking-progress .current b){background:var(--ui-good-bg)!important;color:var(--ui-good)!important}
html[data-theme] body[data-workspace] .guest-booking-progress .needs-payment b{background:var(--ui-bad-bg)!important;color:var(--ui-bad)!important}
html[data-theme] body[data-workspace] .booking-progress .progress-note{background:var(--ui-raised)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] .connection-indicator[data-connection=online]{color:var(--ui-good)!important}
html[data-theme] body[data-workspace] .connection-indicator[data-connection=offline]{color:var(--ui-bad)!important}
html[data-theme] body[data-workspace] [data-register-count]{color:var(--ui-muted)!important}
html[data-theme] body[data-workspace] :is(.feedback-stats,.feedback-bar,.feedback-bar-track){background:var(--ui-raised)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] #feedback [data-tone=urgent]{--feedback-color:var(--ui-bad);--feedback-bg:var(--ui-bad-bg);color:var(--ui-bad)!important}
html[data-theme] body[data-workspace] #feedback [data-tone=attention]{--feedback-color:var(--ui-warn);--feedback-bg:var(--ui-warn-bg)}
html[data-theme] body[data-workspace] #feedback [data-tone=positive]{--feedback-color:var(--ui-good);--feedback-bg:var(--ui-good-bg)}
html[data-theme] body[data-workspace] #feedback button.feedback-bar{background:var(--ui-panel)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] #feedback button.feedback-point{background:var(--feedback-color,var(--ui-link))!important;border-color:var(--ui-panel)!important}
/* Milestones stay dots on a line, even when an earlier stage is navigable. */
html[data-theme] body[data-workspace] .booking-progress .progress-action{background:transparent!important;color:var(--ui-muted)!important;border:0!important;box-shadow:none!important}
html[data-theme] body[data-workspace] .booking-progress :is(.is-current,.is-done) .progress-action{color:var(--ui-good)!important}
html[data-theme] body[data-workspace] .booking-progress button.progress-action:hover{background:var(--ui-good-bg)!important}
html[data-theme] body[data-workspace] .booking-progress li::before{background:var(--ui-line)!important}
html[data-theme] body[data-workspace] .booking-progress :is(.is-current,.is-done)::before{background:var(--ui-good)!important}
html[data-theme] body[data-workspace] .progress-dot{border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] :is(.is-current,.is-done) .progress-dot{border-color:var(--ui-good)!important}
html[data-theme] body[data-workspace] .booking-progress.is-stopped .is-current :is(.progress-action,.progress-dot){color:var(--ui-muted)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] .request-filter:not([aria-pressed=true]):not(.active){background:var(--ui-raised)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] :is(#business-workspace,#guest-workspace) .workflow-tabs button[aria-selected=true]:not(:disabled),html[data-theme] body[data-workspace] .file-view-toggle button[aria-pressed=true]:not(:disabled){background:var(--ui-selected)!important;color:var(--ui-link)!important;border-color:var(--ui-link)!important}
html[data-theme] body[data-workspace] .payment-method-summary{background:var(--ui-raised)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] :is(.stay-badge,.payment-badge[data-payment=offer]){background:var(--ui-raised)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] :is(.payment-badge[data-payment=unpaid],.payment-badge[data-payment=partial]){background:var(--ui-warn-bg)!important;color:var(--ui-warn)!important;border-color:var(--ui-warn)!important}
html[data-theme] body[data-workspace] .payment-badge[data-payment=paid]{background:var(--ui-good-bg)!important;color:var(--ui-good)!important;border-color:var(--ui-good)!important}
html[data-theme] body[data-workspace] .payment-badge[data-payment=partial_refund]{background:var(--ui-violet-bg)!important;color:var(--ui-violet)!important;border-color:var(--ui-violet)!important}
html[data-theme] body[data-workspace] :is(.payment-badge[data-payment=refunded],.payment-badge[data-payment=cancelled]){background:var(--ui-raised)!important;color:var(--ui-muted)!important;border-color:var(--ui-line)!important}
/* The booking identity is a direct header, outside the cabinet panels. */
html[data-theme] body[data-workspace]>.booking-page-identity{background:var(--ui-panel)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] :is(#business-workspace,#guest-workspace) .workflow-tabs button:not([aria-selected=true]):not(:disabled){background:var(--ui-raised)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}

/* Conversation rows are surfaces, including their button and hover states. */
html[data-theme] body[data-workspace] button.chat-inbox-row,
html[data-theme] body[data-workspace] button.chat-inbox-row:disabled{background:var(--ui-panel)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] button.chat-inbox-row:is(:hover,:focus-visible,:active,[aria-selected=true],[aria-current=true],.active){background:var(--ui-selected)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] button.chat-inbox-row .chat-person strong{color:var(--ui-text)!important}
html[data-theme] body[data-workspace] button.chat-inbox-row :is(.chat-email-and-id,.chat-email,.chat-guest-number,.chat-preview-text,time){color:var(--ui-muted)!important}

/* Service actions use a quiet, consistent pair instead of huge accent blocks. */
html[data-theme] body[data-workspace] #guest-request-section :is(button.guest-request-choice,a.empty-catalog-button){background:var(--ui-raised)!important;color:var(--ui-text)!important;border:1px solid var(--ui-line)!important;text-decoration:none}
html[data-theme] body[data-workspace] #guest-request-section :is(button.guest-request-choice,a.empty-catalog-button):hover{background:var(--ui-selected)!important;color:var(--ui-text)!important}
html[data-theme] body[data-workspace] .billing-resolution-guide{color:var(--ui-text);background:var(--ui-raised);padding:10px;border-radius:10px}

/* Native details controls also need an explicit, matching foreground/background. */
html[data-theme] body[data-workspace] .guest-payment-extension{background:var(--ui-raised)!important;color:var(--ui-text)!important;border-color:var(--ui-line)!important}
html[data-theme] body[data-workspace] .guest-payment-extension>summary{background:var(--ui-panel)!important;color:var(--ui-text)!important;border:1px solid var(--ui-line)!important}
html[data-theme] body[data-workspace] .guest-payment-extension>summary:hover{background:var(--ui-selected)!important;color:var(--ui-text)!important}

/* Fixed light surfaces and legible disabled actions on every workspace. */
html{color-scheme:only light!important}
html[data-theme] body[data-workspace] button:disabled{opacity:1!important;background:#e5ebf0!important;color:#52616e!important;border:1px solid #a4b4c1!important;cursor:not-allowed}
.payment-attention{padding:12px 16px;border:1px solid #b5c3ce;border-radius:12px;background:#edf4f8;color:#182c3a;margin:10px 0}.payment-attention p{margin:4px 0 0}
.payment-attention[data-level=soon]{background:#fff4d9;border-color:#bc830f;color:#714900}
.payment-attention[data-level=urgent]{background:#fff0ce;border:2px solid #ad7400;animation:payment-pulse 2.4s ease-in-out infinite}
.payment-attention[data-level=overdue]{background:#ffe8e6;border:2px solid #ba3030;color:#8a1b1b;animation:payment-pulse 1.8s ease-in-out infinite}
.payment-attention[data-level=verifying],.payment-attention[data-level=review]{background:#edf0fa;border-color:#727fae;color:#29385f}
@keyframes payment-pulse{50%{box-shadow:0 0 0 4px #ba303025}}
@media(prefers-reduced-motion:reduce){.payment-attention{animation:none!important}}
.guest-legal-items{border-collapse:collapse;width:100%;font-size:13px}.guest-legal-items th,.guest-legal-items td{padding:8px;border-bottom:1px solid #cad5df;text-align:left;vertical-align:top}
.pin-summary{display:flex;gap:12px;align-items:center;width:100%}.pin-summary>img{width:96px;height:76px;border-radius:10px;object-fit:cover;flex:none}.pin-facts{display:grid;grid-template-columns:1fr auto;gap:6px;flex:1}.pin-facts .request-card-meta,.pin-address{grid-column:1/-1}.request-card-status{background:#e6f3e9!important;color:#21643e!important}.booking-conversation-preview{width:100%;margin-top:10px}
.stage-offer-list.photo-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-cards>section{padding:10px;border:1px solid #bdcbd6;border-radius:14px}.photo-cards article.has-photo{display:flex;flex-direction:column;align-items:stretch;gap:6px}.photo-cards img.stage-offer-thumb{width:100%;height:132px;object-fit:cover;border-radius:10px}.photo-cards h3,.photo-cards p{margin:5px 0}.photo-cards button{font-size:13px;padding:8px 10px}.photo-cards article span{font-size:12px}
@media(max-width:520px){.stage-offer-list.photo-cards{grid-template-columns:1fr}.pin-summary>img{width:76px;height:68px}.pin-facts{grid-template-columns:1fr}.guest-legal-items{font-size:11px}}

.paper-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.paper-two-columns>fieldset{padding:10px;margin:0}.paper-two-columns>[data-custom-forms],.paper-two-columns>[data-postal-fields],.paper-two-columns>button{grid-column:1/-1}.paper-kind-list{gap:8px}.paper-two-columns textarea{min-height:48px}.custom-form-review{padding:10px;background:#edf4f8;border-radius:10px;margin:8px 0}.custom-form-next{display:flex;gap:8px}.paper-two-columns>[data-custom-forms][hidden]{display:none}
@media(max-width:600px){.paper-two-columns{grid-template-columns:1fr}}
