@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.app-toast[data-v-14823541]{position:fixed;top:0;left:0;right:0;z-index:1200;width:100%;padding:calc(10px + env(safe-area-inset-top)) 12px 10px;color:var(--white, #fff);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.app-toast-inner[data-v-14823541]{max-width:100%;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:600;line-height:1.4;text-align:center}.app-toast.is-success[data-v-14823541]{background:#22c55ec2}.app-toast.is-warning[data-v-14823541]{background:#f07c33c7}.app-toast.is-error[data-v-14823541]{background:#dc2626c7}.app-toast.is-info[data-v-14823541]{background:#9333eabd}.toast-fade-enter-active[data-v-14823541],.toast-fade-leave-active[data-v-14823541]{transition:opacity .5s ease,transform .5s ease}.toast-fade-enter-from[data-v-14823541],.toast-fade-leave-to[data-v-14823541]{opacity:0;transform:translateY(-18px)}:root{--screen-gutter: 16px;--exooo-orange: #f07c33;--exooo-pink: #ca0060;--exooo-purple: #9333ea;--exooo-light-purple: #f3e8ff;--exooo-light-orange: #fff4ed;--exooo-light-pink: #ffe8f5;--exooo-green: #22c55e;--exooo-light-green: #ecfdf5;--exooo-red: #dc2626;--exooo-light-red: #fee2e2;--text-primary: #212529;--text-secondary: #868e96;--bg-gray: #f8f9fa;--border-color: #e9ecef;--white: #ffffff;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1)}*{margin:0;padding:0;box-sizing:border-box}html,body,#app{min-height:100%}body{background-color:#eceff3;background-image:linear-gradient(#eceff3c7,#eceff3c7),url(/assets/doodles-BGPg3jDD.webp);background-repeat:repeat;background-size:auto,220px 220px;background-position:0 0,0 0}.home-screen{display:flex;flex-direction:column;height:100vh;height:100dvh;min-height:100dvh;background:var(--bg-gray);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.home-header{display:flex;justify-content:space-between;align-items:center;padding:16px;background:linear-gradient(135deg,var(--exooo-orange) 0%,#ff8f59 100%);position:sticky;top:0;z-index:100;color:#fff}.header-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.location-btn{width:40px;height:40px;border-radius:50%;border:none;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .2s;flex-shrink:0}.location-btn:active{transform:scale(.95);background:#ffffff4d}.location-widget{position:relative;flex-shrink:0}.location-btn.is-disabled{opacity:.72;cursor:not-allowed}.location-permission-bubble{position:absolute;left:0;top:calc(100% + 8px);width:min(260px,calc(100vw - 32px));background:#fff;color:var(--text-primary);border-radius:12px;padding:10px;box-shadow:0 10px 24px #0f172a2e;z-index:120}.location-permission-bubble:before{content:"";position:absolute;top:-6px;left:16px;width:12px;height:12px;transform:rotate(45deg);background:#fff}.location-permission-bubble p{font-size:12px;line-height:1.45;margin:0}.location-permission-actions{margin-top:10px;display:flex;justify-content:flex-end;gap:8px}.location-permission-btn{border:none;border-radius:8px;min-height:30px;padding:0 10px;font-size:12px;font-weight:600}.location-permission-btn.ghost{background:#f1f5f9;color:#334155}.location-permission-btn.primary{background:linear-gradient(135deg,var(--exooo-orange) 0%,#ff8f59 100%);color:#fff}.header-title{display:flex;flex-direction:column;gap:2px;cursor:pointer;min-width:0;flex:1}.location-row{display:flex;align-items:center;gap:4px}.header-title h1{font-size:15px;font-weight:600;margin:0}.header-title p{font-size:12px;opacity:.9;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.dropdown-icon{opacity:.9;flex-shrink:0}.home-location-modal h3{font-size:20px;margin-bottom:6px}.home-location-modal-subtitle{color:var(--text-secondary);font-size:13px;margin-bottom:14px}.home-location-list{display:flex;flex-direction:column;gap:10px}.home-location-item{width:100%;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--white);color:var(--text-primary);padding:12px 14px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.home-location-item strong{display:block;font-size:15px}.home-location-item small{display:block;font-size:12px;color:var(--text-secondary);margin-top:2px}.home-location-item:active{transform:scale(.99)}.home-location-item.active{border-color:var(--exooo-orange);box-shadow:0 0 0 3px #f07c3326}.home-location-modal-loading{margin-top:12px;color:var(--text-secondary);font-size:12px}.header-actions{display:flex;gap:8px;flex-shrink:0}.icon-btn{position:relative;width:40px;height:40px;border-radius:50%;border:none;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .2s}.icon-btn:active{transform:scale(.95);background:#ffffff4d}.badge{position:absolute;top:-2px;right:-2px;background:var(--exooo-pink);color:#fff;font-size:10px;padding:2px 6px;border-radius:10px;font-weight:600;border:2px solid var(--exooo-orange)}.avatar-initial{display:inline-block;font-size:20px;font-weight:700;color:#fff;line-height:1}.home-content{flex:1;overflow-y:auto;padding-bottom:calc(96px + env(safe-area-inset-bottom));overscroll-behavior:none;overscroll-behavior-y:none;-webkit-overflow-scrolling:touch}.search-container{padding:16px;background:linear-gradient(180deg,var(--exooo-orange) 0%,transparent 100%);transition:background .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);z-index:90}.search-container.search-sticky{position:sticky;top:0;background:linear-gradient(180deg,var(--exooo-orange) 0%,transparent 100%);box-shadow:0 2px 8px #0000001a;animation:slideDown .3s ease}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.search-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-sm);transition:box-shadow .2s ease}.search-sticky .search-bar{box-shadow:var(--shadow-md)}.search-bar input{flex:1;border:none;background:transparent;font-size:15px;cursor:pointer;outline:none;color:var(--text-primary)}.search-bar input::placeholder{color:var(--text-secondary)}.section-featured{margin-bottom:24px}.carousel{position:relative;overflow:hidden;height:180px;margin:0 var(--screen-gutter);border-radius:var(--radius-lg);touch-action:pan-y;-webkit-user-select:none;user-select:none}.carousel-track{display:flex;transition:transform .5s ease;height:100%}.carousel-slide{min-width:100%;height:100%;cursor:pointer}.carousel-image{width:100%;height:100%;display:flex;align-items:flex-end;padding:20px;background:linear-gradient(135deg,var(--exooo-pink) 0%,var(--exooo-purple) 100%);border-radius:var(--radius-lg);position:relative;overflow:hidden}.carousel-image:before{content:"";position:absolute;top:0;right:0;width:200px;height:200px;background:#ffffff1a;border-radius:50%;transform:translate(50%,-50%)}.carousel-content{color:#fff;z-index:1}.badge-featured{display:inline-block;padding:4px 12px;background:#ffffff40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-md);font-size:12px;font-weight:600;margin-bottom:8px}.carousel-content h3{font-size:20px;font-weight:700;margin:0 0 4px;line-height:1.3}.carousel-content p{font-size:14px;margin:0;opacity:.95}.carousel-dots{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:flex;gap:6px;z-index:2}.dot{width:6px;height:6px;border-radius:50%;background:#ffffff80;cursor:pointer;transition:all .3s}.dot.active{background:#fff;width:20px;border-radius:3px}.section-categories,.section-carousel{padding:0 var(--screen-gutter) 24px}.section-carousel .section-header{padding:0;margin-bottom:16px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h2{font-size:18px;font-weight:700;color:var(--text-primary);margin:0}.section-title-with-icon{display:inline-flex;align-items:center;gap:8px}.section-title-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--exooo-orange);background:transparent}.btn-text{border:none;background:none;color:var(--exooo-purple);font-weight:600;cursor:pointer;font-size:14px;padding:4px 8px}.categories-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.category-card{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer}.category-icon{width:64px;height:64px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:28px;transition:transform .2s;background:var(--exooo-light-purple)}.category-card:active .category-icon{transform:scale(.92)}.category-name{font-size:12px;font-weight:500;color:var(--text-primary);text-align:center;line-height:1.2}.category-count{font-size:11px;color:var(--text-secondary)}.horizontal-scroll{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;padding:0 0 8px var(--screen-gutter);scroll-snap-type:x mandatory;scroll-padding-left:var(--screen-gutter);margin-left:calc(var(--screen-gutter) * -1);margin-right:calc(var(--screen-gutter) * -1)}.horizontal-scroll>.business-card-horizontal:first-of-type{margin-left:0}.horizontal-scroll::-webkit-scrollbar{display:none}.business-card-horizontal{min-width:280px;max-width:280px;background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform .2s,box-shadow .2s;scroll-snap-align:start}.business-card-horizontal:active{transform:scale(.98);box-shadow:var(--shadow-md)}.business-image-horizontal{width:100%;height:160px;position:relative;display:flex;align-items:center;justify-content:center}.business-image-horizontal img{width:100%;height:100%;object-fit:cover}.favorite-image-btn{position:absolute;top:12px;right:12px;width:36px;height:36px;border:none;border-radius:50%;background:#ffffffe0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;color:var(--text-primary);box-shadow:0 2px 8px #0000001f}.favorite-image-btn.active{color:var(--exooo-pink)}.login-required-modal{display:flex;flex-direction:column;gap:10px}.login-required-modal p{color:var(--text-secondary);font-size:14px}.login-required-actions{margin-top:6px;display:flex;justify-content:flex-end;align-items:center;gap:8px}.login-primary-btn{border:none;background:var(--exooo-purple);color:var(--white);border-radius:10px;padding:10px 14px;font-size:14px;font-weight:600}.discount-badge-overlay{position:absolute;bottom:12px;right:12px;background:var(--exooo-pink);color:#fff;font-size:14px;font-weight:700;padding:6px 12px;border-radius:8px;box-shadow:0 2px 8px #0003}.status-badge{position:absolute;bottom:12px;left:12px;font-size:12px;font-weight:600;padding:4px 10px;border-radius:6px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.status-badge.open{background:#10b981e6;color:#fff}.status-badge.closed{background:#6b7280e6;color:#fff}.expiring-badge{position:absolute;bottom:12px;left:12px;background:#ef4444f2;color:#fff;font-size:12px;font-weight:600;padding:4px 10px;border-radius:6px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.offer-validity-badge{max-width:calc(100% - 24px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.business-info-horizontal{padding:12px}.business-header-horizontal{display:flex;gap:10px;margin-bottom:8px;align-items:flex-start}.business-logo-small{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--exooo-light-purple);display:flex;align-items:center;justify-content:center;flex-shrink:0}.business-header-horizontal h3{font-size:15px;font-weight:600;margin:0 0 4px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.business-header-horizontal .business-category{font-size:12px;color:var(--text-secondary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.business-meta-horizontal{display:flex;gap:10px;font-size:12px;color:var(--text-secondary);flex-wrap:wrap}.business-meta-horizontal span{display:flex;align-items:center;gap:3px}.bottom-nav{position:sticky;bottom:0;display:flex;justify-content:space-around;background:#fff;border-top:1px solid var(--border-color);padding:8px 0 calc(8px + env(safe-area-inset-bottom));z-index:100;box-shadow:0 -2px 10px #0000000d}.nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;border:none;background:none;cursor:pointer;padding:8px 16px;color:var(--text-secondary);transition:color .2s;flex:1;max-width:80px}.nav-item.active,.nav-item.active .nav-icon{color:var(--exooo-purple)}.nav-icon{transition:color .2s}.nav-label{font-size:11px;font-weight:500}.home-quick-actions{position:fixed;left:50%;bottom:calc(14px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:150;width:196px;height:56px;display:flex;align-items:center;justify-content:center}.home-quick-actions-shell{position:relative;width:176px;height:52px;border-radius:999px;border:1px solid var(--border-color);background:radial-gradient(20px 26px at 40% 50%,rgba(15,23,42,.08),transparent 72%),radial-gradient(20px 26px at 60% 50%,rgba(15,23,42,.08),transparent 72%),var(--white);box-shadow:0 10px 22px #00000024,inset 0 1px #ffffffa6;display:flex;align-items:center;justify-content:space-between;padding:0 12px}.home-quick-btn{width:46px;height:46px;border:none;border-radius:50%;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--exooo-purple)}.home-quick-btn-side{width:38px;height:38px;border-radius:50%;color:#9ca3af;transition:background .2s ease,color .2s ease,transform .2s ease}.home-quick-btn-side .iconify{width:20px;height:20px;opacity:.9}.home-quick-btn-side:active{background:#f8f9fb;color:#7c3aed;transform:scale(.96)}.home-quick-btn-main{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;color:#fff;background:linear-gradient(135deg,#ca0060,#9333ea);box-shadow:0 14px 28px #9333ea57}.home-quick-btn:active{transform:scale(.96)}.home-quick-btn-main:active{transform:translate(-50%,-50%) scale(.96)}.home-quick-btn-admin{position:absolute;left:calc(100% - 2px);top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;color:#9ca3af;background:#fff;box-shadow:0 8px 18px #0f172a24;transition:background .2s ease,color .2s ease,transform .2s ease}.home-quick-btn-admin:active{transform:translateY(-50%) scale(.96)}.home-admin-scan-modal h3{font-size:20px;margin-bottom:6px}.home-admin-scan-subtitle{color:var(--text-secondary);font-size:13px;margin-bottom:12px}.home-admin-scan-camera-wrap{border-radius:var(--radius-md);overflow:hidden;background:#0f172a;border:1px solid #1e293b}.home-admin-scan-success{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:6px 0}.home-admin-scan-success-icon{width:min(170px,56vw);height:auto;max-width:100%;object-fit:contain}.home-admin-scan-success h4{margin:0;font-size:22px;line-height:1.2;color:#0f172a;font-weight:700}.home-admin-scan-success p{margin:0;max-width:320px;color:#475569;font-size:14px;line-height:1.5}.home-admin-scan-video{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.home-admin-scan-fallback{font-size:12px;color:var(--text-secondary);margin-bottom:12px}.home-admin-scan-status{margin-top:12px;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600}.home-admin-scan-status-row{margin-top:12px;display:flex;align-items:center;gap:10px}.home-admin-scan-status-row .home-admin-scan-status{margin-top:0}.home-admin-scan-status.is-success{color:#15803d}.home-admin-scan-status.is-error{color:#b91c1c}.home-admin-scan-status.is-scanning,.home-admin-scan-status.is-verifying{color:#0f766e}.home-admin-scan-error{margin-top:10px;color:#b91c1c;font-size:12px}.home-admin-scan-manual{margin-top:14px;display:flex;gap:8px}.home-admin-scan-manual input{flex:1;border:1px solid var(--border-color);border-radius:10px;min-height:40px;padding:0 12px;font-size:14px}.home-admin-scan-manual button,.home-admin-scan-retry{border:none;border-radius:10px;min-height:40px;padding:0 14px;color:#fff;background:linear-gradient(135deg,#ca0060,#9333ea);font-weight:600}.home-admin-scan-retry-icon{margin-left:auto;width:46px;height:46px;border:none;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#ca0060,#9333ea);box-shadow:0 10px 22px #9333ea57}.home-admin-scan-retry-icon:disabled{opacity:.6}.home-admin-scan-retry-icon.spinning-once{animation:retry-spin-once .6s linear 1}@keyframes retry-spin-once{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinning{animation:home-spin 1s linear infinite}@keyframes home-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sheet-overlay{position:fixed;inset:0;width:100vw;height:100vh;z-index:99999;background:#00000040;display:flex;align-items:flex-end;justify-content:center}.sheet-content{width:100vw;max-height:100vh;max-width:480px;background:#fff;border-radius:18px 18px 0 0;box-shadow:0 -6px 32px #0000001f;padding:24px 16px 100px;min-height:120px;max-height:90vh;overflow-y:auto;position:relative;align-items:flex-end;animation:sheetUp .22s cubic-bezier(.4,1.8,.6,1) backwards;box-sizing:border-box}.modal-title{margin-top:0;margin-bottom:20px;text-align:left;font-size:21px;font-weight:700}.categories-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 10px;padding:0;margin:0;width:100%;box-sizing:border-box;overflow-x:hidden}.category-card{border:none;background:none;border-radius:14px;padding:12px 4px 4px;display:flex;flex-direction:column;align-items:center;cursor:pointer;min-width:0;min-height:92px;transition:box-shadow .12s;box-shadow:none}.category-card:hover{box-shadow:0 2px 8px #b450ff14}.category-icon{display:flex;align-items:center;justify-content:center;width:clamp(56px,17vw,72px);height:clamp(56px,17vw,72px);border-radius:12px;margin:0 auto 10px;background:#f5e9fd;transition:background .18s}.category-card:hover .category-icon{background:#ede5ff}.category-icon .iconify{font-size:28px;width:28px!important;height:28px!important;color:inherit}.category-name{display:block;text-align:center;font-size:12px;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;white-space:normal;min-height:2.6em;padding:0 2px;min-width:0}@media(max-width:360px){.categories-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 10px}}.skeleton-card{pointer-events:none}.skeleton-block,.skeleton-line,.skeleton-circle{position:relative;overflow:hidden;background:#eceff3}.skeleton-block:after,.skeleton-line:after,.skeleton-circle:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,#eceff300,#ffffffa6,#eceff300);animation:skeleton-shimmer 1.35s infinite}@keyframes skeleton-shimmer{to{transform:translate(100%)}}.carousel-skeleton .carousel-image{background:#eceff3}.carousel-skeleton .carousel-image:before{display:none}.categories-grid-skeleton .category-card{cursor:default}.categories-grid-skeleton .category-icon{background:#eceff3}.categories-grid-skeleton .skeleton-text{width:78%;height:12px;border-radius:6px;margin-top:2px}.skeleton-circle{width:36px;height:36px;border-radius:999px}.skeleton-title{width:86%;height:14px;border-radius:7px;margin-bottom:8px}.skeleton-subtitle{width:62%;height:12px;border-radius:6px}.skeleton-meta{width:72%;height:11px;border-radius:6px}@media(min-width:768px){.home-screen{max-width:480px;margin:0 auto;box-shadow:0 0 20px #0000001a}.location-permission-bubble{width:260px}}.sheet-overlay[data-v-394c4226]{position:fixed;inset:0;z-index:1000;background:#00000040;display:flex;align-items:flex-end;justify-content:center;transition:background .18s}.sheet-content[data-v-394c4226]{width:100vw;max-height:100vh;max-width:480px;background:#fff;border-radius:18px 18px 0 0;box-shadow:0 -6px 32px #0000001f;padding:24px 16px 100px;min-height:120px;max-height:90vh;overflow-y:auto;overscroll-behavior:none;overscroll-behavior-y:none;-webkit-overflow-scrolling:auto;position:relative;align-items:flex-end;animation:sheetUp-394c4226 .22s cubic-bezier(.4,1.8,.6,1) backwards;box-sizing:border-box}.sheet-content.map-pins-sheet[data-v-394c4226]{min-height:68dvh;max-height:92dvh;display:flex;flex-direction:column;overflow:hidden;padding:18px 16px calc(14px + env(safe-area-inset-bottom)) 16px}@keyframes sheetUp-394c4226{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-drag[data-v-394c4226]{width:48px;height:6px;border-radius:4px;background:#e5e5e5;margin:0 auto 12px}.sheet-close[data-v-394c4226]{position:absolute;top:12px;right:16px;width:40px;height:40px;border-radius:50%;border:none;background:#ffffffe6;display:flex;align-items:center;justify-content:center;font-size:24px;color:#212529;box-shadow:0 2px 8px #00000014;cursor:pointer}.auth-modal[data-v-75536df4]{display:flex;flex-direction:column;gap:10px;padding-bottom:calc(16px + env(safe-area-inset-bottom))}.auth-verification-state[data-v-75536df4]{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:6px 8px 10px}.auth-verification-icon[data-v-75536df4]{color:var(--warning-color, #f59e0b)}.auth-verification-title[data-v-75536df4]{margin:4px 0 0;color:var(--text-primary)}.auth-verification-text[data-v-75536df4]{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.45}.auth-title[data-v-75536df4]{margin:0;text-align:center;color:var(--exooo-purple)}.auth-subtitle[data-v-75536df4]{margin:0;text-align:center;color:var(--text-secondary);font-size:14px}.auth-switch-line[data-v-75536df4]{margin-top:6px;text-align:center;color:var(--text-primary);font-weight:600;font-size:14px}.auth-social-row[data-v-75536df4]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.auth-social-btn[data-v-75536df4]{position:relative;border:1px solid #a7b4ff;background:#fff;color:#5b73e8;border-radius:8px;height:40px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.auth-social-btn.disabled[data-v-75536df4]{opacity:.65}.auth-social-btn small[data-v-75536df4]{position:absolute;top:-8px;right:8px;background:#6b7280;color:#fff;border-radius:10px;padding:1px 6px;font-size:10px}.auth-form[data-v-75536df4]{display:flex;flex-direction:column;gap:10px;margin-bottom:6px}.auth-label[data-v-75536df4]{display:flex;flex-direction:column;gap:6px;color:var(--text-primary);font-weight:500;font-size:14px}.auth-input[data-v-75536df4]{width:100%;border:1px solid #d4d8e0;border-radius:8px;height:40px;padding:0 12px;font-size:16px}.auth-input.input-error[data-v-75536df4]{border-color:#dc2626}.field-error[data-v-75536df4]{margin-top:2px;color:#dc2626;font-size:12px;font-weight:500}.auth-password-wrap[data-v-75536df4]{position:relative}.auth-eye-btn[data-v-75536df4]{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:#6b7280}.auth-footer-row[data-v-75536df4]{margin-top:4px;display:flex;justify-content:space-between;align-items:center}.auth-footer-row-end[data-v-75536df4]{justify-content:flex-end}.auth-link[data-v-75536df4]{color:#5b73e8;font-size:14px;text-decoration:none}.auth-submit-btn[data-v-75536df4]{border:none;background:#5b73e8;color:#fff;border-radius:8px;padding:10px 18px;font-weight:600}.auth-submit-btn[data-v-75536df4]:disabled{opacity:.7}.auth-error[data-v-75536df4]{margin:0;color:#dc2626;font-size:13px}.auth-toggle-row[data-v-75536df4]{margin:8px 0 calc(10px + env(safe-area-inset-bottom));text-align:center;color:var(--text-primary);font-size:14px}.auth-link-btn[data-v-75536df4]{border:none;background:transparent;color:#5b73e8;font-weight:600;padding:0 0 0 4px}.auth-link-btn-inline[data-v-75536df4]{padding:0;font-size:14px}.user-menu-layer[data-v-99676d07]{position:fixed;inset:0;z-index:180;background:#170c0a2e}.user-menu-panel[data-v-99676d07]{position:fixed;max-width:100vw;background:linear-gradient(180deg,#fff8f3,#fff 26% 100%);border-top:1px solid #ffd9bf;border-bottom-left-radius:16px;border-bottom-right-radius:16px;box-shadow:0 12px 28px #ca00601f;padding:8px 16px calc(10px + env(safe-area-inset-bottom))}.menu-row-wrap[data-v-99676d07]{border-top:1px solid #ffe8d6}.menu-row[data-v-99676d07]{width:100%;border:none;background:transparent;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:10px 6px;border-radius:12px}.profile-row[data-v-99676d07]{border-bottom:1px solid #ffe8d6}.profile-avatar[data-v-99676d07]{width:40px;height:40px;border-radius:999px;background:linear-gradient(135deg,#f07c33,#ca0060);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.profile-icon[data-v-99676d07]{color:#ca0060;flex-shrink:0}.profile-copy[data-v-99676d07],.row-copy[data-v-99676d07]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.profile-copy strong[data-v-99676d07],.row-copy strong[data-v-99676d07]{font-size:15px;color:#2a211c}.profile-copy small[data-v-99676d07],.row-copy small[data-v-99676d07]{font-size:12px;color:#7a5a4a}.row-chevron[data-v-99676d07]{color:#ca0060;flex-shrink:0}.lang-options[data-v-99676d07]{padding:0 0 8px;display:flex;flex-direction:column;gap:6px}.lang-option[data-v-99676d07]{border:1px solid var(--border-color, #e5e7eb);background:var(--white, #ffffff);border-radius:10px;min-height:40px;padding:0 12px;text-align:left;color:var(--text-primary, #212529);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.lang-option[data-v-99676d07]:active{transform:scale(.99)}.lang-option.active[data-v-99676d07]{border-color:var(--exooo-orange, #f07c33);box-shadow:0 0 0 3px #f07c3326}.logout-row[data-v-99676d07]{border-top:1px solid #ffe8d6}.user-menu-fade-enter-active[data-v-99676d07],.user-menu-fade-leave-active[data-v-99676d07]{transition:opacity .18s ease}.user-menu-fade-enter-from[data-v-99676d07],.user-menu-fade-leave-to[data-v-99676d07]{opacity:0}.user-menu-slide-enter-active[data-v-99676d07],.user-menu-slide-leave-active[data-v-99676d07]{transition:transform .2s ease,opacity .2s ease}.user-menu-slide-enter-from[data-v-99676d07],.user-menu-slide-leave-to[data-v-99676d07]{transform:translateY(-8px);opacity:0}.lang-accordion-enter-active[data-v-99676d07],.lang-accordion-leave-active[data-v-99676d07]{transition:all .16s ease;overflow:hidden}.lang-accordion-enter-from[data-v-99676d07],.lang-accordion-leave-to[data-v-99676d07]{opacity:0;max-height:0}.lang-accordion-enter-to[data-v-99676d07],.lang-accordion-leave-from[data-v-99676d07]{opacity:1;max-height:120px}[data-v-0a154b52]:root{--screen-gutter: 16px;--exooo-orange: #f07c33;--exooo-pink: #ca0060;--exooo-purple: #9333ea;--exooo-light-purple: #f3e8ff;--exooo-light-orange: #fff4ed;--exooo-light-pink: #ffe8f5;--exooo-green: #22c55e;--exooo-light-green: #ecfdf5;--exooo-red: #dc2626;--exooo-light-red: #fee2e2;--text-primary: #212529;--text-secondary: #868e96;--bg-gray: #f8f9fa;--border-color: #e9ecef;--white: #ffffff;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1)}[data-v-0a154b52]{margin:0;padding:0;box-sizing:border-box}html[data-v-0a154b52],body[data-v-0a154b52],#app[data-v-0a154b52]{min-height:100%}body[data-v-0a154b52]{background-color:#eceff3;background-image:linear-gradient(#eceff3c7,#eceff3c7),url(/assets/doodles-BGPg3jDD.webp);background-repeat:repeat;background-size:auto,220px 220px;background-position:0 0,0 0}.home-screen[data-v-0a154b52]{display:flex;flex-direction:column;height:100vh;height:100dvh;min-height:100dvh;background:var(--bg-gray);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.home-header[data-v-0a154b52]{display:flex;justify-content:space-between;align-items:center;padding:16px;background:linear-gradient(135deg,var(--exooo-orange) 0%,#ff8f59 100%);position:sticky;top:0;z-index:100;color:#fff}.header-left[data-v-0a154b52]{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.location-btn[data-v-0a154b52]{width:40px;height:40px;border-radius:50%;border:none;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .2s;flex-shrink:0}.location-btn[data-v-0a154b52]:active{transform:scale(.95);background:#ffffff4d}.location-widget[data-v-0a154b52]{position:relative;flex-shrink:0}.location-btn.is-disabled[data-v-0a154b52]{opacity:.72;cursor:not-allowed}.location-permission-bubble[data-v-0a154b52]{position:absolute;left:0;top:calc(100% + 8px);width:min(260px,calc(100vw - 32px));background:#fff;color:var(--text-primary);border-radius:12px;padding:10px;box-shadow:0 10px 24px #0f172a2e;z-index:120}.location-permission-bubble[data-v-0a154b52]:before{content:"";position:absolute;top:-6px;left:16px;width:12px;height:12px;transform:rotate(45deg);background:#fff}.location-permission-bubble p[data-v-0a154b52]{font-size:12px;line-height:1.45;margin:0}.location-permission-actions[data-v-0a154b52]{margin-top:10px;display:flex;justify-content:flex-end;gap:8px}.location-permission-btn[data-v-0a154b52]{border:none;border-radius:8px;min-height:30px;padding:0 10px;font-size:12px;font-weight:600}.location-permission-btn.ghost[data-v-0a154b52]{background:#f1f5f9;color:#334155}.location-permission-btn.primary[data-v-0a154b52]{background:linear-gradient(135deg,var(--exooo-orange) 0%,#ff8f59 100%);color:#fff}.header-title[data-v-0a154b52]{display:flex;flex-direction:column;gap:2px;cursor:pointer;min-width:0;flex:1}.location-row[data-v-0a154b52]{display:flex;align-items:center;gap:4px}.header-title h1[data-v-0a154b52]{font-size:15px;font-weight:600;margin:0}.header-title p[data-v-0a154b52]{font-size:12px;opacity:.9;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.dropdown-icon[data-v-0a154b52]{opacity:.9;flex-shrink:0}.home-location-modal h3[data-v-0a154b52]{font-size:20px;margin-bottom:6px}.home-location-modal-subtitle[data-v-0a154b52]{color:var(--text-secondary);font-size:13px;margin-bottom:14px}.home-location-list[data-v-0a154b52]{display:flex;flex-direction:column;gap:10px}.home-location-item[data-v-0a154b52]{width:100%;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--white);color:var(--text-primary);padding:12px 14px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.home-location-item strong[data-v-0a154b52]{display:block;font-size:15px}.home-location-item small[data-v-0a154b52]{display:block;font-size:12px;color:var(--text-secondary);margin-top:2px}.home-location-item[data-v-0a154b52]:active{transform:scale(.99)}.home-location-item.active[data-v-0a154b52]{border-color:var(--exooo-orange);box-shadow:0 0 0 3px #f07c3326}.home-location-modal-loading[data-v-0a154b52]{margin-top:12px;color:var(--text-secondary);font-size:12px}.header-actions[data-v-0a154b52]{display:flex;gap:8px;flex-shrink:0}.icon-btn[data-v-0a154b52]{position:relative;width:40px;height:40px;border-radius:50%;border:none;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .2s}.icon-btn[data-v-0a154b52]:active{transform:scale(.95);background:#ffffff4d}.badge[data-v-0a154b52]{position:absolute;top:-2px;right:-2px;background:var(--exooo-pink);color:#fff;font-size:10px;padding:2px 6px;border-radius:10px;font-weight:600;border:2px solid var(--exooo-orange)}.avatar-sm[data-v-0a154b52]{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid white}.avatar-initial[data-v-0a154b52]{display:inline-block;font-size:20px;font-weight:700;color:#fff;line-height:1}.home-content[data-v-0a154b52]{flex:1;overflow-y:auto;padding-bottom:calc(96px + env(safe-area-inset-bottom));overscroll-behavior:none;overscroll-behavior-y:none;-webkit-overflow-scrolling:touch}.search-container[data-v-0a154b52]{padding:16px;background:linear-gradient(180deg,var(--exooo-orange) 0%,transparent 100%);transition:background .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);z-index:90}.search-container.search-sticky[data-v-0a154b52]{position:sticky;top:0;background:linear-gradient(180deg,var(--exooo-orange) 0%,transparent 100%);box-shadow:0 2px 8px #0000001a;animation:slideDown-0a154b52 .3s ease}@keyframes slideDown-0a154b52{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.search-bar[data-v-0a154b52]{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-sm);transition:box-shadow .2s ease}.search-sticky .search-bar[data-v-0a154b52]{box-shadow:var(--shadow-md)}.search-bar input[data-v-0a154b52]{flex:1;border:none;background:transparent;font-size:15px;cursor:pointer;outline:none;color:var(--text-primary)}.search-bar input[data-v-0a154b52]::placeholder{color:var(--text-secondary)}.section-featured[data-v-0a154b52]{margin-bottom:24px}.carousel[data-v-0a154b52]{position:relative;overflow:hidden;height:180px;margin:0 var(--screen-gutter);border-radius:var(--radius-lg);touch-action:pan-y;-webkit-user-select:none;user-select:none}.carousel-track[data-v-0a154b52]{display:flex;transition:transform .5s ease;height:100%}.carousel-slide[data-v-0a154b52]{min-width:100%;height:100%;cursor:pointer}.carousel-image[data-v-0a154b52]{width:100%;height:100%;display:flex;align-items:flex-end;padding:20px;background:linear-gradient(135deg,var(--exooo-pink) 0%,var(--exooo-purple) 100%);border-radius:var(--radius-lg);position:relative;overflow:hidden}.carousel-image[data-v-0a154b52]:before{content:"";position:absolute;top:0;right:0;width:200px;height:200px;background:#ffffff1a;border-radius:50%;transform:translate(50%,-50%)}.carousel-content[data-v-0a154b52]{color:#fff;z-index:1}.badge-featured[data-v-0a154b52]{display:inline-block;padding:4px 12px;background:#ffffff40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-md);font-size:12px;font-weight:600;margin-bottom:8px}.carousel-content h3[data-v-0a154b52]{font-size:20px;font-weight:700;margin:0 0 4px;line-height:1.3}.carousel-content p[data-v-0a154b52]{font-size:14px;margin:0;opacity:.95}.carousel-dots[data-v-0a154b52]{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:flex;gap:6px;z-index:2}.dot[data-v-0a154b52]{width:6px;height:6px;border-radius:50%;background:#ffffff80;cursor:pointer;transition:all .3s}.dot.active[data-v-0a154b52]{background:#fff;width:20px;border-radius:3px}.section-categories[data-v-0a154b52],.section-carousel[data-v-0a154b52]{padding:0 var(--screen-gutter) 24px}.section-carousel .section-header[data-v-0a154b52]{padding:0;margin-bottom:16px}.section-header[data-v-0a154b52]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h2[data-v-0a154b52]{font-size:18px;font-weight:700;color:var(--text-primary);margin:0}.section-title-with-icon[data-v-0a154b52]{display:inline-flex;align-items:center;gap:8px}.section-title-icon[data-v-0a154b52]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--exooo-orange);background:transparent}.btn-text[data-v-0a154b52]{border:none;background:none;color:var(--exooo-purple);font-weight:600;cursor:pointer;font-size:14px;padding:4px 8px}.categories-grid[data-v-0a154b52]{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.category-card[data-v-0a154b52]{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer}.category-icon[data-v-0a154b52]{width:64px;height:64px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:28px;transition:transform .2s;background:var(--exooo-light-purple)}.category-card:active .category-icon[data-v-0a154b52]{transform:scale(.92)}.category-name[data-v-0a154b52]{font-size:12px;font-weight:500;color:var(--text-primary);text-align:center;line-height:1.2}.category-count[data-v-0a154b52]{font-size:11px;color:var(--text-secondary)}.horizontal-scroll[data-v-0a154b52]{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;padding:0 0 8px var(--screen-gutter);scroll-snap-type:x mandatory;scroll-padding-left:var(--screen-gutter);margin-left:calc(var(--screen-gutter) * -1);margin-right:calc(var(--screen-gutter) * -1)}.horizontal-scroll>.business-card-horizontal[data-v-0a154b52]:first-of-type{margin-left:0}.horizontal-scroll[data-v-0a154b52]::-webkit-scrollbar{display:none}.business-card-horizontal[data-v-0a154b52]{min-width:280px;max-width:280px;background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform .2s,box-shadow .2s;scroll-snap-align:start}.business-card-horizontal[data-v-0a154b52]:active{transform:scale(.98);box-shadow:var(--shadow-md)}.business-image-horizontal[data-v-0a154b52]{width:100%;height:160px;position:relative;display:flex;align-items:center;justify-content:center}.business-image-horizontal img[data-v-0a154b52]{width:100%;height:100%;object-fit:cover}.favorite-image-btn[data-v-0a154b52]{position:absolute;top:12px;right:12px;width:36px;height:36px;border:none;border-radius:50%;background:#ffffffe0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;color:var(--text-primary);box-shadow:0 2px 8px #0000001f}.favorite-image-btn.active[data-v-0a154b52]{color:var(--exooo-pink)}.login-required-modal[data-v-0a154b52]{display:flex;flex-direction:column;gap:10px}.login-required-modal p[data-v-0a154b52]{color:var(--text-secondary);font-size:14px}.login-required-actions[data-v-0a154b52]{margin-top:6px;display:flex;justify-content:flex-end;align-items:center;gap:8px}.login-primary-btn[data-v-0a154b52]{border:none;background:var(--exooo-purple);color:var(--white);border-radius:10px;padding:10px 14px;font-size:14px;font-weight:600}.discount-badge-overlay[data-v-0a154b52]{position:absolute;bottom:12px;right:12px;background:var(--exooo-pink);color:#fff;font-size:14px;font-weight:700;padding:6px 12px;border-radius:8px;box-shadow:0 2px 8px #0003}.status-badge[data-v-0a154b52]{position:absolute;bottom:12px;left:12px;font-size:12px;font-weight:600;padding:4px 10px;border-radius:6px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.status-badge.open[data-v-0a154b52]{background:#10b981e6;color:#fff}.status-badge.closed[data-v-0a154b52]{background:#6b7280e6;color:#fff}.expiring-badge[data-v-0a154b52]{position:absolute;bottom:12px;left:12px;background:#ef4444f2;color:#fff;font-size:12px;font-weight:600;padding:4px 10px;border-radius:6px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.offer-validity-badge[data-v-0a154b52]{max-width:calc(100% - 24px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.business-info-horizontal[data-v-0a154b52]{padding:12px}.business-header-horizontal[data-v-0a154b52]{display:flex;gap:10px;margin-bottom:8px;align-items:flex-start}.business-logo-small[data-v-0a154b52]{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--exooo-light-purple);display:flex;align-items:center;justify-content:center;flex-shrink:0}.business-header-horizontal h3[data-v-0a154b52]{font-size:15px;font-weight:600;margin:0 0 4px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.business-header-horizontal .business-category[data-v-0a154b52]{font-size:12px;color:var(--text-secondary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.business-meta-horizontal[data-v-0a154b52]{display:flex;gap:10px;font-size:12px;color:var(--text-secondary);flex-wrap:wrap}.business-meta-horizontal span[data-v-0a154b52]{display:flex;align-items:center;gap:3px}.bottom-nav[data-v-0a154b52]{position:sticky;bottom:0;display:flex;justify-content:space-around;background:#fff;border-top:1px solid var(--border-color);padding:8px 0 calc(8px + env(safe-area-inset-bottom));z-index:100;box-shadow:0 -2px 10px #0000000d}.nav-item[data-v-0a154b52]{display:flex;flex-direction:column;align-items:center;gap:4px;border:none;background:none;cursor:pointer;padding:8px 16px;color:var(--text-secondary);transition:color .2s;flex:1;max-width:80px}.nav-item.active[data-v-0a154b52],.nav-item.active .nav-icon[data-v-0a154b52]{color:var(--exooo-purple)}.nav-icon[data-v-0a154b52]{transition:color .2s}.nav-label[data-v-0a154b52]{font-size:11px;font-weight:500}.home-quick-actions[data-v-0a154b52]{position:fixed;left:50%;bottom:calc(14px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:150;width:196px;height:56px;display:flex;align-items:center;justify-content:center}.home-quick-actions-shell[data-v-0a154b52]{position:relative;width:176px;height:52px;border-radius:999px;border:1px solid var(--border-color);background:radial-gradient(20px 26px at 40% 50%,rgba(15,23,42,.08),transparent 72%),radial-gradient(20px 26px at 60% 50%,rgba(15,23,42,.08),transparent 72%),var(--white);box-shadow:0 10px 22px #00000024,inset 0 1px #ffffffa6;display:flex;align-items:center;justify-content:space-between;padding:0 12px}.home-quick-btn[data-v-0a154b52]{width:46px;height:46px;border:none;border-radius:50%;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--exooo-purple)}.home-quick-btn-side[data-v-0a154b52]{width:38px;height:38px;border-radius:50%;color:#9ca3af;transition:background .2s ease,color .2s ease,transform .2s ease}.home-quick-btn-side .iconify[data-v-0a154b52]{width:20px;height:20px;opacity:.9}.home-quick-btn-side[data-v-0a154b52]:active{background:#f8f9fb;color:#7c3aed;transform:scale(.96)}.home-quick-btn-main[data-v-0a154b52]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;color:#fff;background:linear-gradient(135deg,#ca0060,#9333ea);box-shadow:0 14px 28px #9333ea57}.home-quick-btn[data-v-0a154b52]:active{transform:scale(.96)}.home-quick-btn-main[data-v-0a154b52]:active{transform:translate(-50%,-50%) scale(.96)}.home-quick-btn-admin[data-v-0a154b52]{position:absolute;left:calc(100% - 2px);top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;color:#9ca3af;background:#fff;box-shadow:0 8px 18px #0f172a24;transition:background .2s ease,color .2s ease,transform .2s ease}.home-quick-btn-admin[data-v-0a154b52]:active{transform:translateY(-50%) scale(.96)}.home-admin-scan-modal h3[data-v-0a154b52]{font-size:20px;margin-bottom:6px}.home-admin-scan-subtitle[data-v-0a154b52]{color:var(--text-secondary);font-size:13px;margin-bottom:12px}.home-admin-scan-camera-wrap[data-v-0a154b52]{border-radius:var(--radius-md);overflow:hidden;background:#0f172a;border:1px solid #1e293b}.home-admin-scan-success[data-v-0a154b52]{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:6px 0}.home-admin-scan-success-icon[data-v-0a154b52]{width:min(170px,56vw);height:auto;max-width:100%;object-fit:contain}.home-admin-scan-success h4[data-v-0a154b52]{margin:0;font-size:22px;line-height:1.2;color:#0f172a;font-weight:700}.home-admin-scan-success p[data-v-0a154b52]{margin:0;max-width:320px;color:#475569;font-size:14px;line-height:1.5}.home-admin-scan-video[data-v-0a154b52]{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.home-admin-scan-fallback[data-v-0a154b52]{font-size:12px;color:var(--text-secondary);margin-bottom:12px}.home-admin-scan-status[data-v-0a154b52]{margin-top:12px;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600}.home-admin-scan-status-row[data-v-0a154b52]{margin-top:12px;display:flex;align-items:center;gap:10px}.home-admin-scan-status-row .home-admin-scan-status[data-v-0a154b52]{margin-top:0}.home-admin-scan-status.is-success[data-v-0a154b52]{color:#15803d}.home-admin-scan-status.is-error[data-v-0a154b52]{color:#b91c1c}.home-admin-scan-status.is-scanning[data-v-0a154b52],.home-admin-scan-status.is-verifying[data-v-0a154b52]{color:#0f766e}.home-admin-scan-error[data-v-0a154b52]{margin-top:10px;color:#b91c1c;font-size:12px}.home-admin-scan-manual[data-v-0a154b52]{margin-top:14px;display:flex;gap:8px}.home-admin-scan-manual input[data-v-0a154b52]{flex:1;border:1px solid var(--border-color);border-radius:10px;min-height:40px;padding:0 12px;font-size:14px}.home-admin-scan-manual button[data-v-0a154b52],.home-admin-scan-retry[data-v-0a154b52]{border:none;border-radius:10px;min-height:40px;padding:0 14px;color:#fff;background:linear-gradient(135deg,#ca0060,#9333ea);font-weight:600}.home-admin-scan-retry-icon[data-v-0a154b52]{margin-left:auto;width:46px;height:46px;border:none;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#ca0060,#9333ea);box-shadow:0 10px 22px #9333ea57}.home-admin-scan-retry-icon[data-v-0a154b52]:disabled{opacity:.6}.home-admin-scan-retry-icon.spinning-once[data-v-0a154b52]{animation:retry-spin-once-0a154b52 .6s linear 1}@keyframes retry-spin-once-0a154b52{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinning[data-v-0a154b52]{animation:home-spin-0a154b52 1s linear infinite}@keyframes home-spin-0a154b52{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sheet-overlay[data-v-0a154b52]{position:fixed;inset:0;width:100vw;height:100vh;z-index:99999;background:#00000040;display:flex;align-items:flex-end;justify-content:center}.sheet-content[data-v-0a154b52]{width:100vw;max-height:100vh;max-width:480px;background:#fff;border-radius:18px 18px 0 0;box-shadow:0 -6px 32px #0000001f;padding:24px 16px 100px;min-height:120px;max-height:90vh;overflow-y:auto;position:relative;align-items:flex-end;animation:sheetUp .22s cubic-bezier(.4,1.8,.6,1) backwards;box-sizing:border-box}.modal-title[data-v-0a154b52]{margin-top:0;margin-bottom:20px;text-align:left;font-size:21px;font-weight:700}.categories-grid[data-v-0a154b52]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 10px;padding:0;margin:0;width:100%;box-sizing:border-box;overflow-x:hidden}.category-card[data-v-0a154b52]{border:none;background:none;border-radius:14px;padding:12px 4px 4px;display:flex;flex-direction:column;align-items:center;cursor:pointer;min-width:0;min-height:92px;transition:box-shadow .12s;box-shadow:none}.category-card[data-v-0a154b52]:hover{box-shadow:0 2px 8px #b450ff14}.category-icon[data-v-0a154b52]{display:flex;align-items:center;justify-content:center;width:clamp(56px,17vw,72px);height:clamp(56px,17vw,72px);border-radius:12px;margin:0 auto 10px;background:#f5e9fd;transition:background .18s}.category-card:hover .category-icon[data-v-0a154b52]{background:#ede5ff}.category-icon .iconify[data-v-0a154b52]{font-size:28px;width:28px!important;height:28px!important;color:inherit}.category-name[data-v-0a154b52]{display:block;text-align:center;font-size:12px;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;white-space:normal;min-height:2.6em;padding:0 2px;min-width:0}@media(max-width:360px){.categories-grid[data-v-0a154b52]{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 10px}}.skeleton-card[data-v-0a154b52]{pointer-events:none}.skeleton-block[data-v-0a154b52],.skeleton-line[data-v-0a154b52],.skeleton-circle[data-v-0a154b52]{position:relative;overflow:hidden;background:#eceff3}.skeleton-block[data-v-0a154b52]:after,.skeleton-line[data-v-0a154b52]:after,.skeleton-circle[data-v-0a154b52]:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,#eceff300,#ffffffa6,#eceff300);animation:skeleton-shimmer-0a154b52 1.35s infinite}@keyframes skeleton-shimmer-0a154b52{to{transform:translate(100%)}}.carousel-skeleton .carousel-image[data-v-0a154b52]{background:#eceff3}.carousel-skeleton .carousel-image[data-v-0a154b52]:before{display:none}.categories-grid-skeleton .category-card[data-v-0a154b52]{cursor:default}.categories-grid-skeleton .category-icon[data-v-0a154b52]{background:#eceff3}.categories-grid-skeleton .skeleton-text[data-v-0a154b52]{width:78%;height:12px;border-radius:6px;margin-top:2px}.skeleton-circle[data-v-0a154b52]{width:36px;height:36px;border-radius:999px}.skeleton-title[data-v-0a154b52]{width:86%;height:14px;border-radius:7px;margin-bottom:8px}.skeleton-subtitle[data-v-0a154b52]{width:62%;height:12px;border-radius:6px}.skeleton-meta[data-v-0a154b52]{width:72%;height:11px;border-radius:6px}@media(min-width:768px){.home-screen[data-v-0a154b52]{max-width:480px;margin:0 auto;box-shadow:0 0 20px #0000001a}.location-permission-bubble[data-v-0a154b52]{width:260px}}.business-tabs-wrapper[data-v-daaf5350]{background:#fff}.business-tabs-wrapper.sticky[data-v-daaf5350]{box-shadow:none}.business-tabs[data-v-daaf5350]{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:0 16px}.business-tabs[data-v-daaf5350]::-webkit-scrollbar{display:none}.tab-item[data-v-daaf5350]{flex-shrink:0;padding:14px 20px;border:none;background:transparent;color:var(--text-secondary);font-size:15px;font-weight:500;cursor:pointer;position:relative;transition:all .2s;white-space:nowrap}.tab-item[data-v-daaf5350]:active{transform:scale(.98)}.tab-item.active[data-v-daaf5350]{color:var(--exooo-orange);font-weight:600}.tab-item.active[data-v-daaf5350]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--exooo-orange);border-radius:3px 3px 0 0}.modal-content{padding:24px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.modal-content.with-claim-footer{padding-bottom:112px}.modal-discount-badge{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:var(--radius-lg);color:#fff;box-shadow:0 4px 12px #f07c334d;font-family:Inter,sans-serif;z-index:10}.modal-discount-badge-inline{position:static;top:auto;left:auto}.modal-discount-badge .discount-value{font-size:20px;font-weight:600;line-height:1;letter-spacing:-.02em}.modal-discount-badge.badge-percentage{background:linear-gradient(135deg,var(--exooo-orange) 0%,#ff9a5c 100%);box-shadow:0 4px 12px #f07c334d}.modal-discount-badge.badge-fixed{background:linear-gradient(135deg,var(--exooo-purple) 0%,#a855f7 100%);box-shadow:0 4px 12px #9333ea4d}.modal-discount-badge.badge-gift{background:linear-gradient(135deg,var(--exooo-pink) 0%,#e6007a 100%);box-shadow:0 4px 12px #ca00604d}.modal-discount-badge.badge-points{background:linear-gradient(135deg,gold,orange);box-shadow:0 4px 12px #ffd7004d}.modal-discount-badge.badge-trial{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b9814d}.modal-discount-badge.badge-exclusive{background:linear-gradient(135deg,#1f2937,#374151);box-shadow:0 4px 12px #1f29374d}.modal-title{font-size:20px;font-weight:700;color:var(--text-primary);margin:0 0 12px;line-height:1.3;font-family:Inter,sans-serif}.modal-info-block{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin-bottom:16px}.modal-expiry.modal-info-block{width:100%;justify-content:flex-start;align-items:flex-start;text-align:left;margin-bottom:16px}.modal-info-line{display:flex;width:100%;align-items:center;justify-content:flex-start;gap:12px}.modal-info-icon-wrap{width:40px;height:40px;border-radius:50%;background:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.modal-info-icon-wrap svg{font-size:20px;color:var(--exooo-orange)}.modal-info-content{display:flex;flex-direction:column;gap:2px;min-width:0}.modal-info-label{font-size:13px;color:var(--text-secondary);font-weight:500;line-height:1.2}.modal-info-value{font-size:15px;color:var(--text-primary);font-weight:600;line-height:1.35}.modal-type{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--exooo-light-purple);color:var(--exooo-purple);border-radius:var(--radius-sm);font-size:14px;font-weight:600;display:inline-flex;margin-bottom:16px}.modal-type svg{font-size:18px}.modal-description{font-size:14px;line-height:1.5;color:var(--text-primary);margin:0 0 16px;font-family:Inter,sans-serif}.modal-code-section{margin-bottom:20px;padding:20px;background:#fff;border:2px dashed var(--exooo-orange);border-radius:var(--radius-md);display:flex;justify-content:center;align-items:center}.code-display{display:flex;flex-direction:column;align-items:center;gap:12px}.barcode-canvas{max-width:100%;height:auto}.code-text{font-size:18px;font-weight:700;color:var(--text-primary);letter-spacing:.1em;font-family:Courier New,monospace}.modal-details{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;padding:12px;background:var(--bg-gray);border-radius:var(--radius-sm)}.detail-item{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-primary);font-family:Inter,sans-serif}.detail-item svg{font-size:18px;color:var(--exooo-orange);flex-shrink:0}.detail-item strong{font-weight:600;color:var(--exooo-orange)}.modal-expiry{display:flex;align-items:center;gap:8px;padding:12px;background:var(--bg-gray);border-radius:var(--radius-sm);font-size:14px;color:var(--text-secondary);margin-bottom:24px;font-family:Inter,sans-serif}.modal-expiry svg{font-size:20px;color:var(--exooo-orange)}.modal-coupon-box{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;margin-bottom:12px;border:1px dashed #0f172a;border-radius:var(--radius-sm);background:#f8fafc}.modal-coupon-code{font-size:14px;font-weight:700;letter-spacing:.08em;color:#0f172a}.modal-coupon-copy-btn{display:inline-flex;align-items:center;gap:6px;border:none;border-radius:10px;background:#15254a;color:#fff;padding:8px 10px;font-size:12px;cursor:pointer}.modal-coupon-copy-btn:disabled{opacity:.7;cursor:default}.claimed-section-card{margin-bottom:14px;padding:14px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}.claimed-verify-intro{margin:2px 0 12px}.claimed-verify-intro h3{margin:0 0 4px;font-size:14px;font-weight:700;color:#0f172a}.claimed-verify-intro p{margin:0;font-size:12px;color:#475569}.claimed-section-title{font-size:15px;font-weight:700;color:#0f172a;margin-bottom:4px}.claimed-section-helper{font-size:12px;color:#64748b;margin-bottom:12px}.claimed-header-helper{margin:0 0 12px;color:#475569;font-size:13px;line-height:1.45}.claimed-countdown-block{margin-top:10px}.claimed-countdown-row{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;color:#334155;margin-bottom:6px}.claimed-countdown-row strong{color:#0f172a}.claimed-countdown-bar{width:100%;height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.claimed-countdown-progress{height:100%;border-radius:inherit;background:linear-gradient(90deg,#10b981,#f59e0b 60%,#ef4444);transition:width .6s linear}.claimed-countdown-expired{margin-top:8px;font-size:12px;color:#b91c1c;font-weight:600;text-align:center}.offer-redeemed-state{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px}.offer-redeemed-icon{width:min(170px,56vw);height:auto;max-width:100%;object-fit:contain}.offer-redeemed-title{margin:0;font-size:24px;line-height:1.2;color:#0f172a;font-weight:700}.offer-redeemed-text{margin:0;max-width:320px;color:#475569;font-size:14px;line-height:1.5}.claimed-code-section{margin-bottom:0}.claimed-code-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;padding:4px;margin-bottom:12px;border:1px solid #dbe3ee;border-radius:12px;background:#eef2f7}.claimed-code-switch-btn{border:none;border-radius:10px;background:transparent;color:#475569;font-size:13px;font-weight:700;padding:10px 8px;cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}.claimed-code-switch-btn.active{background:#fff;color:#0f172a;box-shadow:0 1px 2px #0f172a1f}.qr-payload-box{display:inline-flex;align-items:center;gap:8px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px;padding:10px 12px;color:#334155}.qr-payload-box svg{font-size:20px}.qr-payload-label{font-size:13px;font-weight:600}.qr-image{width:220px;height:220px;display:block;border-radius:0;background:transparent;padding:0;border:none}.claimed-qr-card{margin:2px auto 0;width:100%;max-width:252px;border:none;border-radius:0;background:transparent;padding:0;display:flex;flex-direction:column;align-items:center;gap:10px}.claimed-countdown-card{margin:2px auto 0;width:220px}.claimed-qr-listening-row{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;color:#334155;margin-bottom:8px}.claimed-qr-time-left{margin-top:6px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#334155}.claimed-qr-time-left strong{color:#0f172a}.section-open-shop-btn{width:100%;border:none;border-radius:10px;background:#0f766e;color:#fff;font-weight:600;display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:12px;cursor:pointer}.section-open-shop-btn:disabled{opacity:.6;cursor:default}.claimed-info-block{margin-top:8px;margin-bottom:12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.claimed-info-row{display:flex;justify-content:space-between;gap:12px;color:#334155;font-size:13px}.claimed-info-row strong{color:#0f172a}.claimed-info-row.emphasized strong{color:#166534}.modal-verify-error{display:flex;align-items:center;gap:8px;background:#fee2e2;color:#991b1b;border-radius:10px;padding:10px 12px;font-size:13px;font-weight:500}.modal-claim-state{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:999px;background:#ecfdf3;color:#166534;font-size:13px;font-weight:600}.slide-claim{width:100%}.claimed-actions-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.claim-action-btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:96px;border:none;border-radius:12px;padding:10px 8px;color:#fff;font-weight:600;cursor:pointer;text-align:center}.claim-action-btn svg{font-size:20px}.claim-action-btn span{font-size:12px;line-height:1.25}.claim-action-btn.cancel{background:#dc2626}.claim-action-btn.scan{background:#1d4ed8}.claim-action-btn.pin{background:#7c3aed}.claim-action-btn.shop{background:#0f766e}.claim-action-btn:disabled{opacity:.7;cursor:default}.claimed-pin-entry{margin-top:10px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.claimed-pin-input{width:100%;border:1px solid #cbd5e1;border-radius:12px;padding:12px 14px;font-size:18px;font-weight:700;letter-spacing:.08em;text-align:center;color:#0f172a;background:#fff}.claimed-pin-input:focus{outline:2px solid #7c3aed;outline-offset:1px;border-color:#7c3aed}.claimed-pin-submit{border:none;border-radius:12px;padding:0 14px;background:#7c3aed;color:#fff;font-size:13px;font-weight:700;cursor:pointer}.claimed-pin-submit:disabled{opacity:.6;cursor:default}.claimed-qr-entry{margin-top:10px;border:1px solid #e2e8f0;border-radius:12px;padding:10px;background:#f8fafc}.claimed-qr-camera-wrap{border-radius:10px;overflow:hidden;background:#0f172a;margin-bottom:8px}.claimed-qr-video{width:100%;max-height:220px;display:block;object-fit:cover}.claimed-qr-hint{margin:0;font-size:12px;color:#64748b;text-align:center;padding:6px 8px 8px}.claimed-qr-error{margin:0 0 8px;font-size:12px;color:#b91c1c;text-align:center}.claimed-qr-status{margin:0 0 8px;border-radius:10px;padding:8px 10px;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:6px}.claimed-qr-status.is-scanning,.claimed-qr-status.is-verifying{background:#dbeafe;color:#1d4ed8}.claimed-qr-status.is-success{background:#dcfce7;color:#166534}.claimed-qr-status.is-error{background:#fee2e2;color:#b91c1c}.claimed-qr-retry{margin-top:8px;width:100%;border:1px solid #2563eb;border-radius:10px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:700;padding:8px 10px;cursor:pointer}.claimed-qr-retry:disabled{opacity:.6;cursor:default}.claimed-qr-close{margin-top:8px;width:100%;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#334155;font-size:12px;font-weight:600;padding:8px 10px;cursor:pointer}.offer-modal-claim-footer{position:sticky;bottom:0;z-index:26;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#ffffffd6,#fffffffa 30%,#fff);border-top:1px solid #eef2f7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.claim-register-btn{width:100%;height:52px;border:none;border-radius:14px;background:linear-gradient(135deg,#15254a,#223c78);color:#fff;font-size:15px;font-weight:700;letter-spacing:.01em;cursor:pointer}.slide-claim-track{position:relative;width:100%;height:52px;border-radius:14px;border:1px solid var(--border-color);background:#f1f3f7;display:flex;align-items:center;overflow:hidden}.slide-claim-progress{position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,#6d28d92e,#ca00602e)}.slide-claim.success .slide-claim-track{border-color:#16a34a;background:#ecfdf3}.slide-claim.success .slide-claim-progress{background:linear-gradient(90deg,#16a34a38,#22c55e52)}.slide-claim-text{position:absolute;left:56px;right:40px;text-align:center;font-size:15px;font-weight:600;color:#475569;-webkit-user-select:none;user-select:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slide-claim.success .slide-claim-text{color:#15803d}.slide-claim-hint,.slide-claim-success-icon{position:absolute;right:14px;font-size:20px;color:#64748b}.slide-claim-success-icon{color:#16a34a}.slide-claim-thumb{position:absolute;left:2px;top:2px;width:48px;height:48px;border-radius:12px;border:none;background:#15254a;color:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 8px 18px #0f172a42;touch-action:none;cursor:grab;z-index:3}.slide-claim-thumb:disabled{cursor:default}.slide-claim-thumb svg{font-size:20px}.slide-claim.dragging .slide-claim-thumb{cursor:grabbing}.slide-claim.success .slide-claim-thumb{background:#16a34a;box-shadow:0 8px 18px #16a34a4d}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-claim-btn{width:100%;padding:16px;background:linear-gradient(135deg,var(--exooo-orange) 0%,#ff9a5c 100%);color:#fff;border:none;border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;box-shadow:0 4px 12px #f07c334d;font-family:Inter,sans-serif}.modal-claim-btn svg{font-size:20px}.modal-claim-btn:active{transform:scale(.98);box-shadow:0 2px 8px #f07c3333}.active-offers{margin-bottom:24px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.offers-carousel-container{margin:0 -16px;overflow:hidden}.offers-carousel{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 16px 8px;-webkit-overflow-scrolling:touch}.offers-carousel::-webkit-scrollbar{display:none}.offer-card-wrapper{flex-shrink:0;width:calc(100% - 64px);scroll-snap-align:center}.offer-card{background:linear-gradient(135deg,var(--exooo-light-orange) 0%,var(--exooo-light-pink) 100%);border-radius:var(--radius-lg);padding:16px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:all .2s;position:relative;overflow:hidden;min-height:120px}.offer-card:before,.offer-card:after{content:"";position:absolute;width:24px;height:24px;background:#fff;border-radius:50%;top:50%;transform:translateY(-50%)}.offer-card:before{left:-12px}.offer-card:after{right:-12px}.offer-card:active{transform:scale(.98)}.offer-card-content{flex:1;min-width:0;display:flex;padding:0 10px;flex-direction:column;gap:6px}.offer-card-title{font-size:15px;font-weight:600;color:var(--text-primary);margin:0;line-height:1.3;display:flex;align-items:center;gap:6px;overflow:hidden;font-family:Inter,sans-serif}.title-icon{flex-shrink:0;font-size:18px;color:var(--exooo-orange)}.title-text{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.offer-description{font-size:13px;color:var(--text-secondary);margin:0;line-height:1.4;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;font-family:Inter,sans-serif}.offer-card-expiry{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary);margin-top:auto;font-family:Inter,sans-serif}.offer-card-expiry svg{font-size:14px;flex-shrink:0}.offer-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:flex-end;z-index:1000;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.offer-modal{width:100%;max-width:480px;margin:0 auto;background:#fff;border-radius:24px 24px 0 0;max-height:85vh;overflow-y:auto;animation:slideUp .3s ease}.offer-modal-topbar{position:sticky;top:0;z-index:25;display:flex;align-items:center;justify-content:space-between;height:72px;padding:16px;margin-bottom:-72px;background:transparent;transition:all .3s ease}.offer-modal-topbar.scrolled{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm)}.offer-modal-topbar.no-banner{margin-bottom:0;background:#fff;border-bottom:1px solid #eef2f7}.offer-modal-topbar-right{display:flex;align-items:center;gap:8px}.modal-header-action-btn{width:40px;height:40px;border:none;background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:24px;color:var(--text-primary);box-shadow:0 2px 8px #0000001a}.modal-header-action-btn:active{transform:scale(.95);background:#fffffff2}.modal-header-action-btn.active{color:var(--exooo-pink)}.modal-header-action-btn:disabled{opacity:.6;cursor:not-allowed}.offer-modal-topbar.scrolled .modal-header-action-btn{background:#ffffffeb}.modal-header-action-btn svg{font-size:20px}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{position:relative;height:300px;overflow:hidden}.modal-banner{width:100%;height:100%;object-fit:cover}@media(min-width:768px){.offer-modal{border-radius:24px;margin:auto;max-height:90vh}}.business-info[data-v-777b4238]{margin-bottom:24px}.section-title[data-v-777b4238]{font-size:18px;font-weight:700;color:var(--text-primary);margin:0 0 16px;display:flex;align-items:center;gap:8px}.section-title svg[data-v-777b4238]{font-size:22px;color:var(--exooo-orange)}.description-container[data-v-777b4238]{margin-bottom:24px}.business-description[data-v-777b4238]{font-size:15px;line-height:1.6;color:var(--text-primary);margin:0 0 8px;max-height:calc(1.6em * 3);overflow:hidden}.business-description.expanded[data-v-777b4238]{max-height:none}.description-paragraph[data-v-777b4238]{margin:0 0 10px}.description-paragraph[data-v-777b4238]:last-child{margin-bottom:0}.read-more-btn[data-v-777b4238]{border:none;background:transparent;color:var(--exooo-orange);font-size:14px;font-weight:600;cursor:pointer;padding:0;transition:all .2s}.read-more-btn[data-v-777b4238]:active{transform:scale(.98)}.info-section[data-v-777b4238]{display:flex;flex-direction:column;gap:16px}.info-item[data-v-777b4238]{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--bg-gray);border-radius:var(--radius-md);text-decoration:none;transition:all .2s}.info-item.clickable[data-v-777b4238]{cursor:pointer}.info-item.clickable[data-v-777b4238]:active{transform:scale(.98);background:#f0f1f3}.info-item.full-width[data-v-777b4238]{flex-direction:row;align-items:flex-start}.info-icon[data-v-777b4238]{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;color:var(--exooo-orange);font-size:20px}.info-content[data-v-777b4238]{flex:1;min-width:0}.info-label[data-v-777b4238]{font-size:13px;color:var(--text-secondary);margin-bottom:4px;font-weight:500}.info-value[data-v-777b4238]{font-size:15px;color:var(--text-primary);font-weight:600;word-break:break-word}.info-arrow[data-v-777b4238]{flex-shrink:0;color:var(--text-secondary);font-size:20px}.hours-toggle[data-v-777b4238]{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px 0}.current-status[data-v-777b4238]{font-size:15px;font-weight:600;color:var(--text-secondary)}.current-status.open[data-v-777b4238]{color:#10b981}.hours-list[data-v-777b4238]{margin-top:12px;display:flex;flex-direction:column;gap:8px}.hours-item[data-v-777b4238]{display:flex;justify-content:space-between;padding:8px 12px;background:#fff;border-radius:var(--radius-sm);font-size:14px}.hours-item.today[data-v-777b4238]{background:var(--exooo-light-orange);font-weight:600}.day-name[data-v-777b4238]{color:var(--text-secondary);text-transform:capitalize}.hours-item.today .day-name[data-v-777b4238]{color:var(--exooo-orange)}.day-hours[data-v-777b4238]{color:var(--text-primary);font-weight:600}.amenities-grid[data-v-777b4238]{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.amenity-tag[data-v-777b4238]{display:flex;align-items:center;gap:6px;padding:10px 12px;background:#fff;border-radius:var(--radius-sm);font-size:13px;color:var(--text-primary);font-weight:500}.amenity-tag svg[data-v-777b4238]{font-size:18px;color:var(--exooo-orange);flex-shrink:0}.photo-gallery[data-v-937bd414]{margin-bottom:24px}.section-title[data-v-937bd414]{font-size:18px;font-weight:700;color:var(--text-primary);margin:0 0 16px;display:flex;align-items:center;gap:8px}.section-title svg[data-v-937bd414]{font-size:22px;color:var(--exooo-orange)}.no-photos[data-v-937bd414]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;color:var(--text-secondary);text-align:center;background:var(--bg-gray);border-radius:var(--radius-lg);min-height:200px}.no-photos svg[data-v-937bd414]{font-size:64px;color:#d1d5db;margin-bottom:16px;opacity:.5}.no-photos p[data-v-937bd414]{font-size:15px;margin:0;font-weight:500}.photos-grid[data-v-937bd414]{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:minmax(120px,auto);gap:8px;width:100%}.photo-item[data-v-937bd414]{position:relative;overflow:hidden;border-radius:12px;cursor:pointer;transition:all .2s;background:#f0f0f0;width:100%;height:100%}.photo-item[data-v-937bd414]:active{transform:scale(.98)}.photo-item img[data-v-937bd414]{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.photo-item:hover img[data-v-937bd414]{transform:scale(1.05)}.photo-1[data-v-937bd414]{grid-column:1 / 3;grid-row:1;height:200px}.photo-2[data-v-937bd414]{grid-column:1;grid-row:2;height:140px}.photo-3[data-v-937bd414]{grid-column:2;grid-row:2;height:140px}.photo-4[data-v-937bd414]{grid-column:1;grid-row:3;height:140px}.photo-5[data-v-937bd414]{grid-column:2;grid-row:3;height:140px}.more-photos-overlay[data-v-937bd414]{position:absolute;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;color:#fff;font-size:32px;font-weight:700;z-index:1}.lightbox-overlay[data-v-937bd414]{position:fixed;inset:0;background:#000000f2;z-index:2000;animation:fadeIn-937bd414 .3s ease}@keyframes fadeIn-937bd414{0%{opacity:0}to{opacity:1}}.lightbox-container[data-v-937bd414]{width:100%;height:100%;display:flex;flex-direction:column;position:relative}.lightbox-close[data-v-937bd414]{position:absolute;top:16px;right:16px;width:48px;height:48px;border:none;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:28px;color:#fff;z-index:10;transition:all .2s}.lightbox-close[data-v-937bd414]:active{transform:scale(.95);background:#fff3}.lightbox-counter[data-v-937bd414]{position:absolute;top:24px;left:50%;transform:translate(-50%);background:#000000b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:600;z-index:10}.lightbox-content[data-v-937bd414]{flex:1;display:flex;align-items:center;overflow:hidden;padding:80px 0 120px;touch-action:pan-y;position:relative}.image-slider[data-v-937bd414]{display:flex;transition:transform .3s ease;will-change:transform;height:100%}.slider-image[data-v-937bd414]{flex-shrink:0;width:100vw;height:100%;object-fit:contain;padding:0 20px;box-sizing:border-box}.lightbox-nav[data-v-937bd414]{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:none;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:32px;color:#fff;transition:all .2s;z-index:10}.lightbox-nav[data-v-937bd414]:active{transform:translateY(-50%) scale(.95);background:#fff3}.lightbox-nav.prev[data-v-937bd414]{left:16px}.lightbox-nav.next[data-v-937bd414]{right:16px}.lightbox-thumbnails[data-v-937bd414]{position:absolute;bottom:0;left:0;right:0;display:flex;gap:8px;padding:16px;overflow-x:auto;scrollbar-width:none;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);-webkit-overflow-scrolling:touch}.lightbox-thumbnails[data-v-937bd414]::-webkit-scrollbar{display:none}.thumbnail-item[data-v-937bd414]{flex-shrink:0;width:80px;height:80px;border-radius:8px;overflow:hidden;cursor:pointer;border:3px solid transparent;transition:all .2s;opacity:.6}.thumbnail-item[data-v-937bd414]:hover{opacity:.8}.thumbnail-item.active[data-v-937bd414]{border-color:#f07c33;opacity:1}.thumbnail-item img[data-v-937bd414]{width:100%;height:100%;object-fit:cover}@media(max-width:768px){.photo-1[data-v-937bd414]{height:180px}.photo-2[data-v-937bd414],.photo-3[data-v-937bd414],.photo-4[data-v-937bd414],.photo-5[data-v-937bd414]{height:120px}.lightbox-nav[data-v-937bd414]{width:40px;height:40px;font-size:24px}.thumbnail-item[data-v-937bd414]{width:60px;height:60px}}.reviews-section[data-v-f4f73810]{margin-bottom:24px}.submit-error-message[data-v-f4f73810]{margin:0 0 10px;color:var(--danger-color, #dc2626);font-size:13px}.section-title[data-v-f4f73810]{font-size:18px;font-weight:700;color:var(--text-primary);margin:0 0 16px;display:flex;align-items:center;gap:8px}.section-title svg[data-v-f4f73810]{font-size:22px;color:var(--exooo-orange)}.no-rating-icon[data-v-f4f73810]{font-size:58px;color:#d1d5db;margin-bottom:4px}.no-rating-text[data-v-f4f73810]{font-size:20px;font-weight:700;color:var(--text-secondary);margin-bottom:8px}.rating-overview-card[data-v-f4f73810]{background:linear-gradient(135deg,var(--exooo-light-orange) 0%,var(--exooo-light-pink) 100%);border-radius:var(--radius-lg);padding:20px;margin-bottom:20px}.overall-rating[data-v-f4f73810]{text-align:center;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid rgba(0,0,0,.1)}.rating-number[data-v-f4f73810]{font-size:48px;font-weight:700;color:var(--exooo-orange);line-height:1;margin-bottom:8px}.rating-label[data-v-f4f73810]{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.rating-count[data-v-f4f73810]{font-size:13px;color:var(--text-secondary)}.rating-breakdown[data-v-f4f73810]{display:flex;flex-direction:column;gap:12px}.rating-item[data-v-f4f73810]{display:flex;align-items:center;gap:12px}.rating-item-label[data-v-f4f73810]{font-size:14px;font-weight:600;color:var(--text-primary);min-width:60px}.rating-bar-container[data-v-f4f73810]{flex:1;height:8px;background:#ffffff80;border-radius:4px;overflow:hidden}.rating-bar[data-v-f4f73810]{height:100%;background:linear-gradient(90deg,var(--exooo-orange) 0%,var(--exooo-pink) 100%);border-radius:4px;transition:width .3s ease}.rating-item-value[data-v-f4f73810]{font-size:14px;font-weight:700;color:var(--exooo-orange);min-width:32px;text-align:right}.featured-reviews[data-v-f4f73810]{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.review-card[data-v-f4f73810]{background:var(--bg-gray);border-radius:var(--radius-md);padding:16px}.review-header[data-v-f4f73810]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.review-avatar[data-v-f4f73810]{width:48px;height:48px;border-radius:50%;object-fit:cover}.review-user-info[data-v-f4f73810]{flex:1;min-width:0}.review-user-name[data-v-f4f73810]{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:2px}.review-date[data-v-f4f73810]{font-size:13px;color:var(--text-secondary)}.review-rating[data-v-f4f73810]{display:flex;align-items:center;gap:4px;padding:6px 12px;background:var(--exooo-light-orange);border-radius:var(--radius-sm);font-size:14px;font-weight:700;color:var(--exooo-orange)}.review-rating svg[data-v-f4f73810]{font-size:16px}.review-comment[data-v-f4f73810]{font-size:14px;line-height:1.6;color:var(--text-primary);margin:0}.all-reviews-btn[data-v-f4f73810]{width:100%;padding:14px;background:#fff;border:2px solid var(--exooo-orange);border-radius:var(--radius-md);color:var(--exooo-orange);font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.all-reviews-btn svg[data-v-f4f73810]{font-size:20px}.all-reviews-btn[data-v-f4f73810]:active{transform:scale(.98);background:var(--exooo-light-orange)}.modal-overlay[data-v-f4f73810]{position:fixed;inset:0;background:#000000b3;display:flex;align-items:flex-end;z-index:1000;animation:fadeIn-f4f73810 .3s ease}@keyframes fadeIn-f4f73810{0%{opacity:0}to{opacity:1}}.reviews-modal[data-v-f4f73810],.write-review-modal[data-v-f4f73810]{width:100%;max-width:480px;margin:0 auto;background:#fff;border-radius:24px 24px 0 0;max-height:85vh;display:flex;flex-direction:column;animation:slideUp-f4f73810 .3s ease}@keyframes slideUp-f4f73810{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header[data-v-f4f73810]{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid var(--border-color);flex-shrink:0}.modal-title[data-v-f4f73810]{font-size:20px;font-weight:700;color:var(--text-primary);margin:0}.modal-close-btn[data-v-f4f73810]{width:40px;height:40px;border:none;background:var(--bg-gray);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:24px;color:var(--text-primary);transition:all .2s}.modal-close-btn[data-v-f4f73810]:active{transform:scale(.95)}.modal-content[data-v-f4f73810]{flex:1;overflow-y:auto;padding:20px}.modal-content .review-card[data-v-f4f73810]{margin-bottom:12px}.modal-content .review-card[data-v-f4f73810]:last-child{margin-bottom:0}.modal-footer[data-v-f4f73810]{padding:16px;border-top:1px solid var(--border-color);background:#fff;flex-shrink:0}.write-review-btn[data-v-f4f73810]{width:100%;padding:16px;background:linear-gradient(135deg,var(--exooo-orange) 0%,#FF9A5C 100%);color:#fff;border:none;border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;box-shadow:0 4px 12px #f07c334d}.write-review-btn svg[data-v-f4f73810]{font-size:20px}.write-review-btn[data-v-f4f73810]:active{transform:scale(.98);box-shadow:0 2px 8px #f07c3333}.review-form[data-v-f4f73810]{display:flex;flex-direction:column;gap:20px}.form-group[data-v-f4f73810]{display:flex;flex-direction:column;gap:8px}.form-label[data-v-f4f73810]{font-size:14px;font-weight:600;color:var(--text-primary)}.star-rating[data-v-f4f73810]{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.star-btn[data-v-f4f73810]{border:none;background:transparent;color:#d1d5db;font-size:28px;cursor:pointer;padding:4px;transition:all .2s}.star-btn.small[data-v-f4f73810]{font-size:24px}.star-btn.active[data-v-f4f73810]{color:var(--exooo-orange)}.star-btn[data-v-f4f73810]:active{transform:scale(.9)}.rating-value[data-v-f4f73810]{font-size:14px;font-weight:700;color:var(--exooo-orange);margin-left:8px}.form-textarea[data-v-f4f73810]{width:100%;padding:12px;border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:15px;font-family:inherit;color:var(--text-primary);resize:vertical;transition:all .2s}.form-textarea[data-v-f4f73810]:focus{outline:none;border-color:var(--exooo-orange)}.submit-review-btn[data-v-f4f73810]{width:100%;padding:16px;background:linear-gradient(135deg,var(--exooo-orange) 0%,#FF9A5C 100%);color:#fff;border:none;border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;box-shadow:0 4px 12px #f07c334d;margin-top:8px}.submit-review-btn svg[data-v-f4f73810]{font-size:20px}.submit-review-btn[data-v-f4f73810]:active{transform:scale(.98);box-shadow:0 2px 8px #f07c3333}@media(min-width:768px){.reviews-modal[data-v-f4f73810],.write-review-modal[data-v-f4f73810]{border-radius:24px;margin:auto;max-height:90vh}}.map-location[data-v-5f942240]{margin-bottom:24px}.section-title[data-v-5f942240]{font-size:18px;font-weight:700;color:var(--text-primary);margin:0 0 16px;display:flex;align-items:center;gap:8px}.section-title svg[data-v-5f942240]{font-size:22px;color:var(--exooo-orange)}.location-card[data-v-5f942240]{display:flex;align-items:center;gap:12px;padding:12px;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);text-decoration:none;cursor:pointer;transition:all .2s;box-shadow:var(--shadow-sm)}.location-card[data-v-5f942240]:active{transform:scale(.98)}.map-preview[data-v-5f942240]{position:relative;width:64px;height:64px;border-radius:var(--radius-md);overflow:hidden;flex-shrink:0}.map-bg[data-v-5f942240]{width:100%;height:100%;object-fit:cover;opacity:.9}.map-pin[data-v-5f942240]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;background:var(--exooo-orange);border-radius:50% 50% 50% 0;transform-origin:center;transform:translate(-50%,-60%) rotate(-45deg);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000004d}.map-pin svg[data-v-5f942240]{font-size:20px;color:#fff;transform:rotate(45deg)}.location-info[data-v-5f942240]{flex:1;min-width:0}.location-address[data-v-5f942240]{font-size:15px;font-weight:600;color:var(--text-primary);margin:0 0 4px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.location-subtitle[data-v-5f942240]{font-size:13px;color:var(--text-secondary);margin:0;line-height:1.4}.location-arrow[data-v-5f942240]{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--exooo-light-orange);display:flex;align-items:center;justify-content:center;color:var(--exooo-orange);font-size:20px;transition:all .2s}.location-card:hover .location-arrow[data-v-5f942240]{background:var(--exooo-orange);color:#fff}.business-profile{height:100vh;height:100dvh;background:var(--bg-gray);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative;overflow:hidden}.profile-header{position:fixed;top:0;left:0;right:0;height:72px;display:flex;justify-content:space-between;align-items:center;padding:16px;z-index:100;transition:all .3s ease;background:transparent}.profile-header.scrolled{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm)}.header-icon-btn{width:40px;height:40px;border:none;background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:24px;color:var(--text-primary);box-shadow:0 2px 8px #0000001a}.header-icon-btn:active{transform:scale(.95);background:#fffffff2}.header-icon-btn.active{color:var(--exooo-pink)}.header-actions{display:flex;gap:8px}.profile-scroll-content{height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;position:relative;padding-bottom:calc(96px + env(safe-area-inset-bottom))}.banner-container{width:100%;height:240px;overflow:hidden;position:relative;will-change:transform}.banner-image{width:100%;height:100%;object-fit:cover}.business-logo-wrapper{position:absolute;top:160px;left:0;right:0;display:flex;justify-content:left;z-index:20;margin:0 0 0 20px;pointer-events:none}.business-logo{width:120px;height:120px;border-radius:50%;overflow:hidden;border:4px solid white;box-shadow:0 4px 12px #00000026;background:#fff;pointer-events:all}.business-logo img{width:100%;height:100%;object-fit:cover}.content-card{position:relative;background:#fff;border-radius:24px 24px 0 0;margin-top:-24px;padding:16px 16px 24px;z-index:10;min-height:calc(100vh - 216px)}.top-info-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px}.discount-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--exooo-light-purple);color:var(--exooo-purple);border-radius:var(--radius-md);font-size:13px;font-weight:600}.discount-badge svg{font-size:16px}.working-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--exooo-light-green);color:var(--exooo-green);border-radius:var(--radius-md);font-size:13px;font-weight:600}.working-badge svg{font-size:16px}.rating-text{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600;color:var(--text-secondary)}.rating-text svg{font-size:18px;color:var(--exooo-orange)}.business-name{font-size:28px;font-weight:700;color:var(--text-primary);margin:0 0 12px;padding-top:20px;line-height:1.2}.meta-info{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.meta-item{display:flex;align-items:center;gap:4px;font-size:14px;color:var(--text-secondary)}.meta-item svg{font-size:18px;color:var(--exooo-orange)}.meta-divider{color:var(--border-color);font-size:14px}.active-offers,.business-info,.reviews-section,.map-location{margin-bottom:24px}@media(min-width:768px){.business-profile{width:100%;max-width:480px;margin:0 auto;box-shadow:0 0 20px #0000001a;overflow:hidden}.profile-header{width:100%;max-width:480px;left:50%;transform:translate(-50%)}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:16px;background:#fff}.spinner{width:48px;height:48px;border:4px solid var(--bg-gray);border-top-color:var(--exooo-orange);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-container p{font-size:16px;color:var(--text-secondary);font-weight:500}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:16px;padding:20px;text-align:center;background:#fff}.error-container svg{font-size:64px;color:#ef4444}.error-container p{font-size:16px;color:var(--text-primary);max-width:300px}.error-btn{padding:12px 24px;background:var(--exooo-orange);color:#fff;border:none;border-radius:var(--radius-md);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.error-btn:active{transform:scale(.98)}.avatar-sm{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid white}.avatar-initial{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:var(--exooo-light-orange);color:var(--exooo-orange)}.tab-section{scroll-margin-top:120px}.tabs-sticky-anchor{position:sticky;top:72px;z-index:70;margin:0 -16px 24px;background:#fff;border-bottom:1px solid var(--border-color)}.tabs-sticky-anchor.stuck{box-shadow:0 2px 8px #0000000d}.photos-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px}.photo-item{aspect-ratio:1;border-radius:var(--radius-md);overflow:hidden;cursor:pointer;transition:transform .2s}.photo-item:active{transform:scale(.98)}.photo-item img{width:100%;height:100%;object-fit:cover}.section-title{font-size:18px;font-weight:700;color:var(--text-primary);margin:0 0 16px;display:flex;align-items:center;gap:8px}.section-title svg{font-size:22px;color:var(--exooo-orange)}.working-badge{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;transition:all .3s}.working-badge.open{background:#d1fae5;color:#065f46;border:1px solid #10b981}.working-badge.closed{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.working-badge svg{font-size:16px;flex-shrink:0}.working-badge .day-name{font-weight:700;text-transform:uppercase}.working-badge .hours-text{font-weight:500}.meta-item svg[icon="mdi:map-marker-distance"]{color:var(--exooo-purple)}.discover-screen[data-v-f0295248]{height:100vh;height:100dvh;min-height:100dvh;display:flex;flex-direction:column;background:var(--bg-gray);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.discover-header[data-v-f0295248]{position:sticky;top:0;z-index:120;height:72px;display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fffffff5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:none}.discover-screen.saved-mode .discover-header[data-v-f0295248]{box-shadow:0 1px 0 var(--border-color)}.header-title[data-v-f0295248]{flex:1;font-size:18px;font-weight:700;color:var(--text-primary);line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.header-main[data-v-f0295248]{flex:1;min-width:0;transition:opacity .2s ease,transform .2s ease,width .2s ease}.header-main.hidden[data-v-f0295248]{opacity:0;width:0;flex:0;min-width:0;overflow:hidden;transform:translate(-8px);pointer-events:none}.header-search-wrap[data-v-f0295248]{flex:0;max-width:0;opacity:0;overflow:hidden;margin-right:0;transition:max-width .28s ease,opacity .2s ease,margin-right .2s ease}.header-search-wrap.expanded[data-v-f0295248]{flex:1;max-width:1000px;opacity:1;margin-right:0}.discover-search-field[data-v-f0295248]{width:100%;height:42px;border-radius:12px;border:1px solid var(--border-color);background:#fff;display:flex;align-items:center;gap:8px;padding:0 10px;color:var(--text-secondary);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.discover-search-field.active[data-v-f0295248]{border-color:var(--exooo-purple);background:var(--exooo-light-purple);box-shadow:0 0 0 1px #9333ea1f}.discover-search-input[data-v-f0295248]{flex:1;border:none;outline:none;background:transparent;color:var(--text-primary);font-size:16px}.discover-search-input[data-v-f0295248]::placeholder{color:var(--text-secondary)}.search-clear-btn[data-v-f0295248]{width:24px;height:24px;border:none;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#0000000f;color:var(--text-secondary)}.header-actions[data-v-f0295248]{display:flex;gap:8px;transition:opacity .2s ease,transform .2s ease,width .2s ease}.discover-header.searching .header-actions[data-v-f0295248]{opacity:0;width:0;overflow:hidden;transform:translate(8px);pointer-events:none}.header-icon-btn[data-v-f0295248]{width:40px;height:40px;position:relative;border:none;border-radius:50%;background:#ffffffe6;display:flex;align-items:center;justify-content:center;color:var(--text-primary);box-shadow:0 2px 8px #00000014;cursor:pointer}.header-icon-btn[data-v-f0295248]:disabled{cursor:default;opacity:.85}.header-icon-btn.active[data-v-f0295248]{color:var(--exooo-pink)}.filters-count-badge[data-v-f0295248]{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;border-radius:10px;padding:2px 6px;background:var(--exooo-pink);color:#fff;font-size:10px;font-weight:600;line-height:10px;text-align:center;border:2px solid var(--exooo-orange)}.subcategories-row[data-v-f0295248]{position:sticky;top:72px;z-index:110;display:flex;gap:8px;overflow-x:auto;padding:12px 16px;background:#fffffffa;box-shadow:0 1px 0 var(--border-color);scrollbar-width:none}.subcategories-row[data-v-f0295248]::-webkit-scrollbar{display:none}.subcategory-chip[data-v-f0295248]{flex:0 0 auto;min-width:110px;max-width:140px;min-height:48px;border-radius:14px;border:1px solid var(--border-color);background:var(--white);color:var(--text-primary);font-size:13px;font-weight:600;line-height:1.2;padding:7px 10px;text-align:center;cursor:pointer;display:flex;align-items:center;justify-content:center}.category-switch-chip[data-v-f0295248]{width:48px;min-width:48px;max-width:48px;min-height:48px;padding:0;border-radius:14px}.choose-category-hint[data-v-f0295248]{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:14px;font-weight:600;min-height:48px;padding:0 2px}.subcategory-chip span[data-v-f0295248]{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.subcategory-chip.active[data-v-f0295248]{border-color:var(--exooo-purple);color:var(--exooo-purple);background:var(--exooo-light-purple)}.discover-content[data-v-f0295248]{flex:1;overflow-y:auto;padding:12px 16px calc(92px + env(safe-area-inset-bottom));overscroll-behavior:none;overscroll-behavior-y:none;-webkit-overflow-scrolling:touch}.discover-feed-switch[data-v-f0295248]{position:fixed;left:50%;bottom:calc(14px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:140;display:inline-flex;align-items:center;gap:6px;padding:6px;border-radius:999px;border:1px solid var(--border-color);background:var(--white);box-shadow:var(--shadow-sm)}.discover-feed-switch-btn[data-v-f0295248]{width:50px;height:40px;border:none;border-radius:12px;padding:0;background:transparent;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center}.discover-feed-switch-btn.active[data-v-f0295248]{background:var(--exooo-light-purple);color:var(--exooo-purple)}.discover-feed-switch-btn[data-v-f0295248]:disabled{cursor:default}.spinning[data-v-f0295248]{animation:discover-spin-f0295248 .8s linear infinite}@keyframes discover-spin-f0295248{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.offer-validity-badge[data-v-f0295248]{max-width:calc(100% - 24px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.business-card-vertical[data-v-f0295248]{min-width:100%;max-width:100%;margin-bottom:12px}.business-card-vertical .business-image-horizontal[data-v-f0295248]{height:150px}.discover-screen .business-image-horizontal[data-v-f0295248]{position:relative;overflow:hidden}.discover-screen .business-image-horizontal img[data-v-f0295248]{width:100%;height:100%;object-fit:cover;display:block}.cover-fallback[data-v-f0295248]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#eceff3}.discover-screen .status-badge[data-v-f0295248]{left:12px;right:auto}.discover-screen .discount-badge-overlay[data-v-f0295248]{top:auto;bottom:12px;right:12px}.favorite-image-btn[data-v-f0295248]{position:absolute;top:12px;right:12px;width:36px;height:36px;border:none;border-radius:50%;background:#ffffffe0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;color:var(--text-primary);box-shadow:0 2px 8px #0000001f}.favorite-image-btn.active[data-v-f0295248]{color:var(--exooo-pink)}.login-required-modal[data-v-f0295248]{display:flex;flex-direction:column;gap:10px}.login-required-modal p[data-v-f0295248]{color:var(--text-secondary);font-size:14px}.login-required-actions[data-v-f0295248]{margin-top:6px;display:flex;justify-content:flex-end;gap:8px}.super-badges-row[data-v-f0295248]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.super-badge[data-v-f0295248]{display:inline-flex;align-items:center;background:#0e2a52;color:#f7f3e8;border:1px solid rgba(230,196,117,.55);border-radius:6px;font-size:11px;font-weight:700;letter-spacing:.04em;line-height:1;padding:4px 8px}.founding-partner-card[data-v-f0295248]{background:#102746;box-shadow:0 8px 24px #0e2a5238,0 2px 8px #e6c47533;border:1px solid rgba(230,196,117,.35)}.founding-partner-card .business-info-horizontal[data-v-f0295248]{background:#102746}.founding-partner-card .business-header-horizontal h3[data-v-f0295248]{color:#f7f3e8}.founding-partner-card .business-category[data-v-f0295248],.founding-partner-card .business-meta-horizontal[data-v-f0295248]{color:#f7f3e8db}.founding-partner-card .business-logo-small[data-v-f0295248]{background:#8f97a3}.founding-partner-card .business-meta-horizontal svg[data-v-f0295248]{color:#f7f3e8db}.business-logo-image[data-v-f0295248]{width:20px;height:20px;border-radius:50%;object-fit:cover}.business-copy[data-v-f0295248]{flex:1;min-width:0}.empty-state[data-v-f0295248]{margin-top:48px;text-align:center;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;gap:8px}.empty-state h3[data-v-f0295248]{color:var(--text-primary);font-size:18px}.empty-state p[data-v-f0295248]{font-size:14px}.loading-more-wrap[data-v-f0295248]{margin-top:4px}.skeleton-lines[data-v-f0295248]{flex:1}.skeleton-card[data-v-f0295248]{pointer-events:none;background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.skeleton-block[data-v-f0295248],.skeleton-line[data-v-f0295248],.skeleton-circle[data-v-f0295248]{position:relative;overflow:hidden;background:#eceff3}.skeleton-block[data-v-f0295248]:after,.skeleton-line[data-v-f0295248]:after,.skeleton-circle[data-v-f0295248]:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,#eceff300,#ffffffa6,#eceff300);animation:skeleton-shimmer-f0295248 1.35s infinite}.skeleton-title[data-v-f0295248]{width:86%;height:14px;border-radius:7px;margin-bottom:8px}.skeleton-subtitle[data-v-f0295248]{width:62%;height:12px;border-radius:6px}.skeleton-meta[data-v-f0295248]{width:72%;height:11px;border-radius:6px;margin-top:10px}.skeleton-circle[data-v-f0295248]{width:36px;height:36px;border-radius:999px}.categories-grid[data-v-f0295248]{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:16px 12px}.category-card[data-v-f0295248]{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer}.category-icon[data-v-f0295248]{width:64px;height:64px;border-radius:18px;background:var(--white);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.category-name[data-v-f0295248]{font-size:12px;font-weight:600;color:var(--text-primary);text-align:center;line-height:1.2}.filters-sheet-head[data-v-f0295248]{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.filters-sheet-head h3[data-v-f0295248]{font-size:28px;font-weight:700;color:var(--text-primary)}.filters-reset-btn[data-v-f0295248]{border:none;background:none;color:var(--text-secondary);font-size:16px;font-weight:600}.filters-section[data-v-f0295248]{margin-bottom:22px}.filters-section h4[data-v-f0295248]{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:12px}.filters-chip-row[data-v-f0295248]{display:flex;flex-wrap:wrap;gap:10px}.filters-chip[data-v-f0295248]{min-height:44px;padding:0 18px;border-radius:999px;border:1px solid transparent;background:#ebedf1;color:#6f7789;font-size:15px;font-weight:700}.filters-chip.active[data-v-f0295248]{background:#172f5f;color:#fff}.filters-toggle-row[data-v-f0295248]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;font-size:16px;color:var(--text-primary)}.filters-toggle-row input[type=checkbox][data-v-f0295248]{width:46px;height:26px;accent-color:#172F5F}.filters-range[data-v-f0295248]{width:100%;accent-color:#172F5F}.filters-footer[data-v-f0295248]{position:sticky;bottom:0;margin:0 -16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#fff0,#fff 22% 100%)}.filters-apply-btn[data-v-f0295248]{width:100%;min-height:48px;border:none;border-radius:14px;background:#172f5f;color:#fff;font-size:16px;font-weight:700}.discover-content.map-mode[data-v-f0295248]{padding:0}.discover-map-wrap[data-v-f0295248]{position:relative;height:100%;min-height:360px}.discover-map-canvas[data-v-f0295248]{width:100%;height:100%}.map-loading-pill[data-v-f0295248]{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:2;display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 12px;border-radius:999px;background:#fffffff5;border:1px solid var(--border-color);color:var(--text-primary);font-size:13px;font-weight:600;box-shadow:var(--shadow-sm)}.map-empty-state[data-v-f0295248]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;min-width:220px;min-height:92px;padding:14px 16px;border-radius:14px;border:1px solid var(--border-color);background:#fffffffa;display:flex;align-items:center;justify-content:center;text-align:center;gap:8px;color:var(--text-secondary);flex-direction:column}.map-item-modal-card[data-v-f0295248]{cursor:pointer;width:100%!important;max-width:100%!important;min-width:0!important;align-self:stretch;flex:0 0 auto;box-sizing:border-box}.map-item-modal-card.business-card-horizontal[data-v-f0295248]{min-width:0!important;max-width:100%!important;margin-left:0;margin-right:0}.map-items-list[data-v-f0295248]{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;width:100%;max-width:100%;padding-right:0;padding-bottom:calc(110px + env(safe-area-inset-bottom))}.map-items-modal[data-v-f0295248]{display:flex;flex-direction:column;flex:1;min-height:0;height:auto;width:100%;max-width:100%;overflow-x:hidden}.map-items-modal-head[data-v-f0295248]{padding:0 4px 10px}.map-items-modal-head h3[data-v-f0295248]{margin:0;font-size:18px;font-weight:700;color:var(--text-primary)}.map-items-modal-head p[data-v-f0295248]{margin:4px 0 0;font-size:13px;color:var(--text-secondary)}@keyframes skeleton-shimmer-f0295248{to{transform:translate(100%)}}@media(min-width:768px){.discover-screen[data-v-f0295248]{max-width:480px;margin:0 auto;box-shadow:0 0 20px #0000001a}}.profile-screen[data-v-3c5af676]{min-height:100vh;min-height:100dvh;background:var(--bg-gray);color:var(--text-primary)}.profile-header[data-v-3c5af676]{position:fixed;top:0;left:0;right:0;height:72px;display:flex;align-items:center;justify-content:space-between;padding:16px;z-index:100;background:transparent;transition:all .3s ease}.profile-header.scrolled[data-v-3c5af676]{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm)}.profile-header h1[data-v-3c5af676]{margin:0;font-size:18px;font-weight:700;color:var(--text-primary);opacity:0;transition:opacity .2s ease}.profile-header h1.visible[data-v-3c5af676]{opacity:1}.header-icon-btn[data-v-3c5af676]{width:40px;height:40px;border:none;background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;color:var(--text-primary);box-shadow:0 2px 8px #0000001a}.header-icon-btn[data-v-3c5af676]:active{transform:scale(.95)}.profile-content[data-v-3c5af676]{padding:88px 16px calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:14px}.mission-card[data-v-3c5af676],.level-card[data-v-3c5af676]{background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:14px}.profile-user-info[data-v-3c5af676]{padding:4px 2px 0}.user-top-row[data-v-3c5af676]{display:flex;align-items:center;gap:12px}.user-avatar[data-v-3c5af676]{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid var(--exooo-pink)}.user-avatar-fallback[data-v-3c5af676]{background:var(--exooo-light-orange);color:var(--exooo-orange);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700}.user-meta[data-v-3c5af676]{flex:1;min-width:0}.user-meta h2[data-v-3c5af676]{margin:0;font-size:19px;font-weight:700;color:var(--text-primary);line-height:1.2}.user-meta p[data-v-3c5af676]{margin:4px 0 8px;color:var(--text-secondary);font-size:14px}.member-badge[data-v-3c5af676]{display:inline-flex;align-items:center;gap:6px;margin-top:4px;padding:5px 10px;border-radius:999px;background:var(--exooo-light-orange);color:var(--exooo-orange);font-size:13px;font-weight:600}.user-meta h2+.member-badge[data-v-3c5af676]{margin-top:8px}.profile-tabs[data-v-3c5af676]{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:4px;border-radius:var(--radius-lg);background:var(--white);border:1px solid var(--border-color)}.profile-tab[data-v-3c5af676]{border:none;background:transparent;color:var(--text-secondary);border-radius:var(--radius-md);padding:8px 10px;font-size:14px;font-weight:600}.profile-tab.active[data-v-3c5af676]{background:var(--bg-gray);color:var(--text-primary)}.share-btn[data-v-3c5af676]{width:36px;height:36px;border:none;border-radius:50%;background:var(--bg-gray);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center}.stats-grid[data-v-3c5af676]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.stat-card[data-v-3c5af676]{background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:14px 10px;display:flex;flex-direction:column;align-items:center;gap:4px}.stat-card strong[data-v-3c5af676]{font-size:18px;line-height:1.15}.missions-section[data-v-3c5af676]{display:flex;flex-direction:column;gap:8px}.missions-list[data-v-3c5af676]{display:flex;flex-direction:column;gap:10px}.missions-title[data-v-3c5af676]{margin:0;font-size:16px;font-weight:700;color:var(--text-primary)}.stat-card span[data-v-3c5af676]{font-size:13px;color:var(--text-secondary)}.stat-icon[data-v-3c5af676]{margin-bottom:2px}.stat-icon-green[data-v-3c5af676]{color:var(--exooo-green)}.stat-icon-orange[data-v-3c5af676]{color:var(--exooo-orange)}.stat-icon-pink[data-v-3c5af676]{color:var(--exooo-pink)}.quick-links[data-v-3c5af676]{display:flex;flex-direction:column;gap:10px}.quick-link-card[data-v-3c5af676]{width:100%;background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:14px;display:flex;align-items:center;justify-content:space-between;color:var(--text-primary)}.quick-link-left[data-v-3c5af676],.quick-link-right[data-v-3c5af676]{display:flex;align-items:center;gap:10px}.quick-link-title[data-v-3c5af676]{font-size:14px;font-weight:600;color:var(--text-primary)}.quick-link-icon-wrap[data-v-3c5af676]{width:32px;height:32px;border-radius:var(--radius-md);background:var(--bg-gray);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center}.count-pill[data-v-3c5af676]{min-width:24px;height:24px;padding:0 8px;border-radius:999px;background:var(--bg-gray);color:var(--text-secondary);font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.level-row[data-v-3c5af676]{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.level-row strong[data-v-3c5af676]{margin:0;font-size:18px;font-weight:700}.level-row span[data-v-3c5af676]{margin:0;font-size:14px;font-weight:500;color:var(--text-secondary);line-height:1.2}.mission-card[data-v-3c5af676]{padding-top:14px}.mission-top-row[data-v-3c5af676]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.mission-name[data-v-3c5af676]{margin:0;font-size:18px;font-weight:700;color:var(--text-primary)}.mission-badge[data-v-3c5af676]{padding:4px 10px;border-radius:999px;background:var(--exooo-light-purple);color:var(--exooo-purple);font-size:12px;font-weight:600;display:inline-flex;align-items:center;flex-shrink:0}.mission-title[data-v-3c5af676]{margin:0 0 8px;font-size:16px;font-weight:500;color:var(--text-primary)}.mission-progress-text[data-v-3c5af676]{margin:0 0 10px;color:var(--text-secondary);font-size:14px}.mission-progress-track[data-v-3c5af676]{width:100%;height:8px;border-radius:999px;background:var(--border-color);overflow:hidden}.mission-progress-fill[data-v-3c5af676]{width:66%;height:100%;background:var(--exooo-purple);border-radius:999px}.level-track[data-v-3c5af676]{margin-bottom:10px}.level-fill[data-v-3c5af676]{width:72%;background:var(--exooo-green)}.mission-reward[data-v-3c5af676]{margin:10px 0 0;font-size:14px;color:var(--text-secondary)}.mission-empty[data-v-3c5af676]{color:var(--text-secondary);font-size:14px}.rewards-section[data-v-3c5af676]{display:flex;flex-direction:column;gap:14px}.rewards-header-row[data-v-3c5af676]{display:flex;align-items:center;justify-content:space-between;gap:10px}.rewards-counter[data-v-3c5af676]{font-size:13px;color:var(--text-secondary);font-weight:600}.rewards-block[data-v-3c5af676]{display:flex;flex-direction:column;gap:8px}.badge-legend[data-v-3c5af676]{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:center;justify-content:center}.badge-legend-item[data-v-3c5af676]{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-secondary)}.badge-legend-item.legend-common[data-v-3c5af676]{color:var(--text-secondary)}.badge-legend-item.legend-rare[data-v-3c5af676]{color:var(--exooo-orange);opacity:.85}.badge-legend-item.legend-epic[data-v-3c5af676]{color:var(--exooo-purple);opacity:.85}.badge-legend-item.legend-legendary[data-v-3c5af676]{color:var(--exooo-pink);opacity:.85}.badge-legend-dot[data-v-3c5af676]{width:10px;height:10px;border-radius:50%;display:inline-block;border:1px solid transparent}.badge-legend-dot.badge-tier-common[data-v-3c5af676]{background:var(--text-secondary);border-color:var(--text-secondary)}.badge-legend-dot.badge-tier-rare[data-v-3c5af676]{background:var(--exooo-orange);border-color:var(--exooo-orange)}.badge-legend-dot.badge-tier-epic[data-v-3c5af676]{background:var(--exooo-purple);border-color:var(--exooo-purple)}.badge-legend-dot.badge-tier-legendary[data-v-3c5af676]{background:var(--exooo-pink);border-color:var(--exooo-pink)}.badges-grid[data-v-3c5af676]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.badge-card[data-v-3c5af676]{background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:8px 6px;display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;cursor:pointer}.badge-card.locked[data-v-3c5af676]{opacity:.45}.badge-icon-wrap[data-v-3c5af676]{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}.badge-tier-common[data-v-3c5af676]{background:var(--bg-gray);color:var(--text-secondary)}.badge-tier-rare[data-v-3c5af676]{background:var(--exooo-light-orange);color:var(--exooo-orange)}.badge-tier-epic[data-v-3c5af676]{background:var(--exooo-light-purple);color:var(--exooo-purple)}.badge-tier-legendary[data-v-3c5af676]{background:var(--exooo-light-orange);color:var(--exooo-pink)}.badge-unlocked-dot[data-v-3c5af676]{position:absolute;top:5px;right:5px;width:14px;height:14px;border-radius:50%;background:var(--exooo-green);color:var(--white);font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.badge-locked-dot[data-v-3c5af676]{position:absolute;top:5px;right:5px;width:14px;height:14px;border-radius:50%;background:var(--bg-gray);color:var(--text-secondary);font-size:10px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-color)}.badge-meta[data-v-3c5af676]{width:100%;min-width:0;text-align:center}.badge-meta strong[data-v-3c5af676]{font-size:11px;color:var(--text-primary);line-height:1.25;line-clamp:2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.points-section[data-v-3c5af676]{display:flex;flex-direction:column;gap:8px}.mission-card-compact[data-v-3c5af676]{padding:12px}.mission-row-main[data-v-3c5af676]{display:flex;align-items:center;gap:10px}.mission-main-text[data-v-3c5af676]{min-width:0;flex:1}.mission-icon-wrap[data-v-3c5af676]{width:38px;height:38px;border-radius:50%;background:var(--exooo-light-purple);color:var(--exooo-purple);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.mission-icon-wrap.completed[data-v-3c5af676]{background:var(--exooo-light-green, #e9f8ef);color:var(--exooo-green)}.mission-title-compact[data-v-3c5af676]{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.mission-progress-text.compact[data-v-3c5af676]{margin:2px 0 0;font-size:13px}.mission-progress-track.compact[data-v-3c5af676]{margin-top:8px;margin-bottom:8px;height:6px}.mission-reward.compact[data-v-3c5af676]{margin-top:2px;margin-bottom:0;color:var(--exooo-orange);font-weight:600}.mission-card-completed[data-v-3c5af676]{padding:12px}.completed-reward[data-v-3c5af676]{color:var(--exooo-orange);font-size:14px;font-weight:700;margin-left:auto;flex-shrink:0}.completed-badge-pill[data-v-3c5af676]{width:26px;height:26px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;margin-left:auto;margin-right:8px}.completed-badge-icon[data-v-3c5af676]{width:26px;height:26px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center}.completed-sentinel[data-v-3c5af676]{height:2px}.completed-loading[data-v-3c5af676]{margin:4px 0 0;color:var(--text-secondary);font-size:13px;text-align:center}[data-v-3c5af676] .badge-detail-sheet{padding:26px 18px calc(36px + env(safe-area-inset-bottom));min-height:320px}.badge-sheet-content[data-v-3c5af676]{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:16px 8px 12px}.badge-sheet-icon[data-v-3c5af676]{width:84px;height:84px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}.badge-sheet-points[data-v-3c5af676]{margin:0;font-size:14px;font-weight:700;color:var(--exooo-orange)}.badge-sheet-content h4[data-v-3c5af676]{margin:2px 0 0;font-size:18px;color:var(--text-primary)}.badge-sheet-content p[data-v-3c5af676]{margin:0;font-size:14px;color:var(--text-secondary);line-height:1.4}@media(min-width:768px){.profile-screen[data-v-3c5af676]{max-width:480px;margin:0 auto;box-shadow:0 0 20px #0000001a}.profile-header[data-v-3c5af676]{max-width:480px;left:50%;transform:translate(-50%)}}.settings-screen[data-v-51b97ac2]{min-height:100vh;min-height:100dvh;background:var(--bg-gray);color:var(--text-primary)}.settings-header[data-v-51b97ac2]{position:fixed;top:0;left:0;right:0;z-index:100;height:72px;padding:16px;display:flex;align-items:center;justify-content:space-between;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm)}.settings-header h1[data-v-51b97ac2]{margin:0;font-size:18px;font-weight:700}.header-spacer[data-v-51b97ac2]{width:40px;height:40px}.header-icon-btn[data-v-51b97ac2]{width:40px;height:40px;border:none;background:#ffffffd9;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--text-primary);box-shadow:0 2px 8px #00000014}.settings-content[data-v-51b97ac2]{padding:88px 16px calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:12px}.avatar-input[data-v-51b97ac2]{display:none}.avatar-change-btn[data-v-51b97ac2]{margin-top:8px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--white);color:var(--text-primary);font-size:13px;font-weight:600;padding:6px 10px}.avatar-change-btn[data-v-51b97ac2]:disabled{opacity:.7}.avatar-error[data-v-51b97ac2]{margin:8px 0 0;font-size:12px;color:var(--exooo-red)}.cropper-overlay[data-v-51b97ac2]{position:fixed;inset:0;z-index:200;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px}.cropper-modal[data-v-51b97ac2]{width:min(100%,360px);background:var(--white);border-radius:var(--radius-lg);padding:14px}.cropper-modal h3[data-v-51b97ac2]{margin:0;font-size:16px;font-weight:700}.cropper-modal p[data-v-51b97ac2]{margin:6px 0 12px;font-size:13px;color:var(--text-secondary)}.cropper-viewport[data-v-51b97ac2]{width:280px;height:280px;max-width:100%;margin:0 auto;position:relative;overflow:hidden;border-radius:var(--radius-md);background:#111;touch-action:none}.cropper-circle-overlay[data-v-51b97ac2]{position:absolute;inset:3.5%;border-radius:50%;border:2px solid rgba(255,255,255,.95);box-shadow:0 0 0 9999px #00000059;pointer-events:none}.cropper-image[data-v-51b97ac2]{position:absolute;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}.cropper-zoom[data-v-51b97ac2]{width:100%;margin-top:12px}.cropper-actions[data-v-51b97ac2]{margin-top:12px;display:flex;justify-content:flex-end;gap:8px}.cropper-btn[data-v-51b97ac2]{border:1px solid var(--border-color);background:var(--white);color:var(--text-primary);border-radius:var(--radius-md);padding:8px 12px;font-size:14px;font-weight:600}.cropper-btn.primary[data-v-51b97ac2]{border-color:transparent;background:var(--exooo-orange);color:var(--white)}.settings-card[data-v-51b97ac2]{background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:14px}.avatar-row[data-v-51b97ac2]{display:flex;align-items:center;gap:12px}.avatar-image[data-v-51b97ac2]{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid var(--exooo-pink)}.avatar-fallback[data-v-51b97ac2]{display:inline-flex;align-items:center;justify-content:center;background:var(--exooo-light-orange);color:var(--exooo-orange);font-size:24px;font-weight:700}.avatar-copy h3[data-v-51b97ac2]{margin:0;font-size:16px;font-weight:700}.avatar-copy p[data-v-51b97ac2]{margin:4px 0 0;font-size:13px;color:var(--text-secondary)}.action-row[data-v-51b97ac2]{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.action-left[data-v-51b97ac2]{display:flex;align-items:center;gap:10px;min-width:0}.action-icon-wrap[data-v-51b97ac2]{width:32px;height:32px;border-radius:var(--radius-md);background:var(--bg-gray);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center}.action-copy[data-v-51b97ac2]{display:flex;flex-direction:column;gap:2px}.action-copy span[data-v-51b97ac2]{font-size:13px;color:var(--text-secondary)}.action-copy.single-line[data-v-51b97ac2]{flex-direction:row}.membership-icon-wrap[data-v-51b97ac2]{background:var(--exooo-light-orange);color:var(--exooo-orange)}.plan-title[data-v-51b97ac2]{display:inline-flex;align-items:center;color:var(--exooo-orange);font-size:14px;font-weight:600}.action-chevron[data-v-51b97ac2]{color:var(--text-secondary);flex-shrink:0}.section-title[data-v-51b97ac2]{margin:0 0 12px;font-size:16px;font-weight:700}.field-label[data-v-51b97ac2]{display:block;margin:0 0 6px;font-size:13px;color:var(--text-secondary)}.field-input[data-v-51b97ac2]{width:100%;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:10px 12px;font-size:16px;color:var(--text-primary);background:var(--white);margin-bottom:10px}.field-input.field-input-error[data-v-51b97ac2]{border-color:var(--exooo-red)}.autocomplete-wrap[data-v-51b97ac2]{position:relative}.autocomplete-list[data-v-51b97ac2]{position:absolute;top:calc(100% - 8px);left:0;right:0;z-index:15;margin:0;padding:6px;list-style:none;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-sm);max-height:220px;overflow-y:auto}.autocomplete-item[data-v-51b97ac2]{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer}.autocomplete-item[data-v-51b97ac2]:hover{background:var(--bg-gray)}.autocomplete-item.muted[data-v-51b97ac2]{color:var(--text-secondary);cursor:default}.autocomplete-main[data-v-51b97ac2]{font-size:14px;font-weight:600;color:var(--text-primary)}.autocomplete-sub[data-v-51b97ac2]{font-size:12px;color:var(--text-secondary)}.field-hint[data-v-51b97ac2]{margin:-2px 0 10px;font-size:12px;color:var(--text-secondary)}.field-error[data-v-51b97ac2]{margin:-2px 0 10px;font-size:12px;color:var(--exooo-red)}.field-success[data-v-51b97ac2]{margin:-2px 0 10px;font-size:12px;color:#1f8f4a}.password-modal[data-v-51b97ac2]{padding:0 2px 2px}.password-modal h3[data-v-51b97ac2]{margin:0 0 12px;font-size:16px;font-weight:700}.password-modal-actions[data-v-51b97ac2]{margin-top:4px;display:flex;justify-content:flex-end;gap:8px}.field-select[data-v-51b97ac2]{margin-bottom:0}.save-btn[data-v-51b97ac2]{width:100%;border:none;border-radius:var(--radius-md);padding:12px 14px;background:var(--exooo-orange);color:var(--white);display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:15px;font-weight:700}.save-btn[data-v-51b97ac2]:disabled{opacity:.82}.save-btn-icon[data-v-51b97ac2]{flex-shrink:0}.action-btn[data-v-51b97ac2]{width:100%;border:1px solid var(--border-color);text-align:left;font-size:15px;font-weight:600;color:var(--text-primary)}.action-btn-content[data-v-51b97ac2]{display:inline-flex;align-items:center;gap:8px}.action-btn-icon-wrap[data-v-51b97ac2]{width:28px;height:28px;border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center}.action-btn-icon-wrap--logout[data-v-51b97ac2]{background:var(--bg-gray);color:var(--text-secondary)}.action-btn-icon-wrap--danger[data-v-51b97ac2]{background:#dc35451f;color:var(--exooo-red)}.action-btn[data-v-51b97ac2]:disabled{opacity:.55;cursor:not-allowed}.action-btn.danger[data-v-51b97ac2]{color:var(--exooo-red)}.spinning[data-v-51b97ac2]{animation:settings-spin-51b97ac2 .8s linear infinite}@keyframes settings-spin-51b97ac2{to{transform:rotate(360deg)}}@media(min-width:768px){.settings-screen[data-v-51b97ac2]{max-width:480px;margin:0 auto;box-shadow:0 0 20px #0000001a}.settings-header[data-v-51b97ac2]{max-width:480px;left:50%;transform:translate(-50%)}}.settings-screen[data-v-5b0a57d6]{min-height:100vh;min-height:100dvh;background:var(--bg-gray);color:var(--text-primary)}.settings-header[data-v-5b0a57d6]{position:fixed;top:0;left:0;right:0;z-index:100;height:72px;padding:16px;display:flex;align-items:center;justify-content:space-between;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm)}.settings-header h1[data-v-5b0a57d6]{margin:0;font-size:18px;font-weight:700}.header-spacer[data-v-5b0a57d6]{width:40px;height:40px}.header-icon-btn[data-v-5b0a57d6]{width:40px;height:40px;border:none;background:#ffffffd9;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--text-primary);box-shadow:0 2px 8px #00000014}.settings-content[data-v-5b0a57d6]{padding:88px 16px calc(20px + env(safe-area-inset-bottom))}.settings-card[data-v-5b0a57d6]{background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:14px}.legal-state[data-v-5b0a57d6]{margin:0;font-size:14px;color:var(--text-secondary)}.legal-error[data-v-5b0a57d6]{color:var(--exooo-red)}.retry-btn[data-v-5b0a57d6]{margin-top:10px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--white);color:var(--text-primary);font-size:13px;font-weight:600;padding:6px 12px}.legal-content[data-v-5b0a57d6]{color:var(--text-primary);font-size:14px;line-height:1.55}[data-v-5b0a57d6] .legal-content p{margin:0 0 10px}@media(min-width:768px){.settings-screen[data-v-5b0a57d6]{max-width:480px;margin:0 auto;box-shadow:0 0 20px #0000001a}.settings-header[data-v-5b0a57d6]{max-width:480px;left:50%;transform:translate(-50%)}}.notifications-screen[data-v-e8196d11]{min-height:100vh;min-height:100dvh;background:var(--bg-gray);color:var(--text-primary);padding-bottom:calc(20px + env(safe-area-inset-bottom))}.notifications-header[data-v-e8196d11]{position:fixed;top:0;left:0;right:0;height:72px;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:16px;background:transparent;transition:all .3s ease}.notifications-header.scrolled[data-v-e8196d11]{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm)}.notifications-header h1[data-v-e8196d11]{margin:0;font-size:18px;font-weight:700;color:var(--text-primary);opacity:0;transition:opacity .2s ease}.notifications-header h1.visible[data-v-e8196d11]{opacity:1}.header-icon-btn[data-v-e8196d11]{width:40px;height:40px;border:none;background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-primary);box-shadow:0 2px 8px #0000001a;cursor:pointer;transition:all .2s}.header-icon-btn[data-v-e8196d11]:active{transform:scale(.95)}.notifications-content[data-v-e8196d11]{padding:88px 16px 0}.notifications-actions[data-v-e8196d11]{display:flex;justify-content:flex-end;margin-bottom:10px}.mark-all-btn[data-v-e8196d11]{border:none;background:var(--exooo-light-orange);color:var(--exooo-orange);border-radius:999px;padding:8px 14px;font-size:12px;font-weight:600}.mark-all-btn[data-v-e8196d11]:disabled{opacity:.45}.notifications-state[data-v-e8196d11]{margin-top:20px;text-align:center;font-size:14px}.notifications-state.muted[data-v-e8196d11]{color:var(--text-secondary)}.notifications-state.error[data-v-e8196d11]{color:var(--exooo-red)}.notifications-empty[data-v-e8196d11]{margin-top:36px;text-align:center;color:var(--text-secondary);display:grid;gap:10px;justify-items:center}.notifications-empty h2[data-v-e8196d11]{margin:0;color:var(--text-primary);font-size:18px}.notifications-empty p[data-v-e8196d11]{margin:0;max-width:280px;font-size:14px}.notifications-list[data-v-e8196d11]{display:grid;gap:12px}.notification-card[data-v-e8196d11]{border-radius:var(--radius-lg);border:1px solid var(--border-color);background:var(--white);padding:14px}.notification-card.unread[data-v-e8196d11]{border-color:#ca006038;box-shadow:0 4px 12px #ca006014}.notification-top-row[data-v-e8196d11]{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}.notification-icon-wrap[data-v-e8196d11]{width:30px;height:30px;border-radius:9px;display:grid;place-items:center}.notification-icon-offer[data-v-e8196d11]{background:var(--exooo-light-orange);color:var(--exooo-orange)}.notification-icon-reward[data-v-e8196d11]{background:var(--exooo-light-pink);color:var(--exooo-pink)}.notification-icon-security[data-v-e8196d11]{background:var(--exooo-light-green);color:var(--exooo-green)}.notification-icon-generic[data-v-e8196d11]{background:#eef1f4;color:#4e5761}.notification-meta h3[data-v-e8196d11]{margin:0;font-size:15px;color:var(--text-primary)}.notification-time[data-v-e8196d11]{margin:2px 0 0;color:var(--text-secondary);font-size:12px}.unread-dot[data-v-e8196d11]{width:9px;height:9px;border-radius:999px;background:var(--exooo-pink)}.notification-body[data-v-e8196d11]{margin:10px 0 0;color:#404852;line-height:1.45;font-size:14px}.notification-actions[data-v-e8196d11]{margin-top:10px;display:flex;gap:14px}.notification-link[data-v-e8196d11]{border:0;background:transparent;color:var(--exooo-pink);font-size:13px;font-weight:600;padding:0}@media(max-width:420px){.notifications-content[data-v-e8196d11]{padding:88px 12px 0}}@media(min-width:768px){.notifications-screen[data-v-e8196d11]{max-width:480px;margin:0 auto;box-shadow:0 0 20px #0000001a}.notifications-header[data-v-e8196d11]{max-width:480px;left:50%;transform:translate(-50%)}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}
