:root{--bg:#fbfaf7;--surface:#fff;--ink:#1f2328;--muted:#5f6670;--line:#e4e1da;--accent:#2f6b4f;--accent-ink:#fff;--accent-soft:#e6f0ea;--danger:#a23b2c;--radius:10px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#15171a;--surface:#1d2024;--ink:#eceae6;--muted:#a3a8ae;--line:#33373d;--accent:#7cc4a0;--accent-ink:#10221a;--accent-soft:#1f3329;--danger:#f08c7c}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:17px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}main{max-width:720px;margin:0 auto;padding:16px 16px 48px}.site-header{justify-content:space-between;align-items:center;max-width:720px;margin:0 auto;padding:16px;display:flex}.brand{color:var(--accent);font-size:20px;font-weight:700;text-decoration:none}.site-header nav a{color:var(--ink)}.site-footer{text-align:center;color:var(--muted);padding:24px 16px;font-size:14px}a{color:var(--accent)}h1{margin:8px 0 4px;font-size:28px;line-height:1.2}h2{margin:28px 0 8px;font-size:20px}.muted{color:var(--muted)}.small{font-size:14px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:12px 0;padding:16px}.slot{gap:8px;display:grid}.slot-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.badge{background:var(--accent-soft);color:var(--accent);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:13px}.badge.full{background:var(--line);color:var(--muted)}.names{color:var(--muted);font-size:15px}form{gap:12px;display:grid}label{gap:4px;font-size:15px;font-weight:600;display:grid}label .hint{color:var(--muted);font-size:14px;font-weight:400}input,textarea,select{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;width:100%;padding:10px 12px}input:focus,textarea:focus,select:focus{outline:2px solid var(--accent);outline-offset:1px}.check{align-items:flex-start;gap:10px;font-weight:400;display:flex}.check input{width:auto;margin-top:4px}.row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:520px){.row{grid-template-columns:1fr}}button,.button{font:inherit;cursor:pointer;text-align:center;background:var(--accent);color:var(--accent-ink);border:0;border-radius:8px;min-height:44px;padding:12px 16px;font-weight:600;text-decoration:none}button.secondary,.button.secondary{color:var(--accent);border:1px solid var(--accent);background:0 0}button.danger{color:var(--danger);border:1px solid var(--danger);background:0 0}button:disabled{opacity:.6;cursor:default}.error{color:var(--danger);font-size:14px;font-weight:400}.notice{background:var(--accent-soft);border-radius:var(--radius);padding:12px 16px}table{border-collapse:collapse;width:100%;font-size:15px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:8px 6px}th{color:var(--muted);font-weight:600}details summary{cursor:pointer;color:var(--accent);align-items:center;min-height:44px;font-weight:600;display:flex}code{background:var(--line);word-break:break-all;border-radius:4px;padding:1px 6px;font-size:14px}fieldset{border:1px solid var(--line);border-radius:var(--radius);gap:12px;display:grid}legend{padding:0 6px;font-weight:700}.menu{gap:8px;margin:0;padding:0;list-style:none;display:grid}.menu-item{border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.menu-name{font-weight:600}.stepper{align-items:center;gap:10px;display:flex}.stepper button{min-width:44px;padding:8px 0;font-size:20px;line-height:1}.stepper span{text-align:center;font-variant-numeric:tabular-nums;min-width:1.5em;font-weight:600}.cart-total{border-top:2px solid var(--ink);justify-content:space-between;align-items:baseline;padding-top:10px;font-size:18px;display:flex}.cart-total strong{font-variant-numeric:tabular-nums}.pay-box{border:2px solid var(--accent);border-radius:var(--radius);gap:10px;padding:16px;display:grid}.status{white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:13px}.status.unpaid{color:#7a4b00;background:#fff1d6}.status.paid{background:var(--accent-soft);color:var(--accent)}.status.not_required,.status.refunded{background:var(--line);color:var(--muted)}@media (prefers-color-scheme:dark){.status.unpaid{color:#f5c56b;background:#3a2c10}}.num{text-align:right;font-variant-numeric:tabular-nums}.site-header nav{align-items:center;gap:16px;display:flex}.site-header nav form{display:inline}button.link{min-height:0;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0;font-weight:400;text-decoration:underline}.role-tag{vertical-align:middle;background:var(--accent-soft);color:var(--accent);border-radius:999px;margin-left:6px;padding:2px 8px;font-size:12px;font-weight:600}.tabs{border-bottom:1px solid var(--line);gap:4px;margin:16px 0 8px;display:flex;overflow-x:auto}.tabs a{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:600;text-decoration:none}.tabs a[aria-current=page]{color:var(--accent);border-bottom-color:var(--accent)}.choices{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:520px){.choices{grid-template-columns:1fr}}.choice{color:inherit;text-decoration:none;display:block}.choice:hover{border-color:var(--accent)}.choice strong{margin-bottom:4px;font-size:18px;display:block}.steps{color:var(--muted);margin:0 0 8px;font-size:14px}.progress{background:var(--line);border-radius:999px;height:8px;overflow:hidden}.progress>span{background:var(--accent);height:100%;display:block}.report header h1{margin-bottom:0}.report header p{margin:2px 0}.report h2{margin:24px 0 6px;font-size:18px}.report table{font-size:14px}.report section{break-inside:auto}.report tr{break-inside:avoid}@media print{:root{--bg:#fff;--surface:#fff;--ink:#000;--muted:#444;--line:#bbb;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:#fff;font-size:12pt}.site-header,.site-footer,.no-print{display:none!important}main{max-width:none;padding:0}.report h2{break-after:avoid}.report .check-in{break-before:page}.print-only{display:block!important}a{color:inherit;text-decoration:none}}.edit-slot{border-bottom:1px solid var(--line);grid-template-columns:1fr 140px auto;align-items:end;gap:12px;padding-bottom:8px;display:grid}@media (max-width:520px){.edit-slot{grid-template-columns:1fr 1fr}}.faq details.card{margin:8px 0;padding:4px 16px}.faq details[open]{padding-bottom:12px}.faq summary{color:var(--ink)}.site-footer a{color:inherit}.history{margin:8px 0;padding:0;list-style:none}.history li{border-bottom:1px solid var(--line);grid-template-columns:150px 1fr;gap:12px;padding:8px 0;font-size:15px;display:grid}@media (max-width:520px){.history li{grid-template-columns:1fr;gap:2px}}.change-policy .changes-until{display:none}.change-policy:has(input[name=allowChanges][value=yes]:checked) .changes-until{display:grid}.contact-note{border-left:3px solid var(--accent)}.stats{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (max-width:520px){.stats{grid-template-columns:1fr}}.stats .card{gap:2px;margin:0;display:grid}.stats strong{color:var(--accent);font-size:28px}.also-list{gap:8px;margin:8px 0;padding:0;list-style:none;display:grid}.also-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.also-list form{display:block}.rsvp-count{background:var(--accent-soft,#e7f1ea);border:1px solid var(--accent,#2f6b4f);border-radius:12px;margin:12px 0;padding:12px 16px;font-size:18px}.rsvp-count .seats-left{font-weight:700}.rsvp{gap:18px;display:grid}.rsvp fieldset{border:0;gap:10px;margin:0;padding:0;display:grid}.rsvp legend{margin-bottom:8px;padding:0;font-size:18px;font-weight:700}.choice-row{flex-wrap:wrap;gap:10px;display:flex}.choice-pill{cursor:pointer;border:2px solid var(--line);border-radius:999px;align-items:center;gap:8px;min-height:48px;padding:12px 18px;font-weight:600;display:flex}.choice-pill input{width:auto;margin:0}.choice-pill.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.choice-pill.disabled{opacity:.5;cursor:default}.stepped{gap:16px;display:grid}.question{margin:4px 0 0;font-weight:600}.ask{gap:10px;display:grid}.ask .when-yes,.ask .when-link,.ask .when-pay{display:none}.ask:has(input[data-reveal=yes]:checked) .when-yes{display:grid}:is(.pay:has(input[name=paymentMode][value=link]:checked) .when-link,.pay:has(input[name=paymentMode][value=both]:checked) .when-link),:is(.pay:has(input[name=paymentMode][value=link]:checked) .when-pay,.pay:has(input[name=paymentMode][value=both]:checked) .when-pay,.pay:has(input[name=paymentMode][value=at_event]:checked) .when-pay){display:grid}.reminder-times{gap:10px}.edit-slot .remove-warning{grid-column:1/-1;margin:0;display:none}.edit-slot:has(.slot-remove input:checked) .remove-warning{display:block}.admin-banner{color:#5c3d07;background:#fdf3e1;border-color:#b7791f}.button.danger{color:var(--danger);border:1px solid var(--danger);background:0 0}.danger-link{color:var(--danger)}.danger-card{border-color:var(--danger)}.print-only{display:none}.check-in .box-col{text-align:center;width:44px}.tick-box{border:1.5px solid var(--ink);vertical-align:middle;border-radius:3px;width:16px;height:16px;display:inline-block}.check-in .blank-row td{height:30px}.cancelled-notice{border-color:var(--danger);background:0 0}.badge.cancelled{color:var(--danger);border:1px solid var(--danger);background:0 0;margin-left:6px}
