.home-page{max-width:1280px;margin-inline:auto;padding:48px 48px 64px}.home-start{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);align-items:start;gap:clamp(32px,5vw,72px);padding-bottom:48px;display:grid}.home-page .section-label{margin:0 0 12px}.home-find h1{margin-bottom:20px;font-size:clamp(36px,4.1vw,54px);line-height:1.1}.home-lead{max-width:60ch;color:var(--muted);font-size:18px}.home-search{margin-top:28px}.home-search label{margin-bottom:8px;font-weight:700;display:block}.home-search-controls{align-items:stretch;gap:8px;display:flex}.home-search-controls input{border:1px solid var(--border);background:var(--surface);width:100%;min-width:0;min-height:48px;color:var(--ink);font:inherit;border-radius:5px;flex:180px;padding:12px}.home-search-controls .button{flex:none}.home-start-links{flex-wrap:wrap;gap:4px 24px;margin-top:8px;display:flex}.home-start-links a{align-items:center;min-height:44px;display:inline-flex}.home-saved{background:var(--subdued);border-radius:6px;padding:24px}.home-saved h2{font-size:clamp(26px,2.5vw,32px)}.home-saved>.button{margin:4px 0 16px}.home-saved>a:last-child{align-items:center;min-height:44px;display:inline-flex}.home-fine-print{color:var(--muted);font-size:14px}.home-local{border-top:1px solid var(--border);padding-top:32px}.home-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:8px 24px;display:flex}.home-section-heading h2{margin-bottom:0}.home-section-heading>a{align-items:center;min-height:44px;display:inline-flex}.home-local>p{max-width:80ch;color:var(--muted)}.home-town-list,.home-town-restaurants{margin:0;padding:0;list-style:none}.home-town-list{border-top:1px solid var(--border);margin-block:24px}.home-town-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(140px,.65fr) minmax(0,2fr);gap:8px 32px;padding-block:12px;display:grid}.home-town-name{align-self:start;align-items:center;min-height:44px;font-weight:700;display:inline-flex}.home-town-restaurants li{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 24px;display:flex}.home-town-restaurants a{align-items:center;min-height:44px;padding-block:8px;display:inline-flex}.home-town-restaurants span{color:var(--muted);font-size:14px}.home-directory-note{font-size:15px}.home-map-privacy{color:var(--muted);margin-top:8px;font-size:14px}.home-map-privacy summary{cursor:pointer;min-height:44px;color:var(--ink);align-content:center;font-weight:700}.home-map-privacy p{max-width:90ch;margin-top:4px}.home-how{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:24px 64px;margin-top:40px;padding-top:32px;scroll-margin-top:96px;display:grid}.home-how>div>p:last-child{color:var(--muted);max-width:44ch}.home-how-list{margin:0;padding-left:24px}.home-how-list li{padding-left:8px}.home-how-list li+li{margin-top:24px}.home-how-list h3{margin-bottom:6px;font-family:inherit;font-size:17px;font-weight:700}.home-how-list p{color:var(--muted);margin:0}.home-page a:hover{text-decoration-thickness:2px}.home-page :is(a,button,input,summary):focus-visible{outline:3px solid var(--primary);outline-offset:4px}@media (width<=1100px){.home-page{padding-inline:32px}.home-search-controls{flex-wrap:wrap}}@media (width<=760px){.home-page{padding:28px 24px 48px}.home-start,.home-how{grid-template-columns:minmax(0,1fr);gap:28px}.home-start{padding-bottom:32px}.home-saved{padding:20px}.home-town-row{grid-template-columns:minmax(0,1fr);gap:0}.home-town-restaurants li{justify-content:start;gap:0 16px}.home-how{margin-top:28px}}@media (width<=480px){.home-page{padding-inline:20px}.home-search-controls{flex-direction:column}.home-search-controls input{flex-basis:auto}.home-town-restaurants li{padding-bottom:8px;display:block}.home-town-restaurants span{display:block}}.restaurants-page{min-width:0}.restaurants-heading{margin-bottom:24px}.restaurants-heading h1{margin-bottom:8px}.restaurants-heading p{max-width:70ch;margin-bottom:0}.restaurants-views{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px 24px;margin-bottom:28px;display:flex}.restaurants-views a{min-height:48px;color:var(--muted);border-bottom:3px solid #0000;align-items:center;margin-bottom:-1px;padding:8px 0;text-decoration:none;display:inline-flex}.restaurants-views a[aria-current=page]{border-bottom-color:var(--primary);color:var(--ink);font-weight:700}.restaurants-views a:hover{color:var(--primary);text-underline-offset:4px;text-decoration:underline}.restaurants-intro{max-width:78ch;color:var(--muted);margin:0 0 16px}.restaurants-intro h2{margin-bottom:8px}.restaurants-intro p{color:var(--muted);margin:0}.restaurants-filters{border:1px solid var(--border);background:var(--surface);border-radius:6px;grid-template-columns:minmax(0,1fr) minmax(160px,.6fr) auto;align-items:end;gap:16px;margin:0 0 24px;padding:20px;display:grid}.restaurants-filters .field{min-width:0;margin:0}.restaurants-filters label{margin-bottom:6px;font-weight:600;display:block}.restaurants-filters input,.restaurants-filters select{min-height:44px}.restaurants-search{grid-template-columns:minmax(0,1fr) auto}.restaurants-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.restaurants-actions .button{white-space:normal;text-align:center}.restaurants-count{margin:20px 0 12px;font-family:inherit;font-size:16px;font-weight:600;line-height:1.6}.restaurants-list{border-top:1px solid var(--border)}.restaurants-card{border-bottom:1px solid var(--border);overflow-wrap:anywhere;min-width:0;padding:22px 0}.restaurants-card-heading{justify-content:space-between;align-items:flex-start;gap:16px 24px;display:flex}.restaurants-card-heading>div:first-child{min-width:0}.restaurants-card h3{margin:0 0 6px;font-size:24px;line-height:1.25}.restaurants-card .metadata{margin:0}.restaurants-address{margin:8px 0 0}.restaurants-note{border-left:3px solid var(--border);background:var(--subdued);margin:12px 0 0;padding:10px 12px;font-size:14px}.restaurants-sources{color:var(--muted);overflow-wrap:anywhere;margin-top:12px;font-size:14px}.restaurants-sources summary{cursor:pointer;min-height:44px;color:var(--ink);padding:10px 0;font-weight:600;display:list-item}.restaurants-sources p{max-width:85ch;margin:8px 0}.restaurants-sources blockquote{border-left:2px solid var(--border);max-width:75ch;margin:12px 0;padding-left:16px}.restaurants-footnote{max-width:80ch;color:var(--muted);margin-top:28px;font-size:14px}.restaurants-footnote p{margin-bottom:8px}.restaurants-back{align-items:center;min-height:44px;margin-bottom:16px;display:inline-flex}.restaurants-notice{max-width:80ch;color:var(--muted)}.restaurants-dishes{gap:0}.restaurants-dishes>li{overflow-wrap:anywhere;border-top:1px solid var(--border);min-width:0;padding:20px 0}.restaurants-dishes>li>p{max-width:80ch}.restaurants-pagination{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:20px;display:flex}.restaurants-pagination span{font-size:14px}.restaurants-page :is(a,button,input,select,summary):focus-visible,.restaurants-menu-list :is(a,button,input,summary):focus-visible{outline:3px solid var(--primary);outline-offset:3px}.restaurants-page button:disabled{cursor:not-allowed;opacity:.5}@media (width<=899px){.restaurants-filters{grid-template-columns:minmax(0,1fr) minmax(160px,.7fr)}.restaurants-filters>.restaurants-actions{grid-column:1/-1}.restaurants-search{grid-template-columns:minmax(0,1fr)}}@media (width<=599px){.restaurants-heading{margin-bottom:16px}.restaurants-views{gap:8px 20px;margin-bottom:24px}.restaurants-filters{grid-template-columns:minmax(0,1fr);gap:14px;padding:16px}.restaurants-card-heading{flex-direction:column;gap:12px}.restaurants-card-heading .restaurants-actions{width:100%}.restaurants-card h3{font-size:22px}.restaurants-pagination{gap:8px}.restaurants-pagination .button{padding-inline:12px}}.map-page{min-width:0}.map-page .page-heading{margin-bottom:20px}.map-page .page-heading h1{margin:6px 0 8px}.map-limitation{border-left:3px solid var(--border);background:var(--subdued);max-width:80ch;margin:0 0 16px;padding:10px 12px;font-size:14px}.map-filters{border:1px solid var(--border);background:var(--surface);border-radius:6px;grid-template-columns:minmax(0,1fr) minmax(160px,.6fr) auto;align-items:end;gap:16px;margin:20px 0 28px;padding:20px;display:grid}.map-filters .field{min-width:0;margin:0}.map-filter-actions,.map-frame-actions{flex-wrap:wrap;gap:8px;display:flex}.map-layout{grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start;gap:32px;display:grid}.map-list,.map-location{overflow-wrap:anywhere;min-width:0}.map-list h2{margin-bottom:6px;font-size:22px}.map-list>p{color:var(--muted);font-size:14px}.map-restaurant-list{border-top:1px solid var(--border);margin:0 0 12px;padding:0;list-style:none}.map-restaurant-list li{border-bottom:1px solid var(--border)}.map-restaurant-choice{width:100%;min-height:0;color:var(--ink);border-left:3px solid #0000;gap:2px;padding:12px 12px 12px 14px;text-decoration:none;display:grid}.map-restaurant-choice:hover{background:var(--subdued);color:var(--ink);text-decoration:none}.map-restaurant-choice[aria-current=location]{border-left-color:var(--primary);background:var(--subdued)}.map-restaurant-name{font-weight:700}.map-restaurant-meta,.map-choice-label{color:var(--muted);font-size:14px}.map-choice-label{color:var(--primary);font-weight:600}.map-location h2{margin-bottom:4px}.map-selected-address{color:var(--muted)}.map-external-links{flex-wrap:wrap;align-items:center;gap:8px 20px;margin:16px 0;display:flex}.map-consent{border:1px solid var(--border);background:var(--surface);border-radius:6px;justify-items:start;gap:8px;margin-bottom:16px;padding:24px;display:grid}.map-consent h3{margin:0}.map-consent p{max-width:70ch;color:var(--muted);margin:0}.map-frame-status{color:var(--muted);margin:0 0 8px;font-size:14px}.map-frame{border:1px solid var(--border);background:var(--subdued);border-radius:6px;width:100%;height:clamp(320px,55vh,560px);display:block}.map-frame-actions{margin:12px 0}.map-provider-note,.map-coordinate-note{max-width:75ch;color:var(--muted);font-size:14px}.map-empty{background:var(--subdued);border-radius:6px;padding:20px}.map-empty>*+*{margin-top:8px}@media (width<=899px){.map-filters{grid-template-columns:minmax(0,1fr) minmax(160px,.7fr)}.map-filter-actions{grid-column:1/-1}.map-layout{grid-template-columns:minmax(0,1fr);gap:24px}.map-location{order:-1}}@media (width<=599px){.map-filters{grid-template-columns:minmax(0,1fr);padding:16px}.map-consent{padding:16px}.map-frame{height:340px}}.auth-page{color:var(--ink);flex-direction:column;align-items:center;display:flex}.auth-card,.original-contact form{background:var(--surface);border:1px solid var(--border);border-radius:8px;width:100%;padding:32px}.auth-card{max-width:520px}.auth-brandmark{align-items:center;gap:10px;margin-bottom:20px;display:flex}.auth-brandmark img{object-fit:contain;flex:none}.auth-preview{color:var(--muted);margin-bottom:24px;font-size:14px}.auth-subtitle{color:var(--muted);overflow-wrap:anywhere;align-items:center;gap:10px;margin-bottom:24px;display:flex}.auth-subtitle-avatar{background:var(--subdued);height:32px;color:var(--primary);border-radius:50%;flex:0 0 32px;justify-content:center;align-items:center;font-weight:700;display:flex}.auth-form{flex-direction:column;display:flex}.auth-field{position:relative}.auth-page .auth-input{background:var(--surface);min-height:64px;color:var(--ink);border:1px solid var(--border);border-radius:4px;padding:28px 12px 8px;font-size:16px;display:block}.auth-input:hover{border-color:var(--primary)}.auth-page .auth-input--error{border-color:var(--error)}.auth-label{color:var(--muted);pointer-events:none;font-size:14px;line-height:1.4;position:absolute;top:7px;left:13px}.auth-error{color:var(--error);align-items:flex-start;gap:8px;margin:12px 0 0;font-size:14px;display:flex}.auth-error-icon{background:var(--error);clip-path:polygon(50% 6%,4% 94%,96% 94%);flex:0 0 14px;height:14px;margin-top:3px}.auth-link{width:fit-content;margin-top:12px;font-size:14px}.auth-checkbox{min-height:44px;color:var(--muted);align-items:center;gap:10px;margin-top:16px;font-size:14px;display:flex}.auth-checkbox input{width:20px;height:20px;accent-color:var(--primary);flex:0 0 20px}.auth-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.auth-button{min-width:100px}.auth-divider{color:var(--muted);align-items:center;gap:12px;margin:24px 0 16px;font-size:14px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-alt-options{gap:12px;display:flex}.auth-alt-button{flex:1}.auth-form .auth-field+.auth-field,.auth-form .field-error+.auth-field{margin-top:16px}.auth-form .auth-field+.auth-preview{margin:6px 0 0}.auth-footer{width:100%;max-width:520px;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;margin-top:16px;font-size:14px;display:flex}.auth-footer-links{flex-wrap:wrap;gap:16px;display:flex}.original-contact .form-container{justify-content:center;display:flex}.original-contact form{flex-direction:column;gap:8px;max-width:680px;display:flex}.original-contact h1{margin-bottom:12px}.original-contact p{color:var(--muted);margin-bottom:16px}.original-contact p.warning{color:var(--warning-text)}.original-contact label{font-weight:600}.original-contact input{min-height:48px;padding:12px}.original-contact textarea{border:1px solid var(--border);background:var(--surface);width:100%;min-width:0;min-height:144px;color:var(--ink);resize:vertical;border-radius:4px;padding:12px}.original-contact :is(input,textarea)::placeholder{color:var(--muted);opacity:1}.original-contact :is(input,textarea)+label{margin-top:12px}.turnstile-wrap{min-height:65px;margin-top:16px}.turnstile-notice{color:var(--muted);margin:0;font-size:14px}.original-contact :is(textarea,.turnstile-wrap)+button{margin-top:16px}.original-contact .contact-feedback:empty{display:none}.original-contact .contact-feedback{color:var(--ink);margin:12px 0 0;font-weight:600}.original-contact .contact-feedback--error{color:var(--error)}.original-contact .contact-links{margin:8px 0 0;font-size:14px}@media (width<=699px){.auth-card,.original-contact form{padding:24px}}@media (width<=359px){.auth-card,.original-contact form{padding:16px}}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/dm-sans-400.ttf)format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/dm-sans-500.ttf)format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/dm-sans-600.ttf)format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/dm-sans-700.ttf)format("truetype")}@font-face{font-family:DM Serif Display;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/dm-serif-display.ttf)format("truetype")}:root{color:#24372e;font-synthesis:none;--background:#f8f7f1;--surface:#fffefa;--ink:#24372e;--muted:#405448;--primary:#294a35;--subdued:#e9ede2;--border:#738174;--warning-surface:#fff1d6;--warning-text:#704400;--error:#a12b27;background:#f8f7f1;font-family:DM Sans,system-ui,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.5}button,input,select,textarea{font:inherit;color:inherit}a{max-width:100%;min-height:44px;color:var(--primary);text-underline-offset:.2em;align-items:center;text-decoration:underline;display:inline-flex}a:hover{color:var(--ink);text-decoration-thickness:2px}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--primary);outline-offset:4px}main:focus{outline:none}h1,h2,h3{overflow-wrap:anywhere;font-family:DM Serif Display,Georgia,serif;font-weight:400;line-height:1.15}h1{letter-spacing:-.03em;text-wrap:balance;margin:0 0 20px;font-size:clamp(32px,4vw,48px)}h2{margin:0 0 14px;font-size:clamp(24px,2.3vw,30px)}h3{margin:0 0 12px;font-size:clamp(20px,2vw,24px)}p{overflow-wrap:anywhere;margin:0 0 16px}code{overflow-wrap:anywhere;font-size:.95em}.section-wrap{width:100%;max-width:1280px;margin-inline:auto;padding-inline:48px}.site-shell{flex-direction:column;min-height:100vh;display:flex}main{flex:1;min-width:0;padding-top:48px;padding-bottom:72px}.skip-link{z-index:10;background:var(--surface);min-height:44px;padding:12px 16px;position:absolute;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{background:var(--background);border-bottom:1px solid var(--border)}.header-inner{align-items:center;gap:24px;min-height:80px;padding-block:12px;display:flex}.wordmark{letter-spacing:-.08em;white-space:nowrap;align-items:center;gap:9px;min-height:44px;font-size:27px;font-weight:700;text-decoration:none;display:inline-flex}.wordmark-icon{object-fit:contain;flex:none;width:50px;height:50px;display:block}.wordmark-accent,.wordmark-period{color:var(--primary)}.header-navigation{flex:1;justify-content:flex-end;align-items:center;gap:24px;min-width:0;display:flex}.header-links,.header-utilities{flex-wrap:wrap;align-items:center;gap:4px 18px;display:flex}.header-utilities{border-left:1px solid var(--border);padding-left:24px}.header-navigation a{min-height:44px;font-size:15px;font-weight:600;text-decoration:none}.header-navigation a:hover,.header-navigation a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px}.header-navigation a[aria-current=page]{color:var(--ink)}.menu-toggle{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:4px;min-height:44px;padding:8px 12px;font-weight:600;display:none}.menu-toggle:hover{background:var(--subdued)}.status-wrap:empty{display:none}.status-wrap{padding-top:16px;font-size:14px}.status-wrap p:last-child{margin-bottom:0}.page-heading{margin-bottom:36px}.page-heading p{max-width:78ch;color:var(--muted);font-size:17px;line-height:1.65}.prose{max-width:78ch}.prose>h2{margin-top:28px}.prose>.page-heading{margin-top:0}.small{font-size:14px}.muted,.metadata{color:var(--muted)}.metadata{font-size:14px}.panel,.example-card,.empty-state{min-width:0}.panel{border-top:1px solid var(--border);padding-block:24px}.empty-state{background:var(--subdued);border-radius:8px;padding:24px}.warning{color:var(--warning-text);background:var(--warning-surface);border-left:3px solid var(--warning-text);border-radius:4px;padding:12px 16px}.warning>:last-child,.panel>:last-child,.empty-state>:last-child{margin-bottom:0}.actions{flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0;display:flex}.actions>a:not(.button){align-items:center;min-height:44px;display:inline-flex}.button{border:1px solid var(--border);background:var(--surface);min-height:48px;color:var(--primary);cursor:pointer;white-space:normal;text-align:center;overflow-wrap:anywhere;border-radius:5px;justify-content:center;align-items:center;padding:12px 20px;font-weight:700;line-height:1.5;text-decoration:none;transition:background-color .12s,color .12s;display:inline-flex}.button:hover{background:var(--subdued);color:var(--ink)}.button.button-primary{background:var(--primary);border-color:var(--primary);color:var(--surface)}.button.button-primary:hover{background:var(--ink)}.button.button-text{border:0;border-bottom:1px solid var(--primary);background:0 0;border-radius:0;padding:8px 0}.button:disabled{color:var(--muted);background:var(--subdued);cursor:not-allowed;border-style:dashed}.home-main{padding:0}.section-label{color:var(--primary);font-size:15px;font-weight:700;line-height:1.5;display:block}.inline-link{border-bottom:1px solid var(--primary);min-height:48px;font-weight:700;text-decoration:none}dl{margin:16px 0 0}dt{margin-top:16px;font-weight:700}dd{overflow-wrap:anywhere;margin:4px 0 16px}.section-block{margin-top:32px}details{border-top:1px solid var(--border);margin-top:12px}summary{cursor:pointer;overflow-wrap:anywhere;min-height:44px;padding-block:10px;font-weight:600}summary:hover{color:var(--primary);text-decoration:underline}details p{margin-block:8px 16px}.search-layout{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:28px;display:grid}.filter-panel{background:var(--subdued);border:0;border-radius:8px;padding:20px}.field{margin-bottom:16px}.field label{margin-bottom:6px;font-weight:600;display:block}input:not([type=checkbox]),select{background:var(--surface);border:1px solid var(--border);border-radius:4px;width:100%;min-height:44px;padding:8px}fieldset{border:0;min-width:0;margin:20px 0 12px;padding:0}legend{margin-bottom:8px;padding:0;font-weight:600}.checkbox-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 16px;display:grid}.filter-panel .checkbox-grid{grid-template-columns:1fr}.check-option{cursor:pointer;overflow-wrap:anywhere;align-items:center;gap:10px;min-height:44px;display:flex}.check-option input{width:20px;height:20px;accent-color:var(--primary);flex:0 0 20px;margin:0}.filter-panel .actions{flex-direction:column;align-items:stretch}.results{min-width:0}.results>section{margin-top:28px}.results>section>h2{font-size:24px}.count{font:16px/1.5 DM Sans,system-ui,Arial,sans-serif}.requirement-summary{background:var(--subdued);overflow-wrap:anywhere;margin-bottom:20px;padding:16px}.requirement-summary p{margin:8px 0}.example-card{border-top:1px solid var(--border);margin-bottom:16px;padding-block:24px}.card-heading{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:12px;margin-bottom:8px;display:flex}.card-heading h3{letter-spacing:-.02em;flex:200px;margin-bottom:0;font-size:clamp(24px,2.4vw,30px)}.card-heading .button{flex:0 auto}.example-card>p{margin-bottom:12px}.example-card details{font-size:14px}.evidence-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.site-footer{border-top:1px solid var(--border)}.footer-inner{flex-wrap:wrap;align-items:center;gap:12px 24px;min-height:104px;padding-block:20px;font-size:14px;display:flex}.footer-inner>span{color:var(--muted);margin-right:auto}.site-footer .wordmark{font-size:23px}.site-footer .wordmark-icon{width:40px;height:40px}.footer-inner a{align-items:center;min-height:44px;display:inline-flex}@media (width<=1100px){.section-wrap{padding-inline:32px}}@media (width<=480px){.section-wrap{padding-inline:20px}}@media (width<=360px){.section-wrap{padding-inline:16px}}@media (width<=1023px){.header-inner{flex-wrap:wrap;justify-content:space-between;gap:8px 16px;min-height:68px}.menu-toggle{justify-content:center;align-items:center;display:inline-flex}.header-navigation{flex:1 0 100%;align-items:stretch;padding-block:8px 4px;display:none}.header-navigation.is-open{flex-direction:column;gap:12px;display:flex}.header-links{flex-direction:column;align-items:stretch;gap:0;display:flex}.header-navigation a{border-radius:4px;padding:8px 12px}.header-navigation a[aria-current=page]{background:var(--subdued)}.header-utilities{border-left:0;border-top:1px solid var(--border);gap:4px 16px;padding:12px 0 0}.search-layout{grid-template-columns:minmax(0,1fr)}.filter-panel .checkbox-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-panel .actions{flex-direction:row}}@media (width<=699px){main{padding-top:24px;padding-bottom:32px}.wordmark{gap:5px;font-size:23px}.wordmark-icon{width:38px;height:38px}.evidence-fields{grid-template-columns:minmax(0,1fr)}.filter-panel,.empty-state{padding:16px}.checkbox-grid,.filter-panel .checkbox-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr))}.card-heading h3,.footer-inner>span{flex-basis:100%}}@media (width<=359px){.checkbox-grid,.filter-panel .checkbox-grid{grid-template-columns:minmax(0,1fr)}}.ai-chatbot-root{min-width:0}.ai-chatbot-launcher{z-index:20;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;min-height:56px;padding:0;display:inline-flex;position:fixed;bottom:20px;right:20px;box-shadow:0 4px 16px #0000002e}.ai-chatbot-panel{z-index:20;background:var(--surface);width:min(420px,100vw - 32px);max-height:min(620px,100dvh - 108px);color:var(--ink);border:2px solid var(--primary);border-radius:8px;flex-direction:column;display:flex;position:fixed;bottom:88px;right:20px;overflow:hidden}.ai-chatbot-panel[hidden]{display:none}.ai-chatbot-header{background:var(--subdued);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.ai-chatbot-header h2{margin:0;font-size:22px}.ai-chatbot-close{min-height:44px;padding:8px 14px}.ai-chatbot-body{flex:1;min-height:0;padding:16px;overflow-y:auto}.ai-chatbot-profile-summary{background:var(--subdued);border:1px solid var(--border);border-radius:4px;margin-bottom:14px;padding:10px 12px}.ai-chatbot-profile-summary p{margin:0 0 4px}.ai-chatbot-body textarea{border:1px solid var(--border);background:var(--surface);width:100%;min-height:88px;color:var(--ink);font:inherit;resize:vertical;border-radius:4px;padding:10px;display:block}.ai-response{white-space:pre-wrap;overflow-wrap:anywhere}@media (width<=480px){.ai-chatbot-launcher{bottom:12px;right:12px}.ai-chatbot-panel{width:auto;max-height:calc(100dvh - 92px);bottom:80px;left:12px;right:12px}}.restaurant-filters{grid-template-columns:minmax(0,1fr) minmax(160px,.5fr) auto;align-items:end;gap:16px;margin-bottom:16px;display:grid}.restaurant-filters .field,.restaurant-filters .actions{margin:0}.restaurant-candidate blockquote{border-left:3px solid var(--border);color:var(--muted);margin:12px 0;padding-left:16px}.restaurant-candidate .button{gap:8px}@media (width<=1023px){.restaurant-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.restaurant-filters .actions{grid-column:1/-1}}@media (width<=699px){.restaurant-filters{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.form-error-summary{border:1px solid var(--error);border-radius:4px;margin-bottom:20px;padding:16px}.form-error-summary h2{margin-bottom:8px;font-size:20px}.form-error-summary ul{margin:0;padding-left:20px}.field-error{color:var(--error);margin:6px 0 0;font-size:14px}.live-result{border-top:1px solid var(--border);padding-block:24px}.menu-items{gap:20px;margin:16px 0 0;padding:0;list-style:none;display:grid}.menu-items h3,.menu-items h4{margin-bottom:4px;font-size:22px}.item-meta{color:var(--muted);margin:4px 0 0;font-size:14px}.repeat-group{border-top:1px solid var(--border);margin-top:20px;padding-top:20px}.inline-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;display:grid}@media (width<=699px){.inline-fields{grid-template-columns:minmax(0,1fr)}}.live-form{max-width:78ch}.live-textarea{border:1px solid var(--border);background:var(--surface);resize:vertical;border-radius:4px;width:100%;min-height:96px;padding:12px;display:block}
