@font-face{font-family:Geist;src:url('/randomizer/assets/geist.woff2') format('woff2');font-display:swap;font-weight:100 900}
:root{--red:#ed1427;--ink:#191919;--paper:#faf7ef;--base-font:Geist,Arial,sans-serif;color:var(--ink);font-family:var(--base-font);font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:#faf8f3}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #126aca;outline-offset:5px}button svg{width:24px;height:24px;flex-shrink:0}[hidden]{display:none!important}.topbar{max-width:1480px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:22px 4%;border-bottom:1px solid #ddd8ce}.wordmark{font-size:23px;font-weight:950;letter-spacing:-1.2px;text-decoration:none;line-height:.95}.wordmark span{color:var(--red)}.wordmark small{display:block;font-size:9px;letter-spacing:2.3px;font-weight:600;margin-top:7px}.topbar nav{display:flex;align-items:center;gap:26px;font-size:12px;font-weight:650}.topbar nav a{text-decoration:none}.share-button{background:white;border:1px solid #d0cac0;display:flex;align-items:center;gap:9px;padding:11px 15px;border-radius:7px;box-shadow:0 2px 0 #ded8ce}.share-button svg{width:18px;height:18px}.tabletop{position:relative;overflow:clip;isolation:isolate;background-color:#fbfaf6;background-image:radial-gradient(#9c8f7010 .7px,transparent .7px);background-size:8px 8px;min-height:calc(100vh - 170px)}.cloth{position:absolute;width:700px;height:260px;left:-220px;bottom:-185px;z-index:-1;transform:rotate(23deg);background-color:#f4eee3;background-image:repeating-linear-gradient(0deg,transparent 0 25px,#d51a3355 25px 49px),repeating-linear-gradient(90deg,transparent 0 25px,#d51a334a 25px 49px);box-shadow:0 -4px 25px #baac8f33;border-top:1px solid #fff}.play-layout{max-width:1460px;margin:auto;padding:46px 4% 48px;display:grid;grid-template-columns:minmax(280px,365px) minmax(0,1fr);gap:5%;align-items:start}.eyebrow{font-size:10px;font-weight:750;letter-spacing:2px;margin:0 0 15px;color:#605a51}h1{font-family:Impact,'Arial Narrow',Geist,Arial,sans-serif;font-size:clamp(36px,3.8vw,58px);font-weight:950;line-height:1.03;letter-spacing:-1.3px;margin:0;white-space:nowrap}h1 .product-title{color:var(--red);position:relative;display:inline-block;padding-bottom:12px}h1 .product-title:after{content:'';position:absolute;bottom:1px;left:0;width:97%;height:5px;background:var(--red);transform:rotate(-2deg);clip-path:polygon(0 14%,98% 0,100% 37%,79% 83%,0 100%)}.handwritten{font-family:'Comic Sans MS','Segoe Print',cursive;font-size:26px;font-weight:650;line-height:1.13;margin:16px 0 24px;transform:rotate(-3deg)}.modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;justify-items:center;gap:10px;margin-top:18px;padding:8px 0 6px;container-type:inline-size}
.mode{position:relative;isolation:isolate;display:grid;place-items:center;width:min(100%,136px);aspect-ratio:1;min-height:0;padding:0;border:0;border-radius:50%;appearance:none;background:var(--mode-idle) center/100% 100% no-repeat;color:#fff;text-align:center;filter:drop-shadow(0 5px 5px #19191924);transition:filter .15s,box-shadow .15s}
.mode::before{content:'';position:absolute;inset:0;border-radius:inherit;background:var(--mode-active) center/100% 100% no-repeat;opacity:0;transition:opacity .12s,filter .12s;pointer-events:none}
.mode::after{content:'';position:absolute;inset:17%;border-radius:50%;background:radial-gradient(circle at 50% 42%,var(--mode-face-light) 0 42%,var(--mode-light) 85%);mix-blend-mode:screen;box-shadow:inset 0 0 12px 3px var(--mode-core),0 0 9px 4px var(--mode-light),0 0 20px 5px var(--mode-glow);opacity:0;transition:opacity .12s;pointer-events:none}
.mode:hover:not(:disabled){filter:drop-shadow(0 5px 5px #19191930) brightness(1.06)}
.mode:is([aria-pressed=true],:active:not(:disabled))::before{opacity:1;filter:brightness(1.1) saturate(1.08)}
.mode:is([aria-pressed=true],:active:not(:disabled))::after{opacity:.4}
.mode[aria-pressed=true]{filter:drop-shadow(0 0 3px color-mix(in srgb,var(--mode-light) 50%,transparent)) drop-shadow(0 0 7px var(--mode-glow));box-shadow:0 0 0 1px var(--mode-core),0 0 7px 2px var(--mode-glow),0 0 13px 3px var(--mode-glow)}
.mode[aria-pressed=true]:disabled{opacity:1}
.mode-label{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:72%;text-shadow:0 1px 2px #000,0 0 5px #0006;transition:transform .12s}
.mode:is([aria-pressed=true],:active:not(:disabled)) .mode-label{transform:translateY(3px)}
.mode[aria-pressed=true] .mode-label{text-shadow:0 1px 2px #000,0 0 2px #000,0 2px 5px #000c}
.mode:focus-visible{outline:3px solid #191919;outline-offset:5px}
.mode svg{width:clamp(17px,6cqi,22px);height:clamp(17px,6cqi,22px);filter:drop-shadow(0 1px 1px #0009)}
.mode span{flex:none;max-width:100%}
.mode strong{display:block;font-size:clamp(10px,3.15cqi,12px);font-weight:900;letter-spacing:-.4px;line-height:1.16}
.mode-know strong{font-size:clamp(10px,3cqi,11.5px);text-wrap:balance}
.mode-know .mode-label{width:78%}
.mode-help{--mode-face-light:#34fff2;--mode-light:#00e3d6;--mode-core:#c8fff9;--mode-glow:#00c9c45c;--mode-idle:url('/randomizer/assets/mode-teal-idle.webp');--mode-active:url('/randomizer/assets/mode-teal-active.webp')}
.mode-know{--mode-face-light:#b36dff;--mode-light:#942fff;--mode-core:#ead4ff;--mode-glow:#8637ef69;--mode-idle:url('/randomizer/assets/mode-purple-idle.webp');--mode-active:url('/randomizer/assets/mode-purple-active.webp')}
.options{margin-top:20px;border:1px solid #d9d5cc;border-radius:11px;background:#fffefbf0;box-shadow:0 4px 8px #32281412;overflow:hidden}.options summary{list-style:none;display:flex;align-items:center;gap:10px;padding:17px 16px;font-size:17px;font-weight:850;cursor:pointer}.options summary::-webkit-details-marker{display:none}.options summary svg{width:22px;height:22px}.options summary span{margin-left:auto;font-size:9px;font-weight:550;color:#766e63}.options summary:after{content:'+';font-size:24px;font-weight:400}.options[open] summary:after{content:'−'}.options[open] summary{border-bottom:1px solid #e6e2db}.option-body{padding:18px 18px 15px}.option-body>label:not(.checkbox){display:block;font-size:11px;font-weight:750;margin:13px 0 7px}.option-body>label:first-child{margin-top:0}.optional{font-weight:400;color:#6c645a;margin-left:4px}input,select{padding:11px 12px;border:1px solid #cdc6ba;border-radius:6px;background:#fff;width:100%;font-size:13px;color:#24211d}.checkbox{display:flex;align-items:center;gap:11px;padding:12px 0;font-size:12px;font-weight:650}.checkbox input{width:20px;height:20px;accent-color:var(--red);flex-shrink:0}.checkbox small{display:block;font-size:10px;color:#72695e;font-weight:400;margin-top:4px}.micro{font-size:10px;color:#756c60;line-height:1.65;margin:7px 0}.text-button{border:0;background:none;padding:12px 0 3px;font-size:11px;text-decoration:underline;text-underline-offset:3px}.signin{font-size:11px;font-weight:650;text-underline-offset:3px;display:inline-block;padding:8px 0}.lineup{font-size:10px;font-weight:600;color:#766c5e;line-height:1.8;margin:17px 0 0}.wheel-column{text-align:center;min-width:0}.round-title{min-height:50px;margin-bottom:18px}.round-title span{font-size:9px;letter-spacing:2.1px;font-weight:700;color:#736957}.round-title h2{font-size:20px;font-weight:900;letter-spacing:.1px;margin:6px 0 0}.wheel{aspect-ratio:1;position:relative;max-width:790px;width:100%;margin:auto;filter:drop-shadow(3px 18px 13px #70625440)}.wheel:before{content:'';position:absolute;inset:3.3% 2% 0;border-radius:50%;background:linear-gradient(#edeae4,#a99e91);box-shadow:0 12px 2px #c7bfb6,0 17px 4px #8c817c}.wheel-rim,.wheel-ring{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.wheel-ring{will-change:transform;transform-origin:50% 50%}.hub{position:absolute;z-index:3;width:50%;height:50%;inset:25%;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 40% 30%,#fffefa,#f9f6ed 63%,#ded8ce 86%,#a89984);border:6px solid #fff;box-shadow:0 0 0 3px #a39584,0 0 0 8px #f7f5ed,0 8px 8px #33281755,0 -4px 8px #fff}.hub img{width:97%;height:97%;object-fit:contain;user-select:none}.pointer{position:absolute;z-index:5;width:12.5%;height:16%;left:43.75%;top:-.6%;filter:drop-shadow(0 4px 2px #44200d66)}.spin-button{position:relative;z-index:6;margin:23px auto 0;display:flex;justify-content:center;align-items:center;gap:24px;min-width:270px;padding:17px 29px;color:#fff;background:linear-gradient(#f52b3b,#dd071d);border:1px solid #d20718;border-radius:8px;font-size:19px;font-weight:900;letter-spacing:.3px;box-shadow:0 5px 0 #960b17,0 9px 14px #b1041a30}.spin-button:hover:not(:disabled){transform:translateY(-2px)}.spin-button:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px 0 #960b17}.spin-button svg{width:22px;height:22px}.wheel-note{font-size:10px;margin:14px 0 0;color:#7b705f}.food-picker{background:#fffef9;border:1px solid #d9d0c1;border-radius:10px;margin-top:19px;padding:16px}.food-picker>label{font-weight:850;font-size:14px;display:block;margin-bottom:10px}.search-field{display:flex;position:relative}.search-field input{padding-right:46px;font-size:11px;min-height:42px}.search-field button{position:absolute;right:3px;top:3px;bottom:3px;border:0;background:var(--ink);color:#fff;border-radius:4px;width:35px;font-size:19px}.category-chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.category-chips button{background:#fff;border:1px solid #d5cec0;border-radius:5px;padding:9px 10px;font-size:10px;font-weight:650}.category-chips button[aria-pressed=true]{color:#fff;background:var(--red);border-color:var(--red)}.result{max-width:1100px;margin:0 auto 48px;display:flex;background:#fffef8;border:1px solid #d6cbb9;border-radius:16px;overflow:hidden;box-shadow:0 10px 25px #38281716}.result-photo{flex:0 0 36%;min-height:340px;background:#f0eade}.result-photo img{width:100%;height:100%;max-height:500px;object-fit:cover;display:block}.result-copy{padding:35px 38px;flex:1;min-width:0}.fate{font-size:11px;font-weight:850;letter-spacing:2px;color:var(--red);margin:0 0 12px}.result h2{font-size:clamp(27px,3vw,43px);font-weight:900;line-height:1.07;letter-spacing:-1.4px;margin:0 0 12px}.result-place{font-size:13px;font-weight:650;color:#635a4d}.result-food{font-size:13px}.menu-match{font-size:13px;border-left:3px solid var(--red);padding-left:12px;line-height:1.55}.result-links{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:22px}.go-eat{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;background:var(--red);color:white;text-decoration:none;font-size:15px;font-weight:850;border-radius:7px;padding:15px 21px;border:0;min-height:48px}.profile-link{font-size:12px;font-weight:650;text-underline-offset:4px}.replay{display:flex;align-items:center;gap:22px;margin-top:21px}.replay button{padding:10px 0;border:0;background:none;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:5px}.replay button:first-child{color:#b20b1c}.personal-result{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.personal-result button{font-size:11px;padding:9px 12px;border:1px solid #c9c0b3;border-radius:5px;background:white}.result-logo img{width:85px;height:65px;object-fit:contain;margin:0 0 12px}.feedback{max-width:620px;margin:20px auto 45px;border:1px solid #a81b29;background:#fff4f1;padding:20px;border-radius:8px;font-size:13px}.feedback button{background:white;border:1px solid #a18e79;border-radius:4px;padding:9px 14px}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1400px;margin:auto;padding:22px 4%;font-size:10px;color:#6f6556}footer>a{text-decoration:none}footer strong{color:#2c2821}footer>div{display:flex;gap:22px}footer button{font-size:10px;padding:9px 0;background:none;border:0;white-space:nowrap}dialog{border:1px solid #ccc1ad;border-radius:14px;max-width:500px;width:calc(100% - 32px);padding:35px;box-shadow:0 25px 70px #14090544}dialog::backdrop{background:#25201899}dialog h2{font-size:26px;font-weight:850;letter-spacing:-1px;margin:0 0 18px}dialog p{font-size:13px;line-height:1.65}dialog a{font-size:12px;text-underline-offset:3px}.dialog-close{position:absolute;top:6px;right:8px;border:0;background:none;font-size:28px;padding:9px;line-height:1}dialog form label{display:block;font-size:12px;font-weight:700;margin:15px 0 6px}dialog form button{width:100%;margin-top:18px}.skip-link{position:fixed;left:15px;top:-70px;background:white;z-index:20;padding:12px}.skip-link:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.noscript{padding:20px;text-align:center}.is-gastromob-embed .topbar nav>a:not(.home-link){display:none}.is-gastromob-embed .play-layout{padding-top:30px}.is-spinning .pointer{animation:pointer-tick .12s ease-in-out infinite alternate}@keyframes pointer-tick{to{transform:rotate(4deg);transform-origin:50% 10%}}
@media(min-width:1400px){.play-layout{gap:6%;grid-template-columns:390px minmax(0,1fr)}}
@media(max-width:1000px){.play-layout{gap:3%;padding:35px 3%;grid-template-columns:minmax(245px,300px) minmax(0,1fr)}h1{font-size:38px}.handwritten{font-size:24px}.round-title h2{font-size:17px}.hub{border-width:4px;box-shadow:0 0 0 2px #a39584,0 0 0 5px #f7f5ed,0 8px 8px #33281755}.result{margin-left:3%;margin-right:3%}.topbar nav{gap:18px}.spin-button{min-width:220px;font-size:16px}.result-copy{padding:28px}}
@media(max-width:680px){.topbar{padding:16px 5%;gap:10px}.wordmark{font-size:18px}.wordmark small{font-size:7px;letter-spacing:1.8px}.topbar nav>a{display:none}.topbar nav{gap:0}.share-button{padding:10px;border:0;background:transparent;box-shadow:none;font-size:10px}.share-button svg{width:17px;height:17px}.play-layout{display:flex;flex-direction:column;gap:22px;padding:25px 5% 35px}.controls{width:100%}.eyebrow{text-align:center;font-size:8px;letter-spacing:1.8px;margin-bottom:10px}h1{text-align:center;font-size:clamp(32px,9.1vw,48px);letter-spacing:-1px}h1 br{display:none}h1 .product-title{display:block;width:fit-content;margin:auto;padding-bottom:9px}.handwritten{text-align:center;font-size:19px;line-height:1.15;margin:12px 0 21px}.handwritten br{display:none}.options{margin-top:15px}.options summary{padding:13px 15px;font-size:14px}.options summary span{font-size:9px}.lineup{margin:12px 0 0;text-align:center;font-size:9px}.wheel-column{width:calc(100% + 16px);max-width:540px}.round-title{margin-bottom:10px;min-height:36px}.round-title span{font-size:8px}.round-title h2{font-size:16px;margin-top:4px}.spin-button{margin-top:17px;font-size:17px;min-width:230px;padding:15px 24px}.wheel-note{font-size:9px;line-height:1.6;padding:0 10px}.result{display:block;margin:0 5% 32px;border-radius:12px}.result-photo{height:195px;min-height:0}.result-copy{padding:25px}.result h2{font-size:32px}.result-links{gap:17px;margin-top:19px}.go-eat{font-size:14px;width:100%}.result-place{font-size:12px}footer{padding:16px 5%;flex-direction:column;gap:5px;font-size:10px}footer>div{gap:28px}.cloth{bottom:-214px}.is-gastromob-embed .play-layout{padding-top:20px}dialog{padding:28px}.feedback{margin:15px 5% 30px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.wheel-ring{will-change:auto}}

.discovery-note{padding:15px 17px;margin-top:18px;border:1px solid #d8c18c;background:#fff3d5;border-radius:12px;color:#594016;font-size:13px;line-height:1.5}.discovery-note strong{font-size:12px;letter-spacing:.08em}.discovery-note p{margin:7px 0}.discovery-note a{color:#594016;text-underline-offset:3px}.unvetted{padding:12px 14px;border-left:4px solid #a06c0c;background:#fff3d5;color:#594016;border-radius:4px;font-size:14px;line-height:1.5}#meal-options>label{display:block}

.affiliation{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:800;letter-spacing:.02em}.affiliation img{width:40px;height:40px;object-fit:contain}.affiliation.unaffiliated{display:inline-block;padding:8px 12px;background:#30271b;color:#fff3d5;border-radius:6px}.join-invite{font-size:14px;line-height:1.5}.join-invite a{font-weight:700;color:#bd1021;text-underline-offset:3px}

.wheel-tap{position:absolute;inset:3%;width:94%;height:94%;z-index:6;border:0;border-radius:50%;background:transparent;padding:0;touch-action:manipulation}.wheel-tap:disabled{opacity:1}.wheel-actions{display:flex;justify-content:center;align-items:center;gap:15px;flex-wrap:wrap;margin:23px auto 0}.wheel-actions .spin-button{margin:0;min-width:0;max-width:100%}.wheel-reset{border:1px solid #bdb3a4;background:#fffaf1;color:#302a22;border-radius:7px;padding:13px 16px;min-height:46px;font-size:12px;font-weight:750}.wheel-disclaimer{max-width:410px;margin:8px auto 0;padding:0 10px;font-size:10px;line-height:1.6;color:#5c564e}@media(max-width:560px){.wheel-actions{gap:10px;margin-top:18px}.wheel-actions .spin-button{padding:15px 17px;font-size:15px}.wheel-reset{padding:12px;font-size:11px}}

.food-picker{margin:0 0 16px;padding:14px;border:2px solid transparent;border-radius:10px;background:#fff}.food-picker.is-selected{border-color:#ed1525;background:#fff6ed;box-shadow:0 0 0 3px #ed152514}.food-picker>label{margin-top:0}.food-picker .micro{margin-bottom:0}.food-picker.is-selected>label{color:#ba1221}

/* Search labels slide through a steady button while its lookup is pending. */
.spin-label-window{display:block;overflow:hidden;min-height:1.25em;line-height:1.25;text-align:center}
#spin-label{display:block}
.spin-button.is-searching{min-width:min(18.5em,100%);max-width:100%}
.spin-button.is-searching:disabled{opacity:1;cursor:wait}
.spin-button.is-searching svg{animation:search-turn 1.5s linear infinite;flex-shrink:0}
.feedback.is-warning{border-color:#c5b07b;background:#fff9e8}
@keyframes search-turn{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.spin-button.is-searching svg{animation:none}}

.use-location{display:inline-flex;align-items:center;gap:8px;margin:10px 0 0;min-height:44px;padding:10px 13px;border:1px solid #bcafa0;border-radius:6px;background:#fffaf1;color:#302a22;font-size:12px;font-weight:750}
.use-location svg{width:18px;height:18px;flex-shrink:0}
#location-status{margin:7px 0 13px}

/* Location is the first screen, including before the application script loads. */
.location-panel{margin:0 0 18px;background:#fffaf1;border-color:#c6b998}
.location-panel summary{min-height:65px;font-size:18px}.location-panel summary>svg{width:29px;height:29px;color:var(--red);flex-shrink:0}
.location-panel summary span{max-width:52%;font-size:11px;line-height:1.4;text-align:right;overflow-wrap:anywhere}
#filter-options>label:not(.checkbox){display:block;font-size:11px;font-weight:750;margin:13px 0 7px}
.random-options-note{font-size:12px;margin:0;line-height:1.6}.round-title.category-picked h2{color:var(--red)}
.continue-category{border:1px solid #292a27;border-radius:8px;background:#292a27;color:white;font-weight:900;font-size:17px;padding:17px 24px;min-height:52px;box-shadow:0 4px 0 #111}.continue-category:hover:not(:disabled){transform:translateY(-2px)}@media(max-width:560px){.continue-category{font-size:15px;padding:15px 17px}.wheel-actions:has(.continue-category:not([hidden])) .wheel-reset{flex-basis:100%;max-width:160px}}
.round-title{position:relative;padding:0 48px}.sound-toggle{position:absolute;right:0;top:4px;width:44px;height:44px;display:grid;place-items:center;border:1px solid #cfc6b8;background:#fffaf1;border-radius:50%;padding:10px;color:#393126}.sound-toggle svg{width:23px;height:23px}.sound-toggle[aria-pressed=false]{color:#756c60}
#headline{text-transform:none}.product-label{font-size:11px;font-weight:850;letter-spacing:.06em;color:#b91123;margin:0 0 9px}
@media(max-width:680px){.location-panel{margin-bottom:13px}.location-panel summary{font-size:16px;padding:13px 15px}.location-panel summary span{font-size:10px}}

/* Universal GastroMob wordmark: original logo first; black/cream Gastro, red Mob. */
.brand-name{white-space:nowrap;letter-spacing:inherit;text-transform:none}.brand-name .gastro{color:var(--brand-gastro,var(--ink))}.brand-name .mob{color:var(--red)}.brand-name.on-dark .gastro{color:var(--paper)}
.affiliation.unaffiliated,.shared-table,.spin-button,.mode-help,.mode-know{--brand-gastro:var(--paper)}
#headline .brand-name,#headline .brand-name span{display:inline;padding:0;margin:0;position:static}#headline .brand-name:after,#headline .brand-name span:after{content:none}
.product-label{color:var(--ink)}.product-label .brand-name,.product-label .brand-name span{font:inherit;letter-spacing:inherit}.eyebrow .brand-name{font-weight:900}
.brand-logo{display:block;flex-shrink:0;line-height:0}.brand-logo img{display:block;object-fit:contain;max-width:100%;height:auto}.header-logo{width:144px}.footer-logo{width:128px;margin-left:auto}.topbar{padding-top:8px;padding-bottom:8px}.topbar nav .home-link{font-size:13px;font-weight:750}.footer-actions{margin-left:auto}#attribution{max-width:220px;line-height:1.8}
.wheel-actions.is-category-picked{display:grid;grid-template-columns:minmax(0,2fr) minmax(100px,1fr);max-width:510px;gap:14px}.is-category-picked .continue-category{width:100%;min-height:62px;font-size:21px;background:linear-gradient(#f52b3b,#dd071d);border-color:#d20718;box-shadow:0 5px 0 #960b17;padding:17px 20px}.is-category-picked .spin-button{width:100%;min-height:54px;padding:14px 16px;font-size:16px;gap:10px;background:#fffaf1;color:#302a22;border-color:#bdb3a4;box-shadow:0 3px 0 #b8ad9c}.is-category-picked .wheel-reset{grid-column:1 / -1;justify-self:center;min-height:40px;padding:10px 16px}
@media(max-width:680px){.header-logo{width:104px}.topbar nav>a.home-link{display:block;font-size:11px}.topbar nav{gap:10px;flex-wrap:wrap;justify-content:flex-end}.share-button span{max-width:66px;text-align:left}.footer-logo{width:100px;margin-left:auto}footer{flex-direction:row;flex-wrap:wrap;gap:10px}.footer-actions{order:-1;width:100%;justify-content:center;margin:0}#attribution{max-width:190px;flex:1}.wheel-actions.is-category-picked{width:calc(100% - 24px);gap:12px}.is-category-picked .continue-category{min-height:58px;font-size:18px;padding:15px 12px}.is-category-picked .spin-button{font-size:14px;padding:13px 10px;gap:8px}.is-category-picked .spin-button svg{width:19px;height:19px}}

.shared-table{background:var(--ink);color:var(--paper);font-size:14px}.result-links>.profile-link{flex-basis:100%}

.opening-note{font-weight:650;color:#6c4d13;background:#fff3ce;padding:12px;border-radius:6px;line-height:1.5}

:is(.affiliation.unaffiliated,.shared-table,.spin-button) .brand-name .gastro{color:var(--paper)}
.venue-preference{margin:18px 0}.venue-preference>label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:12px;font-weight:750}.venue-preference output{font-size:11px;font-weight:600;text-align:right}.venue-preference input[type=range]{min-height:44px;padding:0;border:0;background:transparent;accent-color:var(--red);cursor:pointer}.venue-detail{font-size:13px;line-height:1.6;margin:10px 0}.unknown-detail{color:#65543c}

.venue-preference>label{font-size:.875rem;flex-wrap:wrap}.venue-preference output{font-size:.875rem}.venue-preference .micro{font-size:.8125rem;line-height:1.5}

.menu-sources {line-height:1.6;margin:0 0 1.5rem}.menu-sources a {font-weight:700;text-decoration:underline;text-underline-offset:3px}.menu-sources .micro {display:block}
.install-preview{display:flex;align-items:center;gap:16px;margin:20px 0}.install-preview img{flex:none;width:80px;height:80px;border-radius:16px}.install-preview strong{font-size:1.125rem}.install-preview p{margin:8px 0 0}#info-body:has(.install-preview)>p{font-size:1rem;line-height:1.5}#info-body:has(.install-preview) .go-eat{font-size:1rem}
footer #get-app{min-height:44px;font-size:14px}
.account-banner{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px;margin:16px 0;font-size:16px;line-height:1.5}.account-banner a{font-weight:750;text-decoration:underline;text-underline-offset:3px}.account-banner button{min-height:44px;padding:8px 12px;border:1px solid #191919;border-radius:6px;background:#fff;font-size:14px}.account-banner strong{font-weight:850}.account-banner span{color:#544b3f}

.account-banner strong:not(:empty){flex-basis:100%;font-size:21px}.account-banner span{font-size:12px}.round-title h2{overflow-wrap:anywhere}
/* A compact, continuous loop; its second copy is hidden from assistive tools. */
.disclaimer-ticker{display:flex;align-items:center;gap:6px;max-width:100%;min-width:0;margin:12px 0 0;padding:0 6px 0 10px;border:1px solid #d8c18c;border-radius:7px;background:#fff3d5;color:#594016;font-size:11px;line-height:1.5;text-align:left}
.ticker-window{min-width:0;flex:1;overflow:hidden}.ticker-track{display:flex;width:max-content;animation:disclaimer-scroll var(--ticker-duration,40s) linear infinite;will-change:transform}.ticker-copy{display:flex;align-items:center;flex:none;gap:28px;padding-right:28px;white-space:nowrap}.ticker-copy>span:empty{display:none}.ticker-toggle{flex:none;min-height:44px;padding:7px 6px;border:0;border-left:1px solid #d8c18c;background:transparent;color:#594016;font-size:10px;font-weight:700;text-decoration:underline;text-underline-offset:3px}.wheel-disclaimer{width:100%;margin:9px auto 0;background:#fffaf1;border-color:#ddd2c2;color:#5c564e}.wheel-disclaimer .ticker-toggle{border-color:#ddd2c2;color:#5c564e}
.ticker-window:focus-within .ticker-track,.disclaimer-ticker.is-paused .ticker-track{animation-play-state:paused}
@media(hover:hover){.disclaimer-ticker:hover .ticker-track{animation-play-state:paused}}
@keyframes disclaimer-scroll{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.ticker-window{overflow:visible}.ticker-track{display:block;width:auto;animation:none;will-change:auto}.ticker-copy{display:block;white-space:normal;padding:7px 0}.ticker-copy>span,.ticker-copy>a{display:block;margin:4px 0}.ticker-repeat,.ticker-toggle{display:none}}

.winner-celebration{position:fixed;inset:0;z-index:100;pointer-events:none;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at center,#18140d55,#18140dc4)}
.winner-celebration[hidden]{display:none}
.winner-celebration:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse,#ffce4540,transparent 65%)}
.winner-bursts{position:absolute;inset:0;overflow:hidden}
.winner-burst{position:absolute;width:0;height:0}
.winner-firework{position:absolute;left:-4px;top:-10px;width:8px;height:20px;border-radius:50%;background:var(--spark-color);box-shadow:0 0 16px var(--spark-color),0 0 4px #fff;opacity:1;transform:translate(var(--spark-x),var(--spark-y)) rotate(var(--spark-angle));animation:winner-firework 1.8s ease-out var(--spark-delay) both}
.winner-sparkle{position:absolute;width:var(--spark-size,30px);height:var(--spark-size,30px);background:var(--spark-color);clip-path:polygon(50% 0,60% 38%,100% 50%,60% 62%,50% 100%,40% 62%,0 50%,40% 38%);filter:drop-shadow(0 0 8px var(--spark-color));opacity:1;animation:winner-sparkle 1.6s ease-out var(--spark-delay) both}
.is-celebrating .wheel{filter:drop-shadow(0 0 18px #ffce4580) drop-shadow(3px 18px 13px #70625440)}
@keyframes winner-firework{0%{opacity:0;transform:translate(0,0) scale(.4) rotate(var(--spark-angle))}12%{opacity:1}70%{opacity:.9}100%{opacity:.35;transform:translate(var(--spark-x),var(--spark-y)) scale(.6) rotate(var(--spark-angle))}}
@keyframes winner-sparkle{0%{opacity:.3;transform:translateY(0) scale(.55) rotate(0)}25%{opacity:1;transform:translateY(-7px) scale(1.15) rotate(35deg)}100%{opacity:.55;transform:translateY(32px) scale(.7) rotate(135deg)}}
.winner-celebration.is-reduced .winner-firework,.winner-celebration.is-reduced .winner-sparkle{animation:none}
@media(prefers-reduced-motion:reduce){.winner-firework,.winner-sparkle{animation:none}.is-celebrating .wheel{filter:drop-shadow(3px 18px 13px #70625440)}}
.inventory-ad{margin:36px auto;width:calc(100% - 48px);max-width:900px;border:3px solid #171713;box-shadow:6px 6px 0 #171713;background:#fff4d6;color:#171713;grid-column:1/-1}.inventory-ad[data-ad-shape="rectangle"]{max-width:560px}.inventory-ad[data-ad-shape="square"]{max-width:420px}.inventory-ad a{display:block;color:inherit;text-decoration:none}.inventory-ad small{display:block;padding:12px 18px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1px}.inventory-ad img{display:block;width:100%;height:auto;object-fit:contain}.inventory-ad a:focus-visible{outline:3px solid #ed1427;outline-offset:-3px}

/* Match GastroMob's main action, secondary action and text-link definitions. */
:root{--action-primary:#b82410;--action-primary-hover:#861b0d;--action-paper:#fff3d6;--action-ink:#171713;--link-text:#7d2619;--link-hover:#4b1710}
body a[href]:not(:where(.brand-logo,.go-eat,.skip-link,.inventory-ad a)){color:var(--link-text);font-weight:750;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
body a[href]:not(:where(.brand-logo,.go-eat,.skip-link,.inventory-ad a)):is(:hover,:focus-visible){color:var(--link-hover);text-decoration-thickness:3px}
body :is(.go-eat,.spin-button,.continue-category){background:var(--action-primary);color:var(--action-paper);border:2px solid var(--action-ink);border-radius:4px;box-shadow:3px 3px 0 var(--action-ink);min-height:44px;font-weight:800;line-height:1.35;text-decoration:none}
body :is(.shared-table,.wheel-reset,.share-button){background:var(--action-paper);color:var(--action-ink);border:2px solid var(--action-ink);border-radius:4px;box-shadow:3px 3px 0 var(--action-ink);min-height:44px;padding:10px 14px;font-weight:800;line-height:1.35;text-decoration:none}
body .wheel-actions.is-category-picked .spin-button{background:var(--action-paper);color:var(--action-ink);border:2px solid var(--action-ink);border-radius:4px;box-shadow:3px 3px 0 var(--action-ink)}
body .wheel-actions.is-category-picked .continue-category{background:var(--action-primary);color:var(--action-paper);border:2px solid var(--action-ink);border-radius:4px;box-shadow:3px 3px 0 var(--action-ink)}
body :is(.go-eat,.spin-button,.continue-category):is(:hover,:focus-visible):not(:disabled){background:var(--action-primary-hover);color:var(--action-paper);transform:none;text-decoration:underline;text-underline-offset:4px}
body :is(.shared-table,.wheel-reset,.share-button,.wheel-actions.is-category-picked .spin-button):is(:hover,:focus-visible):not(:disabled){background:#f6e6c4;color:var(--action-ink);transform:none;text-decoration:underline;text-underline-offset:4px}
body :is(a[href],button,input,select,summary):focus-visible{outline:3px solid var(--action-ink);outline-offset:3px;box-shadow:0 0 0 6px #fff8df}
.topbar nav a{display:inline-flex;align-items:center;min-height:44px}
@media(prefers-reduced-motion:reduce){body a[href]{transition:none}}

/* A centered original logo keeps navigation below the bottom advertisement. */
.topbar{justify-content:center;padding:12px 4%}
.topbar .header-logo{width:180px;margin:0 auto}
.site-links{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px 24px;max-width:1100px;margin:0 auto;padding:16px 5% 8px;font-size:14px;font-weight:750}
.site-links a{display:inline-flex;align-items:center;min-height:44px}
.site-links .share-button{gap:8px;font-size:14px}
.site-links .share-button span{max-width:none;text-align:center}
#result-details{scroll-margin-top:20px}
@media(max-width:680px){.topbar .header-logo{width:140px}.site-links{gap:10px 18px;font-size:13px}.site-links .share-button{font-size:13px}}

/* The round panic button takes the page on a short, improbable detour. */
.hero-heading{display:grid;place-items:center;padding:24px 16px 0}
.hero-heading h1{min-width:0;text-align:center;font-size:clamp(26px,6vw,36px);font-size:clamp(25px,9.5cqi,42px);letter-spacing:-1px}
.hero-heading h1 .brand-name{white-space:nowrap}
.improbability-drive{position:relative;isolation:isolate;width:min(100%,136px);aspect-ratio:1;min-height:0;margin:0;padding:7px;border:1px solid #969a9e;border-radius:50%;background:linear-gradient(135deg,#f5f5f3 5%,#c2c6c8 38%,#7b8085 65%,#e5e7e7 86%,#656b71);text-align:center;box-shadow:0 4px 0 #60656b,0 8px 12px #19191930,inset 0 1px 2px #fff;cursor:pointer;transition:transform .15s,box-shadow .15s}
.panic-face{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;width:100%;height:100%;border:1px solid #a43115;border-radius:50%;background:radial-gradient(circle at 38% 20%,#ffae4b,#e84816 57%,#a92310);color:#fff;text-shadow:0 1px 1px #86260c;box-shadow:inset 0 2px 4px #fff6,inset 0 -3px 5px #86260c65}
.panic-face:before{content:'';position:absolute;top:5%;left:15%;width:70%;height:22%;border-radius:50%;background:linear-gradient(#fff6,#fff0);pointer-events:none}
.panic-face>span{font-size:clamp(10px,3.2cqi,12px);font-weight:650;line-height:1.1;letter-spacing:.3px}
.panic-face strong{font-size:clamp(14px,5cqi,19px);font-weight:950;line-height:1.1;letter-spacing:-.4px}
.improbability-drive:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 0 #60656b,0 10px 14px #19191930,inset 0 1px 2px #fff}
.improbability-drive:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px 0 #60656b,0 4px 8px #19191930}
.improbability-drive:focus-visible,#abort-drive:focus-visible{outline:3px solid #126aca;outline-offset:4px}
.improbability-drive:disabled{opacity:.65;cursor:wait}
.improbability-layer{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at center,rgba(39,30,61,.94),rgba(39,30,61,.65) 70%);color:#fff3d5;isolation:isolate}
.improbability-layer[hidden]{display:none}
.improbability-console{position:relative;max-width:660px;max-height:calc(100dvh - 40px);overflow:auto;pointer-events:auto;width:100%;text-align:center;padding:20px 16px;border:1px solid #fff3d53b;border-radius:24px;background:#282039f5;box-shadow:0 16px 60px #0004;transform:rotate(-1deg)}
.improbability-eyebrow{font-size:12px;letter-spacing:2px;color:#ffce45}
.improbability-console strong{display:block;font-size:clamp(20px,4.5vw,30px);line-height:1.1;letter-spacing:-.5px;margin:10px 0 14px}
.improbability-frame{position:relative;width:100%;aspect-ratio:3/2;max-height:50dvh;overflow:hidden;border:2px solid #ffce4570;border-radius:16px;background:radial-gradient(ellipse,#5c3c79,#181323);box-shadow:0 0 26px #a874df30}
#improbability-image,#improbability-previous{position:absolute;inset:0;display:block;object-fit:contain;width:100%;height:100%;margin:0}#improbability-image[hidden],#improbability-previous[hidden]{display:none}
#improbability-caption{font-size:16px;margin:14px 0 12px;min-height:2.8em;line-height:1.4}
.drive-progress{font-size:14px;line-height:1.5;color:#ffe59d;margin:0 auto 14px;max-width:380px}
#abort-drive{pointer-events:auto;min-height:44px;padding:10px 18px;background:#fff3d5;border:0;border-radius:24px;color:#332315;font-size:14px;font-weight:750;cursor:pointer}
.improbability-orbits{position:absolute;inset:-10%;z-index:-1;overflow:hidden;background:radial-gradient(circle at 15% 24%,#ffce4599 0 3px,transparent 5px),radial-gradient(circle at 85% 35%,#d8c2ffbb 0 4px,transparent 7px),radial-gradient(circle at 20% 80%,#fff8 0 2px,transparent 5px),radial-gradient(circle at 82% 86%,#ffce45aa 0 5px,transparent 8px);animation:drive-orbit 9s ease-in-out infinite}
.improbability-orbits img{position:absolute;width:clamp(75px,19vw,170px);opacity:.8;animation:drive-orbit 7s ease-in-out infinite}
.improbability-orbits img:nth-child(1){left:2%;top:3%;--orbit-turn:22deg}
.improbability-orbits img:nth-child(2){right:1%;top:9%;animation-delay:-2s;--orbit-turn:-35deg}
.improbability-orbits img:nth-child(3){left:4%;bottom:4%;animation-delay:-4s;--orbit-turn:55deg}
.improbability-orbits img:nth-child(4){right:0;bottom:12%;animation-delay:-1s;--orbit-turn:-40deg}
.improbability-orbits img:nth-child(5){right:33%;bottom:0;animation-delay:-5s;--orbit-turn:60deg}
.is-improbable .tabletop{transform-origin:50% 30%;animation:drive-page 7s ease-in-out infinite}
.is-improbable .topbar,.is-improbable #footer{animation:drive-header 6s ease-in-out infinite}
.is-improbable .hub{animation:drive-hero 4s ease-in-out infinite}
@keyframes drive-page{0%,100%{transform:scale(.98) rotate(-1deg)}25%{transform:scale(.94) rotate(3deg) skewY(1deg)}60%{transform:scale(.97) rotate(-3deg) skewX(-2deg)}80%{transform:scale(.95) rotate(1deg)}}
@keyframes drive-header{0%,100%{transform:translateX(0) rotate(0)}40%{transform:translateX(12px) rotate(-2deg)}75%{transform:translateX(-10px) rotate(2deg)}}
@keyframes drive-hero{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-8px) rotate(8deg)}}
@keyframes drive-orbit{0%,100%{transform:translateY(0) rotate(-10deg)}50%{transform:translateY(-40px) rotate(var(--orbit-turn))}}
.improbability-layer.is-reduced .improbability-console{transform:none}
.improbability-layer.is-reduced img{animation:none}
@media(prefers-reduced-motion:reduce){.is-improbable .tabletop,.is-improbable .topbar,.is-improbable #footer,.is-improbable .hub,.improbability-layer img{animation:none;transform:none}.improbability-drive:hover:not(:disabled){transform:none}}
@media(max-height:550px){.improbability-layer{padding:10px}.improbability-console{padding:12px 16px;max-height:calc(100dvh - 20px)}.improbability-console strong{font-size:20px;margin:0 0 8px}.improbability-frame{aspect-ratio:3/2;max-height:38dvh}#improbability-caption{margin:8px 0;min-height:1.4em}.drive-progress{margin-bottom:8px}.improbability-eyebrow{display:none}}


#wheel-stage{scroll-margin-top:18px}.wheel-column>.food-picker{max-width:540px;margin:0 auto 20px;text-align:left}.food-picker>label{display:block;font-size:14px;font-weight:750;margin-bottom:8px}.wheel.is-filling .wheel-ring>g{animation:venue-arrival .25s ease-out both;animation-delay:var(--arrival,0ms)}@keyframes venue-arrival{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.wheel.is-filling .wheel-ring>g{animation:none}}

.google-attribution{font:16px/1.5 Arial,sans-serif;padding:8px 12px;background:#fff;color:#222;border-radius:5px}.google-attribution a{color:#174ea6;text-decoration:underline}
.result-links .place-report-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;padding:10px 14px;border:2px solid currentColor;border-radius:5px;color:inherit;background:transparent;font-size:1rem;font-weight:750;text-decoration:underline;text-underline-offset:3px}.place-report-link:focus-visible{outline:3px solid #ffce45;outline-offset:4px}

/* Action defaults retain the physical mode and Drive artwork. */
:where(button,input[type="submit"],input[type="button"],[role="button"]){min-height:44px;border:2px solid #221f1b;border-radius:5px;padding:10px 14px;background:#faf8f3;color:#221f1b;font:inherit;font-weight:750;cursor:pointer}
:where(summary){min-height:44px;border:2px solid #221f1b;border-radius:5px;padding:10px 14px;background:#faf8f3;color:#221f1b;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
:where(button,input[type="submit"],input[type="button"],[role="button"],summary):focus-visible{outline:3px solid #ed1427;outline-offset:4px}

.drive-gallery-link{text-align:center;font-size:14px}.drive-gallery-link a{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-underline-offset:3px}@media(prefers-reduced-motion:reduce){.improbability-orbits{animation:none}}

/* Fully playable smaller layout for Find Food; the standalone layout stays full-size. */
body.is-compact-randomizer{min-height:0;background:#fbfaf6}
.is-compact-randomizer .topbar{max-width:1080px;padding:10px 20px;border-bottom:0}
.is-compact-randomizer .topbar .header-logo{width:104px}
.is-compact-randomizer .tabletop{min-height:0}
.is-compact-randomizer .play-layout{max-width:1080px;padding:12px 24px 28px;grid-template-columns:minmax(245px,310px) minmax(0,1fr);gap:28px;align-items:start}
.is-compact-randomizer .controls h1{font-size:36px;white-space:normal}
.is-compact-randomizer .handwritten{font-size:22px;margin:12px 0 18px}
.is-compact-randomizer .mode{width:min(100%,136px)}
.is-compact-randomizer .wheel{max-width:460px;margin-inline:auto}
.is-compact-randomizer .round-title{margin-bottom:16px}
.is-compact-randomizer .round-title h2{font-size:28px}
.is-compact-randomizer .lineup{font-size:14px;line-height:1.5}
.is-compact-randomizer #site-links,.is-compact-randomizer .footer-actions{display:none}
.is-compact-randomizer #footer{min-height:0;padding:14px 24px;gap:16px}
.is-compact-randomizer .footer-logo{width:88px}
.is-compact-randomizer .result{max-width:1020px;margin:12px 24px 24px}
.is-compact-randomizer .result-copy{padding:24px}
@media(max-width:720px){.is-compact-randomizer .play-layout{grid-template-columns:1fr;padding:8px 18px 24px;gap:24px}.is-compact-randomizer .controls{max-width:500px;margin:auto;width:100%}.is-compact-randomizer .hero-heading{justify-content:center}.is-compact-randomizer .controls h1{font-size:34px}.is-compact-randomizer .handwritten{text-align:center}.is-compact-randomizer .mode{width:min(100%,140px)}.is-compact-randomizer .wheel{max-width:380px}.is-compact-randomizer .result{margin:12px 16px 24px}.is-compact-randomizer #footer{padding:14px 18px}.is-compact-randomizer #attribution{font-size:12px}.is-compact-randomizer .result-copy{padding:20px}}

/* Idle destination browsing; the center and red button still spin normally. */
.wheel.is-browsable .wheel-tap{inset:25%;width:50%;height:50%}
.wheel .pointer,.wheel-rim{pointer-events:none}
.wheel-wedge{cursor:pointer;transition:transform .15s ease;outline:none}
.wheel-wedge.is-previewed{filter:drop-shadow(0 0 8px #9a5b16)}
.wheel-wedge:focus-visible>g:first-of-type{stroke:#005b85;stroke-width:8px}
.wheel-wedge[aria-disabled=true]{pointer-events:none;cursor:default}
.wedge-choices{max-width:500px;margin:22px auto 0;text-align:left}
.wedge-choices label{display:block;font-size:17px;font-weight:800;margin-bottom:8px}
.wedge-choices select{min-height:48px;font-size:16px}
.wedge-choices p{font-size:13px;line-height:1.5;color:#574c3e}
.wedge-preview{max-width:500px;text-align:left;padding:18px;margin:12px auto;border:2px solid #a9772d;background:#fff8e8;border-radius:10px}
.wedge-preview h3{font-size:22px;margin:0 0 8px;line-height:1.25}
.wedge-preview p{font-size:15px;line-height:1.5;margin:8px 0}
.wedge-preview>div{display:flex;flex-wrap:wrap;gap:12px}
.wedge-preview button{min-height:48px;font-size:16px;padding:10px 16px}
@media(prefers-reduced-motion:reduce){.wheel-wedge{transition:none}}

.inventory-ad[data-ad-slot]{display:grid;place-items:center;width:min(760px,calc(100% - 32px));height:auto;aspect-ratio:2/1;margin:24px auto;min-height:0;background:transparent;border:0;padding:0;box-shadow:none}
.inventory-ad[data-ad-slot][hidden]{display:none}
.inventory-ad[data-ad-slot] a{display:grid;place-items:center;width:100%;height:100%;min-height:0;padding:0;background:transparent;border:0}
.inventory-ad[data-ad-slot] img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.inventory-ad[data-ad-slot] small{display:none}
#pause-ads{min-height:44px}

.footer-actions{flex-wrap:wrap}
.inventory-ad[data-ad-slot]{container-type:inline-size}
.inventory-ad[data-ad-slot] img{max-height:min(380px,40vw)}
@supports(width:1cqw){.inventory-ad[data-ad-slot] img{max-height:50cqw}}
.inventory-ad[data-ad-slot] a{pointer-events:none}
.inventory-ad[data-ad-slot] a>img,.inventory-ad[data-ad-slot] a>span{pointer-events:auto}
.inventory-ad[data-ad-slot] a:focus-visible{outline:0}
.inventory-ad[data-ad-slot] a:focus-visible>img{outline:3px solid #005b85;outline-offset:4px}

/* Fixed parent identity; app artwork is a separate, named emblem. */
.topbar{position:sticky;top:0;z-index:40;max-width:none;justify-content:space-between;gap:18px;padding:calc(8px + env(safe-area-inset-top)) 24px 8px;background:#faf7ef;border-bottom:2px solid #ddd8ce}
.topbar .header-logo{width:80px;margin:0;flex:none}
.topbar .header-logo img{width:80px;height:80px;object-fit:contain}
.app-identity{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.app-identity img{width:64px;height:64px;object-fit:contain}.app-identity strong{font-size:22px;line-height:1.2}
.topbar .app-family-link{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid #a9aa96;border-radius:7px;font-size:15px}
.persistent-home{position:fixed;top:calc(8px + env(safe-area-inset-top));left:12px;display:block;width:72px;height:72px;z-index:110}.persistent-home img{display:block;width:100%;height:100%;object-fit:contain}
.is-improbable .topbar{animation:none;transform:none}
#result-details{scroll-margin-top:120px}
@media(max-width:680px){.topbar{padding-inline:12px;gap:10px}.topbar .header-logo,.topbar .header-logo img{width:64px;height:64px}.app-identity{gap:8px}.app-identity img{width:48px;height:48px}.app-identity strong{font-size:18px}.topbar .app-family-link{padding:8px;font-size:14px}.persistent-home{width:64px;height:64px}}
@media(max-width:360px){.topbar{padding-inline:8px;gap:8px}.app-identity img{width:40px;height:40px}.app-identity strong{font-size:16px}.topbar .app-family-link{max-width:56px;text-align:center}}
.family-logo-links{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;justify-items:center;gap:18px;max-width:1160px;margin:24px auto;padding:0 24px}
body .family-logo-link[href],body .family-logo-link[href]:is(:hover,:focus-visible){display:flex;align-items:center;justify-content:center;min-width:0;min-height:44px;width:100%;max-width:160px;aspect-ratio:1;padding:0;border:0;border-radius:0;background:none;color:inherit;box-shadow:none;text-decoration:none;cursor:pointer}
.family-logo-link img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;filter:drop-shadow(0 7px 5px #0005) drop-shadow(0 0 5px #e4a13c20);transition:filter .16s ease,transform .16s ease}
.family-logo-link:is(:hover,:focus-visible) img{filter:drop-shadow(0 8px 6px #0006) drop-shadow(0 0 8px #edbe6260);transform:translateY(-2px)}
body .family-logo-link:focus-visible{outline:3px solid #a4ddff;outline-offset:4px}
.topbar .app-identity{justify-content:center;padding:0;border:0;border-radius:0;background:none;box-shadow:none;text-decoration:none}
.topbar .app-identity img{width:96px;height:96px;filter:drop-shadow(0 3px 3px #0003)}
@media(max-width:680px){.family-logo-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0 14px}.topbar .app-identity img{width:80px;height:80px}}
@media(max-width:360px){.topbar .app-identity img{width:72px;height:72px}}
@media(prefers-reduced-motion:reduce){.family-logo-link img{transition:none}.family-logo-link:is(:hover,:focus-visible) img{transform:none}}

/* The app logo introduces the tool without a second promotional heading. */
.hero-heading .randomizer-intro-title{width:232px;max-width:100%;margin:0;justify-self:center;line-height:1}
.randomizer-intro-logo{display:block;width:100%;min-height:44px;background:none;border:0;padding:0;text-decoration:none;filter:drop-shadow(0 5px 4px #0004)}
.randomizer-intro-logo img{display:block;width:100%;height:auto;object-fit:contain}
.randomizer-intro-logo:focus-visible{outline:3px solid #126aca;outline-offset:4px}
.randomizer-intro-copy{font:500 18px/1.5 Arial,sans-serif;margin:8px 0 18px;text-align:center;color:#302a22}
@media(max-width:680px){.hero-heading .randomizer-intro-title{width:212px}.randomizer-intro-copy{font-size:16px;margin-bottom:14px}}

/* A brief, occasional nudge and one light travelling around the metal bezel. */
.control-rim-glint{position:absolute;inset:1.5%;z-index:3;display:block;border-radius:50%;pointer-events:none;opacity:0;background:conic-gradient(from 0deg,transparent 0deg 280deg,#fff0 300deg,#fff9 324deg,#fff 334deg,#fff0 354deg,transparent 360deg);-webkit-mask:radial-gradient(farthest-side,transparent 75%,#000 77% 96%,transparent 98%);mask:radial-gradient(farthest-side,transparent 75%,#000 77% 96%,transparent 98%)}
.improbability-drive .control-rim-glint{inset:0;-webkit-mask:radial-gradient(farthest-side,transparent 84%,#000 86% 97%,transparent 99%);mask:radial-gradient(farthest-side,transparent 84%,#000 86% 97%,transparent 99%)}
.modes>.is-nudging{animation:control-nudge 420ms ease-in-out 1;transform-origin:50% 65%}
.modes>.is-shimmering .control-rim-glint{animation:control-rim-shimmer 1350ms ease-in-out 1}
@keyframes control-nudge{0%,100%{transform:translateX(0) rotate(0)}22%{transform:translateX(-.6px) rotate(-.6deg)}48%{transform:translateX(.7px) rotate(.65deg)}73%{transform:translateX(-.35px) rotate(-.3deg)}}
@keyframes control-rim-shimmer{0%{opacity:0;transform:rotate(-95deg)}12%{opacity:.7}82%{opacity:.7}100%{opacity:0;transform:rotate(265deg)}}
@media(prefers-reduced-motion:reduce){.modes>.is-nudging,.modes>.is-shimmering .control-rim-glint{animation:none}.control-rim-glint{display:none}}

.food-category-settings{margin:1rem 0;padding:1rem;border:1px solid #bfb3a4;border-radius:12px;min-width:0;color:#241b16;background:#fff8ed}.food-category-settings legend{font-weight:800;padding:0 .35rem}.food-category-count{font-size:.9rem;font-weight:750}.food-category-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}.food-category-choice{display:flex;align-items:center;gap:.6rem;min-height:44px;padding:.4rem;font-size:.9rem;cursor:pointer;border-radius:6px;line-height:1.3}.food-category-choice:focus-within{outline:2px solid #a31525;outline-offset:1px}.food-category-choice input{width:20px;height:20px;flex:none;accent-color:#ac1223}.food-category-choice:has(input:checked){background:#f0e2cc}.food-category-choice input:disabled{opacity:1}.food-category-settings .text-button{min-height:44px}@media(max-width:380px){.food-category-choices{grid-template-columns:1fr}}

.location-entry{display:flex;gap:10px;align-items:stretch}.location-entry input{flex:1;min-width:0}.location-entry button{min-height:52px;padding:10px 16px;border:1px solid #075550;border-radius:10px;background:#086b68;color:#fff;font-weight:800;font-size:15px;cursor:pointer}.location-entry button:disabled{opacity:.55;cursor:wait}.location-entry button:focus-visible{outline:3px solid #ed1427;outline-offset:3px}#location-status.is-error{color:#a7101e;font-weight:700}@media(max-width:420px){.location-entry{flex-direction:column}}
