.pnr-booking{--pnr-primary:#6d1a2c;--pnr-text:#2a2422;--pnr-bg:#ffffff;--pnr-font:inherit;--pnr-muted:color-mix(in srgb, var(--pnr-text) 60%, transparent);--pnr-line:color-mix(in srgb, var(--pnr-text) 15%, transparent);--pnr-soft:color-mix(in srgb, var(--pnr-primary) 8%, var(--pnr-bg));--pnr-radius:10px;color:var(--pnr-text);font-family:var(--pnr-font);max-width:640px;margin:0 auto;box-sizing:border-box}.pnr-booking *,.pnr-booking *::before,.pnr-booking *::after{box-sizing:border-box}.pnr-card{background:var(--pnr-bg);border:1px solid var(--pnr-line);border-radius:var(--pnr-radius);padding:24px;transition:opacity 0.15s}.pnr-card.is-loading .pnr-step{opacity:.6}.pnr-loading,.pnr-muted{color:var(--pnr-muted)}.pnr-small{font-size:.875em}.pnr-notice{padding:12px 16px;border-radius:var(--pnr-radius);background:var(--pnr-soft);margin:0}.pnr-alert:empty{display:none}.pnr-alert{margin:0 0 16px;padding:12px 16px;border-radius:var(--pnr-radius);background:#fdecec;color:#8a1c1c;border:1px solid #f3c2c2}.pnr-progress{display:flex;gap:4px;list-style:none;margin:0 0 16px;padding:0;counter-reset:none}.pnr-progress li{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:.75em;color:var(--pnr-muted);text-align:center;margin:0}.pnr-progress__num{width:26px;height:26px;line-height:24px;border-radius:50%;border:1px solid var(--pnr-line);font-weight:600}.pnr-progress li.is-done .pnr-progress__num{background:var(--pnr-soft);border-color:var(--pnr-primary);color:var(--pnr-primary)}.pnr-progress li.is-current{color:var(--pnr-text);font-weight:600}.pnr-progress li.is-current .pnr-progress__num{background:var(--pnr-primary);border-color:var(--pnr-primary);color:#fff}.pnr-summary{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}.pnr-summary:empty{display:none}.pnr-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--pnr-line);background:var(--pnr-soft);color:var(--pnr-text);font:inherit;font-size:.875em;cursor:pointer}.pnr-chip__edit{opacity:.6}.pnr-step-title{font-size:1.25em;margin:0 0 16px;outline:none;color:var(--pnr-text)}.pnr-link{margin-top:16px;padding:8px 0;border:0;background:none;color:var(--pnr-primary);font:inherit;text-decoration:underline;cursor:pointer}.pnr-booking button:focus-visible,.pnr-booking input:focus-visible,.pnr-booking textarea:focus-visible{outline:2px solid var(--pnr-primary);outline-offset:2px}.pnr-spaces{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.pnr-space{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:18px;text-align:left;border:1px solid var(--pnr-line);border-radius:var(--pnr-radius);background:var(--pnr-bg);color:var(--pnr-text);font:inherit;cursor:pointer;transition:border-color 0.15s,box-shadow 0.15s}.pnr-space:hover,.pnr-space.is-selected{border-color:var(--pnr-primary);box-shadow:0 0 0 1px var(--pnr-primary)}.pnr-space__name{font-size:1.125em;font-weight:600}.pnr-space__desc{color:var(--pnr-muted);font-size:.9em}.pnr-space__badge{margin-top:4px;font-size:.75em;padding:2px 8px;border-radius:999px;background:var(--pnr-soft);color:var(--pnr-primary)}.pnr-cal{max-width:440px}.pnr-cal__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.pnr-cal__month{font-weight:600;text-transform:capitalize}.pnr-cal__nav{width:40px;height:40px;border-radius:50%;border:1px solid var(--pnr-line);background:var(--pnr-bg);color:var(--pnr-text);font-size:1.4em;line-height:1;cursor:pointer}.pnr-cal__nav:disabled{opacity:.3;cursor:default}.pnr-cal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.pnr-cal__dow{text-align:center;font-size:.75em;color:var(--pnr-muted);padding:4px 0;text-transform:capitalize}.pnr-cal__day{aspect-ratio:1;min-height:40px;border-radius:8px;border:1px solid #fff0;background:#fff0;color:var(--pnr-text);font:inherit;cursor:pointer;padding:0}.pnr-cal__day.is-available{background:var(--pnr-soft);border-color:color-mix(in srgb,var(--pnr-primary) 35%,transparent);font-weight:600}.pnr-cal__day.is-available:hover{border-color:var(--pnr-primary)}.pnr-cal__day.is-selected{background:var(--pnr-primary);color:#fff}.pnr-cal__day:disabled{cursor:default;color:color-mix(in srgb,var(--pnr-text) 30%,transparent);background:color-mix(in srgb,var(--pnr-text) 4%,transparent)}.pnr-cal__day.is-full:disabled{text-decoration:line-through}.pnr-cal__day.is-past:disabled,.pnr-cal__day.is-loading:disabled{background:#fff0}.pnr-cal__day.is-today{box-shadow:inset 0 -2px 0 var(--pnr-primary)}.pnr-cal__legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px;font-size:.8em;color:var(--pnr-muted)}.pnr-cal__legend span::before{content:"";display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}.pnr-cal__legend .is-available::before{background:var(--pnr-soft);border:1px solid var(--pnr-primary)}.pnr-cal__legend .is-full::before,.pnr-cal__legend .is-closed::before{background:color-mix(in srgb,var(--pnr-text) 8%,transparent)}.pnr-cal__legend .is-full{text-decoration:line-through}.pnr-slots,.pnr-parties{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px}.pnr-parties{grid-template-columns:repeat(auto-fill,minmax(56px,1fr))}.pnr-slot,.pnr-party{min-height:48px;border-radius:8px;border:1px solid var(--pnr-line);background:var(--pnr-bg);color:var(--pnr-text);font:inherit;font-weight:600;cursor:pointer}.pnr-slot:hover,.pnr-party:hover{border-color:var(--pnr-primary)}.pnr-slot.is-selected,.pnr-party.is-selected{background:var(--pnr-primary);border-color:var(--pnr-primary);color:#fff}.pnr-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.pnr-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.pnr-field label{font-weight:600;font-size:.9em}.pnr-optional{font-weight:400;color:var(--pnr-muted)}.pnr-field input,.pnr-field textarea{width:100%;padding:12px;font:inherit;font-size:16px;color:var(--pnr-text);background:var(--pnr-bg);border:1px solid var(--pnr-line);border-radius:8px}.pnr-field.has-error input,.pnr-field.has-error textarea,.pnr-consent.has-error{border-color:#c62828}.pnr-hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.pnr-consent{display:flex;gap:10px;align-items:flex-start;margin:4px 0 18px;padding:10px;border:1px solid #fff0;border-radius:8px;font-size:.875em}.pnr-consent input{margin-top:3px;width:18px;height:18px;flex:0 0 auto;accent-color:var(--pnr-primary)}.pnr-consent a{color:var(--pnr-primary)}.pnr-submit{width:100%;min-height:52px;border:0;border-radius:8px;background:var(--pnr-primary);color:#fff;font:inherit;font-weight:600;font-size:1.05em;cursor:pointer}.pnr-submit:disabled{opacity:.7;cursor:wait}.pnr-done{text-align:center}.pnr-done__icon{width:64px;height:64px;margin:0 auto 12px;border-radius:50%;line-height:64px;font-size:30px;background:var(--pnr-soft);color:var(--pnr-primary)}.pnr-done__recap{padding:14px;border-radius:var(--pnr-radius);background:var(--pnr-soft)}.pnr-cancel-page{margin:0;padding:32px 16px;background:#f4f1ee;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif}.pnr-cancel-page .pnr-booking{font-family:var(--pnr-font,inherit)}.pnr-cancel-logo{text-align:center;margin-bottom:20px}.pnr-cancel-logo img{max-width:180px;max-height:90px}.pnr-cancel-actions{display:flex;flex-direction:column;gap:8px;margin-top:16px}.pnr-cancel-actions .pnr-submit.is-danger{background:#a12626}@media (max-width:520px){.pnr-card{padding:16px;border-radius:0;border-left:0;border-right:0}.pnr-grid{grid-template-columns:1fr}.pnr-progress__label{display:none}.pnr-progress li.is-current .pnr-progress__label{display:block}.pnr-cal__grid{gap:2px}}