/* One action system; language flags and branded icons retain their own styles. */
:root{--button-blue:#3B55FF;--button-hover:#2C43D9;--button-active:#2034B8;--button-danger:#e11d2e;--button-danger-hover:#c31325;--button-danger-active:#a81020;--button-height:48px;--button-radius:999px;--form-padding:32px}
:is(button:not([data-language]):not(#calendar-days button),input[type="submit"],input[type="button"],input[type="reset"],a.btn,a.btn-primary,a.btn-secondary,a.btn-view,a.btn-link,a.button,a.button-secondary,a.action-btn){background:var(--button-blue)!important;color:#fff!important;border:1px solid var(--button-blue)!important;border-radius:var(--button-radius)!important;font-family:inherit!important;font-size:16px!important;line-height:1.4!important;font-weight:700!important;min-height:var(--button-height)!important;padding:11px 20px!important;cursor:pointer;text-align:center;text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;max-width:100%;white-space:normal;overflow-wrap:break-word}
:is(button:not([data-language]):not(#calendar-days button),input[type="submit"],input[type="button"],input[type="reset"],a.btn,a.btn-primary,a.btn-secondary,a.btn-view,a.btn-link,a.button,a.button-secondary,a.action-btn):hover{background:var(--button-hover)!important;border-color:var(--button-hover)!important;color:#fff!important}
:is(button:not([data-language]):not(#calendar-days button),input[type="submit"],input[type="button"],input[type="reset"],a.btn,a.btn-primary,a.btn-secondary,a.btn-view,a.btn-link,a.button,a.button-secondary,a.action-btn):active{background:var(--button-active)!important;border-color:var(--button-active)!important;color:#fff!important}
:is(button:not([data-language]):not(#calendar-days button),input[type="submit"],input[type="button"],input[type="reset"],a.btn,a.btn-primary,a.btn-secondary,a.btn-view,a.btn-link,a.button,a.button-secondary,a.action-btn):focus-visible{outline:3px solid #17182d!important;outline-offset:3px}
:is(button:not([data-language]):not(#calendar-days button),input[type="submit"],input[type="button"],input[type="reset"],a.btn,a.btn-primary,a.btn-secondary,a.btn-view,a.btn-link,a.button,a.button-secondary,a.action-btn):disabled{opacity:.5;cursor:default;box-shadow:none}
/* Raised specificity intentionally defeats legacy local and inline blue rules. */
:is(button:not([data-language]):not(#calendar-days button),input[type="submit"],input[type="button"],input[type="reset"],a.btn,a.btn-primary,a.btn-secondary,a.btn-view,a.btn-link,a.button,a.button-secondary,a.action-btn):is(.secondary,.button-secondary,.back-action,.btn-outline,.btn-link){background:#fff!important;color:var(--button-blue)!important;border-color:var(--button-blue)!important}
:is(button:not([data-language]):not(#calendar-days button),input[type="submit"],input[type="button"],input[type="reset"],a.btn,a.btn-primary,a.btn-secondary,a.btn-view,a.btn-link,a.button,a.button-secondary,a.action-btn):is(.secondary,.button-secondary,.back-action,.btn-outline,.btn-link):hover{background:#eef2ff!important}
:is(button:not([data-language]):not(#calendar-days button),input[type="submit"],input[type="button"],input[type="reset"],a.btn,a.btn-primary,a.btn-secondary,a.btn-view,a.btn-link,a.button,a.button-secondary,a.action-btn):is(.secondary,.button-secondary,.back-action,.btn-outline,.btn-link):active{background:#e0e6ff!important}
:is(button:not([data-language]):not(#calendar-days button),input[type="submit"],input[type="button"],input[type="reset"],a.btn,a.btn-primary,a.btn-secondary,a.btn-view,a.btn-link,a.button,a.button-secondary,a.action-btn).btn-destructive{background:var(--button-danger)!important;border-color:var(--button-danger)!important;color:#fff!important}
:is(button:not([data-language]):not(#calendar-days button),input[type="submit"],input[type="button"],input[type="reset"],a.btn,a.btn-primary,a.btn-secondary,a.btn-view,a.btn-link,a.button,a.button-secondary,a.action-btn).btn-destructive:hover{background:var(--button-danger-hover)!important;border-color:var(--button-danger-hover)!important}
:is(button:not([data-language]):not(#calendar-days button),input[type="submit"],input[type="button"],input[type="reset"],a.btn,a.btn-primary,a.btn-secondary,a.btn-view,a.btn-link,a.button,a.button-secondary,a.action-btn).btn-destructive:active{background:var(--button-danger-active)!important;border-color:var(--button-danger-active)!important}
:is(.guest-stepper,.occupancy-stepper) button{padding:0!important;font-size:26px!important;min-width:48px;flex-shrink:0}
#guest-count-form .occupancy-stepper button:not([data-language]){background:#edf4fb!important;color:var(--button-blue)!important;border-color:var(--button-blue)!important}
#guest-count-form .occupancy-stepper button:not([data-language]):hover{background:#eef2ff!important;color:var(--button-blue)!important;border-color:var(--button-blue)!important}
#guest-count-form .occupancy-stepper button:not([data-language]):active{background:#e0e6ff!important;color:var(--button-blue)!important;border-color:var(--button-blue)!important}
.checkin-public .guest-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));grid-auto-rows:1fr;align-items:stretch;gap:12px}
.checkin-public .guest-actions :is(button,a){height:100%;width:100%;margin:0;min-width:0}
.checkin-public :is(.form-body,.card-header,.guest-navigation,.guest-actions,.guest-secondary-actions){padding-left:var(--form-padding);padding-right:var(--form-padding)}
.checkin-public form>.save-caption{padding:0 var(--form-padding);margin:0 0 20px;color:var(--muted);font-size:13px}
.reservation-link-actions{display:flex!important;align-items:center!important;justify-content:space-between;gap:12px;flex-wrap:wrap}
.reservation-link-actions>button,.admin-app .reservation-link-actions>a{flex:0 1 auto!important;width:auto!important;min-width:0!important;margin:0}
.reservation-link-actions>:last-child{margin-left:auto}
.reservation-link-actions>#copy-private-reservation-link{margin-right:auto!important}
.reservation-link-actions>#delete-reservation{margin-left:auto!important}
.private-link-status{margin-top:8px}
.private-link-fallback{display:block;width:min(100%,48rem);margin-top:8px;box-sizing:border-box}
.traveler-delete-actions{align-items:stretch}.traveler-delete-actions>*{flex:1 1 160px}
@media(max-width:760px){:root{--form-padding:20px}}
@media(max-width:480px){.traveler-delete-actions>*{flex:0 0 auto}.reservation-link-actions{flex-direction:row}.checkin-public .guest-actions{grid-template-columns:1fr}}

[hidden]{display:none!important}

.admin-app .language-switcher button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:8px 12px;border:1px solid var(--button-blue);border-radius:var(--button-radius);background:var(--button-blue);color:white;font:700 12px/1.4 system-ui,sans-serif;cursor:pointer}
.admin-app .language-switcher button:hover{background:var(--button-hover);border-color:var(--button-hover)}
.admin-app .language-switcher button:active{background:var(--button-active);border-color:var(--button-active)}
.admin-app .language-switcher button:focus-visible{outline:3px solid #17182d;outline-offset:3px}
.admin-app .language-switcher button:disabled{opacity:.5;cursor:default}
@media(max-width:600px){.admin-app .language-switcher button{padding:8px 6px}}
