.shell.booking-shell{--booking-page:var(--ground);--booking-ink:var(--text);--booking-muted:var(--text-muted);--booking-line:var(--hairline);background:var(--booking-page);color:var(--booking-ink);font-family:var(--body);font-kerning:normal;padding:0;font-weight:400}.booking-shell .brandbar{background:var(--booking-page);width:100%;color:var(--booking-ink);border:0;border-bottom:1px solid var(--booking-line);flex:none;padding:0}.booking-shell .brandbar-inner{align-items:center;width:min(640px,100% - 48px);min-height:112px;margin:0 auto;padding:16px 0;display:flex}.booking-shell .restaurant-mark{object-fit:contain;object-position:left center;width:168px;height:auto;max-height:76px;display:block}.booking-shell .restaurant-wordmark{max-width:28ch;color:var(--booking-ink);font-family:var(--display);letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(1.65rem,4vw,2.25rem);font-weight:400;line-height:1.05}.booking-shell .booking-panel{--text:var(--booking-ink);--text-muted:var(--booking-muted);--hairline:var(--booking-line);--card:transparent;--field:transparent;width:min(640px,100% - 48px);color:var(--booking-ink);box-shadow:none;background:0 0;border:0;border-radius:0;flex:1;margin:0 auto;padding:46px 0 68px;display:block}.booking-shell .manage-panel{padding-top:50px}.booking-progress{color:var(--booking-muted);align-items:baseline;gap:14px;margin:0 0 42px;font-size:.95rem;line-height:1.3;display:flex}.booking-progress>span:first-child{white-space:nowrap;align-items:center;gap:14px;display:inline-flex}.booking-progress>span:first-child:after{content:"";background:color-mix(in srgb, var(--ink) 58%, transparent);width:34px;height:1px;display:block}.booking-progress .progress-label{color:var(--booking-ink);font-style:italic}.booking-shell .booking-title,.booking-shell .confirm-head,.booking-shell .manage-section-title,.booking-shell .manage-reservation-heading{color:var(--booking-ink);font-family:var(--display);letter-spacing:-.02em;font-weight:400}.booking-shell .booking-title{max-width:22ch;margin:0 0 12px;font-size:clamp(2.25rem,6vw,3.35rem);line-height:1.02}.booking-shell .booking-intro{max-width:50ch;color:var(--booking-muted);margin:0 0 32px;font-size:1.08rem;line-height:1.55}.booking-shell label{color:var(--booking-ink);font-family:var(--body);margin-bottom:8px;font-size:.94rem;font-weight:500}.booking-shell .field-required{color:var(--booking-muted);font-weight:400}.booking-shell .field-hint,.booking-shell .field-error{margin:6px 0 0;font-size:.86rem;line-height:1.45}.booking-shell .field-hint{color:var(--booking-muted)}.booking-shell .field-error{color:#8c2f22}.booking-shell input[aria-invalid=true]{border-color:#8c2f22}.booking-shell input{min-height:54px;color:var(--booking-ink);background:color-mix(in srgb, var(--booking-ink) 2.5%, var(--booking-page));border:1px solid color-mix(in srgb, var(--booking-ink) 32%, transparent);border-bottom-color:color-mix(in srgb, var(--booking-ink) 56%, transparent);box-shadow:none;font-family:var(--body);border-radius:0;padding:13px 14px;font-size:1.05rem}.booking-shell input:focus-visible{background:var(--booking-page);border-color:var(--ink);outline:2px solid var(--ink);outline-offset:3px}.booking-shell .btn{min-width:210px;min-height:52px;font-family:var(--body);letter-spacing:0;border-radius:0;margin-top:24px;padding:13px 24px;font-size:1rem;font-weight:600;line-height:1.2}.booking-shell .booking-step>.btn:not(.btn-quiet){width:auto}.booking-shell .btn-quiet{color:var(--ink);border:1px solid color-mix(in srgb, var(--booking-ink) 38%, transparent);background:0 0}.booking-shell .booking-panel .link{color:var(--booking-ink)}.booking-shell .booking-panel button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.booking-shell .times{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.booking-shell .time{min-height:54px;color:var(--booking-ink);border:1px solid color-mix(in srgb, var(--booking-ink) 36%, transparent);font-family:var(--body);background:0 0;border-radius:0;font-size:1rem;font-weight:500}.booking-shell .time:hover{border-color:var(--booking-ink)}.booking-shell .picked-line,.booking-shell .eyebrow{color:var(--booking-muted);font-family:var(--body);border:0;margin:0 0 26px;padding:0;font-size:1.05rem;font-style:italic;font-weight:400;display:block}.booking-shell .confirm-head{border:0;max-width:22ch;margin:0 0 18px;padding:0;font-size:clamp(2.35rem,6vw,3.5rem);line-height:1.02;display:block}.booking-shell .booking-manage-action,.booking-shell .manage-primary-action{justify-content:center;align-items:center;width:auto;margin:24px 0 30px;display:inline-flex}.booking-shell .manage-primary-action{margin:6px 0 0}.booking-shell .manage-reservation-heading{max-width:18ch;margin:0;font-size:clamp(2.35rem,6vw,3.6rem);line-height:1}.booking-shell .manage-reservation-heading time,.booking-shell .manage-reservation-heading span{display:block}.booking-shell .manage-reservation-heading span:last-child{color:var(--ink);margin-top:8px;font-size:.76em}.booking-shell .manage-reservation-summary{color:var(--booking-muted);margin:22px 0 0;font-size:1.12rem;line-height:1.5}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.booking-shell .manage-editor,.booking-shell .manage-cancel{border-top:1px solid var(--booking-line);margin-top:38px;padding-top:34px}.booking-shell .manage-section-title{margin:0 0 10px;font-size:1.8rem;line-height:1.1}.booking-shell .manage-actions{align-items:stretch;gap:12px;margin-top:34px;display:flex}.booking-shell .manage-actions .btn{min-width:210px;margin-top:0}.booking-shell .manage-secondary-action{width:auto;min-width:0;text-decoration:underline;-webkit-text-decoration-color:var(--booking-line);text-decoration-color:var(--booking-line);text-underline-offset:5px;background:0 0;border-color:#0000;margin-top:14px;padding-inline:0;display:block}.booking-shell .manage-time-results{margin-top:34px}.booking-shell .manage-time-results>p{margin-bottom:14px;font-weight:500}.booking-shell .manage-current-time{border-top:1px solid var(--booking-line);border-bottom:1px solid var(--booking-line);margin-top:34px;padding:24px 0 28px}.booking-shell .manage-current-time-label{color:var(--booking-ink);margin:0 0 6px;font-size:1.08rem;font-weight:600}.booking-shell .manage-current-time .muted{margin:0}.booking-shell .manage-current-time .btn{margin-bottom:0}.booking-shell .manage-current-time-note{border-left:2px solid var(--booking-line);color:var(--booking-muted);margin:30px 0 0;padding-left:16px;line-height:1.55}.booking-shell footer{width:min(640px,100% - 48px);padding:22px 0 max(26px, env(safe-area-inset-bottom));color:var(--booking-muted);border-top:1px solid var(--booking-line);text-align:left;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px 28px;margin:0 auto;font-size:.9rem;line-height:1.45;display:flex}.booking-shell .footer-links{flex-wrap:wrap;align-items:baseline;gap:8px 18px;display:flex}.booking-shell footer a,.booking-shell footer strong{color:var(--booking-ink)}@media (hover:hover){.booking-shell .btn:not(:disabled):hover,.booking-shell .time:not(:disabled):hover{transform:none}.booking-shell .btn-quiet:not(:disabled):hover{color:var(--booking-ink);background:color-mix(in srgb, var(--booking-ink) 5%, var(--booking-page));border-color:var(--booking-ink)}}@media (max-width:700px){.booking-shell .brandbar-inner{width:calc(100% - 40px);min-height:94px;padding:12px 0}.booking-shell .restaurant-mark{width:146px;max-height:66px}.booking-shell .restaurant-wordmark{font-size:1.7rem}.booking-shell .booking-panel{width:calc(100% - 40px);padding:34px 0 48px}.booking-shell .manage-panel{padding-top:38px}.booking-progress{margin-bottom:32px;font-size:.9rem}.booking-progress>span:first-child:after{width:22px}.booking-shell .booking-title{font-size:2.5rem}.booking-shell .times{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-shell .booking-step>.btn:not(.btn-quiet),.booking-shell .booking-manage-action,.booking-shell .manage-primary-action{width:100%}.booking-shell .manage-actions{flex-direction:column;gap:10px}.booking-shell .manage-actions .btn{width:100%;min-width:0}.booking-shell .manage-secondary-action{width:100%}.booking-shell footer{flex-direction:column;align-items:flex-start;width:calc(100% - 40px)}}@media (max-width:380px){.booking-progress,.booking-progress>span:first-child{gap:10px}.booking-progress>span:first-child:after{width:14px}}
