:root{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#243c37;background:#f5f5ef;font-synthesis:none;font-size:16px;line-height:1.55;--green:#224b40;--muted:#64736d;--line:#dce2d9}*{box-sizing:border-box}body{margin:0}main{max-width:1120px;margin:auto;padding:0 34px}button,input,select{font:inherit}button{cursor:pointer;transition:background .15s}button:disabled{cursor:not-allowed;opacity:.55}input,select{width:100%;padding:13px 14px;border:1px solid #c9d2ca;border-radius:9px;color:#243c37;background:#fff;min-height:50px}input:focus-visible,select:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a9c9a8;outline-offset:3px}label{display:block;font-weight:600;font-size:.92rem;margin:20px 0 8px}button{border:0;border-radius:9px;padding:12px 17px;font-weight:600}.primary{background:var(--green);color:white}.primary:hover{background:#143c30}.secondary{background:#eaf0e7;color:#244d40}.quiet{background:transparent;color:var(--green)}.topbar{display:flex;align-items:center;gap:26px;padding:27px 0;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;font-size:17px;line-height:1.15;letter-spacing:-.4px}.brand-mark{font-size:36px;letter-spacing:-3px;font-weight:750;position:relative;margin-right:8px}.brand-mark>span{font-size:23px;position:absolute;top:-7px;right:-11px;color:#9a702e}.top-note{color:var(--muted);font-size:.84rem;margin-left:auto}.topbar button{font-size:.87rem}.page-intro{padding:51px 0 31px;max-width:720px}.eyebrow{font-size:.67rem;letter-spacing:1.8px;font-weight:750}.page-intro .eyebrow{color:#7a673f}h1{font-size:clamp(2rem,4vw,3.1rem);line-height:1.13;letter-spacing:-1.7px;margin:14px 0 19px;font-weight:650}h1 span{color:#70826e}.page-intro p{font-size:1rem;color:#60716a;max-width:590px;margin:0}.layout{display:grid;grid-template-columns:1.05fr 1fr;gap:24px;align-items:start}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:27px 28px}.section-title{display:flex;gap:12px;align-items:flex-start;margin-bottom:21px}.step{display:grid;place-items:center;background:#eef2e9;color:#65745e;border-radius:50%;font-size:.68rem;font-weight:700;width:30px;height:30px;flex-shrink:0;margin-top:2px}h2{font-size:1.15rem;font-weight:650;letter-spacing:-.3px;margin:0 0 3px}.section-title p{font-size:.86rem;margin:0;color:var(--muted)}.hint{font-size:.78rem;color:var(--muted);margin:7px 0 0}.journey-card .primary{width:100%;display:flex;justify-content:space-between;margin:19px 0 12px}.privacy{font-size:.72rem;color:#6e7972;line-height:1.6}.notice{background:#f3f4e9;border:1px solid #e1e4d5;color:#64674c;padding:12px 14px;border-radius:8px;font-size:.79rem}.notice:empty{display:none}.manual{margin-top:21px;border-top:1px solid var(--line);padding-top:17px}.manual summary{cursor:pointer;font-size:.8rem;font-weight:600}.manual summary span{font-size:.64rem;font-weight:500;padding:3px 7px;border-radius:4px;background:#eef1ed;margin-left:7px}.inline{display:flex;gap:8px}.inline input{min-width:0}.inline button{white-space:nowrap;font-size:.8rem}.suggestion{background:#234c40;color:#f7f8ef;padding:27px 29px;border-radius:16px;position:relative;overflow:hidden}.suggestion:after{content:"↗";font-size:120px;line-height:1;position:absolute;right:20px;top:25px;opacity:.055;pointer-events:none}.suggestion .eyebrow{color:#c5d4b9;font-size:.62rem}.suggestion h2{margin-top:14px;font-weight:500;font-size:1.02rem}.amount{font-size:3.8rem;font-weight:600;letter-spacing:-3px;line-height:1.3;margin-top:7px}.suggestion>p{color:#d2dfd1;font-size:.83rem;margin:10px 0 0}.suggestion dl{font-size:.8rem;border-top:1px solid #ffffff26;padding-top:14px;margin:16px 0 0}.suggestion dl>div{display:flex;justify-content:space-between;gap:15px;padding:4px 0}.suggestion dt{color:#d4dfd3}.suggestion dd{font-weight:650;margin:0}.suggestion .formula{font-size:.75rem;background:#ffffff0a;border-radius:6px;padding:10px}.choice-card{margin-top:20px;padding:24px 27px}.choice-card .section-title{margin-bottom:13px}fieldset{padding:0;margin:0;border:0}.radio-row{display:flex;align-items:center;gap:11px;border:1px solid #e0e4dd;border-radius:9px;padding:12px 14px;margin:9px 0;font-size:.84rem;font-weight:500}.radio-row:has(:checked){border-color:#658875;background:#f3f7f0}.radio-row input{width:17px;height:17px;min-height:0;margin:0;accent-color:var(--green);flex-shrink:0}.radio-row:has(:disabled){opacity:.6}.choice-summary{font-size:.82rem;font-weight:650;margin:17px 0 0}#other-wrap{padding:0 12px 8px}#other-wrap label{font-size:.8rem;margin-top:13px}.reassurance{display:flex;gap:16px;padding:22px 25px;background:#ebeee2;border-radius:13px;margin-top:24px}.reassurance>span{font-size:29px;color:#7e8a61;line-height:1.3}.reassurance strong{font-size:.88rem;font-weight:650}.reassurance p{font-size:.8rem;color:#67705b;margin:5px 0 0;max-width:880px}footer{display:flex;justify-content:space-between;gap:16px;padding:26px 0 30px;color:#7c857a;font-size:.7rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.error{color:#a03b2a;font-size:.85rem}dialog{border:1px solid var(--line);border-radius:16px;width:min(760px,94vw);max-height:90vh;padding:28px;color:inherit;background:#fff}dialog::backdrop{background:#142c236b}dialog p{font-size:.85rem;color:var(--muted)}.settings-header{display:flex;justify-content:space-between;align-items:start}.settings-header h2{font-size:1.6rem;margin-top:7px}h3{font-size:1rem;margin:27px 0 10px}.settings-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:10px;align-items:end}.settings-grid label{font-size:.75rem}.settings-grid input{font-size:.87rem}.venue-row{padding:0 0 17px;border-bottom:1px solid var(--line);margin-bottom:16px}.venue-row label{font-size:.8rem;margin-top:10px}.venue-row .quiet{font-size:.75rem;padding:8px 0}.settings-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.settings-actions button{font-size:.83rem}[hidden]{display:none!important}body[data-mode="widget"] .staff-only,body[data-mode="widget"] .top-note{display:none!important}body[data-mode="widget"] main{max-width:1000px;padding:0 20px}body[data-mode="widget"] .page-intro{padding-top:25px}body[data-mode="widget"] .topbar{padding:18px 0}@media(max-width:720px){main{padding:0 18px}.topbar{gap:10px;padding:20px 0}.top-note{display:none}.topbar button{margin-left:auto;font-size:.75rem;padding:10px}.page-intro{padding-top:33px}h1{letter-spacing:-1px}.layout{grid-template-columns:1fr;gap:18px}.card,.suggestion{padding:23px 21px}.reassurance{padding:19px}.settings-grid{grid-template-columns:1fr 1fr}.settings-grid>div:first-child{grid-column:1/-1}.settings-grid label{margin-top:10px}footer{flex-direction:column;gap:5px}.amount{font-size:3.2rem}.inline{flex-wrap:wrap}.inline button{width:100%}}

.payment-review{margin-top:24px}.payment-review h2{margin-top:8px}.table-scroll{overflow-x:auto;margin:23px 0 15px}table{width:100%;border-collapse:collapse;font-size:.84rem}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line)}th{font-size:.73rem;color:var(--muted);font-weight:600}#download-review{margin-top:16px}


.food-card,.total-card{margin-top:24px}.food-amount{font-size:1.65rem;font-weight:650;color:var(--green);margin:4px 0 14px}.total-card{background:#edf2e8}.total-card h2{margin-top:8px}.total-lines{font-size:.9rem;margin:18px 0}.total-lines>div{display:flex;justify-content:space-between;gap:15px;padding:7px 0}.total-lines dd{margin:0;font-weight:650}.total-amount{font-size:2.6rem;letter-spacing:-1px;font-weight:650;border-top:1px solid var(--line);padding-top:12px}#food-other-wrap{padding:0 12px 8px}

.member-information,.gift-card{margin-top:24px}.member-information p,.gift-card p{font-size:.9rem;line-height:1.7}.member-information a{color:var(--green);text-decoration:underline}.gift-check{display:flex;align-items:flex-start;gap:13px;line-height:1.7;font-size:.88rem;font-weight:450;background:#f3f6ed;padding:17px;border-radius:9px}.gift-check input{width:19px;height:19px;min-height:0;flex-shrink:0;margin-top:4px;accent-color:var(--green)}textarea{width:100%;padding:13px 14px;font:inherit;border:1px solid #c9d2ca;border-radius:9px;color:#243c37;background:#fff;resize:vertical}.gift-card button{margin-top:18px}

.bank-card{margin-top:24px}.bank-card input{max-width:540px;display:block}

.wizard{max-width:720px;margin:0 auto}.wizard-progress{margin:0 0 22px}.wizard-progress p{font-size:.85rem;font-weight:600;margin:0 0 9px;color:#506b5d}.wizard-progress progress{width:100%;height:7px;border:0;border-radius:8px;overflow:hidden;background:#dce4d7;accent-color:var(--green)}.wizard-progress progress::-webkit-progress-bar{background:#dce4d7;border-radius:8px}.wizard-progress progress::-webkit-progress-value{background:var(--green);border-radius:8px}.wizard-panel>.card,.wizard-panel>.suggestion{margin-top:0}.wizard-panel .choice-card{margin-top:18px}.wizard-panel .reassurance{margin-top:18px}.wizard-panel h2:focus{outline:none}.wizard-navigation{display:flex;gap:12px;align-items:center;margin:23px 0 10px}.wizard-navigation .primary{margin-left:auto;min-width:155px}.wizard-navigation button{min-height:48px}.wizard .gift-card p,.wizard .member-information p{font-size:.94rem}.wizard .gift-check{font-size:.94rem}.wizard #download-review{margin-top:20px}.wizard #wizard-calculate{margin-top:14px}.completion-card p{line-height:1.7}.completion-card button{margin:12px 8px 0 0}body main>.page-intro{max-width:720px;margin:auto;padding-top:34px;padding-bottom:25px}body main>.page-intro h1{font-size:2.2rem}body main>.page-intro p{font-size:.94rem}@media(max-width:520px){.wizard-navigation{flex-wrap:wrap}.wizard-navigation #wizard-skip-bank{order:3;width:100%}.wizard-navigation .primary{min-width:145px}.wizard-panel .card{padding:23px 21px}}

.topbar{gap:24px}.brand-logo{display:block;width:108px;height:auto;flex-shrink:0}.page-title{font-size:clamp(1.35rem,3vw,2rem);letter-spacing:-.6px;line-height:1.2;margin:0;flex:1}.topbar #open-settings{margin-left:auto;flex-shrink:0}@media(max-width:600px){.topbar{flex-wrap:wrap;gap:16px}.brand-logo{width:82px}.page-title{font-size:1.4rem}.topbar #open-settings{margin-left:auto}.topbar .page-title{flex-basis:calc(100% - 110px)}}
