.tr-reservation{--tr-accent:#823c46;--tr-border:#a5a5a5;color:#222;font-size:16px;line-height:1.7;max-width:780px;width:100%;margin-inline:auto;text-align:left;overflow-wrap:anywhere}
.tr-reservation *{box-sizing:border-box}
.tr-reservation [hidden]{display:none!important}
.tr-reservation .tr-heading{font-size:1.65em;margin:0 0 16px;color:inherit}
.tr-reservation .tr-fields,.tr-reservation .tr-birthday{border:0;padding:0;margin:0;min-width:0}
.tr-reservation .tr-field{margin:0 0 20px}
.tr-reservation label,.tr-reservation legend{display:block;font-size:1em;color:#222;font-weight:600;margin:0 0 7px}
.tr-reservation input:not([type=checkbox]),.tr-reservation select,.tr-reservation textarea{display:block;width:100%;max-width:100%;min-height:48px;border:1px solid var(--tr-border);border-radius:5px;padding:11px 12px;background:#fff;color:#222;font:inherit;line-height:1.5;box-shadow:none}
.tr-reservation input[readonly]{background:#f8f8f8;cursor:pointer}
.tr-reservation input[type=checkbox]{width:22px;height:22px;min-width:22px;margin:2px 6px 0 0;accent-color:var(--tr-accent)}
.tr-reservation .tr-consent{display:flex;align-items:flex-start;flex-wrap:wrap;gap:4px;cursor:pointer}
.tr-reservation .tr-required,.tr-reservation .tr-optional{display:inline-block;font-size:12px;line-height:1.7;border-radius:3px;padding:0 6px;margin-left:8px;vertical-align:middle;white-space:nowrap}
.tr-reservation .tr-required{background:#823c46;color:#fff}
.tr-reservation .tr-optional{background:#eee;color:#333}
.tr-reservation .tr-note{font-size:14px;color:#444;margin:10px 0 20px}
.tr-reservation a{color:#70313a;text-decoration:underline;text-underline-offset:3px}
.tr-reservation .tr-error{display:block;color:#a71919;font-size:14px;font-weight:500;margin-top:5px}
.tr-reservation [aria-invalid=true]{border:2px solid #a71919!important}
.tr-reservation :focus-visible{outline:3px solid #195c9d;outline-offset:3px}
.tr-reservation .tr-status{padding:10px 12px;background:#f5f3f1;border-radius:4px;font-size:14px}
.tr-reservation .tr-status:empty{display:none}
.tr-reservation .tr-birth-row{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:12px}
.tr-reservation .tr-birth-row .tr-required{display:none}
.tr-reservation .tr-date-row{display:flex;gap:8px;align-items:stretch}
.tr-reservation .tr-date-row input{flex:1;min-width:0}
.tr-reservation button{appearance:none;font:inherit;line-height:1.5;min-height:48px;border-radius:5px;padding:12px 18px;cursor:pointer;text-transform:none;letter-spacing:normal;box-shadow:none;white-space:normal}
.tr-reservation .tr-primary{background:var(--tr-accent);color:#fff;border:2px solid var(--tr-accent);font-weight:700}
.tr-reservation .tr-secondary{background:#fff;color:#53242c;border:1px solid #82434d;font-weight:600}
.tr-reservation .tr-review-button{display:block;width:100%;margin-top:16px}
.tr-reservation button:disabled{cursor:wait;opacity:.6}
.tr-reservation .tr-privacy{margin:4px 0 20px;border:1px solid #bbb;border-radius:5px;padding:12px}
.tr-reservation .tr-privacy summary{cursor:pointer;font-weight:600}
.tr-reservation .tr-privacy>div{max-height:360px;overflow:auto;padding:12px 3px;font-size:14px}
.tr-reservation .tr-privacy h3,.tr-reservation .tr-privacy h4{font-size:1em;color:inherit;margin:12px 0 8px}
.tr-reservation .tr-summary{margin:0}
.tr-reservation .tr-summary dt{font-weight:600;margin-top:16px;color:#444}
.tr-reservation .tr-summary dd{margin:4px 0 12px;padding-bottom:12px;border-bottom:1px solid #ddd;white-space:pre-wrap;color:#222}
.tr-reservation .tr-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.tr-reservation .tr-actions button{flex:1 1 240px}
.tr-reservation .tr-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.tr-reservation .tr-calendar{margin-top:10px;max-width:360px;padding:12px;border:1px solid #aaa;border-radius:5px;background:white}
.tr-reservation .ui-datepicker{width:100%;font:inherit}
.tr-reservation .ui-datepicker-header{position:relative;padding:5px 0 12px}
.tr-reservation .ui-datepicker-title{text-align:center;margin:0 40px;font-weight:700}
.tr-reservation .ui-datepicker-prev,.tr-reservation .ui-datepicker-next{position:absolute;top:0;cursor:pointer;padding:4px;font-size:14px}
.tr-reservation .ui-datepicker-prev{left:0}.tr-reservation .ui-datepicker-next{right:0}
.tr-reservation .ui-datepicker table{width:100%;border-collapse:collapse;table-layout:fixed;margin:0}
.tr-reservation .ui-datepicker th,.tr-reservation .ui-datepicker td{border:0;padding:2px;text-align:center;background:transparent;color:#222}
.tr-reservation .ui-datepicker td a,.tr-reservation .ui-datepicker td span{display:flex;align-items:center;justify-content:center;min-height:36px;border-radius:4px;padding:2px;text-decoration:none}
.tr-reservation .ui-datepicker td a{background:#f2eeea;color:#222}
.tr-reservation .ui-datepicker .ui-state-disabled span{color:#767676;background:#fafafa;text-decoration:line-through}
.tr-reservation .ui-datepicker .ui-state-active{background:#823c46;color:#fff}
.tr-reservation .ui-datepicker .ui-state-hover{outline:2px solid #823c46}
@media(max-width:480px){.tr-reservation .tr-date-row{flex-wrap:wrap}.tr-reservation .tr-date-row input{flex-basis:100%}.tr-reservation .tr-date-row button{width:100%}.tr-reservation .tr-birth-row{gap:8px}.tr-reservation button{padding-inline:12px}}
