.roulette-btn{color:#c2410c;background:linear-gradient(135deg,#fff7ed 0%,#ffedd5 100%);border:1px solid #fdba74;font-weight:700;box-shadow:0 2px 6px #ea580c1f}.roulette-btn:hover{background:linear-gradient(135deg,#ffedd5 0%,#fed7aa 100%);border-color:#fb923c;transform:translateY(-1px);box-shadow:0 4px 10px #ea580c33}.floating-roulette-fab{z-index:990;color:#fff;cursor:pointer;background:linear-gradient(135deg,#f97316 0%,#ea580c 100%);border:none;border-radius:9999px;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.95rem;font-weight:800;transition:all .25s cubic-bezier(.34,1.56,.64,1);animation:3s infinite fabPulse;display:flex;position:fixed;bottom:24px;right:20px;box-shadow:0 8px 24px #ea580c6b,0 2px 6px #0000001a}.floating-roulette-fab:hover{transform:translateY(-3px)scale(1.05);box-shadow:0 12px 28px #ea580c8c}.floating-roulette-fab:active{transform:scale(.95)}.fab-dice{font-size:1.25rem;display:inline-block}@keyframes fabPulse{0%,to{box-shadow:0 8px 24px #ea580c6b}50%{box-shadow:0 8px 28px #ea580ca6,0 0 0 6px #f973162e}}.roulette-modal{background:#fff;border:1px solid #00000014;border-radius:26px;width:94%;max-width:580px;animation:.3s cubic-bezier(.16,1,.3,1) rouletteModalPop;overflow:hidden;box-shadow:0 30px 70px -15px #00000061}@keyframes rouletteModalPop{0%{opacity:0;transform:scale(.92)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.roulette-modal-header{text-align:center;background:linear-gradient(#fff7ed 0%,#fff 100%);padding:2.2rem 2rem .9rem}.roulette-badge-icon{margin-bottom:.35rem;font-size:3rem;animation:2.5s ease-in-out infinite diceWiggle;display:inline-block}@keyframes diceWiggle{0%,to{transform:rotate(0)}15%{transform:rotate(-12deg)scale(1.08)}30%{transform:rotate(12deg)scale(1.08)}45%{transform:rotate(-5deg)}60%{transform:rotate(5deg)}75%{transform:rotate(0)}}#rouletteHeading{color:#1e293b;letter-spacing:-.02em;margin:0;font-size:1.55rem;font-weight:800}.roulette-sub{color:#64748b;margin:.4rem 0 0;font-size:.93rem;line-height:1.45}.roulette-slot-display.spinning{background:linear-gradient(145deg,#fff5eb 0%,#feead7 100%);border-style:solid;border-color:#f97316;transform:scale(1.01);box-shadow:0 0 24px #f973164d}.roulette-slot-display.winner-pop{animation:.5s cubic-bezier(.34,1.56,.64,1) winnerPop}@keyframes winnerPop{0%{transform:scale(.96)}50%{transform:scale(1.04)}to{transform:scale(1)}}.slot-placeholder{text-align:center;flex-direction:column;align-items:center;gap:.85rem;padding:1.25rem 0;display:flex}.slot-icon{font-size:3.6rem;display:block}.slot-prompt{color:#475569;font-size:1rem;line-height:1.55}.slot-result{flex-direction:column;gap:.95rem;width:100%;display:flex}.slot-img-wrap{background:#e2e8f0;border-radius:16px;width:100%;height:210px;position:relative;overflow:hidden;box-shadow:0 4px 14px #0000001a}#slotRestImg{object-fit:cover;width:100%;height:100%;display:block}.slot-cat-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;letter-spacing:-.01em;background:#0f172ad9;border-radius:6px;padding:4px 9px;font-size:.75rem;font-weight:700;position:absolute;top:10px;left:10px}.slot-title{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1.25rem;font-weight:800;overflow:hidden}.slot-dist-badge{color:#047857;white-space:nowrap;background:#d1fae5;border-radius:6px;padding:3px 8px;font-size:.8rem;font-weight:700}.slot-menu{color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin:0;padding:.55rem .85rem;font-size:.88rem;font-weight:600;line-height:1.4}.slot-meta{color:#64748b;gap:.85rem;font-size:.85rem;font-weight:600;display:flex}.slot-area{color:#64748b}.roulette-spin-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f97316 0%,#ea580c 100%);border:none;border-radius:14px;justify-content:center;align-items:center;gap:.45rem;width:100%;padding:.95rem 1.5rem;font-size:1.05rem;font-weight:800;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:flex;box-shadow:0 6px 18px #ea580c5c}.roulette-spin-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 22px #ea580c7a}.roulette-spin-btn:active:not(:disabled){transform:scale(.98)}.spin-icon{font-size:1.2rem}.roulette-result-actions{grid-template-columns:1fr 1fr;gap:.65rem;animation:.3s ease-out fadeIn;display:grid}.roulette-action-btn{cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:.4rem;padding:.75rem 1rem;font-size:.88rem;font-weight:700;transition:all .2s;display:flex}.roulette-action-btn.detail{color:#fff;background:#2a9d8f;border:none;box-shadow:0 4px 12px #2a9d8f40}.roulette-action-btn.detail:hover{background:#238579;transform:translateY(-1px)}.roulette-action-btn.share:hover{background:#f1f5f9;border-color:#94a3b8;transform:translateY(-1px)}.roulette-footer-bar{background:#f8fafc;border-top:1px solid #e2e8f0;border-bottom-right-radius:26px;border-bottom-left-radius:26px;justify-content:space-between;align-items:center;padding:.85rem 1.4rem;display:flex}.roulette-dont-show-label{color:#64748b;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.88rem;font-weight:600;transition:color .15s;display:inline-flex}.roulette-dont-show-label:hover{color:#1e293b}.roulette-dont-show-label input[type=checkbox]{appearance:none;cursor:pointer;background-color:#fff;border:2px solid #cbd5e1;border-radius:5px;place-content:center;width:18px;height:18px;margin:0;transition:all .15s;display:grid}.roulette-dont-show-label input[type=checkbox]:checked{background-color:#ea580c;border-color:#ea580c}.roulette-dont-show-label input[type=checkbox]:checked:before{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:9px;height:5px;transform:rotate(-45deg)translate(1px,-1px)}.roulette-close-bottom-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.4rem .8rem;font-size:.88rem;font-weight:700;transition:all .15s}.roulette-close-bottom-btn:hover{color:#0f172a;background:#e2e8f0}@media (width<=480px){.roulette-modal{border-radius:20px;width:95%}.roulette-modal-header{padding:1.8rem 1.2rem .6rem}#rouletteHeading{font-size:1.3rem}.roulette-body{padding:.6rem 1.2rem 1.2rem}.slot-img-wrap{height:170px}.roulette-footer-bar{border-bottom-right-radius:20px;border-bottom-left-radius:20px;padding:.75rem 1.1rem}.floating-roulette-fab{padding:.65rem 1.1rem;font-size:.88rem;bottom:18px;right:16px}}.accessibility-bar-container{border-bottom:2px solid var(--border-subtle,#e2e8f0);z-index:95;background:#fff;transition:all .3s;position:sticky;top:70px;box-shadow:0 4px 12px #0000000d}.accessibility-bar-inner{flex-direction:column;gap:.5rem;max-width:1200px;margin:0 auto;padding:.6rem 1rem;display:flex}.access-main-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.access-mode-buttons{-webkit-overflow-scrolling:touch;align-items:center;gap:.4rem;padding-bottom:2px;display:flex;overflow-x:auto}.mode-chip-btn{color:#334155;cursor:pointer;white-space:nowrap;background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:9999px;align-items:center;gap:.35rem;padding:.45rem .85rem;font-size:.88rem;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.mode-chip-btn:hover{background:#f1f5f9;border-color:#94a3b8;transform:translateY(-1px)}.mode-chip-btn.active{color:#fff;background:#0f172a;border-color:#0f172a;box-shadow:0 2px 8px #0f172a40}.mode-chip-btn.foreigner.active{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#1d4ed8}.mode-chip-btn.senior.active{background:linear-gradient(135deg,#d97706,#b45309);border-color:#b45309}.mode-chip-btn.blind.active{color:#facc15;background:#000;border-color:#facc15;box-shadow:0 0 10px #facc1566}.access-actions-group{align-items:center;gap:.4rem;display:flex}.access-action-btn{color:#1e293b;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:9999px;align-items:center;gap:.35rem;padding:.45rem .85rem;font-size:.84rem;font-weight:700;transition:all .2s;display:inline-flex}.access-action-btn:hover{background:#f8fafc;border-color:#cbd5e1}.mic-speak-btn{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.mic-speak-btn:hover{background:#fecaca}.mic-speak-btn.listening{color:#fff;background:#ef4444;border-color:#dc2626;animation:1.2s infinite pulse-mic}@keyframes pulse-mic{0%{transform:scale(1);box-shadow:0 0 #ef444499}70%{transform:scale(1.05);box-shadow:0 0 0 10px #ef444400}to{transform:scale(1);box-shadow:0 0 #ef444400}}.audio-guide-btn{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.audio-guide-btn:hover{background:#d1fae5}.foreigner-lang-bar{border-top:1px dashed #e2e8f0;flex-wrap:wrap;align-items:center;gap:.4rem;padding-top:.4rem;animation:.25s ease-out fadeInDown;display:flex}.lang-select-label{color:#475569;margin-right:.2rem;font-size:.8rem;font-weight:700}.lang-chip-btn{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:.3rem .65rem;font-size:.8rem;font-weight:600;transition:all .15s}.lang-chip-btn:hover{background:#f1f5f9}.lang-chip-btn.active{color:#fff;background:#2563eb;border-color:#2563eb;font-weight:700}.menu-tts-row{border-top:1px dashed #00000014;justify-content:space-between;align-items:center;margin-top:.45rem;padding-top:.4rem;display:flex}.menu-tts-btn{color:#15803d;cursor:pointer;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:9999px;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.82rem;font-weight:700;transition:all .2s;display:inline-flex}.menu-tts-btn:hover{background:#dcfce7;border-color:#86efac;transform:translateY(-1px)}.menu-tts-btn.playing{color:#fff;background:#15803d;border-color:#15803d}.audio-equalizer{align-items:center;gap:2px;height:14px;display:inline-flex}.audio-equalizer span{background:currentColor;border-radius:2px;width:3px;height:100%;animation:1s ease-in-out infinite eq-bounce}.audio-equalizer span:first-child{animation-delay:.1s}.audio-equalizer span:nth-child(2){animation-delay:.3s}.audio-equalizer span:nth-child(3){animation-delay:.2s}.audio-equalizer span:nth-child(4){animation-delay:.4s}@keyframes eq-bounce{0%,to{height:4px}50%{height:14px}}.menu-sub-desc-badge{color:#475569;background:#f1f5f9;border-radius:4px;margin-top:.25rem;padding:.2rem .5rem;font-size:.78rem;line-height:1.4;display:inline-block}body.mode-senior{background-color:#faf8f5!important;font-size:1.15rem!important}body.mode-senior .brand-title{font-size:1.6rem!important}body.mode-senior .card-name{font-size:1.35rem!important;font-weight:800!important}body.mode-senior .card-cat-label,body.mode-senior .menu-full-name,body.mode-senior .modal-store-name{font-size:1.25rem!important}body.mode-senior .menu-full-desc,body.mode-senior .info-val{font-size:1.05rem!important;line-height:1.65!important}body.mode-senior .menu-full-price{color:#b45309!important;font-size:1.25rem!important;font-weight:900!important}body.mode-senior .menu-tts-btn,body.mode-senior .btn-primary,body.mode-senior .mode-chip-btn{padding:.6rem 1.1rem!important;font-size:1.02rem!important}body.mode-blind{color:#facc15!important;background-color:#000!important}body.mode-blind header.app-header,body.mode-blind .accessibility-bar-container,body.mode-blind .restaurant-card,body.mode-blind .modal-container,body.mode-blind .search-input-box{color:#fff!important;background:#0f172a!important;border-color:#facc15!important;box-shadow:0 0 10px #facc1540!important}body.mode-blind a,body.mode-blind h1,body.mode-blind h2,body.mode-blind h3,body.mode-blind .card-name,body.mode-blind .menu-full-name{color:#facc15!important}body.mode-blind button,body.mode-blind .menu-tts-btn,body.mode-blind .btn-primary{color:#facc15!important;background:#000!important;outline:2px solid #facc15!important}body.mode-blind button:focus,body.mode-blind .restaurant-card:focus{outline:4px solid #38bdf8!important}body.mode-blind .menu-full-desc,body.mode-blind .info-val,body.mode-blind .card-dong-pill{color:#e2e8f0!important}.voice-assistant-overlay{z-index:9999;background:#fff;border:2px solid #e2e8f0;border-radius:18px;flex-direction:column;gap:.75rem;width:calc(100% - 48px);max-width:440px;padding:1.2rem;animation:.3s cubic-bezier(.16,1,.3,1) slideUpPopup;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 20px 40px #0003}@keyframes slideUpPopup{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.voice-overlay-header{justify-content:space-between;align-items:center;display:flex}.voice-overlay-title{color:#0f172a;align-items:center;gap:.4rem;font-size:1rem;font-weight:800;display:flex}.voice-overlay-close{cursor:pointer;color:#94a3b8;background:0 0;border:none;padding:.2rem;font-size:1.2rem;line-height:1}.voice-overlay-close:hover{color:#334155}.voice-overlay-body{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;max-height:200px;padding:.85rem;font-size:.92rem;line-height:1.6;overflow-y:auto}.voice-user-transcript{color:#64748b;border-bottom:1px dashed #cbd5e1;margin-bottom:.4rem;padding-bottom:.3rem;font-size:.85rem;font-style:italic}.voice-overlay-footer{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.voice-status-indicator{color:#047857;align-items:center;gap:.4rem;font-size:.82rem;font-weight:700;display:flex}.elevenlabs-modal-box{background:#fff;border-radius:18px;width:90%;max-width:520px;padding:1.8rem;animation:.25s ease-out modalScaleUp;position:relative;box-shadow:0 25px 50px -12px #00000040}.eleven-form-group{flex-direction:column;gap:.4rem;margin-bottom:1.2rem;display:flex}.eleven-form-group label{color:#334155;font-size:.88rem;font-weight:700}.eleven-form-group input,.eleven-form-group select{border:1.5px solid #cbd5e1;border-radius:8px;padding:.65rem .85rem;font-size:.92rem}.eleven-form-group input:focus,.eleven-form-group select:focus{border-color:#2563eb;outline:none}.eleven-help-text{color:#64748b;font-size:.8rem;line-height:1.5}.eleven-btn-row{justify-content:flex-end;gap:.6rem;margin-top:1.4rem;display:flex}.restaurant-audio-docent-card{background:linear-gradient(135deg,#fffbeb 0%,#fef3c7 50%,#fef9c3 100%);border:2px solid #f59e0b;border-radius:16px;flex-direction:column;gap:1rem;margin:1.2rem 1.25rem .5rem;padding:1.15rem 1.3rem;transition:all .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px -4px #f59e0b38}.restaurant-audio-docent-card:before{content:"";background:linear-gradient(90deg,#d97706,#f59e0b,#fbbf24,#d97706) 0 0/200% 100%;height:4px;animation:3s linear infinite shimmerBorder;position:absolute;top:0;left:0;right:0}@keyframes shimmerBorder{0%{background-position:0 0}to{background-position:200% 0}}.audio-docent-body{align-items:flex-start;gap:1rem;display:flex}.audio-docent-icon-box{flex-shrink:0}.docent-wave-circle{color:#fef3c7;background:#78350f;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.6rem;transition:all .3s;display:flex;position:relative;box-shadow:0 4px 12px #78350f4d}.docent-wave-circle.playing{background:#b45309;animation:1.6s ease-in-out infinite pulseDocent;transform:scale(1.05);box-shadow:0 0 0 6px #f59e0b40}@keyframes pulseDocent{0%,to{box-shadow:0 0 0 4px #f59e0b59}50%{box-shadow:0 0 0 10px #f59e0b0d}}.docent-wave-bars{align-items:flex-end;gap:2.5px;height:12px;display:none;position:absolute;bottom:4px}.docent-wave-circle.playing .docent-wave-bars{display:flex}.docent-wave-circle.playing .docent-icon-emoji{font-size:1.35rem;transform:translateY(-3px)}.docent-wave-bars span{background:#fde68a;border-radius:2px;width:3px;height:4px;animation:.8s ease-in-out infinite alternate docentBarWave}.docent-wave-bars span:first-child{height:6px;animation-delay:.1s}.docent-wave-bars span:nth-child(2){height:11px;animation-delay:.3s}.docent-wave-bars span:nth-child(3){height:9px;animation-delay:.2s}.docent-wave-bars span:nth-child(4){height:5px;animation-delay:.4s}@keyframes docentBarWave{0%{height:3px}to{height:12px}}.audio-docent-text-wrap{flex:1;min-width:0}.audio-docent-badge-line{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.35rem;display:flex}.audio-badge-live{color:#fef3c7;letter-spacing:-.2px;background:#78350f;border-radius:6px;padding:.2rem .55rem;font-size:.72rem;font-weight:800}.audio-badge-target{color:#9a3412;background:#fed7aa;border-radius:6px;padding:.2rem .5rem;font-size:.72rem;font-weight:700}.audio-engine-tag{color:#b45309;background:#fff;border:1px solid #fcd34d;border-radius:6px;padding:.2rem .5rem;font-size:.72rem;font-weight:700}.audio-docent-title{color:#451a03;margin:0 0 .25rem;font-size:1.05rem;font-weight:800;line-height:1.35}.audio-docent-desc{color:#78350f;margin:0;font-size:.83rem;line-height:1.45}.audio-docent-controls{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.btn-docent-play{color:#fff;cursor:pointer;background:#78350f;border:none;border-radius:10px;align-items:center;gap:.45rem;padding:.65rem 1.25rem;font-size:.92rem;font-weight:800;transition:all .2s;display:inline-flex;box-shadow:0 4px 10px #78350f40}.btn-docent-play:hover{background:#92400e;transform:translateY(-1px)}.btn-docent-play.is-playing{background:#047857;animation:1.8s ease-in-out infinite pulseDocentBtn;box-shadow:0 4px 12px #04785759}@keyframes pulseDocentBtn{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.btn-docent-stop{color:#64748b;cursor:pointer;background:#fff;border:1.5px solid #cbd5e1;border-radius:10px;align-items:center;gap:.4rem;padding:.65rem 1.05rem;font-size:.9rem;font-weight:700;transition:all .2s;display:inline-flex}.btn-docent-stop:hover{color:#334155;background:#f1f5f9;border-color:#94a3b8}.btn-docent-stop.active{color:#dc2626;background:#fef2f2;border-color:#f87171;font-weight:800;box-shadow:0 2px 8px #dc262633}.btn-docent-stop.active:hover{color:#b91c1c;background:#fee2e2;transform:translateY(-1px)}.btn-docent-settings{color:#78350f;cursor:pointer;background:#fff;border:1.5px solid #d97706;border-radius:10px;align-items:center;gap:.35rem;padding:.65rem .95rem;font-size:.84rem;font-weight:700;transition:all .2s;display:inline-flex}.btn-docent-settings:hover{background:#fef3c7}@media (width<=480px){.restaurant-audio-docent-card{margin:.9rem .8rem .4rem;padding:1rem .9rem}.audio-docent-body{gap:.75rem}.docent-wave-circle{width:44px;height:44px;font-size:1.35rem}.audio-docent-title{font-size:.98rem}.audio-docent-controls{flex-direction:column;align-items:stretch}.btn-docent-play,.btn-docent-stop,.btn-docent-settings{justify-content:center;width:100%}}body.mode-blind .restaurant-audio-docent-card{background:#000!important;border:3px solid #facc15!important;box-shadow:0 0 20px #facc1566!important}body.mode-blind .restaurant-audio-docent-card:before{background:#facc15!important;height:6px!important}body.mode-blind .docent-wave-circle{color:#000!important;background:#facc15!important;border:2px solid #fff!important}body.mode-blind .docent-wave-circle.playing{box-shadow:0 0 0 8px #facc1599!important}body.mode-blind .docent-wave-bars span{background:#000!important}body.mode-blind .audio-badge-live{color:#000!important;background:#facc15!important;font-weight:900!important}body.mode-blind .audio-badge-target{color:#facc15!important;background:#1e293b!important;border:1px solid #facc15!important}body.mode-blind .audio-engine-tag{color:#fff!important;background:#000!important;border:1px solid #38bdf8!important}body.mode-blind .audio-docent-title{color:#facc15!important;font-size:1.15rem!important}body.mode-blind .audio-docent-desc{color:#fff!important;font-size:.95rem!important;line-height:1.6!important}body.mode-blind .btn-docent-play{color:#000!important;background:#facc15!important;border:2px solid #fff!important;font-weight:900!important;box-shadow:0 0 10px #facc1566!important}body.mode-blind .btn-docent-stop{color:#ef4444!important;background:#000!important;border:2px solid #ef4444!important}body.mode-blind .btn-docent-stop.active{color:#fff!important;background:#ef4444!important}body.mode-blind .btn-docent-settings{color:#facc15!important;background:#000!important;border:2px solid #facc15!important}body.mode-foreigner .restaurant-audio-docent-card{background:linear-gradient(135deg,#f0fdf4 0%,#e0f2fe 50%,#eff6ff 100%);border:2px solid #0284c7;box-shadow:0 8px 24px -4px #0284c738}body.mode-foreigner .restaurant-audio-docent-card:before{background:linear-gradient(90deg,#0284c7,#06b6d4,#10b981,#0284c7) 0 0/200% 100%}body.mode-foreigner .docent-wave-circle,body.mode-foreigner .audio-badge-live{color:#fff;background:#0369a1}body.mode-foreigner .audio-docent-title{color:#0c4a6e}body.mode-foreigner .audio-docent-desc{color:#075985}body.mode-foreigner .btn-docent-play{background:#0284c7}body.mode-foreigner .btn-docent-play:hover{background:#0369a1}:root{--font-family:"Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--primary:#2a9d8f;--primary-hover:#21867a;--primary-light:#ebf5f3;--primary-gradient:linear-gradient(135deg, #2a9d8f 0%, #21867a 100%);--blue-ribbon:#1a56db;--blue-ribbon-bg:#eff6ff;--century-gold:#b45309;--century-gold-bg:#fef3c7;--tv-badge:#be123c;--tv-badge-bg:#ffe4e6;--onnuri-green:#047857;--onnuri-green-bg:#ecfdf5;--parking-blue:#0369a1;--parking-blue-bg:#f0f9ff;--bg-main:#f5f2eb;--bg-card:#fff;--bg-glass:#f5f2ebf0;--border-subtle:#e5dfd5;--border-focus:#2a9d8f;--text-main:#3e3835;--text-muted:#6e6660;--text-light:#9c938c;--text-white:#fff;--status-open:#10b981;--status-open-bg:#ecfdf5;--status-break:#f59e0b;--status-break-bg:#fffbeb;--status-closed:#ef4444;--status-closed-bg:#fef2f2;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #00000014, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000000a;--radius-sm:6px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px;--transition:all .22s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.5}button,input,select,textarea{color:inherit;font-family:inherit}button{cursor:pointer;background:0 0;border:none}a{color:inherit;text-decoration:none}.hidden{display:none!important}.app-header{z-index:100;background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);position:sticky;top:0}.header-container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;max-width:1200px;margin:0 auto;padding:.85rem 1.25rem;display:flex}.brand{align-items:center;gap:.75rem;display:flex}.brand-logo-icon{border-radius:var(--radius-md);background:0 0;justify-content:center;align-items:center;width:44px;height:44px;transition:transform .2s cubic-bezier(.34,1.56,.64,1);display:flex;overflow:hidden;box-shadow:0 3px 10px #2a9d8f38}.brand-logo-icon:hover{transform:scale(1.06)rotate(-2deg)}.brand-logo-icon img{object-fit:contain;width:100%;height:100%;display:block}.brand-title{color:var(--text-main);letter-spacing:-.02em;align-items:center;gap:.3rem;font-size:1.35rem;font-weight:800;line-height:1.2;display:flex}.brand-zip-badge{color:#fff;letter-spacing:.02em;background:linear-gradient(135deg,#2a9d8f 0%,#21867a 100%);border-radius:6px;align-items:center;padding:.12rem .45rem;font-size:1.05rem;font-weight:900;display:inline-flex;transform:translateY(-.5px);box-shadow:0 2px 6px #2a9d8f47}.brand-sub{color:var(--text-muted);font-size:.78rem;display:block}.header-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.header-btn{border-radius:var(--radius-full);color:var(--text-main);transition:var(--transition);border:1px solid var(--border-subtle);background:#f1f5f9;align-items:center;gap:.4rem;padding:.5rem .85rem;font-size:.86rem;font-weight:600;display:inline-flex;position:relative}.header-btn:hover{background:#e2e8f0;transform:translateY(-1px)}.auth-login-btn{color:#334155;background:#f8fafc;border-color:#cbd5e1}.auth-login-btn:hover{background:#e2e8f0}.user-profile-badge{border-radius:var(--radius-full);background:#f0fdf4;border:1px solid #bbf7d0;align-items:center;gap:.45rem;padding:.35rem .75rem;font-size:.85rem;display:inline-flex}.user-avatar{font-size:1.1rem}.user-nickname{color:#166534;font-weight:700}.logout-link-btn{color:#64748b;border-radius:3px;padding:.1rem .3rem;font-size:.75rem;text-decoration:underline}.logout-link-btn:hover{color:#ef4444}.bookmark-btn{color:#8a6412;background:#fdf9ee;border:1px solid #e8d39e}.bookmark-btn:hover{background:#f9f1dc;border-color:#e9c46a}.count-badge{color:#3e3835;border-radius:var(--radius-full);background:#e9c46a;padding:.1rem .45rem;font-size:.7rem;font-weight:800}.view-toggle-btn{background:var(--primary);color:#fff;border:none;box-shadow:0 2px 8px #2a9d8f40}.view-toggle-btn:hover{background:var(--primary-hover)}.market-day-banner{background:linear-gradient(90deg,#fff7ed 0%,#ffedd5 100%);border-top:1px solid #fed7aa;padding:.5rem 1rem}.banner-inner{flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem;max-width:1200px;margin:0 auto;font-size:.85rem;display:flex}.market-tag{color:#fff;border-radius:var(--radius-sm);background:#ea580c;padding:.15rem .5rem;font-size:.76rem;font-weight:700}.market-msg{color:#9a3412;font-weight:600}.market-info-link{color:#c2410c;border-radius:4px;padding:.1rem .4rem;font-size:.78rem;font-weight:700;text-decoration:underline}.main-content{max-width:1200px;margin:0 auto;padding:1.25rem 1rem 3rem}.search-filter-section{flex-direction:column;gap:1rem;margin-bottom:1.5rem;display:flex}.search-input-box{border:2px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:var(--transition);background:#fff;align-items:center;padding:.65rem 1.1rem;display:flex}.search-input-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px #2a9d8f26}.search-icon{opacity:.7;margin-right:.75rem;font-size:1.2rem}.search-input-box input{color:var(--text-main);background:0 0;border:none;outline:none;flex:1;font-size:1rem}.clear-btn{color:var(--text-muted);border-radius:var(--radius-full);padding:.2rem .5rem;font-size:.95rem}.curation-section{border-radius:var(--radius-md);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);background:#fff;padding:.85rem 1rem}.curation-header{justify-content:space-between;align-items:center;margin-bottom:.6rem;display:flex}.curation-title{color:var(--text-main);font-size:.88rem;font-weight:700}.curation-hint{color:var(--text-muted);font-size:.75rem}.curation-scroll-container{scrollbar-width:thin;gap:.5rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.curation-chip{border-radius:var(--radius-full);border:1px solid var(--border-subtle);color:var(--text-main);white-space:nowrap;transition:var(--transition);background:#f8fafc;align-items:center;gap:.4rem;padding:.45rem .85rem;font-size:.82rem;font-weight:600;display:inline-flex}.curation-chip.active{color:var(--primary);background:#fff7ed;border-color:#fdba74;font-weight:700;box-shadow:0 2px 6px #2a9d8f1f}.area-tab-group,.category-filter-group{gap:.4rem;padding-bottom:.2rem;display:flex;overflow-x:auto}.area-tab,.category-chip{border-radius:var(--radius-md);border:1px solid var(--border-subtle);color:var(--text-muted);white-space:nowrap;transition:var(--transition);background:#fff;padding:.45rem .85rem;font-size:.82rem;font-weight:600}.area-tab.active{background:var(--text-main);color:#fff;border-color:var(--text-main)}.category-chip.active{background:var(--primary-light);border-color:var(--primary);color:var(--primary);font-weight:700}.badge-filter-bar{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:#fff;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.65rem .9rem;display:flex}.badge-filter-label{color:var(--text-muted);font-size:.78rem;font-weight:700}.badge-chips-container{flex-wrap:wrap;gap:.4rem;display:flex}.badge-filter-btn{border-radius:var(--radius-full);border:1px solid var(--border-subtle);color:var(--text-muted);transition:var(--transition);background:#f8fafc;align-items:center;gap:.3rem;padding:.3rem .65rem;font-size:.78rem;font-weight:600;display:inline-flex}.badge-filter-btn.active{color:#21867a;background:#ebf5f3;border-color:#2a9d8f;font-weight:700}.results-header-bar{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.results-count{color:var(--text-muted);font-size:.95rem}.results-count strong{color:var(--primary);font-weight:800}.sort-select{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:#fff;outline:none;padding:.4rem .8rem;font-size:.82rem;font-weight:600}.restaurant-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.35rem;display:grid}.restaurant-card{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);transition:var(--transition);background:#fff;flex-direction:column;display:flex;overflow:hidden}.restaurant-card:hover{box-shadow:var(--shadow-xl);border-color:#fed7aa;transform:translateY(-4px)}.card-media-wrapper{background-color:#e2e8f0;width:100%;height:190px;position:relative;overflow:hidden}.card-img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.restaurant-card:hover .card-img{transform:scale(1.05)}.card-top-badges{z-index:2;flex-direction:column;gap:.35rem;display:flex;position:absolute;top:.75rem;left:.75rem}.pill-badge{border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);align-items:center;gap:.25rem;padding:.25rem .55rem;font-size:.74rem;font-weight:700;display:inline-flex;box-shadow:0 2px 6px #0003}.pill-badge.blue-ribbon{background:var(--blue-ribbon);color:#fff}.pill-badge.century-store{color:#fff;background:linear-gradient(135deg,#d97706,#b45309)}.pill-badge.tv-show{background:var(--tv-badge);color:#fff}.card-bookmark-btn{z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);width:36px;height:36px;transition:var(--transition);background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;display:flex;position:absolute;top:.75rem;right:.75rem;box-shadow:0 2px 8px #00000026}.card-bookmark-btn:hover{transform:scale(1.15)}.card-bookmark-btn.active{color:#e9c46a;background:#fdf9ee;box-shadow:0 2px 10px #e9c46a59}.card-content{flex-direction:column;flex:1;padding:1.1rem;display:flex}.card-header-row{justify-content:space-between;align-items:flex-start;margin-bottom:.35rem;display:flex}.card-name{color:var(--text-main);letter-spacing:-.01em;font-size:1.18rem;font-weight:800}.card-category-area{color:var(--text-muted);align-items:center;gap:.4rem;font-size:.8rem;display:flex}.area-pill{background:#f1f5f9;border-radius:4px;padding:.1rem .4rem;font-weight:600}.card-rating-group{color:#d97706;align-items:center;gap:.2rem;font-size:.9rem;font-weight:800;display:flex}.star-icon{color:#f59e0b}.review-cnt{color:var(--text-light);font-size:.75rem;font-weight:500}.card-history-banner{color:#92400e;border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#fffbeb;border-left:3px solid #f59e0b;margin:.5rem 0;padding:.35rem .6rem;font-size:.78rem;font-weight:600}.card-menus-preview{border-radius:var(--radius-sm);background:#f8fafc;flex-direction:column;gap:.3rem;margin:.45rem 0 .75rem;padding:.55rem;display:flex}.menu-preview-item{justify-content:space-between;align-items:center;gap:.5rem;font-size:.82rem;line-height:1.4;display:flex}.menu-title-text{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:600;overflow:hidden}.sig-tag{color:#8a6412;background:#fdf9ee;border:1px solid #e8d39e;border-radius:4px;padding:.1rem .4rem;font-size:.68rem;font-weight:800}.menu-price{color:#334155;flex-shrink:0;margin-left:.35rem;font-weight:700;white-space:nowrap!important}.card-meta-indicators{border-top:1px dashed var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem;margin-top:auto;padding-top:.6rem;font-size:.76rem;display:flex}.status-badge{border-radius:var(--radius-full);align-items:center;gap:.3rem;padding:.2rem .5rem;font-weight:700;display:inline-flex}.status-badge.open{background:var(--status-open-bg);color:var(--status-open)}.status-badge.break{background:var(--status-break-bg);color:var(--status-break)}.status-badge.closed{background:var(--status-closed-bg);color:var(--status-closed)}.benefit-tags{gap:.3rem;display:flex}.benefit-tag{color:#475569;background:#f1f5f9;border-radius:4px;padding:.15rem .4rem;font-size:.72rem;font-weight:600}.benefit-tag.onnuri{background:var(--onnuri-green-bg);color:var(--onnuri-green)}.card-actions{grid-template-columns:1fr 1.8fr;gap:.5rem;margin-top:.85rem;display:grid}.btn-secondary{border-radius:var(--radius-md);color:var(--text-main);transition:var(--transition);background:#f1f5f9;justify-content:center;align-items:center;gap:.3rem;padding:.55rem;font-size:.82rem;font-weight:600;display:flex}.btn-secondary:hover{background:#e2e8f0}.btn-primary{border-radius:var(--radius-md);background:var(--primary-gradient);color:#fff;transition:var(--transition);justify-content:center;align-items:center;gap:.35rem;padding:.55rem;font-size:.85rem;font-weight:700;display:flex;box-shadow:0 3px 10px #2a9d8f40}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 5px 14px #2a9d8f59}.auth-modal-container{max-width:440px;padding:1.5rem}.auth-modal-header{text-align:center;margin-bottom:1.25rem}.auth-icon-badge{background:var(--primary-light);border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;margin:0 auto .5rem;font-size:2.2rem;display:flex}.auth-modal-header h2{font-size:1.3rem;font-weight:800}.auth-subtext{color:var(--text-muted);margin-top:.2rem;font-size:.82rem}.auth-tab-bar{border-radius:var(--radius-md);background:#f1f5f9;margin-bottom:1.25rem;padding:.25rem;display:flex}.auth-tab-btn{color:var(--text-muted);border-radius:var(--radius-sm);transition:var(--transition);flex:1;padding:.5rem;font-size:.85rem;font-weight:600}.auth-tab-btn.active{color:var(--primary);box-shadow:var(--shadow-sm);background:#fff;font-weight:800}.auth-form{flex-direction:column;gap:.9rem;display:flex}.form-group{text-align:left;flex-direction:column;gap:.3rem;display:flex}.form-group label{color:var(--text-muted);font-size:.8rem;font-weight:700}.form-group input{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);outline:none;padding:.65rem .85rem;font-size:.9rem}.form-group input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2a9d8f26}.auth-submit-btn{border-radius:var(--radius-md);background:var(--primary-gradient);color:#fff;transition:var(--transition);margin-top:.5rem;padding:.75rem;font-size:.95rem;font-weight:700;box-shadow:0 4px 12px #2a9d8f40}.auth-submit-btn:hover{transform:translateY(-1px)}.auth-error-msg{color:#dc2626;border-radius:var(--radius-sm);background:#fef2f2;border:1px solid #fecaca;padding:.5rem .75rem;font-size:.8rem;font-weight:600}.quick-demo-box{border-top:1px dashed var(--border-subtle);text-align:center;margin-top:1rem;padding-top:1rem}.quick-demo-label{color:var(--text-muted);margin-bottom:.4rem;font-size:.75rem;display:block}.quick-demo-btn{color:#047857;border-radius:var(--radius-md);width:100%;transition:var(--transition);background:#ecfdf5;border:1px solid #a7f3d0;padding:.55rem;font-size:.82rem;font-weight:700}.quick-demo-btn:hover{background:#d1fae5}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;background:#0f172a99;justify-content:center;align-items:center;width:100vw;height:100vh;padding:1rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;top:0;left:0}.modal-container{border-radius:var(--radius-lg);background:#fff;flex-direction:column;width:100%;max-width:680px;max-height:90vh;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.modal-close-btn{z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);width:36px;height:36px;box-shadow:var(--shadow-md);transition:var(--transition);background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;display:flex;position:absolute;top:.9rem;right:.9rem}.modal-content-scroll{max-height:90vh;overflow-y:auto}.modal-hero-image{background-color:#cbd5e1;width:100%;height:230px;position:relative}.modal-hero-img{object-fit:cover;width:100%;height:100%}.modal-hero-gradient{background:linear-gradient(#0000,#000000d9);height:110px;position:absolute;bottom:0;left:0;right:0}.modal-hero-text{color:#fff;position:absolute;bottom:1rem;left:1.25rem;right:1.25rem}.modal-store-name{font-size:1.6rem;font-weight:800;line-height:1.2}.modal-badges-row{flex-wrap:wrap;gap:.4rem;margin-top:.4rem;display:flex}.modal-nav-tabs{border-bottom:1px solid var(--border-subtle);z-index:5;background:#fff;display:flex;position:sticky;top:0;overflow-x:auto}.modal-tab-btn{color:var(--text-muted);text-align:center;white-space:nowrap;transition:var(--transition);border-bottom:2px solid #0000;flex:1;padding:.85rem .5rem;font-size:.85rem;font-weight:600}.modal-tab-btn.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:800}.modal-tab-pane{flex-direction:column;gap:1.25rem;padding:1.25rem;display:flex}.official-links-bar{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:#f8fafc;flex-wrap:wrap;gap:.5rem;padding:.75rem 1rem;display:flex}.official-link-chip{border-radius:var(--radius-full);transition:var(--transition);align-items:center;gap:.35rem;padding:.4rem .75rem;font-size:.8rem;font-weight:700;display:inline-flex}.official-link-chip.naver{color:#fff;background:#03c75a}.official-link-chip.kakao{color:#191919;background:#fee500}.official-link-chip.insta{color:#fff;background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888)}.official-link-chip.web{color:#fff;background:#334155}.official-link-chip:hover{filter:brightness(1.08);transform:translateY(-1px)}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.gallery-item{border-radius:var(--radius-md);height:150px;box-shadow:var(--shadow-sm);background:#e2e8f0;position:relative;overflow:hidden}.gallery-img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.gallery-caption{color:#fff;background:linear-gradient(#0000,#000c);padding:.4rem .6rem .3rem;font-size:.72rem;font-weight:600;position:absolute;bottom:0;left:0;right:0}.owner-message-card{border:1px solid #fed7aa;border-left:4px solid var(--primary);border-radius:var(--radius-md);background:#fffdfa;padding:1.1rem}.owner-title-line{color:var(--primary);align-items:center;gap:.4rem;font-size:.95rem;font-weight:800;display:flex}.owner-author-sub{color:var(--text-muted);margin-top:.15rem;font-size:.78rem}.owner-content-text{color:#334155;margin:.6rem 0;font-size:.88rem;line-height:1.6}.origin-info-box{border-radius:var(--radius-sm);color:#475569;background:#f8fafc;padding:.45rem .65rem;font-size:.78rem}.full-menu-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff;align-items:center;gap:.85rem;padding:.85rem 1rem;display:flex}.full-menu-card.signature{background:#fffaf5;border-color:#fed7aa}.menu-thumb-img{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:72px;height:72px}.menu-info{flex:1}.menu-full-name{font-size:.95rem;font-weight:700}.menu-full-desc{color:var(--text-muted);margin-top:.2rem;font-size:.8rem}.menu-full-price{color:var(--primary);white-space:nowrap;font-size:1.05rem;font-weight:800}.bookmark-filter-tabs{border-bottom:1px solid var(--border-subtle);background:#f8fafc;gap:.4rem;padding:.35rem 1rem 0;display:flex}.bm-filter-tab{color:var(--text-muted);transition:var(--transition);border-bottom:2px solid #0000;padding:.5rem .8rem;font-size:.82rem;font-weight:600}.bm-filter-tab.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:800}.bookmark-list-container{flex-direction:column;gap:.85rem;max-height:65vh;padding:1.25rem;display:flex;overflow-y:auto}.bookmark-item-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff;justify-content:space-between;align-items:center;padding:.85rem 1rem;display:flex}.visited-toggle-btn{border-radius:var(--radius-full);border:1px solid var(--border-subtle);color:var(--text-muted);transition:var(--transition);background:#f1f5f9;padding:.35rem .65rem;font-size:.78rem;font-weight:700}.visited-toggle-btn.visited{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.modal-bottom-actions{border-top:1px solid var(--border-subtle);background:#fff;gap:.6rem;padding:1rem 1.25rem;display:flex}.modal-nav-link{border-radius:var(--radius-md);text-align:center;transition:var(--transition);flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.75rem;font-size:.88rem;font-weight:700;display:flex}.nav-kakao{color:#191919;background:#fee500}.nav-naver{color:#fff;background:#03c75a}.nav-call{color:var(--text-main);background:#f1f5f9;flex:.8}.app-footer{border-top:1px solid var(--border-subtle);text-align:center;background:#fff;margin-top:auto;padding:2rem 1.25rem}.footer-title{font-size:.95rem;font-weight:700}.footer-desc{color:var(--text-muted);margin-top:.3rem;font-size:.82rem}.footer-copyright{color:var(--text-light);margin-top:.75rem;font-size:.75rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (width<=640px){.header-container{padding:.75rem 1rem}.brand-sub{display:none}.restaurant-grid,.gallery-grid{grid-template-columns:1fr}.modal-container{border-radius:var(--radius-lg) var(--radius-lg) 0 0;height:95vh;margin-top:auto}}.card-media-wrapper{cursor:pointer;position:relative;overflow:hidden}.card-source-tag{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#f8fafc;pointer-events:none;z-index:2;background:#0f172ac7;border:1px solid #ffffff26;border-radius:4px;padding:3px 8px;font-size:.68rem;font-weight:500;transition:opacity .2s;position:absolute;bottom:8px;right:8px}.card-zoom-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;opacity:0;pointer-events:none;z-index:3;background:#0f172ad1;border:1px solid #ffffff40;border-radius:9999px;align-items:center;gap:6px;padding:8px 16px;font-size:.82rem;font-weight:700;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.9);box-shadow:0 8px 20px #0000004d}.card-media-wrapper:hover .card-zoom-badge{opacity:1;transform:translate(-50%,-50%)scale(1)}.card-media-wrapper:hover .card-img{transform:scale(1.04)}.modal-hero-image{cursor:zoom-in;position:relative}.hero-source-tag{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#f1f5f9;z-index:3;background:#000000b8;border:1px solid #fff3;border-radius:6px;padding:4px 10px;font-size:.74rem;font-weight:500;position:absolute;bottom:12px;right:14px}.hero-zoom-trigger{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;z-index:3;transition:var(--transition);background:#0f172acc;border:1px solid #fff3;border-radius:9999px;align-items:center;gap:5px;padding:6px 12px;font-size:.78rem;font-weight:700;display:flex;position:absolute;top:14px;right:14px}.hero-zoom-trigger:hover{background:var(--primary);transform:translateY(-1px)}.menu-thumb-wrap{cursor:zoom-in;border:1px solid var(--border-subtle);border-radius:8px;flex-shrink:0;width:78px;height:78px;position:relative;overflow:hidden}.menu-thumb-wrap .menu-thumb-img{object-fit:cover;width:100%;height:100%;transition:transform .25s}.menu-thumb-wrap:hover .menu-thumb-img{transform:scale(1.08)}.menu-thumb-zoom-overlay{opacity:0;color:#fff;background:#00000059;justify-content:center;align-items:center;font-size:1.1rem;transition:opacity .2s;display:flex;position:absolute;inset:0}.menu-thumb-wrap:hover .menu-thumb-zoom-overlay{opacity:1}.menu-source-tag{color:var(--text-muted);margin-top:4px;font-size:.72rem;display:inline-block}.gallery-item{cursor:zoom-in;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:#fff;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.gallery-item:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.gallery-item .gallery-img{object-fit:cover;width:100%;height:200px;transition:transform .3s}.gallery-item:hover .gallery-img{transform:scale(1.05)}.gallery-zoom-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;opacity:0;background:#0f172abf;border:1px solid #ffffff26;border-radius:4px;padding:4px 8px;font-size:.72rem;font-weight:700;transition:opacity .2s;position:absolute;top:10px;right:10px}.gallery-item:hover .gallery-zoom-badge{opacity:1}.gallery-caption-wrap{background:#fff;padding:.6rem .8rem}.gallery-caption{color:var(--text-main);font-size:.85rem;font-weight:600}.gallery-source-tag{color:var(--text-muted);margin-top:2px;font-size:.72rem}.lightbox-overlay{z-index:9999;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);-webkit-user-select:none;user-select:none;background:#0a0f1cf0;flex-direction:column;animation:.22s ease-out fadeIn;display:flex;position:fixed;inset:0}.lightbox-overlay.hidden{display:none!important}.lightbox-top-bar{z-index:10;background:#0f172a99;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.lightbox-indicator-group{align-items:center;gap:12px;display:flex}.lightbox-counter{color:#fdba74;background:#ffffff14;border:1px solid #ffffff26;border-radius:9999px;padding:4px 12px;font-size:.88rem;font-weight:700}.lightbox-source-badge{color:#94a3b8;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;padding:4px 10px;font-size:.82rem}.lightbox-control-group{align-items:center;gap:10px;display:flex}.lightbox-tool-btn{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;padding:6px 14px;font-size:.85rem;font-weight:600;transition:all .2s}.lightbox-tool-btn:hover{background:#fff3;transform:translateY(-1px)}.lightbox-tool-btn.close{background:#ef444440;border-color:#ef444466;padding:4px 12px;font-size:1.1rem}.lightbox-tool-btn.close:hover{background:#ef4444cc}.lightbox-main-viewport{flex:1;justify-content:center;align-items:center;padding:1rem 4rem;display:flex;position:relative;overflow:hidden}.lightbox-image-container{justify-content:center;align-items:center;max-width:90vw;max-height:72vh;transition:transform .25s;display:flex}.lightbox-active-img{object-fit:contain;cursor:zoom-in;border-radius:8px;max-width:100%;max-height:72vh;transition:transform .25s cubic-bezier(.4,0,.2,1);box-shadow:0 25px 50px -12px #0009}.lightbox-active-img.zoomed{cursor:zoom-out;transform:scale(1.6)}.lightbox-arrow{color:#fff;cursor:pointer;z-index:20;background:#ffffff1f;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;padding-bottom:4px;font-size:2rem;line-height:1;transition:all .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-arrow:hover{background:var(--primary);border-color:var(--primary);transform:translateY(-50%)scale(1.1);box-shadow:0 8px 24px #2a9d8f66}.lightbox-arrow.prev{left:1.5rem}.lightbox-arrow.next{right:1.5rem}.lightbox-arrow.hidden{display:none!important}.lightbox-bottom-bar{z-index:10;background:#0f172ab3;border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.lightbox-title{color:#fff;margin:0;font-size:1.05rem;font-weight:700}.lightbox-desc{color:#94a3b8;margin-top:3px;font-size:.85rem}.lightbox-keyboard-hint{color:#64748b;background:#ffffff0d;border-radius:6px;padding:4px 10px;font-size:.78rem}@media (width<=640px){.lightbox-main-viewport{padding:.5rem 1rem}.lightbox-top-bar{padding:.75rem 1rem}.lightbox-bottom-bar{flex-direction:column;align-items:flex-start;padding:.75rem 1rem}.lightbox-arrow{width:40px;height:40px;font-size:1.5rem}.lightbox-arrow.prev{left:.5rem}.lightbox-arrow.next{right:.5rem}.lightbox-active-img.zoomed{transform:scale(1.35)}}.user-location-bar{border-radius:var(--radius-lg,14px);background:linear-gradient(135deg,#fff 0%,#fff7ed 100%);border:1.5px solid #fed7aa;justify-content:space-between;align-items:center;gap:1rem;margin-top:.85rem;padding:.85rem 1.2rem;transition:all .25s;display:flex;box-shadow:0 4px 14px #ea580c14}.location-status-group{align-items:center;gap:.75rem;min-width:0;display:flex}.location-beacon{flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:relative}.beacon-pulse{background:#ea580c33;border-radius:50%;width:100%;height:100%;animation:2s cubic-bezier(0,0,.2,1) infinite beaconPing;position:absolute}.user-location-bar.active-gps .beacon-pulse{background:#10b9814d}@keyframes beaconPing{0%{opacity:.9;transform:scale(.8)}75%,to{opacity:0;transform:scale(2.2)}}.beacon-core{z-index:1;font-size:1.25rem}.location-info-text{flex-direction:column;min-width:0;display:flex}.location-info-label{color:#ea580c;letter-spacing:-.01em;text-transform:uppercase;font-size:.72rem;font-weight:700}.current-location-val{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;font-weight:700;overflow:hidden}.location-control-group{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.geo-find-btn{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#ea580c 0%,#c2410c 100%);border:none;border-radius:9999px;align-items:center;gap:.4rem;padding:.55rem .95rem;font-size:.84rem;font-weight:700;transition:all .2s;display:inline-flex;box-shadow:0 4px 10px #ea580c47}.geo-find-btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px #ea580c61}.geo-find-btn:active{transform:translateY(1px)}.geo-find-btn.loading{opacity:.8;cursor:wait}.location-preset-dropdown{color:#475569;cursor:pointer;background:#fff;border:1px solid #fed7aa;border-radius:9999px;outline:none;padding:.5rem .75rem;font-size:.82rem;font-weight:600;transition:border-color .2s}.location-preset-dropdown:focus{border-color:#ea580c}.district-chapter-section{border-radius:var(--radius-lg,14px);background:linear-gradient(#f8fafc 0%,#fff 100%);border:1px solid #e2e8f0;margin-top:1.25rem;padding:1.1rem 1.25rem;box-shadow:0 2px 8px #00000008}.chapter-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem;margin-bottom:.85rem;display:flex}.chapter-title-group{align-items:center;gap:.5rem;display:flex}.chapter-badge{color:#fff;letter-spacing:.05em;background:#3b82f6;border-radius:4px;padding:.2rem .5rem;font-size:.65rem;font-weight:800}.chapter-title{color:#0f172a;margin:0;font-size:1rem;font-weight:800}.chapter-sub{color:#64748b;font-size:.78rem;font-weight:500}.district-scroll-container{scrollbar-width:thin;-webkit-overflow-scrolling:touch;gap:.55rem;padding-bottom:.4rem;display:flex;overflow-x:auto}.district-chip{color:#334155;white-space:nowrap;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:9999px;align-items:center;gap:.45rem;padding:.5rem .85rem;font-size:.84rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 1px 3px #0000000a}.district-chip:hover{color:#1d4ed8;border-color:#93c5fd;transform:translateY(-1px)}.district-chip.active{color:#fff;background:#1e3a8a;border-color:#1e3a8a;font-weight:700;box-shadow:0 4px 12px #1e3a8a40}.district-count-tag{color:#475569;background:#f1f5f9;border-radius:9999px;padding:.12rem .42rem;font-size:.72rem;font-weight:700;transition:background .2s,color .2s;display:inline-block}.district-chip.active .district-count-tag{color:#fff;background:#ffffff38}.district-sub-tag{color:#94a3b8;font-size:.7rem;font-weight:400}.district-chip.active .district-sub-tag{color:#cbd5e1}.card-distance-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fbbf24;z-index:5;background:#0f172ad9;border:1px solid #fbbf2466;border-radius:9999px;align-items:center;gap:.25rem;padding:.28rem .6rem;font-size:.78rem;font-weight:800;display:flex;position:absolute;bottom:.75rem;right:.75rem;box-shadow:0 2px 8px #0000004d}.district-badge-tag{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:4px;padding:.12rem .45rem;font-size:.72rem;font-weight:700}.like-cnt{color:#ef4444;margin-left:.35rem;font-size:.8rem;font-weight:700}.map-view-section{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.map-toolbar{border-radius:var(--radius-lg,14px);background:#fff;border:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;padding:.85rem 1.1rem;display:flex;box-shadow:0 2px 8px #0000000a}.map-status-info{color:#334155;align-items:center;gap:.75rem;font-size:.88rem;display:flex}.map-marker-count strong{color:#ea580c;font-weight:800}.map-distance-hint{color:#64748b;font-size:.78rem}.map-toolbar-actions{gap:.5rem;display:flex}.map-tool-btn{color:#1e293b;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:9999px;align-items:center;gap:.3rem;padding:.45rem .85rem;font-size:.82rem;font-weight:700;transition:all .2s;display:inline-flex}.map-tool-btn:hover{color:#1d4ed8;background:#eff6ff;border-color:#3b82f6}.interactive-map-wrapper{border-radius:var(--radius-lg,16px);border:1px solid #cbd5e1;width:100%;position:relative;overflow:hidden;box-shadow:0 8px 30px #00000014}.leaflet-map-canvas{z-index:1;background:#f1f5f9;width:100%;height:65vh;min-height:480px;max-height:750px}.user-geo-marker{justify-content:center;align-items:center;display:flex;position:relative}.user-geo-pulse{background:#2563eb40;border-radius:50%;width:44px;height:44px;animation:1.8s cubic-bezier(0,0,.2,1) infinite userBeaconPing;position:absolute}@keyframes userBeaconPing{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(2.2)}}.user-geo-pin{color:#fff;z-index:2;background:#2563eb;border:2.5px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;display:flex;box-shadow:0 4px 10px #2563eb80}.custom-restaurant-pin{background:0 0;border:none}.restaurant-pin-badge{color:#1e293b;white-space:nowrap;background:#fff;border:2px solid #ea580c;border-radius:9999px;align-items:center;gap:.3rem;padding:.35rem .65rem;font-size:.78rem;font-weight:700;transition:transform .2s,border-color .2s;display:inline-flex;transform:translateY(-50%);box-shadow:0 4px 12px #00000040}.restaurant-pin-badge:hover,.restaurant-pin-badge.active{color:#fff;background:#ea580c;transform:translateY(-50%)scale(1.1);box-shadow:0 6px 16px #ea580c66}.restaurant-pin-badge .pin-emoji{font-size:.95rem}.leaflet-popup-content-wrapper{border-radius:14px!important;padding:0!important;overflow:hidden!important;box-shadow:0 10px 25px #0003!important}.leaflet-popup-content{margin:0!important;line-height:1.4!important}.leaflet-popup-card{width:250px}.popup-thumb-wrapper{background:#f1f5f9;width:100%;height:120px;position:relative}.popup-thumb{object-fit:cover;width:100%;height:100%}.popup-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;background:#0f172acc;border-radius:4px;padding:.15rem .45rem;font-size:.7rem;font-weight:700;position:absolute;top:.5rem;left:.5rem}.popup-body{padding:.75rem .9rem}.popup-title{color:#0f172a;margin:0 0 .3rem;font-size:.95rem;font-weight:800}.popup-meta{align-items:center;gap:.5rem;margin-bottom:.4rem;font-size:.76rem;display:flex}.popup-cat{color:#64748b}.popup-star{color:#f59e0b;font-weight:800}.popup-dist{color:#ea580c;margin-left:auto;font-weight:800}.popup-addr{color:#64748b;white-space:nowrap;text-overflow:ellipsis;margin:0 0 .65rem;font-size:.72rem;overflow:hidden}.popup-btns{gap:.4rem;display:flex}.popup-detail-btn{color:#fff;cursor:pointer;text-align:center;background:#ea580c;border:none;border-radius:6px;flex:1;padding:.45rem;font-size:.76rem;font-weight:700}.popup-navi-btn{color:#fff;text-align:center;background:#03c75a;border:none;border-radius:6px;flex:1;padding:.45rem;font-size:.76rem;font-weight:700;text-decoration:none;display:block}.map-preview-card{z-index:1000;background:#fff;border:1.5px solid #fed7aa;border-radius:14px;padding:.85rem 1rem;animation:.25s slideUpPreview;position:absolute;bottom:1rem;left:1rem;right:1rem;box-shadow:0 8px 24px #0003}@keyframes slideUpPreview{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.map-popup-user{padding:.5rem .75rem;font-size:.82rem}.map-popup-user strong{color:#2563eb;margin-bottom:2px;font-size:.88rem;display:block}.map-popup-user p{color:#64748b;margin:0}@media (width<=640px){.user-location-bar{flex-direction:column;align-items:stretch;gap:.75rem}.location-control-group{justify-content:space-between}.location-preset-dropdown{flex:1;max-width:170px}.chapter-header{flex-direction:column;align-items:flex-start}.leaflet-map-canvas{height:55vh;min-height:380px}}.card-title-row-clean{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.card-name{color:var(--text-main);letter-spacing:-.015em;white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;font-size:1.15rem;font-weight:800;overflow:hidden}.card-dong-pill{color:#21867a;white-space:nowrap;background:#ebf5f3;border:1px solid #b8ddd8;border-radius:9999px;flex-shrink:0;padding:.15rem .5rem;font-size:.72rem;font-weight:800}.card-meta-row-clean{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem;margin-bottom:.65rem;display:flex}.card-cat-label{color:#475569;font-size:.8rem;font-weight:700}.platform-ratings-group{flex-wrap:wrap;align-items:center;gap:.35rem;display:inline-flex}.platform-rating{border-radius:4px;align-items:center;gap:.2rem;padding:.15rem .42rem;font-size:.72rem;font-weight:600;display:inline-flex}.platform-rating.kakao{color:#854d0e;background:#fef9c3;border:1px solid #fef08a}.platform-rating.kakao strong{color:#713f12;font-weight:800}.platform-rating.google{color:#1e40af;background:#eff6ff;border:1px solid #dbeafe}.platform-rating.google strong{color:#1e3a8a;font-weight:800}.platform-rating.naver{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.platform-rating.naver strong{color:#14532d;font-weight:800}.p-dot{font-size:.55rem}.p-dot.kakao{color:#eab308}.p-dot.google{color:#3b82f6}.modal-thematic-area-banner{border-radius:var(--radius-md,10px);color:#334155;background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border:1px solid #cbd5e1;margin-bottom:.85rem;padding:.75rem 1rem;font-size:.84rem}.modal-thematic-area-banner strong{color:#0f172a}.modal-platform-ratings-grid{grid-template-columns:repeat(3,1fr);gap:.65rem;margin-bottom:1.1rem;display:grid}.modal-rating-card{text-align:center;border-radius:var(--radius-md,10px);border:1.5px solid #0000;flex-direction:column;align-items:center;padding:.85rem .6rem;display:flex}.modal-rating-card.kakao{background:#fefce8;border-color:#fef08a}.modal-rating-card.google{background:#f0f9ff;border-color:#bae6fd}.modal-rating-card.naver{background:#f0fdf4;border-color:#bbf7d0}.modal-rating-card .mr-label{margin-bottom:.25rem;font-size:.76rem;font-weight:800}.modal-rating-card.kakao .mr-label{color:#854d0e}.modal-rating-card.google .mr-label{color:#0369a1}.modal-rating-card.naver .mr-label{color:#15803d}.modal-rating-card .mr-score{letter-spacing:-.02em;font-size:1.25rem;font-weight:900}.modal-rating-card.kakao .mr-score{color:#713f12}.modal-rating-card.google .mr-score{color:#0c4a6e}.modal-rating-card.naver .mr-score{color:#14532d}.modal-rating-card .mr-score small{opacity:.7;font-size:.75rem;font-weight:600}.modal-rating-card .mr-desc{color:#64748b;margin-top:.2rem;font-size:.7rem}.popup-ratings-row{flex-wrap:wrap;gap:.3rem;margin-bottom:.45rem;display:flex}.p-rate{border-radius:3px;padding:.1rem .35rem;font-size:.7rem;font-weight:700}.p-rate.kakao{color:#854d0e;background:#fef9c3}.p-rate.google{color:#1e40af;background:#eff6ff}.p-rate.naver{color:#166534;background:#f0fdf4}@media (width<=640px){.modal-platform-ratings-grid{grid-template-columns:1fr;gap:.5rem}}.card-media-wrapper{cursor:pointer;position:relative}.card-cat-line{margin-bottom:.45rem}.card-cat-label{color:#64748b;background:#f1f5f9;border-radius:4px;padding:.12rem .48rem;font-size:.78rem;font-weight:700}.card-review-links-row{gap:.45rem;margin-bottom:.4rem;display:flex}.review-link-btn{border-radius:8px;flex:1;justify-content:space-between;align-items:center;padding:.45rem .65rem;font-size:.76rem;font-weight:700;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 1px 2px #00000008}.review-link-btn.naver-visitor{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.review-link-btn.naver-visitor:hover{background:#dcfce7;border-color:#86efac;transform:translateY(-1.5px);box-shadow:0 3px 8px #1665342e}.review-link-btn.naver-blog{color:#6b21a8;background:#faf5ff;border:1px solid #e9d5ff}.review-link-btn.naver-blog:hover{background:#f3e8ff;border-color:#d8b4fe;transform:translateY(-1.5px);box-shadow:0 3px 8px #6b21a82e}.card-rating-links-row{gap:.45rem;margin-bottom:.75rem;display:flex}.rating-link-btn{border-radius:8px;flex:1;justify-content:space-between;align-items:center;padding:.45rem .65rem;font-size:.76rem;font-weight:700;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 1px 2px #00000008}.rating-link-btn.kakao{color:#854d0e;background:#fefce8;border:1px solid #fef08a}.rating-link-btn.kakao:hover{background:#fef9c3;border-color:#fde047;transform:translateY(-1.5px);box-shadow:0 3px 8px #854d0e2e}.rating-link-btn.google{color:#0369a1;background:#f0f9ff;border:1px solid #bae6fd}.rating-link-btn.google:hover{background:#e0f2fe;border-color:#7dd3fc;transform:translateY(-1.5px);box-shadow:0 3px 8px #0369a12e}.btn-brand-icon{margin-right:.2rem;font-size:.8rem}.btn-text-label{color:#64748b;font-size:.72rem;font-weight:600}.review-link-btn.naver-visitor .btn-text-label{color:#15803d}.review-link-btn.naver-blog .btn-text-label{color:#7e22ce}.rating-link-btn.kakao .btn-text-label{color:#854d0e}.rating-link-btn.google .btn-text-label{color:#0284c7}.btn-count-num,.btn-score-num{margin-left:auto;margin-right:.25rem;font-size:.78rem;font-weight:800}.btn-arrow-icon{opacity:.55;font-size:.7rem;transition:opacity .2s,transform .2s}.review-link-btn:hover .btn-arrow-icon,.rating-link-btn:hover .btn-arrow-icon{opacity:1;transform:translate(1px,-1px)}.card-zoom-badge{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;z-index:5;pointer-events:none;background:#0f172abf;border:1px solid #ffffff40;border-radius:9999px;padding:.22rem .55rem;font-size:.72rem;font-weight:700;transition:background .2s;position:absolute;top:.75rem;right:3.2rem;box-shadow:0 2px 6px #0000004d}.card-media-wrapper:hover .card-zoom-badge{background:#ea580ce6;border-color:#ea580c}.modal-platform-ratings-grid{grid-template-columns:repeat(3,1fr);gap:.75rem;margin:1rem 0 1.25rem;display:grid}@media (width<=640px){.modal-platform-ratings-grid{grid-template-columns:1fr;gap:.5rem}}.clickable-platform-card{cursor:pointer;border-radius:12px;flex-direction:column;padding:.85rem 1rem;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000a}.clickable-platform-card:hover{transform:translateY(-2.5px);box-shadow:0 6px 16px #00000014}.clickable-platform-card.naver{background:#f0fdf4;border:1.5px solid #bbf7d0}.clickable-platform-card.naver:hover{background:#dcfce7;border-color:#86efac}.clickable-platform-card.kakao{background:#fefce8;border:1.5px solid #fef08a}.clickable-platform-card.kakao:hover{background:#fef9c3;border-color:#fde047}.clickable-platform-card.google{background:#f0f9ff;border:1.5px solid #bae6fd}.clickable-platform-card.google:hover{background:#e0f2fe;border-color:#7dd3fc}.clickable-platform-card .mr-header-row{justify-content:space-between;align-items:center;margin-bottom:.35rem;display:flex}.clickable-platform-card .mr-label{font-size:.8rem;font-weight:700}.clickable-platform-card.naver .mr-label{color:#166534}.clickable-platform-card.kakao .mr-label{color:#854d0e}.clickable-platform-card.google .mr-label{color:#075985}.clickable-platform-card .mr-link-icon{opacity:.6;font-size:.85rem;font-weight:800;transition:transform .2s,opacity .2s}.clickable-platform-card:hover .mr-link-icon{opacity:1;transform:translate(2px,-2px)}.clickable-platform-card .mr-score{color:#0f172a;align-items:baseline;gap:.25rem;margin-bottom:.15rem;font-size:1.22rem;font-weight:800;display:flex}.clickable-platform-card.naver .mr-score{color:#15803d}.clickable-platform-card.kakao .mr-score{color:#a16207}.clickable-platform-card.google .mr-score{color:#0284c7}.clickable-platform-card .mr-desc{color:#64748b;font-size:.74rem;font-weight:500}.card-menus-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:.4rem;margin:.75rem 0;padding:.65rem .8rem;display:flex}.menu-preview-item{justify-content:space-between;align-items:center;gap:.5rem;font-size:.82rem;display:flex}.menu-preview-left{flex:1;align-items:center;gap:.35rem;min-width:0;display:flex}.menu-title-text{color:#1e293b;text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.sig-tag,.sig-badge{color:#dc2626;white-space:nowrap;background:#fee2e2;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:.12rem .4rem;font-size:.68rem;font-weight:800;line-height:1.2;display:inline-flex}.menu-price{color:#334155;white-space:nowrap;flex-shrink:0;font-weight:700}.rating-link-btn.google.unlisted{color:#64748b;cursor:pointer;background:#f1f5f9;border:1px dashed #cbd5e1}.rating-link-btn.google.unlisted:hover{color:#334155;background:#e2e8f0;border-color:#94a3b8;transform:translateY(-1px)}.unlisted-tag{color:#64748b;background:#e2e8f0;border-radius:4px;padding:.1rem .35rem;font-size:.72rem;font-weight:700}.modal-rating-card.google.unlisted{cursor:pointer;background:#f8fafc;border:1.5px dashed #cbd5e1;transition:all .2s}.modal-rating-card.google.unlisted:hover{background:#f1f5f9;border-color:#94a3b8;transform:translateY(-2px)}.unlisted-pill-badge{color:#64748b;background:#e2e8f0;border-radius:999px;padding:.15rem .45rem;font-size:.68rem;font-weight:800}.mr-score.unlisted-text{color:#64748b;font-size:1.05rem;font-weight:800}.notice-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:99999;background:#0f172aa6;justify-content:center;align-items:center;padding:1rem;animation:.2s fadeInNotice;display:flex;position:fixed;inset:0}@keyframes fadeInNotice{0%{opacity:0}to{opacity:1}}.notice-modal-box{background:#fff;border:1px solid #e2e8f0;border-radius:16px;width:100%;max-width:480px;animation:.22s cubic-bezier(.16,1,.3,1) scaleUpNotice;overflow:hidden;box-shadow:0 20px 25px -5px #0003,0 8px 10px -6px #00000026}@keyframes scaleUpNotice{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.notice-modal-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;align-items:center;gap:.5rem;padding:1.1rem 1.25rem;display:flex}.notice-icon{font-size:1.25rem}.notice-title{color:#1e293b;flex:1;margin:0;font-size:1.05rem;font-weight:800}.notice-close-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.25rem .5rem;font-size:1.1rem;transition:all .15s}.notice-close-btn:hover{color:#0f172a;background:#e2e8f0}.notice-modal-body{padding:1.25rem}.notice-main-msg{color:#1e293b;margin-bottom:.6rem;font-size:.95rem;line-height:1.5}.notice-main-msg strong{color:#0284c7}.notice-sub-msg{color:#64748b;background:#f8fafc;border-left:3px solid #38bdf8;border-radius:8px;margin-bottom:1.25rem;padding:.75rem .85rem;font-size:.85rem;line-height:1.55}.notice-actions-grid{flex-direction:column;gap:.5rem;display:flex}.notice-btn{border-radius:10px;justify-content:center;align-items:center;padding:.75rem 1rem;font-size:.88rem;font-weight:700;text-decoration:none;transition:all .18s;display:flex}.notice-btn.naver{color:#fff;background:#22c55e}.notice-btn.naver:hover{background:#16a34a;transform:translateY(-1.5px);box-shadow:0 4px 10px #2a9d8f40}.notice-btn.kakao{color:#713f12;background:#facc15}.notice-btn.kakao:hover{background:#eab308;transform:translateY(-1.5px);box-shadow:0 4px 10px #eab30840}.notice-btn.google-fallback{color:#334155;background:#f1f5f9;border:1px solid #cbd5e1;font-size:.82rem;font-weight:600}.notice-btn.google-fallback:hover{color:#0f172a;background:#e2e8f0}.pwa-install-btn{color:#21867a;background:#ebf5f3;border:1px solid #b8ddd8;font-weight:700;animation:2.5s infinite pulse-gentle}.pwa-install-btn:hover{background:#d5ede9;border-color:#2a9d8f}@keyframes pulse-gentle{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.pwa-bottom-banner{z-index:999;-webkit-backdrop-filter:blur(14px);background:#faf8f5f5;border:1.5px solid #e5dfd5;border-radius:18px;flex-direction:column;gap:.75rem;width:calc(100% - 2rem);max-width:460px;padding:.9rem 1.1rem;animation:.35s cubic-bezier(.16,1,.3,1) slide-up;display:flex;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #3e38352e,0 2px 6px #0000000d}@keyframes slide-up{0%{opacity:0;transform:translate(-50%,25px)}to{opacity:1;transform:translate(-50%)}}.pwa-banner-content{align-items:center;gap:.85rem;display:flex}.pwa-banner-icon{border-radius:12px;flex-shrink:0;width:42px;height:42px;box-shadow:0 3px 8px #2a9d8f40}.pwa-banner-texts{flex-direction:column;gap:.15rem;display:flex}.pwa-banner-texts strong{color:#3e3835;font-size:.95rem;font-weight:800}.pwa-banner-texts span{color:#6e6660;font-size:.78rem;line-height:1.35}.pwa-banner-actions{justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.pwa-dismiss-btn{color:#6e6660;transition:var(--transition);background:0 0;border-radius:8px;padding:.45rem .85rem;font-size:.82rem;font-weight:600}.pwa-dismiss-btn:hover{color:#3e3835;background:#efece4}.pwa-install-action-btn{color:#fff;transition:var(--transition);background:linear-gradient(135deg,#2a9d8f 0%,#21867a 100%);border-radius:10px;padding:.5rem 1.15rem;font-size:.85rem;font-weight:800;box-shadow:0 3px 8px #2a9d8f4d}.pwa-install-action-btn:hover{transform:translateY(-1px);box-shadow:0 5px 12px #2a9d8f66}.roulette-btn{animation:3s ease-in-out infinite rouletteGlow;box-shadow:0 2px 8px #e9c46a59;color:#3e3835!important;background:linear-gradient(135deg,#fde68a 0%,#e9c46a 100%)!important;border:1px solid #e9c46a99!important;font-weight:800!important}.roulette-btn:hover{transform:translateY(-2px)scale(1.03);box-shadow:0 4px 14px #e9c46a8c}@keyframes rouletteGlow{0%,to{box-shadow:0 2px 8px #e9c46a59}50%{box-shadow:0 2px 14px #e9c46ab3}}.roulette-modal{background:#faf8f5;border:1px solid #e9c46a4d;border-radius:24px;max-width:480px;overflow:hidden;box-shadow:0 20px 40px #3e38352e}.roulette-modal-header{text-align:center;background:linear-gradient(#f5f0e6 0%,#faf8f5 100%);border-bottom:1px solid #3e383514;padding:1.5rem 1.25rem 1rem}.roulette-badge-icon{background:#fff;border-radius:16px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:.6rem;font-size:2rem;display:inline-flex;box-shadow:0 6px 16px #e9c46a59}.roulette-modal-header h2{color:#3e3835;letter-spacing:-.02em;font-size:1.3rem;font-weight:800}.roulette-sub{color:#6e6660;margin-top:.3rem;font-size:.85rem}.roulette-body{padding:1.25rem}.roulette-slot-display{background:#fff;border:2px dashed #e2dacb;border-radius:18px;justify-content:center;align-items:center;min-height:220px;padding:1rem;transition:all .3s;display:flex;position:relative;overflow:hidden}.roulette-slot-display.spinning{border-color:#2a9d8f;animation:.4s infinite alternate slotPulse;box-shadow:0 0 20px #2a9d8f40}@keyframes slotPulse{0%{background-color:#fff}to{background-color:#f0fdf4}}.slot-placeholder{text-align:center;color:#8c827a;padding:1.5rem 1rem}.slot-placeholder .slot-icon{margin-bottom:.5rem;font-size:3rem;animation:2.5s ease-in-out infinite floatIcon;display:block}@keyframes floatIcon{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.slot-placeholder .slot-prompt{color:#6e6660;font-size:.9rem;line-height:1.5}.slot-result{flex-direction:column;gap:.85rem;width:100%;animation:.35s cubic-bezier(.175,.885,.32,1.275) popIn;display:flex}@keyframes popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.slot-img-wrap{background:#ece7de;border-radius:14px;width:100%;height:160px;position:relative;overflow:hidden}.slot-img-wrap img{object-fit:cover;width:100%;height:100%}.slot-cat-badge{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2a9d8ff2;border-radius:20px;padding:.25rem .6rem;font-size:.75rem;font-weight:700;position:absolute;top:10px;left:10px}.slot-title-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.slot-title{color:#3e3835;font-size:1.2rem;font-weight:800}.slot-dist-badge{color:#2a9d8f;background:#2a9d8f1f;border-radius:6px;padding:.2rem .5rem;font-size:.78rem;font-weight:700}.slot-menu{color:#5c544e;margin-top:-.2rem;font-size:.88rem;font-weight:600}.slot-meta{color:#8c827a;align-items:center;gap:.75rem;font-size:.8rem;display:flex}.slot-rating{color:#e76f51;font-weight:700}.roulette-actions{flex-direction:column;gap:.6rem;margin-top:1.25rem;display:flex}.roulette-spin-btn{color:#fff;background:linear-gradient(135deg,#2a9d8f 0%,#21867a 100%);border-radius:14px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.95rem;font-size:1.05rem;font-weight:800;transition:all .2s;display:flex;box-shadow:0 4px 14px #2a9d8f59}.roulette-spin-btn:hover{transform:translateY(-2px);box-shadow:0 6px 18px #2a9d8f73}.roulette-spin-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.roulette-result-actions{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.roulette-action-btn{border-radius:12px;justify-content:center;align-items:center;gap:.4rem;padding:.75rem;font-size:.88rem;font-weight:700;transition:all .2s;display:flex}.roulette-action-btn.detail{color:#fff;background:#3e3835}.roulette-action-btn.detail:hover{background:#252220}.roulette-action-btn.share{color:#3e3835;background:#f0eae1;border:1px solid #dfd7cb}.roulette-action-btn.share:hover{background:#e5ded3}.global-toast{color:#fff;z-index:10000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:center;pointer-events:none;background:#231e1cf0;border:1px solid #ffffff26;border-radius:50px;align-items:center;gap:.6rem;max-width:90vw;padding:.75rem 1.4rem;font-size:.9rem;font-weight:600;animation:.3s cubic-bezier(.16,1,.3,1) toastFadeIn;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 10px 25px #0000004d}@keyframes toastFadeIn{0%{opacity:0;transform:translate(-50%,15px)}to{opacity:1;transform:translate(-50%)}}.card-share-btn{color:#3e3835;cursor:pointer;background:#f5f2eb;border:1px solid #e5dfd5;border-radius:8px;align-items:center;gap:.3rem;padding:.35rem .65rem;font-size:.78rem;font-weight:700;transition:all .2s;display:inline-flex}.card-share-btn:hover{color:#2a9d8f;background:#ebe5db;border-color:#2a9d8f}.modal-header-actions{align-items:center;gap:.5rem;display:flex}.modal-share-icon-btn{cursor:pointer;background:#f0eae1;border:none;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;font-size:1.15rem;transition:all .2s;display:inline-flex}.modal-share-icon-btn:hover{color:#fff;background:#2a9d8f;transform:translateY(-2px)}.modal-bottom-actions-grid{border-top:1px solid var(--border-subtle);background:#fff;grid-template-columns:repeat(3,1fr);gap:.5rem;padding:.85rem 1.25rem 1.1rem;display:grid}.nav-app-btn{text-align:center;border:1px solid #0000;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:.6rem .4rem;font-size:.82rem;font-weight:700;text-decoration:none;transition:all .2s;display:flex}.nav-app-btn .nav-logo{font-size:1.15rem;line-height:1}.nav-app-btn.tmap{color:#1a56db;background:#eef4ff;border-color:#d3e2fe}.nav-app-btn.tmap:hover{color:#fff;background:#1a56db}.nav-app-btn.kakao{color:#854d0e;background:#fef9c3;border-color:#fde047}.nav-app-btn.kakao:hover{color:#1f2937;background:#facc15}.nav-app-btn.naver{color:#065f46;background:#ecfdf5;border-color:#a7f3d0}.nav-app-btn.naver:hover{color:#fff;background:#03c75a}.modal-top-call-row{background:#fff;gap:.5rem;padding:.75rem 1.25rem 0;display:flex}.modal-top-call-btn{color:#3e3835;text-align:center;background:#f5f2eb;border:1px solid #e5dfd5;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.65rem;font-size:.85rem;font-weight:700;text-decoration:none;transition:all .2s;display:flex}.modal-top-call-btn:hover{background:#ebe5db}.after-meal-section{flex-direction:column;gap:.85rem;display:flex}.after-course-banner{background:linear-gradient(135deg,#fffbeb 0%,#fef3c7 100%);border:1px solid #fde68a;border-radius:14px;align-items:flex-start;gap:.6rem;padding:.9rem 1rem;display:flex}.course-banner-icon{font-size:1.4rem}.course-banner-text h4{color:#92400e;font-size:.92rem;font-weight:800}.course-banner-text p{color:#b45309;margin-top:.2rem;font-size:.8rem;line-height:1.4}.after-spots-grid{grid-template-columns:1fr;gap:.75rem;display:grid}.after-spot-card{cursor:pointer;background:#fff;border:1px solid #e5dfd5;border-radius:12px;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem;transition:all .2s;display:flex}.after-spot-card:hover{border-color:#2a9d8f;transform:translate(3px);box-shadow:0 4px 12px #2a9d8f1f}.after-spot-left{align-items:center;gap:.75rem;display:flex}.after-spot-img{object-fit:cover;background:#ece7de;border-radius:10px;flex-shrink:0;width:52px;height:52px}.after-spot-name{color:#3e3835;font-size:.95rem;font-weight:800}.after-spot-desc{color:#78716c;margin-top:.2rem;font-size:.78rem}.after-spot-dist{color:#2a9d8f;white-space:nowrap;background:#2a9d8f1a;border-radius:6px;padding:.25rem .55rem;font-size:.78rem;font-weight:800}.local-guestbook{background:#fbf9f6;border:1px solid #ece7de;border-radius:14px;margin-top:1rem;padding:1rem}.guestbook-title-row{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.guestbook-title{color:#3e3835;font-size:.92rem;font-weight:800}.guestbook-count{color:#2a9d8f;font-size:.78rem;font-weight:700}.guestbook-list{flex-direction:column;gap:.6rem;max-height:200px;margin-bottom:.75rem;display:flex;overflow-y:auto}.guestbook-item{background:#fff;border:1px solid #efeae2;border-radius:10px;padding:.65rem .8rem;font-size:.82rem}.guestbook-item-header{justify-content:space-between;align-items:center;margin-bottom:.25rem;display:flex}.guestbook-author{color:#2a9d8f;font-weight:700}.guestbook-date{color:#a8a29e;font-size:.72rem}.guestbook-text{color:#44403c;line-height:1.4}.guestbook-form{gap:.5rem;display:flex}.guestbook-input{background:#fff;border:1px solid #d6cebe;border-radius:8px;flex:1;padding:.5rem .75rem;font-size:.82rem}.guestbook-input:focus{border-color:#2a9d8f;outline:none}.guestbook-submit-btn{color:#fff;white-space:nowrap;background:#2a9d8f;border-radius:8px;padding:.5rem .85rem;font-size:.8rem;font-weight:700;transition:all .2s}.guestbook-submit-btn:hover{background:#21867a}.pin-lock-overlay{z-index:1000000;-webkit-backdrop-filter:blur(14px);background:#2d2622f0;justify-content:center;align-items:center;padding:1rem;transition:opacity .3s,visibility .3s;display:flex;position:fixed;inset:0}.pin-lock-overlay.hidden{opacity:0;visibility:hidden;pointer-events:none}.pin-lock-card{text-align:center;color:#3e3835;background:#f5f2eb;border-radius:28px;width:100%;max-width:360px;padding:2.2rem 1.8rem 1.8rem;animation:.35s cubic-bezier(.16,1,.3,1) pinPopIn;box-shadow:0 24px 60px #00000073,inset 0 0 0 1px #fff6}@keyframes pinPopIn{0%{opacity:0;transform:scale(.92)translateY(16px)}to{opacity:1;transform:scale(1)translateY(0)}}.pin-lock-logo-wrap{background:#fff;border:2px solid #e4ddd1;border-radius:20px;justify-content:center;align-items:center;width:68px;height:68px;margin:0 auto .9rem;display:flex;box-shadow:0 8px 20px #2a9d8f2e}.pin-lock-title{color:#2d2622;letter-spacing:-.5px;margin-bottom:.2rem;font-size:1.5rem;font-weight:800}.pin-lock-sub{color:#78716c;margin-bottom:1.5rem;font-size:.82rem;font-weight:500}.pin-lock-instruction{color:#3e3835;margin-bottom:1.1rem;font-size:.92rem;font-weight:700}.pin-dots-container{justify-content:center;gap:1.1rem;margin-bottom:.8rem;display:flex}.pin-dot{background:0 0;border:2px solid #c5bbaf;border-radius:50%;width:18px;height:18px;transition:all .2s cubic-bezier(.175,.885,.32,1.275)}.pin-dot.filled{background:#2a9d8f;border-color:#2a9d8f;transform:scale(1.15);box-shadow:0 0 10px #2a9d8f66}.pin-dots-container.shake{animation:.45s pinShake}.pin-dots-container.shake .pin-dot.filled{background:#ef4444;border-color:#ef4444;box-shadow:0 0 10px #ef444466}@keyframes pinShake{0%,to{transform:translate(0)}20%,60%{transform:translate(-10px)}40%,80%{transform:translate(10px)}}.pin-error-msg{color:#ef4444;min-height:1.2rem;margin-bottom:.8rem;font-size:.8rem;font-weight:700}.pin-error-msg.hidden{visibility:hidden}.pin-keypad{grid-template-columns:repeat(3,1fr);gap:.75rem;max-width:270px;margin:0 auto 1.1rem;display:grid}.pin-key{color:#2d2622;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#fff;border:1px solid #e2d9cb;border-radius:18px;justify-content:center;align-items:center;height:56px;font-size:1.4rem;font-weight:700;transition:all .15s;display:flex;box-shadow:0 2px 6px #0000000a}.pin-key:hover{background:#fdfbf7;border-color:#2a9d8f}.pin-key:active{background:#ede7dc;transform:scale(.93)}.pin-key.pin-clear,.pin-key.pin-backspace{color:#78716c;background:#eae4d8;border-color:#ddd4c5;font-size:1rem;font-weight:600}.pin-keyboard-hint{color:#a8a29e;margin:0;font-size:.75rem}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
