:root{--blue:#0057ff;--ink:#1a1c23;--muted:#78818f;--pale:#e6f0ff;--line:#eef1f5;--bg:#f8faff}*{box-sizing:border-box}body{margin:0;font:14px/1.5 system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);background:#f3f6fb}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}button:disabled{opacity:.5;cursor:wait}.shell{width:100%;max-width:460px;height:calc(100dvh - 40px);margin:20px auto;background:#fff;border:1px solid #edf0f5;border-radius:34px;box-shadow:0 22px 80px #182d5712;display:flex;flex-direction:column;overflow:hidden}.desktop-brand{position:fixed;left:max(24px,calc(50% - 600px));top:15%;max-width:260px}.desktop-brand h1{font-size:35px;letter-spacing:-2px}.desktop-brand h1 span{color:var(--blue)}.desktop-brand p{color:var(--muted)}.mark{width:58px;height:58px;border-radius:18px;background:var(--blue);color:#fff;font-size:35px;text-align:center}.header{flex-shrink:0;padding:20px 22px 12px;border-bottom:1px solid var(--line);background:#fffffff0}.topline{display:flex;align-items:center;justify-content:space-between}.logo{font-weight:900;font-size:23px;letter-spacing:-1.5px}.logo b{color:var(--blue)}.scroll{flex:1;overflow-y:auto;min-height:0;padding:20px 22px 32px;scrollbar-width:thin}.nav{height:81px;flex-shrink:0;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);box-shadow:0 -15px 70px #19314a10;background:#fffffff5;padding-bottom:env(safe-area-inset-bottom)}.nav button{background:transparent;color:#8b94a2;font-size:10px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px}.nav button strong{font-size:23px;font-weight:500}.nav button.active{color:var(--blue);font-weight:800}.muted{color:var(--muted)}.eyebrow{font-size:11px;font-weight:800;color:var(--blue);letter-spacing:.12em;text-transform:uppercase}h1{font-size:28px;line-height:1.18;letter-spacing:-1px;margin:10px 0}h2{font-size:20px;margin:23px 0 12px}h3{font-size:16px;margin:0 0 5px}p{margin:7px 0 12px}.hero{background:linear-gradient(125deg,#e6f0ff,#f4faff 70%,#dcfbff);border-radius:24px;padding:22px;margin:16px 0;position:relative;overflow:hidden}.hero:after{content:'✈';position:absolute;right:18px;top:0;font-size:96px;opacity:.15;transform:rotate(-20deg)}.card{border:1px solid var(--line);border-radius:21px;padding:16px;background:white;margin:11px 0;box-shadow:0 4px 14px #15285504}.card.soft{background:var(--bg)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:11px}.grid2 .card{margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:15px;background:var(--blue);color:white;padding:13px 17px;font-weight:750;min-height:46px;text-decoration:none}.btn.secondary{background:var(--pale);color:var(--blue)}.btn.outline{background:white;color:var(--ink);border:1px solid #dce3ee}.btn.danger{background:#ffedf0;color:#bb2442}.btn.full{width:100%}.btn.small{min-height:37px;padding:8px 12px;font-size:12px}.field{display:block;margin:14px 0}.field span{display:block;font-weight:700;font-size:12px;margin-bottom:6px}.field input,.field textarea,.field select,input.search{width:100%;border:1px solid #e6ebf3;background:var(--bg);border-radius:13px;padding:13px;min-height:46px;outline:none;font-size:16px;color:var(--ink)}.field textarea{min-height:100px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--blue)}.chips{display:flex;gap:8px;overflow-x:auto;padding:4px 0 10px}.chip{white-space:nowrap;border-radius:50px;border:1px solid #e4e9f0;background:#fff;padding:9px 13px;color:var(--ink)}.chip.selected{background:var(--blue);color:#fff;border-color:var(--blue)}.row{display:flex;justify-content:space-between;align-items:center;gap:10px}.pill{display:inline-block;border-radius:30px;background:var(--pale);color:var(--blue);padding:5px 10px;font-size:11px;font-weight:700}.divider{border:0;border-top:1px solid var(--line);margin:17px 0}.notice{padding:13px;background:#fff8e8;border-radius:14px;color:#72530c;font-size:12px}.error{color:#c62846}.loading{text-align:center;margin:auto;color:var(--muted)}.toast{position:absolute;bottom:100px;left:20px;right:20px;background:#1a273d;color:white;padding:13px;border-radius:15px;z-index:5}.empty{text-align:center;padding:25px 12px;color:var(--muted)}.mapbox{background:#eaf2fb;border-radius:18px;height:180px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px}.stat{font-size:26px;font-weight:900;color:var(--blue)}.tiny{font-size:11px}.adminbar{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px}.adminbar button{flex-shrink:0}.auth{padding:35px 26px;overflow-y:auto;flex:1}.auth .logo{font-size:33px}.check{width:22px;height:22px;accent-color:var(--blue)}@media(max-width:700px){body{background:#fff}.shell{max-width:none;height:100dvh;margin:0;border:0;border-radius:0}.desktop-brand{display:none}.header{padding-top:calc(18px + env(safe-area-inset-top))}.nav{height:calc(76px + env(safe-area-inset-bottom))}}@media(max-width:370px){.scroll,.header{padding-left:16px;padding-right:16px}.grid2{gap:8px}h1{font-size:25px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Release 2: responsive Wolt/Bolt-inspired clean white UI */
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #5b96ff;outline-offset:3px}
.feature-icon{width:42px;height:42px;border-radius:14px;background:#ebf3ff;display:grid;place-items:center;font-size:23px;margin-bottom:12px}
.card h3{overflow-wrap:anywhere}.row>div{min-width:0}
.card button{max-width:100%}.desktop-link{display:inline-block;margin-top:20px;color:#0057ff;font-weight:700}
body.admin-view .shell{max-width:840px}
body.admin-view .nav{display:none}
body.admin-view .scroll{padding-bottom:56px}
body.admin-view .adminbar{position:sticky;top:0;z-index:2;background:white;padding:12px 0;scrollbar-width:thin}
body.admin-view .grid2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:700px){body.admin-view .shell{max-width:none}.card{border-radius:18px}}
@media(max-width:350px){.stat{font-size:22px}.btn.small{font-size:11px;padding:7px 9px}.header,.scroll{padding-left:12px;padding-right:12px}}

/* Release 3 — editorial travel app design layer */
:root{--blue:#4644df;--violet:#6860f6;--coral:#ff796c;--ink:#181b37;--muted:#73778c;--pale:#eeedff;--line:#ebeaf4;--bg:#fbfaff}
body{background:radial-gradient(ellipse at 20% 10%,#e9e5ff 0,transparent 30%),#f5f3ff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}
.shell{box-shadow:0 28px 100px #38318324;background:#fefeff;border:1px solid #e8e5f5}
.logo{font-weight:950;letter-spacing:-1.8px;color:#232344}.logo b,.desktop-brand h1 span{color:#6960f6}
.mark{background:linear-gradient(135deg,#6c5afe,#ec70bc);box-shadow:0 10px 32px #6c5afe40}
.header{border-bottom:1px solid #f1effa;backdrop-filter:blur(12px);background:#ffffffdf}
.header .topline select{background:#f7f6ff!important;border-radius:10px!important;padding:6px;color:#565174}
.scroll{scroll-behavior:smooth}
h1,h2,h3{color:#252343}h1{font-size:30px;letter-spacing:-1.35px}h1 em,h2 em{font-style:normal;color:var(--violet)}h2{letter-spacing:-.6px}
.nav{box-shadow:0 -8px 25px #5950ac0a;backdrop-filter:blur(12px)}.nav button strong{transition:transform .25s ease}.nav button.active strong{transform:translateY(-3px) scale(1.16)}
.btn{background:linear-gradient(120deg,#6158ee,#8a55df);box-shadow:0 8px 22px #6054d533;transition:transform .22s,box-shadow .22s}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px #6054d544}
.btn.secondary{background:#efedff;color:#5d4ee0;box-shadow:none}.btn.outline{background:white;color:#6154b5;box-shadow:none}
.btn.white{background:#fff;color:#4b3dc0;box-shadow:0 6px 20px #130b414a}
.chip.selected{background:var(--violet);border-color:var(--violet)}.pill{background:#efedff;color:#6655d7}
.field input,.field textarea,.field select,input.search{background:#f9f8ff;border:1px solid #eae7f6}.field :is(input,select,textarea):focus{border-color:#8677ff;box-shadow:0 0 0 3px #8777ff20}
.home-intro{padding:3px 0 1px}.home-intro h1{font-size:34px;line-height:1.13;margin-top:8px}.home-intro .muted{font-size:13px}
.destination-hero{min-height:264px;position:relative;isolation:isolate;border-radius:26px;overflow:hidden;margin:19px 0;background:#6255e8;box-shadow:0 18px 30px #3b37902e}
.destination-hero:before{content:'';position:absolute;inset:0;z-index:-2;background-image:var(--hero);background-size:cover;background-position:center;transform:scale(1.025);animation:hero-zoom 18s ease-in-out infinite alternate}
.destination-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(95deg,#151245d9 0%,#2218529f 55%,#21154935 100%)}
.hero-overlay{padding:27px 25px;position:relative;z-index:1;color:#fff;max-width:340px}.hero-tag{display:inline-block;border:1px solid #ffffff72;background:#ffffff26;border-radius:100px;color:#fff;padding:5px 11px;font-size:11px;font-weight:800;backdrop-filter:blur(6px)}
.hero-small{font-size:10px;letter-spacing:.16em;margin-top:25px;color:#e1d7ff;font-weight:900}.destination-hero h2{font-size:32px;color:white;margin:3px 0 7px;letter-spacing:-1px}.destination-hero p:not(.hero-small){font-size:12px;line-height:1.55;color:#f5f0ff;max-width:285px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.destination-hero .btn{margin-top:5px}
.float-stamp{position:absolute;right:24px;top:25px;color:#fff9;filter:drop-shadow(0 5px 9px #1b1040);font-size:33px;animation:floaty 5s ease-in-out infinite}
.quick-search{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-search .field{margin:0}.quick-search .field span{font-size:10px;color:#6155a8;letter-spacing:.08em}.quick-search select{font-size:13px;min-width:0;max-width:100%;font-weight:650}
.stat-strip{display:flex;justify-content:space-between;gap:8px;margin:18px 0 20px;padding:13px 12px;background:linear-gradient(90deg,#f3f1ff,#ffedf2);border:1px solid #f2e8fb;border-radius:16px}.stat-strip span{font-size:10px;color:#595478;display:flex;flex-wrap:wrap;align-items:center;gap:4px}.stat-strip strong{font-size:17px;color:#6252e9}
.section-heading{display:flex;justify-content:space-between;align-items:end;margin:23px 0 12px;gap:8px}.section-heading h2{margin:5px 0 0;font-size:21px}.text-link{background:transparent;color:#685be5;font-weight:750;font-size:11px;padding:6px 0;white-space:nowrap}
.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.action-tile{text-align:left;background:#fff;border:1px solid #f0edfa;border-radius:19px;padding:15px;min-width:0;box-shadow:0 6px 18px #5953aa0a;transition:transform .24s,box-shadow .24s,border .24s}.action-tile:hover{transform:translateY(-4px);box-shadow:0 13px 28px #5145bc1e;border-color:#dbd3ff}.action-tile b{display:block;margin-top:12px;font-size:13px;color:#25234b}.action-tile small{display:block;margin-top:3px;font-size:10px;color:#88839c}
.action-icon{height:44px;width:44px;display:grid;place-items:center;border-radius:15px;font-size:22px}.lilac{background:#edeaff}.coral{background:#ffeded}.peach{background:#fff3e7}.mint{background:#e8f8f4}
.insider-card{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(125deg,#f0eeff,#fff1f4);padding:20px;border-radius:20px;margin-top:20px;border:1px solid #eae3ff}.insider-card h3{font-size:17px;margin:8px 0}.insider-card p{font-size:11px;color:#676179}.insider-illustration{font-size:60px;animation:floaty 6s ease-in-out infinite;filter:drop-shadow(0 7px 12px #a576ba44)}
.mini-tools{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mini-tools button{background:#fff;text-align:left;padding:13px 10px;border:1px solid var(--line);border-radius:14px;font-weight:650;font-size:11px;display:flex;justify-content:space-between;align-items:center;color:#343055}.mini-tools button span{color:#7360e4}
.data-disclaimer{font-size:10px;color:#9391a5;border-top:1px solid #eeeafa;padding-top:12px;margin:22px 0}
.page-head{margin-bottom:20px}.page-head h1{font-size:30px;margin:9px 0}.page-head .muted{font-size:12px}.back{background:#f3f0ff;color:#584de0;border-radius:30px;padding:7px 11px;margin-bottom:18px;font-weight:700;font-size:12px}
.search-wrap{position:relative;margin:14px 0}.search-wrap span{position:absolute;left:17px;top:9px;font-size:25px;color:#675ce3}.search-wrap input{padding-left:48px;border-radius:16px}
.filter-chips{display:flex;overflow-x:auto;gap:7px;padding-bottom:12px;scrollbar-width:none}.filter-chips .chip{text-transform:capitalize;font-size:11px}
.places-counter{margin:4px 0 16px}.place-stack{display:grid;gap:12px}.place-card{display:grid;grid-template-columns:93px minmax(0,1fr);gap:13px;border:1px solid #eeebf6;border-radius:19px;padding:11px;background:white;box-shadow:0 6px 15px #302a7510;animation-delay:var(--delay,0ms)}.place-illustration{border-radius:14px;min-height:123px;background:linear-gradient(160deg,#d9d5ff,#ffe6ef);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;position:relative;overflow:hidden}.place-illustration:after{content:'✦';position:absolute;font-size:95px;left:-20px;bottom:-35px;color:#fff5;transform:rotate(20deg)}.place-illustration span{font-size:38px;z-index:1}.place-illustration small{z-index:1;font-size:9px;font-weight:800;text-transform:uppercase;color:#6155a5}.place-copy{min-width:0}.place-copy h3{font-size:14px;margin:2px 0 5px}.place-copy .row{align-items:flex-start}.place-copy p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:10px;line-height:1.45;margin:5px 0 10px}.place-actions{display:flex;gap:5px;flex-wrap:wrap}.place-actions .btn{min-height:30px;padding:6px 9px;font-size:10px;border-radius:9px}.check{accent-color:#7163e9;flex-shrink:0}
.guide-banner{display:flex;gap:20px;align-items:center;padding:21px;border-radius:24px;background:linear-gradient(130deg,#5646cf,#9180ef);color:#fff;min-height:175px;position:relative;overflow:hidden}.guide-banner:after{content:'✧';font-size:170px;position:absolute;right:-20px;top:-60px;color:#ffffff15}.guide-banner h3{color:#fff;margin-top:12px;font-size:20px}.guide-banner p{font-size:12px;color:#f3edff}.guide-world{font-size:62px;filter:drop-shadow(0 9px 20px #2a145a55)}.guide-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 21px}.guide-metrics div{background:#fff;border-radius:15px;padding:13px;border:1px solid #ece9f6}.guide-metrics span{display:block;font-size:10px;color:#8b86a0}.guide-metrics b{display:block;font-size:12px;color:#363055;margin-top:4px}
.guide-section{border:1px solid #ebe8f5;background:white;border-radius:16px;margin:10px 0;overflow:hidden}.guide-section summary{list-style:none;display:flex;justify-content:space-between;cursor:pointer;align-items:center;font-weight:790;color:#302c59;padding:15px}.guide-section summary::-webkit-details-marker{display:none}.guide-section .chevron{color:#7564e8}.guide-content{padding:0 15px 15px;font-size:12px;line-height:1.65;color:#5a5871}.guide-content p{margin:0}.day-plan{padding-left:20px}.day-plan li{margin:6px 0}.tag-list{display:flex;gap:7px;flex-wrap:wrap}.tag-list span{background:#f2efff;border:1px solid #e6dfff;color:#6052bb;font-size:11px;padding:7px 10px;border-radius:100px}.guide-footer{background:#fff8ec;color:#8b6330;border-radius:14px;padding:13px;margin:20px 0;font-size:11px}.guide-footer p{font-size:10px}.guide-ctas{display:flex;gap:7px}.guide-ctas .btn{flex:1;min-width:0;padding:12px 9px;font-size:11px}
.directory-list{display:grid;gap:9px;margin:18px 0}.directory-card{display:flex;width:100%;align-items:center;gap:14px;text-align:left;background:white;border:1px solid #eeebfa;border-radius:16px;padding:12px;animation-delay:var(--delay,0ms)}.directory-card:hover{background:#f8f6ff}.directory-emoji{height:45px;width:45px;background:#f0edff;border-radius:14px;display:grid;place-items:center;font-size:25px}.directory-card>span:nth-child(2){flex:1}.directory-card b{display:block;color:#292849;font-size:14px}.directory-card small{display:block;color:#89859c;font-size:11px}.directory-card strong{color:#6155e4;font-size:20px}
.check-progress{padding:18px;background:linear-gradient(120deg,#f1eeff,#ffeaf5);border-radius:19px;margin:18px 0}.progress-track{height:9px;background:#fff;border-radius:12px;overflow:hidden;margin-top:13px}.progress-track span{height:100%;display:block;background:linear-gradient(90deg,#6552e9,#ff819a);transition:width .35s}.checklist-items{display:grid;gap:8px}.check-row{display:flex;align-items:center;gap:12px;background:white;padding:14px;border:1px solid #eeeafa;border-radius:14px;font-size:12px;cursor:pointer}.check-row input{width:18px;height:18px;accent-color:#6456e7}.check-row input:checked+span{text-decoration:line-through;color:#9b97ae}.add-check{display:flex;gap:8px;margin-top:15px}.add-check input{flex:1;min-width:0;border:1px solid #ebe7f6;border-radius:14px;padding:12px;font:inherit}.add-check .btn{flex-shrink:0}
.auth{position:relative;background:radial-gradient(circle at top right,#ebe7ff,transparent 38%),#fff}.auth-decoration{height:115px;display:flex;align-items:center;justify-content:center;gap:35px;margin:-16px -15px 26px;border-radius:23px;background:linear-gradient(120deg,#edeaff,#ffeff6)}.auth-decoration span:first-child{font-size:70px;animation:floaty 6s infinite}.auth-decoration span:last-child{font-size:29px;transform:rotate(-22deg);color:#6d5bdf}
body.admin-view .shell{max-width:1050px}.adminbar{flex-wrap:wrap}.adminbar .chip{text-transform:capitalize}.admin-view .scroll{background:#fcfbff}
@keyframes fade-up{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@keyframes floaty{0%,100%{transform:translateY(0) rotate(-7deg)}50%{transform:translateY(-9px) rotate(4deg)}}@keyframes hero-zoom{from{transform:scale(1.02)}to{transform:scale(1.1)}}.fade-up{animation:fade-up .45s both}
@media(max-width:390px){.home-intro h1{font-size:30px}.destination-hero{min-height:240px}.hero-overlay{padding:20px}.destination-hero h2{font-size:28px}.guide-world{font-size:48px}.guide-banner{gap:11px}.place-card{grid-template-columns:80px 1fr;gap:9px}.place-illustration{min-height:130px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
