:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html,body{min-height:100%;margin:0;overflow-x:clip}body{color:#2e201f;background:radial-gradient(circle at 8% 12%,#dfff0033 0 8rem,#0000 8.1rem),radial-gradient(circle at 92% 88%,#6e28ff1f 0 11rem,#0000 11.1rem),#fffaf7}.app-shell{width:100%;min-height:100svh;padding:1px 0;display:flow-root}[data-page-stage]{will-change:transform, opacity}button{font:inherit}.invitation-gate,.declined-card{background:#ffefef;border:3px solid #2e201f;border-radius:2rem;width:min(100% - 2rem,42rem);margin:clamp(2rem,8vh,6rem) auto;padding:clamp(1.5rem,5vw,3.5rem);position:relative;overflow:hidden;box-shadow:10px 10px #2e201f}.invitation-gate h1,.declined-card h2{letter-spacing:-.07em;max-width:9ch;margin:1.5rem 0 1rem;font-size:clamp(3rem,10vw,6.5rem);line-height:.9}.invitation-gate h1{max-width:100%;font-size:clamp(3rem,7.5vw,5rem)}.title-line{text-wrap:balance;width:fit-content;max-width:100%;display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.declined-card h2{max-width:12ch;font-size:clamp(2.5rem,7vw,4.75rem)}.invitation-gate p,.declined-card p{max-width:28rem;margin:0;font-size:clamp(1rem,3vw,1.2rem);line-height:1.55}.sticker-label{letter-spacing:.12em;background:#dfff00;border:2px solid #2e201f;border-radius:999px;padding:.55rem .85rem;font-size:.75rem;font-weight:800;display:inline-block;transform:rotate(-2deg);box-shadow:3px 3px #2e201f}.food-sticker{aspect-ratio:1;background:#dfff00;border:3px solid #2e201f;border-radius:50%;place-items:center;width:clamp(5rem,16vw,7.5rem);font-size:clamp(2.5rem,8vw,4rem);display:grid;position:absolute;top:1.5rem;right:clamp(1rem,5vw,3.5rem);transform:rotate(8deg);box-shadow:6px 6px #2e201f}.invite-actions{align-items:center;gap:1rem;min-height:9rem;margin-top:1.5rem;display:flex;position:relative}.button{color:#2e201f;cursor:pointer;border:2px solid #2e201f;border-radius:999px;min-width:8rem;min-height:44px;padding:.8rem 1.15rem;font-weight:800;box-shadow:4px 4px #2e201f}.button-primary{background:#dfff00}.button-secondary{background:#fffaf7}.button:focus-visible{outline-offset:4px;outline:4px solid #6e28ff}.button:active{box-shadow:2px 2px #2e201f}.decline-button{will-change:transform;place-items:center;display:grid;position:relative}.decline-button>span{grid-area:1/1}.booking-card{background:#ffefef;border:3px solid #2e201f;border-radius:2rem;width:min(100% - 2rem,58rem);margin:clamp(2rem,6vh,5rem) auto;padding:clamp(1.25rem,4vw,3rem);box-shadow:10px 10px #2e201f}.success-card{background:radial-gradient(circle at 90% 12%,#dfff00 0 4.5rem,#0000 4.6rem),#ffefef;border:3px solid #2e201f;border-radius:2rem;width:min(100% - 2rem,48rem);margin:clamp(2rem,6vh,5rem) auto;padding:clamp(1.5rem,5vw,3.5rem);position:relative;overflow:hidden;box-shadow:10px 10px #2e201f}.success-card h1{letter-spacing:-.07em;max-width:9ch;margin:1.25rem 0 .75rem;font-size:clamp(3rem,9vw,6rem);line-height:.9}.success-card__intro{max-width:28rem;margin:0 0 2rem;font-size:clamp(1rem,3vw,1.2rem);line-height:1.5}.calendar-handoff-shell{place-items:center;min-height:100svh;padding-block:1rem;display:grid}.calendar-handoff{background:#ffefef;border:3px solid #2e201f;border-radius:2rem;width:min(100% - 2rem,42rem);margin:clamp(1rem,5vh,4rem) auto;padding:clamp(1.5rem,5vw,3rem);box-shadow:10px 10px #2e201f}.calendar-handoff h1{letter-spacing:-.06em;max-width:12ch;margin:1.25rem 0 1rem;font-size:clamp(2.5rem,10vw,5rem);line-height:.92}.calendar-handoff .button{justify-content:center;align-items:center;width:fit-content;max-width:100%;scroll-margin-block:.75rem;display:inline-flex}.calendar-handoff__steps{gap:.75rem;margin:2rem 0 1rem;padding-left:1.5rem;font-weight:800;line-height:1.45;display:grid}.calendar-handoff__actions{gap:1rem;margin-top:2rem;display:grid}.calendar-handoff__download{color:#2e201f;text-underline-offset:.2em;align-items:center;width:fit-content;min-height:44px;scroll-margin-block:.75rem;font-weight:800;display:inline-flex}.calendar-handoff__download:focus-visible,.calendar-handoff__fallback-link input:focus-visible{outline-offset:4px;outline:4px solid #6e28ff}.calendar-handoff__copy-status{min-height:1.5em;margin:.75rem 0 0;font-weight:800}.calendar-handoff__fallback-link{gap:.5rem;margin-top:.75rem;font-weight:800;display:grid}.calendar-handoff__fallback-link input{color:#2e201f;background:#fffaf7;border:2px solid #2e201f;border-radius:.75rem;width:100%;min-height:44px;padding:.75rem}.success-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem;display:grid}.success-action{flex-direction:column;align-items:flex-start;gap:.65rem;min-width:0;display:flex}.success-action .button{width:100%}.export-error{color:#8f1230;margin:0;font-size:.9rem;font-weight:700;line-height:1.35}.booking-card h1{letter-spacing:-.06em;margin:1.25rem 0 2rem;font-size:clamp(2.5rem,8vw,5rem);line-height:.95}.meal-picker,.date-time-picker{border:0;margin:0 0 2rem;padding:0}.meal-picker legend,.date-time-picker legend{margin-bottom:.9rem;font-size:1.25rem;font-weight:800}.meal-grid{grid-template-columns:repeat(3,minmax(0,14rem));justify-content:center;gap:.8rem;display:grid}.meal-option{cursor:pointer;background:#fffaf7;border:2px solid #2e201f;border-radius:1rem;align-items:flex-start;gap:.55rem;min-height:5.4rem;padding:.75rem 2rem .75rem .75rem;transition:transform .14s,box-shadow .14s,background-color .14s;display:flex;position:relative}.meal-option:has(input:checked){background:#dfff00;transform:rotate(-.35deg)translateY(-2px);box-shadow:3px 3px #2e201f}.date-time-picker input:focus-visible,.date-time-picker select:focus-visible,.date-time-picker button:focus-visible{outline-offset:3px;outline:4px solid #6e28ff}.meal-option:has(input:focus-visible){outline-offset:3px;outline:4px solid #6e28ff}.meal-option input{accent-color:#6e28ff;margin-top:.3rem}.meal-option strong,.meal-option small{display:block}.meal-option small{margin-top:.2rem;font-size:.78rem;line-height:1.25}.meal-emoji{font-size:1.35rem}.meal-check{opacity:0;background:#ff8fbd;border:2px solid #2e201f;border-radius:50%;place-items:center;width:1.35rem;height:1.35rem;font-size:.75rem;font-weight:900;transition:opacity .14s,transform .14s;display:grid;position:absolute;top:.55rem;right:.55rem;transform:scale(.65)rotate(-10deg)}.meal-option:has(input:checked) .meal-check{opacity:1;transform:scale(1)rotate(0)}.date-time-picker{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:1rem;display:grid}.date-time-picker legend{grid-column:1/-1;width:100%}.date-time-card{grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:1rem;display:grid}.date-control-card,.time-control-panel{border:2px solid #2e201f;border-radius:1rem;box-shadow:4px 4px #2e201f}.date-control-card{background:#bfa9ff;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.7rem;padding:.9rem;display:grid}.date-control-icon{background:#fffaf7;border:2px solid #2e201f;border-radius:50%;place-items:center;width:2.8rem;height:2.8rem;font-size:1.35rem;display:grid}.date-native-field,.time-select-field,.custom-time-field{gap:.4rem;min-width:0;font-weight:800;display:grid}.date-native-field{grid-column:1/-1;grid-template-columns:auto minmax(0,1fr);align-items:center}.date-native-field .date-control-icon{letter-spacing:normal;grid-row:1/span 2;font-size:1.35rem}.date-control-copy{grid-column:2;gap:.4rem;min-width:0;display:grid}.date-display-value{display:none}.date-native-field input{grid-column:2}.date-native-field span,.time-select-field span,.custom-time-field span{letter-spacing:.06em;font-size:.8rem}.date-time-picker input,.date-time-picker select,.date-time-picker button{min-height:44px;font:inherit}.date-time-picker input,.date-time-picker select{color:#2e201f;background:#fffaf7;border:2px solid #2e201f;border-radius:.75rem;width:100%;min-width:0;padding:.7rem .75rem}.date-trigger{color:#2e201f;cursor:pointer;background:#fffaf7;border:2px solid #2e201f;border-radius:.75rem;grid-column:1/-1;justify-content:space-between;align-items:center;padding:.65rem .8rem;font-weight:800;display:flex}.time-control-panel{background:#dfff00;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.8rem;padding:.9rem;display:grid}.time-control-heading,.quick-time-list{grid-column:1/-1}.time-control-heading{align-items:center;gap:.45rem;font-weight:900;display:flex}.quick-time-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;display:grid}.quick-time{color:#2e201f;cursor:pointer;background:#fffaf7;border:2px solid #2e201f;border-radius:999px;padding:.55rem .25rem;font-size:.85rem;font-weight:800;transition:transform .14s,box-shadow .14s,background-color .14s}.quick-time[aria-pressed=true]{background:#ff8fbd;transform:translateY(-2px);box-shadow:3px 3px #2e201f}.custom-time-field{grid-column:1/-1}.other-time-trigger{display:none}.other-time-controls{display:contents}.time-select{cursor:pointer}.field-error{color:#8f1230;grid-column:1/-1;width:100%;margin:-.35rem 0 0;font-size:.9rem;font-weight:700}.booking-details{gap:.75rem;margin:0 0 2rem;display:grid}.booking-details div{border-bottom:2px solid #2e201f;grid-template-columns:6rem 1fr;padding-bottom:.75rem;display:grid}.booking-details dt{font-weight:800}.booking-details dd{margin:0}.booking-actions{flex-wrap:wrap;gap:1rem;display:flex}.button:disabled{cursor:not-allowed;opacity:.5}.decline-copy-sizer{visibility:hidden}@media (max-width:34rem){.invitation-gate,.declined-card,.booking-card,.success-card{border-radius:1.4rem;width:calc(100% - 1.5rem);margin-block:1rem 1.5rem;box-shadow:6px 6px #2e201f}.invitation-gate h1{max-width:100%;font-size:clamp(2.1rem,11vw,3.6rem)}.invitation-gate .food-sticker{width:4.25rem;font-size:2.1rem;top:1rem;right:1rem}.meal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.meal-option{gap:.4rem;min-height:4.875rem;padding:.65rem 1.7rem .65rem .65rem}.meal-option:last-child{grid-column:1/-1}.meal-option input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.meal-option small{-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.date-time-picker{display:block}.date-time-card{background:#bfa9ff;border:2px solid #2e201f;border-radius:1rem;grid-template-columns:1fr;gap:0;display:grid;overflow:hidden;box-shadow:4px 4px #2e201f}.date-control-card,.time-control-panel{box-shadow:none;border:0;border-radius:0}.date-control-card{padding:.75rem}.date-trigger{display:none}.date-native-field{position:relative}.date-control-copy{gap:.25rem;display:grid}.date-display-value{background:#fffaf7;border:2px solid #2e201f;border-radius:.75rem;padding:.7rem .75rem;display:block}.date-native-field input[type=date]{opacity:0;cursor:pointer;grid-column:1/-1;min-height:44px;scroll-margin-block:.5rem;position:absolute;inset:0}.date-native-field:has(input:focus-visible) .date-display-value{outline-offset:3px;outline:4px solid #6e28ff}.time-control-panel{border-top:2px solid #2e201f;grid-template-columns:1fr;padding:.75rem}.time-select-field,.custom-time-field{grid-column:1}.other-time-trigger{color:#2e201f;cursor:pointer;background:#fffaf7;border:2px solid #2e201f;border-radius:.75rem;grid-column:1/-1;justify-content:space-between;align-items:center;min-height:44px;padding:.65rem .8rem;font-weight:800;display:flex}.other-time-controls{grid-column:1/-1;gap:.75rem;display:grid}.time-select{scroll-margin-block:.5rem}.other-time-controls[data-expanded=false]{display:none}.food-sticker{margin:1.5rem 0;position:static}.invite-actions{flex-direction:column;justify-content:center;align-items:center;min-height:13rem}.success-actions{grid-template-columns:1fr}.booking-details div{grid-template-columns:4.5rem minmax(0,1fr)}.booking-details dd{overflow-wrap:anywhere}.button{max-width:100%}.calendar-handoff{box-shadow:6px 6px #2e201f}}@media (max-width:22rem){.calendar-handoff h1{max-width:100%;font-size:2.125rem}.meal-grid{grid-template-columns:1fr}.meal-option:last-child{grid-column:auto}}@media (min-width:34.01rem) and (max-width:52rem){.meal-grid{grid-template-columns:repeat(2,minmax(0,14rem))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.decline-button{will-change:auto;transform:none!important}.meal-option:has(input:checked){transform:none}[data-page-stage]{will-change:auto}.sticker-label,.food-sticker,.quick-time[aria-pressed=true],.meal-check{transform:none}.meal-option:has(input:checked) .meal-check{transform:none}}
