:root{--bg:#f8f5ef;--paper:#fffdf9;--ink:#27332d;--muted:#61685e;--accent:#963f31;--accent-dark:#713025;--line:#deded1;--sage:#e9eee3;--pink:#f4e5de;--radius:24px;color-scheme:light;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,"Noto Sans",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}button,input,select{font:inherit;color:inherit}button,a,summary,input,select,.choice,.recommend-toggle{-webkit-tap-highlight-color:transparent}button,summary,select{cursor:pointer}button{border:0}button:disabled{cursor:wait;opacity:.6}input,select{max-width:100%}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}.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}.skip{position:fixed;inset-block-start:10px;inset-inline-start:10px;transform:translateY(-180%);z-index:99;background:var(--paper);padding:16px}.skip:focus{transform:none}.site-header{max-width:1180px;margin:auto;padding:28px 32px;display:flex;justify-content:space-between;align-items:center;gap:16px}.brand{font-size:24px;font-weight:650;color:var(--accent);text-decoration:none;display:flex;align-items:center;gap:8px;white-space:nowrap;direction:ltr}.language-switch{display:flex;align-items:center;gap:8px}.language-switch svg{width:19px}.intro{max-width:960px;margin:44px auto 38px;padding:0 32px;text-align:center}.eyebrow{font-size:11px;font-weight:720;letter-spacing:1.7px;color:var(--accent);display:inline-flex;align-items:center;gap:9px}h1{font-size:clamp(36px,5.7vw,68px);line-height:1.08;letter-spacing:-2.5px;margin:18px 0;font-weight:650;text-wrap:balance}.intro p{font-size:18px;line-height:1.6;color:var(--muted);max-width:610px;margin:0 auto;text-wrap:pretty}.builder-panel{min-width:0}.restaurant-field{padding-bottom:23px;border-bottom:1px solid var(--line)}.choice-group{border:0;padding:0;min-width:0}.choice-group legend{font-size:15px;font-weight:650;margin-bottom:14px;padding:0;display:flex;align-items:center;gap:8px}.choices{display:flex;flex-wrap:wrap}.choice{position:relative;display:flex;align-items:center;gap:6px;cursor:pointer;min-height:44px}.choice input{position:absolute;opacity:0;width:100%;height:100%;margin:0;inset:0;cursor:pointer}.choice span:first-of-type{display:block;font-weight:570;border:1px solid var(--line);border-radius:10px;line-height:1.35}.choice .choice-check{display:block;position:absolute;inset-inline-end:11px;color:#39582e;font-size:13px;opacity:0;pointer-events:none}.choice:has(input:checked) span:first-of-type{background:var(--sage);border-color:#79896b;color:#243c26}.choice:has(input:checked) .choice-check{opacity:1}.choice:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:3px;border-radius:10px}.more-options{margin-top:12px}.more-options summary{color:var(--muted);display:flex;align-items:center;gap:8px;list-style:none;width:fit-content}.more-options[open] summary{margin-bottom:8px}summary::-webkit-details-marker{display:none}summary{list-style:none}.recommend-group{margin-top:25px;padding-top:22px;border-top:1px solid var(--line)}.recommend-toggle{display:flex;gap:10px;align-items:flex-start;line-height:1.5;cursor:pointer;min-height:32px}.recommend-toggle input{margin:3px 0 0;accent-color:var(--accent);width:18px;height:18px;flex-shrink:0}.primary{background:var(--accent);color:white;min-height:52px;border-radius:12px;padding:14px 20px;font-size:14px;font-weight:650;display:inline-flex;align-items:center;justify-content:center;gap:16px;line-height:1.4}.primary:hover{background:var(--accent-dark)}.primary svg{width:19px;flex-shrink:0}.form-message{font-size:13px;color:var(--accent);margin:0;line-height:1.5}.form-message:not(:empty){margin-top:12px}.card-preview{background:var(--sage);border-radius:var(--radius);padding:28px 26px;position:sticky;top:20px;min-width:0}.paper-card{background:#fff;border-radius:16px;box-shadow:0 12px 24px #3441250e;padding:28px 26px;min-height:295px;transform:rotate(-2deg);border:1px solid #e6e8dd}.paper-brand{font-size:16px;font-weight:720;color:var(--accent);direction:ltr;margin-bottom:25px}.preview-placeholder{color:var(--muted);font-size:18px;line-height:1.5;margin:0}.paper-lines{margin:28px 0}.paper-lines i{display:block;height:7px;border-radius:7px;background:#eeeee5;margin:12px 0}.paper-lines i:nth-child(2){width:82%}.paper-lines i:nth-child(3){width:58%}.preview-requests{padding:0;list-style:none;margin:0}.preview-requests li{font-size:15px;line-height:1.6;padding:10px 0;overflow-wrap:anywhere}.how-section,.detail-section,.related-section{max-width:1050px;margin:88px auto;padding:0 32px}h2{font-size:30px;line-height:1.25;letter-spacing:normal;font-weight:650;text-wrap:balance}.how-section h2{text-align:center;margin-bottom:38px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.steps h3{font-size:16px;margin:17px 0 10px}.steps p{font-size:14px;color:var(--muted);line-height:1.7;margin:0}.step-number{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;flex:none;border-radius:50%;padding:0;line-height:1;background:var(--pink);color:var(--accent);font-size:13px}.detail-section{display:grid;grid-template-columns:1.4fr 1fr;gap:44px;align-items:center;padding-top:36px;border-top:1px solid var(--line)}.detail-section p{font-size:15px;line-height:1.8;color:var(--muted)}.sample-card{background:#f0ece3;padding:26px;border-radius:18px}.sample-card h3{font-size:12px;color:var(--muted);margin:0 0 18px}.sample-card strong{font-size:16px;line-height:1.6}.sample-card p{margin-bottom:0}.related-section h2{font-size:23px}.related-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.related-links a{display:flex;align-items:center;justify-content:space-between;gap:18px;text-decoration:none;background:var(--paper);border:1px solid var(--line);padding:17px;border-radius:12px;font-size:14px;line-height:1.5}.related-links a:hover{border-color:#9fa992}.related-links svg{width:17px;flex-shrink:0}.site-footer{max-width:1180px;margin:auto;border-top:1px solid var(--line);padding:28px 32px 44px;display:flex;justify-content:space-between;gap:20px;font-size:13px;font-weight:650}.footer-note{font-weight:400;color:var(--muted);margin-inline-start:10px}.site-footer nav{display:flex;flex-wrap:wrap;gap:16px 24px}.site-footer a{color:var(--muted);font-weight:400}.fullscreen-dialog{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#27332d66}.staff-shell{max-width:760px;width:100%;flex:none;margin:0 auto;padding:24px 30px}.staff-shell h2{font-size:32px;margin:0 0 14px}.staff-instruction{font-size:19px;color:var(--muted);line-height:1.5;margin-bottom:25px}.staff-heading{font-size:23px;line-height:1.5;margin:25px 0 12px}.staff-row{overflow:hidden;width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #a8b0a2;background:var(--paper);padding:20px;border-radius:12px;font-size:23px;text-align:start;line-height:1.6;margin:10px 0}.staff-row .row-state{font-size:14px;flex-shrink:0;color:var(--accent);display:none;font-weight:650}.staff-row[aria-pressed=true] .row-state{display:block}.staff-recommend{display:flex;align-items:flex-start;gap:12px;font-size:19px;line-height:1.6;margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.recommend-icon{flex:none;width:24px;height:24px;margin-top:3px;color:var(--accent)}.staff-confirm-bar{flex:none;margin-top:auto;background:var(--paper);border-top:1px solid var(--line);text-align:center}.staff-confirm-bar .primary{font-size:20px;width:min(700px,100%);min-height:60px}.result-dialog{border:1px solid var(--line);border-radius:24px;max-width:640px;width:calc(100% - 32px);padding:30px;max-height:calc(100dvh - 32px);color:var(--ink);background:var(--paper)}.result-dialog h2{margin:22px 0 12px;font-size:29px}.result-intro{color:var(--muted);line-height:1.6;font-size:14px}.answer-row{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:15px 0;font-size:15px}.answer-state{font-size:12px;font-weight:650;border-radius:30px;padding:7px 10px;white-space:nowrap}.answer-state.yes{background:var(--sage);color:#314c28}.result-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.document{max-width:800px;padding:20px 32px 80px;margin:40px auto;min-height:60vh}.document h1{font-size:44px}.document p{font-size:17px;line-height:1.9;color:var(--muted)}.language-portal{max-width:850px;text-align:center;margin:60px auto;padding:0 32px}.portal-links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;text-align:start;margin:40px 0}.portal-links a{display:block;background:var(--paper);border:1px solid var(--line);padding:20px;border-radius:12px;text-decoration:none}.portal-links a:hover{border-color:var(--accent)}html[dir=rtl] h1{letter-spacing:0}html[dir=rtl] .paper-card{transform:rotate(2deg)}html[dir=rtl] .eyebrow{letter-spacing:0}html[dir=rtl] .primary svg,html[dir=rtl] .related-links svg{transform:rotate(180deg)}
@media(max-width:760px){.brand{font-size:21px}.language-switch{gap:3px}.language-switch svg{width:17px}.intro{margin:25px auto 28px;padding:0 22px}.intro h1{font-size:40px;letter-spacing:-1.5px;margin:15px 0}.intro p{font-size:15px;line-height:1.65}.eyebrow{font-size:10px;letter-spacing:1.1px}.card-preview{display:none}.how-section,.detail-section,.related-section{margin:52px auto;padding:0 24px}.how-section h2{font-size:26px;text-align:start}.steps{grid-template-columns:1fr;gap:25px}.steps>div{position:relative;padding-inline-start:48px}.step-number{position:absolute;inset-inline-start:0;top:0}.steps h3{margin:0 0 8px}.detail-section{display:block;padding-top:28px}.detail-section h2{font-size:27px}.sample-card{margin-top:25px}.related-links{grid-template-columns:1fr}.site-footer{padding:24px 24px 120px;display:block}.site-footer nav{margin-top:18px}.footer-note{display:block;margin:9px 0 0}.staff-shell{padding:20px 18px}.staff-shell h2{font-size:27px}.staff-instruction{font-size:17px}.staff-heading{font-size:20px}.staff-row{font-size:21px;padding:17px;display:block}.staff-row .row-state{margin-top:8px}.staff-confirm-bar .primary{font-size:17px}.result-dialog{padding:22px}.result-dialog h2{font-size:25px}.answer-row{font-size:14px;gap:10px}.result-actions .primary{width:100%}.portal-links{grid-template-columns:1fr 1fr;gap:8px}.portal-links a{padding:16px}.document{padding:10px 24px 50px;margin-top:25px}.document h1{font-size:34px}}
@media(prefers-reduced-motion:no-preference){.choice span,.primary,.related-links a{transition:background .12s,border-color .12s}}
.site-header{height:80px;padding-block:18px}
.builder-panel{position:relative;max-width:1050px;margin:0 auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
#card-form{margin:0}.flow-viewport{position:relative;height:calc(100svh - 80px);min-height:320px;overflow-y:auto;scroll-snap-type:y mandatory;scrollbar-width:none;scroll-padding:0;overscroll-behavior-y:contain;touch-action:pan-y pinch-zoom;border-radius:24px}.flow-viewport::-webkit-scrollbar{display:none}
.flow-step{scroll-snap-align:start;scroll-snap-stop:always;min-height:100%;display:flex;align-items:center;justify-content:center;padding:34px 32px 100px}
.flow-inner{width:100%;max-width:560px}.flow-heading{font-size:clamp(28px,3.5vw,42px);line-height:1.2;margin:0 0 30px;letter-spacing:normal;outline:none}.flow-heading:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.flow-step .intro{padding:0;margin:0 0 36px;text-align:start}.flow-step .intro h1{font-size:clamp(37px,5vw,62px)}.flow-step .intro p{margin:0;font-size:17px}.language-question .flow-heading{font-size:20px;font-weight:600;letter-spacing:0;line-height:1.35;margin-bottom:14px}.restaurant-field{padding:0;border:0}.choice-group{margin:0}.choices{gap:12px}.choice span:first-of-type{background:var(--paper);font-size:16px;padding:15px 19px;padding-inline-end:35px}.step-icon{display:flex;color:var(--accent);margin-bottom:24px}.step-icon svg{width:38px;height:38px}.recommend-group{padding:0;margin:0;border:0}.recommend-toggle{border:1px solid var(--line);padding:18px 20px;background:var(--paper);border-radius:12px;font-size:16px}
.flow-controls{position:absolute;inset-inline:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:12px;height:90px;padding:8px 32px calc(8px + env(safe-area-inset-bottom));background:linear-gradient(0deg,var(--bg) 70%,#f8f5ef00);pointer-events:none}.flow-controls>*{pointer-events:auto}.flow-next{min-width:56px;min-height:64px;background:none;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;padding:8px;border-radius:14px;color:var(--accent)}.flow-next .scroll-arrows{width:32px;height:44px;pointer-events:none}.scroll-arrows path{opacity:.25}.scroll-arrows path:nth-child(2){opacity:.5}.scroll-arrows path:nth-child(3){opacity:.85}.flow-next.hint .scroll-arrows{animation:none}.flow-next.hint .scroll-arrows path{animation:scroll-hint 1.6s ease-in-out infinite}.flow-next.hint .scroll-arrows path:nth-child(2){animation-delay:.15s}.flow-next.hint .scroll-arrows path:nth-child(3){animation-delay:.3s}.flow-next[hidden]{display:flex!important;visibility:hidden;pointer-events:none}
@keyframes scroll-hint{0%,100%{transform:translateY(-3px)}50%{transform:translateY(3px)}}
.flow-step .card-preview{display:block;position:static;padding:18px;background:var(--sage);margin:0 0 26px;border-radius:20px}.flow-step .paper-card{transform:none;min-height:180px;padding:22px}.secondary{min-height:52px;border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:14px 18px;font-size:14px}html[dir=rtl] .flow-next svg{transform:none}html[dir=rtl] .flow-heading{letter-spacing:0}
@media(max-width:760px){.site-header{height:72px;padding:14px 24px}.flow-viewport{height:calc(100svh - 72px);border-radius:0}.flow-step{padding:30px 24px 96px}.flow-step .intro{margin-bottom:30px}.flow-step .intro p{font-size:15px}.flow-heading{font-size:32px;margin-bottom:28px}.language-question .flow-heading{font-size:20px}.choices{gap:10px}.choice span:first-of-type{font-size:14px;padding:14px 16px;padding-inline-end:35px}.flow-controls{height:86px;padding-inline:24px}.secondary{width:100%}.site-footer{padding-bottom:36px}}
@media(prefers-reduced-motion:reduce){.flow-next.hint .scroll-arrows,.flow-next.hint .scroll-arrows path{animation:none;will-change:auto}}
.flow-card-actions{display:flex;flex-direction:column;gap:24px;width:100%;pointer-events:auto}.flow-card-actions .primary{flex:1}

.flow-home{height:100svh;overflow:hidden;display:flex;flex-direction:column}:is(.flow-home,#staff-dialog)>.site-header{width:100%;flex:none;position:relative;z-index:2;background:var(--bg)}.flow-home>main{flex:1;min-height:0}.flow-home .builder-panel,.flow-home #card-form{height:100%}.flow-home .flow-viewport{height:100%;min-height:0}.header-actions{display:flex;align-items:center;gap:14px}.help-trigger{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;font-size:14px;font-weight:600;text-decoration:none;color:var(--accent);padding:8px 4px}.help-trigger:hover{text-decoration:underline}.help-dialog{width:min(760px,calc(100% - 32px));max-height:calc(100svh - 32px);padding:0;border:1px solid var(--line);border-radius:24px;background:var(--paper);color:var(--ink);overscroll-behavior:contain}.help-content{padding:0 24px}.help-content .how-section,.help-content .detail-section,.help-content .related-section,.help-page .how-section,.help-page .detail-section,.help-page .related-section{margin:28px 0;padding:0}.help-content .how-section h2,.help-page .how-section h2{text-align:start;font-size:22px;margin-bottom:20px}.help-content .steps,.help-page .steps{display:grid;grid-template-columns:1fr;gap:20px}.help-content .steps>div,.help-page .steps>div{position:relative;padding-inline-start:46px}.help-content .step-number,.help-page .step-number{position:absolute;inset-inline-start:0;top:0}.help-content .steps h3,.help-page .steps h3{margin:0 0 5px}.help-content .detail-section,.help-page .detail-section{grid-template-columns:1fr;gap:20px;border-top:1px solid var(--line);padding-top:16px}.help-content .detail-section h2,.help-page .detail-section h2{font-size:22px;margin:0 0 16px}.help-content .site-footer{padding:20px 0 28px;margin-top:30px;flex-wrap:wrap}.help-content .footer-note{display:inline;margin:0;margin-inline-start:4px}.presets-intro{font-size:14px;color:var(--muted);line-height:1.6}.show-label{display:flex;flex-direction:column;align-items:center;gap:3px}.show-label small{font-size:12px;font-weight:400;opacity:.85;line-height:1.35}.preview-group{margin-bottom:12px}.preview-group h3{margin:0 0 8px;font-size:16px;font-weight:700;color:var(--accent);line-height:1.5}.preview-group .preview-requests{display:grid;gap:12px}.preview-group .preview-requests li{padding:0}.preview-group:last-child{margin-bottom:0}.preview-recommend{font-size:15px;line-height:1.6;margin:14px 0 0}.flow-step[data-step=card]{flex-direction:column;align-items:center;justify-content:flex-start;padding:32px 32px 16px}.flow-step[data-step=card]>.flow-inner{margin-block:0}.flow-step[data-step=card] .card-preview{margin-bottom:0}.flow-card-actions{margin-top:32px}
@media(max-width:760px){.header-actions{gap:8px}.help-dialog{width:calc(100% - 24px);max-height:calc(100svh - 24px);border-radius:18px}.help-content{padding-inline:18px}.help-content .related-links{grid-template-columns:1fr}}
@media(max-width:480px){.site-header{padding-inline:24px;gap:8px}.brand{font-size:21px}.header-actions .language-switch svg{display:none}.help-trigger{font-size:13px}.header-actions{gap:6px}}
@media(max-width:360px){.brand{font-size:21px}.help-trigger{font-size:12px;min-width:40px}}
.header-actions .language-switch{position:relative;gap:8px;min-height:44px;transition:background-color .15s ease}.language-current{font-size:14px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-actions .language-switch .language-chevron{display:block;width:16px;height:16px;flex:none}.interface-language-control .language-globe{width:19px;height:19px;flex:none;color:var(--muted);opacity:.5}.language-switch:hover,.language-switch:focus-within{background:var(--pink)}.language-switch:focus-visible{outline:0;color:var(--accent);background:var(--pink)}
@media(max-width:480px){.header-actions .language-switch{gap:6px;padding-inline:8px}.language-current{font-size:12px;max-width:88px}}
@media(max-width:360px){.header-actions{gap:2px}.header-actions .language-switch{padding-inline:6px;gap:4px}.language-current{max-width:76px}}
@media(prefers-reduced-motion:reduce){.header-actions .language-switch{transition:none}}

.header-actions,.header-actions .language-switch,.language-current{min-width:0}.help-trigger{flex:none}

.people-field{display:flex}.people-label{font-size:14px;font-weight:600}.people-stepper{display:flex;align-items:center;gap:8px;direction:ltr}.people-stepper button{display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.people-stepper button svg{display:block;pointer-events:none}.people-stepper button:disabled{cursor:default;opacity:.35}.people-stepper output{min-width:44px;text-align:center;font-size:22px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink)}html[dir=rtl] .people-stepper{direction:rtl}

.staff-row[aria-pressed=true]{background:#fff2d9;border-color:#c28f3b}.staff-row[aria-pressed=true] .row-state{color:#7c4b12}.staff-confirm-bar .primary{background:#315c40}.staff-confirm-bar .primary:hover{background:#264b32}.staff-confirm-bar .primary:focus-visible{outline-color:#315c40}.answer-state.no{background:#fbe3d8;color:#a33c24}
.restaurant-language-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;min-height:56px;border:1px solid var(--line);border-radius:14px;background:var(--bg);text-align:start;transition:background-color .15s,border-color .15s}.restaurant-language-trigger span{min-width:0;overflow-wrap:anywhere}.restaurant-language-trigger svg{width:18px;height:18px;flex:none}.restaurant-language-trigger:focus-visible{outline:0}
.language-picker{width:min(480px,calc(100% - 48px));max-height:calc(100svh - 64px);margin:auto;padding:24px;border:1px solid var(--line);border-radius:24px;background:var(--bg);color:var(--ink);box-shadow:0 24px 80px #27332d24}.language-picker[open]{display:flex;flex-direction:column;gap:18px}.language-picker::backdrop{background:#27332d38;backdrop-filter:blur(3px)}.language-picker-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex:none}.language-picker-top h2{font-size:23px;line-height:1.3;letter-spacing:normal;margin:6px 0 0;outline:none}.language-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow-y:auto;min-height:0;overscroll-behavior:contain;padding:2px;scrollbar-width:none}.language-option{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:52px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:transparent;text-align:start}.language-option span:first-child{overflow-wrap:anywhere}.language-option[aria-pressed=true]{background:var(--sage);border-color:#79896b;color:#243c26}.language-option:hover{background:var(--sage)}.language-option:focus-visible{outline:2px solid #315c40;outline-offset:-2px}.more-options summary{font-size:13px;min-height:44px;cursor:pointer}.more-options summary svg{width:16px;height:16px}.more-options[open] summary svg{transform:rotate(180deg)}
.staff-allergies{margin:28px 0;padding:18px;border:1px solid #e8c5bd;border-radius:20px;background:#fcf5f1}.staff-allergies .allergy-heading{background:transparent;border:0;border-radius:0;padding:0;margin:0 0 16px;color:var(--accent);font-size:23px;line-height:1.5}.staff-allergy-note{font-size:15px;line-height:1.6;color:var(--accent);margin:-6px 0 18px}.staff-allergies .staff-row{border-color:#cfaaa0;background:var(--paper)}.staff-allergies .staff-row:last-child{margin-bottom:0}.staff-allergies .staff-row[aria-pressed=true]{background:#fff2d9;border-color:#c28f3b}
@media(max-width:600px){.language-picker{border-width:1px 0 0}.language-picker-top h2{font-size:22px}.language-list{gap:8px}.language-option{padding:12px;min-height:52px}.staff-allergies{padding:14px}.staff-allergies .staff-row{padding:17px}.staff-allergies .allergy-heading{font-size:20px}}
@media(prefers-reduced-motion:reduce){.restaurant-language-trigger{transition:none}}

@media(max-width:760px){.home-heading-lead,.home-heading-tail{display:block}.flow-step .intro h1{font-size:clamp(32px,8.5vw,40px)}}

.primary{text-decoration:none}h1,h2,h3{overflow-wrap:anywhere;hyphens:none}

.language-morph{position:fixed;z-index:2;display:flex;align-items:center;padding:12px 18px;border:1px solid var(--line);border-radius:14px;background:var(--bg);transform-origin:top left;pointer-events:none;overflow:hidden;white-space:normal;overflow-wrap:anywhere}
@media(max-width:760px){.flow-home .intro h1{font-size:clamp(36px,10.5vw,46px)}html:is([lang=pl],[lang=pt],[lang=id],[lang=tr]) .flow-home .intro h1{font-size:clamp(34px,9.5vw,42px)}html[lang=ja] .flow-home .intro h1{font-size:clamp(32px,8.8vw,40px)}}

.choice span:first-of-type{padding-inline:20px;text-align:center}.choice-text{display:block;font-weight:inherit;transform:translateX(0)}.choice:has(input:checked) .choice-text{transform:translateX(-8px)}.choice .choice-check{transform:translateX(-8px)}.choice:has(input:checked) .choice-check{transform:translateX(0)}html[dir=rtl] .choice:has(input:checked) .choice-text{transform:translateX(8px)}html[dir=rtl] .choice .choice-check{transform:translateX(8px)}html[dir=rtl] .choice:has(input:checked) .choice-check{transform:translateX(0)}
@media(prefers-reduced-motion:no-preference){.choice-text,.choice .choice-check{transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .28s ease}.choice span:first-of-type{transition:background .2s,border-color .2s}}

.language-picker{overflow:visible}
@media(max-width:600px){.language-picker{width:calc(100% - 32px);max-width:480px;max-height:calc(100svh - 64px);margin:auto;padding:22px 18px;border:1px solid var(--line);border-radius:24px}}
@media(prefers-reduced-motion:no-preference){.language-picker[open]::backdrop{animation:language-backdrop .42s ease both}@keyframes language-backdrop{from{background:transparent;backdrop-filter:blur(0)}to{background:#27332d38;backdrop-filter:blur(3px)}}}
.header-actions .language-switch{border:1px solid var(--line);border-radius:14px;background:var(--bg);padding:9px 12px}.header-actions .language-switch:hover,.header-actions .language-switch:focus-visible,.header-actions .language-switch[aria-expanded=true]{background:var(--bg);border-color:#79896b}.header-actions .language-switch:focus-visible{outline:2px solid #79896b;outline-offset:2px}.restaurant-language-trigger:hover,.restaurant-language-trigger[aria-expanded=true],.restaurant-language-trigger:focus-visible{background:var(--bg);border-color:var(--line)}.restaurant-language-trigger:focus-visible{outline:2px solid #79896b;outline-offset:2px}

.help-dialog{overflow:hidden}.help-content{max-height:calc(100svh - 34px);overflow-y:auto;overscroll-behavior:contain}.help-content .how-section>h2{padding-inline-end:48px}.help-dialog #help-close{position:absolute;inset-block-start:12px;inset-inline-end:12px;z-index:2;width:44px;height:44px;border-radius:12px;background:var(--bg);font-size:28px;line-height:1}.people-field{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:10px;margin-top:20px}.staff-recommend p{margin:0}
@media(max-width:760px){.help-content{max-height:calc(100svh - 26px)}}
.header-placeholder{flex:none}.header-brand-slot{display:grid;align-items:center}.header-brand-slot>.brand,.header-brand-slot>.staff-back{grid-area:1/1}.staff-back{display:grid;place-items:center;justify-self:start;width:44px;height:44px;padding:0;border-radius:12px;background:transparent;color:var(--ink);opacity:0;visibility:hidden}.staff-back svg{width:24px;height:24px}.staff-back:dir(rtl) svg{transform:rotate(180deg)}.site-header[data-staff] .brand{opacity:0;visibility:hidden}.site-header[data-staff] .staff-back{opacity:1;visibility:visible}.staff-back:hover{background:var(--sage)}

@media(prefers-reduced-motion:no-preference){.flow-viewport:not([data-spark-ready=true]) .step-icon svg{opacity:0;transform:scale(0)}.flow-viewport[data-spark-ready=true] .step-icon svg{animation:recommend-spark .6s cubic-bezier(.22,1,.36,1) both}@keyframes recommend-spark{from{opacity:0;transform:scale(0) rotate(-360deg)}to{opacity:1;transform:scale(1) rotate(0)}}}

.staff-scroll-shade::before{content:"";position:absolute;inset-inline:0;bottom:0;height:clamp(80px,13svh,120px);background:linear-gradient(to bottom,transparent,var(--paper));pointer-events:none;opacity:0}#staff-dialog .staff-scroll-shade::before{opacity:var(--staff-fade-bottom,0)}#staff-dialog[data-has-more=true] .staff-scroll-shade{pointer-events:auto}.staff-scroll-shade:disabled{opacity:1;cursor:default}
@media(prefers-reduced-motion:no-preference){}

@media(prefers-reduced-motion:no-preference){.language-picker[open].is-closing::backdrop{animation:language-backdrop-out .3s .12s ease both}@keyframes language-backdrop-out{from{background:#27332d38;backdrop-filter:blur(3px)}to{background:transparent;backdrop-filter:blur(0)}}}

.header-actions .language-switch,.restaurant-language-trigger,.language-option,.language-morph{font-family:inherit;font-size:16px;font-weight:400;line-height:1.4}

button,.primary,.secondary,.help-trigger,.choice,.recommend-toggle{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}

#recommend-fields[hidden]{display:block!important;visibility:hidden;pointer-events:none}.people-label,.people-stepper{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.people-stepper{transition-delay:.15s}#recommend-fields[hidden] .people-label,#recommend-fields[hidden] .people-stepper{opacity:0;transform:translateY(8px);transition-delay:0s}
@media(prefers-reduced-motion:reduce){.people-label,.people-stepper{transition:none}}

.language-current{font-weight:400}

.language-picker-top,.language-list{position:relative;z-index:1}

@media(prefers-reduced-motion:no-preference){.help-dialog[open]{animation:help-in .28s ease both}.help-dialog[open]::backdrop{animation:dialog-backdrop-in .28s ease both}@keyframes help-in{from{opacity:0}to{opacity:1}}@keyframes dialog-backdrop-in{from{background:#27332d00}to{background:#27332d66}}}

.flow-step[data-step=card] .flow-heading{margin-bottom:12px}.card-review{font-size:14px;font-weight:400;line-height:1.6;color:var(--muted);margin:0 0 28px;text-wrap:pretty}

.flow-viewport[data-language-selected=false]{overflow-y:hidden}
.result-recommend{margin-top:18px}.result-recommend p{margin:0}.result-recommend .result-staff-prompt{margin-top:8px;font-size:16px;line-height:1.6}
.staff-confirm-label{display:flex;flex-direction:column;align-items:center;gap:3px;width:100%;min-width:0;text-align:center}.staff-confirm-label small{font-weight:400;line-height:1.35}.staff-confirm{position:relative;padding-inline:64px;--button-shadow:49 92 64}.staff-confirm svg{position:absolute;inset-inline-start:22px;top:50%;width:32px;height:32px;transform:translateY(-50%)}.show-card{font-size:16px;background:#a65d48}.show-card:hover{background:#934d3c}.show-card{box-shadow:0 3px 8px #20282024,0 12px 24px #20282038}.staff-confirm:active,.show-card:active{transform:translateY(6px)}.staff-confirm:active{box-shadow:0 4px 12px rgb(var(--button-shadow)/.16)}.show-card:active{box-shadow:0 2px 5px #2028201f,0 4px 10px #20282029}@media(prefers-reduced-motion:no-preference){.staff-confirm,.show-card{transition:background .12s,transform .16s ease,box-shadow .16s ease}}

.card-region{overflow:hidden}.card-scene{position:relative;background:var(--bg);backface-visibility:hidden;transform-style:preserve-3d}.flow-home .card-region,.flow-home .card-scene{height:100%}.card-scene.is-staff-visible{visibility:hidden}#staff-dialog{background:transparent;overflow:hidden}#staff-dialog::backdrop{background:transparent}.staff-region{position:absolute;inset:var(--staff-header-height) 0 0;max-width:760px;margin-inline:auto;overflow:visible}.staff-face{position:absolute;box-shadow:none;backface-visibility:hidden;transform-style:preserve-3d}.staff-scroll{height:100%;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain}

@media(prefers-reduced-motion:no-preference){.result-dialog[open]{animation:result-in .32s cubic-bezier(.22,1,.36,1) both}.result-dialog[open]::backdrop{animation:dialog-backdrop-in .28s ease both}@keyframes result-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}

@media(hover:hover) and (pointer:fine){.choice:has(input:not(:checked)):hover span:first-of-type{background:#fff;border-color:#a8b0a2}}

/* Keep headline phrases together at natural language boundaries. */
h1,h2,h3{text-wrap:balance} .heading-phrase{display:inline-block;max-inline-size:100%;vertical-align:top;text-wrap:balance}html:is([lang=zh-Hans],[lang=zh-Hant],[lang=ja],[lang=ko]) h1{letter-spacing:normal}
html:is([lang=zh-Hans],[lang=zh-Hant],[lang=ja],[lang=ko]) .heading-phrase{word-break:keep-all;letter-spacing:0}html[lang=ko] :is(h1,h2,h3){word-break:keep-all}

@media(max-width:760px){body:not(.flow-home) .flow-step .intro h1{font-size:clamp(28px,8.5vw,40px)}}

@media(max-width:760px){.document h1{font-size:clamp(28px,8.65vw,34px)}}

.language-list::-webkit-scrollbar{display:none}

.brand-icon{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:50%;background:#a6403110}.brand-icon svg{width:23px;height:23px}
@media(max-width:360px){.brand{gap:5px}.brand-icon{width:24px;height:24px}.brand-icon svg{width:21px;height:21px}}

.people-stepper output{position:relative;display:block;overflow:hidden;line-height:1.4;height:1.4em}.people-stepper output span{display:block}.people-stepper .people-outgoing{position:absolute;inset:0}

.result-close{position:absolute;inset-block-start:12px;inset-inline-end:12px;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--bg);color:var(--muted);font-size:26px;line-height:1}.result-dialog .paper-brand{padding-inline-end:40px}

.staff-confirm{min-height:108px;padding-block:16px;box-shadow:0 12px 28px rgb(var(--button-shadow)/.50)}.staff-confirm-status{display:block;width:100%}.staff-confirm-status small{display:none}.staff-confirm-status small.is-current{display:block}

.kitchen-check{display:block;margin:0 auto 12px;padding:10px 16px;background:var(--paper);color:var(--accent);border:1px solid #963f3166;border-radius:12px;font-size:18px;text-decoration:none}.kitchen-instruction{margin:8px 40px 24px 0;font-size:14px;color:var(--muted);line-height:1.6}.kitchen-dialog h2{font-size:clamp(25px,6.5vw,32px);line-height:1.5;margin:0;outline:none}.result-dialog::backdrop{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
@media(prefers-reduced-motion:no-preference){.result-dialog.is-closing::backdrop{animation:notice-backdrop-out .22s ease-in both}@keyframes notice-backdrop-out{from{background:#27332d66;backdrop-filter:blur(6px)}to{background:transparent;backdrop-filter:blur(0)}}}

.kitchen-dialog .kitchen-instruction,.kitchen-dialog h2{font-size:clamp(36px,10vw,48px);font-weight:600;line-height:1.5;color:var(--ink);text-wrap:pretty}.kitchen-dialog .kitchen-instruction{margin:0 0 24px;padding-inline-end:0}.kitchen-dialog{padding-block:64px}.kitchen-dialog h2{margin:0;padding-top:24px;border-top:1px solid var(--line)}

.staff-face{inset:auto;left:0;top:0;width:100%;height:100%;border:8px solid var(--sage);border-radius:24px;background:var(--sage);overflow:hidden;box-sizing:border-box}
.staff-scroll{border-radius:16px;background:var(--paper)}.staff-shell{padding-inline:18px}
.staff-confirm-bar{padding:16px 18px calc(24px + env(safe-area-inset-bottom));border-radius:0 0 16px 16px}
.card-flip-front{position:absolute;box-sizing:border-box;padding:18px;background:var(--sage);backface-visibility:hidden;overflow:hidden;pointer-events:none;transform-style:preserve-3d}
.card-flip-front .paper-card{transform:none;height:100%;min-height:0;padding:22px}
@media(max-width:760px){.staff-face{border-radius:0}.staff-scroll{border-radius:16px}.staff-confirm-bar{padding-inline:14px}.staff-shell{padding-inline:12px}}

.recommend-toggle:has(input:checked){background:var(--sage);border-color:#79896b}.recommend-toggle:active{background:var(--sage)}
@media(prefers-reduced-motion:no-preference){.recommend-toggle,.people-stepper button{transition:background-color .18s ease,border-color .18s ease}}

#staff-dialog[data-flipping=true] .staff-scroll{overflow:hidden;scrollbar-width:none}#staff-dialog[data-flipping=true] .staff-scroll::-webkit-scrollbar{display:none}

.kitchen-check{line-height:1.45;max-width:100%;text-wrap:balance}.kitchen-check span{display:inline-block;max-width:100%;vertical-align:top}.staff-confirm{font-size:20px}.staff-confirm-label small{font-size:16px}html[lang=ko] .kitchen-check{word-break:keep-all}

.staff-scroll{scrollbar-width:none}.staff-scroll::-webkit-scrollbar{width:0}#staff-dialog[data-scrolling=true]:not([data-flipping=true]) .staff-scroll{scrollbar-width:thin;scrollbar-color:#79896b80 transparent}#staff-dialog[data-scrolling=true]:not([data-flipping=true]) .staff-scroll::-webkit-scrollbar{width:4px}#staff-dialog .staff-scroll::-webkit-scrollbar-thumb{background:#79896b80;border-radius:4px}
.staff-scroll-hint{position:absolute;inset-inline:0;bottom:18px;display:flex;justify-content:center;opacity:0;pointer-events:none;color:var(--accent);z-index:1}#staff-dialog .staff-scroll-hint{opacity:var(--staff-fade-bottom,0)}
@media(prefers-reduced-motion:no-preference){.staff-scroll-hint{transition:opacity .25s ease}:is(.staff-scroll-hint,.result-scroll-hint) path{animation:scroll-hint 1.6s ease-in-out infinite}:is(.staff-scroll-hint,.result-scroll-hint) path:nth-child(2){animation-delay:.15s}:is(.staff-scroll-hint,.result-scroll-hint) path:nth-child(3){animation-delay:.3s}}

.recommend-toggle{position:relative;align-items:center}.recommend-toggle input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.recommend-check{display:grid;place-items:center;width:24px;height:24px;flex:none;color:#315c40;border:1.5px solid #79896b;border-radius:6px;background:var(--paper)}.recommend-check svg{display:block}.recommend-check path{stroke-dasharray:1;stroke-dashoffset:1;opacity:0}.recommend-toggle:has(input:checked) .recommend-check{color:#315c40;border-color:#315c40}.recommend-toggle:has(input:checked) .recommend-check path{stroke-dashoffset:0;opacity:1}.recommend-toggle:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:3px}
@media(prefers-reduced-motion:no-preference){.recommend-check{transition:background-color .2s ease,color .2s ease}.recommend-check path{transition:stroke-dashoffset .15s ease,opacity .15s ease}.recommend-toggle:has(input:checked) .recommend-check svg{animation:recommend-check-bounce .7s both}.recommend-toggle:has(input:checked) .recommend-check path{transition:stroke-dashoffset .3s ease-out,opacity .1s ease}@keyframes recommend-check-bounce{0%,43%{transform:scale(2.8)}75%{transform:scale(.85)}90%{transform:scale(1.08)}100%{transform:scale(1)}}}

.kitchen-check:hover{background:var(--pink);border-color:var(--accent)}.kitchen-check:active{background:var(--pink)}
@media(prefers-reduced-motion:no-preference){.kitchen-check{transition:background-color .18s ease,border-color .18s ease}}

.staff-allergies .allergy-heading{display:flex;align-items:flex-start;gap:8px}.staff-allergies .allergy-heading>span{line-height:1.35}.allergy-warning{width:1.35em;height:1.35em;flex:none;color:var(--accent)}

.staff-instruction{position:sticky;top:0;z-index:2;background:var(--paper);padding-block:16px 8px;margin-top:0}.staff-instruction::after{content:"";position:absolute;inset-inline:0;top:100%;height:12px;background:linear-gradient(var(--paper),transparent)}.staff-instruction strong{font-weight:700;color:var(--accent)}

.flow-step[data-step=card],#staff-dialog .staff-region,#staff-dialog .staff-scroll{touch-action:pan-y pinch-zoom}

.flow-step .card-preview,.card-flip-front{box-shadow:0 4px 10px #27332d18,0 18px 40px #315c4033}.flow-step .paper-card,.card-flip-front .paper-card{box-shadow:none}.staff-scroll{box-shadow:0 0 8px #27332d0c}

.flow-heading{overflow-wrap:normal}
@media(max-width:760px){.flow-step:is([data-step=allergies],[data-step=diet],[data-step=taste],[data-step=recommend]) .flow-heading{font-size:28px}}

#staff-dialog:focus-visible{outline:none}

.staff-scroll-shade{padding:0;background:transparent;position:absolute;inset-inline:8px;bottom:var(--staff-actions-visible-height);height:clamp(80px,13svh,120px);pointer-events:none;z-index:3}

@media(prefers-reduced-motion:no-preference){.flow-step[data-step=card]:not([data-entered=true])>.flow-inner>:is(.card-review,.card-preview,.flow-card-actions){opacity:0}}

.card-export-language{margin:0 0 10px;font-size:13px;font-weight:500;line-height:1.5;color:var(--muted);text-align:start}.card-export-actions{display:flex;gap:10px}.card-export-actions .secondary{display:flex;align-items:center;justify-content:center;gap:8px}.card-export-actions svg{width:18px;height:18px;flex:none}.flow-card-actions .card-export-actions .secondary{flex:1;max-width:none;min-width:0;font-size:14px;padding:10px 12px;line-height:1.4}.staff-back:disabled{opacity:0}

.staff-confirm-bar{position:sticky;bottom:calc(-1 * var(--staff-confirm-reveal-height));z-index:4}.staff-confirm-bar .kitchen-check{margin-bottom:24px}

.staff-scroll-hint svg{width:32px;height:44px;filter:drop-shadow(0 0 3px var(--paper)) drop-shadow(0 0 8px var(--paper))}

.help-staff-sample{background:var(--sage);padding:8px;margin-top:0;border-radius:24px;box-shadow:0 3px 8px #27332d0a,0 12px 28px #315c4014}.help-sample-paper{background:#fff;padding:16px;border-radius:16px}.help-staff-sample .staff-allergies{margin:0 0 20px;padding:14px;border-radius:12px}.help-staff-sample .staff-heading{font-size:18px;margin:0 0 12px;color:var(--ink)}.help-staff-sample .allergy-heading{color:var(--accent);font-size:18px}.help-staff-sample .staff-row{font-size:16px;line-height:1.65;color:var(--ink);padding:14px;margin:0;border-radius:8px}.help-staff-sample .staff-allergies .staff-row{padding:14px}

.footer-brand{color:var(--accent)}.card-slogan{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:4px 0 0;color:var(--muted);font-size:13px;font-weight:400;line-height:1.5;text-align:left}.card-slogan .footer-brand{font-weight:650;direction:ltr}

.interface-language-control{display:flex;align-items:center;gap:8px}.interface-language-control>.language-globe{display:block}
@media(max-width:480px){.interface-language-control{gap:6px}.site-header .brand-icon{display:none}}

.home-card-footer{flex:none;width:100%;margin-top:auto;padding:32px 0 calc(12px + env(safe-area-inset-bottom));background:var(--bg)}.home-card-footer .card-slogan{margin:0}

#staff-dialog[data-flipping=true]{overflow:visible}#staff-dialog .staff-region{z-index:1}#staff-dialog[data-flipping=true][data-flip-direction=to-staff] .staff-region{z-index:3}
@media(prefers-reduced-motion:no-preference){.flow-viewport[data-choice-entrance=true] .choices:not([data-revealed=true]) .choice,.flow-viewport[data-choice-entrance=true] .choices:not([data-revealed=true]) + .more-options > summary{opacity:0}}
.preview-group + .preview-group,.preview-group + .preview-recommend{border-top:1px dashed var(--line);padding-top:12px}.preview-group + .preview-recommend{margin-top:12px}

#help-close{border:0;box-shadow:0 2px 10px #27332d18}.result-close{box-shadow:0 0 0 4px var(--paper)}

@media(max-width:760px){.flow-step[data-step=card]{padding-inline:24px}}

.flow-scroll-shade{position:absolute;inset-inline:0;bottom:0;height:48px;background:linear-gradient(to bottom,transparent,var(--bg));opacity:0;pointer-events:none;z-index:1}

.help-dialog::before,.help-dialog::after{content:"";position:absolute;inset-inline:0;height:64px;z-index:1;pointer-events:none;opacity:0}.help-dialog::before{opacity:var(--scroll-fade-top,0);top:0;background:linear-gradient(to bottom,var(--paper) 20%,transparent)}.help-dialog::after{opacity:var(--scroll-fade-bottom,0);height:112px;bottom:0;background:linear-gradient(to top,var(--paper) 30%,transparent)}
@media(prefers-reduced-motion:no-preference){.help-dialog[open].is-closing{animation:help-out .18s ease-in both}.help-dialog[open].is-closing::backdrop{animation:dialog-backdrop-out .18s ease-in both}@keyframes help-out{from{opacity:1}to{opacity:0}}@keyframes dialog-backdrop-out{from{background:#27332d66}to{background:#27332d00}}}

.wordmark{display:inline-block;width:5.3184em;height:1.1777em;vertical-align:middle;flex:none}.brand .wordmark{display:block}

#result-dialog{padding:0;overflow:hidden}#result-dialog .result-content{max-height:calc(100dvh - 34px);overflow-y:auto;overscroll-behavior:contain}#result-dialog .result-body{padding:30px}#result-dialog .result-close{z-index:2}#result-dialog::before,#result-dialog::after{content:"";position:absolute;inset-inline:0;height:32px;pointer-events:none;z-index:1}#result-dialog::before{top:0;background:linear-gradient(to bottom,var(--paper),transparent);opacity:var(--scroll-fade-top,0)}#result-dialog::after{height:112px;bottom:0;background:linear-gradient(to top,var(--paper) 30%,transparent);opacity:var(--scroll-fade-bottom,0)}
@media(max-width:760px){#result-dialog .result-body{padding:22px}}

#result-dialog .result-scroll-hint{position:absolute;inset-inline-start:calc(50% - 22px);bottom:6px;width:44px;height:44px;display:grid;place-items:center;background:transparent;color:var(--accent);z-index:2;opacity:var(--scroll-fade-bottom,0)}#result-dialog .result-scroll-hint svg{filter:drop-shadow(0 0 4px var(--paper))}


.footer-brand .wordmark{font-size:1.15em;vertical-align:-.21em}

@media(hover:hover) and (pointer:fine){.card-export-actions .secondary:not(:disabled):hover{background:#fff;border-color:#a8b0a2}}
@media(prefers-reduced-motion:no-preference){.card-export-actions .secondary{transition:background-color .2s ease,border-color .2s ease}}
