:root{--bg:#090b0f;--panel:#11151b;--panel2:#171c23;--line:#252c36;--line2:#343d49;--text:#f5f7fa;--muted:#929cab;--soft:#cbd2dc;--accent:#fff;--green:#77d7a0;--gold:#f2c861;--danger:#e98989;--shadow:0 30px 90px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(900px 500px at 50% -100px,#1c222c 0,#0c0f14 58%,#090b0f 100%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button,a{cursor:pointer}a{color:inherit}.topbar{height:70px;position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,5vw,70px);background:rgba(9,11,15,.82);backdrop-filter:blur(22px);border-bottom:1px solid rgba(255,255,255,.07)}.brand img{width:184px;height:46px;object-fit:contain}.top-nav{display:flex;align-items:center;gap:5px}.nav-link,.account-btn{border:0;background:transparent;color:#aeb6c3;padding:10px 12px;border-radius:10px;font-size:12px;font-weight:800}.nav-link:hover,.nav-link.active{color:#fff;background:#151a21}.nav-link span{color:#7f8997}.account-btn{background:#f4f6f8;color:#101318;margin-left:4px}.account-btn:hover{background:#fff}
main{padding-bottom:10px}.hero{max-width:1180px;margin:0 auto;padding:78px 22px 38px}.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:950;color:#7e8998}.hero h1{font-size:clamp(46px,7vw,82px);line-height:.95;letter-spacing:-.065em;margin:13px 0 18px;max-width:780px}.hero h1 em{font-style:normal;color:#b9c3d0}.hero p{max-width:700px;margin:0;color:#a8b1be;line-height:1.7;font-size:15px}.hero-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.hero-pills span{border:1px solid #29313b;background:rgba(18,23,30,.75);border-radius:999px;padding:8px 11px;color:#9da7b5;font-size:10px;font-weight:850}
.search-shell{max-width:1180px;margin:0 auto;padding:20px;background:rgba(17,21,27,.96);border:1px solid #2a323d;border-radius:25px;box-shadow:var(--shadow)}.search-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.search-head strong{display:block;font-size:19px;letter-spacing:-.02em}.search-head span{display:block;margin-top:4px;color:#7f8997;font-size:11px}.surprise{border:1px solid #343d49;background:#1a2028;color:#f0f3f6;border-radius:11px;padding:10px 13px;font-size:11px;font-weight:900}.surprise:hover{border-color:#626d7d}.search-grid{display:grid;grid-template-columns:1.8fr 1fr .8fr .9fr;gap:12px}.field{min-width:0}.location-field,.query-field{grid-column:span 2}.field label{display:block;margin:0 0 7px;color:#c8ced7;font-size:11px;font-weight:900}.field label span{color:#667181;font-weight:600}.field input,.field select,.money-input{height:50px;width:100%;border:1px solid #303946;background:#181d25;color:#f0f3f7;border-radius:12px;outline:none}.field input,.field select{padding:0 13px}.field input:focus,.field select:focus,.money-input:focus-within{border-color:#697586;box-shadow:0 0 0 3px rgba(255,255,255,.045)}.input-wrap{position:relative}.input-wrap input{padding-left:40px;padding-right:72px}.input-icon{position:absolute;left:13px;top:14px;color:#8893a2;font-size:19px}.clear-btn,.locate-btn{position:absolute;top:7px;height:36px;border:1px solid #343d49;background:#202630;color:#dce2e9;border-radius:9px}
.locate-btn{display:grid;place-items:center}.locate-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.clear-btn{right:49px;width:30px;font-size:19px;line-height:1}.locate-btn{right:7px;width:36px;border-radius:50%;font-size:19px}.clear-btn:hover,.locate-btn:hover{background:#2a313c}.money-input{display:flex;align-items:center;overflow:hidden}.money-input span{padding-left:13px;color:#7f8997;font-weight:900}.money-input input{border:0;box-shadow:none!important;background:transparent;padding-left:7px}.hint{font-size:10px;color:#697484;margin:6px 2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-bottom{display:flex;align-items:center;gap:12px;margin-top:14px}.toggle{display:flex;align-items:center;gap:9px;color:#9ca6b4;font-size:11px;font-weight:800;cursor:pointer}.toggle input{position:absolute;opacity:0}.toggle > span:first-of-type{width:34px;height:20px;border-radius:999px;background:#252c35;border:1px solid #394350;position:relative;display:block;flex:0 0 34px}.toggle > span:first-of-type:after{content:"";position:absolute;width:14px;height:14px;left:2px;top:2px;border-radius:50%;background:#7d8795;transition:.18s}.toggle input:checked + span:first-of-type{background:#e9edf2;border-color:#e9edf2}.toggle input:checked + span:first-of-type:after{left:16px;background:#11151b}.search-btn{margin-left:auto;height:52px;min-width:260px;border:0;border-radius:13px;background:#f4f6f8;color:#0e1116;font-weight:950;display:flex;align-items:center;justify-content:center;gap:28px;transition:.18s}.search-btn:hover{background:#fff;transform:translateY(-1px)}.search-btn:disabled{opacity:.6;cursor:wait}.search-btn.loading b{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.quick-cities{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:15px}.quick-cities span{font-size:10px;color:#657080;margin-right:3px}.quick-cities button{border:1px solid #2d3540;background:transparent;color:#9da7b5;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800}.quick-cities button:hover{color:#fff;border-color:#596474}.search-status{min-height:17px;margin-top:11px;color:#8d98a7;font-size:11px}.search-status[data-good="1"]{color:var(--green)}
.results-head{max-width:1180px;margin:68px auto 18px;padding:0 22px;display:flex;align-items:end;justify-content:space-between}.results-head h2{font-size:clamp(32px,4vw,52px);line-height:1;letter-spacing:-.055em;margin:8px 0 0}.result-meta{font-size:11px;color:#7f8997}.content-grid{max-width:1180px;margin:0 auto;padding:0 22px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(310px,.7fr);gap:18px;align-items:start}.results{display:grid;gap:11px}.result-card{background:linear-gradient(180deg,#151a21,#11151b);border:1px solid #282f39;border-radius:19px;padding:18px;transition:.18s}.result-card:hover{border-color:#4a5565;transform:translateY(-1px)}.card-top{display:flex;justify-content:space-between;gap:14px}.card-main{min-width:0}.source-row{display:flex;align-items:center;gap:8px}.source{font-size:9px;letter-spacing:.13em;color:#687383;font-weight:950}.rank{font-size:10px;color:#697485}.card-title{font-size:21px;line-height:1.15;margin:8px 0 6px;letter-spacing:-.025em}.card-address{color:#929dab;font-size:11px;line-height:1.5;max-width:700px}.card-icon{width:38px;height:38px;border:1px solid #303945;background:#1a2028;border-radius:12px;display:grid;place-items:center;font-size:17px;flex:0 0 auto}.badges{display:flex;flex-wrap:wrap;gap:6px;margin:15px 0}.badge{display:inline-flex;align-items:center;border:1px solid #303945;background:#1b2129;color:#b9c1cc;border-radius:999px;padding:6px 8px;font-size:10px;font-weight:800}.badge.rating{color:var(--gold)}.badge.good,.badge.open{color:#9de3b8;border-color:#315b45;background:#14231a}.badge.closed{color:#d99797}.card-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}.btn{border:1px solid #353f4b;background:#1a2028;color:#edf1f5;border-radius:10px;padding:9px 11px;font-size:10px;font-weight:900;text-decoration:none}.btn:hover{border-color:#657182}.btn.primary{background:#f4f6f8;color:#101318;border-color:#f4f6f8}.btn.save.saved{color:#f4d273;border-color:#625325}.empty{padding:45px 22px;border:1px dashed #353f4b;border-radius:18px;text-align:center;color:#8d98a7;background:rgba(16,20,26,.45)}.empty-icon{font-size:30px;color:#697586;margin-bottom:10px}.empty strong{display:block;color:#eef2f6;font-size:17px;margin-bottom:7px}.empty span{display:block;max-width:500px;margin:auto;line-height:1.6;font-size:11px}.skeleton-card{height:180px;border:1px solid #242c36;border-radius:18px;padding:18px;background:#12161c;overflow:hidden;position:relative}.skeleton-card:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.045),transparent);animation:shimmer 1.2s infinite}@keyframes shimmer{to{transform:translateX(100%)}}.sk-line{height:10px;width:55%;background:#252c36;border-radius:8px;margin-bottom:15px}.sk-small{width:22%;height:7px}.sk-title{width:48%;height:18px}.sk-wide{width:72%}.load-more{width:100%;height:46px;margin-top:10px;border:1px solid #303945;background:#141920;color:#dfe5eb;border-radius:11px;font-weight:900}
.map-card{position:sticky;top:88px;background:#11151b;border:1px solid #292f39;border-radius:20px;overflow:hidden;min-height:480px}.map-head{height:68px;padding:15px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #292f39}.map-head strong{display:block;font-size:14px}.map-head small{display:block;color:#727d8d;font-size:10px;margin-top:3px}.map-head>span{border:1px solid #38424e;border-radius:999px;padding:7px 9px;color:#d6dce3;font-size:9px;font-weight:950}.map-body{min-height:410px;background:radial-gradient(circle at 50% 20%,#1b222c,#11151b 58%);position:relative}.map-empty{min-height:260px;display:grid;place-content:center;text-align:center;padding:35px}.map-mark{font-size:31px;color:#e0e5eb;margin-bottom:10px}.map-empty strong{font-size:17px}.map-empty p{max-width:270px;color:#7e8998;font-size:11px;line-height:1.6;margin:8px auto 18px}.google-frame{width:100%;height:300px;border:0;display:block}.map-results{padding:10px;display:grid;gap:6px}.map-results a{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:7px;text-decoration:none;border:1px solid #29313b;background:#171c23;border-radius:10px;padding:8px;color:#dce2e9}.map-results a:hover{border-color:#536071}.map-results b{width:24px;height:24px;border-radius:7px;background:#242c36;display:grid;place-items:center;font-size:9px}.map-results span{font-size:10px;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-results small{font-size:9px;color:#7f8997}
.rating-panel{max-width:1180px;margin:50px auto 0;padding:22px;border:1px solid #292f39;border-radius:19px;background:#11151b;display:flex;align-items:center;justify-content:space-between;gap:20px}.rating-panel h3{margin:5px 0 4px;font-size:20px;letter-spacing:-.03em}.rating-panel p{margin:0;color:#7f8997;font-size:11px}.rating-side{text-align:right}.rating-stars{display:flex;justify-content:flex-end;gap:2px}.rating-star{border:0;background:transparent;color:#4e5968;font-size:29px;padding:0 2px;line-height:1;transition:.12s}.rating-star:hover,.rating-star.selected{color:var(--gold);transform:translateY(-1px)}.rating-meta{font-size:10px;color:#7f8997;margin-top:5px}.trust{max-width:1180px;margin:25px auto 70px;padding:20px 22px;border-top:1px solid #232a33;display:flex;align-items:center;justify-content:space-between;gap:20px}.trust strong{display:block;font-size:13px}.trust span{display:block;color:#778292;font-size:10px;margin-top:5px;max-width:640px;line-height:1.5}.trust-points{display:flex;gap:7px;flex-wrap:wrap}.trust-points span{border:1px solid #2c3440;border-radius:999px;padding:7px 9px;color:#8d98a7;font-size:9px;font-weight:850}
footer{border-top:1px solid #20262e;padding:28px max(22px,5vw);display:flex;align-items:flex-end;justify-content:space-between;gap:20px;color:#707b8a;font-size:10px}footer strong{display:block;color:#eef1f4;font-size:13px}footer span{display:block;margin-top:4px}.footer-links{display:flex;gap:14px}.footer-links a,.footer-links button{text-decoration:none;color:inherit;background:none;border:0;padding:0;font-size:10px}.footer-links a:hover,.footer-links button:hover{color:#fff}
.modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.76);backdrop-filter:blur(10px)}.modal.open{display:flex}.modal-box{position:relative;width:min(520px,100%);max-height:90vh;overflow:auto;background:#12171e;border:1px solid #353e4b;border-radius:20px;padding:23px;box-shadow:0 30px 100px rgba(0,0,0,.5)}.modal-box.large{width:min(760px,100%)}.close{position:absolute;right:12px;top:12px;width:34px;height:34px;border:1px solid #36404c;background:#1a2028;color:#fff;border-radius:50%;font-size:20px}.modal-box h3{margin:0 0 6px;font-size:25px;letter-spacing:-.035em}.muted{color:#7e8998;font-size:11px;line-height:1.55}.form-stack{display:grid;gap:10px;margin-top:18px}.form-stack input,.form-stack select,.form-stack textarea{width:100%;border:1px solid #303945;background:#191f27;color:#f1f4f7;border-radius:11px;padding:0 12px;height:46px;outline:none}.form-stack textarea{height:110px;padding:12px;resize:vertical}.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus{border-color:#697586}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.primary,.secondary-btn{height:45px;border-radius:10px;font-weight:900;border:1px solid #f4f6f8}.primary{background:#f4f6f8;color:#101318}.secondary-btn{background:#1a2028;color:#edf1f5;border-color:#3b4551}.form-status{min-height:18px;color:#aeb7c4;font-size:11px}.check{display:flex;align-items:flex-start;gap:8px;color:#858f9e;font-size:10px;line-height:1.45}.check input{width:15px;height:15px;flex:0 0 auto}.detail-hero{border-bottom:1px solid #2a323d;padding-bottom:18px;margin-bottom:18px}.detail-hero h3{font-size:29px;margin-top:9px}.detail-actions{display:flex;gap:7px;margin-top:14px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.detail-item{padding:11px;border:1px solid #2b333e;border-radius:11px;background:#181e26}.detail-item small{display:block;color:#737e8d;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.detail-item strong{display:block;margin-top:4px;font-size:11px}.detail-description{margin-top:18px}.fav-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #2b333e;background:#171c23;border-radius:12px;padding:12px;margin-top:8px}.fav-row strong,.fav-row small{display:block}.fav-row strong{font-size:12px}.fav-row small{font-size:9px;color:#7e8998;margin-top:3px}.fav-actions{display:flex;gap:6px}.toast{position:fixed;left:50%;bottom:20px;z-index:200;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#f4f6f8;color:#101318;padding:10px 14px;border-radius:10px;font-size:11px;font-weight:900;transition:.2s;box-shadow:0 12px 35px rgba(0,0,0,.35)}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.top-nav .nav-link:nth-child(1){display:none}.search-grid{grid-template-columns:1fr 1fr}.location-field,.query-field{grid-column:1/-1}.content-grid{grid-template-columns:1fr}.map-card{position:relative;top:auto}.rating-panel,.trust{margin-left:22px;margin-right:22px}.trust{display:block}.trust-points{margin-top:12px}.rating-panel{display:flex}}
@media(max-width:600px){.topbar{padding:0 14px}.brand img{width:155px}.top-nav .nav-link:nth-child(3){display:none}.account-btn{font-size:10px;padding:9px}.hero{padding:50px 16px 28px}.hero h1{font-size:48px}.hero p{font-size:14px}.search-shell{margin:0 12px;padding:14px;border-radius:18px}.search-head{align-items:flex-start}.search-head strong{font-size:16px}.surprise{font-size:10px;padding:9px}.search-grid{grid-template-columns:1fr}.location-field,.query-field{grid-column:auto}.search-bottom{display:block}.search-btn{width:100%;margin-top:12px}.quick-cities{line-height:1.9}.results-head{padding:0 16px;margin-top:50px}.content-grid{padding:0 12px}.result-card{padding:15px}.card-actions .btn{flex:1;text-align:center}.map-card{min-height:350px}.map-body{min-height:300px}.google-frame{height:230px}.rating-panel{margin-left:12px;margin-right:12px;display:block}.rating-side{text-align:left;margin-top:15px}.rating-stars{justify-content:flex-start}.trust{margin-left:12px;margin-right:12px;padding-left:0;padding-right:0}.two{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.fav-row{display:block}.fav-actions{margin-top:10px}.footer-links{margin:12px 0;flex-wrap:wrap}}

/* 4.1.1 LIQUID GLASS — visual layer only; layout and logic remain unchanged */
:root{
  --glass-bg:rgba(255,255,255,.055);
  --glass-bg-strong:rgba(255,255,255,.075);
  --glass-line:rgba(255,255,255,.115);
  --glass-line-soft:rgba(255,255,255,.075);
  --glass-shadow:0 24px 80px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.055);
}
body{
  background:
    radial-gradient(700px 420px at 8% -8%,rgba(255,255,255,.08),transparent 62%),
    radial-gradient(600px 420px at 92% 4%,rgba(140,155,180,.08),transparent 64%),
    linear-gradient(180deg,#0b0d11 0%,#080a0e 100%);
}
body:before,body:after{content:"";position:fixed;pointer-events:none;z-index:-1;border-radius:999px;filter:blur(70px);opacity:.18}
body:before{width:360px;height:360px;left:-170px;top:30vh;background:#fff}
body:after{width:300px;height:300px;right:-130px;bottom:8vh;background:#8e9bb0}
.topbar{
  background:rgba(10,12,16,.58);
  border-bottom:1px solid var(--glass-line-soft);
  box-shadow:0 12px 40px rgba(0,0,0,.16);
}
.nav-link,.account-btn,.surprise,.search-shell,.field input,.field select,.money-input,.quick-cities button,
.result-card,.map-card,.rating-panel,.modal-box,.detail-item,.fav-row,.load-more,.map-results a,.btn,.skeleton-card,
.clear-btn,.locate-btn,.map-head>span,.badge,.trust-points span{
  backdrop-filter:blur(18px) saturate(120%);
  -webkit-backdrop-filter:blur(18px) saturate(120%);
}
.nav-link:hover,.nav-link.active{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.07)}
.account-btn{background:rgba(255,255,255,.92);box-shadow:0 8px 30px rgba(255,255,255,.08)}
.hero h1{letter-spacing:-.055em}
.hero h1 em{font-style:normal;text-shadow:0 0 34px rgba(255,255,255,.12)}
.search-shell{
  background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.035));
  border-color:var(--glass-line);
  box-shadow:var(--glass-shadow);
}
.field input,.field select,.money-input{
  background:rgba(255,255,255,.045);
  border-color:rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.field input:focus,.field select:focus,.money-input:focus-within{border-color:rgba(255,255,255,.24);box-shadow:0 0 0 4px rgba(255,255,255,.035),inset 0 1px 0 rgba(255,255,255,.05)}
.search-btn{box-shadow:0 12px 34px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.8)}
.result-card{
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.032));
  border-color:var(--glass-line-soft);
  box-shadow:0 18px 55px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.045);
}
.result-card:hover{border-color:rgba(255,255,255,.18);box-shadow:0 24px 65px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.07)}
.card-icon,.badge,.btn,.map-results a,.detail-item,.fav-row,.load-more,.surprise,.clear-btn,.locate-btn{
  background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.095)
}
.btn.primary{background:rgba(255,255,255,.92);border-color:rgba(255,255,255,.92);box-shadow:0 8px 25px rgba(255,255,255,.07)}
.map-card{background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025));border-color:var(--glass-line);box-shadow:var(--glass-shadow)}
.map-body{background:radial-gradient(circle at 50% 15%,rgba(255,255,255,.075),transparent 45%),rgba(5,7,10,.24)}
.rating-panel{background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.028));border-color:var(--glass-line);box-shadow:var(--glass-shadow)}
.trust{border-top-color:rgba(255,255,255,.07)}
.modal{background:rgba(0,0,0,.62);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.modal-box{background:linear-gradient(145deg,rgba(24,28,35,.86),rgba(13,16,21,.82));border-color:rgba(255,255,255,.13);box-shadow:0 35px 120px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.055)}
.form-stack input,.form-stack select,.form-stack textarea{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.10)}
.empty{background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.11)}
@media(max-width:600px){body:before,body:after{opacity:.10}.search-shell{box-shadow:0 18px 55px rgba(0,0,0,.26)}.result-card{box-shadow:0 14px 40px rgba(0,0,0,.2)}}

/* 4.1.2 LIQUID GLASS REFINEMENT — cohesive glass, cleaner controls, responsive account */
:root{
  --glass-surface:rgba(255,255,255,.045);
  --glass-surface-2:rgba(255,255,255,.065);
  --glass-border:rgba(255,255,255,.12);
  --glass-border-soft:rgba(255,255,255,.075);
  --glass-highlight:rgba(255,255,255,.16);
}
body{
  background:
    radial-gradient(620px 420px at 8% 12%,rgba(255,255,255,.085),transparent 68%),
    radial-gradient(540px 420px at 92% 28%,rgba(130,145,170,.07),transparent 70%),
    radial-gradient(480px 360px at 52% 105%,rgba(255,255,255,.045),transparent 72%),
    #080a0d;
}
body:before{background:rgba(255,255,255,.8);opacity:.09;filter:blur(95px)}
body:after{background:rgba(135,150,175,.8);opacity:.08;filter:blur(100px)}
.topbar{
  height:74px;
  background:rgba(9,11,14,.46);
  border-bottom:1px solid rgba(255,255,255,.085);
  box-shadow:0 12px 50px rgba(0,0,0,.18),inset 0 -1px 0 rgba(255,255,255,.025);
}
.top-nav{gap:7px}
.nav-link,.account-btn{position:relative;border:1px solid transparent;transition:.18s ease}
.nav-link{background:rgba(255,255,255,.018)}
.nav-link:hover,.nav-link.active{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.09);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 8px 24px rgba(0,0,0,.12)}
.nav-link span{color:inherit}
.nav-tools{display:flex;align-items:center;gap:7px}
.language-wrap{
  position:relative;display:flex;align-items:center;justify-content:center;
  height:38px;min-width:58px;padding:0 4px 0 9px;
  border:1px solid rgba(255,255,255,.10);border-radius:12px;
  background:rgba(255,255,255,.045);box-shadow:inset 0 1px 0 rgba(255,255,255,.065),0 8px 25px rgba(0,0,0,.12);
  backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%);
}
.language-wrap>span{display:none}
.language-wrap:after{content:'⌄';position:absolute;right:7px;top:8px;color:#7e8997;font-size:11px;pointer-events:none}
.language-wrap select{
  appearance:none;-webkit-appearance:none;border:0;outline:0;background:transparent;color:#edf1f5;
  width:42px;height:34px;padding:0 12px 0 1px;font-size:11px;font-weight:900;cursor:pointer;
}
.language-wrap select option{background:#14181e;color:#fff}
.account-btn{height:38px;padding:0 15px;background:rgba(255,255,255,.93);border-color:rgba(255,255,255,.88);box-shadow:0 8px 28px rgba(255,255,255,.06),inset 0 1px 0 #fff}
.account-btn:hover{background:#fff;transform:translateY(-1px)}
.hero-pills span,.search-shell,.field input,.field select,.money-input,.result-card,.map-card,.rating-panel,.btn,.badge,.load-more,.surprise,.clear-btn,.locate-btn,.quick-cities button,.trust-points span,.modal-box,.detail-item,.fav-row{
  background:rgba(255,255,255,.042);
  border-color:var(--glass-border-soft);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
}
.hero-pills span{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.search-shell,.result-card,.map-card,.rating-panel,.modal-box{
  position:relative;overflow:hidden;
  backdrop-filter:blur(28px) saturate(125%);-webkit-backdrop-filter:blur(28px) saturate(125%);
}
.search-shell:before,.result-card:before,.map-card:before,.rating-panel:before,.modal-box:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(125deg,rgba(255,255,255,.095),transparent 27%,transparent 72%,rgba(255,255,255,.028));
  opacity:.7;
}
.search-shell>* ,.result-card>* ,.map-card>* ,.rating-panel>* ,.modal-box>*{position:relative;z-index:1}
.search-shell{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.14);box-shadow:0 30px 90px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08)}
.field input,.field select,.money-input{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.095);box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.field input:hover,.field select:hover,.money-input:hover{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14)}
.field input:focus,.field select:focus,.money-input:focus-within{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.25);box-shadow:0 0 0 4px rgba(255,255,255,.035),inset 0 1px 0 rgba(255,255,255,.08)}
.field input::placeholder{color:#8993a1}
.input-icon{color:#aeb8c5}
.clear-btn,.locate-btn{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.13);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.clear-btn:hover,.locate-btn:hover{background:rgba(255,255,255,.12)}
.hint{color:#788494}
.search-btn{height:54px;border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 15px 38px rgba(0,0,0,.22),inset 0 1px 0 #fff;transition:.18s ease}
.search-btn:hover{background:#fff;box-shadow:0 18px 44px rgba(0,0,0,.27);transform:translateY(-1px)}
.surprise{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.12)}
.quick-cities button{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.085)}
.quick-cities button:hover{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.15)}
.result-card{background:rgba(255,255,255,.043);border-color:rgba(255,255,255,.085)}
.result-card:hover{background:rgba(255,255,255,.058);border-color:rgba(255,255,255,.17)}
.card-icon,.badge,.btn,.detail-item,.fav-row,.map-results a,.load-more{background:rgba(255,255,255,.038);border-color:rgba(255,255,255,.085)}
.btn:hover,.load-more:hover{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.16)}
.btn.primary{background:rgba(255,255,255,.94);border-color:rgba(255,255,255,.9)}
.badge.good,.badge.open{background:rgba(95,190,130,.09);border-color:rgba(110,210,150,.20)}
.map-card{background:rgba(255,255,255,.038);border-color:rgba(255,255,255,.12)}
.map-head{border-bottom-color:rgba(255,255,255,.075)}
.map-body{background:radial-gradient(circle at 50% 15%,rgba(255,255,255,.065),transparent 48%),rgba(5,7,10,.22)}
.rating-panel{background:rgba(255,255,255,.042);border-color:rgba(255,255,255,.12)}
.trust{border-top-color:rgba(255,255,255,.07)}
.modal{background:rgba(0,0,0,.52);backdrop-filter:blur(24px) saturate(120%);-webkit-backdrop-filter:blur(24px) saturate(120%)}
.modal-box{background:rgba(20,24,30,.72);border-color:rgba(255,255,255,.14);box-shadow:0 35px 120px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.08)}
.close{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.11)}
.form-stack input,.form-stack select,.form-stack textarea{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.10)}
.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.22)}
/* Account management */
.account-modal-box{width:min(680px,100%)}
.modal-kicker{display:block;color:#778494;font-size:9px;letter-spacing:.18em;font-weight:950;margin-bottom:7px}
.account-heading{padding-right:35px}
.account-heading .muted{max-width:540px}
.account-connected{display:flex;align-items:center;gap:10px;margin-top:18px;padding:13px 14px;border:1px solid rgba(110,210,150,.16);background:rgba(110,210,150,.055);border-radius:14px}
.account-connected>div{min-width:0}.account-connected strong{display:block;font-size:12px}.account-connected small{display:block;color:#7e8a99;font-size:10px;margin-top:3px}.account-dot{width:8px;height:8px;border-radius:50%;background:#8ee2ae;box-shadow:0 0 16px rgba(120,220,160,.55);flex:0 0 auto}
.account-login-note{margin-top:18px;padding:12px 14px;border:1px solid rgba(255,255,255,.075);background:rgba(255,255,255,.025);border-radius:13px;color:#9da7b5;font-size:11px}
.account-logout{margin-top:10px;width:100%}
.account-requests,.admin-requests{margin-top:18px}
.account-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:9px}.account-section-title span{font-size:12px;font-weight:950}.account-section-title small{color:#737e8c;font-size:9px;text-align:right}.account-list,.admin-list{display:grid;gap:7px}.request-row,.admin-row{border:1px solid rgba(255,255,255,.075);background:rgba(255,255,255,.028);border-radius:13px;padding:11px 12px}.request-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.request-row strong,.request-row small{display:block}.request-row strong{font-size:11px}.request-row small{margin-top:3px;color:#778392;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}.request-status{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border:1px solid rgba(255,255,255,.09);border-radius:999px;padding:5px 8px;font-size:8px;font-weight:950}.request-status.pending{color:#e5c777;background:rgba(229,199,119,.06);border-color:rgba(229,199,119,.16)}.request-status.approved{color:#98e0b3;background:rgba(110,210,150,.07);border-color:rgba(110,210,150,.18)}.request-status.rejected{color:#e39a9a;background:rgba(220,120,120,.06);border-color:rgba(220,120,120,.16)}
.account-empty{padding:16px 12px;border:1px dashed rgba(255,255,255,.09);border-radius:13px;color:#778392;font-size:10px;text-align:center}.loading-row{color:#7e8998;font-size:10px}.admin-divider{height:1px;background:rgba(255,255,255,.075);margin:20px 0}.admin-row{display:flex;justify-content:space-between;gap:14px}.admin-row-main{min-width:0}.admin-row-main strong{display:block;font-size:11px}.admin-row-main small{display:block;margin-top:3px;color:#778392;font-size:9px}.admin-row-main p{margin:7px 0 0;color:#a2acb8;font-size:10px;line-height:1.45}.admin-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;align-content:flex-start;max-width:190px}.admin-row-actions .btn{padding:7px 9px}
@media(max-width:900px){.nav-tools{gap:5px}.language-wrap{min-width:54px}.account-modal-box{width:min(620px,100%)}}
@media(max-width:600px){
  .topbar{height:64px;padding:0 12px}.brand img{width:142px;height:42px}.top-nav{gap:4px}.nav-tools{margin-left:auto}.language-wrap{height:36px;min-width:50px;padding-left:6px}.language-wrap select{width:37px;font-size:10px}.account-btn{height:36px;padding:0 11px;font-size:10px}.hero{padding-top:44px}.hero h1{font-size:45px}.hero p{line-height:1.6}.search-shell{padding:14px}.search-head{gap:9px}.surprise{white-space:nowrap;padding:9px 10px}.field input,.field select,.money-input{height:48px}.hint{font-size:9px}.quick-cities{gap:5px}.quick-cities button{padding:6px 8px}.account-modal-box{padding:19px}.request-row{align-items:flex-start}.request-status{margin-top:1px}.request-row small{max-width:180px}.admin-row{display:block}.admin-row-actions{justify-content:flex-start;max-width:none;margin-top:10px}.admin-row-actions .request-status{margin-right:auto}.account-section-title{align-items:flex-start}.account-section-title small{text-align:right;max-width:48%}
}

/* 4.1.3 LIQUID GLASS POLISH — alignment, unified controls, mobile-safe admin */
:root{
  --liquid-bg: rgba(255,255,255,.048);
  --liquid-bg-strong: rgba(255,255,255,.068);
  --liquid-line: rgba(255,255,255,.115);
  --liquid-line-soft: rgba(255,255,255,.075);
}

/* One visual language: glass, not grey blocks. */
.search-shell,
.result-card,
.map-card,
.rating-panel,
.modal-box,
.empty,
.skeleton-card,
.request-row,
.admin-row,
.account-connected,
.account-login-note{
  background: var(--liquid-bg) !important;
  border-color: var(--liquid-line-soft) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055), 0 18px 55px rgba(0,0,0,.12);
}

.search-shell,
.result-card,
.map-card,
.rating-panel,
.modal-box{
  -webkit-backdrop-filter: blur(30px) saturate(135%);
  backdrop-filter: blur(30px) saturate(135%);
}

.search-shell{background:rgba(255,255,255,.055) !important;border-color:var(--liquid-line) !important;}
.result-card:hover{background:rgba(255,255,255,.065) !important;border-color:rgba(255,255,255,.16) !important;}

/* Results + map always begin on exactly the same grid line. */
.content-grid{align-items:stretch;}
.content-grid > div:first-child{min-width:0;}
.map-card{position:sticky;top:88px;align-self:start;min-height:0;height:max-content;}
.map-body{min-height:360px;}
.map-empty{min-height:300px;}

/* The map no longer visually floats below a short results state. */
.empty{min-height:360px;display:grid;place-content:center;}

/* Toggle must never collapse into the ugly two-line stack seen on desktop. */
.search-bottom{min-width:0;}
.toggle{flex:0 0 auto;white-space:nowrap;min-width:max-content;}
.toggle > span:first-of-type{flex:0 0 34px;}
.toggle > span:last-child{display:inline;}

/* Money input is one continuous glass surface — no two-tone € block. */
.money-input{background:rgba(255,255,255,.045) !important;border-color:var(--liquid-line-soft) !important;}
.money-input > span{background:transparent !important;color:#a8b2c0 !important;}
.money-input > input{background:transparent !important;color:#f0f3f7 !important;border:0 !important;}
.money-input > input:focus{background:transparent !important;}

/* Native select focus rings should not introduce a blue/white foreign UI language. */
.language-wrap select:focus,
.language-wrap select:focus-visible,
.field select:focus,
.form-stack select:focus{outline:none;}
.language-wrap select{border-radius:8px;}
.language-wrap{isolation:isolate;}
.language-wrap:focus-within{border-color:rgba(255,255,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 8px 25px rgba(0,0,0,.12);}

/* Compact, readable account/admin dashboard. */
.account-connected{background:rgba(110,210,150,.055) !important;}
.account-connected .account-dot{flex:0 0 auto;}
.account-error{display:flex;flex-direction:column;gap:5px;}
.account-error strong{color:#dfe5ec;font-size:11px;}
.account-error span{color:#7f8a99;font-size:10px;line-height:1.45;}
.admin-divider{background:rgba(255,255,255,.085);}
.admin-row{background:rgba(255,255,255,.032) !important;}
.admin-row-actions .btn{min-height:31px;}

/* Keep cards from creating horizontal overflow on small screens. */
.request-row,.admin-row{min-width:0;}
.request-row > div,.admin-row-main{min-width:0;}

@media(max-width:900px){
  .content-grid{grid-template-columns:1fr;}
  .map-card{position:relative;top:auto;}
  .map-body{min-height:320px;}
  .empty{min-height:300px;}
}

@media(max-width:600px){
  .search-bottom{align-items:flex-start;}
  .toggle{font-size:10px;gap:7px;}
  .toggle > span:first-of-type{width:34px;}
  .search-btn{min-width:0;flex:1;height:50px;}
  .money-input{height:48px;}
  .money-input > span{padding-left:12px;}
  .language-wrap{min-width:52px;width:52px;}
  .language-wrap select{width:39px;}
  .map-body{min-height:280px;}
  .map-empty{min-height:250px;padding:25px 18px;}
  .empty{min-height:260px;padding:34px 18px;}
  .request-row{gap:8px;}
  .request-row small{max-width:170px;}
  .admin-row-actions{display:grid;grid-template-columns:auto 1fr 1fr;align-items:center;}
  .admin-row-actions .request-status{margin:0;}
  .admin-row-actions .btn{width:100%;}
}

/* 4.1.4 MODAL SCROLL FIX — account/admin content must remain fully reachable */
.modal { overflow:auto; overscroll-behavior:contain; }
.modal-box { max-height:calc(100dvh - 36px) !important; overflow:auto !important; overscroll-behavior:contain; scrollbar-width:thin; }
.account-modal-box { max-height:calc(100dvh - 36px) !important; }
.account-modal-box .close { position:sticky; float:right; z-index:20; margin-left:auto; }

/* Admin dashboard: clear actions and filters without changing the data model. */
.admin-toolbar { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:10px; }
.admin-filter { display:flex; gap:5px; flex-wrap:wrap; }
.admin-filter button { border:1px solid rgba(255,255,255,.09); background:rgba(255,255,255,.035); color:#9aa5b4; border-radius:999px; padding:6px 9px; font-size:9px; font-weight:900; cursor:pointer; }
.admin-filter button.active { color:#f2f5f8; background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.18); }
.admin-empty { padding:18px 12px; border:1px dashed rgba(255,255,255,.10); border-radius:13px; text-align:center; color:#7f8a99; font-size:10px; }
@media(max-width:600px){ .modal { align-items:flex-start; padding:10px; } .modal-box { max-height:calc(100dvh - 20px) !important; border-radius:18px; padding:18px; } .admin-toolbar { align-items:flex-start; flex-direction:column; } }


/* 4.1.5 — deterministic glass controls: one switch, one surface */
.toggle{position:relative;display:inline-flex!important;align-items:center!important;gap:9px!important;min-height:28px!important;white-space:nowrap!important;line-height:1!important;}
.toggle input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;}
.toggle > span:first-of-type{display:block!important;position:relative!important;flex:0 0 38px!important;width:38px!important;height:22px!important;padding:0!important;margin:0!important;border-radius:999px!important;background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.15)!important;box-shadow:inset 0 1px 1px rgba(255,255,255,.07),0 4px 15px rgba(0,0,0,.14)!important;}
.toggle > span:first-of-type:after{content:""!important;display:block!important;position:absolute!important;width:16px!important;height:16px!important;left:2px!important;top:2px!important;border-radius:50%!important;background:#aeb8c5!important;box-shadow:0 1px 4px rgba(0,0,0,.3)!important;transition:transform .18s ease,background .18s ease!important;}
.toggle input:checked + span:first-of-type{background:rgba(255,255,255,.16)!important;border-color:rgba(255,255,255,.28)!important;}
.toggle input:checked + span:first-of-type:after{transform:translateX(16px)!important;background:#f4f6f8!important;}
.toggle > span:last-child{display:block!important;flex:0 1 auto!important;color:#aab4c1!important;font-size:11px!important;font-weight:850!important;line-height:1.1!important;}
.money-input{display:flex!important;align-items:center!important;overflow:hidden!important;padding:0!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.115)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;}
.money-input > span{display:flex!important;align-items:center!important;justify-content:center!important;align-self:stretch!important;min-width:42px!important;padding:0 0 0 12px!important;margin:0!important;background:transparent!important;color:#aeb8c5!important;border:0!important;font-weight:900!important;}
.money-input > input{display:block!important;flex:1 1 auto!important;min-width:0!important;height:100%!important;padding:0 13px 0 7px!important;margin:0!important;background:transparent!important;background-color:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:#f0f3f7!important;appearance:none!important;-webkit-appearance:none!important;}
.money-input > input:focus,.money-input:focus-within > input{background:transparent!important;box-shadow:none!important;outline:none!important;}
.money-input:focus-within{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.25)!important;box-shadow:0 0 0 4px rgba(255,255,255,.035),inset 0 1px 0 rgba(255,255,255,.08)!important;}
.discover-box{width:min(620px,100%);}
.discover-heading{padding-right:35px;margin-bottom:18px}.discover-heading h3{margin:0;font-size:28px;letter-spacing:-.04em}.discover-heading .muted{margin-top:7px;max-width:500px}
.discover-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.discover-field{min-width:0}.discover-field label{display:block;margin-bottom:7px;color:#c8ced7;font-size:10px;font-weight:900}.discover-field input{width:100%;height:48px;padding:0 13px;border:1px solid rgba(255,255,255,.10);border-radius:12px;background:rgba(255,255,255,.04);color:#f0f3f7;outline:none}.discover-wide{grid-column:1/-1}
.choice-row{display:flex;gap:6px;flex-wrap:wrap}.choice-row button,.mood-grid button{border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.035);color:#aeb8c5;border-radius:999px;padding:9px 11px;font-size:10px;font-weight:900;cursor:pointer;transition:.16s ease}.choice-row button.active,.mood-grid button.active{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.25);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.choice-row button:hover,.mood-grid button:hover{background:rgba(255,255,255,.08);color:#fff}
.mood-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.mood-grid button{border-radius:12px;min-height:54px;padding:8px 6px}.mood-grid button span{display:block;margin-top:4px}
.discover-submit{width:100%;margin-top:16px;min-height:52px;font-size:12px}
.admin-row-actions .btn.secondary-action{background:rgba(255,255,255,.045);}
@media(max-width:600px){.toggle{gap:7px!important}.toggle > span:last-child{font-size:10px!important}.money-input > span{min-width:38px!important;padding-left:10px!important}.discover-box{padding:18px!important}.discover-grid{grid-template-columns:1fr}.discover-wide{grid-column:auto}.mood-grid{grid-template-columns:repeat(2,1fr)}.mood-grid button:last-child{grid-column:1/-1}.choice-row{display:grid;grid-template-columns:repeat(4,1fr)}.choice-row button{width:100%;padding:9px 4px}.discover-heading h3{font-size:24px}}


/* 4.1.6 — final product polish: dense mobile cards, deterministic result surfaces */
.results{min-width:0;}
.result-card{min-width:0;}
.card-title,.card-address{overflow-wrap:anywhere;}
.admin-row-actions .btn.primary{box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 6px 18px rgba(0,0,0,.18);}
.admin-row-actions .btn:not(.primary){background:rgba(255,255,255,.055);}
@media(max-width:600px){
  .result-card{border-radius:16px;padding:14px;}
  .card-title{font-size:18px;}
  .card-address{font-size:10px;}
  .badges{margin:12px 0;gap:5px;}
  .badge{font-size:9px;padding:5px 7px;}
  .card-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;}
  .card-actions .btn{min-width:0;padding:9px 7px;}
  .card-actions .save{grid-column:1/-1;}
  .admin-row-actions{grid-template-columns:1fr 1fr !important;}
  .admin-row-actions .request-status{grid-column:1/-1;justify-self:start;}
}


/* 4.1.7 — final UX pass: cohesive glass, admin controls, responsive polish */
html{background:#080a0e;}
body{overflow-x:hidden;}
.topbar{background:rgba(8,10,14,.62);backdrop-filter:blur(26px) saturate(135%);-webkit-backdrop-filter:blur(26px) saturate(135%);}
.search-shell,.result-card,.map-card,.rating-panel,.modal-box{background:linear-gradient(135deg,rgba(255,255,255,.065),rgba(255,255,255,.025));border-color:rgba(255,255,255,.12);}
.field input,.field select,.money-input,.discover-field input,.form-stack input,.form-stack select,.form-stack textarea{background:rgba(255,255,255,.038);color:#f4f6f8;border-color:rgba(255,255,255,.11);}
.field input::placeholder,.discover-field input::placeholder,.form-stack input::placeholder,.form-stack textarea::placeholder{color:#6f7a89;opacity:1;}
.money-input>span{color:#aeb8c5;background:transparent!important;}
.money-input>input,.money-input>input:focus{background:transparent!important;color:#f4f6f8!important;-webkit-text-fill-color:#f4f6f8!important;}
.money-input:focus-within{background:rgba(255,255,255,.055)!important;}
.toggle{min-width:max-content;}
.toggle>span:last-child{white-space:nowrap;}

/* Account / admin: one clear status surface and compact action group. */
.account-modal-box{width:min(860px,100%);}
.account-connected{background:linear-gradient(135deg,rgba(110,210,150,.09),rgba(110,210,150,.035))!important;border-color:rgba(110,210,150,.20)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.045);}
.account-logout{width:100%;margin-top:10px;background:rgba(255,255,255,.045)!important;border-color:rgba(255,255,255,.10)!important;}
.admin-divider{margin:24px 0 18px;background:rgba(255,255,255,.10);}
.admin-toolbar{padding:0 0 4px;}
.admin-filter{padding:4px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);border-radius:14px;}
.admin-filter button{padding:8px 12px;background:transparent;border-color:transparent;}
.admin-filter button.active{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.07);}
.admin-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;background:linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.018))!important;border-color:rgba(255,255,255,.09)!important;border-radius:16px;padding:15px 16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.035);}
.admin-row-main strong{font-size:13px;}
.admin-row-main small{font-size:10px;}
.admin-row-main p{font-size:10px;margin-top:8px;color:#9aa5b3;}
.admin-row-actions{display:flex!important;align-items:center;justify-content:flex-end;gap:6px;max-width:none!important;flex-wrap:nowrap!important;}
.admin-row-actions .request-status{order:-1;margin:0 3px 0 0!important;}
.admin-row-actions .btn{min-width:96px;min-height:36px;padding:8px 12px;border-radius:10px;}
.admin-row-actions .btn.primary{box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 7px 20px rgba(0,0,0,.16);}
.admin-row-actions .btn:not(.primary){background:rgba(255,255,255,.045);}

/* Result cards: consistent hierarchy and no accidental overflow. */
.result-card{box-shadow:0 18px 55px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.045);}
.card-title{overflow-wrap:break-word;word-break:normal;}
.badge{background:rgba(255,255,255,.04);}
.map-card{align-self:start;}

@media(max-width:900px){
  .content-grid{gap:14px;}
  .map-card{min-height:360px;}
}
@media(max-width:600px){
  .admin-row{grid-template-columns:1fr!important;gap:12px;padding:14px;}
  .admin-row-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px;width:100%;}
  .admin-row-actions .request-status{grid-column:1/-1;justify-self:start;}
  .admin-row-actions .btn{width:100%;min-width:0;}
  .admin-filter{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:4px;}
  .admin-filter button{width:100%;}
  .account-modal-box{width:100%;}
  .search-bottom{gap:10px;}
  .toggle{max-width:48%;}
  .toggle>span:last-child{overflow:hidden;text-overflow:ellipsis;}
  .money-input{width:100%;}
  .field label{font-size:10px;}
  .card-icon{width:34px;height:34px;}
}

/* 4.1.8 — final status controls + rating clarity */
.rating-star{color:#596474;}
.rating-star.filled,.rating-star.selected{color:var(--gold);}
.rating-star.selected{transform:translateY(-1px);}
.rating-star:hover{color:var(--gold);}
.admin-filter{display:flex;align-items:stretch;gap:4px;}
.admin-filter button{flex:1;min-width:112px;min-height:38px;border:1px solid transparent;border-radius:10px;color:#aab3bf;font-weight:900;transition:.16s ease;}
.admin-filter button[data-admin-filter="pending"]{color:#e5c777;}
.admin-filter button[data-admin-filter="approved"]{color:#98e0b3;}
.admin-filter button[data-admin-filter="rejected"]{color:#e39a9a;}
.admin-filter button.active[data-admin-filter="pending"]{background:rgba(229,199,119,.14);border-color:rgba(229,199,119,.30);box-shadow:inset 0 1px 0 rgba(255,255,255,.08);}
.admin-filter button.active[data-admin-filter="approved"]{background:rgba(110,210,150,.14);border-color:rgba(110,210,150,.30);box-shadow:inset 0 1px 0 rgba(255,255,255,.08);}
.admin-filter button.active[data-admin-filter="rejected"]{background:rgba(220,120,120,.14);border-color:rgba(220,120,120,.30);box-shadow:inset 0 1px 0 rgba(255,255,255,.08);}
.admin-filter button[data-admin-filter="all"]{color:#c7ced7;}
.admin-filter button.active[data-admin-filter="all"]{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.14);}
.admin-action{width:108px!important;min-width:108px!important;height:38px!important;min-height:38px!important;display:inline-flex;align-items:center;justify-content:center;padding:0 12px!important;font-weight:950!important;}
.admin-action.approve-action{background:rgba(110,210,150,.14)!important;color:#98e0b3!important;border-color:rgba(110,210,150,.30)!important;}
.admin-action.reject-action{background:rgba(220,120,120,.14)!important;color:#e39a9a!important;border-color:rgba(220,120,120,.30)!important;}
.admin-action.pending-action{background:rgba(229,199,119,.14)!important;color:#e5c777!important;border-color:rgba(229,199,119,.30)!important;}
.admin-action:hover{filter:brightness(1.12);transform:translateY(-1px);}
.input-wrap .locate-btn{right:49px;}
.input-wrap .clear-btn{right:7px;}
@media(max-width:600px){.admin-filter{display:grid;grid-template-columns:1fr 1fr;}.admin-filter button{min-width:0;width:100%;}.admin-action{width:100%!important;min-width:0!important;}.input-wrap .locate-btn{right:49px;}.input-wrap .clear-btn{right:7px;}}

/* 4.1.9 — Discovery close button: keep it clear of the heading on every viewport */
.discover-box > .close{
  position:absolute!important;
  top:16px!important;
  right:16px!important;
  left:auto!important;
  float:none!important;
  margin:0!important;
  z-index:30!important;
}
.discover-box .discover-heading{
  padding-top:34px!important;
  padding-right:0!important;
}
@media(max-width:600px){
  .discover-box > .close{top:14px!important;right:14px!important;}
  .discover-box .discover-heading{padding-top:34px!important;}
}

/* 4.2.0 — ALL-IN-ONE CONSISTENCY LOCK
   Final cumulative fixes: status controls, rating stars, location actions, Discovery close button. */
.admin-filter{display:flex!important;align-items:stretch!important;gap:4px!important;}
.admin-filter button{flex:1 1 0!important;min-width:112px!important;height:38px!important;min-height:38px!important;box-sizing:border-box!important;}
.admin-action{width:108px!important;min-width:108px!important;height:38px!important;min-height:38px!important;box-sizing:border-box!important;}
.admin-action.approve-action{background:rgba(110,210,150,.14)!important;color:#98e0b3!important;border-color:rgba(110,210,150,.30)!important;}
.admin-action.pending-action{background:rgba(229,199,119,.14)!important;color:#e5c777!important;border-color:rgba(229,199,119,.30)!important;}
.admin-action.reject-action{background:rgba(220,120,120,.14)!important;color:#e39a9a!important;border-color:rgba(220,120,120,.30)!important;}
.rating-star.filled{color:var(--gold)!important;}
.rating-star.selected{color:var(--gold)!important;}
.money-input,.money-input>span,.money-input>input,.money-input>input:focus{background:transparent!important;}
.money-input{background:rgba(255,255,255,.045)!important;}
.input-wrap .locate-btn{right:49px!important;}
.input-wrap .clear-btn{right:7px!important;}
.discover-box{position:relative!important;}
.discover-box>.close{top:16px!important;right:16px!important;left:auto!important;position:absolute!important;z-index:30!important;}
@media(max-width:600px){
  .admin-filter{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;}
  .admin-filter button{min-width:0!important;width:100%!important;}
  .admin-action{width:100%!important;min-width:0!important;}
  .input-wrap .locate-btn{right:49px!important;}
  .input-wrap .clear-btn{right:7px!important;}
}

/* 4.3 LIQUID GLASS DEEP POLISH — unified translucent surfaces */
:root{
  --glass-white: rgba(255,255,255,.055);
  --glass-white-strong: rgba(255,255,255,.085);
  --glass-edge: rgba(255,255,255,.145);
  --glass-edge-soft: rgba(255,255,255,.085);
  --glass-shadow: 0 24px 80px rgba(0,0,0,.28);
}
body{
  background:
    radial-gradient(700px 420px at 8% 38%, rgba(255,255,255,.055), transparent 68%),
    radial-gradient(620px 420px at 92% 70%, rgba(255,255,255,.035), transparent 70%),
    #080a0d;
}
.search-shell,.result-card,.map-card,.rating-panel,.modal-box,.discover-box,.trust-card,.account-modal-box{
  background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.028) 48%,rgba(255,255,255,.045)) !important;
  border:1px solid var(--glass-edge) !important;
  box-shadow:var(--glass-shadow), inset 0 1px 0 rgba(255,255,255,.11), inset 0 -1px 0 rgba(255,255,255,.018) !important;
  -webkit-backdrop-filter:blur(34px) saturate(145%);
  backdrop-filter:blur(34px) saturate(145%);
}
.search-shell:after,.result-card:after,.map-card:after,.rating-panel:after,.modal-box:after,.discover-box:after,.trust-card:after,.account-modal-box:after{
  content:"";position:absolute;inset:1px;border-radius:inherit;pointer-events:none;
  background:linear-gradient(115deg,rgba(255,255,255,.075),transparent 22%,transparent 68%,rgba(255,255,255,.028));
  mix-blend-mode:screen;opacity:.72;
}
.field input,.field select,.money-input,.form-stack input,.form-stack select,.form-stack textarea{
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.105) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), inset 0 -1px 0 rgba(0,0,0,.12) !important;
  -webkit-backdrop-filter:blur(22px) saturate(135%);
  backdrop-filter:blur(22px) saturate(135%);
}
.field input:focus,.field select:focus,.money-input:focus-within,.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus{
  background:rgba(255,255,255,.065) !important;
  border-color:rgba(255,255,255,.24) !important;
  box-shadow:0 0 0 4px rgba(255,255,255,.025),inset 0 1px 0 rgba(255,255,255,.105) !important;
}
.money-input{overflow:hidden;display:flex;align-items:center}
.money-input .currency,.money-input span:first-child{background:transparent !important;color:#aeb8c5 !important;border:0 !important;box-shadow:none !important}
.money-input input{background:transparent !important;border:0 !important;box-shadow:none !important;min-width:0}
.btn,.badge,.quick-cities button,.surprise,.load-more,.trust-points span,.card-icon,.clear-btn,.locate-btn,.close{
  background:rgba(255,255,255,.045) !important;
  border-color:rgba(255,255,255,.10) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.065), inset 0 -1px 0 rgba(0,0,0,.10) !important;
  -webkit-backdrop-filter:blur(18px) saturate(130%);
  backdrop-filter:blur(18px) saturate(130%);
}
.btn.primary,.search-btn{background:rgba(248,249,250,.95) !important;color:#0b0d10 !important;border-color:rgba(255,255,255,.92) !important;box-shadow:0 16px 44px rgba(0,0,0,.25),inset 0 1px 0 #fff !important}
.btn:hover,.badge:hover,.quick-cities button:hover,.surprise:hover,.load-more:hover{background:rgba(255,255,255,.075) !important}
.language-wrap{
  position:relative;display:flex;align-items:center;justify-content:center;height:38px;min-width:56px;padding:0 4px 0 8px;
  border:1px solid rgba(255,255,255,.105);border-radius:12px;
  background:rgba(255,255,255,.045);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 30px rgba(0,0,0,.16);
  -webkit-backdrop-filter:blur(20px) saturate(135%);backdrop-filter:blur(20px) saturate(135%);
}
.language-wrap:after{right:7px;top:50%;transform:translateY(-50%);font-size:10px;color:#aeb8c5}
.language-wrap select{width:48px;height:32px;padding:0 12px 0 3px;text-align:center;font-size:10px;letter-spacing:.05em;background:transparent !important}
.language-wrap select option{background:#14171c;color:#f3f5f7}
@media(max-width:600px){
  .language-wrap{height:36px;min-width:50px;border-radius:11px}.language-wrap select{width:42px;font-size:9px}
}

/* 4.3.1 RESPONSIVE HEADER POLISH — compact mobile + portrait tablets */
@media (min-width:601px) and (max-width:900px){
  .topbar{height:68px;padding:0 18px;gap:14px;}
  .brand{flex:0 1 150px;min-width:0;}
  .brand img{width:150px;height:42px;}
  .top-nav{min-width:0;flex:1;justify-content:flex-end;gap:5px;}
  .top-nav .nav-link:nth-child(1),
  .top-nav .nav-link:nth-child(3){display:none;}
  #favoritesBtn{padding:9px 10px;white-space:nowrap;}
  .nav-tools{gap:5px;}
  .language-wrap{height:36px;min-width:52px;}
  .account-btn{height:36px;padding:0 12px;white-space:nowrap;}
}

@media (max-width:600px){
  .topbar{
    height:62px;
    min-height:62px;
    padding:0 10px;
    gap:6px;
    overflow:visible;
  }
  .brand{flex:0 1 126px;min-width:0;}
  .brand img{width:126px;height:38px;object-fit:contain;}
  .top-nav{flex:1;min-width:0;justify-content:flex-end;gap:4px;}
  .top-nav .nav-link:nth-child(1),
  .top-nav .nav-link:nth-child(3){display:none;}
  #favoritesBtn{
    width:38px;
    min-width:38px;
    height:36px;
    padding:0;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:3px;
    border-radius:11px;
    white-space:nowrap;
  }
  #favoritesBtn span[data-i18n="saved"]{
    font-size:0;
    line-height:1;
  }
  #favoritesBtn span[data-i18n="saved"]::before{
    content:"♡";
    font-size:18px;
    color:#aeb8c5;
  }
  #favCount{font-size:9px;font-weight:950;color:#aeb8c5;}
  .nav-tools{gap:4px;min-width:0;}
  .language-wrap{
    width:48px;
    min-width:48px;
    height:36px;
    padding:0;
    border-radius:11px;
  }
  .language-wrap select{width:40px;height:32px;font-size:9px;padding:0 10px 0 2px;}
  .account-btn{
    height:36px;
    max-width:92px;
    padding:0 10px;
    font-size:10px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
}

/* 4.3.2 privacy & cookie consent */
.consent-modal{z-index:500;background:rgba(3,5,8,.72);backdrop-filter:blur(28px) saturate(130%);-webkit-backdrop-filter:blur(28px) saturate(130%)}
.consent-box{width:min(620px,100%);padding:30px;background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.18);box-shadow:0 40px 120px rgba(0,0,0,.65),inset 0 1px 0 rgba(255,255,255,.11);border-radius:28px}
.consent-kicker{font-size:10px;letter-spacing:.2em;font-weight:950;color:#91a0b5;margin-bottom:9px}.consent-box h3{font-size:30px;line-height:1.05;margin:0 0 10px}.consent-links{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.consent-links a{display:inline-flex;align-items:center;padding:8px 11px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.055);color:#eef2f6;text-decoration:none;font-size:11px;font-weight:850}.consent-note{padding:13px 14px;border:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.14);border-radius:14px;color:#aab5c4;font-size:11px;line-height:1.55}.consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.consent-actions button{min-height:48px}
@media(max-width:600px){.consent-modal{padding:10px;align-items:flex-end}.consent-box{padding:22px;border-radius:24px}.consent-box h3{font-size:25px}.consent-actions{grid-template-columns:1fr}.consent-links{gap:6px}}

/* 4.4.0 PWA polish — installable app shell + safe-area support */
html,body{min-height:100%;overscroll-behavior-x:none}
body{padding-bottom:env(safe-area-inset-bottom)}
@media(display-mode:standalone){
  .topbar{padding-top:max(10px,env(safe-area-inset-top));height:calc(72px + env(safe-area-inset-top))}
}
@media(max-width:600px){
  .topbar{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
}

/* 4.4.1 — MOBILE UX OVERHAUL
   Targeted responsive polish for phones + portrait tablets. Desktop layout remains unchanged. */

/* Neutralize iOS/WebKit autofill so account fields stay inside the dark glass system. */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
select:-webkit-autofill{
  -webkit-text-fill-color:#f3f5f7 !important;
  caret-color:#f3f5f7;
  -webkit-box-shadow:0 0 0 1000px rgba(255,255,255,.045) inset !important;
  box-shadow:0 0 0 1000px rgba(255,255,255,.045) inset !important;
  transition:background-color 9999s ease-out 0s;
}

/* Keep every admin status control visually equal while preserving its semantic color. */
.admin-filter button[data-admin-filter="pending"],
.admin-filter button[data-admin-filter="all"],
.admin-filter button[data-admin-filter="approved"],
.admin-filter button[data-admin-filter="rejected"]{
  height:38px !important;
  min-height:38px !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

@media (max-width:900px){
  .account-modal-box{
    width:min(720px,100%) !important;
    max-height:calc(100dvh - 20px) !important;
  }
}

@media (max-width:600px){
  /* Account becomes a proper mobile glass sheet instead of a shrunken desktop dialog. */
  .modal#accountModal{
    align-items:flex-end !important;
    padding:0 !important;
  }
  .account-modal-box{
    width:100% !important;
    max-width:none !important;
    max-height:calc(100dvh - env(safe-area-inset-top) - 8px) !important;
    min-height:0 !important;
    margin:0 !important;
    padding:calc(22px + env(safe-area-inset-top)) 18px calc(22px + env(safe-area-inset-bottom)) !important;
    border-radius:26px 26px 0 0 !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    overscroll-behavior:contain !important;
    -webkit-overflow-scrolling:touch !important;
  }
  .account-modal-box .close{
    position:absolute !important;
    top:14px !important;
    right:14px !important;
    float:none !important;
    margin:0 !important;
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    padding:0 !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    z-index:50 !important;
  }
  .account-heading{
    padding-top:26px !important;
    padding-right:52px !important;
  }
  .account-heading .modal-kicker{display:block !important;}
  .account-heading h3{
    font-size:30px !important;
    line-height:1.05 !important;
    margin-top:5px !important;
  }
  .account-heading p{
    font-size:13px !important;
    line-height:1.45 !important;
    margin-top:10px !important;
  }

  /* Admin filter = balanced 2×2 touch grid. */
  .admin-toolbar{width:100% !important; margin-bottom:12px !important;}
  .admin-filter{
    width:100% !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:6px !important;
    padding:5px !important;
    border-radius:16px !important;
  }
  .admin-filter button{
    width:100% !important;
    min-width:0 !important;
    height:40px !important;
    min-height:40px !important;
    padding:0 8px !important;
    border-radius:11px !important;
    font-size:11px !important;
  }

  /* Request cards: compact metadata, full-width equal action buttons. */
  .admin-row{
    padding:15px !important;
    border-radius:18px !important;
    gap:12px !important;
  }
  .admin-row-main strong{font-size:15px !important;}
  .admin-row-main small{font-size:11px !important;}
  .admin-row-main p{font-size:11px !important;line-height:1.45 !important;margin-top:7px !important;}
  .admin-row-actions{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:7px !important;
    width:100% !important;
  }
  .admin-row-actions .request-status{
    grid-column:1/-1 !important;
    justify-self:start !important;
    margin:0 !important;
  }
  .admin-row-actions .admin-action{
    width:100% !important;
    min-width:0 !important;
    height:42px !important;
    min-height:42px !important;
    border-radius:12px !important;
    padding:0 8px !important;
    font-size:12px !important;
  }

  /* Remove the oversized empty feeling around the account dashboard. */
  .account-connected{margin-bottom:10px !important;}
  .account-logout{min-height:44px !important;margin-top:8px !important;}
  .admin-divider{margin:20px 0 16px !important;}

  /* Search location actions: location first, clear second, both same visual family. */
  .input-wrap .locate-btn,
  .input-wrap .clear-btn{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    border-radius:12px !important;
  }
  .input-wrap .locate-btn{right:52px !important;}
  .input-wrap .clear-btn{right:7px !important;}

  /* Stronger liquid-glass depth without increasing visual noise. */
  .search-shell,.result-card,.map-card,.rating-panel,.modal-box,.discover-box,.trust-card,.account-modal-box{
    -webkit-backdrop-filter:blur(38px) saturate(150%) !important;
    backdrop-filter:blur(38px) saturate(150%) !important;
  }

  /* iPhone safe-area around the main app header. */
  .topbar{
    padding-left:max(10px,env(safe-area-inset-left)) !important;
    padding-right:max(10px,env(safe-area-inset-right)) !important;
  }
}

@media (min-width:601px) and (max-width:900px){
  /* Portrait tablet: retain desktop navigation hierarchy but avoid the cramped desktop proportions. */
  .account-modal-box{padding:24px !important;}
  .admin-row{grid-template-columns:minmax(0,1fr) auto !important;}
  .admin-row-actions{gap:7px !important;}
  .admin-action{min-width:96px !important;}
}

/* 4.5.0 — profile photos + founder sync */
.account-profile{
  margin-top:16px;padding:15px;border:1px solid rgba(255,255,255,.10);border-radius:18px;
  background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 14px 40px rgba(0,0,0,.12);
  -webkit-backdrop-filter:blur(30px) saturate(145%);backdrop-filter:blur(30px) saturate(145%);
}
.profile-head{display:flex;align-items:center;gap:14px;min-width:0}.profile-avatar{width:68px;height:68px;flex:0 0 68px;border-radius:50%;overflow:hidden;border:1px solid rgba(255,255,255,.16);background:radial-gradient(circle at 35% 25%,rgba(255,255,255,.16),rgba(255,255,255,.045));display:grid;place-items:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 10px 25px rgba(0,0,0,.18)}
.profile-avatar img{width:100%;height:100%;object-fit:cover;display:block}.profile-avatar span{font-size:17px;font-weight:950;color:#dce2e9;letter-spacing:.03em}.profile-copy{min-width:0;flex:1}.profile-copy .account-section-title{margin-bottom:4px}.profile-copy>strong{display:block;font-size:11px;color:#eef2f6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-copy>small{display:block;color:#7e8998;font-size:9px;line-height:1.45;margin-top:5px;max-width:560px}.profile-actions{display:flex;gap:7px;margin-top:12px;flex-wrap:wrap}.profile-actions .btn{cursor:pointer}.profile-upload{position:relative;overflow:hidden}.profile-upload input{position:absolute!important;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.profile-remove{color:#e39a9a!important;border-color:rgba(220,120,120,.18)!important;background:rgba(220,120,120,.045)!important}
.founder-panel{max-width:1180px;margin:62px auto 24px;padding:18px 20px;display:flex;align-items:center;gap:18px;border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018));border:1px solid rgba(255,255,255,.10);box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 18px 55px rgba(0,0,0,.14);-webkit-backdrop-filter:blur(32px) saturate(145%);backdrop-filter:blur(32px) saturate(145%)}
.founder-photo-wrap{width:72px;height:72px;flex:0 0 72px;border-radius:50%;padding:2px;background:linear-gradient(135deg,rgba(255,255,255,.35),rgba(255,255,255,.08));box-shadow:0 12px 32px rgba(0,0,0,.22)}.founder-photo-wrap img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.founder-copy{min-width:0}.founder-copy h2{margin:4px 0 5px;font-size:20px;letter-spacing:-.03em}.founder-copy strong{font-size:11px;color:#eef2f6}.founder-copy .muted{margin:0 0 7px;font-size:10px}
@media(max-width:600px){.account-profile{padding:13px}.profile-avatar{width:58px;height:58px;flex-basis:58px}.profile-copy>small{font-size:8px}.profile-actions{display:grid;grid-template-columns:1fr 1fr}.profile-actions .btn{width:100%;text-align:center}.founder-panel{margin:42px 12px 20px;padding:15px;border-radius:18px;gap:13px}.founder-photo-wrap{width:58px;height:58px;flex-basis:58px}.founder-copy h2{font-size:17px}.founder-copy .muted{font-size:9px}}

/* 4.5.1 final founder-card guardrail */
.founder-panel.glass-surface{
  display:flex !important;
  align-items:center !important;
  width:calc(100% - 44px) !important;
  max-width:1180px !important;
  min-height:112px !important;
  height:auto !important;
  margin:52px auto 24px !important;
  padding:18px 20px !important;
  gap:18px !important;
  overflow:hidden !important;
  position:relative !important;
  box-sizing:border-box !important;
}
.founder-panel.glass-surface .founder-photo-wrap{
  width:76px !important;height:76px !important;min-width:76px !important;max-width:76px !important;
  min-height:76px !important;max-height:76px !important;flex:0 0 76px !important;
  overflow:hidden !important;border-radius:50% !important;
}
.founder-panel.glass-surface .founder-photo-wrap img#founderPhoto{
  display:block !important;width:100% !important;height:100% !important;min-width:100% !important;max-width:100% !important;
  min-height:100% !important;max-height:100% !important;object-fit:cover !important;object-position:center !important;
  border-radius:50% !important;
}
.founder-panel.glass-surface .founder-copy{flex:1 1 auto !important;min-width:0 !important;overflow:hidden !important}
.founder-panel.glass-surface .founder-copy h2{font-size:20px !important;line-height:1.15 !important;margin:4px 0 5px !important}
@media(max-width:600px){
  .founder-panel.glass-surface{width:calc(100% - 24px) !important;margin:38px 12px 20px !important;padding:14px !important;gap:12px !important;min-height:86px !important;border-radius:18px !important}
  .founder-panel.glass-surface .founder-photo-wrap{width:58px !important;height:58px !important;min-width:58px !important;max-width:58px !important;min-height:58px !important;max-height:58px !important;flex-basis:58px !important}
  .founder-panel.glass-surface .founder-copy h2{font-size:17px !important}
  .founder-panel.glass-surface .founder-copy .muted{font-size:9px !important}
}

/* 4.6.0 — LIQUID GLASS + STABILITY POLISH
   A single visual language across desktop, portrait tablets and phones. */
:root{
  --lg-bg:rgba(255,255,255,.045);
  --lg-bg-2:rgba(255,255,255,.022);
  --lg-edge:rgba(255,255,255,.14);
  --lg-edge-hi:rgba(255,255,255,.22);
  --lg-shadow:0 28px 90px rgba(0,0,0,.34);
  --lg-radius:24px;
}
body{background:
  radial-gradient(900px 520px at 0% 28%,rgba(255,255,255,.075),transparent 66%),
  radial-gradient(760px 520px at 100% 66%,rgba(130,150,180,.045),transparent 68%),
  radial-gradient(500px 340px at 52% 100%,rgba(255,255,255,.025),transparent 70%),#07090c;}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(120deg,transparent 0 32%,rgba(255,255,255,.012) 45%,transparent 62%);}
.search-shell,.result-card,.map-card,.rating-panel,.modal-box,.discover-box,.trust-card,.account-modal-box,.founder-panel,.empty{
  position:relative;isolation:isolate;overflow:hidden;
  background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.025) 42%,rgba(255,255,255,.052)) !important;
  border:1px solid var(--lg-edge) !important;
  border-radius:var(--lg-radius) !important;
  box-shadow:var(--lg-shadow),inset 0 1px 0 rgba(255,255,255,.115),inset 0 -1px 0 rgba(0,0,0,.18) !important;
  -webkit-backdrop-filter:blur(30px) saturate(155%);backdrop-filter:blur(30px) saturate(155%);
}
.search-shell:before,.result-card:before,.map-card:before,.rating-panel:before,.modal-box:before,.discover-box:before,.trust-card:before,.account-modal-box:before,.founder-panel:before{
  content:"";position:absolute;left:8%;right:8%;top:0;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);opacity:.8;
}
.search-shell:after,.result-card:after,.map-card:after,.rating-panel:after,.modal-box:after,.discover-box:after,.trust-card:after,.account-modal-box:after,.founder-panel:after{
  content:"";position:absolute;inset:1px;pointer-events:none;border-radius:inherit;background:radial-gradient(500px 180px at 12% 0%,rgba(255,255,255,.075),transparent 70%);opacity:.8;z-index:-1;
}
.field input,.field select,.money-input,.form-stack input,.form-stack select,.form-stack textarea,.discover-field input{
  background:rgba(255,255,255,.042) !important;border-color:rgba(255,255,255,.115) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),inset 0 -1px 0 rgba(0,0,0,.14),0 8px 30px rgba(0,0,0,.08) !important;
  -webkit-backdrop-filter:blur(20px) saturate(145%);backdrop-filter:blur(20px) saturate(145%);
}
.field input:hover,.field select:hover,.money-input:hover,.form-stack input:hover,.form-stack select:hover,.form-stack textarea:hover{border-color:rgba(255,255,255,.17) !important;background:rgba(255,255,255,.052) !important;}
.field input:focus,.field select:focus,.money-input:focus-within,.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus,.discover-field input:focus{border-color:rgba(255,255,255,.28) !important;outline:none;box-shadow:0 0 0 4px rgba(255,255,255,.025),inset 0 1px 0 rgba(255,255,255,.10),0 12px 36px rgba(0,0,0,.12) !important;}
.money-input input{background:transparent !important;box-shadow:none !important;border:0 !important;}
.money-input .currency,.money-input span:first-child{background:transparent !important;color:#aeb8c5 !important;border:0 !important;box-shadow:none !important;}
.btn,.badge,.quick-cities button,.surprise,.load-more,.trust-points span,.card-icon,.clear-btn,.locate-btn,.close,.admin-filter button,.recent-chip{
  background:rgba(255,255,255,.043) !important;border-color:rgba(255,255,255,.11) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),inset 0 -1px 0 rgba(0,0,0,.10) !important;
  -webkit-backdrop-filter:blur(18px) saturate(135%);backdrop-filter:blur(18px) saturate(135%);
}
.btn:hover,.badge:hover,.quick-cities button:hover,.surprise:hover,.load-more:hover,.recent-chip:hover{background:rgba(255,255,255,.075) !important;border-color:rgba(255,255,255,.17) !important;transform:translateY(-1px);}
.btn.primary,.search-btn{background:rgba(248,249,251,.96) !important;color:#0a0c0f !important;border-color:rgba(255,255,255,.95) !important;box-shadow:0 18px 48px rgba(0,0,0,.25),inset 0 1px 0 #fff !important;}
.btn.primary:hover,.search-btn:hover{background:#fff !important;transform:translateY(-1px);}
.rating-star,.rating-star.filled,.rating-star.selected{color:#596474 !important;text-shadow:none !important;box-shadow:none !important;filter:none !important;}
.rating-star.filled,.rating-star.selected{color:var(--gold) !important;}
.rating-star:hover{color:var(--gold) !important;text-shadow:none !important;}
/* Location actions: clean order = location first, clear second. */
.input-wrap{position:relative !important;}
.input-wrap .locate-btn{right:54px !important;}
.input-wrap .clear-btn{right:8px !important;}
.input-wrap .locate-btn svg{width:18px;height:18px;}
/* Recent searches */
.recent-searches{margin-top:10px;}
.recent-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 7px;color:#8f9bad;font-size:10px;font-weight:900;letter-spacing:.02em;}
.recent-head button{border:0;background:transparent;color:#aeb8c5;font:inherit;cursor:pointer;padding:3px 5px;}
.recent-head button:hover{color:#fff;}
.recent-list{display:flex;gap:7px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none;}
.recent-list::-webkit-scrollbar{display:none;}
.recent-chip{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:0 0 auto;padding:9px 12px;border:1px solid rgba(255,255,255,.1);border-radius:14px;color:#eef2f6;cursor:pointer;text-align:left;transition:.16s ease;}
.recent-chip b{font-size:11px;}.recent-chip span{font-size:9px;color:#8995a6;}
/* Portrait tablets: avoid compressed desktop columns. */
@media (min-width:601px) and (max-width:900px){
  .search-grid{grid-template-columns:1fr 1fr !important;}
  .location-field,.query-field{grid-column:1/-1 !important;}
  .search-bottom{grid-template-columns:1fr auto !important;align-items:center;}
  .content-grid{grid-template-columns:1fr !important;}
  .map-card{position:relative !important;top:auto !important;min-height:420px;}
  .rating-panel{align-items:center;gap:20px;}
  .founder-panel{grid-template-columns:auto 1fr !important;}
}
/* Phone: stack deliberately, never let long translations crush controls. */
@media (max-width:600px){
  .search-shell,.modal-box,.discover-box{border-radius:22px !important;}
  .hero h1{max-width:8.5ch;}
  .hero p{max-width:34ch;}
  .search-head{align-items:flex-start !important;gap:12px;}
  .search-head .surprise{white-space:nowrap;}
  .search-grid{grid-template-columns:1fr !important;}
  .location-field,.query-field{grid-column:auto !important;}
  .search-bottom{grid-template-columns:1fr !important;gap:12px !important;}
  .search-bottom .toggle{justify-content:flex-start;}
  .search-btn{width:100%;}
  .quick-cities{overflow-x:auto;flex-wrap:nowrap !important;padding-bottom:3px;scrollbar-width:none;}
  .quick-cities::-webkit-scrollbar{display:none;}
  .quick-cities button{flex:0 0 auto;}
  .recent-searches{max-width:100%;}
  .recent-chip{max-width:180px;}
  .rating-panel{flex-direction:column;align-items:flex-start !important;}
  .rating-side{width:100%;align-items:flex-start !important;}
  .rating-stars{justify-content:flex-start !important;}
  .founder-panel{grid-template-columns:1fr !important;}
  .founder-photo-wrap{justify-self:start;}
  .admin-filter{grid-template-columns:1fr 1fr !important;}
}
/* Respect reduced motion and keep glass effects cheap on constrained devices. */
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto !important;transition-duration:.01ms !important;animation-duration:.01ms !important;}}
@media (max-width:600px) and (prefers-reduced-transparency:reduce){.search-shell,.result-card,.map-card,.rating-panel,.modal-box,.discover-box,.trust-card,.account-modal-box,.founder-panel{backdrop-filter:none !important;-webkit-backdrop-filter:none !important;background:rgba(20,23,28,.96) !important;}}

/* 4.6.2 optional budget clarity */
.budget-hint{margin-top:6px;font-size:9px;opacity:.72;line-height:1.35}.money-input input::placeholder{opacity:.55}
@media(max-width:600px){.budget-hint{font-size:8.5px}.field:has(.budget-hint){min-width:0}}

/* 4.6.4 — SIGNATURE LIQUID GLASS
   Inspired by physical glass/refraction, not by any platform UI.
   Identity: graphite + smoked crystal + directional light + restrained radii. */
:root{
  --glass-ink:#07090d;
  --glass-surface:rgba(24,28,35,.56);
  --glass-surface-soft:rgba(255,255,255,.035);
  --glass-edge:rgba(255,255,255,.125);
  --glass-edge-bright:rgba(255,255,255,.21);
  --glass-radius:20px;
  --glass-blur:34px;
}

body{
  background:
    radial-gradient(760px 430px at 16% 8%,rgba(255,255,255,.095),transparent 66%),
    radial-gradient(700px 500px at 88% 42%,rgba(121,139,166,.055),transparent 70%),
    radial-gradient(520px 420px at 50% 105%,rgba(255,255,255,.035),transparent 72%),
    #07090d !important;
}
body:before{
  background:
    linear-gradient(112deg,transparent 0 25%,rgba(255,255,255,.018) 43%,transparent 61%),
    radial-gradient(420px 240px at 28% 0%,rgba(255,255,255,.022),transparent 72%) !important;
  opacity:1;
}

/* The main surfaces deliberately avoid the uniform Apple-style translucent card look. */
.search-shell,.result-card,.map-card,.rating-panel,.modal-box,.discover-box,.trust-card,.account-modal-box,.founder-panel,.empty{
  background:
    linear-gradient(118deg,rgba(255,255,255,.082) 0%,rgba(255,255,255,.034) 34%,rgba(11,14,19,.23) 68%,rgba(255,255,255,.052) 100%) !important;
  border:1px solid var(--glass-edge) !important;
  border-radius:var(--glass-radius) !important;
  box-shadow:
    0 26px 90px rgba(0,0,0,.32),
    inset 0 1px 0 rgba(255,255,255,.12),
    inset 0 -1px 0 rgba(0,0,0,.24),
    inset 1px 0 0 rgba(255,255,255,.025) !important;
  -webkit-backdrop-filter:blur(var(--glass-blur)) saturate(142%) contrast(105%) !important;
  backdrop-filter:blur(var(--glass-blur)) saturate(142%) contrast(105%) !important;
}

/* A narrow refraction line gives the glass a physical edge instead of a generic border. */
.search-shell:before,.result-card:before,.map-card:before,.rating-panel:before,.modal-box:before,.discover-box:before,.trust-card:before,.account-modal-box:before,.founder-panel:before{
  left:4% !important;right:4% !important;height:1px !important;top:0 !important;
  background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.34) 28%,rgba(255,255,255,.11) 72%,transparent 100%) !important;
  opacity:.72 !important;
}
.search-shell:after,.result-card:after,.map-card:after,.rating-panel:after,.modal-box:after,.discover-box:after,.trust-card:after,.account-modal-box:after,.founder-panel:after{
  inset:1px !important;
  background:
    radial-gradient(360px 150px at 10% 0%,rgba(255,255,255,.095),transparent 72%),
    radial-gradient(260px 180px at 100% 100%,rgba(120,140,170,.025),transparent 75%) !important;
  opacity:.9 !important;
}

/* Controls are smoked crystal, not little grey blocks. */
.field input,.field select,.money-input,.form-stack input,.form-stack select,.form-stack textarea,.discover-field input{
  background:linear-gradient(145deg,rgba(255,255,255,.047),rgba(255,255,255,.018)) !important;
  border-color:rgba(255,255,255,.105) !important;
  border-radius:14px !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.075),
    inset 0 -1px 0 rgba(0,0,0,.18),
    0 9px 28px rgba(0,0,0,.08) !important;
  -webkit-backdrop-filter:blur(22px) saturate(135%) !important;
  backdrop-filter:blur(22px) saturate(135%) !important;
}
.field input:hover,.field select:hover,.money-input:hover,.form-stack input:hover,.form-stack select:hover,.form-stack textarea:hover{
  background:linear-gradient(145deg,rgba(255,255,255,.062),rgba(255,255,255,.024)) !important;
  border-color:rgba(255,255,255,.155) !important;
}
.field input:focus,.field select:focus,.money-input:focus-within,.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus,.discover-field input:focus{
  border-color:rgba(255,255,255,.25) !important;
  box-shadow:0 0 0 3px rgba(255,255,255,.022),inset 0 1px 0 rgba(255,255,255,.105),0 12px 36px rgba(0,0,0,.15) !important;
}

/* Signature buttons: sharper, denser and more editorial than platform pills. */
.btn,.badge,.quick-cities button,.surprise,.load-more,.trust-points span,.card-icon,.clear-btn,.locate-btn,.close,.admin-filter button,.recent-chip{
  background:linear-gradient(145deg,rgba(255,255,255,.052),rgba(255,255,255,.021)) !important;
  border-color:rgba(255,255,255,.105) !important;
  border-radius:11px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.075),inset 0 -1px 0 rgba(0,0,0,.13),0 7px 24px rgba(0,0,0,.07) !important;
}
.btn:hover,.quick-cities button:hover,.surprise:hover,.load-more:hover,.recent-chip:hover,.clear-btn:hover,.locate-btn:hover,.close:hover{
  background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.032)) !important;
  border-color:rgba(255,255,255,.18) !important;
}
.btn.primary,.search-btn{
  border-radius:12px !important;
  background:linear-gradient(135deg,#f4f6f8 0%,#dfe4e9 100%) !important;
  color:#090b0f !important;
  box-shadow:0 18px 46px rgba(0,0,0,.27),inset 0 1px 0 #fff,inset 0 -1px 0 rgba(0,0,0,.08) !important;
}
.btn.primary:hover,.search-btn:hover{background:#fff !important;}

/* Navigation gets a floating glass rail rather than a flat header strip. */
.topbar{
  background:rgba(7,9,13,.62) !important;
  border-bottom:1px solid rgba(255,255,255,.085) !important;
  box-shadow:0 12px 45px rgba(0,0,0,.18),inset 0 -1px 0 rgba(255,255,255,.025) !important;
  -webkit-backdrop-filter:blur(26px) saturate(130%) !important;
  backdrop-filter:blur(26px) saturate(130%) !important;
}
.nav-link:hover,.nav-link.active{background:rgba(255,255,255,.055) !important;border:1px solid rgba(255,255,255,.075);}
.account-btn{background:rgba(245,247,249,.94) !important;border:1px solid rgba(255,255,255,.86) !important;}

/* Profile/founder: less "system settings", more product identity. */
.account-profile,.founder-panel.glass-surface{
  background:linear-gradient(120deg,rgba(255,255,255,.075),rgba(255,255,255,.025) 48%,rgba(125,145,170,.025)) !important;
  border-color:rgba(255,255,255,.125) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.105),inset 0 -1px 0 rgba(0,0,0,.18) !important;
}
.profile-avatar,.founder-photo-wrap{
  box-shadow:0 14px 36px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.15) !important;
  border-color:rgba(255,255,255,.18) !important;
}

/* Don't make every element round: hierarchy comes from radius changes. */
.hero-pills span,.badge,.request-status{border-radius:999px !important;}
.result-card{border-radius:18px !important;}
.search-shell{border-radius:22px !important;}
.map-card{border-radius:20px !important;}
.modal-box{border-radius:22px !important;}

@media(max-width:600px){
  .search-shell,.modal-box,.discover-box{border-radius:19px !important;}
  .result-card{border-radius:17px !important;}
  .founder-panel.glass-surface{border-radius:18px !important;}
  .field input,.field select,.money-input{border-radius:13px !important;}
}

@media(max-width:600px) and (prefers-reduced-transparency:reduce){
  .search-shell,.result-card,.map-card,.rating-panel,.modal-box,.discover-box,.trust-card,.account-modal-box,.founder-panel,.account-profile{backdrop-filter:none !important;-webkit-backdrop-filter:none !important;background:#151920 !important;}
}

/* 4.6.5 — MORNING LANDSCAPE / SIGNATURE GLASS
   A photographic daytime backdrop gives the glass a real environment without turning
   Budget Explorer into an iOS clone. The image stays behind the interface; the glass
   surfaces provide the contrast and hierarchy. */
body.site-home{
  background:
    linear-gradient(180deg,rgba(4,7,12,.40) 0%,rgba(5,8,13,.58) 42%,rgba(4,6,10,.90) 100%),
    url("budget-explorer-morning-landscape.jpg") center top / cover fixed no-repeat !important;
  background-color:#07090d !important;
}
body.site-home:before{
  background:
    linear-gradient(180deg,rgba(3,6,11,.16),transparent 28%,rgba(3,6,11,.18) 68%,rgba(3,5,9,.58)),
    radial-gradient(900px 480px at 78% 4%,rgba(255,235,195,.07),transparent 62%),
    linear-gradient(110deg,transparent 0 35%,rgba(255,255,255,.018) 48%,transparent 63%) !important;
}
body.site-home:after{
  background:radial-gradient(520px 360px at 82% 13%,rgba(255,220,165,.09),transparent 68%) !important;
  filter:blur(85px) !important;
  opacity:.72 !important;
}
body.site-home .topbar{
  background:linear-gradient(180deg,rgba(7,10,15,.54),rgba(7,10,15,.24)) !important;
  border-bottom-color:rgba(255,255,255,.11) !important;
  -webkit-backdrop-filter:blur(24px) saturate(135%) !important;
  backdrop-filter:blur(24px) saturate(135%) !important;
}
body.site-home .hero{
  position:relative;
  z-index:1;
}
body.site-home .hero:before{
  content:"";
  position:absolute;
  left:-10%;right:40%;top:4%;height:390px;
  pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(3,7,13,.34),transparent 68%);
  filter:blur(22px);
  z-index:-1;
}
body.site-home .search-shell{
  background:linear-gradient(135deg,rgba(9,14,21,.50),rgba(255,255,255,.065) 46%,rgba(7,11,17,.46)) !important;
  border-color:rgba(255,255,255,.19) !important;
  box-shadow:0 32px 100px rgba(0,0,0,.40),inset 0 1px 0 rgba(255,255,255,.15),inset 0 -1px 0 rgba(0,0,0,.28) !important;
}
body.site-home .result-card,body.site-home .map-card,body.site-home .rating-panel,
body.site-home .discover-box,body.site-home .trust-card,body.site-home .founder-panel,
body.site-home .empty{
  background:linear-gradient(135deg,rgba(10,14,20,.54),rgba(255,255,255,.055),rgba(7,11,17,.52)) !important;
}
body.site-home .hero-pills span{
  background:rgba(8,12,18,.34) !important;
  border-color:rgba(255,255,255,.13) !important;
  -webkit-backdrop-filter:blur(18px) saturate(140%) !important;
  backdrop-filter:blur(18px) saturate(140%) !important;
}
body.site-home .hero h1 em{text-shadow:0 4px 30px rgba(0,0,0,.42) !important;}
body.site-home .hero p{text-shadow:0 2px 18px rgba(0,0,0,.38);}
@media(max-width:700px){
  body.site-home{background-attachment:scroll !important;background-position:center top !important;}
  body.site-home .hero:before{right:-10%;height:330px;}
}
@media(prefers-reduced-transparency:reduce){
  body.site-home{background-image:linear-gradient(180deg,rgba(4,7,12,.78),rgba(4,6,10,.96)),url("budget-explorer-morning-landscape.jpg") !important;}
}



/* 4.6.6 — REFERENCE-MATCH LANDING COMPOSITION
   Rebuilds the supplied visual reference as real HTML/CSS: sunrise panorama,
   editorial hero, floating quote, glass search deck and image-led categories. */
body.site-home{
  background:
    linear-gradient(180deg,rgba(5,10,17,.20) 0%,rgba(4,8,14,.26) 28%,rgba(4,7,12,.78) 72%,rgba(3,5,9,.97) 100%),
    radial-gradient(650px 360px at 93% 12%,rgba(255,222,170,.15),transparent 68%),
    url("budget-explorer-morning-landscape.jpg") center top / cover fixed no-repeat !important;
  background-color:#05080d !important;
}
body.site-home:before{background:linear-gradient(180deg,rgba(3,6,11,.04),transparent 20%,rgba(2,5,9,.18) 52%,rgba(2,4,8,.62) 100%) !important;}
body.site-home:after{background:radial-gradient(520px 340px at 90% 13%,rgba(255,218,165,.12),transparent 72%) !important;filter:blur(75px) !important;opacity:.9 !important;}
body.site-home .topbar{max-width:none;background:linear-gradient(180deg,rgba(7,12,19,.48),rgba(7,12,19,.16)) !important;border-bottom:1px solid rgba(255,255,255,.12) !important;backdrop-filter:blur(18px) saturate(135%) !important;-webkit-backdrop-filter:blur(18px) saturate(135%) !important;}
body.site-home .hero{max-width:1180px;min-height:300px;padding:58px 22px 18px;display:flex;justify-content:space-between;align-items:flex-start;gap:30px;position:relative;z-index:1;}
body.site-home .hero-copy{padding-top:5px;max-width:650px;}
body.site-home .hero .eyebrow{color:rgba(220,229,239,.76);font-size:10px;letter-spacing:.22em;text-shadow:0 2px 18px rgba(0,0,0,.5)}
body.site-home .hero h1{font-size:clamp(52px,5.7vw,76px);line-height:.96;letter-spacing:-.062em;margin:14px 0 16px;text-shadow:0 6px 35px rgba(0,0,0,.52);max-width:600px}
body.site-home .hero p{font-size:15px;color:#f0f3f6;line-height:1.5;text-shadow:0 3px 22px rgba(0,0,0,.48);}
body.site-home .hero-pills{display:none !important;}
.hero-quote{width:270px;min-height:130px;margin:6px 58px 0 0;padding:23px 25px 18px;box-sizing:border-box;position:relative;border:1px solid rgba(255,255,255,.25);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.055)) !important;box-shadow:0 25px 75px rgba(0,0,0,.27),inset 0 1px 0 rgba(255,255,255,.25) !important;backdrop-filter:blur(24px) saturate(130%);-webkit-backdrop-filter:blur(24px) saturate(130%);color:#f4f6f8;}
.hero-quote span{position:absolute;left:20px;top:8px;font-size:34px;line-height:1;color:rgba(255,255,255,.55)}
.hero-quote p{margin:2px 0 10px 4px !important;font-size:17px !important;line-height:1.28 !important;max-width:none !important;color:#f4f6f8 !important}
.hero-quote small{display:block;text-align:right;color:rgba(235,240,246,.74);font-size:10px}
.search-shell{position:relative;z-index:2;margin-top:-2px !important;padding:18px 20px 17px !important;border-radius:23px !important;background:linear-gradient(135deg,rgba(9,15,23,.54),rgba(255,255,255,.075) 48%,rgba(6,11,17,.48)) !important;border-color:rgba(255,255,255,.22) !important;box-shadow:0 32px 100px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.16) !important;}
.search-tabs{display:flex;align-items:center;gap:22px;height:46px;border-bottom:1px solid rgba(255,255,255,.11);margin-bottom:13px;}
.search-tab,.location-use{appearance:none;border:0;background:transparent;color:rgba(237,242,247,.72);font:inherit;font-size:12px;cursor:pointer;padding:9px 10px;border-radius:999px;}
.search-tab.active{color:#fff;background:linear-gradient(145deg,rgba(255,255,255,.15),rgba(255,255,255,.045));box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 8px 28px rgba(0,0,0,.16);}
.location-use{margin-left:auto;display:flex;align-items:center;gap:6px;color:rgba(239,244,248,.8)}
.search-head{display:none !important}
.search-grid{grid-template-columns:1.05fr .92fr .78fr .82fr !important;gap:10px !important;}
.query-field{grid-column:1/-1 !important;grid-row:1 !important;}
.location-field{grid-column:1 !important;grid-row:1 !important;}
.search-grid > .field:nth-child(2){grid-column:2;grid-row:1}
.search-grid > .field:nth-child(3){grid-column:3;grid-row:1}
.search-grid > .field:nth-child(4){grid-column:4;grid-row:1}
.search-grid > .field:nth-child(6),.search-grid > .field:nth-child(5){display:none !important;}
.field label{display:none !important}
.field input,.field select,.money-input{height:54px !important;border-radius:15px !important;background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.022)) !important;border-color:rgba(255,255,255,.14) !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 8px 28px rgba(0,0,0,.08) !important;}
.query-field input{height:54px !important;padding-left:45px !important;font-size:13px !important}
.location-field .hint,.budget-hint{display:none !important}
.search-bottom{position:absolute;right:20px;bottom:17px;margin:0 !important;display:block !important}
.search-bottom .toggle{display:none !important}
.search-btn{height:54px !important;min-width:220px;border-radius:15px !important;font-size:13px !important;}
.quick-cities{display:flex !important;gap:8px !important;margin-top:11px !important;padding-top:0 !important;}
.quick-cities>span{display:none !important}
.quick-cities button{display:none !important}
.quick-cities:after{content:"";display:block;height:1px;flex:1}
.search-status,.recent-searches{display:none !important}
.popular-categories{max-width:1180px;margin:26px auto 0;padding:0 22px;position:relative;z-index:1;}
.popular-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:14px}
.popular-heading h2{font-size:21px;line-height:1;margin:0 0 5px;letter-spacing:-.035em;color:#f5f7f9}
.popular-heading p{margin:0;color:rgba(224,230,237,.72);font-size:11px}
.all-categories{border:0;background:transparent;color:rgba(242,246,250,.82);font:inherit;font-size:11px;cursor:pointer;padding:8px 0}
.category-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.category-card{appearance:none;position:relative;overflow:hidden;min-width:0;height:170px;padding:0;border:1px solid rgba(255,255,255,.17);border-radius:16px;background:rgba(8,12,18,.46);color:#fff;text-align:left;cursor:pointer;box-shadow:0 20px 55px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.11);transition:transform .18s ease,border-color .18s ease;}
.category-card:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.29)}
.category-card img{display:block;width:100%;height:112px;object-fit:cover;opacity:.98}
.category-card:after{content:"";position:absolute;inset:72px 0 0;background:linear-gradient(180deg,transparent,rgba(5,8,12,.82) 42%,rgba(5,8,12,.96));pointer-events:none}
.category-card span{position:absolute;left:15px;right:42px;bottom:12px;z-index:2}
.category-card strong,.category-card small{display:block}
.category-card strong{font-size:12px;letter-spacing:-.01em}.category-card small{font-size:9px;color:rgba(226,232,239,.7);margin-top:4px}
.category-card>b{position:absolute;right:12px;bottom:11px;z-index:3;width:28px;height:28px;border:1px solid rgba(255,255,255,.14);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.07);font-size:14px;font-weight:500}
.results-head{margin-top:64px !important}
@media(max-width:900px){
  body.site-home .hero{min-height:0;padding-top:42px}.hero-quote{margin-right:0;width:230px}.category-cards{grid-template-columns:repeat(3,1fr)}
  .search-grid{grid-template-columns:1fr 1fr !important}.search-grid > .field:nth-child(2){grid-column:2;grid-row:1}.search-grid > .field:nth-child(3){grid-column:1;grid-row:2}.search-grid > .field:nth-child(4){grid-column:2;grid-row:2}.search-bottom{position:static;margin-top:10px !important}.search-btn{width:100%}
}
@media(max-width:600px){
  body.site-home{background-attachment:scroll !important;background-position:center top !important}
  body.site-home .hero{display:block;padding:38px 16px 22px}.hero-quote{width:100%;margin:24px 0 0;min-height:108px}.hero-quote p{font-size:15px !important}
  body.site-home .hero h1{font-size:45px;max-width:10ch}
  .search-shell{margin:0 12px !important;padding:13px !important}.search-tabs{gap:4px;overflow:auto}.search-tab,.location-use{font-size:10px;white-space:nowrap}.location-use{display:none}.search-grid{grid-template-columns:1fr !important}.query-field,.location-field,.search-grid > .field:nth-child(2),.search-grid > .field:nth-child(3),.search-grid > .field:nth-child(4){grid-column:1 !important;grid-row:auto !important}.category-cards{grid-template-columns:1fr 1fr;gap:10px}.category-card{height:155px}.category-card img{height:98px}.popular-categories{padding:0 12px;margin-top:22px}.popular-heading{align-items:flex-start}.all-categories{font-size:10px}.results-head{margin-top:48px !important}
}
@media(prefers-reduced-transparency:reduce){body.site-home{background-image:linear-gradient(180deg,rgba(4,7,12,.72),rgba(3,5,9,.96)),url("budget-explorer-morning-landscape.jpg") !important}.hero-quote,.search-shell,.category-card{backdrop-filter:none !important;-webkit-backdrop-filter:none !important;}}


/* 4.6.7 — LANDING STABILITY / TRUE RESPONSIVE GLASS
   Fixes translated <br> rendering, desktop search-button collisions, and tablet
   horizontal overflow while preserving the 4.6.6 visual direction. */
html,body{max-width:100%;overflow-x:hidden;}
body.site-home .hero h1{overflow-wrap:normal;word-break:normal;}
body.site-home .search-shell{overflow:hidden;}
body.site-home .search-grid{padding-right:232px;}
body.site-home .search-bottom{right:20px;bottom:17px;width:212px;}
body.site-home .search-btn{width:100%;min-width:0;}
body.site-home .search-tab:focus,
body.site-home .search-tab:focus-visible,
body.site-home .location-use:focus,
body.site-home .location-use:focus-visible,
body.site-home .search-btn:focus,
body.site-home .search-btn:focus-visible,
body.site-home .category-card:focus,
body.site-home .category-card:focus-visible{outline:none;}
body.site-home button:focus-visible,
body.site-home a:focus-visible,
body.site-home input:focus-visible,
body.site-home select:focus-visible{outline:2px solid rgba(255,255,255,.52);outline-offset:2px;}
body.site-home .input-wrap input{min-width:0;text-overflow:ellipsis;}
body.site-home .search-grid>.field{min-width:0;}

@media (min-width:901px){
  body.site-home .search-shell{min-width:0;}
  body.site-home .search-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.92fr) minmax(0,.78fr) minmax(0,.82fr)!important;}
}

@media (min-width:601px) and (max-width:900px){
  body.site-home .hero{padding-left:18px;padding-right:18px;}
  body.site-home .search-shell{margin-left:18px;margin-right:18px;padding:16px!important;}
  body.site-home .search-grid{padding-right:0!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;}
  body.site-home .search-bottom{position:static;width:auto;margin-top:10px!important;display:block!important;}
  body.site-home .search-btn{width:100%;min-width:0;}
  body.site-home .query-field,
  body.site-home .location-field,
  body.site-home .search-grid>.field:nth-child(2),
  body.site-home .search-grid>.field:nth-child(3),
  body.site-home .search-grid>.field:nth-child(4){min-width:0;}
  body.site-home .search-grid>.field:nth-child(2){grid-column:2!important;grid-row:1!important;}
  body.site-home .search-grid>.field:nth-child(3){grid-column:1!important;grid-row:2!important;}
  body.site-home .search-grid>.field:nth-child(4){grid-column:2!important;grid-row:2!important;}
  body.site-home .query-field{display:none!important;}
  body.site-home .location-field{grid-column:1!important;grid-row:1!important;}
}

@media (max-width:600px){
  body.site-home .hero{padding-left:16px;padding-right:16px;}
  body.site-home .search-shell{margin-left:12px!important;margin-right:12px!important;overflow:hidden;}
  body.site-home .search-grid{padding-right:0!important;}
  body.site-home .search-bottom{position:static;width:auto;margin-top:12px!important;}
  body.site-home .search-btn{width:100%;}
  body.site-home .search-tabs{min-width:0;max-width:100%;}
  body.site-home .search-tab{flex:0 0 auto;}
  body.site-home .hero h1{max-width:100%;font-size:clamp(39px,12vw,52px);}
  body.site-home .hero p{max-width:100%;}
  body.site-home .popular-heading{min-width:0;}
  body.site-home .popular-heading>div{min-width:0;}
}

/* 4.6.8 — FINAL ALIGNMENT + LIVING CATEGORY IMAGERY
   Keep the reference composition rigidly aligned and give the category photography
   a restrained cinematic motion treatment on hover/focus. */
body.site-home .search-shell{box-sizing:border-box;}
body.site-home .search-tabs{width:100%;}
body.site-home .search-grid{align-items:stretch;}
body.site-home .search-grid>.field{align-self:stretch;}
body.site-home .location-field,
body.site-home .search-grid>.field:nth-child(2),
body.site-home .search-grid>.field:nth-child(3),
body.site-home .search-grid>.field:nth-child(4){min-width:0;}
body.site-home .location-field .input-wrap{min-width:0;width:100%;}
body.site-home .location-field .input-wrap input{width:100%;box-sizing:border-box;padding-right:88px!important;}
body.site-home .search-grid>.field:nth-child(2) select,
body.site-home .search-grid>.field:nth-child(4) select,
body.site-home .search-grid>.field:nth-child(3) .money-input{box-sizing:border-box;}
body.site-home .search-bottom{display:flex!important;align-items:stretch;}
body.site-home .search-bottom .search-btn{display:flex;align-items:center;justify-content:center;gap:12px;box-sizing:border-box;}

/* The category row is deliberately one clean baseline. */
body.site-home .category-cards{align-items:stretch;}
body.site-home .category-card{height:170px;isolation:isolate;}
body.site-home .category-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.001);transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .65s ease;will-change:transform;}
body.site-home .category-card:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(120deg,rgba(255,255,255,0),rgba(255,255,255,0) 42%,rgba(255,255,255,.13) 50%,rgba(255,255,255,0) 58%);transform:translateX(-125%);transition:transform .8s cubic-bezier(.2,.7,.2,1);pointer-events:none;mix-blend-mode:screen;}
body.site-home .category-card:after{z-index:2;inset:38% 0 0;transition:opacity .45s ease;}
body.site-home .category-card span,body.site-home .category-card>b{z-index:3;}
body.site-home .category-card:hover img,
body.site-home .category-card:focus-visible img{transform:scale(1.075);filter:saturate(1.08) contrast(1.03);}
body.site-home .category-card:hover:before,
body.site-home .category-card:focus-visible:before{transform:translateX(125%);}
body.site-home .category-card:hover:after,
body.site-home .category-card:focus-visible:after{opacity:.9;}
body.site-home .category-card>b{transition:transform .3s ease,background .3s ease,border-color .3s ease;}
body.site-home .category-card:hover>b,
body.site-home .category-card:focus-visible>b{transform:translateX(2px) scale(1.06);background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.3);}
body.site-home .category-card:active{transform:translateY(0) scale(.988);}

@media (min-width:901px){
  body.site-home .search-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.92fr) minmax(0,.78fr) minmax(0,.82fr)!important;grid-template-rows:54px!important;}
  body.site-home .location-field{grid-column:1!important;grid-row:1!important;}
  body.site-home .search-grid>.field:nth-child(2){grid-column:2!important;grid-row:1!important;}
  body.site-home .search-grid>.field:nth-child(3){grid-column:3!important;grid-row:1!important;}
  body.site-home .search-grid>.field:nth-child(4){grid-column:4!important;grid-row:1!important;}
  body.site-home .search-bottom{top:77px!important;bottom:auto!important;width:212px;}
}
@media (min-width:601px) and (max-width:900px){
  body.site-home .search-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;}
  body.site-home .search-bottom{width:100%;}
  body.site-home .category-card{height:170px;}
}
@media (max-width:600px){
  body.site-home .search-grid{grid-template-columns:1fr!important;}
  body.site-home .search-bottom{width:100%;}
  body.site-home .category-card{height:155px;}
  body.site-home .category-card img{transform:scale(1.001);}
  body.site-home .category-card:hover img{transform:scale(1.04);}
}
@media (prefers-reduced-motion:reduce){
  body.site-home .category-card img,
  body.site-home .category-card:before,
  body.site-home .category-card>b{transition:none!important;}
}


/* 4.6.9 — Suggest-place modal alignment polish.
   Keeps the form on a clean grid, prevents long values from pushing controls,
   and gives the dialog the same premium glass proportions as the main UI. */
#suggestModal .modal-box.large{
  width:min(860px,calc(100vw - 36px)) !important;
  padding:30px !important;
  border-radius:26px !important;
}
#suggestModal .suggest-title-row{
  display:flex;
  align-items:center;
  gap:10px;
  padding-right:48px;
}
#suggestModal .suggest-title-row h3{
  margin:0 !important;
  min-width:0;
}
#suggestModal .suggest-title-mark{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.13);
  border-radius:11px;
  background:rgba(255,255,255,.055);
  color:#f4f6f8;
  font-size:23px;
  line-height:1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
#suggestModal .modal-box > p.muted{
  max-width:680px;
  margin:10px 0 0;
}
#suggestModal .form-stack{
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:22px;
}
#suggestModal .form-stack > .two{
  display:contents;
}
#suggestModal .form-stack > input,
#suggestModal .form-stack > select,
#suggestModal .form-stack > textarea,
#suggestModal .form-stack > .check,
#suggestModal .form-stack > .primary,
#suggestModal .form-stack > .form-status{
  min-width:0;
}
#suggestModal .form-stack > input,
#suggestModal .form-stack > select{
  height:50px;
}
#suggestModal .form-stack > textarea{
  grid-column:1 / -1;
  min-height:116px;
}
#suggestModal .form-stack > .check,
#suggestModal .form-stack > .primary,
#suggestModal .form-stack > .form-status{
  grid-column:1 / -1;
}
#suggestModal .form-stack > input[name="locationLink"],
#suggestModal .form-stack > input[name="website"],
#suggestModal .form-stack > input[name="email"]{
  grid-column:1 / -1;
}
#suggestModal .form-stack > .check{
  margin-top:2px;
}
#suggestModal .form-stack > .primary{
  width:100%;
  min-height:48px;
}
#suggestModal .close{
  width:38px !important;
  height:38px !important;
  top:16px !important;
  right:16px !important;
  border-radius:12px !important;
  font-size:22px !important;
}
@media(max-width:700px){
  #suggestModal .modal-box.large{
    width:100% !important;
    padding:22px !important;
    border-radius:22px !important;
  }
  #suggestModal .form-stack{
    grid-template-columns:1fr;
  }
  #suggestModal .form-stack > textarea,
  #suggestModal .form-stack > .check,
  #suggestModal .form-stack > .primary,
  #suggestModal .form-stack > .form-status,
  #suggestModal .form-stack > input[name="locationLink"],
  #suggestModal .form-stack > input[name="website"],
  #suggestModal .form-stack > input[name="email"]{
    grid-column:auto;
  }
  #suggestModal .suggest-title-row{padding-right:42px;}
}

/* 4.7.0 — CATEGORY DISCOVERY + FINAL SEARCH ALIGNMENT */
body.site-home .search-grid>.field,
body.site-home .search-grid>.field>*{min-width:0;box-sizing:border-box;}
body.site-home .search-grid .field input:focus,
body.site-home .search-grid .field input:focus-visible,
body.site-home .search-grid .field select:focus,
body.site-home .search-grid .field select:focus-visible,
body.site-home .search-grid .money-input:focus-within{outline:none!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 8px 28px rgba(0,0,0,.10)!important;border-color:rgba(255,255,255,.22)!important;}
body.site-home .location-field .input-wrap{height:54px!important;overflow:hidden!important;}
body.site-home .location-field .input-wrap input{height:54px!important;line-height:54px!important;}
body.site-home .search-grid{grid-auto-rows:54px!important;}
body.site-home .search-grid>.field:nth-child(2),
body.site-home .search-grid>.field:nth-child(3),
body.site-home .search-grid>.field:nth-child(4){height:54px!important;}
body.site-home .search-grid>.field:nth-child(2) select,
body.site-home .search-grid>.field:nth-child(4) select,
body.site-home .search-grid>.field:nth-child(3) .money-input{height:54px!important;}

.category-suggestions-box{width:min(860px,calc(100vw - 32px));max-height:min(86vh,780px);overflow:auto;padding:28px!important;}
.category-suggestions-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-right:30px;margin-bottom:18px;}
.category-suggestions-head h3{margin:6px 0 5px;font-size:clamp(24px,3vw,34px);letter-spacing:-.045em;line-height:1.02;}
.category-suggestions-head p{margin:0;font-size:12px;line-height:1.5;}
.category-suggestions-meta{flex:0 0 auto;font-size:10px;color:rgba(232,238,245,.68);padding-bottom:4px;}
.category-suggestions-body{display:grid;gap:10px;}
.category-suggestion-card{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:14px;align-items:center;min-width:0;padding:15px;border:1px solid rgba(255,255,255,.12);border-radius:17px;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 14px 36px rgba(0,0,0,.16);transition:transform .18s ease,border-color .18s ease,background .18s ease;}
.category-suggestion-card:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.22);background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.032));}
.category-suggestion-rank{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.055);font-size:11px;color:rgba(244,247,250,.8);}
.category-suggestion-main{min-width:0;}
.category-suggestion-main .source{display:inline-block;margin-bottom:4px;font-size:7px;letter-spacing:.11em;color:rgba(224,231,239,.54);}
.category-suggestion-main h4{margin:0;font-size:14px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.category-suggestion-main p{margin:4px 0 8px;font-size:10px;color:rgba(218,225,233,.65);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.category-suggestion-badges{display:flex;gap:6px;flex-wrap:wrap;}
.category-suggestion-badges span{font-size:9px;color:rgba(235,240,245,.72);padding:4px 7px;border:1px solid rgba(255,255,255,.09);border-radius:999px;background:rgba(255,255,255,.035);}
.category-suggestion-actions{display:flex;gap:7px;align-items:center;}
.category-suggestion-actions .btn{white-space:nowrap;}
.category-suggestions-loading,.category-suggestions-empty{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px;border:1px dashed rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.025);}
.category-suggestions-loading strong,.category-suggestions-empty strong{font-size:13px;}
.category-suggestions-empty span{font-size:10px;color:rgba(220,227,235,.62);}
.suggestion-spinner{width:25px;height:25px;border:2px solid rgba(255,255,255,.14);border-top-color:rgba(255,255,255,.8);border-radius:50%;animation:suggestion-spin .8s linear infinite;}
@keyframes suggestion-spin{to{transform:rotate(360deg)}}
@media(max-width:700px){
  .category-suggestions-box{width:calc(100vw - 20px);padding:18px!important;border-radius:20px!important;}
  .category-suggestions-head{align-items:flex-start;display:block;margin-bottom:14px;}
  .category-suggestions-meta{margin-top:7px;}
  .category-suggestion-card{grid-template-columns:28px minmax(0,1fr);gap:10px;padding:12px;}
  .category-suggestion-actions{grid-column:2;display:grid;grid-template-columns:1fr 1fr;}
  .category-suggestion-actions .btn{width:100%;justify-content:center;}
}


/* 4.7.1 FINAL — flag-only language control, no foreign/native focus ring. */
.language-wrap{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 58px;
  width:58px;
  min-width:58px;
  height:38px;
  padding:0;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  background:rgba(255,255,255,.055);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.075),inset 0 -1px 0 rgba(0,0,0,.12),0 8px 25px rgba(0,0,0,.14);
  backdrop-filter:blur(20px) saturate(135%);
  -webkit-backdrop-filter:blur(20px) saturate(135%);
  overflow:hidden;
}
.language-wrap>span{display:none !important}
.language-wrap:after{
  content:'⌄';
  position:absolute;
  right:7px;
  top:50%;
  transform:translateY(-53%);
  color:#aeb8c5;
  font-size:11px;
  line-height:1;
  pointer-events:none;
}
.language-wrap select{
  appearance:none;
  -webkit-appearance:none;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  color:#f3f5f7;
  width:100%;
  height:100%;
  min-width:0;
  padding:0 17px 0 5px;
  margin:0;
  text-align:center;
  text-align-last:center;
  font-family:inherit;
  font-size:20px;
  line-height:1;
  font-weight:400;
  letter-spacing:0;
  cursor:pointer;
}
.language-wrap select::-ms-expand{display:none}
.language-wrap select option{background:#14171c;color:#f3f5f7;font-size:14px}
.language-wrap:focus-within{
  border-color:rgba(255,255,255,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09),inset 0 -1px 0 rgba(0,0,0,.12),0 8px 25px rgba(0,0,0,.14);
}
@media(max-width:900px){
  .language-wrap{flex-basis:52px;width:52px;min-width:52px;height:36px;border-radius:11px}
  .language-wrap select{font-size:19px;padding-right:16px}
}
@media(max-width:600px){
  .language-wrap{flex-basis:50px;width:50px;min-width:50px;height:36px;border-radius:11px}
  .language-wrap select{font-size:18px;padding-right:15px}
}


/* 4.7.2 FINAL VISUAL ALIGNMENT — no empty grid row + modal close clearance */
body.site-home .search-grid{
  grid-auto-rows:auto !important;
  align-items:stretch !important;
}
body.site-home .search-grid > .field:nth-child(1),
body.site-home .search-grid > .field:nth-child(2),
body.site-home .search-grid > .field:nth-child(3),
body.site-home .search-grid > .field:nth-child(4){
  grid-row:1 !important;
}
body.site-home .search-grid > .field:nth-child(2){grid-column:2 !important;}
body.site-home .search-grid > .field:nth-child(3){grid-column:3 !important;}
body.site-home .search-grid > .field:nth-child(4){grid-column:4 !important;}
body.site-home .search-grid > .field:nth-child(1) .input-wrap,
body.site-home .search-grid > .field:nth-child(2) select,
body.site-home .search-grid > .field:nth-child(3) .money-input,
body.site-home .search-grid > .field:nth-child(4) select{height:54px !important;}

.modal-box > .close{
  top:14px !important;
  right:14px !important;
  left:auto !important;
  margin:0 !important;
  z-index:40 !important;
}
.modal-box > .modal-kicker:first-child,
.modal-box > .account-heading,
.modal-box > .suggest-title-row,
.modal-box > .discover-heading,
.modal-box > #detailsBody{
  position:relative;
}
.suggest-title-row{padding-right:54px !important;}
.category-suggestions-box{padding-top:54px !important;}
.category-suggestions-head{padding-right:54px !important;}
.category-suggestions-box > .close{top:16px !important;right:16px !important;}

@media (max-width:900px){
  body.site-home .search-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;}
  body.site-home .search-grid > .field:nth-child(1){grid-column:1 !important;grid-row:1 !important;}
  body.site-home .search-grid > .field:nth-child(2){grid-column:2 !important;grid-row:1 !important;}
  body.site-home .search-grid > .field:nth-child(3){grid-column:1 !important;grid-row:2 !important;}
  body.site-home .search-grid > .field:nth-child(4){grid-column:2 !important;grid-row:2 !important;}
}
@media (max-width:600px){
  body.site-home .search-grid{grid-template-columns:1fr !important;}
  body.site-home .search-grid > .field:nth-child(1),
  body.site-home .search-grid > .field:nth-child(2),
  body.site-home .search-grid > .field:nth-child(3),
  body.site-home .search-grid > .field:nth-child(4){grid-column:1 !important;grid-row:auto !important;}
  .modal-box{padding-top:54px !important;}
  .category-suggestions-box{padding-top:52px !important;}
}

/* 4.7.4 — PREMIUM HIGH-DPI GLASS PASS
   Dense, editorial glass surfaces with a photographic backdrop. The interface is
   intentionally its own visual language rather than an imitation of a platform UI. */
body.site-home{
  background-image:
    linear-gradient(180deg,rgba(4,8,14,.16) 0%,rgba(5,9,15,.22) 26%,rgba(4,7,12,.66) 70%,rgba(3,5,9,.94) 100%),
    radial-gradient(900px 520px at 82% 7%,rgba(255,222,174,.13),transparent 64%),
    url("budget-explorer-morning-landscape.jpg") !important;
  background-size:cover,cover,cover !important;
  background-position:center top,center top,center top !important;
}
body.site-home:before{
  background:
    radial-gradient(900px 440px at 18% 18%,rgba(105,135,170,.055),transparent 68%),
    radial-gradient(800px 520px at 88% 38%,rgba(255,190,120,.055),transparent 70%),
    linear-gradient(180deg,transparent 0%,rgba(0,0,0,.035) 42%,rgba(0,0,0,.22) 100%) !important;
  opacity:1 !important;
}
body.site-home .search-shell{
  margin-top:-8px !important;
  padding:14px 18px 15px !important;
  border-radius:24px !important;
  background:linear-gradient(135deg,rgba(8,14,22,.49),rgba(255,255,255,.075) 50%,rgba(5,10,16,.45)) !important;
  border:1px solid rgba(255,255,255,.20) !important;
  box-shadow:0 28px 90px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.16),inset 0 -1px 0 rgba(0,0,0,.30) !important;
  backdrop-filter:blur(34px) saturate(145%) !important;
  -webkit-backdrop-filter:blur(34px) saturate(145%) !important;
}
body.site-home .search-tabs{
  height:42px !important;
  margin-bottom:10px !important;
  border-bottom-color:rgba(255,255,255,.12) !important;
}
body.site-home .search-grid{
  margin:0 !important;
  grid-auto-rows:54px !important;
  align-items:stretch !important;
}
body.site-home .search-grid>.field{height:54px !important;min-height:54px !important;}
body.site-home .search-grid>.field:nth-child(1),
body.site-home .search-grid>.field:nth-child(2),
body.site-home .search-grid>.field:nth-child(3),
body.site-home .search-grid>.field:nth-child(4){grid-row:1 !important;}
body.site-home .search-bottom{bottom:15px !important;right:18px !important;}
body.site-home .search-btn{
  height:54px !important;
  min-width:214px !important;
  border-radius:15px !important;
  letter-spacing:-.015em;
  box-shadow:0 16px 42px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.95) !important;
}
body.site-home .field input,body.site-home .field select,body.site-home .money-input{
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.028)) !important;
  border-color:rgba(255,255,255,.15) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09),inset 0 -1px 0 rgba(0,0,0,.16),0 9px 28px rgba(0,0,0,.08) !important;
}
body.site-home .field input:hover,body.site-home .field select:hover,body.site-home .money-input:hover{
  border-color:rgba(255,255,255,.22) !important;
  background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035)) !important;
}
body.site-home .category-card{
  border-color:rgba(255,255,255,.20) !important;
  box-shadow:0 24px 60px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.13) !important;
  backdrop-filter:blur(4px) saturate(115%);
  -webkit-backdrop-filter:blur(4px) saturate(115%);
}
body.site-home .category-card:after{
  background:linear-gradient(180deg,transparent 30%,rgba(2,5,9,.58) 57%,rgba(2,4,8,.96) 100%) !important;
}
body.site-home .category-card img{filter:saturate(.96) contrast(1.04);}
body.site-home .category-card:hover img{filter:saturate(1.08) contrast(1.06) brightness(1.03);}
body.site-home .result-card,body.site-home .map-card,body.site-home .modal-box,body.site-home .discover-box,body.site-home .founder-panel{
  backdrop-filter:blur(30px) saturate(140%) !important;
  -webkit-backdrop-filter:blur(30px) saturate(140%) !important;
}
body.site-home .result-card:before,body.site-home .map-card:before,body.site-home .modal-box:before,body.site-home .discover-box:before,body.site-home .founder-panel:before{
  background:linear-gradient(120deg,rgba(255,255,255,.105),transparent 25%,transparent 70%,rgba(255,255,255,.035)) !important;
  opacity:.85 !important;
}
body.site-home .modal-box>.close{
  width:42px !important;height:42px !important;top:16px !important;right:16px !important;
  display:grid !important;place-items:center !important;
  margin:0 !important;padding:0 !important;
  border-radius:13px !important;
  line-height:1 !important;
  font-size:22px !important;
  z-index:50 !important;
  background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.055)) !important;
  border-color:rgba(255,255,255,.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 12px 30px rgba(0,0,0,.22) !important;
}
body.site-home .modal-box>.close:hover{background:rgba(255,255,255,.15) !important;transform:translateY(-1px);}
@media(max-width:900px){
  body.site-home .search-shell{margin-top:-4px !important;padding:13px 14px 14px !important;}
}
@media(max-width:600px){
  body.site-home .search-shell{margin-top:0 !important;padding:12px !important;}
  body.site-home .search-tabs{height:40px !important;margin-bottom:10px !important;}
  body.site-home .search-grid{grid-auto-rows:auto !important;}
  body.site-home .search-grid>.field{height:54px !important;min-height:54px !important;}
  body.site-home .search-bottom{position:static !important;margin-top:10px !important;}
  body.site-home .search-btn{width:100% !important;min-width:0 !important;}
}
@media(prefers-reduced-transparency:reduce){
  body.site-home .search-shell,body.site-home .result-card,body.site-home .map-card,body.site-home .modal-box{backdrop-filter:none !important;-webkit-backdrop-filter:none !important;}
}

/* 4.7.5 — TABLET TRUE BASELINE + CLEARER LANDSCAPE
   The search action is anchored to the same top edge as the four home controls.
   Tablet glass is slightly darker/cleaner so the morning landscape remains visible
   without turning the whole viewport into a flat grey wash. */
@media (min-width:901px){
  body.site-home .search-shell{position:relative !important;}
  body.site-home .search-grid{padding-right:232px !important;}
  body.site-home .search-bottom{
    top:77px !important;
    bottom:auto !important;
    right:18px !important;
    width:212px !important;
    height:54px !important;
    display:block !important;
    margin:0 !important;
  }
  body.site-home .search-bottom .search-btn{
    width:100% !important;
    height:54px !important;
    min-height:54px !important;
    margin:0 !important;
  }
}
@media (min-width:601px) and (max-width:1200px){
  body.site-home{
    background-image:
      linear-gradient(180deg,rgba(2,6,11,.30) 0%,rgba(3,7,12,.27) 28%,rgba(3,7,12,.58) 68%,rgba(3,5,9,.91) 100%),
      radial-gradient(760px 430px at 86% 8%,rgba(255,213,166,.075),transparent 66%),
      url("budget-explorer-morning-landscape.jpg") !important;
    background-size:cover,cover,cover !important;
    background-position:center 12%,center 12%,center 12% !important;
    background-attachment:scroll !important;
  }
  body.site-home .search-shell{
    background:linear-gradient(135deg,rgba(7,13,21,.58),rgba(255,255,255,.068) 50%,rgba(5,10,16,.54)) !important;
    border-color:rgba(255,255,255,.19) !important;
    box-shadow:0 26px 78px rgba(0,0,0,.40),inset 0 1px 0 rgba(255,255,255,.14),inset 0 -1px 0 rgba(0,0,0,.26) !important;
  }
}
@media (min-width:901px) and (max-width:1200px){
  body.site-home .search-shell{padding-left:14px !important;padding-right:14px !important;}
  body.site-home .search-bottom{right:14px !important;}
}
@media (max-width:900px){
  body.site-home .search-bottom .search-btn{height:54px !important;min-height:54px !important;}
}


/* 4.7.6 — SEARCH ACTION IS A REAL GRID ITEM
   The search button belongs to the same grid row as Location, Category, Budget and Radius.
   This removes the recurring tablet/desktop vertical drift caused by absolute positioning. */
body.site-home .search-shell{overflow:visible !important;}
body.site-home .search-grid{padding-right:0 !important;align-items:stretch !important;}
body.site-home .search-grid>.search-btn{
  grid-column:5 !important;
  grid-row:1 !important;
  width:100% !important;
  min-width:0 !important;
  height:54px !important;
  min-height:54px !important;
  margin:0 !important;
  align-self:stretch !important;
  box-sizing:border-box !important;
}
body.site-home .search-bottom{display:none !important;}

@media (min-width:901px){
  body.site-home .search-grid{
    grid-template-columns:minmax(0,1.18fr) minmax(0,1.08fr) minmax(0,.82fr) minmax(0,.90fr) minmax(170px,1fr) !important;
    grid-template-rows:54px !important;
    gap:10px !important;
  }
}
@media (min-width:601px) and (max-width:900px){
  body.site-home .search-grid{
    grid-template-columns:minmax(0,1.12fr) minmax(0,1fr) minmax(0,.82fr) minmax(0,.9fr) minmax(150px,.92fr) !important;
    grid-template-rows:54px !important;
    gap:8px !important;
  }
  body.site-home .search-grid>.field:nth-child(1){grid-column:1 !important;grid-row:1 !important;}
  body.site-home .search-grid>.field:nth-child(2){grid-column:2 !important;grid-row:1 !important;}
  body.site-home .search-grid>.field:nth-child(3){grid-column:3 !important;grid-row:1 !important;}
  body.site-home .search-grid>.field:nth-child(4){grid-column:4 !important;grid-row:1 !important;}
  body.site-home .search-grid>.search-btn{grid-column:5 !important;grid-row:1 !important;}
}
@media (max-width:600px){
  body.site-home .search-grid{grid-template-columns:1fr !important;grid-template-rows:auto !important;gap:10px !important;}
  body.site-home .search-grid>.field:nth-child(1),
  body.site-home .search-grid>.field:nth-child(2),
  body.site-home .search-grid>.field:nth-child(3),
  body.site-home .search-grid>.field:nth-child(4),
  body.site-home .search-grid>.search-btn{grid-column:1 !important;grid-row:auto !important;}
  body.site-home .search-grid>.search-btn{height:54px !important;margin-top:0 !important;}
}

/* 4.7.6 — clearer photographic backdrop on tablet without flattening the glass */
@media (min-width:601px) and (max-width:1200px){
  body.site-home{
    background-image:
      linear-gradient(180deg,rgba(2,6,11,.20) 0%,rgba(3,7,12,.22) 34%,rgba(3,7,12,.52) 70%,rgba(3,5,9,.88) 100%),
      radial-gradient(820px 460px at 82% 9%,rgba(255,214,170,.10),transparent 68%),
      url("budget-explorer-morning-landscape.jpg") !important;
    background-position:center 8%,center 8%,center 8% !important;
    background-size:cover,cover,cover !important;
  }
}

/* 4.7.7 — MOBILE SEARCH RESTORE + FINAL ALIGNMENT
   The home search keeps exactly four primary controls plus the action button on phones.
   Older visual overrides hid the fifth child (the real search button), which could leave
   the mobile grid showing only the radius control. This block intentionally restores the
   complete mobile search and keeps the action on the same baseline on larger screens. */
@media (min-width:601px){
  body.site-home .search-grid{
    align-items:stretch !important;
  }
  body.site-home .search-grid > .field:nth-child(1),
  body.site-home .search-grid > .field:nth-child(2),
  body.site-home .search-grid > .field:nth-child(3),
  body.site-home .search-grid > .field:nth-child(4),
  body.site-home .search-grid > .search-btn{
    grid-row:1 !important;
    align-self:stretch !important;
  }
  body.site-home .search-grid > .search-btn{
    display:flex !important;
  }
}

@media (min-width:601px) and (max-width:1200px){
  body.site-home .search-grid{
    grid-template-columns:minmax(0,1.12fr) minmax(0,1.05fr) minmax(0,.82fr) minmax(0,.86fr) minmax(150px,1fr) !important;
    grid-template-rows:54px !important;
    gap:9px !important;
  }
  body.site-home .search-grid > .search-btn{
    width:100% !important;
    min-width:0 !important;
  }
}

@media (max-width:600px){
  body.site-home .search-shell{
    margin-left:12px !important;
    margin-right:12px !important;
    padding:12px !important;
    overflow:visible !important;
  }
  body.site-home .search-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:repeat(5,54px) !important;
    gap:10px !important;
    padding:0 !important;
    margin:0 !important;
  }
  body.site-home .search-grid > .field:nth-child(1),
  body.site-home .search-grid > .field:nth-child(2),
  body.site-home .search-grid > .field:nth-child(3),
  body.site-home .search-grid > .field:nth-child(4){
    display:block !important;
    grid-column:1 !important;
    grid-row:auto !important;
    width:100% !important;
    height:54px !important;
    min-height:54px !important;
    min-width:0 !important;
  }
  body.site-home .search-grid > .search-btn{
    display:flex !important;
    grid-column:1 !important;
    grid-row:auto !important;
    width:100% !important;
    height:54px !important;
    min-height:54px !important;
    min-width:0 !important;
    margin:0 !important;
    align-self:stretch !important;
  }
  body.site-home .search-grid > .field:nth-child(6),
  body.site-home .search-grid > .field:nth-child(7){
    display:none !important;
  }
  body.site-home .search-grid > .field label{display:none !important;}
  body.site-home .search-grid > .field .input-wrap,
  body.site-home .search-grid > .field select,
  body.site-home .search-grid > .field .money-input{
    height:54px !important;
    min-height:54px !important;
  }
  body.site-home .search-bottom{display:none !important;}
  body.site-home .quick-cities{display:none !important;}
}

/* Final close-button clearance: never overlap modal headings on narrow screens. */
.modal-box > .close{
  position:absolute !important;
  top:16px !important;
  right:16px !important;
  left:auto !important;
  z-index:100 !important;
}
.suggest-title-row,
.discover-heading,
.account-heading,
.category-suggestions-head{
  padding-right:58px !important;
}


/* 4.8.0 — CRYSTAL GLASS + CLEAN DISCOVERY ALIGNMENT
   Desktop refinement based on the latest reference: remove redundant nearby tab,
   keep every discovery column on one shared grid, reveal more of the landscape,
   and make the glass visibly translucent without sacrificing text contrast. */
@media (min-width:901px){
  body.site-home .hero{
    width:min(1180px,calc(100% - 44px)) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    min-height:292px !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  body.site-home .hero-quote{
    width:300px !important;
    min-height:138px !important;
    margin:4px 0 0 auto !important;
    padding:24px 26px 18px !important;
    background:linear-gradient(135deg,rgba(255,255,255,.20),rgba(255,255,255,.075) 48%,rgba(255,255,255,.035)) !important;
    border:1px solid rgba(255,255,255,.30) !important;
    box-shadow:0 26px 70px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(0,0,0,.12) !important;
    -webkit-backdrop-filter:blur(30px) saturate(155%) !important;
    backdrop-filter:blur(30px) saturate(155%) !important;
  }
  body.site-home .hero-quote p{
    min-height:48px !important;
    display:flex !important;
    align-items:center !important;
    margin:3px 0 11px 4px !important;
    font-size:18px !important;
    line-height:1.25 !important;
    letter-spacing:-.018em !important;
    transition:opacity .18s ease,transform .18s ease !important;
  }
  body.site-home .hero-quote p:not(.is-visible){opacity:0;transform:translateY(4px)}
  body.site-home .search-shell{
    width:min(1180px,calc(100% - 44px)) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    margin-top:-5px !important;
    padding:15px 18px 16px !important;
    background:linear-gradient(135deg,rgba(8,14,22,.38),rgba(255,255,255,.105) 48%,rgba(6,11,17,.34)) !important;
    border:1px solid rgba(255,255,255,.25) !important;
    box-shadow:0 30px 90px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.20),inset 0 -1px 0 rgba(0,0,0,.20) !important;
    -webkit-backdrop-filter:blur(38px) saturate(155%) !important;
    backdrop-filter:blur(38px) saturate(155%) !important;
  }
  body.site-home .search-tabs{gap:12px !important;height:43px !important;margin-bottom:11px !important;}
  body.site-home .search-tab{padding:9px 12px !important;font-size:12px !important;}
  body.site-home .search-tab.active{background:linear-gradient(145deg,rgba(255,255,255,.19),rgba(255,255,255,.055)) !important;border:1px solid rgba(255,255,255,.14) !important;}
  body.site-home .search-grid{
    grid-template-columns:minmax(0,1.18fr) minmax(0,1.02fr) minmax(0,.82fr) minmax(0,.88fr) minmax(188px,1fr) !important;
    grid-template-rows:54px !important;
    gap:10px !important;
    padding:0 !important;
  }
  body.site-home .search-grid>.field:nth-child(1){grid-column:1 !important;grid-row:1 !important;}
  body.site-home .search-grid>.field:nth-child(2){grid-column:2 !important;grid-row:1 !important;}
  body.site-home .search-grid>.field:nth-child(3){grid-column:3 !important;grid-row:1 !important;}
  body.site-home .search-grid>.field:nth-child(4){grid-column:4 !important;grid-row:1 !important;}
  body.site-home .search-grid>.search-btn{grid-column:5 !important;grid-row:1 !important;width:100% !important;}
  body.site-home .search-grid>.field:nth-child(6),
  body.site-home .search-grid>.field:nth-child(7){display:none !important;}
  body.site-home .search-bottom{display:none !important;}
  body.site-home .quick-cities{margin-top:11px !important;}
  body.site-home .content-grid{
    width:min(1180px,calc(100% - 44px)) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding:0 !important;
    grid-template-columns:minmax(0,1.55fr) minmax(350px,.75fr) !important;
    gap:18px !important;
    align-items:stretch !important;
  }
  body.site-home .content-grid>div:first-child{min-width:0 !important;display:flex !important;flex-direction:column !important;}
  body.site-home .results{min-width:0 !important;}
  body.site-home .map-card{
    position:relative !important;
    top:auto !important;
    height:100% !important;
    min-height:460px !important;
    background:linear-gradient(135deg,rgba(8,14,21,.36),rgba(255,255,255,.095) 48%,rgba(5,10,16,.34)) !important;
    border:1px solid rgba(255,255,255,.25) !important;
    box-shadow:0 28px 80px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.18),inset 0 -1px 0 rgba(0,0,0,.18) !important;
    -webkit-backdrop-filter:blur(34px) saturate(150%) !important;
    backdrop-filter:blur(34px) saturate(150%) !important;
  }
  body.site-home .map-body{min-height:390px !important;background:radial-gradient(circle at 50% 18%,rgba(255,255,255,.09),transparent 50%),rgba(5,8,12,.16) !important;}
  body.site-home .result-card,
  body.site-home .empty{
    background:linear-gradient(135deg,rgba(8,14,21,.34),rgba(255,255,255,.085) 48%,rgba(5,10,16,.31)) !important;
    border-color:rgba(255,255,255,.22) !important;
    -webkit-backdrop-filter:blur(34px) saturate(150%) !important;
    backdrop-filter:blur(34px) saturate(150%) !important;
    box-shadow:0 22px 65px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.14) !important;
  }
}

/* Rotating quote motion and a clearer glass highlight on all supported widths. */
.hero-quote:after{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(115deg,rgba(255,255,255,.12),transparent 28%,transparent 68%,rgba(255,255,255,.055));
  opacity:.9;
}
.hero-quote>*{position:relative;z-index:1;}

@media (min-width:601px){
  body.site-home .popular-categories,
  body.site-home .results-head,
  body.site-home .rating-panel,
  body.site-home .trust,
  body.site-home .founder-panel{
    max-width:1180px !important;
  }
  body.site-home .results-head{padding-left:0 !important;padding-right:0 !important;margin-left:auto !important;margin-right:auto !important;}
}

@media (max-width:900px){
  body.site-home .hero-quote p:not(.is-visible){opacity:0;transform:translateY(4px)}
  body.site-home .hero-quote p{transition:opacity .18s ease,transform .18s ease !important;}
}

/* 4.9.0 — CRYSTAL LIQUID GLASS
   A bespoke physical-glass treatment: translucent, refractive-looking and luminous,
   while keeping Budget Explorer's own visual identity. No platform-specific UI styling. */
:root{
  --crystal-fill:rgba(255,255,255,.075);
  --crystal-fill-deep:rgba(7,13,21,.27);
  --crystal-edge:rgba(255,255,255,.205);
  --crystal-edge-soft:rgba(255,255,255,.105);
  --crystal-highlight:rgba(255,255,255,.22);
}

/* Keep the photograph readable through the interface instead of replacing it with opaque cards. */
body.site-home{
  background-image:
    linear-gradient(180deg,rgba(3,7,13,.08) 0%,rgba(4,8,14,.12) 30%,rgba(3,6,11,.48) 72%,rgba(2,4,8,.82) 100%),
    radial-gradient(760px 460px at 78% 9%,rgba(255,225,184,.12),transparent 68%),
    url("budget-explorer-morning-landscape.jpg") !important;
}

/* Shared crystal surface. */
body.site-home .topbar,
body.site-home .hero-quote,
body.site-home .search-shell,
body.site-home .result-card,
body.site-home .map-card,
body.site-home .rating-panel,
body.site-home .trust-card,
body.site-home .founder-panel,
body.site-home .category-card,
body.site-home .empty,
body.site-home .modal-box,
body.site-home .discover-box,
body.site-home .consent-box{
  position:relative;
  isolation:isolate;
  background:
    linear-gradient(145deg,rgba(255,255,255,.115) 0%,rgba(255,255,255,.048) 34%,rgba(7,13,21,.22) 100%) !important;
  border:1px solid var(--crystal-edge) !important;
  box-shadow:
    0 28px 90px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.20),
    inset 0 -1px 0 rgba(0,0,0,.12),
    inset 1px 0 0 rgba(255,255,255,.045),
    inset -1px 0 0 rgba(255,255,255,.025) !important;
  -webkit-backdrop-filter:blur(48px) saturate(175%) contrast(105%);
  backdrop-filter:blur(48px) saturate(175%) contrast(105%);
}

/* Soft refraction bloom + diagonal specular streak. */
body.site-home .topbar::before,
body.site-home .hero-quote::before,
body.site-home .search-shell::before,
body.site-home .result-card::before,
body.site-home .map-card::before,
body.site-home .rating-panel::before,
body.site-home .trust-card::before,
body.site-home .founder-panel::before,
body.site-home .category-card::before,
body.site-home .empty::before,
body.site-home .modal-box::before,
body.site-home .discover-box::before,
body.site-home .consent-box::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  z-index:-1;
  background:
    radial-gradient(125% 80% at 0% 0%,rgba(255,255,255,.14),transparent 38%),
    radial-gradient(80% 65% at 100% 100%,rgba(135,170,205,.055),transparent 58%);
  opacity:.95;
}

body.site-home .topbar::after,
body.site-home .hero-quote::after,
body.site-home .search-shell::after,
body.site-home .result-card::after,
body.site-home .map-card::after,
body.site-home .rating-panel::after,
body.site-home .trust-card::after,
body.site-home .founder-panel::after,
body.site-home .category-card::after,
body.site-home .empty::after,
body.site-home .modal-box::after,
body.site-home .discover-box::after,
body.site-home .consent-box::after{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:inherit;
  pointer-events:none;
  z-index:5;
  background:
    linear-gradient(116deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.045) 13%,transparent 29%,transparent 72%,rgba(255,255,255,.055) 100%);
  mix-blend-mode:screen;
  opacity:.72;
}

/* Slightly different transparency levels create depth instead of a repeated grey block. */
body.site-home .topbar{background:rgba(9,14,21,.26) !important;backdrop-filter:blur(42px) saturate(165%);-webkit-backdrop-filter:blur(42px) saturate(165%);}
body.site-home .hero-quote{background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.065) 45%,rgba(7,13,21,.18)) !important;}
body.site-home .search-shell{background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(7,13,21,.19) 52%,rgba(255,255,255,.055)) !important;}
body.site-home .result-card{background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(7,13,21,.20) 52%,rgba(255,255,255,.04)) !important;}
body.site-home .map-card{background:linear-gradient(145deg,rgba(255,255,255,.095),rgba(7,13,21,.18) 52%,rgba(255,255,255,.045)) !important;}

/* Controls become glass-in-glass rather than solid dark rectangles. */
body.site-home .search-tab,
body.site-home .field input,
body.site-home .field select,
body.site-home .money-input,
body.site-home .quick-cities button,
body.site-home .surprise,
body.site-home .btn,
body.site-home .badge,
body.site-home .card-icon,
body.site-home .clear-btn,
body.site-home .locate-btn,
body.site-home .toggle > span:first-of-type,
body.site-home .language-wrap,
body.site-home .load-more,
body.site-home .trust-points span{
  background:rgba(255,255,255,.055) !important;
  border-color:rgba(255,255,255,.115) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.105),
    inset 0 -1px 0 rgba(0,0,0,.08),
    0 8px 26px rgba(0,0,0,.08) !important;
  -webkit-backdrop-filter:blur(26px) saturate(150%);
  backdrop-filter:blur(26px) saturate(150%);
}

body.site-home .search-tab.active,
body.site-home .quick-cities button:hover,
body.site-home .btn:hover,
body.site-home .surprise:hover{
  background:rgba(255,255,255,.105) !important;
  border-color:rgba(255,255,255,.19) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 10px 30px rgba(0,0,0,.12) !important;
}

body.site-home .field input:focus,
body.site-home .field select:focus,
body.site-home .money-input:focus-within{
  background:rgba(255,255,255,.085) !important;
  border-color:rgba(255,255,255,.27) !important;
  box-shadow:0 0 0 4px rgba(255,255,255,.025),inset 0 1px 0 rgba(255,255,255,.14),0 12px 34px rgba(0,0,0,.10) !important;
}

/* Primary action stays crisp: glass around it, polished ceramic-like face on it. */
body.site-home .search-btn,
body.site-home .btn.primary{
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(236,240,244,.86)) !important;
  border-color:rgba(255,255,255,.96) !important;
  box-shadow:
    0 18px 48px rgba(0,0,0,.20),
    inset 0 1px 0 #fff,
    inset 0 -1px 0 rgba(0,0,0,.08) !important;
}
body.site-home .search-btn:hover,
body.site-home .btn.primary:hover{transform:translateY(-1px);filter:brightness(1.025);}

/* Map itself remains legible, but its shell should visually float above the photograph. */
body.site-home .map-body{
  background:
    radial-gradient(500px 280px at 50% 12%,rgba(255,255,255,.075),transparent 68%),
    linear-gradient(145deg,rgba(255,255,255,.025),rgba(3,7,12,.10)) !important;
}

/* Quote: a distinctive crystal plaque rather than a generic frosted card. */
body.site-home .hero-quote{
  overflow:hidden;
  box-shadow:
    0 30px 82px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.27),
    inset 0 -1px 0 rgba(0,0,0,.10),
    inset 18px 0 42px rgba(255,255,255,.018) !important;
}
body.site-home .hero-quote span{color:rgba(255,255,255,.68) !important;text-shadow:0 1px 18px rgba(255,255,255,.10);}

@media (max-width:900px){
  body.site-home .topbar,
  body.site-home .hero-quote,
  body.site-home .search-shell,
  body.site-home .result-card,
  body.site-home .map-card,
  body.site-home .rating-panel,
  body.site-home .trust-card,
  body.site-home .founder-panel,
  body.site-home .category-card,
  body.site-home .modal-box,
  body.site-home .discover-box,
  body.site-home .consent-box{
    -webkit-backdrop-filter:blur(38px) saturate(165%) contrast(104%);
    backdrop-filter:blur(38px) saturate(165%) contrast(104%);
  }
}

@media (max-width:600px){
  body.site-home{
    background-image:
      linear-gradient(180deg,rgba(3,7,13,.10),rgba(3,6,11,.58) 70%,rgba(2,4,8,.86)),
      radial-gradient(520px 360px at 80% 7%,rgba(255,225,184,.10),transparent 70%),
      url("budget-explorer-morning-landscape.jpg") !important;
  }
  body.site-home .topbar{background:rgba(8,13,20,.34) !important;backdrop-filter:blur(34px) saturate(160%);-webkit-backdrop-filter:blur(34px) saturate(160%);}
  body.site-home .hero-quote{box-shadow:0 22px 62px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.22),inset 0 -1px 0 rgba(0,0,0,.10) !important;}
}

@media(prefers-reduced-transparency:reduce){
  body.site-home .topbar,
  body.site-home .hero-quote,
  body.site-home .search-shell,
  body.site-home .result-card,
  body.site-home .map-card,
  body.site-home .rating-panel,
  body.site-home .trust-card,
  body.site-home .founder-panel,
  body.site-home .category-card,
  body.site-home .modal-box,
  body.site-home .discover-box,
  body.site-home .consent-box{
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
  }
}
