:root{color:#f6f7ff;background:#05060a;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;background:#05060a}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.page{position:relative;min-height:100vh;overflow:hidden;padding:28px 20px 58px;background:linear-gradient(180deg,#00000047,#000000d1),radial-gradient(circle at 72% 12%,rgba(18,223,210,.22),transparent 28%),radial-gradient(circle at 14% 78%,rgba(76,129,255,.18),transparent 34%),linear-gradient(135deg,#020307,#071016 45%,#020407);transition:background .24s ease,color .24s ease}.page:before,.page:after{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;content:""}.page:before{background:radial-gradient(circle at 54% 36%,rgba(255,226,159,.2) 0 2px,transparent 3px),radial-gradient(circle at 60% 42%,rgba(255,255,255,.18) 0 1px,transparent 2px),radial-gradient(circle at 45% 58%,rgba(255,226,159,.16) 0 1px,transparent 2px),linear-gradient(113deg,transparent 20%,rgba(255,227,155,.26) 21%,transparent 22%),linear-gradient(28deg,transparent 35%,rgba(255,255,255,.13) 36%,transparent 38%),linear-gradient(150deg,transparent 48%,rgba(21,255,239,.18) 49%,transparent 51%),linear-gradient(90deg,rgba(21,255,239,.032) 1px,transparent 1px),linear-gradient(0deg,rgba(119,78,255,.026) 1px,transparent 1px);background-size:360px 260px,300px 220px,420px 280px,auto,auto,auto,72px 72px,72px 72px;-webkit-mask-image:radial-gradient(circle at 50% 34%,black 0%,transparent 78%);mask-image:radial-gradient(circle at 50% 34%,black 0%,transparent 78%)}.page:after{background:linear-gradient(180deg,#0203070a,#020307c2),radial-gradient(circle at 78% 40%,rgba(21,255,239,.12),transparent 24%),linear-gradient(111deg,transparent 0 44%,rgba(255,255,255,.09) 46%,transparent 49%)}.city-map{position:absolute;top:34px;right:max(-70px,calc((100vw - 1180px)/2 - 56px));width:min(62vw,780px);aspect-ratio:1.45;border-radius:28px;opacity:.82;transform:rotate(-6deg);background:linear-gradient(0deg,rgba(21,255,239,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(21,255,239,.035) 1px,transparent 1px),linear-gradient(29deg,transparent 18%,rgba(21,255,239,.5) 19%,transparent 21%),linear-gradient(143deg,transparent 27%,rgba(53,112,255,.26) 28%,transparent 31%),linear-gradient(97deg,transparent 35%,rgba(119,78,255,.42) 36%,transparent 38%),linear-gradient(15deg,transparent 45%,rgba(21,255,239,.38) 46%,transparent 48%),linear-gradient(156deg,transparent 51%,rgba(255,255,255,.11) 52%,transparent 54%),radial-gradient(circle at 45% 52%,rgba(21,255,239,.2),transparent 36%),#020a0e99;background-size:48px 48px,48px 48px,auto,auto,auto,auto,auto,auto,auto;filter:blur(.1px);pointer-events:none}.city-map:before,.city-map:after{position:absolute;content:""}.city-map:before{top:10%;right:10%;bottom:10%;left:10%;border:1px solid rgba(70,255,236,.2);border-radius:50%;transform:rotate(18deg)}.city-map:after{top:48%;left:45%;width:12px;height:12px;border-radius:999px;background:#15ffef;box-shadow:0 0 0 8px #15ffef1a,0 0 34px #15ffefb3}.city-map span{position:absolute;top:43%;left:50%;color:#f6f7ff80;font-size:.88rem;font-weight:800;letter-spacing:0}.shell{position:relative;z-index:1;width:min(100%,1120px);margin:0 auto}.topline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:38px}.brand{position:relative;display:inline-flex;align-items:center;gap:9px;color:#f6f7ff;font-size:1rem;font-style:italic;font-weight:900;letter-spacing:0;text-shadow:0 0 18px rgba(21,255,239,.2),0 10px 30px rgba(0,0,0,.5);transform:skew(-7deg)}.brand:before{width:16px;height:16px;border:1px solid rgba(21,255,239,.72);border-radius:999px;box-shadow:0 0 14px #15ffef5c,inset 0 0 10px #774eff2e;content:""}.brand:after{position:absolute;left:-3px;width:23px;height:7px;border-top:1px solid rgba(139,92,246,.78);border-radius:50%;transform:rotate(-24deg);content:""}.hero{max-width:820px;margin-bottom:18px}.hero h1{max-width:720px;margin:0}.logo-title{position:relative;width:fit-content;color:#f4f7ff;font-size:clamp(3.25rem,8vw,6.4rem);font-style:italic;font-weight:950;letter-spacing:0;line-height:.88;text-transform:uppercase;transform:skew(-7deg);filter:drop-shadow(0 22px 56px rgba(0,0,0,.55))}.logo-title:before{position:absolute;right:-12%;bottom:12%;width:78%;height:37%;border:2px solid rgba(21,255,239,.24);border-left-color:transparent;border-bottom-color:#774eff57;border-radius:50%;transform:rotate(-11deg) skew(7deg);box-shadow:0 0 28px #15ffef1f,inset 0 0 28px #774eff14;content:""}.logo-title:after{position:absolute;top:51%;left:3%;width:86%;height:2px;background:linear-gradient(90deg,transparent,rgba(21,255,239,.8),transparent);opacity:.48;transform:skew(7deg);box-shadow:0 0 18px #15ffef47;content:""}.logo-line{position:relative;z-index:1;display:block;width:fit-content;background:linear-gradient(96deg,rgba(255,255,255,.8),transparent 18%,rgba(255,255,255,.9) 36%,transparent 52%),linear-gradient(180deg,#fff,#d9e7ef 24%,#f7f0dc 44%,#8d98a1 68%,#f3fbff),#f4f7ff;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.26);text-shadow:1px 2px 0 rgba(255,255,255,.18),-1px -1px 0 rgba(0,0,0,.5),0 3px 0 rgba(55,57,61,.5),0 0 22px rgba(21,255,239,.18),0 0 58px rgba(119,78,255,.2)}.logo-global{font-size:.92em;font-weight:780}.logo-pulse{margin-top:-.03em;padding-right:.24em;background:linear-gradient(105deg,rgba(255,255,255,.92),transparent 16%,rgba(255,255,255,.78) 30%,transparent 48%),linear-gradient(180deg,#fffef4,#d8d0bc,#fefbf0,#8d8f91,#f3fbff 76%,#7b848b);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:1.4px rgba(255,255,255,.32);text-shadow:1px 2px 0 rgba(255,255,255,.16),-1px -1px 0 rgba(0,0,0,.62),0 4px 0 rgba(58,59,62,.72),0 0 20px rgba(255,242,207,.22),0 0 58px rgba(21,255,239,.2)}.logo-pulse:after{position:absolute;right:-.05em;bottom:.11em;width:.18em;height:.18em;border-radius:999px;background:#15ffef;box-shadow:0 0 0 7px #15ffef14,0 0 26px #15ffefb8;content:""}.city-switcher{min-height:45px;display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(70,255,236,.22);border-radius:999px;padding:6px 7px 6px 15px;color:#f6f7ff;background:linear-gradient(180deg,#f6f7ff1c,#f6f7ff0b);box-shadow:0 18px 52px #00000057,0 0 28px #46ffec0f,inset 0 1px #ffffff2e;cursor:pointer;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.city-switcher:hover{border-color:#46ffec7a;box-shadow:0 20px 54px #00000057,0 0 28px #46ffec29;transform:translateY(-1px)}.city-switcher-label{color:#f6f7ff8c;font-size:.76rem;font-weight:820;text-transform:uppercase}.city-switcher-caret{color:#f6f7ffb8;font-size:.86em}.city-switcher-name{color:#f6f7ff;font-weight:880}.city-switcher-action{border-radius:999px;padding:8px 11px;color:#05060a;background:linear-gradient(135deg,#15ffef,#e7f7ff 54%,#8b5cf6);box-shadow:inset 0 1px #ffffffd1,0 0 22px #46ffec2e;font-size:.82rem;font-weight:860}.search-card,.loading-card,.answer-card,.result-card,.error-card{border:1px solid rgba(21,255,239,.22);border-radius:8px;background:linear-gradient(180deg,#0a1218e0,#02050be6),#02040ad1;box-shadow:0 0 0 1px #774eff24,0 30px 92px #000000ad,0 0 58px #15ffef14,inset 0 1px #ffffff14;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.search-input-shell{position:relative}.search-input-shell:before{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:13px;background:linear-gradient(135deg,#55c6ffe0,#15ffef75,#5282ffb8);opacity:.72;filter:blur(8px);content:""}.search-row input{position:relative;z-index:1;border:1px solid rgba(21,255,239,.24);border-radius:12px;color:#f6f7ff;background:linear-gradient(180deg,#5b91b73d,#0b192dbd),#0c172a94;box-shadow:inset 0 1px #ffffff52,inset 0 -18px 42px #00000042,0 0 38px #4ab2ff33;-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.search-row input::placeholder{color:#f6f7ff66}.search-row input:focus{border-color:#77dafff2;background:linear-gradient(180deg,#70a9cf4d,#0c1a2fc7),#02050ce0;box-shadow:0 0 0 4px #4fbeff1c,0 0 44px #4fbeff57,inset 0 0 0 1px #ffffff2e}.search-icon{position:absolute;z-index:2;right:20px;top:50%;width:24px;height:24px;border:3px solid rgba(224,242,255,.8);border-radius:999px;transform:translateY(-50%);pointer-events:none;filter:drop-shadow(0 0 10px rgba(92,192,255,.58))}.search-icon:after{position:absolute;right:-8px;bottom:-6px;width:11px;height:3px;border-radius:999px;background:#e0f2ffcc;transform:rotate(45deg);content:""}.search-card{position:relative;padding:18px;overflow:hidden}.search-card:before{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(21,255,239,.08),transparent),radial-gradient(circle at 18% 0%,rgba(21,255,239,.12),transparent 34%),radial-gradient(circle at 92% 16%,rgba(119,78,255,.16),transparent 32%);pointer-events:none;content:""}.search-card>*{position:relative;z-index:1}.search-form{margin:0}.search-row{display:grid;gap:14px}.search-row input{width:100%;min-height:62px;padding:0 60px 0 22px;font-size:1.06rem}.action-buttons{display:grid;gap:12px}.action-count-2{grid-template-columns:1fr 1fr}.action-count-3{grid-template-columns:repeat(3,minmax(0,1fr))}.action-buttons button{min-height:64px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:10px;padding:0 24px;font-size:1.04rem;font-weight:900;cursor:pointer;text-transform:uppercase;transition:box-shadow .16s ease,transform .16s ease,opacity .16s ease,filter .16s ease}.action-buttons button:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.primary-action{border-color:#15ffefb8!important;color:#eaffff;background:linear-gradient(180deg,#093238f2,#010e16f5),#040a12e6;box-shadow:0 0 30px #15ffef47,inset 0 0 26px #15ffef1f,inset 0 1px #ffffff29}.auth-action,.telegram-action{border-color:#f6f7ff3d!important;color:#f6f7ff;background:linear-gradient(180deg,#f6f7ff26,#121520d1),#05070ee0;box-shadow:0 0 22px #f6f7ff14,inset 0 1px #ffffff29,inset 0 -20px 38px #00000047}.auth-action{border-color:#5fffbab8!important;background:linear-gradient(180deg,#46a37657,#0c2a1fc7),#071410ad;box-shadow:0 0 34px #5fffba4d,inset 0 1px #ffffff3d,inset 0 -18px 34px #0000003d}.telegram-action{border-color:#15ffef4d!important;color:#e9ffff;background:linear-gradient(180deg,#0b252ce6,#0a0d18e0),#05070ee0}.google-mark{width:34px;height:34px;display:block;border-radius:999px;padding:3px;background:#f8fafcf5;box-shadow:0 0 18px #f6f7ff2e,0 0 26px #4285f429}.action-buttons button:active:not(:disabled){transform:translateY(1px)}.action-buttons button:disabled{cursor:not-allowed;opacity:.58}.notify-action{border-color:#774effc7!important;color:#f2ecff;background:linear-gradient(180deg,#37197af2,#0a051cf7),#080712eb;box-shadow:0 0 34px #774eff57,inset 0 0 28px #774eff29,inset 0 1px #ffffff24}.notification-status{margin-top:12px;color:#15ffefc7;font-size:.94rem;font-weight:760}.notifications-panel{margin-top:18px;padding:20px;border:1px solid rgba(21,255,239,.22);border-radius:8px;background:linear-gradient(180deg,#0a1218e6,#02050beb),#02040ad6;box-shadow:0 0 0 1px #774eff24,0 30px 92px #000000a3,0 0 50px #15ffef14,inset 0 1px #ffffff14;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.notifications-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.notifications-header h2{margin:0 0 6px;color:#f6f7ff;font-size:1.2rem;font-weight:900}.notifications-header p,.notification-gate p,.subscription-empty{margin:0;color:#f6f7ffa3;line-height:1.55}.ghost-action,.subscription-item button{min-height:42px;border:1px solid rgba(246,247,255,.2);border-radius:8px;padding:0 16px;color:#f6f7ffdb;background:#f6f7ff0f;cursor:pointer;font-weight:820}.ghost-action:hover,.subscription-item button:hover:not(:disabled){border-color:#15ffef5c;color:#f6f7ff}.notification-gate{display:grid;gap:16px;justify-items:start}.gate-action{min-width:220px;min-height:56px;justify-content:center}.notification-add-row{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:12px;margin-bottom:16px}.notification-add-row input{width:100%;min-height:56px;border:1px solid rgba(21,255,239,.24);border-radius:8px;padding:0 18px;color:#f6f7ff;background:linear-gradient(180deg,#00040af5,#04070feb),#02050ce0;outline:none}.notification-add-row input::placeholder{color:#f6f7ff66}.notification-add-row button{min-height:56px;border-color:#15ffefad!important;border-radius:8px;cursor:pointer;font-weight:900;text-transform:uppercase}.subscription-list{display:grid;gap:10px}.subscription-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid rgba(21,255,239,.16);border-radius:8px;background:#00040a80}.subscription-item span{color:#f6f7ffdb;font-weight:780;overflow-wrap:anywhere}.loading-card,.error-card,.results{margin-top:18px}.loading-card{display:flex;align-items:center;justify-content:center;gap:12px;padding:18px;color:#f6f7ffc7;font-weight:760}.loader,.button-loader{display:inline-block;border-radius:999px;animation:spin .76s linear infinite}.loader{width:22px;height:22px;border:3px solid rgba(21,255,239,.18);border-top-color:#15ffef}.button-loader{width:16px;height:16px;border:2px solid rgba(7,18,17,.22);border-top-color:#071211}.results{display:grid;gap:18px}.results-header{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:0 2px}.results-header h2{margin:0;color:#f6f7ff;font-size:1.16rem;font-weight:860;letter-spacing:0}.results-header span{color:#f6f7ff9e;font-weight:720;text-align:right}.result-list{display:grid;gap:14px}.answer-card,.error-card{padding:28px}.answer-card p{margin:0;color:#f6f7ffd1;font-size:clamp(1.06rem,2vw,1.18rem);line-height:1.72;overflow-wrap:anywhere;white-space:pre-wrap}.result-card{padding:24px}.recommended-card{position:relative;overflow:hidden;border-color:#15ffef80;background:linear-gradient(145deg,#07161cf5,#02050ced 48%,#0f082ae0),#02040adb;box-shadow:0 0 0 1px #8468ff38,0 0 70px #15ffef29,0 34px 96px #000000b8,inset 0 1px #ffffff1f}.recommended-card:before{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,rgba(21,255,239,.12),transparent 36%),radial-gradient(circle at 82% 16%,rgba(119,78,255,.24),transparent 28%);pointer-events:none;content:""}.recommended-card>*{position:relative;z-index:1}.recommended-hero{display:grid;gap:14px;margin-bottom:18px}.recommended-badge{width:fit-content;margin:0 0 14px;border:1px solid rgba(21,255,239,.42);border-radius:999px;padding:9px 14px;color:#101417;background:linear-gradient(135deg,#15ffeff2,#c196ffeb),#15ffef;box-shadow:0 0 24px #15ffef47,0 0 34px #774eff29;font-size:clamp(.86rem,1.9vw,1.02rem);font-weight:920;letter-spacing:0;text-transform:uppercase}.recommended-hero .recommended-badge{margin:0}.recommended-hero h3{max-width:880px;margin:0;color:#f7fbff;font-size:clamp(2.12rem,5vw,3.65rem);font-style:italic;font-weight:950;letter-spacing:0;line-height:.98;text-transform:uppercase;text-shadow:0 0 24px rgba(21,255,239,.28),0 0 54px rgba(119,78,255,.28),0 18px 40px rgba(0,0,0,.56);transform:skew(-5deg)}.recommended-card p{font-size:clamp(1.08rem,2vw,1.22rem)}.result-card p{margin:0 0 20px;color:#f6f7ffd6;font-size:clamp(1.02rem,2vw,1.13rem);line-height:1.68;overflow-wrap:anywhere;white-space:pre-wrap}.result-card dl{display:grid;gap:12px;margin:0}.result-card dl div{display:grid;gap:4px}.result-card dt{color:#f6f7ff75;font-size:.78rem;font-weight:780;text-transform:uppercase}.result-card dd{margin:0;color:#f6f7ffcc;font-size:.98rem;line-height:1.45;overflow-wrap:anywhere}.result-card a{color:#15ffef;font-weight:760;text-decoration:none}.result-card a:hover{text-decoration:underline}.error-card{border-color:#fca5a538;background:#450a0a47;box-shadow:0 20px 54px #450a0a29}.error-card h2{margin:0 0 14px;color:#fecaca;font-size:1.12rem;font-weight:820}.error-card p{margin:0;color:#fee2e2;line-height:1.6}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:940px){.page{padding-top:24px}}@media(max-width:720px){.page{padding:18px 14px 34px}.city-map{top:150px;right:-190px;width:560px}.topline{display:grid;gap:14px;margin-bottom:26px}.city-switcher{width:100%;justify-content:space-between}.hero h1{font-size:clamp(3.15rem,17vw,4.8rem)}.search-row,.action-buttons,.notification-add-row,.subscription-item{grid-template-columns:1fr}.notifications-header{display:grid}.search-card{padding:14px}.search-row input,.action-buttons button{min-height:58px}.search-row input{padding-right:54px;font-size:.94rem}.search-icon{right:17px;width:22px;height:22px}.loading-card{justify-content:flex-start}.answer-card,.result-card,.error-card{padding:20px}.results-header{display:grid;gap:6px}.results-header span{text-align:left}}.page{min-height:100svh;padding:22px 18px 42px;background:linear-gradient(180deg,#0000000a,#00000057 56%,#000000c2),radial-gradient(circle at 78% 18%,rgba(34,255,241,.16),transparent 28%),radial-gradient(circle at 9% 71%,rgba(142,92,255,.14),transparent 35%),url(/nha-trang-night-map.png),#02040a;background-position:center,center,center,center 48%,center;background-size:cover,cover,cover,cover,cover}.page:before{z-index:0;background:linear-gradient(90deg,rgba(39,255,242,.032) 1px,transparent 1px),linear-gradient(0deg,rgba(39,255,242,.028) 1px,transparent 1px),radial-gradient(ellipse at 52% 34%,transparent 0 38%,rgba(0,0,0,.26) 72%,rgba(0,0,0,.56) 100%);background-size:54px 54px,54px 54px,cover;-webkit-mask-image:none;mask-image:none;mix-blend-mode:screen;opacity:.78}.page:after{z-index:0;background:linear-gradient(109deg,transparent 0 47%,rgba(170,214,255,.12) 49%,transparent 52%),linear-gradient(21deg,transparent 0 51%,rgba(34,255,241,.12) 52%,transparent 55%),radial-gradient(circle at 92% 8%,rgba(255,255,255,.09),transparent 24%),linear-gradient(180deg,#01030800,#01030885 72%,#010308f5)}.page .shell{width:min(calc(100vw - 36px),580px)}.page .topline{display:none}.page .brand{font-size:clamp(1.12rem,4vw,1.42rem);text-shadow:0 0 14px rgba(34,255,241,.24),0 10px 28px rgba(0,0,0,.7)}.page .brand:before{width:22px;height:22px;background:radial-gradient(circle at 35% 35%,#22fff142,#040812b3)}.page .brand:after{left:-7px;width:34px;height:12px;border-top-color:#9b5effe6;box-shadow:0 0 16px #9b5eff57}.page .city-switcher{width:fit-content;min-height:40px;justify-self:center;padding:8px 16px;gap:7px;border-color:#dce8ee47;border-radius:12px;background:linear-gradient(180deg,#fff3,#ffffff13),#0b0f1494;box-shadow:0 14px 26px #0000005c,inset 0 1px #fff3}.page .city-switcher-label{font-size:clamp(.9rem,2.6vw,1rem)}.page .city-switcher-name{font-size:clamp(.95rem,3vw,1.08rem)}.page .city-switcher-action{padding:10px 15px;font-size:clamp(.88rem,2.6vw,1rem)}.page .hero{max-width:none;margin:clamp(18px,4.5vh,46px) 0 18px;text-align:center}.page .logo-title{margin:0 auto;font-size:clamp(2.7rem,12.5vw,4.3rem);line-height:.86;letter-spacing:0;filter:drop-shadow(0 0 16px rgba(248,216,158,.18)) drop-shadow(0 16px 34px rgba(0,0,0,.6))}.page .logo-title:before{display:none}.page .logo-title:after{display:none}.page .logo-line{background:linear-gradient(96deg,rgba(255,255,255,.7),transparent 19%,rgba(255,255,255,.66) 36%,transparent 58%),linear-gradient(180deg,#fff7d8,#d4a75d 28%,#f7e3aa 48%,#8a663c 70%,#fff3c7);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;-webkit-text-stroke:.8px rgba(255,246,216,.42);text-shadow:0 1px 0 rgba(255,255,255,.22),0 2px 0 rgba(75,52,26,.72),0 0 18px rgba(239,196,117,.18),0 10px 24px rgba(0,0,0,.52)}.page .logo-global{margin-left:.22em;font-size:.45em;font-weight:900;letter-spacing:.08em}.page .logo-pulse{margin-top:-.04em;background:linear-gradient(97deg,rgba(255,255,255,.88),transparent 18%,rgba(255,255,255,.76) 34%,transparent 54%),linear-gradient(180deg,#fff9dd,#d8a964 24%,#fff2be,#8d683e 66%,#f8de9c);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;-webkit-text-stroke:.9px rgba(255,247,219,.5)}.page .logo-pulse:after{right:-.09em;bottom:.08em;width:.2em;height:.2em;background:#23fff2;box-shadow:0 0 0 8px #23fff214,0 0 34px #23fff2c7}.page .search-card{width:100%;padding:0;border:0;border-color:transparent;border-radius:0;background:transparent;box-shadow:none;overflow:visible;-webkit-backdrop-filter:none;backdrop-filter:none}.page .search-row{gap:8px;justify-items:center}.page .search-input-shell:before{top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:13px;background:linear-gradient(135deg,#4db9ffd9,#4986ff75);opacity:.78;filter:blur(8px)}.page .search-input-shell{width:min(100%,300px)}.page .search-row input{min-height:48px;border-radius:12px;padding-left:20px;padding-right:58px;border-color:#8fd5ff6b;color:#f7fbff;background:linear-gradient(180deg,#42779b61,#08172dd1),#040a18b8;box-shadow:inset 0 1px #ffffff57,inset 0 -24px 44px #0000005c,0 0 42px #5cc0ff42;font-size:clamp(.94rem,3vw,1.08rem)}.page .search-row input::placeholder{color:#edf5ff7a}.page .search-icon{right:20px;width:25px;height:25px;border-width:4px;border-color:#eaf6ffe6}.page .search-icon:after{right:-10px;bottom:-7px;width:13px;height:4px;background:#eaf6ffe6}.page .action-buttons{grid-template-columns:1fr;width:min(100%,340px);gap:9px}.page .action-buttons button{min-height:48px;border-radius:12px;font-size:clamp(.9rem,2.8vw,1rem)}.page .primary-action{border-color:#23fff2bd!important;background:linear-gradient(180deg,#084c50b8,#021924d6),#051520b8;box-shadow:0 0 34px #23fff23d,inset 0 0 34px #23fff21f,inset 0 1px #ffffff29}.page .auth-action{border-color:#65ffb8b8!important;background:linear-gradient(180deg,#2d7b5b70,#05291eb3),#051210ad;box-shadow:0 0 36px #65ffb847,inset 0 1px #ffffff38}.page .notify-action{border-color:#8957ffd6!important;background:linear-gradient(180deg,#5326adeb,#160937f5),#12082ddb;box-shadow:0 0 38px #8957ff61,inset 0 0 32px #8957ff33,inset 0 1px #ffffff29}.page .city-map:before{inset:auto;top:51px;left:28px;width:15px;height:15px;border:0;border-radius:999px;background:#23fff2;box-shadow:0 0 0 10px #23fff214,0 0 34px #23fff2d1}.page .city-map:after{display:none}.page .city-map span{display:none}@media(max-width:720px){.page{padding:18px 20px 34px;background-position:center,center,center,51% 50%,center}.page .shell{width:min(calc(100vw - 40px),580px)}.page .topline{margin-bottom:clamp(16px,3.5vh,28px)}.page .city-switcher{width:fit-content;max-width:100%}.page .hero h1{font-size:clamp(3rem,13.8vw,4.65rem)}.page .search-card{margin-top:0}.page .city-map{top:31%;right:5%;width:170px}}@media(max-width:430px){.page{padding:18px 16px 32px}.page .shell{width:min(calc(100vw - 32px),580px)}.page .topline{margin-bottom:18px}.page .city-switcher{min-height:48px;gap:10px;padding-left:17px}.page .city-switcher-action{padding:9px 13px}.page .hero{margin-bottom:14px}.page .logo-title{font-size:clamp(2.78rem,13.4vw,4.15rem)}.page .search-row input{min-height:52px;padding-left:18px;padding-right:54px}.page .search-icon{right:18px;width:24px;height:24px}.page .action-buttons button{min-height:52px}}.page{min-height:100svh;overflow-x:hidden;overflow-y:auto;--stage-center-x: 50vw}.page{padding:0;background:linear-gradient(180deg,#00000014,#00000038 45%,#000000b8),radial-gradient(circle at 80% 12%,rgba(34,255,241,.13),transparent 27%),radial-gradient(circle at 18% 76%,rgba(142,92,255,.16),transparent 34%),url(/nha-trang-night-map.png),#02040a;background-position:center,center,center,center 52%,center;background-size:cover,cover,cover,cover,cover}.page:before{opacity:.38;mix-blend-mode:screen}.page:after{background:linear-gradient(108deg,transparent 0 49%,rgba(170,214,255,.1) 50%,transparent 53%),linear-gradient(24deg,transparent 0 53%,rgba(34,255,241,.11) 54%,transparent 57%),linear-gradient(180deg,transparent 0 66%,rgba(1,3,8,.82) 100%)}.page .shell{min-height:100svh;width:100%;position:relative;display:block;margin:0 auto;padding:0}.page .topline{position:absolute;z-index:3;top:max(22px,env(safe-area-inset-top));left:max(22px,env(safe-area-inset-left));display:block;margin:0}.page .city-map{display:none}.page .language-switcher{display:inline-flex;align-items:center;gap:5px;color:#ebf1f680;font-size:.72rem;font-weight:760;letter-spacing:.04em;text-shadow:0 0 14px rgba(255,255,255,.22)}.page .language-switcher button{border:0;padding:0;color:#ebf1f67a;background:transparent;cursor:pointer;font-size:inherit;font-weight:inherit;letter-spacing:inherit}.page .language-switcher button.active{color:#fff;text-shadow:0 0 12px rgba(255,255,255,.48),0 0 24px rgba(34,255,241,.22)}.page .language-switcher button.dimmed{cursor:default;opacity:.62}.page .hero{position:absolute;z-index:2;top:15svh;left:var(--stage-center-x);width:min(78vw,330px);margin:0;text-align:center;transform:translate(-50%)}.page .logo-title{font-size:clamp(3rem,13.2vw,4.4rem);line-height:.78}.page .logo-global{margin-left:.18em;font-size:.48em}.page .logo-pulse{margin-top:.02em}.page .search-card{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;width:100%;max-width:none;border:0;padding:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none}.page .search-card:before{display:none}.page .search-form{height:100%}.page .search-row{position:relative;display:block;width:100%;height:100%}.page .search-input-shell{position:absolute;top:33.5svh;left:var(--stage-center-x);width:min(78vw,320px);max-width:320px;transform:translate(-50%);pointer-events:auto}.page .search-row input{min-height:52px;border-radius:13px;background:linear-gradient(180deg,#4b8bb952,#09162a94),#050d1b7a;-webkit-backdrop-filter:blur(12px) saturate(1.1);backdrop-filter:blur(12px) saturate(1.1)}.page .city-switcher{position:absolute;top:42.7svh;left:var(--stage-center-x);min-height:38px;padding:7px 15px;border-radius:11px;background:linear-gradient(180deg,#ffffff2e,#ffffff12),#0f121775;-webkit-backdrop-filter:blur(12px) saturate(1.1);backdrop-filter:blur(12px) saturate(1.1);transform:translate(-50%);pointer-events:auto}.page .action-buttons{position:absolute;left:var(--stage-center-x);bottom:13svh;width:min(60vw,246px);max-width:246px;display:grid;grid-template-columns:1fr;gap:9px;margin-top:0;transform:translate(-50%);pointer-events:auto}.page .action-buttons button{position:relative;overflow:hidden;min-height:44px;border-radius:12px;background-color:#030e1647;-webkit-backdrop-filter:blur(15px) saturate(1.18);backdrop-filter:blur(15px) saturate(1.18)}.page .action-buttons button:before{position:absolute;inset:1px 9px auto;height:45%;border-radius:999px 999px 18px 18px;background:linear-gradient(180deg,rgba(255,255,255,.3),rgba(255,255,255,.06) 72%,transparent);opacity:.62;pointer-events:none;content:""}.page .action-buttons button>*{position:relative;z-index:1}.page .primary-action{background:linear-gradient(180deg,#12ffef24,#041d2347),#040e1642;box-shadow:0 0 24px #15ffef33,inset 0 1px #ffffff38,inset 0 -18px 32px #0003}.page .auth-action{background:linear-gradient(180deg,#4affb01f,#062f2247),#0718133d;box-shadow:0 0 26px #5fffba33,inset 0 1px #ffffff3d,inset 0 -18px 34px #00000038}.page .notify-action{border-color:#24fff2c7!important;color:#f8f4ff;background:linear-gradient(108deg,rgba(36,255,242,.22),transparent 34%,rgba(158,96,255,.2)),linear-gradient(180deg,#7f50ff42,#16093957),#080d1b57;box-shadow:0 0 24px #24fff242,0 0 38px #8e3dff4d,inset 0 1px #ffffff38,inset 0 -18px 30px #0003}.page .loading-card,.page .error-card,.page .results,.page .notifications-panel{width:min(100%,760px);margin:18px auto 0}@media(min-width:721px){.page .shell{width:100vw;max-width:none}.page .search-input-shell{width:min(38vw,380px);max-width:380px}}@media(max-width:430px){.page .shell{padding-right:0;padding-left:0}.page .logo-title{font-size:clamp(2.72rem,13vw,4rem)}.page .search-input-shell{width:min(78vw,320px);max-width:320px}}.page .shell{width:100vw;max-width:none;padding-right:0;padding-left:0}.content-back-action{display:none}.page.content-mode{--stage-center-x: 50%;min-height:100svh;padding:max(54px,env(safe-area-inset-top)) 18px 72px;overflow-x:hidden;overflow-y:auto}.page.content-mode .shell{width:min(100%,920px);max-width:920px;min-height:auto;margin:0 auto;padding:0;position:relative}.page.content-mode .topline{position:fixed;top:max(22px,env(safe-area-inset-top));left:max(22px,env(safe-area-inset-left));z-index:8}.page.content-mode .hero{display:none}.page.content-mode .search-card{position:relative;z-index:4;inset:auto;width:100%;max-width:920px;margin:0 auto 22px;padding:14px;border:1px solid rgba(39,229,255,.24);border-radius:18px;background:linear-gradient(135deg,#1cfff414,#885cff14),#040b159e;box-shadow:0 0 34px #1fe7ff24,0 18px 70px #00000061,inset 0 1px #ffffff1f;-webkit-backdrop-filter:blur(18px) saturate(1.1);backdrop-filter:blur(18px) saturate(1.1);pointer-events:auto}.page.content-mode .search-form{height:auto}.page.content-mode .search-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(240px,300px);align-items:center;gap:12px;width:100%;height:auto}.page.content-mode .search-input-shell,.page.content-mode .city-switcher,.page.content-mode .action-buttons{position:relative;top:auto;right:auto;bottom:auto;left:auto;width:auto;max-width:none;transform:none}.page.content-mode .search-input-shell{min-width:0}.page.content-mode .search-row input{min-height:54px}.page.content-mode .city-switcher{min-height:48px;justify-self:center}.page.content-mode .action-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.page.content-mode .action-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}.page.content-mode .action-buttons button{min-height:48px;padding:0 14px}.page.content-mode .content-back-action{display:inline-flex;align-items:center;justify-content:center;min-height:38px;margin:0 0 12px;padding:0 16px;border:1px solid rgba(216,238,255,.28);border-radius:999px;color:#eff7ffe0;background:linear-gradient(180deg,#ffffff1a,#ffffff08),#070d166b;box-shadow:0 0 18px #1fe7ff1f,inset 0 1px #ffffff1f;font-size:.82rem;font-weight:800;letter-spacing:0;cursor:pointer}.page.content-mode .loading-card,.page.content-mode .error-card,.page.content-mode .results,.page.content-mode .notifications-panel{position:relative;z-index:3;width:100%;max-width:920px;margin:18px auto 0}.page.content-mode .results-header{padding:0 4px}@media(max-width:900px){.page.content-mode{padding-right:14px;padding-left:14px}.page.content-mode .search-row{grid-template-columns:minmax(0,1fr)}.page.content-mode .city-switcher{width:max-content;justify-self:center}.page.content-mode .action-buttons{width:min(100%,520px);justify-self:center}}@media(max-width:520px){.page.content-mode{padding-top:max(48px,env(safe-area-inset-top))}.page.content-mode .search-card{padding:12px;border-radius:16px}.page.content-mode .action-buttons,.page.content-mode .action-count-2{grid-template-columns:1fr}.page.content-mode .action-buttons button{min-height:46px}}.page.content-mode{color:#1d2b27;background:linear-gradient(180deg,#d8ebd3e6,#c7e1caeb),radial-gradient(circle at 18% 22%,rgba(255,255,255,.75),transparent 34%),radial-gradient(circle at 82% 78%,rgba(110,181,129,.34),transparent 36%),url(/nha-trang-night-map.png),#d5e8cf;background-position:center,center,center,center 52%,center;background-size:cover,cover,cover,cover,cover}.page.content-mode:before{opacity:.1;mix-blend-mode:multiply}.page.content-mode:after{background:linear-gradient(90deg,rgba(42,91,63,.08) 1px,transparent 1px),linear-gradient(180deg,rgba(42,91,63,.08) 1px,transparent 1px),linear-gradient(180deg,#eef8ea38,#b7d7b94d);background-size:34px 34px,34px 34px,cover}.page.content-mode .language-switcher,.page.content-mode .language-switcher button{color:#192d267a;text-shadow:none}.page.content-mode .language-switcher button.active{color:#152820;text-shadow:0 1px 0 rgba(255,255,255,.72)}.page.content-mode .search-card{max-width:940px;border-color:#50876a42;background:linear-gradient(135deg,#ffffffb8,#e8f5e49e),#eff8ebb3;box-shadow:0 22px 58px #234e3a2e,inset 0 1px #ffffffdb}.page.content-mode .search-row{grid-template-columns:minmax(280px,1fr) auto;gap:12px}.page.content-mode .search-input-shell{grid-column:1}.page.content-mode .city-switcher{grid-column:2}.page.content-mode .action-buttons{grid-column:1 / -1;width:100%;display:grid;grid-template-columns:minmax(130px,1fr) minmax(210px,1.25fr) minmax(92px,.55fr);gap:12px;justify-self:stretch}.page.content-mode .action-count-2{grid-template-columns:repeat(2,minmax(160px,1fr))}.page.content-mode .action-buttons button{min-width:0;min-height:52px;padding:0 18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:clamp(.9rem,1.5vw,1.04rem);line-height:1.05}.page.content-mode .notify-action{background:linear-gradient(180deg,#a173ff33,#3d1d742e),#5337946b;box-shadow:0 0 22px #8956ff3d,inset 0 1px #ffffff42,inset 0 -18px 30px #180c3629}.page.content-mode .content-back-action{color:#21342d;border-color:#3e5c4c38;background:linear-gradient(180deg,#fffc,#eaf4e894),#eef6eab8;box-shadow:0 10px 24px #28523c1f,inset 0 1px #ffffffdb}.page.content-mode .results-header h2{color:#1f2b25}.page.content-mode .results-header span{color:#1f2b259e}.page.content-mode .answer-card,.page.content-mode .error-card,.page.content-mode .result-card,.page.content-mode .notifications-panel,.page.content-mode .loading-card{border-color:#3a664f2e;background:linear-gradient(180deg,#ffffffd6,#f6fbf4bd),#fafff8c7;box-shadow:0 18px 44px #2a533d21,inset 0 1px #ffffffeb;-webkit-backdrop-filter:blur(14px) saturate(1.04);backdrop-filter:blur(14px) saturate(1.04)}.page.content-mode .answer-card p,.page.content-mode .result-card p,.page.content-mode .result-card dd{color:#16201cd6}.page.content-mode .result-card dt{color:#16201c75}.page.content-mode .result-card a{color:#008c84}.page.content-mode .recommended-card{border-color:#0fb2a057;background:linear-gradient(145deg,#ffffffe6,#effcf5c2 48%,#ede6ffb8),#ffffffd1;box-shadow:0 0 0 1px #8468ff1f,0 24px 60px #1f806629,inset 0 1px #ffffffeb}.page.content-mode .recommended-hero h3{color:#f4d88d;-webkit-text-stroke:1.2px #101410;text-shadow:1px 1px 0 #101410,-1px 1px 0 #101410,1px -1px 0 #101410,-1px -1px 0 #101410,0 10px 22px rgba(55,43,20,.2)}@media(max-width:760px){.page.content-mode .search-row{grid-template-columns:1fr}.page.content-mode .search-input-shell,.page.content-mode .city-switcher,.page.content-mode .action-buttons{grid-column:1}.page.content-mode .city-switcher{justify-self:center}.page.content-mode .action-buttons,.page.content-mode .action-count-2{grid-template-columns:1fr}.page.content-mode .action-buttons button{width:100%;white-space:normal;overflow-wrap:anywhere;text-overflow:clip}}.page{--control-width: min( calc(100vw - 52px) , 340px);--control-height: 55px;--control-radius: 28px}.page:not(.content-mode) .hero,.page:not(.content-mode) .search-input-shell,.page:not(.content-mode) .city-switcher,.page:not(.content-mode) .action-buttons{left:50vw;transform:translate(-50%)}.page:not(.content-mode) .hero{top:14svh;width:var(--control-width)}.page:not(.content-mode) .city-switcher{top:31.5svh;min-height:40px;padding:7px 17px}.page:not(.content-mode) .search-input-shell{top:37.2svh;width:var(--control-width);max-width:var(--control-width)}.page:not(.content-mode) .search-row input{min-height:var(--control-height);border-radius:var(--control-radius);text-align:center;background:linear-gradient(180deg,rgba(255,255,255,.17) 0%,rgba(255,255,255,.04) 43%,transparent 52%),linear-gradient(180deg,#24527d94,#071224d6),#050c1bbd;box-shadow:0 0 18px #00ccff61,0 0 42px #00ccff2e,inset 0 2px 5px #ffffff3d,inset 0 -3px 8px #0000007a}.page:not(.content-mode) .search-row input::placeholder{text-align:center}.page:not(.content-mode) .action-buttons{top:46.6svh;bottom:auto;width:var(--control-width);max-width:var(--control-width);gap:10px}.page:not(.content-mode) .action-buttons button{width:100%;min-height:var(--control-height);border-radius:var(--control-radius);white-space:nowrap}.page:not(.content-mode) .primary-action,.page:not(.content-mode) .notify-action,.page:not(.content-mode) .auth-action,.page:not(.content-mode) .telegram-action{transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),filter .25s cubic-bezier(.4,0,.2,1)}.page:not(.content-mode) .primary-action:active,.page:not(.content-mode) .notify-action:active,.page:not(.content-mode) .auth-action:active,.page:not(.content-mode) .telegram-action:active{transform:scale(.97);filter:saturate(1.18) brightness(1.06)}.page.content-mode{--control-width: min( calc(100vw - 44px) , 340px);color:#1a1a1a;padding:max(56px,env(safe-area-inset-top)) 0 54px;background:linear-gradient(rgba(92,128,104,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(92,128,104,.08) 1px,transparent 1px),radial-gradient(circle at 18% 8%,rgba(255,255,255,.72),transparent 34%),linear-gradient(180deg,#f5f7fb,#eef4ef);background-size:34px 34px,34px 34px,cover,cover}.page.content-mode:before,.page.content-mode:after{opacity:0}.page.content-mode .shell{width:100%;max-width:430px;padding:0}.page.content-mode .topline{position:relative;top:auto;left:auto;width:var(--control-width);margin:0 auto 18px}.page.content-mode .language-switcher,.page.content-mode .language-switcher button{color:#1a1a1a6b}.page.content-mode .language-switcher button.active{color:#1a1a1a}.page.content-mode .search-card{display:flex;flex-direction:column;align-items:center;width:min(calc(100vw - 28px),380px);max-width:380px;margin:0 auto 26px;padding:16px;border:1px solid rgba(20,35,28,.07);border-radius:24px;background:#fffc;box-shadow:0 18px 45px #182d2314,inset 0 1px #ffffffeb;-webkit-backdrop-filter:blur(18px) saturate(1.04);backdrop-filter:blur(18px) saturate(1.04)}.page.content-mode .content-back-action{align-self:flex-start;min-height:42px;margin:0 0 18px;padding:0 18px;border-radius:999px;color:#1c2a23;background:#ffffffdb;box-shadow:0 10px 25px #182d2314}.page.content-mode .search-form,.page.content-mode .search-row,.page.content-mode .search-input-shell,.page.content-mode .action-buttons{width:var(--control-width);max-width:var(--control-width)}.page.content-mode .search-row{display:flex;flex-direction:column;align-items:center;gap:12px}.page.content-mode .search-input-shell,.page.content-mode .city-switcher,.page.content-mode .action-buttons{position:relative;top:auto;left:auto;bottom:auto;transform:none}.page.content-mode .search-input-shell{order:1}.page.content-mode .city-switcher{order:2;width:auto;min-width:118px;min-height:48px;color:#fff;background:linear-gradient(180deg,rgba(255,255,255,.18),transparent 50%),linear-gradient(180deg,#767e80e6,#5c6568eb);box-shadow:0 12px 24px #25302c29,inset 0 2px 4px #ffffff38,inset 0 -2px 5px #0000003d}.page.content-mode .action-buttons{order:3;display:flex;flex-direction:column;gap:12px}.page.content-mode .search-row input,.page.content-mode .action-buttons button{width:var(--control-width);height:var(--control-height);min-height:var(--control-height);border-radius:var(--control-radius);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page.content-mode .search-row input{color:#f7fbff;background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.04) 44%,transparent 54%),linear-gradient(180deg,#2f567a,#13283f);box-shadow:0 0 18px #0090d63d,inset 0 2px 5px #ffffff38,inset 0 -3px 8px #0000005c}.page.content-mode .search-row input::placeholder{color:#ffffffad}.page.content-mode .results,.page.content-mode .loading-card,.page.content-mode .error-card,.page.content-mode .notifications-panel{width:var(--control-width);max-width:var(--control-width);margin-right:auto;margin-left:auto}.page.content-mode .results-header{display:grid;gap:8px;padding:0 6px;text-align:left}.page.content-mode .results-header h2{color:#1a1a1a;font-size:1.45rem;font-weight:900}.page.content-mode .results-header span{color:#6f7a73;font-size:1.02rem;font-weight:780;text-align:left}.page.content-mode .result-list{gap:14px}.page.content-mode .answer-card,.page.content-mode .error-card,.page.content-mode .result-card,.page.content-mode .loading-card{width:100%;padding:20px;border:0;border-radius:16px;color:#333;background:#fff;box-shadow:0 10px 35px #00000008}.page.content-mode .result-card p{color:#333;font-size:1.02rem;line-height:1.6}.page.content-mode .result-card p:first-child{color:#1a1a1a;font-weight:700}.page.content-mode .result-card dt{color:#8c8c8c;font-size:.69rem;font-weight:850;letter-spacing:.05em}.page.content-mode .result-card dd{color:#333;font-size:.94rem}.page.content-mode .result-card a{display:block;color:inherit;text-decoration:none}.page.content-mode .open-message-link{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;margin-top:4px;border-radius:12px;color:#08766f;background:#d9f4ed;font-weight:850;text-align:center}.page.content-mode .open-message-link:hover{background:#c9eee5}@media(max-width:380px){.page,.page.content-mode{--control-width: min( calc(100vw - 34px) , 326px)}}
