:root{--goose-ink:#12233f;--goose-blue:#244d77;--goose-sky:#dceaf1;--goose-cream:#f7f4ee;--goose-gold:#d7a94f;--goose-white:#fff;--goose-muted:#667085;--goose-green:#27775d;--goose-red:#a33a3a;--goose-border:#dfe5e9}
.goose-app{max-width:980px;margin:42px auto;font-family:Arial,Helvetica,sans-serif;color:var(--goose-ink);background:var(--goose-white);border:1px solid rgba(18,35,63,.08);border-radius:26px;box-shadow:0 22px 60px rgba(17,34,56,.12);overflow:hidden}
.goose-hero{padding:48px 48px 40px;background:linear-gradient(135deg,var(--goose-ink),var(--goose-blue));color:#fff;position:relative;overflow:hidden}.goose-hero:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-80px;top:-100px;background:rgba(255,255,255,.08)}.goose-eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:12px;color:#d9e8f3;margin-bottom:10px}.goose-hero h2{color:#fff!important;font-size:clamp(32px,5vw,54px)!important;line-height:1.04!important;margin:0 0 12px!important}.goose-hero p{font-size:18px;line-height:1.6;max-width:680px;margin:0;color:#eaf1f7}
.goose-body{padding:36px 48px 48px;background:linear-gradient(#fff,#fbfcfd)}.goose-choice{display:grid;grid-template-columns:1fr 1fr;gap:18px}.goose-choice-card{appearance:none;text-align:left;border:1px solid var(--goose-border);background:#fff;border-radius:18px;padding:26px;cursor:pointer;box-shadow:0 8px 20px rgba(18,35,63,.05);transition:.18s}.goose-choice-card:hover{transform:translateY(-2px);border-color:#9bb8ca;box-shadow:0 14px 28px rgba(18,35,63,.1)}.goose-choice-kicker{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:800;color:var(--goose-blue);margin-bottom:8px}.goose-choice-card strong{display:block;font-size:24px;color:var(--goose-ink);margin-bottom:7px}.goose-choice-card small{font-size:14px;line-height:1.55;color:var(--goose-muted)}
.goose-form-panel{margin-top:22px;background:var(--goose-cream);border-radius:18px;padding:28px}.goose-show{display:block!important}.goose-form-panel h3,.goose-section-title h3,.goose-welcome h3,.goose-person h3{margin:0 0 18px!important;color:var(--goose-ink)!important}.goose-form-panel label{display:block;font-size:14px;font-weight:700;margin-bottom:16px}.goose-form-panel label span{color:var(--goose-red)}.goose-form-panel input:not([type=checkbox]){display:block;width:100%;box-sizing:border-box;margin-top:7px;border:1px solid #cbd6dc;border-radius:10px;background:#fff;padding:13px 14px;font-size:16px;color:var(--goose-ink)}.goose-two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.goose-check{display:flex!important;align-items:center;gap:9px;font-weight:600!important}.goose-check input{width:18px;height:18px}.goose-primary{border:0;border-radius:10px;padding:14px 19px;background:var(--goose-gold);color:#14243a;font-weight:800;font-size:15px;cursor:pointer}.goose-primary:hover{filter:brightness(.96)}.goose-small{padding:10px 12px;font-size:13px;width:100%;margin-top:12px}.goose-link{border:0;background:none;color:var(--goose-blue);text-decoration:underline;cursor:pointer;font-weight:700}.goose-muted{color:var(--goose-muted);line-height:1.6}
.goose-alert{padding:14px 17px;border-radius:12px;margin-bottom:20px;font-weight:700}.goose-success{background:#e9f6f1;color:#1f644f}.goose-error{background:#fff0f0;color:#8a3030}.goose-code-card{border:2px dashed var(--goose-gold);background:#fffaf0;padding:24px;text-align:center;border-radius:18px;margin-bottom:22px}.goose-code-card span{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800}.goose-code-card strong{display:block;font-size:44px;letter-spacing:.12em;margin:8px 0}.goose-code-card p{color:var(--goose-muted);max-width:560px;margin:0 auto;line-height:1.55}
.goose-welcome,.goose-volbar{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:22px;border-bottom:1px solid var(--goose-border);margin-bottom:24px}.goose-welcome span,.goose-volbar span,.goose-section-title span,.goose-reservation>span{display:block;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:11px;color:var(--goose-blue)}.goose-welcome h3{font-size:27px;margin:3px 0 4px!important}.goose-welcome p{margin:0;color:var(--goose-muted)}.goose-reservation{padding:26px;border-radius:18px;background:var(--goose-sky);margin-bottom:28px}.goose-reservation strong{display:block;font-size:26px;margin-top:6px}.goose-reservation b{display:block;font-size:35px;margin:3px 0 10px}.goose-reservation p{line-height:1.5}.goose-instructions{margin-top:16px;padding-top:16px;border-top:1px solid rgba(18,35,63,.15);line-height:1.6}.goose-section-title{margin:28px 0 14px}.goose-section-title h3{font-size:24px;margin:4px 0 0!important}.goose-date-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.goose-date-card{border:1px solid var(--goose-border);border-radius:16px;padding:18px;background:#fff}.goose-date-card>span{display:block;text-transform:uppercase;font-size:11px;font-weight:800;color:var(--goose-blue)}.goose-date-card>strong{display:block;font-size:22px;margin:3px 0}.goose-date-card>small{display:block;color:var(--goose-muted)}.goose-booked{display:inline-block;margin-top:12px;background:#e9f6f1;color:var(--goose-green);padding:7px 9px;border-radius:8px;font-size:12px}.goose-empty{padding:28px;text-align:center;background:var(--goose-cream);border-radius:16px;color:var(--goose-muted)}
.goose-volbar strong{display:block;font-size:22px}.goose-volbar small{display:block;color:var(--goose-muted);margin-top:3px}.goose-mini-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.goose-mini-stats div{padding:16px;border:1px solid var(--goose-border);border-radius:14px;text-align:center}.goose-mini-stats strong{display:block;font-size:25px}.goose-mini-stats span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--goose-muted);font-weight:800}.goose-search{display:grid;grid-template-columns:170px 1fr auto;gap:10px;margin-bottom:22px}.goose-search input{border:1px solid var(--goose-border);border-radius:10px;padding:11px 12px;font-size:14px}.goose-search button{border:0;border-radius:10px;padding:0 16px;background:var(--goose-ink);color:#fff;font-weight:700}.goose-people{display:grid;gap:14px}.goose-person{border:1px solid var(--goose-border);border-radius:17px;padding:20px;background:#fff;box-shadow:0 7px 18px rgba(18,35,63,.04)}.goose-person-top{display:flex;justify-content:space-between;gap:16px}.goose-time{font-size:13px;font-weight:800;color:var(--goose-blue)}.goose-person h3{font-size:23px;margin:3px 0 4px!important}.goose-person p{margin:0;color:var(--goose-muted)}.goose-status{height:max-content;padding:7px 10px;border-radius:999px;background:#eef2f5;font-size:11px;font-weight:800;text-transform:uppercase}.goose-status-arrived{background:#fff4d8}.goose-status-serving{background:#e5efff}.goose-status-completed{background:#e8f6ef;color:var(--goose-green)}.goose-status-no_show,.goose-status-canceled{background:#fff0f0;color:var(--goose-red)}.goose-contact{display:flex;gap:10px;margin:15px 0}.goose-contact a{padding:8px 11px;border-radius:9px;background:var(--goose-sky);color:var(--goose-ink);font-size:13px;font-weight:700;text-decoration:none}.goose-status-actions{display:flex;gap:8px;flex-wrap:wrap}.goose-status-actions form{margin:0}.goose-status-actions button{border:1px solid #cbd6dc;border-radius:9px;background:#fff;padding:9px 11px;cursor:pointer;font-weight:700}.goose-status-actions button:disabled{opacity:.45}.goose-footer-mark{display:flex;justify-content:space-between;padding:16px 48px;background:var(--goose-cream);border-top:1px solid var(--goose-border)}.goose-footer-mark span{font-weight:800}.goose-footer-mark small{color:var(--goose-muted)}
@media(max-width:700px){.goose-app{margin:18px 0;border-radius:18px}.goose-hero{padding:34px 22px 30px}.goose-body{padding:24px 18px 30px}.goose-choice,.goose-two,.goose-date-grid{grid-template-columns:1fr}.goose-mini-stats{grid-template-columns:1fr 1fr}.goose-search{grid-template-columns:1fr}.goose-search button{padding:12px}.goose-person-top,.goose-welcome,.goose-volbar{display:block}.goose-status{display:inline-block;margin-top:12px}.goose-footer-mark{padding:14px 20px}.goose-code-card strong{font-size:36px}}

.goose-history{display:flex;gap:18px;flex-wrap:wrap;margin:14px 0 2px;padding:10px 12px;background:#f7f9fa;border-radius:10px;font-size:12px;color:var(--goose-muted)}.goose-history strong{color:var(--goose-ink)}

/* v0.3 volunteer extra pantry dates */
.goose-vol-schedule{margin:16px 0;border:1px solid rgba(20,42,63,.14);border-radius:14px;background:#fff;overflow:hidden}.goose-vol-schedule summary{cursor:pointer;padding:14px 16px;font-weight:750;color:#17314f;list-style:none}.goose-vol-schedule summary::-webkit-details-marker{display:none}.goose-vol-schedule[open] summary{border-bottom:1px solid rgba(20,42,63,.1)}.goose-vol-schedule>div{padding:16px}.goose-vol-schedule textarea{width:100%;margin-top:7px;box-sizing:border-box}

/* v0.4 reservation confirmation polish */
.goose-reservation-featured{border:1px solid rgba(36,77,119,.18);box-shadow:0 12px 28px rgba(18,35,63,.08)}.goose-reservation-featured h3{margin:5px 0 12px!important;font-size:18px!important;color:var(--goose-ink)!important}.goose-section-title p{margin:6px 0 0;color:var(--goose-muted);line-height:1.55;max-width:680px}.goose-date-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:700px){.goose-date-grid-two{grid-template-columns:1fr}}
