.food-guide-ultrathink{--food-primary:var(--kpc-magenta);--food-accent:var(--kpc-acid);--food-warm:var(--kpc-acid);--food-gold:var(--kpc-ink-2);--food-cream:var(--kpc-ink);--glass-bg:#ffffff08;--glass-border:#ffffff14;--glass-hover:#ffffff0f;--shadow-card:0 8px 32px #0000004d;--shadow-lift:0 12px 40px #0006;--shadow-glow:0 0 60px #ff2a8a26;padding-top:var(--header-height);min-height:100vh}.food-opening{flex-direction:column;justify-content:center;align-items:center;min-height:90vh;padding:4rem 2rem 7rem;display:flex;position:relative;overflow:hidden}.opening-backdrop{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.dish-float{opacity:.3;font-size:4rem;animation:6s ease-in-out infinite dish-bob;position:absolute}.dish-1{animation-delay:0s;top:15%;left:10%}.dish-2{animation-delay:-1.5s;top:25%;right:15%}.dish-3{animation-delay:-3s;bottom:30%;left:20%}.dish-4{animation-delay:-4.5s;bottom:20%;right:10%}@keyframes dish-bob{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-20px)rotate(5deg)}}.steam-effect{filter:blur(40px);background:linear-gradient(#0000,#ffffff05 50%,#0000);width:200px;height:300px;animation:4s ease-in-out infinite steam-rise;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes steam-rise{0%,to{opacity:.3;transform:translate(-50%,-50%)scaleY(1)}50%{opacity:.5;transform:translate(-50%,-60%)scaleY(1.2)}}.opening-content{text-align:center;z-index:1;max-width:700px;position:relative}.menu-badge{background:var(--glass-bg);border:1px solid var(--food-accent);border-radius:50px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.5rem 1.25rem;animation:3s ease-in-out infinite badge-glow;display:inline-flex}@keyframes badge-glow{0%,to{box-shadow:0 0 20px #f5ff3633}50%{box-shadow:0 0 30px #f5ff3666}}.badge-icon{font-size:1rem}.badge-text{color:var(--food-accent);text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;font-weight:600}.opening-title{flex-direction:column;margin-bottom:1.5rem;display:flex}.title-accent{color:var(--food-accent);text-transform:uppercase;letter-spacing:.3em;margin-bottom:.25rem;font-size:1.1rem;font-weight:500}.title-main{color:#fff;font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;line-height:1.1}.opening-tagline{color:#ffffffb3;max-width:500px;margin-bottom:2.5rem;margin-left:auto;margin-right:auto;font-size:1.15rem;line-height:1.6}.immersive-search{width:100%;max-width:500px;margin:0 auto 3rem}.search-inner{align-items:center;display:flex;position:relative}.search-icon{z-index:1;font-size:1.1rem;position:absolute;left:1.25rem}.search-input{border:1px solid var(--glass-border);color:#fff;background:#ffffff0d;border-radius:60px;width:100%;padding:1.1rem 3rem 1.1rem 3.5rem;font-size:1rem;transition:background-color .3s,border-color .3s,color .3s,opacity .3s,transform .3s,box-shadow .3s}.search-input:focus{border-color:var(--food-accent);background:#ffffff14;outline:none;box-shadow:0 0 30px #f5ff3633}.search-input::placeholder{color:#fff6}.search-clear{color:#fff9;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:1.2rem;transition:background-color .2s,border-color .2s,color .2s,opacity .2s,transform .2s,box-shadow .2s;display:flex;position:absolute;right:1rem}.search-clear:hover{color:#fff;background:#fff3}.pulse-stats{flex-wrap:wrap;justify-content:center;gap:2.5rem;display:flex}.stat-orb{box-sizing:border-box;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:8.5rem;height:8.5rem;padding:1rem;display:flex;position:relative}.stat-orb .orb-value{color:#fff;font-size:2.5rem;font-weight:800}.stat-orb .orb-label{color:#ffffff80;text-transform:uppercase;letter-spacing:.1em;margin-top:.25rem;font-size:.8rem}.orb-ring{border:1px solid #ffffff1a;border-radius:50%;animation:3s ease-in-out infinite orb-pulse;position:absolute;top:0;bottom:0;left:0;right:0}.stat-orb.featured .orb-value{color:var(--food-accent)}.stat-orb.featured .orb-ring{border-color:#f5ff364d}@keyframes orb-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.scroll-prompt{flex-direction:column;align-items:center;gap:.5rem;animation:2s ease-in-out infinite prompt-bounce;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.prompt-text{color:#fff6;text-transform:uppercase;letter-spacing:.15em;font-size:.75rem}.prompt-arrow{color:#ffffff4d;font-size:1.5rem}@keyframes prompt-bounce{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(10px)}}.cuisine-compass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);top:var(--header-height);z-index:20;border-bottom:1px solid var(--glass-border);background:#0000004d;padding:1.5rem;position:sticky}.compass-inner{scrollbar-width:none;gap:.5rem;max-width:1400px;margin:0 auto;padding:.5rem;display:flex;overflow-x:auto}.compass-inner::-webkit-scrollbar{display:none}.compass-point{background:var(--glass-bg);border:1px solid var(--glass-border);color:#ffffffb3;cursor:pointer;border-radius:16px;flex-direction:column;flex-shrink:0;align-items:center;gap:.25rem;min-width:80px;padding:.75rem 1.25rem;transition:background-color .3s,border-color .3s,color .3s,opacity .3s,transform .3s,box-shadow .3s;display:flex}.compass-point:hover{background:var(--glass-hover);color:#fff;border-color:#ffffff26;transform:translateY(-2px)}.compass-point.active{background:linear-gradient(135deg, var(--point-color,var(--food-accent)), transparent);border-color:var(--point-color,var(--food-accent));color:#fff;box-shadow:0 4px 20px #f5ff3640}.compass-point.all.active{background:linear-gradient(135deg, var(--food-accent), var(--food-primary))}.point-icon{font-size:1.5rem}.point-label{white-space:nowrap;font-size:.7rem;font-weight:500}.point-count{color:#fff6;font-size:.65rem}.compass-point.active .point-count{color:#fffc}.food-directory{max-width:1400px;margin:0 auto;padding:2rem}.directory-controls{border-bottom:1px solid var(--glass-border);flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:2rem;padding:1rem 0;display:flex}.controls-left{gap:1rem;display:flex}.filter-chip{align-items:center;gap:.5rem;display:flex}.filter-chip label{color:#ffffff80;font-size:.8rem;font-weight:500}.filter-chip select{background:var(--glass-bg);border:1px solid var(--glass-border);color:#fff;cursor:pointer;border-radius:8px;padding:.5rem 1rem;font-size:.85rem;transition:background-color .2s,border-color .2s,color .2s,opacity .2s,transform .2s,box-shadow .2s}.filter-chip select:hover{border-color:var(--food-accent)}.filter-chip select option{background:var(--kpc-bg-2)}.controls-center{flex:1;justify-content:center;display:flex}.results-badge{color:var(--food-accent);background:#f5ff361a;border:1px solid #f5ff364d;border-radius:20px;padding:.4rem 1rem;font-size:.8rem;font-weight:500}.controls-right{gap:.5rem;display:flex}.view-toggle{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:8px;display:flex;overflow:hidden}.view-toggle button{color:#ffffff80;cursor:pointer;background:0 0;border:none;padding:.5rem .75rem;transition:background-color .2s,border-color .2s,color .2s,opacity .2s,transform .2s,box-shadow .2s}.view-toggle button:hover{color:#fff}.view-toggle button.active{background:var(--food-accent);color:var(--kpc-bg)}.toggle-icon{font-size:1rem}.loading-state,.empty-state{text-align:center;padding:4rem 2rem}.empty-visual{width:100px;height:100px;margin:0 auto 2rem;position:relative}.empty-icon{font-size:4rem;display:block}.empty-rings{border:1px dashed #ffffff1a;border-radius:50%;animation:20s linear infinite ring-spin;position:absolute;top:-20px;bottom:-20px;left:-20px;right:-20px}@keyframes ring-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-state h3{color:#fff;margin-bottom:.5rem;font-size:1.3rem}.empty-state p{color:#fff9;margin-bottom:1.5rem}.restaurant-showcase{gap:1.5rem;display:grid}.restaurant-showcase.grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.restaurant-showcase.list{grid-template-columns:minmax(0,1fr)}.restaurant-card-ultra{color:inherit;background:var(--glass-bg);border:1px solid var(--glass-border);cursor:pointer;border-radius:20px;text-decoration:none;transition:background-color .4s cubic-bezier(.4,0,.2,1),border-color .4s cubic-bezier(.4,0,.2,1),color .4s cubic-bezier(.4,0,.2,1),opacity .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s cubic-bezier(.4,0,.2,1);overflow:hidden}.restaurant-card-ultra:hover{border-color:var(--card-accent);box-shadow:var(--shadow-lift), 0 0 50px color-mix(in srgb, var(--card-accent) 18%, transparent);transform:translateY(-8px)}.restaurant-card-ultra:focus-visible{outline:2px solid var(--food-accent);outline-offset:2px}.restaurant-card-ultra.grid{flex-direction:column;display:flex}.restaurant-card-ultra.list{grid-template-columns:280px minmax(0,1fr);display:grid}.card-visual{height:180px;position:relative;overflow:hidden}.restaurant-card-ultra.list .card-visual{height:100%;min-height:180px}.card-visual img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.restaurant-card-ultra:hover .card-visual img{transform:scale(1.08)}.visual-fallback{background:linear-gradient(135deg,#0006,#0009);justify-content:center;align-items:center;width:100%;height:100%;font-size:3.5rem;display:flex}.card-overlay{opacity:0;background:linear-gradient(#0000 50%,#000000b3 100%);transition:opacity .3s;position:absolute;top:0;bottom:0;left:0;right:0}.restaurant-card-ultra:hover .card-overlay{opacity:1}.partner-seal{background:linear-gradient(135deg, var(--food-primary), var(--food-accent));z-index:1;border-radius:20px;align-items:center;gap:.3rem;padding:.35rem .75rem;display:flex;position:absolute;top:1rem;left:1rem}.seal-icon{color:#fff;font-size:.8rem}.seal-text{color:#fff;text-transform:uppercase;letter-spacing:.05em;font-size:.65rem;font-weight:700}.rating-diamond{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--rating-color);z-index:1;background:#000c;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;transition:background-color .3s,border-color .3s,color .3s,opacity .3s,transform .3s,box-shadow .3s;display:flex;position:absolute;bottom:1rem;right:1rem;transform:rotate(0)}.restaurant-card-ultra:hover .rating-diamond{transform:scale(1.1)}.diamond-value{color:var(--rating-color);font-size:1rem;font-weight:800}.card-body{flex-direction:column;flex:1;padding:1.25rem;display:flex}.body-header{justify-content:space-between;align-items:flex-start;margin-bottom:.5rem;display:flex}.card-title{color:#fff;margin:0;font-size:1.15rem;font-weight:700;line-height:1.3}.card-price{color:var(--kpc-ok);font-size:.9rem;font-weight:600}.cuisine-tags{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.cuisine-tags .cuisine-icon{font-size:1rem}.cuisine-text{color:#fff9;font-size:.85rem}.card-description{color:#fff9;flex:1;margin-bottom:1rem;font-size:.9rem;line-height:1.5}.card-footer{border-top:1px solid var(--glass-border);justify-content:space-between;align-items:center;padding-top:.75rem;display:flex}.review-stat{color:#ffffff80;font-size:.8rem}.view-action{color:var(--food-accent);font-size:.85rem;font-weight:500;transition:transform .2s}.restaurant-card-ultra:hover .view-action{transform:translate(4px)}.food-invitation{text-align:center;padding:6rem 2rem;position:relative;overflow:hidden}.invitation-backdrop{position:absolute;top:0;bottom:0;left:0;right:0}.warmth-glow{filter:blur(60px);background:radial-gradient(circle,#f5ff3626 0%,#ff2a8a14 40%,#0000 70%);width:600px;height:600px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.invitation-content{max-width:500px;margin:0 auto;position:relative}.invitation-icon{margin-bottom:1.5rem;font-size:3.5rem;animation:3s ease-in-out infinite icon-float;display:block}@keyframes icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.invitation-content h2{color:#fff;margin-bottom:1rem;font-size:2rem}.invitation-content p{color:#ffffffb3;margin-bottom:2rem;font-size:1.1rem;line-height:1.6}html.food-detail-open{overflow:hidden}.food-detail-dialog{overscroll-behavior:contain;border:1px solid var(--glass-border);width:min(700px,100vw - 2rem);max-width:none;max-height:min(90dvh,960px);color:var(--kpc-ink);background:linear-gradient(#0e0a2efa,#101020fa);border-radius:24px;margin:auto;padding:0;overflow-y:auto}.food-detail-dialog::backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000d9}.food-detail-dialog[open] .detail-panel{animation:.4s cubic-bezier(.4,0,.2,1) panel-enter}@keyframes panel-enter{0%{opacity:0;transform:scale(.97)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.detail-panel{position:relative}.detail-close-bar{z-index:10;justify-content:flex-end;height:0;display:flex;position:sticky;top:0}.detail-close{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);color:#fff;cursor:pointer;background:#0009;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;margin:.75rem .75rem 0 0;font-size:1.5rem;transition:background-color .2s,border-color .2s,color .2s;display:flex}.detail-close:hover{background:var(--food-accent);border-color:var(--food-accent);color:var(--kpc-bg)}.detail-close:focus-visible{background:var(--food-accent);border-color:var(--food-accent);color:var(--kpc-bg)}.detail-header{background:linear-gradient(135deg, color-mix(in srgb, var(--food-primary) 22%, transparent), transparent 70%);border-radius:24px 24px 0 0;position:relative;overflow:hidden}.header-cover{object-fit:cover;width:100%;height:220px;display:block}.header-gradient{pointer-events:none;background:linear-gradient(#0000 40%,#0e0a2e 100%);position:absolute;top:0;bottom:0;left:0;right:0}.header-content{padding:1.75rem 4.5rem 1.25rem 1.5rem;position:relative}.header-cover+.header-gradient+.header-content{margin-top:-5rem}.detail-eyebrow{color:var(--food-accent);text-transform:uppercase;letter-spacing:.12em;margin:0 0 .35rem;font-size:.75rem;font-weight:600}.header-content h2{color:#fff;margin:0 0 .5rem;font-size:1.75rem;line-height:1.2}.partner-badge-detail{background:linear-gradient(135deg, var(--food-primary), var(--food-accent));color:var(--kpc-bg);border-radius:20px;padding:.35rem .75rem;font-size:.75rem;font-weight:700;display:inline-block}.detail-info{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:.5rem 1.5rem 1.5rem;display:grid}.info-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;align-items:flex-start;gap:.75rem;min-width:0;padding:1rem;display:flex}.info-card .info-icon{font-size:1.25rem}.info-text{flex-direction:column;gap:.25rem;min-width:0;display:flex}.info-label{color:#ffffff80;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.info-value{color:#fff;overflow-wrap:anywhere;font-size:.9rem;font-weight:500}a.info-value{color:var(--food-accent);text-underline-offset:3px;text-decoration:underline}.open-status.is-open{color:var(--kpc-ok)}.open-status.is-closed{color:#ffffffb3}.detail-description{color:#fffc;margin:0;padding:0 1.5rem 1.25rem;line-height:1.7}.detail-actions{flex-wrap:wrap;gap:.75rem;padding:0 1.5rem 1.5rem;display:flex}.detail-body{padding:0 1.5rem 1.75rem}.detail-body .local-place-hours{color:#ffffffd9;margin-top:0}.detail-note{color:#ffffff80;margin:0;font-size:.85rem}@media (max-width:768px){.food-opening{min-height:80vh;padding:3rem 1.5rem 6rem}.dish-float{display:none}.title-main{font-size:2.5rem}.opening-tagline{font-size:1rem}.pulse-stats{flex-wrap:nowrap;gap:.75rem}.stat-orb{width:6.5rem;height:6.5rem;padding:.5rem}.stat-orb .orb-value{font-size:1.75rem}.stat-orb .orb-label{font-size:.65rem}.cuisine-compass{padding:.5rem .75rem}.compass-inner{padding:.25rem}.compass-point{border-radius:999px;flex-direction:row;gap:.35rem;min-width:0;padding:.45rem .8rem}.point-icon{font-size:1rem}.point-label{font-size:.8rem}.point-count{font-size:.7rem}.food-directory{padding:1.5rem}.directory-controls{flex-direction:column;gap:1rem}.controls-left{justify-content:space-between;width:100%}.controls-center{order:-1}.restaurant-showcase.grid,.restaurant-showcase.list{grid-template-columns:minmax(0,1fr)}.restaurant-card-ultra.list{flex-direction:column;display:flex}.restaurant-card-ultra.list .card-visual{height:180px}.detail-info{gap:.6rem}.info-card{gap:.5rem;padding:.75rem}.info-card--wide{grid-column:1/-1}.card-visual:has(.visual-fallback){height:110px}.food-detail-dialog{border:0;border-radius:0;width:100vw;height:100dvh;max-height:100dvh}.detail-header{border-radius:0}.food-invitation{padding:4rem 1.5rem}.invitation-content h2{font-size:1.5rem}}@media (prefers-reduced-motion:reduce){.dish-float,.steam-effect,.orb-ring,.scroll-prompt,.invitation-icon,.empty-rings{animation:none}.restaurant-card-ultra,.compass-point,.food-detail-dialog[open] .detail-panel{transition:none;animation:none}.card-visual img{transition:none}.menu-badge{animation:none;box-shadow:0 0 20px #f5ff3633}}.cuisine-guide-seo{max-width:1200px;margin:0 auto;padding:3rem 2rem}.cuisine-guide-seo>h2{color:var(--kpc-acid);margin-bottom:.75rem;font-size:1.75rem}.cuisine-guide-seo>p{color:#fffc;text-align:center;max-width:800px;margin:0 auto 2rem;font-size:1.05rem;line-height:1.7}.cuisine-guide-links{flex-wrap:wrap;justify-content:center;gap:.75rem;margin:0 auto 2rem;display:flex}.cuisine-guide-links a{color:var(--kpc-acid);border:1px solid #f5ff3659;border-radius:999px;align-items:center;gap:.4rem;padding:.55rem 1rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:background-color .2s,border-color .2s;display:inline-flex}.cuisine-guide-links a:hover{border-color:var(--kpc-acid);background:#f5ff361a}.cuisine-guide-links a:focus-visible{border-color:var(--kpc-acid);background:#f5ff361a}.cuisine-guide-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.25rem;display:grid}.cuisine-guide-card{background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;padding:1.5rem}.cuisine-guide-card h3{color:var(--kpc-acid);margin-bottom:.5rem;font-size:1.1rem}.cuisine-guide-card p{color:#ffffffb3;margin:0;font-size:.95rem;line-height:1.6}.food-faq-section{max-width:900px;margin:0 auto;padding:3rem 2rem}.food-faq-section h2{color:var(--kpc-acid);margin-bottom:1.5rem;font-size:1.75rem}.food-faq-list{flex-direction:column;gap:1rem;display:flex}.food-faq-item{background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;padding:1.25rem}.food-faq-item h3{color:#fff;margin-bottom:.5rem;font-size:1.05rem}.food-faq-item p{color:#ffffffb3;margin:0;font-size:.95rem;line-height:1.6}@media (max-width:768px){.cuisine-guide-grid{grid-template-columns:minmax(0,1fr)}.cuisine-guide-seo,.food-faq-section{padding:2rem 1rem}}
