.food-frame{position:relative;display:block;width:64px;height:64px;overflow:hidden;border-radius:12px;background:#f3ede5;flex-shrink:0}.choice .food-frame>.food{position:absolute;inset:0;width:100%;height:100%;border-radius:0;background:none;object-fit:fill}.food-frame>.food[src="/assets/1-173-0.png"]{height:43.75%;width:80.29%;left:10.23%;top:27.6%}.food-frame>.food[src="/assets/1-173-1.png"]{height:50.56%;width:70.69%;left:16.18%;top:25.19%}.food-frame>.food[src="/assets/1-173-2.png"]{height:59.36%;width:67.78%;left:16.39%;top:20.99%}.food-frame>.food[src="/assets/1-173-3.png"]{height:50.55%;width:72.22%;left:13.96%;top:24.13%}.food-frame>.food[src="/assets/1-173-4.png"]{height:77.81%;width:34.88%;left:38.46%;top:10.56%}.food-frame>.food[src="/assets/1-173-5.png"]{height:53.61%;width:68.8%;left:15.7%;top:22.97%}.food-frame>.food[src="/assets/1-173-6.png"]{height:55.65%;width:70.18%;left:15.78%;top:22.75%}.food-frame>.food[src="/assets/1-173-7.png"]{height:50.15%;width:70.75%;left:15.02%;top:24.32%}.food-frame>.food[src="/assets/1-173-8.png"]{height:50.6%;width:65.44%;left:18.08%;top:24.22%}.food-frame>.food[src="/assets/1-173-9.png"]{height:60.82%;width:62.81%;left:20.14%;top:19.44%}.food-frame>.food[src="/assets/1-173-10.png"]{height:66.76%;width:68.81%;left:15.42%;top:17.18%}.food-frame>.food[src="/assets/1-173-11.png"]{height:50%;width:77.02%;left:12.31%;top:25.47%}.food-frame>.food[src="/assets/1-173-12.png"]{height:57.76%;width:72.88%;left:13.72%;top:21.07%}.food-frame>.food[src="/assets/1-173-13.png"]{height:42.91%;width:67.43%;left:17.49%;top:28.4%}.food-frame>.food[src="/assets/1-173-14.png"]{height:60.22%;width:67.46%;left:16.65%;top:19.51%}.food-frame>.food[src="/assets/1-173-15.png"]{height:58.01%;width:71.96%;left:15.03%;top:21.41%}.food-frame>.food[src="/assets/1-543-0.png"]{height:89.55%;width:29.33%;left:36.18%;top:5.66%}.food-frame>.food[src="/assets/1-543-1.png"]{height:92.26%;width:42.81%;left:28.69%;top:4.42%}.food-frame>.food[src="/assets/1-543-2.png"]{height:87.01%;width:44.57%;left:28.4%;top:6.45%}.food-frame>.food[src="/assets/1-543-3.png"]{height:87.29%;width:49.72%;left:25.43%;top:5.66%}.food-frame>.food[src="/assets/1-543-4.png"]{height:85.28%;width:46.11%;left:28.03%;top:7.42%}.food-frame>.food[src="/assets/1-543-5.png"]{height:83.74%;width:44.79%;left:26.85%;top:8.65%}.food-frame>.food[src="/assets/1-543-6.png"]{height:86.44%;width:46.28%;left:28.19%;top:6.64%}.food-frame>.food[src="/assets/1-543-7.png"]{height:89.65%;width:44.54%;left:27.72%;top:5.26%}.food-frame>.food[src="/assets/1-543-8.png"]{height:88.83%;width:44.27%;left:29%;top:6.36%}.food-frame>.food[src="/assets/1-543-9.png"]{height:90.37%;width:31.95%;left:35.1%;top:5.3%}.food-frame>.food[src="/assets/4-259-0.png"]{height:71.25%;width:65.26%;left:17.99%;top:14.99%}.food-frame>.food[src="/assets/4-259-1.png"]{height:73.2%;width:66.53%;left:17.92%;top:13.75%}.guest-current{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--gold);padding:0 0 12px;margin:-16px 0 24px;color:var(--ink)}.guest-current span{font-size:12px;letter-spacing:1px;white-space:nowrap}.guest-current strong{font-size:14px;overflow-wrap:anywhere;text-align:right}.edit-notice{padding:12px;margin-bottom:24px;border:1px solid var(--gold);border-radius:8px;text-align:center;font-size:14px;line-height:22px}.edit-notice .text-button{font-size:13px;padding-bottom:0}.edit-reservation{margin-top:20px;width:100%}@font-face{font-family:EB Garamond;src:url(/assets/eb-garamond.woff2) format("woff2");font-weight:400 800;font-display:swap}@font-face{font-family:Manrope;src:url(/assets/manrope.woff2) format("woff2");font-weight:200 800;font-display:swap}:root{--cream: #fff8f1;--green: #18331f;--ink: #002818;--gold: #be9b53;--muted: #414943;--line: #c1c8c2;font-family:Manrope,sans-serif;color:#1e1b17;background:var(--cream);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}a{color:inherit}button{border:0}p,h1,h2{margin:0}h1,h2{font-family:EB Garamond,Georgia,serif;color:var(--ink);font-weight:500}h1{font-size:32px;line-height:40px}h2{font-size:28px;line-height:36px}.app-shell{min-height:100dvh;display:flex;flex-direction:column}.topbar{height:65px;flex-shrink:0;border-bottom:1px solid #c1c8c280;display:flex;justify-content:center;align-items:center;background:var(--cream)}.topbar a{text-decoration:none;font:500 20px/32px EB Garamond,Georgia,serif;letter-spacing:2.4px;color:var(--ink)}.hero{height:838px;position:relative;display:flex;align-items:center;flex-direction:column;padding:151.5px 20px 0;isolation:isolate;flex-shrink:0}.hero:before{content:"";position:absolute;inset:0;background:url(/assets/cover-0.png) 0 0/512px 279px repeat;opacity:.2;z-index:-1}.club-logo{width:242px;height:242px;object-fit:cover}.edition,.eyebrow{font-size:14px;line-height:20px;letter-spacing:1.4px;font-weight:600;color:var(--muted)}.gold-rule{width:128px;height:1px;background:linear-gradient(90deg,transparent,#a56b464d,transparent);margin-top:16px}.hero p{font-size:18px;line-height:28px;text-align:center;color:var(--muted);margin-top:32px}.primary{background:var(--green);color:#fff;min-height:52px;padding:16px 28px;border-radius:2px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;line-height:20px;font-weight:600;letter-spacing:1.4px}.invitation{margin-top:116px}.event-info{padding:64px 20px;display:flex;justify-content:center;background:linear-gradient(#cfc9c3,#f9f3eb 10%);border-top:1px solid #c1c8c233}.event-info>div{width:116.67px;display:flex;align-items:center;gap:12px;flex-direction:column;padding:16px 4px;font-size:16px;line-height:24px}.event-info>div+div{border-left:1px solid var(--ink)}.progress{height:4px;background:#e8e1da;flex-shrink:0}.progress span{display:block;height:5px;position:relative;top:-1px;background:var(--gold);transition:width .2s}.step-content{width:100%;max-width:430px;padding:48px 20px;margin:0 auto;flex:1;min-height:712px}.step-heading{text-align:center;margin-bottom:48px}.step-heading h1{margin-top:8px}.step-heading>p:last-child{font-size:16px;line-height:24px;margin-top:16px;color:var(--muted)}.invitation-step .step-heading{margin-bottom:26px}.invitation-step .step-heading h1{margin-top:6px}.invitation-step .step-heading>p:last-child{margin-top:14px}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.choice{position:relative;border:1px solid var(--line);border-radius:8px;background:#fff;min-width:0;min-height:130px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px 8px;color:#1e1b17;transition:background .15s,border-color .15s}.choice span{font-size:14px;line-height:20px;letter-spacing:1.4px;font-weight:600}.choice:hover{border-color:var(--green)}.choice.selected{background:#d4e8d9;border:2px solid var(--green);padding:15px 7px}.choice .food{width:64px;height:64px;object-fit:cover;border-radius:12px;background:#f2ece4}.choice .person{width:59px;height:61px;object-fit:contain}.choice .person.no{object-fit:contain;padding:10px 8px}.choice .check{position:absolute;width:20px;height:20px;right:10px;top:10px}.check[hidden]{display:none}.ingredient span{letter-spacing:1.1px}.form-card{padding:33px;background:#fff;border:1px solid #e8e1da;border-radius:8px;box-shadow:0 4px 10px #c7a35a0d}.form-card label,label{display:block;font-size:12px;line-height:16px;letter-spacing:1.2px;color:#615e57}.form-card input{margin-top:16px;margin-bottom:32px}input,textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:14px;background:#f7f7f7;font-size:15px;line-height:20px;color:#1e1b17}input{height:50px}input::placeholder,textarea::placeholder{color:#6b7280}.attendance-label{margin:8px 0 16px}.attendance{background:#f7f7f7;gap:0;min-height:128px}.attendance span{letter-spacing:1px;font-size:13px;white-space:nowrap}.compact{min-height:50px;font-size:14px;letter-spacing:1.4px;font-weight:600}.compact.selected{padding:15px 7px}.notes-label{margin-top:48px;margin-bottom:12px;font-size:14px;color:#1e1b17;line-height:20px;letter-spacing:1px}textarea{height:82px;resize:vertical;background:#fff}.bottom-nav{background:var(--green);padding:24px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:92px}.bottom-nav button{background:transparent;color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:12px;font-size:14px;line-height:20px;font-weight:600;letter-spacing:1.4px}.bottom-nav .next{background:#7a5d16;color:#fff8e8}.coffee-question{border-top:1px solid #e8e1da;margin-top:48px;padding-top:32px}.coffee-question h2{text-align:center;margin-bottom:24px}.hint{font-size:13px;line-height:22px;color:#615e57;margin-top:16px}.error{border:1px solid #c58676;background:#fff0eb;padding:14px;margin-top:24px;color:#8b3022;font-size:14px;line-height:22px;border-radius:6px}.guest-tabs{display:flex;gap:8px;margin:-20px 0 24px}.guest-tabs button{flex:1;border:1px solid var(--line);background:#fff;padding:10px;border-radius:6px;color:var(--ink)}.guest-tabs .active{background:var(--green);color:#fff}.text-button{background:none;color:var(--ink);text-decoration:underline;padding:12px}.confirmation{max-width:430px;width:100%;margin:auto;padding:48px 20px;display:flex;align-items:center;flex-direction:column}.confirmation h1{text-align:center;font-size:40px;line-height:48px;letter-spacing:-.4px;margin:24px 0 48px}.member-card{width:100%;padding:32px 32px 20px;background:#153e2c;border:1px solid #a56b464d;border-radius:8px;color:#c7a35a;box-shadow:0 4px 20px #c7a35a1a;margin-bottom:48px}.member-card>div{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.member-card h2{font-size:32px;line-height:40px;letter-spacing:3.2px;color:#c7a35a;max-width:252px}.member-card .member-bottom{margin-top:20px;align-items:flex-end}.member-card small{font-size:12px;line-height:16px;letter-spacing:.6px;opacity:.7}.member-card p{font-size:18px;line-height:28px;margin-top:4px;overflow-wrap:anywhere}.member-card strong{font-size:14px;letter-spacing:1.4px;white-space:nowrap;font-weight:600;line-height:20px}.summary{padding:32px;background:#fff;border:1px solid #e7e2d8;border-radius:4px;width:100%;box-shadow:0 4px 10px #c7a35a1a;margin-bottom:64px}.summary h2{font-size:24px;line-height:32px;padding-bottom:16px;border-bottom:1px solid #c7a35a33}.summary-row{display:flex;gap:16px;padding:24px 0;border-bottom:1px solid #c7a35a33}.summary-row:last-child{border:0;padding-bottom:0}.summary-row>img{width:22px;height:24px;object-fit:contain}.summary-row>div{min-width:0}.summary label{font-size:14px;letter-spacing:1.4px;line-height:20px}.summary p{font-size:16px;line-height:24px;margin-top:4px;overflow-wrap:anywhere}.summary .hint{font-size:13px}.calendar{width:100%;background:var(--ink);border-radius:4px}.home-link{font-size:13px;margin-top:24px;color:var(--muted)}@media(min-width:700px){.hero{height:calc(100dvh - 230px);min-height:700px;padding-top:80px}.hero:before{background-size:cover;background-position:center}.invitation{margin-top:70px}.event-info{padding:32px 20px}.event-info>div{width:180px}.step-content{max-width:620px;padding:56px 32px;min-height:calc(100dvh - 161px)}.step-heading{max-width:440px;margin-left:auto;margin-right:auto}.ingredients{grid-template-columns:repeat(4,minmax(0,1fr))}.form-card{max-width:440px;margin:auto}.bottom-nav{justify-content:center;gap:200px}.confirmation{max-width:510px}.confirmation h1{max-width:350px}.member-card h2{max-width:280px}.member-card{padding:32px}.choice span,.attendance span{font-size:14px}}@media(max-width:360px){.step-content{padding-left:14px;padding-right:14px}.form-card{padding:24px}.bottom-nav button{padding:12px 16px}h1{font-size:29px}.choice span{font-size:12px;letter-spacing:.6px}.notes-label,.calendar{font-size:12px}.member-card{padding:24px}.member-card strong{font-size:11px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.admin-page{max-width:1000px;margin:auto;padding:56px 24px 80px}.admin-page>h1{font-size:48px;line-height:56px;margin:12px 0}.admin-intro{color:var(--muted);line-height:26px;max-width:570px}.admin-login{margin:48px 0!important;max-width:460px}.admin-login label{margin-top:24px}.admin-login button{width:100%}.admin-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;margin:20px 0}.stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #e8e1da;background:#fff;border-radius:8px;margin:24px 0 48px}.stats>div{padding:24px;display:flex;flex-direction:column;gap:8px;text-align:center}.stats>div+div{border-left:1px solid #e8e1da}.stats strong{font:48px/1 EB Garamond,serif;color:var(--ink)}.stats span{font-size:13px}.admin-tabs{margin:0 0 24px}.shopping-card{padding:28px;background:#fff;border:1px solid #e8e1da;border-radius:8px;margin:20px 0}.shopping-card h2{margin-bottom:12px}.shopping-card p{line-height:26px}.estimate{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:20px}.estimate input{width:100px}.estimate strong{font-size:24px;color:var(--ink)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;margin-top:20px;text-align:left}th,td{padding:14px 4px;border-bottom:1px solid #e8e1da}th{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#615e57}th:last-child,td:last-child{text-align:right}.count-row{display:flex;justify-content:space-between;border-bottom:1px solid #e8e1da;padding:12px 0}.reservation-title{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.status{border-radius:20px;background:#d4e8d9;color:var(--ink);font-size:12px;padding:6px 12px;align-self:flex-start}.guest-summary{padding-top:16px;margin-top:16px;border-top:1px solid #e8e1da;overflow-wrap:anywhere}.guest-summary h3{font-size:16px;color:var(--ink)}.guest-summary p{font-size:14px;margin:6px 0}.diet-note{padding:12px;background:#fff8e8;border-left:3px solid var(--gold);white-space:pre-wrap}@media(max-width:500px){.stats>div{padding:20px 8px}.admin-page>h1{font-size:40px}.shopping-card{padding:20px}.admin-actions{justify-content:flex-start}.admin-actions button{font-size:12px}}.invitation-step .step-heading>p:last-child{max-width:300px;margin-left:auto;margin-right:auto}.confirmation h1{font-weight:400}.choice.selected:not(.compact):not(:has(.check)):after{content:"";position:absolute;top:10px;right:10px;width:20px;height:20px;background:url(/assets/1-73-2.svg) center/contain no-repeat}
