@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Outfit:wght@400;500;600;700;800&display=swap);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;600;700;800;900&display=swap);*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{color:inherit;overflow-x:hidden}::selection{background:#ffb3474d;color:inherit}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#ffb34766;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffb34799}:root{--font-body:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-display:"Outfit",sans-serif;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--shadow-sm:0 2px 8px #00000014;--shadow-md:0 4px 20px #0000001f;--shadow-lg:0 8px 40px #00000029;--transition:0.3s cubic-bezier(0.4,0,0.2,1);--accent:#ff7e5f;--accent-2:#feb47b;--accent-gradient:linear-gradient(135deg,#ff7e5f,#feb47b);--header-height:64px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);line-height:1.6}body,button,input,option,select,textarea{color:inherit;font-family:inherit}a,article,div,footer,h1,h2,h3,h4,h5,h6,header,label,li,nav,p,section,span{color:inherit}.lucide-icon{display:inline-block;flex-shrink:0;vertical-align:middle}.filter-label-icon,.page-title-icon,.results-title-icon,.section-title-icon{color:#ff7e5f;color:var(--accent);margin-right:6px;vertical-align:-3px}.nav-icon .lucide-icon{vertical-align:-2px}.category-icon .lucide-icon,.category-icon-lg .lucide-icon{color:#ff7e5f;color:var(--accent)}.hotel-rating .lucide-icon,.spot-rating .lucide-icon{margin-right:2px;vertical-align:-2px}.hotel-location .lucide-icon,.spot-location .lucide-icon{color:#ff7e5f;color:var(--accent);margin-right:3px;vertical-align:-2px}.booking-link .lucide-icon,.map-link .lucide-icon{margin-right:4px;vertical-align:-2px}.heart-filled{color:#e74c3c}.tab-btn .lucide-icon{margin-right:4px;vertical-align:-2px}.location-icon-lg .lucide-icon{color:#ff7e5f;color:var(--accent)}.search-icon-header .lucide-icon{color:var(--muted)}.suggestion-icon .lucide-icon{color:#ff7e5f;color:var(--accent)}.app{min-height:100vh;overflow-x:hidden;transition:background .5s ease,color .3s ease}.app.dark{--card-bg:#ffffff0a;--card-border:#ffffff14;--card-hover-border:#ff7e5f40;--card-hover-shadow:0 12px 40px #ff7e5f14;--input-bg:#ffffff0f;--input-border:#ffffff1a;--input-color:#e2e8f0;--overlay-bg:#0009;--surface:#1e293b;--surface-2:#334155;--muted:#ffffff80;background:linear-gradient(135deg,#0a0a1a,#111827 40%,#0f172a);color:#f1f5f9}.app.light{--card-bg:#ffffffb3;--card-border:#0000000f;--card-hover-border:#ff7e5f33;--card-hover-shadow:0 12px 40px #0000001a;--input-bg:#fffc;--input-border:#0000001a;--input-color:#1e293b;--overlay-bg:#0006;--surface:#fff;--surface-2:#f1f5f9;--muted:#00000073;background:linear-gradient(135deg,#fefefe,#f8f4f0 40%,#fff7ed);color:#1e293b}.header-bar{align-items:center;backdrop-filter:blur(20px) saturate(1.8);-webkit-backdrop-filter:blur(20px) saturate(1.8);display:flex;gap:16px;height:64px;height:var(--header-height);justify-content:space-between;left:0;padding:0 24px;position:fixed;right:0;top:0;transition:background .3s cubic-bezier(.4,0,.2,1);transition:background var(--transition);z-index:100}.app.dark .header-bar{background:#0a0a1abf;border-bottom:1px solid #ffffff0f}.app.light .header-bar{background:#fffc;border-bottom:1px solid #0000000f;box-shadow:0 1px 12px #0000000a}.header-left{align-items:center;display:flex;flex-shrink:0}.header-brand-link{align-items:center;display:flex;gap:10px;text-decoration:none}.header-logo{border-radius:10px;height:36px;object-fit:contain;transition:transform .3s cubic-bezier(.4,0,.2,1);transition:transform var(--transition);width:36px}.header-logo:hover{transform:rotate(-6deg) scale(1.1)}.header-brand-name{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.4rem;font-weight:800;letter-spacing:1px}.header-nav{gap:4px}.header-nav,.nav-link{align-items:center;display:flex}.nav-link{border-radius:8px;border-radius:var(--radius-sm);color:inherit;font-size:.85rem;font-weight:500;gap:5px;opacity:.7;padding:7px 14px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.nav-link:hover{background:var(--card-bg);opacity:1}.nav-link.active{background:#ff7e5f1f;color:#ff7e5f;color:var(--accent);opacity:1}.nav-icon{font-size:1rem}.header-center{flex:1 1;max-width:400px;position:relative}.search-form{align-items:center;display:flex;position:relative}.search-icon-header{font-size:.85rem;left:12px;opacity:.5;pointer-events:none;position:absolute;z-index:1}.global-search{background:var(--input-bg);border:1.5px solid var(--input-border);border-radius:28px;border-radius:var(--radius-xl);color:var(--input-color);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);font-size:.85rem;outline:none;padding:9px 16px 9px 36px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:100%}.global-search:focus{border-color:#ff7e5f;border-color:var(--accent);box-shadow:0 0 0 3px #ff7e5f26}.global-search::placeholder{opacity:.4}.search-suggestions{animation:slideDown .2s ease;background:var(--surface);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);box-shadow:0 8px 40px #00000029;box-shadow:var(--shadow-lg);left:0;max-height:320px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 6px);z-index:200}.suggestion-item{align-items:center;border-bottom:1px solid var(--card-border);cursor:pointer;display:flex;gap:10px;padding:10px 14px;transition:background .3s cubic-bezier(.4,0,.2,1);transition:background var(--transition)}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover{background:#ff7e5f14}.suggestion-icon{flex-shrink:0;font-size:1.1rem}.suggestion-text{flex:1 1;min-width:0}.suggestion-name{display:block;font-size:.88rem;font-weight:500}.suggestion-sub{display:block;font-size:.75rem;opacity:.5}.suggestion-type{background:#ff7e5f1a;border-radius:20px;color:#ff7e5f;color:var(--accent);font-size:.68rem;font-weight:600;padding:2px 8px}.header-right{flex-shrink:0;gap:6px}.header-icon-btn,.header-right{align-items:center;display:flex}.header-icon-btn{background:var(--card-bg);border:none;border-radius:50%;cursor:pointer;font-size:1rem;height:36px;justify-content:center;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:36px}.header-icon-btn:hover{background:#ff7e5f1f;transform:scale(1.1)}.wishlist-btn.has-items{animation:pulse 2s infinite}@keyframes pulse{0%,to{box-shadow:none}50%{box-shadow:0 0 12px #ff6b6b4d}}.wishlist-badge{align-items:center;background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border-radius:50%;color:#fff;display:flex;font-size:.6rem;font-weight:700;height:16px;justify-content:center;line-height:1;min-width:16px;position:absolute;right:-3px;top:-3px}.mobile-nav-btn{display:none}.main-content{min-height:calc(100vh - 164px);min-height:calc(100vh - var(--header-height) - 100px);padding-top:64px;padding-top:var(--header-height);position:relative;z-index:1}.page-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:60vh;opacity:.6}.loading-spinner{animation:spin .8s linear infinite;border:3px solid #ff7e5f33;border-radius:50%;border-top-color:#ff7e5f;border-top:3px solid var(--accent);height:36px;width:36px}.loading-more{align-items:center;display:flex;flex-direction:column;gap:12px;justify-content:center;padding:32px 0;width:100%}.loading-spinner-small{animation:spin .8s linear infinite;border:2px solid #ff7e5f33;border-radius:50%;border-top-color:#ff7e5f;border-top:2px solid var(--accent);height:24px;width:24px}@keyframes spin{to{transform:rotate(1turn)}}.hero-section{align-items:center;display:flex;justify-content:center;min-height:480px;overflow:hidden;padding:80px 24px 60px;position:relative;text-align:center}.hero-bg-pattern{background-image:radial-gradient(circle at 20% 50%,#ff7e5f 1px,#0000 0),radial-gradient(circle at 80% 20%,#ff7e5f 1px,#0000 0),radial-gradient(circle at 50% 80%,#ff7e5f 1px,#0000 0);background-image:radial-gradient(circle at 20% 50%,var(--accent) 1px,#0000 1px),radial-gradient(circle at 80% 20%,var(--accent) 1px,#0000 1px),radial-gradient(circle at 50% 80%,var(--accent) 1px,#0000 1px);background-size:60px 60px,80px 80px,40px 40px;inset:0;opacity:.06;position:absolute}.hero-content{max-width:700px;position:relative;z-index:1}.hero-title{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:3.5rem;font-weight:900;letter-spacing:-.5px;line-height:1.15;margin-bottom:16px}.gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text}.hero-subtitle{font-size:1.15rem;font-weight:300;margin-bottom:32px;opacity:.7}.hero-search-wrapper{border-radius:28px;border-radius:var(--radius-xl);box-shadow:0 8px 40px #00000029;box-shadow:var(--shadow-lg);display:flex;margin:0 auto 28px;max-width:520px;overflow:hidden}.hero-search{background:var(--surface);border:none;color:var(--input-color);cursor:pointer;flex:1 1;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);font-size:1rem;outline:none;padding:16px 20px}.hero-search::placeholder{opacity:.4}.hero-search-btn{background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border:none;color:#fff;cursor:pointer;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);font-size:.95rem;font-weight:700;padding:16px 28px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);white-space:nowrap}.hero-search-btn:hover{filter:brightness(1.1);transform:scale(1.02)}.hero-stats{display:flex;flex-wrap:wrap;gap:40px;justify-content:center}.stat-item{align-items:center;display:flex;flex-direction:column}.stat-number{color:#ff7e5f;color:var(--accent);font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.8rem;font-weight:800}.stat-label{font-size:.78rem;font-weight:500;letter-spacing:1px;opacity:.5;text-transform:uppercase}.home-section{margin:0 auto;max-width:1200px;padding:48px 24px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.section-title{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.6rem;font-weight:700}.see-all-link{border-radius:8px;border-radius:var(--radius-sm);color:#ff7e5f;color:var(--accent);font-size:.88rem;font-weight:600;padding:6px 12px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.see-all-link:hover{background:#ff7e5f1a}.state-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.state-card{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--card-bg);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);color:inherit;display:flex;flex-direction:column;gap:6px;padding:20px 12px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.state-card:hover{border-color:var(--card-hover-border);box-shadow:var(--card-hover-shadow);transform:translateY(-3px)}.state-card-code{align-items:center;background:#ff7e5f1a;border-radius:50%;color:#ff7e5f;color:var(--accent);display:flex;font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.3rem;font-weight:800;height:48px;justify-content:center;width:48px}.state-card-name{font-size:.88rem;font-weight:600;text-align:center}.state-card-count{font-size:.72rem;opacity:.5}.category-scroll{-ms-overflow-style:none;display:flex;gap:12px;overflow-x:auto;padding:4px 0 12px;scroll-snap-type:x mandatory;scrollbar-width:none}.category-scroll::-webkit-scrollbar{display:none}.category-card{align-items:center;background:var(--card-bg);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);color:inherit;display:flex;flex-direction:column;flex-shrink:0;gap:6px;min-width:100px;padding:16px 18px;scroll-snap-align:start;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.category-card:hover{border-color:var(--card-hover-border);box-shadow:var(--card-hover-shadow);transform:translateY(-3px)}.category-icon{font-size:1.6rem}.category-name{font-size:.72rem;font-weight:600;text-align:center;white-space:nowrap}.category-count{font-size:.65rem;opacity:.5}.spots-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.spot-card{animation:cardFadeIn .5s ease forwards;background:var(--card-bg);border:1px solid var(--card-border);border-radius:20px;border-radius:var(--radius-lg);opacity:0;overflow:hidden;transform:translateY(16px);transition:all .4s cubic-bezier(.4,0,.2,1)}.spot-card:hover{border-color:var(--card-hover-border);box-shadow:var(--card-hover-shadow);transform:translateY(-5px) scale(1.005)}@keyframes cardFadeIn{to{opacity:1;transform:translateY(0)}}.spot-image-wrapper{background:#1e293b;height:200px;overflow:hidden;position:relative;width:100%}.spot-image-skeleton{animation:spotShimmer 1.5s infinite;background:linear-gradient(90deg,#ffffff08 25%,#ffffff14 50%,#ffffff08 75%);background-size:200% 100%;inset:0;position:absolute;z-index:1}@keyframes spotShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.spot-image{height:100%;object-fit:cover;opacity:0;transition:transform .6s ease,opacity .35s ease;width:100%}.spot-image.loaded{opacity:1}.spot-card:hover .spot-image{transform:scale(1.08)}.spot-image-overlay{background:linear-gradient(#0000,#0006);bottom:0;height:50%;left:0;pointer-events:none;position:absolute;right:0;z-index:2}.wishlist-heart{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000004d;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:1rem;height:34px;justify-content:center;position:absolute;right:10px;top:10px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:34px;z-index:5}.wishlist-heart:hover{background:#00000080;transform:scale(1.2)}.wishlist-heart.active{animation:heartPop .4s ease}@keyframes heartPop{0%{transform:scale(1)}50%{transform:scale(1.4)}to{transform:scale(1)}}.spot-category-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000080;border-radius:20px;bottom:10px;color:#fff;font-size:.68rem;font-weight:600;left:10px;padding:4px 10px;position:absolute;z-index:5}.spot-content{padding:16px 18px 18px}.spot-header-row{align-items:flex-start;display:flex;gap:8px;justify-content:space-between;margin-bottom:4px}.spot-name{color:#ff7e5f;color:var(--accent);flex:1 1;font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.1rem;font-weight:700}.spot-rating{font-size:.78rem;font-weight:600;opacity:.8;white-space:nowrap}.spot-location{font-size:.78rem;margin-bottom:8px;opacity:.5}.spot-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;font-size:.84rem;line-height:1.6;margin-bottom:10px;opacity:.7;overflow:hidden}.spot-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.spot-tag{background:#ff7e5f1a;border-radius:20px;color:#ff7e5f;color:var(--accent);font-size:.65rem;font-weight:600;padding:3px 8px}.spot-actions{display:flex;gap:8px}.map-link{align-items:center;background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border-radius:8px;border-radius:var(--radius-sm);color:#fff;display:inline-flex;font-size:.8rem;font-weight:600;gap:5px;padding:8px 16px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.map-link:hover{box-shadow:0 4px 16px #ff7e5f4d;filter:brightness(1.1);transform:translateY(-2px)}.google-search-link{align-items:center;background:#0ea5e914;border:1px solid #0ea5e94d;border-radius:8px;border-radius:var(--radius-sm);color:#0284c7;display:inline-flex;font-size:.8rem;font-weight:600;gap:6px;overflow:hidden;padding:8px 16px;position:relative;text-decoration:none;transition:color .35s ease,border-color .35s ease,transform .3s ease,box-shadow .3s ease;z-index:1}.google-search-link:before{background:linear-gradient(135deg,#0ea5e9,#0284c7);bottom:0;content:"";height:0;left:0;position:absolute;transition:height .38s cubic-bezier(.4,0,.2,1);width:100%;z-index:-1}.google-search-link:hover{border-color:#0000;box-shadow:0 6px 18px #0ea5e966;color:#fff;transform:translateY(-2px)}.google-search-link:hover:before{height:100%}.google-search-link .lucide-icon{transition:transform .3s ease}.google-search-link:hover .lucide-icon{transform:scale(1.1)}.app.dark .google-search-link{background:#0ea5e926;border-color:#38bdf859;color:#38bdf8}.app.dark .google-search-link:hover{color:#fff}.hotels-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.hotel-card{animation:cardFadeIn .5s ease forwards;background:var(--card-bg);border:1px solid var(--card-border);border-radius:20px;border-radius:var(--radius-lg);opacity:0;overflow:hidden;transform:translateY(16px);transition:all .4s cubic-bezier(.4,0,.2,1)}.hotel-card:hover{border-color:var(--card-hover-border);box-shadow:var(--card-hover-shadow);transform:translateY(-5px)}.hotel-image-wrapper{height:200px;overflow:hidden;position:relative;width:100%}.hotel-image{height:100%;object-fit:cover;transition:transform .6s ease;width:100%}.hotel-card:hover .hotel-image{transform:scale(1.06)}.hotel-type-badge{background:#00000080;font-size:.7rem;left:10px;letter-spacing:.5px;text-transform:uppercase;top:10px}.hotel-price-badge,.hotel-type-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:20px;color:#fff;font-weight:700;padding:4px 12px;position:absolute}.hotel-price-badge{background:#ff7e5fe6;bottom:10px;font-size:.72rem;right:10px}.hotel-content{padding:16px 18px 18px}.hotel-header-row{align-items:flex-start;display:flex;gap:8px;justify-content:space-between;margin-bottom:4px}.hotel-name{color:#ff7e5f;color:var(--accent);flex:1 1;font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.05rem;font-weight:700}.hotel-rating{font-size:.78rem;font-weight:600;opacity:.8;white-space:nowrap}.hotel-location{font-size:.78rem;margin-bottom:10px;opacity:.5}.hotel-amenities{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.amenity-chip{background:var(--surface-2);border:1px solid var(--card-border);border-radius:20px;font-size:.68rem;font-weight:500;padding:3px 10px}.amenity-chip.more{background:#ff7e5f1a;color:#ff7e5f;color:var(--accent);font-weight:600}.hotel-actions{display:flex;gap:8px}.booking-link{align-items:center;background:var(--surface-2);border:1px solid var(--card-border);border-radius:8px;border-radius:var(--radius-sm);color:inherit;display:inline-flex;font-size:.8rem;font-weight:600;gap:5px;padding:8px 16px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.booking-link:hover{border-color:#ff7e5f;border-color:var(--accent);color:#ff7e5f;color:var(--accent);transform:translateY(-2px)}.page-header{margin:0 auto;max-width:1200px;padding:40px 24px 20px}.page-title{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:2rem;font-weight:800;margin-bottom:4px}.page-subtitle{font-size:.95rem;opacity:.6}.explore-layout{display:flex;gap:24px;margin:0 auto;max-width:1200px;padding:0 24px 40px}.explore-sidebar{align-self:flex-start;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--card-bg);border:1px solid var(--card-border);border-radius:20px;border-radius:var(--radius-lg);flex-shrink:0;max-height:calc(100vh - 96px);max-height:calc(100vh - var(--header-height) - 32px);overflow-y:auto;padding:20px;position:-webkit-sticky;position:sticky;top:80px;top:calc(var(--header-height) + 16px);width:260px}.explore-results{flex:1 1;min-width:0}.filter-group{margin-bottom:18px}.filter-label{display:block;font-size:.82rem;font-weight:600;margin-bottom:8px}.filter-input,.filter-select{-webkit-appearance:none;appearance:none;background:var(--input-bg);border:1.5px solid var(--input-border);border-radius:8px;border-radius:var(--radius-sm);color:var(--input-color);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);font-size:.85rem;outline:none;padding:10px 14px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:100%}.filter-input:focus,.filter-select:focus{border-color:#ff7e5f;border-color:var(--accent);box-shadow:0 0 0 3px #ff7e5f1f}.filter-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23ff7e5f' d='M6 8 1 3h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;cursor:pointer;padding-right:32px}.app.dark .filter-select option{background:#1e293b;color:#e2e8f0}.clear-filters-btn{background:#0000;border:1px solid var(--card-border);border-radius:8px;border-radius:var(--radius-sm);color:#ff7e5f;color:var(--accent);cursor:pointer;font-size:.82rem;font-weight:600;padding:10px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:100%}.clear-filters-btn:hover{background:#ff7e5f1a;border-color:#ff7e5f;border-color:var(--accent)}.search-wrapper{position:relative}.dropdown-list{animation:slideDown .2s ease;background:var(--surface);border:1px solid var(--card-border);border-radius:0 0 8px 8px;border-radius:0 0 var(--radius-sm) var(--radius-sm);box-shadow:0 8px 40px #00000029;box-shadow:var(--shadow-lg);left:0;list-style:none;max-height:200px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:50}.dropdown-item{align-items:center;border-bottom:1px solid var(--card-border);cursor:pointer;display:flex;font-size:.85rem;gap:8px;padding:9px 14px;transition:background .3s cubic-bezier(.4,0,.2,1);transition:background var(--transition)}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background:#ff7e5f1a}.dropdown-item:hover,.state-code{color:#ff7e5f;color:var(--accent)}.state-code{background:#ff7e5f1f;border-radius:4px;display:inline-block;font-size:.68rem;font-weight:700;min-width:24px;padding:2px 6px;text-align:center}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.results-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:16px}.results-count{font-size:.85rem;font-weight:600;opacity:.7}.results-filter{font-size:.82rem;opacity:.5}.results-title{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.4rem;font-weight:700}.results-controls{align-items:center;display:flex;gap:12px}.sort-select{-webkit-appearance:none;appearance:none;background:var(--input-bg);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath fill='%23ff7e5f' d='M6 8 1 3h10z'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border:1px solid var(--input-border);border-radius:8px;border-radius:var(--radius-sm);color:var(--input-color);cursor:pointer;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);font-size:.8rem;outline:none;padding:6px 28px 6px 12px}.app.dark .sort-select option{background:#1e293b;color:#e2e8f0}.category-grid-full{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin:0 auto;max-width:1200px;padding:0 24px 28px}.category-card-full{align-items:center;background:var(--card-bg);border:2px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-body);gap:8px;padding:20px 12px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.category-card-full:hover{border-color:var(--card-hover-border);box-shadow:var(--card-hover-shadow);transform:translateY(-3px)}.category-card-full.active{background:#ff7e5f14;border-color:#ff7e5f;border-color:var(--accent);box-shadow:0 0 20px #ff7e5f26}.category-icon-lg{font-size:2rem}.category-name-lg{font-size:.78rem;font-weight:600;text-align:center}.category-count-lg{font-size:.68rem;opacity:.5}.category-results{margin:0 auto;max-width:1200px;padding:0 24px 40px}.nearme-page{margin:0 auto;max-width:1200px;padding-bottom:40px}.location-prompt{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:40vh;padding:40px 24px;text-align:center}.location-icon-lg{font-size:4rem}.location-prompt h2{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.5rem}.location-prompt p{max-width:400px;opacity:.6}.retry-btn{background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 24px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.retry-btn:hover{box-shadow:0 4px 16px #ff7e5f4d;transform:translateY(-2px)}.nearme-controls{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:20px;padding:16px 24px}.distance-filter{align-items:center;display:flex;gap:12px}.distance-filter label{font-size:.88rem}.distance-slider{-webkit-appearance:none;appearance:none;background:var(--surface-2);border-radius:4px;cursor:pointer;height:4px;outline:none;width:160px}.distance-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#ff7e5f;background:var(--accent);border-radius:50%;cursor:pointer;height:18px;width:18px}.nearme-tabs{display:flex;gap:8px}.tab-btn{background:var(--card-bg);border:1px solid var(--card-border);border-radius:28px;border-radius:var(--radius-xl);color:inherit;cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.tab-btn.active{background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border-color:#0000;color:#fff}.tab-btn:hover:not(.active){border-color:#ff7e5f;border-color:var(--accent)}.near-card-wrapper{position:relative}.distance-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#22c55ee6;border-radius:20px;color:#fff;font-size:.72rem;font-weight:700;left:10px;padding:4px 12px;position:absolute;top:10px;z-index:10}.search-page{margin:0 auto;max-width:1200px;padding-bottom:40px}.search-results-content{padding:0 24px}.search-section{margin-bottom:40px}.search-section-title{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.3rem;font-weight:700;margin-bottom:16px}.wishlist-overlay{animation:fadeIn .2s ease;background:var(--overlay-bg);inset:0;position:fixed;z-index:200}.wishlist-panel{animation:slideInRight .3s ease;background:var(--surface);border-left:1px solid var(--card-border);height:100vh;max-width:90vw;overflow-y:auto;padding:24px;position:fixed;right:0;top:0;width:380px;z-index:201}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.wishlist-header{align-items:center;border-bottom:1px solid var(--card-border);display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.wishlist-header h2{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.2rem;font-weight:700}.wishlist-close{align-items:center;background:var(--card-bg);border:none;border-radius:50%;color:inherit;cursor:pointer;display:flex;font-size:1rem;height:32px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:32px}.wishlist-close:hover{background:#ff6b6b26;color:#ff6b6b}.wishlist-empty{opacity:.6;padding:40px 0;text-align:center}.wishlist-items{display:flex;flex-direction:column;gap:12px}.wishlist-item{align-items:center;background:var(--card-bg);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);display:flex;gap:12px;padding:12px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.wishlist-item:hover{transform:translateX(-3px)}.wishlist-item-img{border-radius:8px;border-radius:var(--radius-sm);flex-shrink:0;height:50px;object-fit:cover;width:50px}.wishlist-item-info{flex:1 1;min-width:0}.wishlist-item-info h4{color:#ff7e5f;color:var(--accent);font-size:.85rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wishlist-item-info p{font-size:.75rem;margin-bottom:2px;opacity:.5}.wishlist-map-link{color:#ff7e5f;color:var(--accent);font-size:.72rem;font-weight:600;text-decoration:none}.wishlist-map-link:hover{text-decoration:underline}.wishlist-remove{align-items:center;background:var(--card-bg);border:none;border-radius:50%;cursor:pointer;display:flex;flex-shrink:0;font-size:.85rem;height:30px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:30px}.wishlist-remove:hover{background:#ff453a1f;transform:scale(1.1)}.empty-state{padding:60px 20px;text-align:center}.empty-icon{display:block;font-size:3.5rem;margin-bottom:12px}.empty-state p{font-size:1rem;opacity:.6}.hint-text{font-size:.85rem;font-style:italic;margin-top:8px;opacity:.45}.footer{border-top:1px solid var(--card-border);margin-top:40px;padding:48px 24px 24px}.footer-content{display:flex;flex-wrap:wrap;gap:40px;justify-content:space-between;margin:0 auto;max-width:1200px}.footer-brand h3{color:#ff7e5f;color:var(--accent);font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.4rem;font-weight:800;margin-bottom:8px}.footer-brand p{font-size:.85rem;max-width:300px;opacity:.5}.footer-links{display:flex;gap:48px}.footer-col{display:flex;flex-direction:column;gap:8px}.footer-col h4{font-size:.85rem;font-weight:700;margin-bottom:4px}.footer-col a{color:inherit;font-size:.82rem;opacity:.6;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.footer-col a:hover{color:#ff7e5f;color:var(--accent);opacity:1}.footer-bottom{border-top:1px solid var(--card-border);margin:28px auto 0;max-width:1200px;padding-top:20px;text-align:center}.footer-bottom p{font-size:.82rem;opacity:.4}.fade-in{animation:fadeSlideUp .4s ease forwards}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){.explore-layout{flex-direction:column}.explore-sidebar{display:flex;flex-wrap:wrap;gap:12px;max-height:none;padding:16px;position:static;width:100%}.filter-group{flex:1 1;margin-bottom:0;min-width:180px}.clear-filters-btn{flex:none;width:auto}}@media (max-width:768px){.hero-title{font-size:2.4rem}.hero-subtitle{font-size:1rem}.hero-stats{gap:24px}.stat-number{font-size:1.4rem}.hotels-grid,.spots-grid{grid-template-columns:1fr}.state-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.category-grid-full{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.section-title{font-size:1.3rem}.page-title{font-size:1.6rem}.header-bar{gap:8px;padding:0 12px}.header-brand-name{font-size:1.15rem}.header-logo{height:30px;width:30px}.header-center{max-width:200px}.global-search{font-size:.8rem;padding:7px 12px 7px 30px}.header-nav{background:var(--surface);border-bottom:1px solid var(--card-border);box-shadow:0 8px 40px #00000029;box-shadow:var(--shadow-lg);flex-direction:column;left:0;opacity:0;padding:16px;pointer-events:none;position:fixed;right:0;top:64px;top:var(--header-height);transform:translateY(-100%);transition:all .3s ease;z-index:99}.header-nav.open{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-link{border-radius:8px;border-radius:var(--radius-sm);font-size:1rem;padding:12px 16px}.mobile-nav-btn{display:flex}.footer-content{flex-direction:column;gap:24px}.footer-links{gap:32px}.nearme-controls{align-items:stretch;flex-direction:column}.nearme-tabs{justify-content:center}}@media (max-width:480px){.hero-title{font-size:1.9rem}.hero-search-wrapper{border-radius:14px;border-radius:var(--radius-md);flex-direction:column}.hero-search{border-radius:14px 14px 0 0;border-radius:var(--radius-md) var(--radius-md) 0 0}.hero-search-btn{border-radius:0 0 14px 14px;border-radius:0 0 var(--radius-md) var(--radius-md)}.hero-stats{gap:16px}.stat-number{font-size:1.2rem}.header-center{display:none}.category-card{min-width:80px;padding:12px}.category-icon{font-size:1.3rem}.hotel-image-wrapper,.spot-image-wrapper{height:170px}}.spot-tier-badge{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:20px;box-shadow:0 2px 8px #00000040;display:inline-flex;font-size:.65rem;font-weight:700;left:12px;letter-spacing:.8px;padding:4px 10px;position:absolute;text-transform:uppercase;top:12px;z-index:4}.spot-tier-badge.tier-most-famous{background:linear-gradient(135deg,#f39c12e6,#f1c40fe6);border:1px solid #fff6;color:#1a1a1a}.spot-tier-badge.tier-famous{background:linear-gradient(135deg,#3498dbe6,#2ecc71e6);border:1px solid #fff3;color:#fff}.spot-tier-badge.tier-hidden{background:linear-gradient(135deg,#9b59b6e6,#34495ee6);border:1px solid #fff3;color:#fff}.tier-filter-tabs{-ms-overflow-style:none;display:flex;gap:10px;margin-bottom:24px;overflow-x:auto;padding:4px 2px;scrollbar-width:none}.tier-filter-tabs::-webkit-scrollbar{display:none}.tier-tab{background:var(--card-bg);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);box-shadow:0 2px 8px #00000014;box-shadow:var(--shadow-sm);color:var(--text-color);cursor:pointer;font-size:.85rem;font-weight:600;padding:8px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);white-space:nowrap}.tier-tab:hover{background:#ff7e5f0d;border-color:#ff7e5f;border-color:var(--accent);transform:translateY(-1px)}.tier-tab.active{background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border-color:#0000;box-shadow:0 4px 12px #ff7e5f4d;color:#fff}.dark-mode .tier-tab,.dark-theme .tier-tab{background:#ffffff08;border-color:#ffffff14;color:#ffffffd9}.dark-mode .tier-tab:hover,.dark-theme .tier-tab:hover{background:#ff7e5f26;border-color:#ff7e5f;border-color:var(--accent)}.dark-mode .tier-tab.active,.dark-theme .tier-tab.active{background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border-color:#0000;color:#fff}.food-card{align-items:flex-start;animation:fadeUp .4s ease both;background:#fff;background:var(--card-bg,#fff);border:1px solid #00000012;border:1px solid var(--border-color,#00000012);border-radius:14px;border-radius:var(--radius-md);cursor:default;display:flex;gap:14px;padding:16px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.food-card:hover{border-color:#ff7e5f4d;box-shadow:0 4px 20px #0000001f;box-shadow:var(--shadow-md);transform:translateY(-3px)}.food-card-img-wrapper{background:#f1f5f9;border:1px solid #00000014;border-radius:12px;box-shadow:0 4px 12px #00000014;flex-shrink:0;height:64px;overflow:hidden;position:relative;width:64px}.app.dark .food-card-img-wrapper{background:#1e293b;border-color:#ffffff1f}.food-card-img{height:100%;object-fit:cover;transition:transform .35s ease;width:100%}.food-card:hover .food-card-img{transform:scale(1.1)}.food-card-fallback-badge{align-items:center;background:linear-gradient(135deg,#ff7e5f26,#feb47b26);display:flex;font-size:1.8rem;height:100%;justify-content:center;width:100%}.food-rank-badge{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));font-size:.9rem;line-height:1;position:absolute;right:2px;top:2px;z-index:2}.food-card-content{flex:1 1;min-width:0}.food-card-name{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:.95rem;font-weight:600;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.food-state-badge{background:#ff7e5f1a;border-radius:20px;color:#ff7e5f;color:var(--accent);display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.03em;margin-bottom:6px;padding:2px 8px}.food-card-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:.8rem;line-height:1.5;opacity:.7;overflow:hidden}.foods-page{min-height:calc(100vh - 64px);min-height:calc(100vh - var(--header-height))}.foods-hero{background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);overflow:hidden;padding:48px 24px;position:relative;text-align:center}.foods-hero:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z' fill='%23fff' fill-opacity='.05' fill-rule='evenodd'/%3E%3C/svg%3E");content:"";inset:0;position:absolute}.foods-hero-content{margin:0 auto;max-width:600px;position:relative;z-index:1}.foods-hero-icon{display:block;filter:drop-shadow(0 4px 12px rgba(0,0,0,.2));font-size:3.5rem;margin-bottom:12px}.foods-hero-title{color:#fff;font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:clamp(2rem,5vw,3rem);font-weight:800;margin-bottom:8px}.foods-hero-subtitle{color:#ffffffe0;font-size:1rem;margin-bottom:24px}.foods-search-bar{margin:0 auto;max-width:480px;position:relative}.foods-search-icon{color:#00000073;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.foods-search-input{background:#fff;border:none;border-radius:50px;box-shadow:0 8px 24px #00000026;color:#333;font-size:.95rem;outline:none;padding:14px 44px;width:100%}.foods-search-input::placeholder{color:#999}.foods-search-clear{background:none;border:none;color:#999;cursor:pointer;padding:4px;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.foods-layout{display:flex;gap:24px;margin:0 auto;max-width:1400px;padding:24px}.foods-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.search-foods-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.state-food-index{display:flex;flex-direction:column;gap:4px;max-height:420px;overflow-y:auto;padding-right:4px}.state-food-index::-webkit-scrollbar{width:4px}.state-food-index-item{align-items:center;background:none;border:1px solid #0000;border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:flex;font-size:.82rem;justify-content:space-between;padding:8px 12px;text-align:left;transition:all .2s;width:100%}.state-food-index-item:hover{background:#ff7e5f12;border-color:#ff7e5f33}.state-food-index-item.active{background:#ff7e5f1f;border-color:#ff7e5f;border-color:var(--accent);color:#ff7e5f;color:var(--accent);font-weight:600}.state-food-name{flex:1 1;margin-right:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.state-food-count{background:#ff7e5f1a;border-radius:10px;flex-shrink:0;font-size:.75rem;opacity:.6;padding:1px 6px}.explore-city-banner{align-items:center;background:linear-gradient(135deg,#1e293b,#0f172a);border:1px solid #ffffff14;border-radius:20px;border-radius:var(--radius-lg,14px);box-shadow:0 4px 18px #0000001a;display:flex;height:94px;margin-bottom:16px;overflow:hidden;position:relative;width:100%}.explore-banner-img{filter:brightness(.6);height:100%;inset:0;object-fit:cover;object-position:center 40%;pointer-events:none;position:absolute;transition:transform .6s ease;width:100%}.explore-city-banner:hover .explore-banner-img{transform:scale(1.02)}.explore-banner-overlay{align-items:center;background:linear-gradient(90deg,#0a0f1deb,#0a0f1da6 50%,#0a0f1de6);display:flex;flex-direction:row;gap:16px;inset:0;justify-content:space-between;padding:12px 20px;position:absolute;z-index:2}.location-header-info{display:flex;flex-direction:column;justify-content:center;min-width:0}.explore-banner-title{color:#fff;font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.4rem;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin-bottom:2px;text-shadow:0 2px 8px #00000080}.explore-banner-subtitle,.explore-banner-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.explore-banner-subtitle{color:#ffffffd9;font-size:.82rem;font-weight:500;text-shadow:0 1px 4px #0006}.explore-highlight-buttons{align-items:center;display:flex;flex-shrink:0;gap:8px;margin-top:0}.highlight-btn{align-items:center;border:none;border-radius:50px;cursor:pointer;display:inline-flex;font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:.8rem;font-weight:700;gap:6px;letter-spacing:.01em;padding:7px 14px;transition:all .25s cubic-bezier(.4,0,.2,1);white-space:nowrap}.food-highlight-btn{background:linear-gradient(135deg,#ff7e5f,#feb47b);box-shadow:0 3px 12px #ff7e5f59;color:#fff}.food-highlight-btn:hover{box-shadow:0 6px 18px #ff7e5f80;filter:brightness(1.06);transform:translateY(-2px)}.hotel-highlight-btn{background:linear-gradient(135deg,#0ea5e9,#0284c7);box-shadow:0 3px 12px #0ea5e959;color:#fff}.hotel-highlight-btn:hover{box-shadow:0 6px 18px #0ea5e980;filter:brightness(1.06);transform:translateY(-2px)}.highlight-btn .btn-icon{font-size:.95rem;line-height:1}.banner-close-btn{align-items:center;background:#ffffff1f;border:1px solid #fff3;border-radius:50%;color:#ffffffd9;cursor:pointer;display:inline-flex;font-size:1.1rem;height:28px;justify-content:center;line-height:1;margin-left:2px;transition:all .2s ease;width:28px}.banner-close-btn:hover{background:#ffffff40;color:#fff;transform:scale(1.08)}.show-banner-toggle{align-items:center;background:#ff7e5f1f;border:1px solid #ff7e5f40;border-radius:20px;color:#ff7e5f;cursor:pointer;display:inline-flex;font-size:.78rem;font-weight:600;gap:5px;padding:4px 12px;transition:all .2s ease}.show-banner-toggle:hover{background:#ff7e5f38;transform:translateY(-1px)}@media (max-width:900px){.explore-city-banner{height:auto;min-height:105px}.explore-banner-overlay{align-items:flex-start;flex-direction:column;gap:10px;padding:12px 16px}.explore-highlight-buttons{gap:8px;width:100%}.highlight-btn{flex:1 1;font-size:.76rem;justify-content:center;padding:6px 10px}}.explore-modal-backdrop{align-items:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:#000000a6;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1000}.explore-modal-content{background:#fff;background:var(--card-bg,#fff);border:1px solid #ff7e5f33;border-radius:28px;border-radius:var(--radius-xl);box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:85vh;max-width:900px;overflow:hidden;width:100%}.app.dark .explore-modal-content{background:#1a1c23;border-color:#ffffff1a;color:#fff}.explore-modal-header{align-items:flex-start;border-bottom:1px solid #00000014;display:flex;justify-content:space-between;padding:24px 28px 16px}.app.dark .explore-modal-header{border-bottom-color:#ffffff14}.modal-title-wrapper h2{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.4rem;font-weight:700;margin-bottom:4px}.modal-subtitle{font-size:.85rem;opacity:.65}.modal-close-btn{align-items:center;background:#0000000d;border:none;border-radius:50%;color:inherit;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.app.dark .modal-close-btn{background:#ffffff1a}.modal-close-btn:hover{background:#ff7e5f;background:var(--accent);color:#fff}.modal-search-wrapper{margin:16px 28px;position:relative}.modal-search-icon{left:14px;opacity:.5;position:absolute;top:50%;transform:translateY(-50%)}.modal-search-input{background:#00000008;border:1px solid #0000001f;border-radius:50px;color:inherit;font-size:.9rem;outline:none;padding:10px 38px;width:100%}.app.dark .modal-search-input{background:#ffffff0d;border-color:#ffffff1f}.modal-search-input:focus{border-color:#ff7e5f;border-color:var(--accent)}.modal-search-clear{background:none;border:none;cursor:pointer;opacity:.5;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.explore-modal-body{flex:1 1;overflow-y:auto;padding:0 28px 28px}.nav-link.nav-link-spin{font-weight:600;position:relative}.nav-link.nav-link-spin.active{background:#ff7e5f26;box-shadow:0 2px 8px #ff7e5f2e;color:#ff7e5f;color:var(--accent)}.spin-go-page{margin:0 auto;max-width:1380px;min-height:calc(100vh - 64px);min-height:calc(100vh - var(--header-height));padding:32px 24px 80px;position:relative}.spin-bg-plane{color:#ff7e5f;color:var(--accent);opacity:.18;pointer-events:none;position:absolute;right:6%;top:30px;transform:rotate(18deg);transition:opacity .3s cubic-bezier(.4,0,.2,1);transition:opacity var(--transition)}.app.dark .spin-bg-plane{opacity:.1}.spin-header{margin-bottom:36px;text-align:center}.spin-destiny-badge{align-items:center;background:#ff7e5f1a;border:1px solid #ff7e5f38;border-radius:9999px;color:#ff7e5f;color:var(--accent);display:inline-flex;font-size:.85rem;font-weight:600;gap:6px;letter-spacing:.2px;margin-bottom:12px;padding:6px 16px}.badge-sparkle{font-size:.95rem}.spin-title{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:2.85rem;font-weight:800;letter-spacing:-.5px;line-height:1.15;margin-bottom:10px}.spin-subtitle{font-size:1.05rem;line-height:1.5;margin:0 auto 16px;max-width:580px;opacity:.75}.spin-header-line{background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border-radius:3px;height:3px;margin:0 auto;width:48px}.spin-unified-layout{grid-gap:28px;align-items:start;display:grid;gap:28px;grid-template-columns:330px minmax(440px,1fr) 310px}.spin-options-card{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:var(--card-bg);border:1px solid var(--card-border);border-radius:20px;border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000014;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;padding:24px}.options-card-header{margin-bottom:18px}.options-title-row{align-items:flex-start;display:flex;gap:10px}.options-icon-pin{align-items:center;background:#ff7e5f1f;border-radius:8px;color:#ff7e5f;color:var(--accent);display:flex;flex-shrink:0;height:32px;justify-content:center;margin-top:2px;width:32px}.options-title{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.25rem;font-weight:700;line-height:1.2}.options-subtitle{font-size:.82rem;margin-top:3px;opacity:.65}.options-input-form{margin-bottom:18px}.input-group-custom{align-items:center;background:var(--input-bg);border:1px solid var(--input-border);border-radius:14px;border-radius:var(--radius-md);display:flex;gap:8px;padding:4px 6px 4px 12px;position:relative;transition:border-color .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);transition:border-color var(--transition),box-shadow var(--transition)}.input-group-custom:focus-within{border-color:#ff7e5f;border-color:var(--accent);box-shadow:0 0 0 3px #ff7e5f26}.input-icon{align-items:center;color:var(--muted);display:flex}.options-text-input{background:#0000;border:none;color:inherit;flex:1 1;font-size:.88rem;min-width:0;outline:none}.options-text-input::placeholder{color:var(--muted);font-size:.82rem}.options-add-btn{align-items:center;background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;gap:4px;padding:8px 14px;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1);transition:transform var(--transition),opacity var(--transition);white-space:nowrap}.options-add-btn:hover:not(:disabled){transform:translateY(-1px)}.options-add-btn:disabled{cursor:not-allowed;opacity:.5}.options-category-picker{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.category-picker-label{color:var(--muted);font-size:.75rem;font-weight:600}.category-pill{background:var(--surface-2);border:1px solid var(--card-border);border-radius:9999px;color:inherit;cursor:pointer;font-size:.72rem;font-weight:500;opacity:.75;padding:3px 9px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.category-pill:hover{border-color:#ff7e5f;border-color:var(--accent);opacity:1}.category-pill.active{background:#ff7e5f26;border-color:#ff7e5f59;color:#ff7e5f;color:var(--accent);font-weight:600;opacity:1}.options-list-container{margin-bottom:16px;max-height:320px;overflow-y:auto;padding-right:4px}.options-list-container::-webkit-scrollbar{width:5px}.options-list-container::-webkit-scrollbar-thumb{background:var(--card-border);border-radius:4px}.options-empty-state{color:var(--muted);padding:32px 16px;text-align:center}.empty-state-icon{color:#ff7e5f;color:var(--accent);display:inline-flex;margin-bottom:8px;opacity:.7}.options-empty-state p{color:inherit;font-size:.95rem;font-weight:600;margin-bottom:4px}.options-empty-state span{display:block;font-size:.8rem;line-height:1.4}.options-list-items{display:flex;flex-direction:column;gap:8px}.option-row{align-items:center;background:var(--surface);border:1px solid var(--card-border);border-radius:8px;border-radius:var(--radius-sm);display:flex;gap:8px;padding:8px 12px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.option-row:hover{border-color:var(--card-hover-border);box-shadow:0 2px 8px #00000014;box-shadow:var(--shadow-sm)}.option-row.dragging{border-style:dashed;opacity:.4}.drag-handle{align-items:center;color:var(--muted);cursor:grab;display:flex}.option-name{flex:1 1;font-size:.88rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.option-tag-badge{background:var(--surface-2);border-radius:4px;color:var(--muted);font-size:.68rem;font-weight:600;letter-spacing:.2px;padding:2px 7px}.option-remove-btn{align-items:center;background:none;border:none;border-radius:4px;color:var(--muted);cursor:pointer;display:flex;padding:2px 4px;transition:color .3s cubic-bezier(.4,0,.2,1),background .3s cubic-bezier(.4,0,.2,1);transition:color var(--transition),background var(--transition)}.option-remove-btn:hover:not(:disabled){background:#e74c3c1a;color:#e74c3c}.options-card-footer{align-items:center;border-top:1px solid var(--card-border);display:flex;justify-content:space-between;margin-top:auto;padding-top:14px}.options-clear-btn,.options-reset-btn{align-items:center;background:none;border:none;border-radius:8px;border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:500;gap:6px;padding:4px 8px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.options-clear-btn:hover:not(:disabled){background:#e74c3c14;color:#e74c3c}.options-reset-btn:hover:not(:disabled){background:#ff7e5f14;color:#ff7e5f;color:var(--accent)}.options-clear-btn:disabled,.options-reset-btn:disabled{cursor:not-allowed;opacity:.4}.spin-center-column{display:flex;flex-direction:column}.spin-wheel-card{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:var(--card-bg);border:1px solid var(--card-border);border-radius:20px;border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000014;box-shadow:var(--shadow-sm);flex-direction:column;padding:32px 28px}.spin-wheel-card,.spin-wheel-wrapper{align-items:center;display:flex;position:relative}.spin-wheel-wrapper{aspect-ratio:1;justify-content:center;max-width:420px;width:100%}.wheel-pointer-container{left:50%;pointer-events:none;position:absolute;top:-8px;transform:translateX(-50%);z-index:15}.wheel-pointer-pin{align-items:center;background:linear-gradient(135deg,#ff7e5f,#ff5a36);border-radius:50% 50% 50% 50%/60% 60% 40% 40%;box-shadow:0 4px 12px #ff5a3673;-webkit-clip-path:polygon(50% 100%,0 36%,0 20%,20% 0,80% 0,100% 20%,100% 36%);clip-path:polygon(50% 100%,0 36%,0 20%,20% 0,80% 0,100% 20%,100% 36%);display:flex;height:40px;justify-content:center;padding-bottom:10px;position:relative;width:32px}.pointer-dot{background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000040;height:9px;width:9px}.spin-wheel-frame{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.spin-wheel-svg{filter:drop-shadow(0 10px 30px rgba(0,0,0,.12));height:100%;-webkit-user-select:none;user-select:none;width:100%}.wheel-outer-rim{fill:none;stroke:#fff;stroke-width:8;opacity:.95}.app.dark .wheel-outer-rim{stroke:#252b3b}.slice-path{transition:opacity .2s ease}.wheel-slice.winning-slice .slice-path{filter:brightness(1.08)}.slice-label{pointer-events:none;text-shadow:0 1px 2px #fff9;-webkit-user-select:none;user-select:none}.app.dark .slice-label{text-shadow:0 1px 3px #0000004d}.wheel-center-hub{align-items:center;background:#fff;border:4px solid #fff;border-radius:50%;box-shadow:0 4px 20px #00000026,0 0 0 1px #0000000d;cursor:pointer;display:flex;height:84px;justify-content:center;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease;width:84px;z-index:10}.app.dark .wheel-center-hub{background:#1e293b;border-color:#334155;box-shadow:0 4px 20px #0006,0 0 0 1px #ffffff1a}.wheel-center-hub:hover:not(:disabled){box-shadow:0 8px 25px #ff7e5f59;transform:translate(-50%,-50%) scale(1.08)}.wheel-center-hub.disabled{cursor:not-allowed;opacity:.6}.hub-inner{align-items:center;display:flex;flex-direction:column;gap:2px;justify-content:center;line-height:1}.hub-icon{color:#ff7e5f;color:var(--accent)}.hub-text{color:#1e293b;font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:.85rem;font-weight:800;letter-spacing:1.2px}.app.dark .hub-text{color:#f1f5f9}.wheel-status-hint{color:var(--muted);font-size:.88rem;margin-top:14px;text-align:center}.wheel-status-hint.warning{color:#f59e0b;font-weight:500}.spin-controls-row{align-items:center;display:flex;gap:14px;justify-content:center;margin-top:24px;width:100%}.spin-action-btn{align-items:center;border:none;border-radius:9999px;cursor:pointer;display:inline-flex;font-family:Outfit,sans-serif;font-family:var(--font-display);font-weight:700;gap:8px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.spin-action-btn.primary{background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);box-shadow:0 4px 18px #ff7e5f59;color:#fff;font-size:1.05rem;padding:13px 40px}.spin-action-btn.primary:hover:not(:disabled){box-shadow:0 6px 24px #ff7e5f73;transform:translateY(-2px)}.spin-action-btn.secondary{background:var(--surface-2);border:1px solid var(--card-border);color:inherit;font-size:.95rem;padding:13px 26px}.spin-action-btn.secondary:hover:not(:disabled){background:var(--card-bg);border-color:#ff7e5f;border-color:var(--accent)}.spin-action-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.spin-rotate-anim{animation:spinRotate 1s linear infinite}@keyframes spinRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spin-result-container{margin-top:24px;min-height:80px;width:100%}.spin-in-progress-badge{align-items:center;background:#ff7e5f14;border:1px solid #ff7e5f33;border-radius:14px;border-radius:var(--radius-md);color:#ff7e5f;color:var(--accent);display:flex;font-size:.92rem;font-weight:600;gap:10px;justify-content:center;padding:14px 20px}.dot-pulse{animation:pulseDot 1.2s ease-in-out infinite;background:#ff7e5f;background:var(--accent);border-radius:50%;height:10px;width:10px}@keyframes pulseDot{0%,to{opacity:.6;transform:scale(.8)}50%{opacity:1;transform:scale(1.3)}}.spin-ready-hint{background:var(--surface-2);border:1px dashed var(--card-border);border-radius:14px;border-radius:var(--radius-md);color:var(--muted);display:flex;font-size:.88rem;gap:10px;padding:14px 20px;text-align:center}.ready-hint-icon,.spin-ready-hint{align-items:center;justify-content:center}.ready-hint-icon{background:#ff7e5f1f;border:1px solid #ff7e5f40;border-radius:50%;box-shadow:0 2px 6px #ff7e5f26;color:#ff7e5f;color:var(--accent);display:inline-flex;flex-shrink:0;height:32px;width:32px}.spin-winner-card{background:var(--surface);border:1px solid #ff7e5f40;border-radius:20px;border-radius:var(--radius-lg);box-shadow:0 10px 30px #ff7e5f1f;padding:24px;text-align:center}@keyframes resultAppear{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.animate-result-appear{animation:resultAppear .45s cubic-bezier(.16,1,.3,1) forwards}.winner-celebration-head{align-items:center;display:flex;gap:8px;justify-content:center;margin-bottom:6px}.winner-party-emoji{font-size:1.4rem}.winner-head-label{color:var(--muted);font-size:.88rem;font-weight:600;letter-spacing:.8px;text-transform:uppercase}.winner-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:2.1rem;font-weight:800;line-height:1.2;margin-bottom:6px}.winner-subtitle{font-size:.95rem;margin:0 auto 16px;max-width:500px;opacity:.8}.matched-spot-preview{align-items:center;background:var(--surface-2);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);display:flex;gap:16px;margin-bottom:20px;padding:12px;text-align:left}.matched-spot-img-wrap{border-radius:8px;border-radius:var(--radius-sm);flex-shrink:0;height:90px;overflow:hidden;position:relative;width:120px}.matched-spot-img{height:100%;object-fit:cover;width:100%}.matched-spot-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000a6;font-size:.65rem;left:6px;top:6px}.matched-spot-badge,.matched-spot-rating{border-radius:4px;color:#fff;font-weight:700;padding:2px 6px;position:absolute}.matched-spot-rating{align-items:center;background:#000000bf;bottom:6px;display:flex;font-size:.68rem;gap:3px;right:6px}.matched-spot-info{flex:1 1;min-width:0}.matched-spot-name{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.05rem;font-weight:700;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.matched-spot-location{align-items:center;color:#ff7e5f;color:var(--accent);display:flex;font-size:.8rem;gap:4px;margin-bottom:4px}.matched-spot-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:.78rem;line-height:1.35;opacity:.7;overflow:hidden}.winner-actions-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.winner-explore-btn{align-items:center;background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border:none;border-radius:9999px;box-shadow:0 4px 14px #ff7e5f4d;color:#fff;cursor:pointer;display:inline-flex;font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:.92rem;font-weight:700;gap:8px;padding:10px 24px;transition:transform .3s cubic-bezier(.4,0,.2,1);transition:transform var(--transition)}.winner-explore-btn:hover{transform:translateY(-2px)}.winner-spin-again-btn{align-items:center;background:var(--surface-2);border:1px solid var(--card-border);border-radius:9999px;color:inherit;cursor:pointer;display:inline-flex;font-size:.88rem;font-weight:600;gap:6px;padding:10px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.winner-spin-again-btn:hover{border-color:#ff7e5f;border-color:var(--accent);color:#ff7e5f;color:var(--accent)}.spin-helpful-card{display:flex;flex-direction:column;gap:20px}.travel-quote-box{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:var(--card-bg);border:1px solid var(--card-border);border-radius:20px;border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000014;box-shadow:var(--shadow-sm);padding:24px;position:relative}.quote-mark{color:#ff7e5f;color:var(--accent);display:block;font-family:Georgia,serif;font-size:3rem;line-height:1;margin-bottom:-10px;opacity:.45}.quote-intro{color:var(--muted);font-size:.85rem;font-weight:500;margin-bottom:2px}.quote-main{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.15rem;font-weight:700;line-height:1.35;margin-bottom:14px}.quote-bar{background:#ff7e5f;background:var(--accent);border-radius:2px;height:3px;width:36px}.travel-signpost-widget{align-items:center;background:var(--card-bg);border:1px solid var(--card-border);border-radius:20px;border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:10px;overflow:hidden;padding:24px 20px;position:relative}.signpost-wood-pole{background:linear-gradient(90deg,#8b5a2b,#a06b3a,#73451e);border-radius:4px;bottom:16px;position:absolute;top:16px;width:14px;z-index:1}.signpost-board{background:linear-gradient(180deg,#f5d7b5,#e6be94);border:1.5px solid #a8794f;box-shadow:0 4px 10px #0000001a;color:#3d2314;font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:.78rem;font-weight:800;letter-spacing:1px;padding:8px 12px;position:relative;text-align:center;transition:transform .3s cubic-bezier(.4,0,.2,1);transition:transform var(--transition);width:82%;z-index:2}.board-top{border-radius:6px 14px 14px 6px;transform:rotate(-3deg)}.board-mid{border-radius:14px 6px 6px 14px;transform:rotate(2.5deg)}.board-bot{border-radius:8px 14px 14px 8px;transform:rotate(-1.5deg)}.signpost-board:hover{transform:scale(1.04) rotate(0deg)}.spin-history-box{background:var(--card-bg);border:1px solid var(--card-border);border-radius:20px;border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000014;box-shadow:var(--shadow-sm);padding:20px}.history-title{align-items:center;color:#ff7e5f;color:var(--accent);display:flex;font-size:.88rem;font-weight:700;gap:6px;margin-bottom:10px}.history-tags{display:flex;flex-wrap:wrap;gap:6px}.history-tag{background:var(--surface-2);border:1px solid var(--card-border);border-radius:9999px;font-size:.78rem;font-weight:600;padding:4px 10px}.spin-tips-box{background:var(--card-bg);border:1px solid var(--card-border);border-radius:20px;border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000014;box-shadow:var(--shadow-sm);padding:20px}.tips-title{font-size:.88rem;font-weight:700;margin-bottom:8px}.tips-list{display:flex;flex-direction:column;gap:8px;list-style:none}.tips-list li{font-size:.8rem;line-height:1.4;opacity:.75;padding-left:14px;position:relative}.tips-list li:before{color:#ff7e5f;color:var(--accent);content:"•";font-weight:700;left:0;position:absolute}@media (max-width:1180px){.spin-unified-layout{gap:20px;grid-template-columns:300px minmax(380px,1fr) 280px}}@media (max-width:992px){.spin-unified-layout{grid-template-columns:1fr 1fr}.spin-center-column{grid-column:1/-1;order:-1}.spin-helpful-card{grid-column:2}.spin-options-card{grid-column:1}}@media (max-width:768px){.spin-go-page{padding:20px 14px 60px}.spin-title{font-size:2.2rem}.spin-subtitle{font-size:.92rem}.spin-unified-layout{display:flex;flex-direction:column;gap:20px}.spin-center-column{order:0;width:100%}.spin-options-card{order:1;width:100%}.spin-helpful-card{order:2;width:100%}.spin-wheel-card{padding:24px 16px}.spin-wheel-wrapper{max-width:320px}.wheel-center-hub{height:68px;width:68px}.hub-text{font-size:.72rem}.matched-spot-preview{align-items:flex-start;flex-direction:column}.matched-spot-img-wrap{height:140px;width:100%}}.split-page{min-height:calc(100vh - 64px);min-height:calc(100vh - var(--header-height));overflow-x:hidden;padding-bottom:60px;padding-top:88px;padding-top:calc(var(--header-height) + 24px);position:relative}.split-bg-decor{color:#ff7e5f;color:var(--accent);opacity:.04;pointer-events:none;position:absolute;z-index:0}.app.dark .split-bg-decor{opacity:.07}.split-bg-airplane{right:5%;top:90px;transform:rotate(-15deg)}.split-bg-globe{bottom:80px;left:-40px}.split-header{margin:0 auto 32px;max-width:800px;padding:0 20px;position:relative;text-align:center;z-index:1}.split-header-badge{align-items:center;background:#ff7e5f1f;border:1px solid #ff7e5f40;border-radius:999px;color:#ff7e5f;color:var(--accent);display:inline-flex;font-size:.82rem;font-weight:600;gap:6px;letter-spacing:.02em;margin-bottom:12px;padding:6px 14px}.split-title{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:2.6rem;font-weight:800;letter-spacing:-.02em;line-height:1.15;margin-bottom:8px}.split-subtitle{color:var(--muted);font-size:1.08rem;font-weight:400;margin-bottom:20px}.split-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:20px}.split-header-btn{align-items:center;border:1px solid #0000;border-radius:14px;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:600;gap:7px;padding:8px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.split-header-btn.secondary{background:var(--surface);border-color:var(--card-border);box-shadow:0 2px 8px #00000014;box-shadow:var(--shadow-sm);color:inherit}.split-header-btn.secondary:hover{border-color:#ff7e5f59;color:#ff7e5f;color:var(--accent);transform:translateY(-1px)}.split-header-btn.danger{background:#0000;border-color:#ef444440;color:#ef4444}.split-header-btn.danger:hover{background:#ef444414;border-color:#ef444466}.split-header-divider{background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border-radius:999px;height:3px;margin:0 auto;width:60px}.split-layout-grid-v2{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 auto;max-width:1420px;padding:0 24px;position:relative;z-index:1}.cell-people{grid-column:1;grid-row:1}.cell-expense{grid-column:2;grid-row:1}.cell-settlement{grid-column:3;grid-row:1}.cell-list{grid-column:1/span 2;grid-row:2}.cell-balance{grid-column:3;grid-row:2}.split-card{background:var(--surface);border:1px solid var(--card-border);border-radius:20px;border-radius:var(--radius-lg);box-shadow:0 4px 20px #0000000a;padding:24px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.app.light .split-card{background:#fff;box-shadow:0 4px 24px #0f172a0f}.app.dark .split-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1e293bb3;border-color:#ffffff14;box-shadow:0 6px 28px #00000040}.split-card:hover{box-shadow:0 8px 30px #ff7e5f14}.split-card-header{align-items:flex-start;border-bottom:1px solid var(--card-border);display:flex;gap:12px;justify-content:space-between;margin-bottom:20px;padding-bottom:14px}.split-card-title-row{align-items:center;display:flex;gap:12px}.split-step-badge{align-items:center;background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border-radius:50%;box-shadow:0 2px 8px #ff7e5f59;color:#fff;display:inline-flex;flex-shrink:0;font-size:.82rem;font-weight:700;height:28px;justify-content:center;width:28px}.split-card-title{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.15rem;font-weight:700;line-height:1.25}.split-card-subtitle{color:var(--muted);font-size:.8rem;margin-top:2px}.split-people-count-pill{align-items:center;background:var(--surface-2);border:1px solid var(--card-border);border-radius:999px;color:var(--muted);display:inline-flex;font-size:.75rem;font-weight:600;gap:5px;padding:4px 10px}.split-people-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.split-person-chip{align-items:center;background:var(--surface-2);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);display:flex;gap:10px;padding:8px 12px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.split-person-chip.is-you{background:#ff7e5f14;border-color:#ff7e5f40}.split-person-avatar{align-items:center;background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.82rem;font-weight:700;height:28px;justify-content:center;width:28px}.split-person-name{align-items:center;display:flex;flex:1 1;font-size:.9rem;font-weight:600;gap:8px}.you-tag{background:#ff7e5f;background:var(--accent);border-radius:999px;color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.04em;padding:2px 7px;text-transform:uppercase}.split-remove-person-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--muted);cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.split-remove-person-btn:hover{background:#ef44441f;color:#ef4444}.split-warning-banner{align-items:center;background:#f59e0b1a;border:1px solid #f59e0b40;border-radius:14px;border-radius:var(--radius-md);color:#d97706;display:flex;font-size:.8rem;font-weight:500;gap:8px;margin-bottom:14px;padding:9px 12px}.app.dark .split-warning-banner{color:#fbbf24}.split-add-person-btn{align-items:center;background:var(--surface-2);border:1px dashed var(--card-border);border-radius:14px;border-radius:var(--radius-md);color:#ff7e5f;color:var(--accent);cursor:pointer;display:flex;font-size:.85rem;font-weight:600;gap:7px;justify-content:center;padding:10px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:100%}.split-add-person-btn:hover{background:#ff7e5f14;border-color:#ff7e5f;border-color:var(--accent);transform:translateY(-1px)}.split-inline-form{display:flex;flex-direction:column;gap:6px}.split-input-wrap{align-items:center;display:flex;gap:6px}.split-text-input{background:var(--surface-2);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);color:inherit;flex:1 1;font-size:.88rem;outline:none;padding:9px 13px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.split-text-input:focus{border-color:#ff7e5f;border-color:var(--accent);box-shadow:0 0 0 3px #ff7e5f26}.split-text-input.has-error{border-color:#ef4444}.split-submit-btn{align-items:center;background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border:none;border-radius:14px;border-radius:var(--radius-md);box-shadow:0 2px 8px #ff7e5f40;color:#fff;cursor:pointer;display:flex;font-size:.84rem;font-weight:600;gap:4px;padding:9px 14px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.split-submit-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5}.split-submit-btn:not(:disabled):hover{box-shadow:0 4px 12px #ff7e5f59;transform:translateY(-1px)}.split-cancel-btn{align-items:center;background:#0000;border:none;border-radius:14px;border-radius:var(--radius-md);color:var(--muted);cursor:pointer;display:flex;justify-content:center;padding:8px}.split-cancel-btn:hover{background:var(--surface-2);color:inherit}.split-field-error{color:#ef4444;font-size:.76rem;font-weight:500;padding-left:2px}.split-card.add-expense-card.is-disabled{opacity:.75}.split-disabled-notice{align-items:center;color:var(--muted);display:flex;flex-direction:column;font-size:.88rem;gap:12px;padding:24px 16px;text-align:center}.split-expense-form{display:flex;flex-direction:column;gap:16px}.split-field-group{display:flex;flex-direction:column;gap:6px}.split-field-label{color:var(--muted);font-size:.8rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.split-label-with-actions{align-items:center;display:flex;justify-content:space-between}.split-quick-selection{align-items:center;display:flex;font-size:.75rem;gap:6px}.split-link-btn{background:none;border:none;color:#ff7e5f;color:var(--accent);cursor:pointer;font-size:.75rem;font-weight:600;padding:0}.split-link-btn:hover{text-decoration:underline}.split-dot-sep{color:var(--muted);opacity:.5}.split-category-row{display:flex;flex-direction:column;gap:6px}.split-category-chips{display:flex;flex-wrap:wrap;gap:6px}.split-cat-btn{align-items:center;background:var(--surface-2);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);color:inherit;cursor:pointer;display:inline-flex;font-size:.78rem;font-weight:500;gap:5px;padding:5px 10px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.split-cat-btn:hover{border-color:#ff7e5f66}.split-cat-btn.active{background:#ff7e5f1f;border-color:#ff7e5f;border-color:var(--accent);color:#ff7e5f;color:var(--accent);font-weight:600}.cat-emoji{font-size:.95rem}.split-form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.split-select-wrap{position:relative}.split-select{background:var(--surface-2);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);color:inherit;cursor:pointer;font-size:.88rem;outline:none;padding:9px 12px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:100%}.split-select:focus{border-color:#ff7e5f;border-color:var(--accent)}.split-amount-input-wrap{align-items:center;display:flex;position:relative}.split-currency-symbol{color:#ff7e5f;color:var(--accent);font-size:.95rem;font-weight:700;left:12px;pointer-events:none;position:absolute}.split-amount-input{background:var(--surface-2);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);color:inherit;font-size:.95rem;font-weight:600;outline:none;padding:9px 12px 9px 28px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:100%}.split-amount-input:focus{border-color:#ff7e5f;border-color:var(--accent);box-shadow:0 0 0 3px #ff7e5f26}.split-participants-selector{display:flex;flex-wrap:wrap;gap:6px}.split-participant-pill{align-items:center;background:var(--surface-2);border:1px solid var(--card-border);border-radius:999px;color:inherit;cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:500;gap:6px;padding:6px 12px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.split-participant-pill:hover{border-color:#ff7e5f66}.split-participant-pill.selected{background:#ff7e5f1f;border-color:#ff7e5f;border-color:var(--accent);color:#ff7e5f;color:var(--accent);font-weight:600}.participant-check{align-items:center;display:inline-flex;font-size:.8rem;justify-content:center}.pill-you{background:#ff7e5f;background:var(--accent);border-radius:999px;color:#fff;font-size:.65rem;font-weight:700;margin-left:2px;padding:1px 5px}.split-live-share-hint{align-items:center;background:#10b98114;border:1px solid #10b98133;border-radius:8px;border-radius:var(--radius-sm);color:#059669;display:inline-flex;font-size:.82rem;gap:6px;margin-top:4px;padding:6px 12px}.app.dark .split-live-share-hint{color:#34d399}.split-error-banner{align-items:center;background:#ef444414;border:1px solid #ef444440;border-radius:14px;border-radius:var(--radius-md);color:#ef4444;display:flex;font-size:.8rem;gap:8px;padding:8px 12px}.split-add-expense-btn{align-items:center;background:linear-gradient(135deg,#ff7e5f,#feb47b);background:var(--accent-gradient);border:none;border-radius:14px;border-radius:var(--radius-md);box-shadow:0 4px 14px #ff7e5f4d;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:700;gap:8px;justify-content:center;margin-top:4px;padding:12px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition);width:100%}.split-add-expense-btn:hover{box-shadow:0 6px 20px #ff7e5f66;transform:translateY(-2px)}.split-total-badge{align-items:flex-end;display:flex;flex-direction:column}.split-total-badge .total-label{color:var(--muted);font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.split-total-badge .total-value{color:#ff7e5f;color:var(--accent);font-size:1.15rem;font-weight:800}.split-empty-expenses{align-items:center;display:flex;flex-direction:column;padding:48px 20px;text-align:center}.empty-icon-wrap{align-items:center;background:#ff7e5f1a;border-radius:50%;color:#ff7e5f;color:var(--accent);display:flex;height:56px;justify-content:center;margin-bottom:16px;width:56px}.empty-icon-wrap.subtle{background:var(--surface-2);color:var(--muted)}.empty-title{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.1rem;font-weight:700;margin-bottom:6px}.empty-desc{color:var(--muted);font-size:.85rem;line-height:1.45;max-width:280px}.split-expense-items-scroll{display:flex;flex-direction:column;gap:12px;max-height:620px;overflow-y:auto;padding-right:4px}.split-expense-item{align-items:center;background:var(--surface-2);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);display:flex;gap:14px;padding:14px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.split-expense-item:hover{border-color:#ff7e5f40;box-shadow:0 4px 14px #0000000a}.expense-icon-squircle{align-items:center;border-radius:12px;box-shadow:0 2px 8px #0000000a;display:flex;flex-shrink:0;justify-content:center;transition:transform .2s ease,box-shadow .2s ease}.app.dark .expense-icon-squircle{box-shadow:0 2px 10px #00000040}.split-expense-item:hover .expense-icon-squircle{transform:scale(1.05)}.expense-details{flex:1 1;min-width:0}.expense-top-line{align-items:baseline;display:flex;gap:8px;justify-content:space-between;margin-bottom:4px}.expense-desc{font-size:.95rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-amount{color:#ff7e5f;color:var(--accent);font-size:1.05rem;font-weight:800;white-space:nowrap}.expense-meta-line{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;font-size:.78rem;gap:6px}.expense-paid-by strong{color:inherit}.expense-meta-sep{opacity:.4}.expense-participant-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.participant-mini-chip{background:var(--surface);border:1px solid var(--card-border);border-radius:999px;color:var(--muted);font-size:.68rem;padding:1px 7px}.expense-delete-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--muted);cursor:pointer;display:flex;justify-content:center;opacity:.6;padding:8px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.split-expense-item:hover .expense-delete-btn{opacity:1}.expense-delete-btn:hover{background:#ef44441f;color:#ef4444}.split-tx-count-pill{background:#10b9811f;border:1px solid #10b98140;border-radius:999px;color:#059669;font-size:.75rem;font-weight:700;padding:4px 10px}.app.dark .split-tx-count-pill{color:#34d399}.settlement-empty-state{align-items:center;display:flex;flex-direction:column;padding:36px 16px;text-align:center}.settlement-all-settled-card{background:#10b98114;border:1px solid #10b98140;border-radius:14px;border-radius:var(--radius-md);padding:36px 20px;text-align:center}.settled-icon-circle{align-items:center;background:#10b981;border-radius:50%;box-shadow:0 4px 14px #10b98159;color:#fff;display:flex;height:52px;justify-content:center;margin:0 auto 14px;width:52px}.settled-title{color:#059669;font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.25rem;font-weight:800;margin-bottom:4px}.app.dark .settled-title{color:#34d399}.settled-desc{color:var(--muted);font-size:.85rem}.settlement-transactions-list{display:flex;flex-direction:column;gap:12px}.settlement-tx-row{align-items:center;background:var(--surface-2);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);display:flex;gap:12px;justify-content:space-between;padding:14px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.settlement-tx-row:hover{border-color:#ff7e5f4d;box-shadow:0 4px 14px #0000000a;transform:translateY(-1px)}.settlement-tx-flow{flex:1 1;gap:10px;min-width:0}.settlement-tx-flow,.tx-party{align-items:center;display:flex}.tx-party{gap:8px}.tx-avatar{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:.82rem;font-weight:700;height:32px;justify-content:center;width:32px}.debtor-avatar{background:#f9731626;border:1px solid #f973164d;color:#ea580c}.creditor-avatar{background:#10b98126;border:1px solid #10b9814d;color:#059669}.app.dark .debtor-avatar{color:#fb923c}.app.dark .creditor-avatar{color:#34d399}.tx-party-meta{display:flex;flex-direction:column}.tx-name{font-size:.88rem;font-weight:700;line-height:1.2}.tx-role{font-size:.68rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.tx-role.owes{color:#ea580c}.tx-role.gets{color:#059669}.app.dark .tx-role.owes{color:#fb923c}.app.dark .tx-role.gets{color:#34d399}.tx-direction-indicator{align-items:center;display:flex;margin:0 4px}.tx-arrow-icon,.tx-direction-indicator{color:#ff7e5f;color:var(--accent)}.settlement-amount-box{background:var(--surface);border:1px solid var(--card-border);border-radius:8px;border-radius:var(--radius-sm);box-shadow:0 2px 8px #00000014;box-shadow:var(--shadow-sm);flex-shrink:0;padding:6px 12px}.tx-amount{color:#ff7e5f;color:var(--accent);font-size:.98rem;font-weight:800;white-space:nowrap}.settlement-footnote{align-items:center;color:var(--muted);display:flex;font-size:.75rem;gap:6px;margin-top:4px;padding:4px 6px}.split-stats-bar{align-items:center;background:var(--surface-2);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);display:flex;justify-content:space-between;margin-bottom:16px;padding:12px 16px}.split-stat-item{align-items:center;display:flex;flex-direction:column;text-align:center}.split-stat-item .stat-label{color:var(--muted);font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.split-stat-item .stat-val{color:inherit;font-size:.95rem;font-weight:800;margin-top:2px}.split-stat-divider{background:var(--card-border);height:24px;width:1px}.balance-persons-list{display:flex;flex-direction:column;gap:8px}.balance-person-row{align-items:center;background:var(--surface-2);border:1px solid var(--card-border);border-radius:14px;border-radius:var(--radius-md);display:flex;gap:12px;justify-content:space-between;padding:10px 14px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.balance-person-left{align-items:center;display:flex;gap:10px}.balance-person-avatar{align-items:center;background:var(--surface);border:1px solid var(--card-border);border-radius:50%;color:#ff7e5f;color:var(--accent);display:flex;font-size:.82rem;font-weight:700;height:32px;justify-content:center;width:32px}.balance-name-wrap{display:flex;flex-direction:column}.balance-name{align-items:center;display:flex;font-size:.88rem;font-weight:700;gap:6px}.balance-sub-details{align-items:center;color:var(--muted);display:flex;font-size:.72rem;gap:4px}.sub-sep{opacity:.4}.balance-badge{align-items:flex-end;border-radius:8px;border-radius:var(--radius-sm);display:flex;flex-direction:column;min-width:96px;padding:4px 10px}.balance-badge.receives{background:#10b9811f;border:1px solid #10b98140;color:#059669}.balance-badge.owes{background:#f973161f;border:1px solid #f9731640;color:#ea580c}.balance-badge.settled{background:var(--surface);border:1px solid var(--card-border);color:var(--muted)}.app.dark .balance-badge.receives{color:#34d399}.app.dark .balance-badge.owes{color:#fb923c}.balance-badge .badge-text{font-size:.65rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.balance-badge .badge-amount{font-size:.88rem;font-weight:800}.split-modal-backdrop{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172aa6;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.split-modal-card{animation:scaleIn .2s cubic-bezier(.16,1,.3,1);background:var(--surface);border:1px solid var(--card-border);border-radius:20px;border-radius:var(--radius-lg);box-shadow:0 20px 50px #00000040;max-width:400px;padding:28px;text-align:center;width:100%}.split-modal-icon-wrap{align-items:center;background:#ef44441f;border-radius:50%;color:#ef4444;display:flex;height:52px;justify-content:center;margin:0 auto 16px;width:52px}.split-modal-title{font-family:Outfit,sans-serif;font-family:var(--font-display);font-size:1.25rem;font-weight:800;margin-bottom:8px}.split-modal-desc{color:var(--muted);font-size:.88rem;line-height:1.5;margin-bottom:24px}.split-modal-actions{align-items:center;display:flex;gap:12px;justify-content:center}.split-modal-btn{border:none;border-radius:14px;border-radius:var(--radius-md);cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition)}.split-modal-btn.cancel{background:var(--surface-2);border:1px solid var(--card-border);color:inherit}.split-modal-btn.cancel:hover{background:#0000000d}.split-modal-btn.confirm{background:#ef4444;box-shadow:0 2px 8px #ef44444d;color:#fff}.split-modal-btn.confirm:hover{background:#dc2626;transform:translateY(-1px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (max-width:1200px){.split-layout-grid-v2{gap:20px;grid-template-columns:1fr 1fr;padding:0 16px}.cell-people{grid-column:1;grid-row:1}.cell-expense{grid-column:2;grid-row:1}.cell-list{grid-column:1/span 2;grid-row:2}.cell-settlement{grid-column:1;grid-row:3}.cell-balance{grid-column:2;grid-row:3}}@media (max-width:768px){.split-layout-grid-v2{gap:18px;grid-template-columns:1fr;padding:0 12px}.cell-balance,.cell-expense,.cell-list,.cell-people,.cell-settlement{grid-column:1;grid-row:auto}.split-title{font-size:2rem}.split-subtitle{font-size:.95rem}.split-card{padding:18px 16px}.split-form-row{grid-template-columns:1fr}.settlement-tx-row{align-items:stretch;flex-direction:column;gap:10px}.settlement-amount-box{text-align:center}}
/*# sourceMappingURL=main.d708ce20.css.map*/