.restaurant-provenance{border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:13px;margin-top:13px;padding:11px 13px;font-size:14px;line-height:1.5}.restaurant-provenance-status{margin:0;font-weight:700}.restaurant-provenance-status.is-candidate{color:var(--warn-ink)}.restaurant-provenance-sources summary{min-height:44px;color:var(--red-dark);cursor:pointer;align-items:center;margin-top:3px;font-weight:700;list-style:none;display:flex}.restaurant-provenance-sources summary::-webkit-details-marker{display:none}.restaurant-provenance-sources summary:after{content:"⌄";margin-left:auto;font-size:19px}.restaurant-provenance-sources[open] summary:after{content:"⌃"}.restaurant-provenance-sources summary:focus-visible,.restaurant-provenance-sources a:focus-visible{outline:3px solid var(--red);outline-offset:2px;border-radius:5px}.restaurant-provenance-sources ul{margin:0;padding:0;list-style:none}.restaurant-provenance-sources li{border-top:1px solid var(--line)}.restaurant-provenance-sources a{min-height:44px;color:var(--red-dark);overflow-wrap:anywhere;align-items:center;font-weight:650;text-decoration:underline;display:flex}.restaurant-provenance-note,.restaurant-provenance-empty{color:var(--text-muted);margin:5px 0 0;font-size:13px;line-height:1.5}.restaurant-provenance-compact{margin-top:7px;padding:8px 10px}.restaurant-provenance-compact .restaurant-provenance-sources summary{margin-top:0}:root[data-theme=dark] .restaurant-provenance{background:var(--surface-2)}:root[data-theme=dark] .restaurant-provenance-status.is-candidate{color:var(--warn-ink)}:root[data-theme=dark] .restaurant-provenance-sources summary,:root[data-theme=dark] .restaurant-provenance-sources a{color:var(--brand-ink)}.saved-comparison{color:var(--ink);overflow-wrap:anywhere;margin-top:20px}.saved-comparison .comparison-muted{color:var(--text-muted);margin:8px 0 12px;font-size:13px;line-height:1.6}.comparison-picker{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.comparison-picker legend{margin-bottom:8px;font-size:14px;font-weight:650}.comparison-option{border:1px solid var(--line);background:var(--cream);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:44px;padding:10px 12px;font-size:14px;display:flex}.comparison-option.is-selected{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}.comparison-option input{width:20px;height:20px;accent-color:var(--red);flex:none}.comparison-option:has(input:disabled){cursor:default}.comparison-option:has(input:focus-visible){outline:3px solid var(--red);outline-offset:3px}.comparison-option:active{border-color:var(--red)}.comparison-share{margin:12px 0}.comparison-share>button{border:1px solid var(--red);background:var(--cream);min-height:44px;color:var(--red);font:inherit;cursor:pointer;border-radius:12px;padding:10px 14px;font-size:14px;font-weight:650}.comparison-share>button:active{transform:scale(.98)}.comparison-share .comparison-muted:empty{display:none}.comparison-share-fallback{gap:6px;font-size:13px;font-weight:650;display:grid}.comparison-share-fallback textarea{border:1px solid var(--line);background:var(--cream);width:100%;min-height:88px;color:var(--ink);font:inherit;resize:vertical;border-radius:10px;padding:10px;font-size:13px;line-height:1.5}.comparison-cards{gap:14px;display:grid}.comparison-card{border:1px solid var(--line);background:var(--cream);border-radius:16px;min-width:0;padding:16px}.comparison-card h3{margin:0 0 6px;font-size:18px;line-height:1.4}.comparison-card h4{margin:16px 0 6px;font-size:15px}.comparison-card dl{gap:8px;margin:12px 0;font-size:14px;display:grid}.comparison-card dl>div{grid-template-columns:40px minmax(0,1fr);gap:10px;line-height:1.5;display:grid}.comparison-card dt{color:var(--text-muted)}.comparison-card dd{margin:0}.comparison-menu{gap:10px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.comparison-menu li{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding-top:10px;display:grid}.comparison-menu li>span{text-align:right;max-width:130px}.comparison-menu p,.comparison-menu small,.comparison-menu a{grid-column:1/-1;margin:0;line-height:1.5}.comparison-menu p,.comparison-menu small{color:var(--text-muted);font-size:13px}.comparison-menu a,.comparison-handoff a{color:var(--red);text-underline-offset:3px;align-items:center;min-height:44px;font-weight:650;display:flex}.comparison-more-menu summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:14px}.comparison-choose,.comparison-change{white-space:normal;background:var(--cream);min-height:44px;color:var(--red);border:1px solid var(--red);font:inherit;cursor:pointer;border-radius:12px;padding:10px 14px;font-size:14px}.comparison-choose{width:100%;margin-top:12px}.comparison-choose[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--red);font-weight:700}.comparison-choose:active,.comparison-change:active{box-shadow:inset 0 0 0 2px var(--red)}.saved-comparison a:focus-visible,.saved-comparison button:focus-visible,.saved-comparison summary:focus-visible,.saved-comparison textarea:focus-visible{outline:3px solid var(--red);outline-offset:3px}.comparison-handoff:has(p){border:2px solid var(--red);background:var(--cream);border-radius:16px;margin-top:14px;padding:16px}.comparison-handoff:focus{outline:3px solid var(--red);outline-offset:3px}.comparison-handoff>p{margin:0;font-size:14px;line-height:1.6}.comparison-handoff a{padding:8px 0;font-size:14px}.comparison-change{margin-top:8px}.dish-first{color:var(--ink);overflow-wrap:anywhere;margin-top:18px}.dish-first h2{margin:0 0 8px;font-size:21px;line-height:1.35}.dish-first-intro,.dish-first-note{color:var(--text-muted);font-size:13px;line-height:1.65}.dish-first-intro{margin:0 0 16px}.dish-first-search{color:var(--ink);gap:7px;margin:14px 0;font-size:14px;font-weight:650;display:grid}.dish-first-search input{border:1px solid var(--line);background:var(--food-surface);width:100%;min-height:48px;color:var(--ink);font:inherit;border-radius:12px;padding:10px 12px;font-weight:400}.dish-first-search input:focus-visible{outline:3px solid var(--red);outline-offset:2px}.dish-first-count{color:var(--text-muted);margin:14px 0;font-size:13px}.dish-first-list{gap:12px;display:grid}.dish-first-card{border:1px solid var(--line);background:var(--food-surface);box-shadow:0 8px 22px color-mix(in srgb,var(--shadow) 5%,transparent);border-radius:16px;padding:16px}.dish-first-card h3{margin:0 0 4px;font-size:18px;line-height:1.4}.dish-first-branches{color:var(--text-muted);margin:0 0 12px;font-size:12px}.dish-first-card ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.dish-first-card li{border-top:1px solid var(--line);padding-top:12px}.dish-first-restaurant{gap:3px;display:grid}.dish-first-restaurant strong{font-size:14px}.dish-first-restaurant span,.dish-first-item small,.dish-first-item p{color:var(--text-muted);font-size:13px;line-height:1.55}.dish-first-item{gap:6px;margin-top:9px;display:grid}.dish-first-item p{margin:0}.dish-first-price{color:var(--ink);font-size:14px;font-weight:700}.dish-first-item a,.dish-first-map{min-height:44px;color:var(--red-dark);text-underline-offset:3px;align-items:center;font-size:14px;font-weight:650;display:inline-flex}.dish-first-map{margin-top:4px}.dish-first-empty{border:1px solid var(--line);background:var(--food-surface);color:var(--text-muted);border-radius:16px;padding:20px;font-size:14px;line-height:1.65}.dish-first-empty h3{color:var(--ink);margin:0 0 5px;font-size:16px}.dish-first-empty p{margin:0}.dish-first-note{margin:14px 0 0}.dish-first a:focus-visible{outline:3px solid var(--red);outline-offset:2px;border-radius:3px}:root[data-theme=dark] .dish-first-item a,:root[data-theme=dark] .dish-first-map{color:var(--red)}.quick-pick{gap:var(--s4);padding:var(--s2) 0 var(--s6);display:grid}.quick-pick h1{font-family:var(--f-serif);letter-spacing:0;text-wrap:balance;font-size:30px;font-weight:900;line-height:1.3}.quick-pick h1:focus{outline:none}.quick-pick h1:focus-visible{outline:3px solid var(--brand);outline-offset:4px;border-radius:4px}.quick-pick-step{color:var(--text-muted);letter-spacing:.04em;font-variant-numeric:tabular-nums;margin:0;font-size:13px;font-weight:600}.quick-pick-options{gap:var(--s3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.quick-pick-option{min-height:76px;padding:var(--s4);border:1.5px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;align-content:start;gap:3px;transition:border-color .15s,background .15s,transform .15s;display:grid}.quick-pick-option strong{font-size:17px;line-height:1.35}.quick-pick-option small{color:var(--text-muted);font-size:13px;line-height:1.45}.quick-pick-option:hover{border-color:var(--brand)}.quick-pick-option[aria-pressed=true]{border-color:var(--brand);background:var(--tint)}.quick-pick-option:active{transform:scale(.98)}.quick-pick-any{background:var(--tint);border-style:dashed;grid-column:1/-1;min-height:60px}.quick-pick-text{min-height:44px;color:var(--brand-ink);cursor:pointer;background:0 0;border:0;border-radius:10px;justify-self:center;padding:8px 14px;font-size:15px;font-weight:700}.quick-pick-text:active{background:var(--tint)}.quick-pick-note,.quick-pick-count{color:var(--text-muted);margin:0;font-size:13px;line-height:1.6}.quick-pick-note{text-align:center}.quick-pick-chips{flex-wrap:wrap;gap:8px;display:flex}.quick-pick-chip{background:var(--tint);min-height:44px;color:var(--brand-ink);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:700;display:inline-flex}.quick-pick-chip:active{transform:scale(.97)}.quick-pick-results{gap:var(--s3);margin:0;padding:0;list-style:none;display:grid}.quick-pick-card{width:100%;padding:var(--s4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;gap:5px;transition:border-color .15s,transform .15s;display:grid}.quick-pick-card:hover{border-color:var(--brand)}.quick-pick-card:active{background:var(--tint);transform:scale(.985)}.quick-pick-card-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.quick-pick-card-top strong{overflow-wrap:anywhere;min-width:0;font-size:18px;line-height:1.4}.quick-pick-card-meta{color:var(--text-muted);font-size:14px;line-height:1.5}.quick-pick-card-why{color:var(--brand-ink);font-size:13px;font-weight:700}.quick-pick-pill{background:var(--warn-bg);color:var(--warn-ink);white-space:nowrap;border-radius:999px;flex:none;padding:2px 9px;font-size:12px;font-weight:700}.quick-pick-row{gap:var(--s3);flex-wrap:wrap;display:flex}.quick-pick-row>*{flex:140px}.quick-pick-secondary{border:1.5px solid var(--line);border-radius:var(--r-sm);background:var(--surface);min-height:48px;color:var(--ink);cursor:pointer;padding:10px 14px;font-size:15px;font-weight:700}.quick-pick-secondary[aria-pressed=true]{border-color:var(--brand);background:var(--tint);color:var(--brand-ink)}.quick-pick-secondary:active{transform:scale(.98)}.quick-pick-primary{border-radius:var(--r-sm);background:var(--brand);min-height:52px;color:var(--on-brand);place-items:center;font-size:17px;font-weight:800;text-decoration:none;display:grid}.quick-pick-primary:active{transform:scale(.98)}.quick-pick-empty{gap:var(--s3);padding:var(--s5);border:1px dashed var(--line);border-radius:var(--r-md);background:var(--surface);display:grid}.quick-pick-empty p{color:var(--text-muted);margin:0;font-size:15px}.quick-pick-final{gap:var(--s3);padding:var(--s5);border:2px solid var(--brand);border-radius:var(--r-lg);background:var(--surface);display:grid}.quick-pick-final h1{font-size:32px}.quick-pick-meta{margin:0;font-size:15px;font-weight:600}.quick-pick-address{color:var(--text-muted);margin:0;font-size:14px;line-height:1.6}.quick-pick-warning{padding:var(--s3);border-radius:var(--r-sm);background:var(--warn-bg);color:var(--warn-ink);margin:0;font-size:13px;line-height:1.6}.quick-pick-final .restaurant-provenance{margin:var(--s1) 0 0;padding:var(--s3) 0 0;border:0;border-top:1px solid var(--line);background:0 0;border-radius:0}.quick-pick-option:focus-visible,.quick-pick-text:focus-visible,.quick-pick-chip:focus-visible,.quick-pick-card:focus-visible,.quick-pick-secondary:focus-visible,.quick-pick-primary:focus-visible{outline:3px solid var(--brand);outline-offset:3px}@media (width>=440px){.quick-pick h1{font-size:34px}}@media (prefers-reduced-motion:reduce){.quick-pick-option,.quick-pick-card{transition:none}.quick-pick-option:active,.quick-pick-card:active,.quick-pick-secondary:active,.quick-pick-primary:active,.quick-pick-chip:active{transform:none}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--font-weight-semibold:600;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.auto-rows-min{grid-auto-rows:min-content}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-6{gap:calc(var(--spacing) * 6)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.border{border-style:var(--tw-border-style);border-width:1px}.bg-background{background-color:var(--background)}.bg-card{background-color:var(--card)}.bg-destructive{background-color:var(--destructive)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-6{padding-block:calc(var(--spacing) * 6)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-card-foreground{color:var(--card-foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-white{color:var(--color-white)}.underline-offset-4{text-underline-offset:4px}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}@media (hover:hover){.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--primary) 90%, transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing) * 1.5)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\:border-input:where([data-theme=dark],[data-theme=dark] *){border-color:var(--input)}.dark\:bg-destructive\/60:where([data-theme=dark],[data-theme=dark] *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/60:where([data-theme=dark],[data-theme=dark] *){background-color:color-mix(in oklab, var(--destructive) 60%, transparent)}}.dark\:bg-input\/30:where([data-theme=dark],[data-theme=dark] *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30:where([data-theme=dark],[data-theme=dark] *){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}@media (hover:hover){.dark\:hover\:bg-accent\/50:where([data-theme=dark],[data-theme=dark] *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-accent\/50:where([data-theme=dark],[data-theme=dark] *):hover{background-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.dark\:hover\:bg-input\/50:where([data-theme=dark],[data-theme=dark] *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:where([data-theme=dark],[data-theme=dark] *):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}}.dark\:focus-visible\:ring-destructive\/40:where([data-theme=dark],[data-theme=dark] *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:where([data-theme=dark],[data-theme=dark] *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:where([data-theme=dark],[data-theme=dark] *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:where([data-theme=dark],[data-theme=dark] *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing) * 6)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing) * 6)}}:root{font-family:var(--f-sans);color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;--safe-bottom:env(safe-area-inset-bottom,0px);--bg:#f3f4f8;--surface:#fff;--surface-2:#f8f9fc;--tint:#e6e9f7;--tint-strong:#d5daf2;--ink:#14172e;--text-muted:#535872;--line:#d9dce8;--brand:#3242a8;--brand-ink:#28358c;--on-brand:#fff;--warn-ink:#8a4a0c;--warn-bg:#fbf0e2;--shadow:#1a1d3a;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s8:32px;--s10:40px;--r-sm:12px;--r-md:16px;--r-lg:20px;--r-pill:999px;--gutter:16px;--tap:44px;--red:var(--brand);--red-dark:var(--brand-ink);--cream:var(--bg);--gold:#ecb950;--f-serif:"Noto Serif TC","Source Han Serif TC","Songti TC","PMingLiU",serif;--f-sans:system-ui,-apple-system,BlinkMacSystemFont,"PingFang TC","Noto Sans TC","Microsoft JhengHei",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;min-height:100%}body{background:radial-gradient(ellipse at 50% 0%,var(--bg) 0%,var(--cream) 50%,var(--bg) 100%);min-width:320px;min-height:100dvh;margin:0}button,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}.app-shell{max-width:520px;min-height:100dvh;padding:0 22px calc(94px + var(--safe-bottom));margin:0 auto;position:relative}.topbar{justify-content:space-between;align-items:center;height:76px;display:flex}.brand{color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.brand-mark{background:var(--red);color:var(--on-brand);width:39px;height:39px;box-shadow:0 5px 12px var(--brand);border-radius:14px 14px 14px 5px;place-items:center;font-size:22px;font-weight:800;display:grid}@supports (color:color-mix(in lab, red, red)){.brand-mark{box-shadow:0 5px 12px color-mix(in srgb,var(--brand) 19%,transparent)}}.brand strong{font-size:16px;line-height:1.1;display:block}.brand small{color:var(--text-muted);letter-spacing:.11em;margin-top:4px;font-size:9px;display:block}.filter-toggle{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:30px;min-height:44px;padding:10px 15px;font-size:13px;font-weight:600}.filter-toggle span{vertical-align:-1px;color:var(--red);margin-right:4px;font-size:17px}.view{display:none}.view.active{display:block}.intro-row{justify-content:space-between;align-items:end;margin:8px 1px 19px;display:flex}.eyebrow{letter-spacing:.1em;color:var(--red);text-transform:uppercase;margin:0 0 7px;font-size:11px;font-weight:700}h1{letter-spacing:-.045em;margin:0;font-size:27px;font-weight:800;line-height:1.27}h1 em{color:var(--red);font-style:normal}.deck-count{color:var(--text-muted);padding-bottom:4px;font-size:12px}.filter-panel{background:var(--surface);border:1px solid var(--line);box-shadow:0 7px 20px color-mix(in srgb,0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 3%,transparent);border-radius:18px;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 14px;padding:15px;display:grid}@supports (color:color-mix(in lab, red, red)){.filter-panel{box-shadow:0 7px 20px color-mix(in srgb,var(--shadow) 3%,transparent)}}.filter-panel[hidden]{display:none}.filter-panel label{color:var(--text-muted);gap:6px;font-size:11px;font-weight:600;display:grid}.filter-panel select{background:var(--bg);border:1px solid var(--line);width:100%;color:var(--ink);border-radius:10px;min-height:42px;padding:10px 9px;font-size:13px}.text-button{color:var(--red);text-align:right;background:0 0;border:0;grid-column:1/-1;min-height:32px;font-size:12px;font-weight:600}.card-stage{touch-action:pan-y;-webkit-user-select:none;user-select:none;min-height:390px;position:relative}.restaurant-card{background:var(--surface);box-shadow:0 14px 34px color-mix(in srgb,0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 8%,transparent),0 2px 7px color-mix(in srgb,0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 4%,transparent);border-radius:24px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.restaurant-card{box-shadow:0 14px 34px color-mix(in srgb,var(--shadow) 8%,transparent),0 2px 7px color-mix(in srgb,var(--shadow) 4%,transparent)}}.restaurant-card{border:1px solid var(--line)}.restaurant-card[hidden]{display:none}.hero-placeholder,.hero-image{object-fit:cover;width:100%;height:210px;display:block}.hero-placeholder{background:linear-gradient(135deg,var(--tint),var(--tint-strong) 58%,var(--tint-strong));place-items:center;display:grid;position:relative;overflow:hidden}.hero-placeholder:before,.hero-placeholder:after{content:"";border:1px solid #fff8;border-radius:50%;width:270px;height:270px;position:absolute}.hero-placeholder:before{width:200px;height:200px;transform:translate(-90px,72px)}.hero-placeholder:after{transform:translate(110px,-90px)}.hero-placeholder span{color:var(--brand);opacity:.82;text-shadow:2px 3px #fff5;font-size:98px;font-weight:800}.hero-placeholder i{color:var(--on-brand);font-size:25px;font-style:normal;position:absolute;bottom:19px;right:26px}.card-content{padding:17px 19px 14px}.card-meta{color:var(--red);justify-content:space-between;font-size:11px;font-weight:700;display:flex}.card-meta span+span{color:var(--text-muted);font-weight:500}.card-address{color:var(--text-muted);margin:0;font-size:12px}.tag-row{gap:7px;margin:13px 0 15px;display:flex}.tag{color:var(--text-muted);background:var(--tint);border-radius:20px;padding:5px 9px;font-size:10px}.card-footer{border-top:1px solid var(--line);color:var(--text-muted);justify-content:space-between;align-items:center;padding-top:12px;font-size:11px;display:flex}.card-footer small{color:var(--text-muted);font-size:9px}.card-footer a{color:var(--red);font-weight:700;text-decoration:none}.demo-label,.verified-label{color:var(--warn-ink)!important;margin:9px 0 0!important;font-size:10px!important}.verified-label{color:var(--text-muted)!important}.actions{justify-content:center;align-items:center;gap:26px;padding:17px 0 5px;display:flex}.actions[hidden]{display:none}.action-button{border:1px solid var(--line);background:var(--surface);width:62px;height:62px;box-shadow:0 5px 14px color-mix(in srgb,0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 5%,transparent);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){.action-button{box-shadow:0 5px 14px color-mix(in srgb,var(--shadow) 5%,transparent)}}.action-button{cursor:pointer;transition:transform .16s,box-shadow .16s}.action-button:hover{box-shadow:0 8px 18px color-mix(in srgb,0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 9%,transparent);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.action-button:hover{box-shadow:0 8px 18px color-mix(in srgb,var(--shadow) 9%,transparent)}}.action-button span{font-size:27px;line-height:1}.action-button small{color:var(--text-muted);margin-top:2px;font-size:9px}.action-button.skip span{color:var(--text-muted)}.action-button.want{background:var(--red);color:var(--on-brand);border-color:var(--red);width:68px;height:68px}.swipe-hint{color:var(--text-muted);font-size:10px}.data-note{text-align:center;color:var(--text-muted);max-width:330px;margin:8px auto 0;font-size:10px;line-height:1.5}.empty-state,.list-empty{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:55px 25px 40px}.empty-icon{font-size:42px}.empty-state h2,.list-empty h2{margin:12px 0 6px;font-size:19px}.empty-state p,.list-empty p{color:var(--text-muted);max-width:280px;margin:0 auto 18px;font-size:13px;line-height:1.7}.primary-button{background:var(--red);color:var(--on-brand);cursor:pointer;border:0;border-radius:24px;place-items:center;min-height:44px;padding:12px 22px;font-size:13px;font-weight:700;text-decoration:none;display:inline-grid}.section-description{color:var(--text-muted);margin:10px 0 19px;font-size:12px;line-height:1.7}.saved-list,.nearby-list{gap:10px;margin-top:19px;display:grid}.list-card{background:var(--surface);border:1px solid var(--line);border-radius:17px;align-items:center;gap:12px;min-height:76px;padding:13px;display:flex}.list-icon{background:var(--tint);border-radius:13px;flex:none;place-items:center;width:42px;height:42px;font-size:21px;display:grid}.list-copy{flex:1;min-width:0}.list-copy h3{margin:0 0 5px;font-size:14px}.list-copy p{color:var(--text-muted);margin:0;font-size:10px;line-height:1.5}.list-copy small{margin-top:3px;font-size:9px;display:block}.map-link,.remove-saved{border:1px solid var(--line);width:39px;height:39px;color:var(--red);background:var(--surface);border-radius:50%;flex:none;place-items:center;font-size:18px;text-decoration:none;display:grid}.remove-saved{color:var(--text-muted);cursor:pointer;font-size:21px}.landmark-card{background:var(--tint);border-radius:16px;align-items:center;gap:12px;margin-bottom:5px;padding:14px;display:flex}.landmark-card>span{color:var(--red);font-size:22px}.landmark-card strong{font-size:12px}.landmark-card p{color:var(--text-muted);margin:4px 0 0;font-size:10px}.bottom-nav{z-index:5;width:min(520px,100%);padding:10px 20px calc(9px + var(--safe-bottom));background:var(--surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--line);justify-content:space-around;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav-item{min-width:76px;min-height:48px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:10px;font-weight:600;text-decoration:none;display:flex}.nav-item span{font-size:21px;line-height:1}.nav-item.active{color:var(--red)}@media (width>=600px){body{padding:16px 0}.app-shell{border:1px solid var(--line);min-height:calc(100dvh - 32px);box-shadow:0 20px 70px color-mix(in srgb,0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 6%,transparent);border-radius:28px}@supports (color:color-mix(in lab, red, red)){.app-shell{box-shadow:0 20px 70px color-mix(in srgb,var(--shadow) 6%,transparent)}}.bottom-nav{border-radius:0 0 28px 28px;bottom:16px}.restaurant-card{max-width:470px;margin:auto}.card-stage{min-height:410px}.hero-placeholder,.hero-image{height:220px}}@media (height<=760px){.topbar{height:64px}.intro-row{margin-bottom:12px}main{padding-top:4px}.hero-placeholder,.hero-image{height:175px}.card-stage{min-height:350px}.card-content{padding-top:13px}.tag-row{margin:9px 0 11px}.actions{padding-top:11px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.card-stage{cursor:grab}.card-stage:active{cursor:grabbing}.restaurant-card{gap:0;padding:0;display:block}.filter-toggle{height:auto}.brand{min-width:0}.brand-logo{width:min(204px,100vw - 145px);height:auto;display:block}.filter-panel select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23a83232' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.7'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;background-size:14px;padding-right:34px}:root{--background:var(--bg);--foreground:var(--ink);--card:var(--surface);--card-foreground:var(--ink);--popover:var(--surface);--popover-foreground:var(--ink);--primary:var(--brand);--primary-foreground:var(--on-brand);--secondary:var(--tint);--secondary-foreground:var(--ink);--muted:var(--tint);--muted-foreground:var(--text-muted);--accent:var(--tint);--accent-foreground:var(--ink);--destructive:#c0362c;--border:var(--line);--input:var(--line);--ring:var(--brand);--radius:.75rem}.preference-screen{padding:20px 0 12px}.preference-screen .section-description{max-width:370px;margin:11px 0 24px}.preference-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.preference-chip{border:1px solid var(--line);background:var(--surface);min-height:52px;color:var(--ink);text-align:left;cursor:pointer;border-radius:15px;padding:12px 14px;font-size:13px;font-weight:650;transition:background .16s,border-color .16s,transform .16s}.preference-chip:hover{border-color:var(--line);transform:translateY(-1px)}.preference-chip.selected{background:var(--tint);border-color:var(--red);color:var(--red);box-shadow:0 0 0 1px var(--brand)}@supports (color:color-mix(in lab, red, red)){.preference-chip.selected{box-shadow:0 0 0 1px color-mix(in srgb,var(--brand) 11%,transparent)}}.preference-chip:focus-visible,.preference-edit:focus-visible{outline:3px solid var(--brand)}@supports (color:color-mix(in lab, red, red)){.preference-chip:focus-visible,.preference-edit:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 40%,transparent)}}.preference-chip:focus-visible,.preference-edit:focus-visible{outline-offset:2px}.preference-start{justify-content:center;gap:9px;width:100%;margin-top:22px;display:flex}.preference-start span{font-size:18px}.preference-note{text-align:center;color:var(--text-muted);margin:13px 0 0;font-size:11px}.browse-tools{justify-items:end;gap:5px;display:grid}.preference-edit{min-height:28px;color:var(--red);padding:3px 0;font-size:11px}.bottom-nav{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}@media (width>=600px){body{padding-bottom:0}.app-shell{min-height:calc(100dvh - 16px)}.bottom-nav{bottom:0}.app-shell{border-radius:28px 28px 0 0}.bottom-nav{border-radius:0}}.action-button{width:54px;height:54px}.action-button.skip span{font-size:24px}.action-button.want{width:58px;height:58px}.action-button.want span{font-size:20px}@media (width>=440px){.preference-options{grid-template-columns:repeat(3,minmax(0,1fr))}.preference-chip{text-align:center;padding-inline:8px}}.brand small,.card-meta span+span,.card-address,.card-footer,.card-footer small,.swipe-hint,.data-note,.list-copy small,.landmark-card p,.nav-item{color:var(--text-muted)}.filter-panel label{color:var(--text-muted);font-size:12px}.filter-panel select{min-height:44px}.card-address{font-size:13px;line-height:1.5}.tag{color:var(--text-muted);font-size:11px}.card-footer{font-size:12px}.card-footer small{font-size:11px}.demo-label,.verified-label{color:var(--warn-ink)!important;font-size:11px!important}.swipe-hint,.data-note,.list-copy p,.landmark-card p{font-size:12px}.list-copy small,.nav-item{font-size:11px}.brand small{font-size:10px}.action-button:active,.preference-chip:active,.filter-toggle:active,.primary-button:active,.map-link:active,.remove-saved:active{transform:scale(.96)}.map-link:focus-visible,.remove-saved:focus-visible,.nav-item:focus-visible,.brand:focus-visible,.filter-toggle:focus-visible,.text-button:focus-visible,.action-button:focus-visible{outline:3px solid var(--brand);outline-offset:3px}.nav-item[aria-current=page]{color:var(--red)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1020;--surface:#1a1c33;--surface-2:#20233d;--tint:#272b4b;--tint-strong:#333862;--ink:#e8eaf8;--text-muted:#aeb2cc;--line:#343852;--brand:#a3adff;--brand-ink:#c0c6ff;--on-brand:#0f1020;--warn-ink:#f2b878;--warn-bg:#33261a;--shadow:#000}}.brand{flex:1;min-width:0}.brand-logo{width:min(204px,100%)}.logo-dark{display:none}.topbar-actions{flex:none;align-items:center;gap:8px;display:flex}.theme-control{position:relative}.theme-toggle{border:1px solid var(--line);background:var(--surface);width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:50%;padding:0}.theme-toggle svg{width:18px;height:18px}.theme-options{z-index:10;border:1px solid var(--line);background:var(--surface);width:164px;box-shadow:0 12px 28px color-mix(in srgb,0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 15%,transparent);border-radius:14px;padding:6px;position:absolute;top:calc(100% + 8px);right:0}@supports (color:color-mix(in lab, red, red)){.theme-options{box-shadow:0 12px 28px color-mix(in srgb,var(--shadow) 15%,transparent)}}.theme-option{width:100%;min-height:44px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;padding:8px 11px;font-size:13px;display:flex}.theme-option:hover,.theme-option[aria-pressed=true]{background:var(--tint);color:var(--red-dark)}.theme-toggle:focus-visible,.theme-option:focus-visible{outline:3px solid var(--red);outline-offset:2px}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1020;--surface:#1a1c33;--surface-2:#20233d;--tint:#272b4b;--tint-strong:#333862;--ink:#e8eaf8;--text-muted:#aeb2cc;--line:#343852;--brand:#a3adff;--brand-ink:#c0c6ff;--on-brand:#0f1020;--warn-ink:#f2b878;--warn-bg:#33261a;--shadow:#000}:root[data-theme=dark] body{background:radial-gradient(ellipse at 50% 0%,var(--bg) 0%,var(--bg) 65%,var(--bg) 100%)}:root[data-theme=dark] .logo-light{display:none}:root[data-theme=dark] .logo-dark{display:block}:root[data-theme=dark] .filter-toggle,:root[data-theme=dark] .theme-toggle,:root[data-theme=dark] .theme-options,:root[data-theme=dark] .action-button.skip,:root[data-theme=dark] .empty-state,:root[data-theme=dark] .list-empty,:root[data-theme=dark] .list-card,:root[data-theme=dark] .bottom-nav,:root[data-theme=dark] .preference-chip,:root[data-theme=dark] .map-link,:root[data-theme=dark] .remove-saved{background:var(--surface);border-color:var(--line);color:var(--ink)}:root[data-theme=dark] .restaurant-card,:root[data-theme=dark] .filter-panel{background:var(--surface);border-color:var(--line);box-shadow:0 12px 28px #0003}:root[data-theme=dark] .filter-panel select{background-color:var(--bg);border-color:var(--line);color:var(--ink)}:root[data-theme=dark] .card-footer{border-top-color:var(--line)}:root[data-theme=dark] .card-meta span+span,:root[data-theme=dark] .card-address,:root[data-theme=dark] .card-footer,:root[data-theme=dark] .card-footer small,:root[data-theme=dark] .filter-panel label,:root[data-theme=dark] .swipe-hint,:root[data-theme=dark] .data-note,:root[data-theme=dark] .list-copy small,:root[data-theme=dark] .landmark-card p,:root[data-theme=dark] .nav-item,:root[data-theme=dark] .brand small{color:var(--text-muted)}:root[data-theme=dark] .tag{background:var(--tint);color:var(--text-muted)}:root[data-theme=dark] .list-icon,:root[data-theme=dark] .landmark-card{background:var(--tint)}:root[data-theme=dark] .preference-chip.selected,:root[data-theme=dark] .theme-option:hover,:root[data-theme=dark] .theme-option[aria-pressed=true]{background:var(--tint);border-color:var(--red);color:var(--brand-ink)}:root[data-theme=dark] .action-button.want,:root[data-theme=dark] .primary-button{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}:root[data-theme=dark] .action-button.skip span{color:var(--ink)}:root[data-theme=dark] .demo-label,:root[data-theme=dark] .verified-label{color:var(--warn-ink)!important}:root[data-theme=dark] .nav-item.active,:root[data-theme=dark] .nav-item[aria-current=page],:root[data-theme=dark] .map-link,:root[data-theme=dark] .remove-saved{color:var(--red)}:root[data-theme=dark] .app-shell{border-color:var(--line)}.restaurant-gallery{background:var(--tint);height:160px;position:relative;overflow:hidden}.restaurant-gallery .hero-image,.restaurant-gallery .hero-placeholder{height:100%}.restaurant-gallery .hero-placeholder p{z-index:1;background:var(--surface);color:var(--ink);border-radius:9px;margin:0;padding:7px 10px;font-size:12px;font-weight:700;position:absolute;bottom:17px;left:18px}.illustration-frame{width:100%;height:100%;position:relative}.illustration-frame .hero-image,.illustration-frame .hero-placeholder{object-fit:cover;width:100%;height:100%}.illustration-label{background:var(--surface);max-width:calc(100% - 24px);color:var(--ink);box-shadow:0 2px 8px color-mix(in srgb,0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 20%,transparent);border-radius:9px;padding:7px 10px;font-size:12px;font-weight:700;position:absolute;bottom:12px;left:12px}@supports (color:color-mix(in lab, red, red)){.illustration-label{box-shadow:0 2px 8px color-mix(in srgb,var(--shadow) 20%,transparent)}}.illustration-list-label{color:var(--text-muted);line-height:1.4;font-size:10px!important}.gallery-footer{pointer-events:none;align-items:center;gap:6px;min-height:44px;display:flex;position:absolute;bottom:10px;left:10px;right:10px}.gallery-control,.gallery-count,.gallery-source{pointer-events:auto;background:var(--surface);color:var(--ink);box-shadow:0 2px 8px color-mix(in srgb,0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 25%,transparent);border:1px solid #fffc;place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.gallery-control,.gallery-count,.gallery-source{box-shadow:0 2px 8px color-mix(in srgb,var(--shadow) 25%,transparent)}}.gallery-control{cursor:pointer;border-radius:50%;flex:none;width:44px;height:44px;font-size:29px;line-height:1}.gallery-control:active{background:var(--tint-strong);transform:scale(.96)}.gallery-count{border-radius:20px;min-width:48px;min-height:34px;padding:4px 8px;font-size:12px;font-weight:800}.gallery-source{border-radius:22px;min-height:44px;margin-left:auto;padding:7px 10px;font-size:11px;font-weight:700;text-decoration:none}.gallery-control:focus-visible,.gallery-source:focus-visible,.list-thumbnail-link:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.list-thumbnail,.list-thumbnail-link{object-fit:cover;border-radius:13px;flex:none;width:44px;height:44px;display:block}.list-thumbnail-link{overflow:hidden}.list-thumbnail-link .list-thumbnail{width:100%;height:100%}@media (width>=600px){.restaurant-gallery{height:180px}}@media (height<=760px){.restaurant-gallery{height:145px}}.card-stage{min-height:340px}@media (width>=600px){.card-stage{min-height:360px}}@media (height<=760px){.card-stage{min-height:315px}}.restaurant-card{transform:translateX(var(--swipe-x,0px)) rotate(var(--swipe-rotation,0deg));transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .22s ease-in}.restaurant-card.is-dragging{will-change:transform;transition:none}.restaurant-card.is-exiting{opacity:.9;will-change:transform,opacity;transition:transform .22s ease-in,opacity .22s ease-in}.actions{flex-wrap:wrap;gap:12px}.actions .action-button{border-radius:999px;flex-direction:row;gap:8px;width:auto;min-width:100px;height:52px;padding:0 18px}.actions .action-button .action-button-label{color:inherit;font-size:15px;font-weight:650;line-height:1.4}.actions .action-button.skip{color:var(--ink)}.actions .swipe-hint{text-align:center;flex-basis:100%;order:3;margin:0}.decision-feedback{text-align:center;min-height:24px;color:var(--text-muted);overflow-wrap:anywhere;margin:10px 0 4px;font-size:14px;line-height:1.6}.decision-tools,.empty-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.decision-tools button,.decision-tools a,.empty-actions button{min-height:44px;padding:10px 14px;font-size:14px}.decision-tools button,.decision-tools a{color:var(--red);background:var(--cream);border:1px solid var(--line);cursor:pointer;border-radius:12px;text-decoration:none}.decision-tools button:disabled{opacity:.55;cursor:default}.decision-tools button:focus-visible,.decision-tools a:focus-visible{outline:3px solid var(--red);outline-offset:3px}.decision-tools button:active,.decision-tools a:active{transform:scale(.97)}.swipe-intent{z-index:2;pointer-events:none;border:2px solid var(--red);background:var(--cream);color:var(--ink);border-radius:12px;padding:8px 14px;font-size:16px;font-weight:700;position:absolute;top:12px;left:12px}.card-stage[data-direction=want] .swipe-intent{left:auto;right:12px}@media (prefers-reduced-motion:reduce){.restaurant-card,.restaurant-card.is-dragging,.restaurant-card.is-exiting{will-change:auto;transition:none}}.card-menu{border:1px solid var(--line);background:var(--surface-2);border-radius:15px;margin:0 0 14px;padding:12px 13px 11px}.card-menu-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.card-menu-heading h3{color:var(--ink);margin:0;font-size:14px;line-height:1.5}.card-menu-heading>span{color:var(--text-muted);font-size:11px}.card-menu-details summary{min-height:44px;color:var(--red-dark);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;margin:3px -5px 0;padding:7px 5px;font-size:13px;font-weight:700;list-style:none;display:flex}.card-menu-details summary::-webkit-details-marker{display:none}.card-menu-details summary:hover{background:var(--tint)}.card-menu-details summary:active{background:var(--tint-strong)}.card-menu-details summary:focus-visible,.menu-item-source a:focus-visible{outline:3px solid var(--red);outline-offset:2px}.card-menu-details .menu-summary-open{display:none}.card-menu-details[open] .menu-summary-open{display:inline}.card-menu-details[open] .menu-summary-closed{display:none}.menu-chevron{font-size:19px;line-height:1;transition:transform .16s}.card-menu-details[open] .menu-chevron{transform:rotate(180deg)}.menu-items{gap:0;margin:0;padding:0;list-style:none;display:grid}.menu-items-full{padding-top:3px}.card-menu-details[open]+.menu-preview{display:none}.menu-item{border-top:1px solid var(--line);padding:9px 0}.menu-item-main{justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;line-height:1.5;display:flex}.menu-item-main strong{color:var(--ink);font-weight:650}.menu-item-main span{color:var(--red-dark);flex:none;font-weight:700}.menu-item p{color:var(--text-muted);margin:4px 0 0;font-size:12px;line-height:1.5}.menu-item-source{color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;column-gap:10px;margin-top:4px;font-size:11px;display:flex}.menu-item-source a,.menu-source-overview{min-height:44px;color:var(--red-dark);text-underline-offset:2px;align-items:center;font-size:12px;font-weight:700;text-decoration:underline;display:inline-flex}.menu-source-overview:focus-visible{outline:3px solid var(--red);outline-offset:2px}.menu-empty{color:var(--text-muted);margin:8px 0 2px;font-size:12px;line-height:1.6}:root[data-theme=dark] .card-menu{background:var(--surface-2)}:root[data-theme=dark] .card-menu-details summary:hover{background:var(--tint)}:root[data-theme=dark] .card-menu-details summary:active{background:var(--tint-strong)}@media (prefers-reduced-motion:reduce){.menu-chevron{transition:none}}.load-inline,.loading-label{color:var(--text-muted);justify-content:center;align-items:center;gap:9px;font-size:13px;line-height:1.5;display:flex}.load-inline{margin:13px 0 0}.list-loading{border:1px solid var(--line);background:var(--surface);min-height:96px;color:var(--text-muted);border-radius:17px;justify-content:center;align-items:center;gap:10px;padding:20px;font-size:13px;display:flex}.load-spinner{border:2px solid var(--line);border-top-color:var(--red);border-radius:50%;flex:none;width:17px;height:17px;animation:.85s linear infinite load-spin}.loading-card{--skeleton-base:var(--tint);--skeleton-shine:var(--surface-2);border:1px solid var(--line);background:var(--surface);box-shadow:0 14px 34px color-mix(in srgb,0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 8%,transparent);border-radius:24px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.loading-card{box-shadow:0 14px 34px color-mix(in srgb,var(--shadow) 8%,transparent)}}.loading-shape{background:linear-gradient(100deg,var(--skeleton-base) 35%,var(--skeleton-shine) 50%,var(--skeleton-base) 65%);background-size:220% 100%;animation:1.6s ease-in-out infinite load-shimmer}.loading-image{height:160px}.loading-content{gap:13px;padding:20px 19px 14px;display:grid}.loading-line{border-radius:8px;height:14px;display:block}.loading-line-short{width:32%;height:11px}.loading-line-title{width:72%;height:23px}.loading-line-wide{width:88%}.loading-line-medium{width:54%}.loading-label{min-height:32px;margin:4px 19px 20px}:root[data-theme=dark] .loading-card{--skeleton-base:var(--tint);--skeleton-shine:var(--tint-strong);background:var(--surface)}:root[data-theme=dark] .list-loading{background:var(--surface)}@media (width>=600px){.loading-image{height:180px}}@media (height<=760px){.loading-image{height:145px}}@keyframes load-spin{to{transform:rotate(360deg)}}@keyframes load-shimmer{to{background-position-x:-220%}}@media (prefers-reduced-motion:reduce){.load-spinner,.loading-shape{animation:none}}:root[data-theme=dark] .map-link:focus-visible,:root[data-theme=dark] .remove-saved:focus-visible,:root[data-theme=dark] .nav-item:focus-visible,:root[data-theme=dark] .brand:focus-visible,:root[data-theme=dark] .filter-toggle:focus-visible,:root[data-theme=dark] .text-button:focus-visible,:root[data-theme=dark] .action-button:focus-visible{outline-color:var(--red)}:root,:root[data-theme=dark]{--food-surface:var(--surface);--food-soft:var(--tint);--food-strong:var(--ink)}.bottom-nav{padding-inline:12px}.nav-item{flex:1;min-width:0}.food-experiment{padding:12px 0 28px}.food-experiment h1{max-width:390px}.food-experiment .section-description{margin-bottom:18px}.food-mode-switch{border:1px solid var(--line);background:var(--food-soft);border-radius:15px;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:18px;padding:5px;display:grid}.food-mode-switch button{min-height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;font-size:13px;font-weight:700}.food-mode-switch button[aria-pressed=true]{background:var(--food-surface);color:var(--red-dark);box-shadow:0 2px 7px color-mix(in srgb,0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 9%,transparent)}@supports (color:color-mix(in lab, red, red)){.food-mode-switch button[aria-pressed=true]{box-shadow:0 2px 7px color-mix(in srgb,var(--shadow) 9%,transparent)}}.food-path{flex-wrap:wrap;align-items:center;gap:7px;min-height:38px;margin-bottom:16px;display:flex}.food-path span{background:var(--food-soft);color:var(--food-strong);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:600}.food-step,.food-results,.food-swipe-card,.food-status{background:var(--food-surface);border:1px solid var(--line);box-shadow:0 10px 28px color-mix(in srgb,0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 7%,transparent);border-radius:22px}@supports (color:color-mix(in lab, red, red)){.food-step,.food-results,.food-swipe-card,.food-status{box-shadow:0 10px 28px color-mix(in srgb,var(--shadow) 7%,transparent)}}.food-step,.food-results{padding:22px 19px}.food-step-count{color:var(--text-muted);letter-spacing:.02em;margin:0 0 9px;font-size:12px;font-weight:700}.food-step h2,.food-results h2{margin:0 0 19px;font-size:21px;line-height:1.35}.food-choices{gap:10px;display:grid}.food-choice{border:1px solid var(--line);background:var(--food-soft);min-height:60px;color:var(--food-strong);text-align:left;cursor:pointer;border-radius:14px;align-items:center;gap:12px;padding:11px 15px;font-size:15px;font-weight:700;transition:transform .16s,border-color .16s;display:flex}.food-choice:hover{border-color:var(--red);transform:translateY(-1px)}.food-choice:active{transform:scale(.98)}.food-choice span:first-child{font-size:22px}.food-choice span:last-child{color:var(--red);margin-left:auto}.food-controls{justify-content:space-between;gap:12px;min-height:44px;margin-top:12px;display:flex}.food-text-button{min-height:44px;color:var(--red-dark);cursor:pointer;background:0 0;border:0;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:700}.food-result-list{gap:10px;display:grid}.food-result{border:1px solid var(--line);background:var(--food-soft);border-radius:15px;align-items:start;gap:14px;padding:16px;display:flex}.food-result>span{font-size:30px;line-height:1.3}.food-result small{color:var(--red-dark);font-size:11px;font-weight:700}.food-result h3{margin:3px 0 5px;font-size:17px}.food-result p,.food-explanation{color:var(--text-muted);margin:0;font-size:12px;line-height:1.6}.food-explanation{margin-top:14px}.food-swipe-stage{touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:grab}.food-swipe-stage:active{cursor:grabbing}.food-swipe-card{text-align:center;will-change:transform;flex-direction:column;justify-content:center;min-height:285px;padding:24px;display:flex}.food-swipe-emoji{font-size:75px;line-height:1.2}.food-swipe-card h2{margin:12px 0 6px;font-size:24px}.food-swipe-card p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.6}.food-swipe-actions{justify-content:center;gap:16px;margin-top:16px;display:flex}.food-swipe-actions button{cursor:pointer;border-radius:999px;min-width:110px;min-height:48px}.food-swipe-actions button:first-child{background:var(--food-surface);border-color:var(--line);color:var(--food-strong)}.food-swipe-actions button:last-child{background:var(--brand);color:var(--on-brand)}:root[data-theme=dark] .food-swipe-actions button:last-child{background:var(--brand)}.food-stop-choice{border-color:var(--line);width:100%;min-height:48px;color:var(--food-strong);margin-top:10px}.food-swipe-finish .food-swipe-card{margin:12px 0 16px}.food-swipe-hint,.food-disclaimer{color:var(--text-muted);text-align:center;margin:12px auto 0;font-size:12px;line-height:1.6}.food-disclaimer{margin-top:20px}.food-status{text-align:center;color:var(--text-muted);padding:30px 20px;font-size:14px;line-height:1.6}.food-status p{margin:0 0 15px}.food-mode-switch button:focus-visible,.food-choice:focus-visible,.food-text-button:focus-visible,.food-swipe-actions button:focus-visible,.food-stop-choice:focus-visible{outline:3px solid var(--red);outline-offset:2px}.food-mode-switch{grid-template-columns:repeat(2,minmax(0,1fr))}.food-mode-switch button:first-child{grid-column:1/-1}.food-mode-switch button:active{transform:scale(.97)}.food-choice-copy{flex:1;gap:3px;min-width:0;display:grid;margin-left:0!important}.food-choice-copy strong{font-size:14px}.food-choice-copy small{color:var(--text-muted);font-size:12px;font-weight:500;line-height:1.5}.food-supporting-copy{color:var(--text-muted);margin:0 0 18px;font-size:13px;line-height:1.6}.food-quest-record{border-top:1px solid var(--line);gap:10px;margin-top:20px;padding-top:18px;display:grid}.food-quest-record label,.food-quest-record strong{font-size:13px;font-weight:700}.food-quest-record textarea{resize:vertical;border:1px solid var(--line);background:var(--food-surface);width:100%;min-height:90px;color:var(--food-strong);font:inherit;border-radius:12px;padding:11px 12px;font-size:13px;line-height:1.5}.food-quest-record p{color:var(--food-strong);overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.6}.food-quest-record small{color:var(--text-muted);font-size:12px;line-height:1.5}.food-primary-action{background:var(--brand);width:100%;min-height:48px;color:var(--on-brand);cursor:pointer;border:0;border-radius:12px;margin-top:12px;padding:11px 16px;font-size:14px;font-weight:700}.food-primary-action:disabled{opacity:.5;cursor:not-allowed}:root[data-theme=dark] .food-primary-action{background:var(--brand)}.food-pair-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.food-pair-option{border:1px solid var(--line);background:var(--food-soft);min-height:52px;color:var(--food-strong);cursor:pointer;border-radius:13px;justify-content:center;align-items:center;gap:8px;padding:9px;font-size:13px;font-weight:700;display:flex}.food-pair-option[aria-pressed=true]{border-color:var(--red);background:var(--tint);color:var(--brand-ink);box-shadow:0 0 0 1px var(--red)}.food-pair-option:disabled{opacity:.5;cursor:not-allowed}:root[data-theme=dark] .food-pair-option[aria-pressed=true]{background:var(--tint);color:var(--brand-ink)}.food-pair-handoff{text-align:center}.food-pair-handoff>span{margin-bottom:8px;font-size:42px;display:block}.food-pair-handoff .food-text-button{margin-top:8px}.food-pair-summary{background:var(--food-soft);border-radius:12px;margin-bottom:15px;padding:12px 14px}.food-pair-summary p{color:var(--food-strong);margin:3px 0;font-size:13px;line-height:1.6}.food-pair-edit{margin-top:15px}.food-quest-record textarea:focus-visible,.food-primary-action:focus-visible,.food-pair-option:focus-visible{outline:3px solid var(--red);outline-offset:2px}.food-step h2[tabindex="-1"]:focus,.food-results h2[tabindex="-1"]:focus{outline:3px solid var(--red);outline-offset:4px;border-radius:3px}.food-primary-action:active,.food-pair-option:active{transform:scale(.98)}@media (width>=440px){.food-mode-switch{grid-template-columns:repeat(5,minmax(0,1fr))}.food-mode-switch button:first-child{grid-column:auto}}.food-quick-intro{margin-bottom:14px}.food-quick-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.food-quick-option{border:1px solid var(--line);background:var(--food-soft);min-height:52px;color:var(--food-strong);cursor:pointer;border-radius:13px;justify-content:center;align-items:center;gap:8px;padding:9px 10px;font-size:14px;font-weight:700;display:flex}.food-quick-option span{font-size:19px}.food-quick-option[aria-pressed=true]{border-color:var(--red);background:var(--tint);color:var(--brand-ink);box-shadow:0 0 0 1px var(--red)}:root[data-theme=dark] .food-quick-option[aria-pressed=true]{background:var(--tint);color:var(--brand-ink)}.food-quick-option:focus-visible{outline:3px solid var(--red);outline-offset:2px}.food-quick-option:active{transform:scale(.98)}.food-quick-selection{color:var(--food-strong);margin:0 0 14px;font-size:13px;font-weight:700;line-height:1.6}.food-quick-result-list{gap:10px;display:grid}.food-quick-result{border:1px solid var(--line);background:var(--food-soft);border-radius:15px;align-items:start;gap:13px;min-width:0;padding:15px;display:flex}.food-quick-result>span{flex:none;font-size:30px;line-height:1.3}.food-quick-result>div{min-width:0}.food-quick-result h3{margin:0 0 5px;font-size:17px;line-height:1.4}.food-quick-result p{color:var(--text-muted);overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.6}.food-quick-result .food-quick-result-reason{color:var(--red-dark);margin-top:8px;font-weight:700}.food-quick-actions{flex-wrap:wrap;align-items:center;gap:5px 9px;margin-top:15px;display:flex}.food-quick-actions .food-primary-action{flex-basis:100%;margin-top:0}.food-quick-note{color:var(--text-muted);margin:12px 0 0;font-size:13px;line-height:1.6}.food-results .food-quick-note{margin:0 0 14px}@media (width>=440px){.food-quick-options{grid-template-columns:repeat(3,minmax(0,1fr))}}.campus-orientation{border:1px solid var(--line);background:var(--food-surface,var(--surface));color:var(--ink);border-radius:18px;gap:9px;margin:16px 0 20px;padding:16px;display:grid}.campus-orientation .eyebrow{margin:0}.campus-orientation h2{margin:0;font-size:18px;line-height:1.4}.campus-orientation-copy,.campus-orientation-note{color:var(--text-muted);margin:0;font-size:13px;line-height:1.6}.campus-anchor-label{font-size:14px;font-weight:650}.campus-orientation select{border:1px solid var(--line);background:var(--cream);width:100%;min-height:48px;color:var(--ink);font:inherit;border-radius:12px;padding:10px 12px}.campus-restaurant-search{color:var(--ink);gap:6px;font-size:14px;font-weight:650;display:grid}.campus-restaurant-search input{border:1px solid var(--line);background:var(--cream);width:100%;min-height:48px;color:var(--ink);font:inherit;border-radius:12px;padding:10px 12px;font-weight:400}.campus-map-sources{flex-wrap:wrap;gap:0 14px;display:flex}.campus-map-source{min-height:44px;color:var(--red-dark);text-underline-offset:3px;align-items:center;font-size:14px;font-weight:650;display:inline-flex}.campus-orientation-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.campus-orientation-list li{border:1px solid var(--line);background:var(--cream);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.campus-orientation-list li>div{min-width:0}.campus-orientation-list strong{font-size:14px;line-height:1.5}.campus-orientation-list p,.campus-orientation-list small{color:var(--text-muted);overflow-wrap:anywhere;margin:3px 0 0;font-size:12px;line-height:1.5;display:block}.campus-orientation-list a{border:1px solid var(--line);background:var(--food-surface,var(--surface));min-height:44px;color:var(--red-dark);white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;padding:8px 10px;font-size:13px;font-weight:650;text-decoration:none;display:inline-flex}.campus-orientation-empty{background:var(--cream);border-radius:12px;padding:14px;font-size:14px;line-height:1.6}.campus-orientation-empty p{color:var(--text-muted);margin:4px 0 0;font-size:13px}.campus-orientation select:focus-visible,.campus-orientation a:focus-visible,.campus-restaurant-search input:focus-visible{outline:3px solid var(--red);outline-offset:3px}:root[data-theme=dark] .campus-map-source,:root[data-theme=dark] .campus-orientation-list a{color:var(--red)}.active-filters{gap:5px;margin:-9px 0 12px;display:grid}.active-filters-label{color:var(--text-muted);font-size:12px;font-weight:650}.active-filters-list{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.active-filter-chip,.active-filters-clear{border:1px solid var(--line);background:var(--tint);min-height:44px;color:var(--red-dark);font:inherit;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:8px 12px;font-size:13px;font-weight:650;display:inline-flex}.active-filter-chip:active,.active-filters-clear:active{transform:scale(.97)}.active-filters-clear{color:var(--ink);background:0 0}.active-filter-chip:focus-visible,.active-filters-clear:focus-visible{outline:3px solid var(--red);outline-offset:2px}:root[data-theme=dark] .active-filter-chip{background:var(--tint);color:var(--brand-ink)}:root[data-theme=dark] .active-filters-clear{color:var(--ink);background:0 0}.list-card{flex-wrap:wrap;row-gap:0}body{background:var(--bg);color:var(--ink)}h1{font-family:var(--f-serif);letter-spacing:0;font-weight:900}.eyebrow{color:var(--brand-ink);letter-spacing:.06em}h1 em{color:var(--brand)}.app-shell{padding-inline:18px}.restaurant-card{box-shadow:0 10px 28px color-mix(in srgb,0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a 9%,transparent);border-radius:20px}@supports (color:color-mix(in lab, red, red)){.restaurant-card{box-shadow:0 10px 28px color-mix(in srgb,var(--shadow) 9%,transparent)}}.restaurant-gallery{height:150px}.card-content{gap:8px;padding:16px 18px 12px;display:grid}.card-content h2{letter-spacing:0;margin:0;font-size:23px;line-height:1.35}.card-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:13px;font-weight:600}.card-meta span+span{color:inherit}.card-status{background:var(--tint);color:var(--brand-ink);border-radius:999px;padding:2px 9px;font-size:12px;font-weight:700}.card-status.is-candidate{background:var(--warn-bg);color:var(--warn-ink)}.card-details summary{min-height:44px;color:var(--brand-ink);cursor:pointer;justify-content:space-between;align-items:center;padding:6px 0;font-size:14px;font-weight:700;list-style:none;display:flex}.card-details summary::-webkit-details-marker{display:none}.card-details[open] .menu-chevron{transform:rotate(180deg)}.card-details summary:focus-visible{outline:3px solid var(--brand);outline-offset:2px;border-radius:6px}.card-address,.card-price{color:var(--text-muted);margin:0;font-size:14px;line-height:1.6}.card-details .tag-row{margin:10px 0 0}.card-details .card-menu{background:var(--surface-2);margin:10px 0 0}.card-footer{border-top-color:var(--line);font-size:13px}.card-footer a{min-height:44px;color:var(--brand-ink);align-items:center;display:inline-flex}.actions .action-button.want,.primary-button{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.action-button.want small{color:var(--on-brand)}.swipe-hint,.data-note{font-size:12px}.list-card{border-radius:16px}.list-copy h3{font-size:15px}.list-copy p{font-size:12px}.bottom-nav{padding:8px 12px calc(8px + var(--safe-bottom));background:var(--surface);border-top:1px solid var(--line);gap:4px}.nav-item{min-width:0;color:var(--text-muted);border-radius:14px;flex:1;gap:3px;font-size:12px}.nav-item svg{flex:none}.nav-item.active,.nav-item[aria-current=page]{background:var(--tint);color:var(--brand-ink)}:root[data-theme=dark] .nav-item.active,:root[data-theme=dark] .nav-item[aria-current=page]{color:var(--brand-ink)}.nav-item:active{transform:scale(.97)}.list-empty,.empty-state{border-radius:20px}.list-loading{border-radius:18px}.campus-orientation{margin-top:24px}.illustration-label,.restaurant-gallery .hero-placeholder p{background:var(--surface);color:var(--ink)}@media (prefers-reduced-motion:reduce){.nav-item:active{transform:none}}.app-shell{padding-inline:var(--gutter);padding-bottom:calc(88px + var(--safe-bottom))}.topbar{gap:var(--s3);height:64px}main{padding-top:var(--s2)}.eyebrow{margin:0 0 var(--s1);font-size:12px}.intro-row{margin:0 0 var(--s4);gap:var(--s3)}.view>h1,.view>.eyebrow+h1{margin-bottom:var(--s4)}.restaurant-card{border-radius:var(--r-lg)}.card-content{padding:var(--s4);gap:var(--s2)}.card-meta{gap:var(--s1) var(--s2)}.card-details>*+*{margin-top:var(--s3)}.card-details .restaurant-provenance,.card-details .card-menu{margin:var(--s3) 0 0;padding:var(--s3) 0 0;border:0;border-top:1px solid var(--line);background:0 0;border-radius:0}.card-details .card-menu-heading h3{font-size:15px}.card-footer{padding-top:var(--s2);margin-top:var(--s1)}.actions{gap:var(--s3);padding:var(--s4) 0 0}.actions .action-button{min-width:112px;height:52px;padding:0 var(--s5)}.decision-feedback{margin:var(--s2) 0 0;min-height:24px}.decision-tools{gap:var(--s2);margin-top:var(--s2)}.decision-tools button,.decision-tools a{border-radius:var(--r-sm);padding:var(--s2) var(--s4)}.data-note{margin:var(--s4) auto 0;line-height:1.6}.filter-panel{padding:var(--s4);gap:var(--s3);margin:0 0 var(--s4);border-radius:var(--r-md)}.filter-panel select{min-height:var(--tap);border-radius:var(--r-sm)}.text-button{min-height:var(--tap);font-size:14px}.active-filters{margin:0 0 var(--s4);gap:var(--s2)}.active-filters-list{gap:var(--s2)}.filter-toggle,.theme-toggle{min-height:var(--tap)}.saved-list,.nearby-list{gap:var(--s3);margin-top:var(--s6)}.list-card{align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-radius:var(--r-md);flex-wrap:wrap;min-height:0;display:flex}.list-thumbnail,.list-thumbnail-link,.list-icon{border-radius:var(--r-sm);width:48px;height:48px}.list-copy{gap:2px;display:grid}.list-copy h3{margin:0;font-size:16px;line-height:1.4}.list-copy p{font-size:13px;line-height:1.5}.list-copy small{margin:0}.map-link,.remove-saved{width:var(--tap);height:var(--tap)}.list-provenance{min-width:0;padding-top:var(--s2);border-top:1px solid var(--line);flex:0 0 100%}.list-provenance .restaurant-provenance{background:0 0;border:0;margin:0;padding:0;font-size:13px}.list-empty,.empty-state{padding:var(--s10) var(--s6);border-radius:var(--r-lg)}.list-empty h2,.empty-state h2{margin:var(--s3) 0 var(--s2)}.list-empty p,.empty-state p{margin:0 auto var(--s4)}.list-loading{border-radius:var(--r-md);padding:var(--s5)}.primary-button{border-radius:var(--r-sm);padding:var(--s3) var(--s5)}.saved-comparison{margin-top:var(--s2)}.saved-comparison h2{margin:0 0 var(--s2);font-size:20px}.comparison-option{background:var(--surface);padding:var(--s3);border-radius:var(--r-sm)}.comparison-card{background:var(--surface);border-radius:var(--r-md);padding:var(--s4)}.comparison-cards{gap:var(--s3)}.campus-orientation{margin-top:var(--s6);padding:var(--s4);gap:var(--s3);border-radius:var(--r-md)}.bottom-nav{padding:var(--s2) var(--s3) calc(var(--s2) + var(--safe-bottom));gap:var(--s1)}.nav-item{border-radius:var(--r-sm);min-height:52px}.illustration-label{left:var(--s3);bottom:var(--s3);padding:var(--s1) var(--s3);border-radius:var(--r-sm)}.card-details .card-address+.card-price{margin-top:var(--s1)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
