
:root{

--bg:#0b1220;--bg2:#111827;--panel:rgba(255,255,255,.06);--line:rgba(255,255,255,.08);

--text:#e5eefc;--muted:#9db0cc;--accent:#38bdf8;--shadow:0 20px 60px rgba(0,0,0,.28)

}

*{box-sizing:border-box}

html,body{margin:0;padding:0;font-family:Inter,Arial,sans-serif;color:var(--text);

background:radial-gradient(circle at top left,rgba(56,189,248,.18),transparent 28%),

linear-gradient(180deg,var(--bg) 0%,var(--bg2) 100%)}

a{color:var(--accent);text-decoration:none}

a:hover{text-decoration:underline}

.container{width:min(1180px,calc(100% - 28px));margin:0 auto;padding:28px 0 56px}

.hero,.card,.weather-box,.forecast-card,.fact,.faq-item{

border:1px solid var(--line);background:var(--panel);border-radius:22px;

box-shadow:var(--shadow);backdrop-filter:blur(8px)

}

.hero{padding:28px;margin-bottom:24px}

.hero-small{padding:24px}

.hero h1{font-size:46px;line-height:1.06;margin:10px 0}

.lead,.muted,.mini-state,.forecast-state,.card p,.faq-item p{color:var(--muted)}

.badge{display:inline-block;padding:8px 12px;border-radius:999px;background:rgba(56,189,248,.16);color:#c8f0ff;font-size:13px;font-weight:700}

.section{margin-top:24px}

.section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:0 0 14px}

.section-head h2{margin:0;font-size:28px}

.chips{display:flex;flex-wrap:wrap;gap:10px}

.chip{display:inline-flex;align-items:center;padding:10px 12px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:#d9e8fb}

.chip:hover{text-decoration:none;border-color:rgba(56,189,248,.4)}

.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:16px}

.card{padding:18px;transition:transform .18s ease,border-color .18s ease}

.card:hover{transform:translateY(-3px);border-color:rgba(56,189,248,.45);text-decoration:none}

.card h3{margin:0 0 8px;font-size:24px;color:var(--text)}

.card p{margin:0}

.card-top{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:14px}

.mini-icon{font-size:28px}

.mini-temp{font-size:34px;font-weight:800;margin-bottom:8px}

.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;color:var(--muted);font-size:14px}

.weather-box{padding:24px;margin-top:20px}

.current-main{display:flex;align-items:center;gap:18px;margin-bottom:22px}

.current-icon{font-size:64px;line-height:1}

.temp{font-size:76px;font-weight:900;line-height:1;margin-bottom:8px}

.state{font-size:24px;font-weight:700;margin-bottom:8px}

.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}

.fact{padding:16px}

.fact span{display:block;margin-bottom:8px;color:var(--muted);font-size:14px}

.fact strong{font-size:24px}

.forecast-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}

.forecast-card{padding:16px}

.forecast-day{font-weight:800;margin-bottom:8px}

.forecast-icon{font-size:34px;margin-bottom:8px}

.forecast-temps{display:flex;align-items:center;gap:8px}

.forecast-temps strong{font-size:24px}

.forecast-temps span{color:var(--muted)}

.faq{margin-top:24px}

.faq-list{display:grid;gap:14px}

.faq-item{padding:18px}

.faq-item h3{margin:0 0 8px}

@media (max-width:700px){

.hero h1{font-size:32px}

.temp{font-size:56px}

.current-main{align-items:flex-start}

}




.search{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}

.search input{

flex:1 1 320px;min-width:220px;padding:15px 16px;border:1px solid rgba(255,255,255,.10);

border-radius:14px;background:rgba(15,23,42,.7);color:var(--text);outline:none;font-size:16px

}

.search button{

padding:15px 18px;border:0;border-radius:14px;background:linear-gradient(135deg,#38bdf8,#2563eb);

color:#fff;cursor:pointer;font-weight:700

}

.seo-box{

margin-top:24px;padding:24px;border:1px solid var(--line);background:var(--panel);

border-radius:22px;box-shadow:var(--shadow)

}

.seo-box h2{margin-top:0}




.city-subnav{

display:flex;

flex-wrap:wrap;

gap:10px;

margin:16px 0 22px;

}

.city-subnav a,

.city-subnav span{

display:inline-flex;

align-items:center;

justify-content:center;

min-height:42px;

padding:0 14px;

border-radius:999px;

border:1px solid rgba(255,255,255,.10);

background:rgba(255,255,255,.05);

color:#deebff;

font-size:14px;

font-weight:700;

}

.city-subnav a.active{

background:linear-gradient(135deg,#5cc8ff,#4f7cff);

border-color:transparent;

color:#fff;

box-shadow:0 10px 22px rgba(79,124,255,.24);

}

.city-subnav span{

opacity:.72;

}




.hero-links{

display:grid;

grid-template-columns:repeat(4,minmax(0,1fr));

gap:12px;

margin-top:18px;

}

.hero-link{

display:block;

padding:16px 16px;

border-radius:18px;

border:1px solid rgba(255,255,255,.08);

background:rgba(255,255,255,.05);

color:var(--text);

transition:transform .18s ease,border-color .18s ease,background .18s ease;

}

.hero-link:hover{

transform:translateY(-2px);

border-color:rgba(92,200,255,.34);

background:rgba(255,255,255,.08);

}

.hero-link strong{

display:block;

font-size:16px;

margin-bottom:6px;

}

.hero-link span{

display:block;

font-size:13px;

color:var(--muted);

}

@media (max-width:900px){

.hero-links{grid-template-columns:repeat(2,minmax(0,1fr))}

}

@media (max-width:640px){

.hero-links{grid-template-columns:1fr}

}




.wicon{

  display:inline-flex;

  width:28px;

  height:28px;

  align-items:center;

  justify-content:center;

  vertical-align:middle;

}

.wicon svg{width:100%;height:100%}

.wicon--sun{color:#ffb400}

.wicon--partly{color:#f6a623}

.wicon--cloud{color:#8ea0b8}

.wicon--rain{color:#3d7bfd}

.wicon--snow{color:#5ba7ff}

.wicon--storm{color:#7b61ff}



.search-wrap{position:relative}

.search-suggest{

  position:absolute;

  top:calc(100% + 8px);

  left:0;

  right:0;

  z-index:40;

  background:#fff;

  border:1px solid rgba(20,30,50,.08);

  box-shadow:0 18px 50px rgba(18,31,53,.12);

  border-radius:18px;

  overflow:hidden;

}

.suggest-item{

  display:flex;

  justify-content:space-between;

  gap:16px;

  padding:14px 16px;

  text-decoration:none;

  color:#142033;

  border-top:1px solid rgba(20,30,50,.06);

}

.suggest-item:first-child{border-top:0}

.suggest-item:hover{background:#f5f8ff}

.suggest-item span{opacity:.68;font-size:14px}



.current-icon .wicon,

.forecast-icon .wicon,

.mini-icon .wicon{

  width:36px;

  height:36px;

}




.site-header--premium{

  position:sticky;top:0;z-index:50;

  backdrop-filter:blur(14px);

  background:rgba(255,255,255,.78);

  border-bottom:1px solid rgba(20,30,50,.08)

}

.nav--premium a.active{color:#245cff;font-weight:700}

.site-footer{

  margin-top:56px;

  padding:40px 0;

  background:linear-gradient(180deg,#0f1728,#101b31);

  color:#dce6ff

}

.footer-grid{

  display:grid;

  grid-template-columns:2fr 1fr 1fr;

  gap:24px

}

.footer-grid a{display:block;color:#dce6ff;text-decoration:none;margin:8px 0;opacity:.9}

.footer-grid a:hover{opacity:1}

.footer-brand{font-size:22px;font-weight:800;margin-bottom:8px}

.footer-title{font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.8;margin-bottom:10px}

.footer-copy{max-width:560px;opacity:.82}



.weather-map-frame{

  border-radius:22px;

  overflow:hidden;

  box-shadow:0 22px 60px rgba(18,31,53,.12);

  border:1px solid rgba(20,30,50,.08);

  background:#fff

}

.weather-map-frame iframe{

  display:block;

  width:100%;

  min-height:420px;

  border:0

}



.comfort-meter{display:grid;gap:10px}

.comfort-meter__bar{

  height:12px;border-radius:999px;background:#e9eef9;overflow:hidden

}

.comfort-meter__bar span{

  display:block;height:100%;border-radius:999px;

  background:linear-gradient(90deg,#ff6b6b,#ffb84d,#5ccf7a,#2f7bff)

}

.comfort-meter__meta{

  display:flex;justify-content:space-between;gap:12px;align-items:center;

  font-size:14px;color:#44526b

}

.comfort-meter.good .comfort-meter__meta strong{color:#198754}

.comfort-meter.mid .comfort-meter__meta strong{color:#d98d00}

.comfort-meter.bad .comfort-meter__meta strong{color:#d64545}



.journal-grid{

  display:grid;

  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));

  gap:18px

}

.journal-card{

  display:block;

  padding:20px;

  border-radius:20px;

  background:#fff;

  border:1px solid rgba(20,30,50,.08);

  box-shadow:0 18px 50px rgba(18,31,53,.08);

  text-decoration:none;

  color:#142033

}

.journal-card:hover{transform:translateY(-2px)}

.journal-card h3{margin:0 0 10px;font-size:18px}

.journal-card p{margin:0;color:#52627a;line-height:1.55}



.prose p{line-height:1.72;margin:0 0 14px}



@media (max-width: 900px){

  .footer-grid{grid-template-columns:1fr}

}




.site-header--glass{

  position:sticky;

  top:0;

  z-index:60;

  backdrop-filter:blur(18px);

  background:rgba(255,255,255,.76);

  border-bottom:1px solid rgba(20,30,50,.08);

  box-shadow:0 8px 30px rgba(17,29,52,.05);

}

.header-inner--premium{

  display:flex;

  align-items:center;

  justify-content:space-between;

  gap:20px;

  min-height:78px;

}

.brand--premium{

  display:flex;

  align-items:center;

  gap:14px;

  text-decoration:none;

  color:#13233a;

}

.brand-mark--premium{

  position:relative;

  width:42px;

  height:42px;

  border-radius:14px;

  background:linear-gradient(135deg,#f6fbff,#eaf2ff);

  box-shadow:0 10px 24px rgba(36,92,255,.12);

  flex:0 0 auto;

}

.brand-sun{

  position:absolute;

  width:18px;height:18px;

  left:9px;top:7px;

  border-radius:50%;

  background:radial-gradient(circle at 35% 35%,#fff7b3,#ffbf2f 65%,#ff9900 100%);

}

.brand-cloud{

  position:absolute;

  right:6px;bottom:8px;

  width:20px;height:10px;

  border-radius:999px;

  background:#dfe8f6;

  box-shadow:-7px -3px 0 1px #eef4fb, -1px -5px 0 0 #eef4fb;

}

.brand-text{

  display:flex;

  flex-direction:column;

  line-height:1.05;

}

.brand-text strong{

  font-size:19px;

  font-weight:800;

  letter-spacing:-.02em;

}

.brand-text small{

  font-size:11px;

  color:#6a7890;

  margin-top:4px;

}

.header-actions{

  display:flex;

  align-items:center;

  gap:10px;

}

.header-pill,

.header-cta{

  text-decoration:none;

  border-radius:999px;

  padding:10px 14px;

  font-weight:700;

  font-size:14px;

}

.header-pill{

  color:#1d3557;

  background:#eef4ff;

}

.header-cta{

  color:#fff;

  background:linear-gradient(135deg,#245cff,#4c7dff);

  box-shadow:0 10px 24px rgba(36,92,255,.22);

}

.nav--premium a.active{

  color:#245cff;

  font-weight:800;

}

@media (max-width: 980px){

  .header-actions{display:none}

  .brand-text small{display:none}

}




.site-header--glass{

  position:sticky;

  top:0;

  z-index:60;

  backdrop-filter:blur(18px);

  background:rgba(255,255,255,.86);

  border-bottom:1px solid rgba(20,30,50,.08);

  box-shadow:0 8px 30px rgba(17,29,52,.05);

}

.header-inner--premium{

  display:flex;

  align-items:center;

  justify-content:space-between;

  gap:20px;

  min-height:78px;

}

.brand--premium{

  display:flex;

  align-items:center;

  gap:14px;

  text-decoration:none;

  color:#13233a;

}

.brand-mark--premium{

  position:relative;

  width:42px;

  height:42px;

  border-radius:14px;

  background:linear-gradient(135deg,#f6fbff,#eaf2ff);

  box-shadow:0 10px 24px rgba(36,92,255,.12);

  flex:0 0 auto;

}

.brand-sun{

  position:absolute;

  width:18px;height:18px;

  left:9px;top:7px;

  border-radius:50%;

  background:radial-gradient(circle at 35% 35%,#fff7b3,#ffbf2f 65%,#ff9900 100%);

}

.brand-cloud{

  position:absolute;

  right:6px;bottom:8px;

  width:20px;height:10px;

  border-radius:999px;

  background:#dfe8f6;

  box-shadow:-7px -3px 0 1px #eef4fb, -1px -5px 0 0 #eef4fb;

}

.brand-text{display:flex;flex-direction:column;line-height:1.05}

.brand-text strong{font-size:19px;font-weight:800;letter-spacing:-.02em;color:#13233a}

.brand-text small{font-size:11px;color:#6a7890;margin-top:4px}

.nav--premium a{color:#24364e;text-decoration:none}

.nav--premium a.active{color:#245cff;font-weight:800}

.header-actions{display:flex;align-items:center;gap:10px}

.header-pill{

  text-decoration:none;

  border-radius:999px;

  padding:10px 14px;

  font-weight:700;

  font-size:14px;

  color:#1d3557;

  background:#eef4ff;

}

@media (max-width: 980px){

  .brand-text small{display:none}

}




.header-pill--install{

  border:0;

  cursor:pointer;

  background:linear-gradient(135deg,#245cff,#4c7dff);

  color:#fff;

  box-shadow:0 10px 24px rgba(36,92,255,.22);

}



.install-toast{

  position:fixed;

  left:16px;

  right:16px;

  bottom:16px;

  z-index:9999;

  display:none;

  align-items:center;

  justify-content:space-between;

  gap:14px;

  padding:14px 16px;

  border-radius:18px;

  background:rgba(17,27,45,.96);

  color:#fff;

  box-shadow:0 20px 60px rgba(0,0,0,.28);

}

.install-toast.show{

  display:flex;

}

.install-toast__text{

  display:flex;

  flex-direction:column;

  gap:4px;

}

.install-toast__text strong{

  font-size:15px;

  line-height:1.2;

}

.install-toast__text span{

  font-size:13px;

  color:rgba(255,255,255,.78);

}

.install-toast__actions{

  display:flex;

  align-items:center;

  gap:8px;

  flex:0 0 auto;

}

.install-toast__btn,

.install-toast__close{

  border:0;

  cursor:pointer;

  border-radius:999px;

  padding:10px 14px;

  font-weight:700;

}

.install-toast__btn{

  background:#4c7dff;

  color:#fff;

}

.install-toast__close{

  background:rgba(255,255,255,.12);

  color:#fff;

}



@media (max-width: 760px){

  .install-toast{

    flex-direction:column;

    align-items:stretch;

  }

  .install-toast__actions{

    width:100%;

  }

  .install-toast__btn,

  .install-toast__close{

    width:100%;

  }

}




.site-header--light{

  position:sticky;

  top:0;

  z-index:60;

  background:rgba(255,255,255,.94);

  backdrop-filter:blur(14px);

  border-bottom:1px solid rgba(20,30,50,.06);

  box-shadow:0 10px 30px rgba(20,30,50,.04);

}



.header-inner--premium{

  min-height:70px;

}



.header-pill{

  border:0;

  cursor:pointer;

  border-radius:999px;

  padding:10px 14px;

  font-weight:700;

  font-size:14px;

  color:#204062;

  background:#eef5ff;

}



.city-subnav{

  display:flex;

  flex-wrap:wrap;

  gap:8px;

  margin:14px 0 16px;

}



.city-subnav a{

  display:inline-flex;

  align-items:center;

  justify-content:center;

  min-height:34px;

  padding:7px 12px;

  border-radius:999px;

  font-size:13px;

  line-height:1.1;

  text-decoration:none;

  color:#30435d;

  background:#f4f7fb;

  border:1px solid rgba(20,30,50,.06);

}



.city-subnav a.active{

  color:#245cff;

  background:#eef4ff;

  border-color:rgba(36,92,255,.16);

  font-weight:700;

}



.trend-card{

  background:#fff;

  border:1px solid rgba(20,30,50,.08);

  border-radius:22px;

  padding:18px;

  box-shadow:0 18px 50px rgba(18,31,53,.08);

}



.trend-head{

  display:flex;

  align-items:baseline;

  justify-content:space-between;

  gap:12px;

  margin-bottom:10px;

}



.trend-head strong{

  font-size:18px;

}



.trend-head span{

  font-size:13px;

  color:#63738c;

}



.trend-svg{

  width:100%;

  height:220px;

  display:block;

  background:linear-gradient(180deg,#f8fbff,#ffffff);

  border-radius:18px;

}



.trend-legend{

  display:flex;

  gap:18px;

  flex-wrap:wrap;

  margin-top:12px;

  font-size:13px;

  color:#53657f;

}



.trend-legend span{

  display:inline-flex;

  align-items:center;

  gap:8px;

}



.trend-line{

  width:24px;

  height:4px;

  border-radius:999px;

  display:inline-block;

}



.trend-line--max{ background:#245cff; }

.trend-line--min{ background:#7db2ff; }



.trend-days{

  display:grid;

  grid-template-columns:repeat(auto-fit,minmax(90px,1fr));

  gap:10px;

  margin-top:14px;

}



.trend-days div{

  background:#f7faff;

  border-radius:14px;

  padding:10px 12px;

}



.trend-days strong{

  display:block;

  font-size:13px;

  margin-bottom:4px;

}



.trend-days span{

  font-size:13px;

  color:#52627a;

}



.info-grid--dense{

  display:grid;

  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

  gap:16px;

}



.info-card{

  background:#fff;

  border:1px solid rgba(20,30,50,.08);

  border-radius:18px;

  padding:16px;

  box-shadow:0 14px 40px rgba(18,31,53,.06);

}



.info-card h3{

  margin:0 0 8px;

  font-size:16px;

}



.info-card p{

  margin:0;

  color:#52627a;

  line-height:1.55;

}



.factor-grid{

  display:grid;

  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

  gap:16px;

}



.factor-card{

  background:linear-gradient(180deg,#ffffff,#f9fbff);

  border:1px solid rgba(20,30,50,.08);

  border-radius:18px;

  padding:16px;

}



.factor-card h3{

  margin:0 0 8px;

  font-size:16px;

}



.factor-card p{

  margin:0;

  color:#52627a;

  line-height:1.55;

}



.footer-install-btn{

  margin-top:10px;

  background:linear-gradient(135deg,#245cff,#4c7dff);

  color:#fff;

  box-shadow:0 10px 24px rgba(36,92,255,.22);

}



.footer-copy--small{

  font-size:13px;

  opacity:.88;

}



@media (max-width: 640px){

  .brand-text small{display:none}

  .header-inner--premium{min-height:64px}

  .header-pill{padding:9px 12px;font-size:13px}

  .city-subnav{gap:6px}

  .city-subnav a{min-height:32px;padding:6px 10px;font-size:12px}

  .trend-head{flex-direction:column;align-items:flex-start}

}




.site-header--light{

  background:linear-gradient(180deg, rgba(244,249,255,.96) 0%, rgba(255,255,255,.96) 100%) !important;

  border-bottom:1px solid rgba(61,111,196,.10) !important;

  box-shadow:0 10px 26px rgba(36,92,255,.06) !important;

}



.brand--premium{

  color:#17304f !important;

}



.brand-text strong{

  color:#17304f !important;

}



.brand-text small{

  color:#5f7391 !important;

}



.brand-mark--premium{

  background:linear-gradient(135deg,#ffffff,#e8f2ff) !important;

  box-shadow:0 10px 24px rgba(76,125,255,.10) !important;

}



.header-pill{

  background:#eaf3ff !important;

  color:#183b63 !important;

}




.info-grid--dense{

  display:grid;

  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

  gap:16px;

}



.info-card{

  position:relative;

  overflow:hidden;

  border-radius:20px;

  padding:18px;

  border:1px solid rgba(20,30,50,.06);

  box-shadow:0 16px 40px rgba(18,31,53,.07);

}



.info-card::before{

  content:"";

  position:absolute;

  inset:0;

  opacity:.95;

  pointer-events:none;

}



.info-card:nth-child(1)::before{ background:linear-gradient(135deg,#eef6ff,#f8fbff); }

.info-card:nth-child(2)::before{ background:linear-gradient(135deg,#edfdf7,#f7fffb); }

.info-card:nth-child(3)::before{ background:linear-gradient(135deg,#fff4eb,#fffaf6); }

.info-card:nth-child(4)::before{ background:linear-gradient(135deg,#f3efff,#faf8ff); }

.info-card:nth-child(5)::before{ background:linear-gradient(135deg,#eefbff,#f7fdff); }

.info-card:nth-child(6)::before{ background:linear-gradient(135deg,#fff7ea,#fffdf7); }



.info-card > *{

  position:relative;

  z-index:1;

}



.info-card h3{

  margin:0 0 8px;

  font-size:16px;

  color:#18304f;

}



.info-card p{

  margin:0;

  color:#50627d;

  line-height:1.6;

}



.trend-card--rich{

  background:linear-gradient(180deg,#ffffff 0%, #f8fbff 100%);

  border:1px solid rgba(36,92,255,.08);

  box-shadow:0 22px 60px rgba(36,92,255,.08);

}



.trend-head--rich strong{

  font-size:20px;

  color:#18304f;

}



.trend-head--rich span{

  color:#667b99;

}



.trend-scroll{

  overflow-x:auto;

  overflow-y:hidden;

  padding-bottom:4px;

  -webkit-overflow-scrolling:touch;

  scrollbar-width:thin;

}



.trend-scroll::-webkit-scrollbar{

  height:10px;

}



.trend-scroll::-webkit-scrollbar-thumb{

  background:linear-gradient(90deg,#b8d2ff,#ccecff);

  border-radius:999px;

}



.trend-svg--rich{

  min-width:820px;

  height:260px;

  display:block;

  background:linear-gradient(180deg,#f4f9ff 0%, #ffffff 100%);

  border-radius:20px;

}



.trend-days--scroll{

  display:flex;

  gap:12px;

  overflow-x:auto;

  padding-top:14px;

  padding-bottom:4px;

  -webkit-overflow-scrolling:touch;

}



.trend-day-card{

  min-width:130px;

  background:linear-gradient(180deg,#ffffff,#f8fbff);

  border:1px solid rgba(36,92,255,.08);

  border-radius:18px;

  padding:12px;

  box-shadow:0 10px 28px rgba(36,92,255,.06);

}



.trend-day-top{

  display:flex;

  align-items:center;

  justify-content:space-between;

  gap:10px;

  margin-bottom:10px;

}



.trend-day-name{

  font-size:13px;

  font-weight:700;

  color:#17304f;

}



.trend-day-icon{

  font-size:18px;

}



.trend-day-temps{

  display:flex;

  align-items:baseline;

  gap:8px;

  margin-bottom:8px;

}



.trend-day-temps strong{

  font-size:24px;

  line-height:1;

  color:#245cff;

}



.trend-day-temps span{

  font-size:15px;

  color:#73a7ff;

}



.trend-day-meta{

  font-size:12px;

  color:#617692;

  line-height:1.4;

  min-height:34px;

}



@media (max-width: 640px){

  .trend-day-card{min-width:118px}

  .trend-svg--rich{height:240px}

}




.forecast-card--hourly{

  position:relative;

  overflow:hidden;

  border-radius:20px;

  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);

  border:1px solid rgba(36,92,255,.08);

  box-shadow:0 16px 38px rgba(36,92,255,.08);

}



.hour-time-badge{

  display:inline-flex;

  align-items:center;

  justify-content:center;

  min-width:74px;

  padding:8px 12px;

  margin:0 auto 10px;

  border-radius:999px;

  background:linear-gradient(135deg,#245cff,#5b8cff);

  color:#fff;

  font-size:18px;

  font-weight:800;

  line-height:1;

  letter-spacing:.02em;

  box-shadow:0 10px 24px rgba(36,92,255,.22);

}



.forecast-card--hourly .forecast-state{

  min-height:38px;

  color:#47607e;

  font-size:13px;

}



.forecast-card--hourly .forecast-temps span{

  font-size:12px;

  color:#6c819d;

}



@media (max-width: 640px){

  .hour-time-badge{

    min-width:68px;

    font-size:17px;

    padding:8px 10px;

  }

}




.trend-card--mobile-first{

  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);

  border:1px solid rgba(36,92,255,.08);

  box-shadow:0 18px 48px rgba(36,92,255,.08);

}



.trend-top-grid{

  display:grid;

  grid-template-columns:repeat(5,minmax(0,1fr));

  gap:8px;

  margin:10px 0 14px;

}



.trend-top-day{

  padding:10px 8px;

  border-radius:16px;

  background:linear-gradient(180deg,#ffffff,#f3f8ff);

  border:1px solid rgba(36,92,255,.08);

  text-align:center;

  box-shadow:0 8px 22px rgba(36,92,255,.05);

}



.trend-top-name{

  font-size:12px;

  font-weight:800;

  color:#18304f;

  line-height:1.2;

  min-height:28px;

  display:flex;

  align-items:center;

  justify-content:center;

}



.trend-top-icon{

  font-size:18px;

  margin:5px 0 4px;

}



.trend-top-temp strong{

  display:block;

  font-size:18px;

  line-height:1;

  color:#245cff;

}



.trend-top-temp span{

  display:block;

  margin-top:3px;

  font-size:12px;

  color:#79b4ff;

}



.trend-svg--mobile{

  width:100%;

  height:220px;

  display:block;

  background:linear-gradient(180deg,#f4f9ff,#ffffff);

  border-radius:18px;

}



@media (max-width: 640px){

  .trend-top-grid{

    gap:6px;

  }



  .trend-top-day{

    padding:8px 6px;

    border-radius:14px;

  }



  .trend-top-name{

    font-size:11px;

    min-height:30px;

  }



  .trend-top-icon{

    font-size:16px;

  }



  .trend-top-temp strong{

    font-size:16px;

  }



  .trend-top-temp span{

    font-size:11px;

  }



  .trend-svg--mobile{

    height:190px;

  }

}




.hourly-grid{

  display:grid;

  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));

  gap:14px;

}



.hourly-card{

  display:flex;

  flex-direction:column;

  align-items:center;

  text-align:center;

  gap:10px;

  padding:16px 14px;

  border-radius:22px;

  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);

  border:1px solid rgba(36,92,255,.10);

  box-shadow:0 18px 40px rgba(36,92,255,.08);

}



.hourly-card__time{

  display:inline-flex;

  align-items:center;

  justify-content:center;

  min-width:84px;

  min-height:38px;

  padding:8px 14px;

  border-radius:999px;

  background:linear-gradient(135deg,#245cff,#5c89ff);

  color:#fff;

  font-size:20px;

  font-weight:800;

  line-height:1;

  letter-spacing:.02em;

  box-shadow:0 10px 24px rgba(36,92,255,.24);

}



.hourly-card__icon{

  display:flex;

  align-items:center;

  justify-content:center;

  min-height:40px;

}



.hourly-card__temp{

  font-size:34px;

  font-weight:800;

  line-height:1;

  color:#17304f;

  letter-spacing:-.03em;

}



.hourly-card__state{

  min-height:36px;

  font-size:13px;

  line-height:1.35;

  color:#58708d;

}



.hourly-card__meta{

  width:100%;

  display:grid;

  gap:6px;

  margin-top:2px;

}



.hourly-card__meta span{

  display:block;

  padding:8px 10px;

  border-radius:12px;

  background:#eef5ff;

  color:#49617d;

  font-size:12px;

  line-height:1.2;

}



@media (max-width: 640px){

  .hourly-grid{

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:10px;

  }



  .hourly-card{

    padding:14px 10px;

    gap:8px;

    border-radius:18px;

  }



  .hourly-card__time{

    min-width:72px;

    min-height:34px;

    padding:7px 12px;

    font-size:18px;

  }



  .hourly-card__temp{

    font-size:30px;

  }



  .hourly-card__state{

    min-height:32px;

    font-size:12px;

  }



  .hourly-card__meta span{

    font-size:11px;

    padding:7px 8px;

  }

}




/* darker header */

.site-header--light{

  background:linear-gradient(180deg, rgba(26,44,68,.96) 0%, rgba(34,56,84,.96) 100%) !important;

  border-bottom:1px solid rgba(140,180,255,.14) !important;

  box-shadow:0 14px 34px rgba(7,18,36,.28) !important;

}



.brand--premium,

.brand-text strong{

  color:#ffffff !important;

}



.brand-text small{

  color:rgba(226,236,255,.82) !important;

}



.brand-mark--premium{

  background:linear-gradient(135deg,#ffffff,#dce9ff) !important;

  box-shadow:0 8px 20px rgba(0,0,0,.16) !important;

}



.header-pill{

  background:rgba(255,255,255,.12) !important;

  color:#ffffff !important;

  border:1px solid rgba(255,255,255,.14) !important;

}



.header-pill:hover{

  background:rgba(255,255,255,.18) !important;

}



/* factors readability */

.factor-grid{

  display:grid;

  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

  gap:16px;

}



.factor-card{

  border-radius:20px;

  padding:18px;

  border:1px solid rgba(20,30,50,.08);

  box-shadow:0 16px 40px rgba(18,31,53,.08);

  position:relative;

  overflow:hidden;

}



.factor-card--magnetic{

  background:linear-gradient(180deg,#fff7fb 0%, #f9f1ff 100%);

}



.factor-card--pollen{

  background:linear-gradient(180deg,#f4fff7 0%, #eefdf2 100%);

}



.factor-card--air{

  background:linear-gradient(180deg,#f4fbff 0%, #eef6ff 100%);

}



.factor-card h3{

  margin:0 0 10px;

  font-size:17px;

  line-height:1.2;

  color:#19324f !important;

  font-weight:800;

}



.factor-card__value{

  display:inline-flex;

  align-items:center;

  justify-content:center;

  min-height:34px;

  padding:8px 12px;

  margin-bottom:10px;

  border-radius:999px;

  background:rgba(255,255,255,.78);

  color:#17304f;

  font-size:14px;

  font-weight:800;

  box-shadow:0 8px 22px rgba(18,31,53,.06);

}



.factor-card p{

  margin:0;

  color:#4b627c !important;

  line-height:1.6;

  font-size:14px;

}




/* compact mobile header actions */

.header-inner--premium{

  padding-left:14px !important;

  padding-right:14px !important;

}



.header-actions--compact{

  margin-left:auto;

  display:flex;

  align-items:center;

  gap:8px;

  padding-right:2px;

}



.header-pill--search{

  min-height:36px;

  padding:8px 12px !important;

  font-size:13px !important;

  line-height:1 !important;

  border-radius:999px;

  white-space:nowrap;

}



.header-icon-btn{

  width:36px;

  height:36px;

  display:inline-flex;

  align-items:center;

  justify-content:center;

  border:1px solid rgba(255,255,255,.16);

  border-radius:999px;

  background:rgba(255,255,255,.12);

  color:#fff;

  cursor:pointer;

  box-shadow:0 8px 20px rgba(0,0,0,.10);

  flex:0 0 auto;

}



.header-icon-btn svg{

  width:18px;

  height:18px;

  display:block;

}



.header-icon-btn:hover{

  background:rgba(255,255,255,.18);

}



/* search should stop higher on screen */

#site-search{

  scroll-margin-top:96px;

}



@media (max-width: 640px){

  .header-inner--premium{

    min-height:64px !important;

    padding-left:12px !important;

    padding-right:12px !important;

  }



  .header-actions--compact{

    gap:6px;

    padding-right:4px;

  }



  .header-pill--search{

    min-height:34px;

    padding:7px 11px !important;

    font-size:12px !important;

  }



  .header-icon-btn{

    width:34px;

    height:34px;

  }



  .header-icon-btn svg{

    width:17px;

    height:17px;

  }

}




/* mobile floating actions */

.mobile-fab-stack{

  position:fixed;

  right:14px;

  bottom:18px;

  z-index:9997;

  display:none;

  flex-direction:column;

  align-items:flex-end;

  gap:10px;

  pointer-events:none;

}



.mobile-fab{

  position:relative;

  pointer-events:auto;

  border:0;

  cursor:pointer;

  user-select:none;

  -webkit-tap-highlight-color:transparent;

}



.mobile-fab--share{

  display:inline-flex;

  align-items:center;

  gap:10px;

  min-height:52px;

  padding:0 18px 0 14px;

  border-radius:999px;

  color:#fff;

  background:linear-gradient(135deg,#ff5f6d 0%,#ff8a5b 35%,#7b61ff 100%);

  background-size:200% 200%;

  box-shadow:0 16px 36px rgba(123,97,255,.28), 0 8px 20px rgba(255,95,109,.18);

  overflow:hidden;

  animation:fabGradientMove 5.5s ease infinite, fabFloat 3.4s ease-in-out infinite;

}



.mobile-fab--share .mobile-fab__glow{

  position:absolute;

  inset:-30%;

  background:radial-gradient(circle, rgba(255,255,255,.35) 0%, rgba(255,255,255,0) 58%);

  animation:fabPulse 2.1s ease-in-out infinite;

  pointer-events:none;

}



.mobile-fab--share .mobile-fab__icon{

  position:relative;

  z-index:1;

  width:22px;

  height:22px;

  display:inline-flex;

  align-items:center;

  justify-content:center;

}



.mobile-fab--share .mobile-fab__icon svg{

  width:22px;

  height:22px;

  display:block;

}



.mobile-fab--share .mobile-fab__text{

  position:relative;

  z-index:1;

  font-size:14px;

  font-weight:800;

  letter-spacing:.01em;

  white-space:nowrap;

}



.mobile-fab--top{

  width:48px;

  height:48px;

  display:inline-flex;

  align-items:center;

  justify-content:center;

  border-radius:50%;

  color:#fff;

  background:linear-gradient(135deg,#18304f,#245cff);

  box-shadow:0 14px 28px rgba(24,48,79,.24);

  opacity:0;

  transform:translateY(10px) scale(.92);

  transition:opacity .25s ease, transform .25s ease;

}



.mobile-fab--top.is-visible{

  opacity:1;

  transform:translateY(0) scale(1);

}



.mobile-fab--top .mobile-fab__icon svg{

  width:22px;

  height:22px;

  display:block;

}



.share-sheet[hidden]{

  display:none !important;

}



.share-sheet{

  position:fixed;

  inset:0;

  z-index:9998;

}



.share-sheet__backdrop{

  position:absolute;

  inset:0;

  background:rgba(12,20,34,.42);

  backdrop-filter:blur(6px);

}



.share-sheet__panel{

  position:absolute;

  left:0;

  right:0;

  bottom:0;

  padding:12px 14px calc(16px + env(safe-area-inset-bottom));

  border-radius:24px 24px 0 0;

  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);

  box-shadow:0 -18px 50px rgba(10,20,38,.18);

  animation:shareSheetUp .28s ease-out;

}



.share-sheet__grab{

  width:44px;

  height:5px;

  border-radius:999px;

  background:#d7e4ff;

  margin:0 auto 12px;

}



.share-sheet__head{

  display:flex;

  align-items:center;

  justify-content:space-between;

  gap:10px;

  margin-bottom:14px;

}



.share-sheet__head strong{

  font-size:18px;

  color:#17304f;

}



.share-sheet__close{

  width:36px;

  height:36px;

  border:0;

  border-radius:50%;

  background:#edf4ff;

  color:#17304f;

  font-size:24px;

  line-height:1;

  cursor:pointer;

}



.share-sheet__grid{

  display:grid;

  grid-template-columns:repeat(2,minmax(0,1fr));

  gap:12px;

}



.share-tile{

  min-height:58px;

  display:flex;

  align-items:center;

  justify-content:center;

  padding:12px;

  border-radius:18px;

  border:0;

  text-decoration:none;

  font-size:14px;

  font-weight:800;

  color:#fff;

  box-shadow:0 12px 28px rgba(18,31,53,.10);

}



.share-tile span{

  text-align:center;

  line-height:1.2;

}



.share-tile--telegram{

  background:linear-gradient(135deg,#24a1de,#4cb8ff);

}



.share-tile--whatsapp{

  background:linear-gradient(135deg,#18b46b,#35d07f);

}



.share-tile--vk{

  background:linear-gradient(135deg,#2f74ff,#4f93ff);

}



.share-tile--copy{

  background:linear-gradient(135deg,#ff8a5b,#ff5f6d);

  color:#fff;

}



@keyframes fabPulse{

  0%,100%{ transform:scale(.92); opacity:.72; }

  50%{ transform:scale(1.08); opacity:1; }

}



@keyframes fabFloat{

  0%,100%{ transform:translateY(0); }

  50%{ transform:translateY(-3px); }

}



@keyframes fabGradientMove{

  0%{ background-position:0% 50%; }

  50%{ background-position:100% 50%; }

  100%{ background-position:0% 50%; }

}



@keyframes shareSheetUp{

  from{ transform:translateY(26px); opacity:0; }

  to{ transform:translateY(0); opacity:1; }

}



@media (max-width: 768px){

  .mobile-fab-stack{

    display:flex;

  }

}



@media (max-width: 420px){

  .mobile-fab-stack{

    right:12px;

    bottom:16px;

  }



  .mobile-fab--share{

    min-height:48px;

    padding:0 16px 0 13px;

    gap:8px;

  }



  .mobile-fab--share .mobile-fab__text{

    font-size:13px;

  }



  .mobile-fab--top{

    width:44px;

    height:44px;

  }

}




/* compact mobile quick actions */

.mobile-quick-actions{

  position:fixed;

  right:12px;

  bottom:16px;

  z-index:9997;

  display:none;

  flex-direction:column;

  align-items:flex-end;

  gap:10px;

}



.mqa-btn{

  border:0;

  cursor:pointer;

  -webkit-tap-highlight-color:transparent;

}



.mqa-btn--share{

  display:inline-flex;

  align-items:center;

  gap:8px;

  height:44px;

  padding:0 14px 0 12px;

  border-radius:999px;

  color:#fff;

  background:linear-gradient(135deg,#6a5cff 0%, #3f8cff 45%, #19c6b4 100%);

  box-shadow:0 12px 28px rgba(63,140,255,.28);

  animation:mqaBreath 2.8s ease-in-out infinite;

}



.mqa-btn--share .mqa-btn__icon{

  width:18px;

  height:18px;

  display:flex;

  align-items:center;

  justify-content:center;

}



.mqa-btn--share .mqa-btn__icon svg{

  width:18px;

  height:18px;

  display:block;

}



.mqa-btn--share .mqa-btn__text{

  font-size:13px;

  font-weight:800;

  letter-spacing:.01em;

  white-space:nowrap;

}



.mqa-btn--top{

  width:42px;

  height:42px;

  display:flex;

  align-items:center;

  justify-content:center;

  border-radius:50%;

  color:#fff;

  background:linear-gradient(135deg,#17304f,#245cff);

  box-shadow:0 10px 24px rgba(23,48,79,.26);

  opacity:0;

  transform:translateY(8px) scale(.92);

  transition:opacity .22s ease, transform .22s ease;

}



.mqa-btn--top.is-visible{

  opacity:1;

  transform:translateY(0) scale(1);

}



.mqa-btn--top .mqa-btn__icon svg{

  width:20px;

  height:20px;

  display:block;

}



.mqa-sheet[hidden],

.mqa-toast[hidden]{

  display:none !important;

}



.mqa-sheet{

  position:fixed;

  inset:0;

  z-index:9998;

}



.mqa-sheet__backdrop{

  position:absolute;

  inset:0;

  background:rgba(10,18,30,.44);

}



.mqa-sheet__panel{

  position:absolute;

  left:0;

  right:0;

  bottom:0;

  padding:12px 14px calc(16px + env(safe-area-inset-bottom));

  border-radius:22px 22px 0 0;

  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);

  box-shadow:0 -16px 40px rgba(10,18,30,.18);

  animation:mqaSheetUp .22s ease-out;

}



.mqa-sheet__grab{

  width:42px;

  height:5px;

  border-radius:999px;

  background:#d7e6ff;

  margin:0 auto 12px;

}



.mqa-sheet__head{

  display:flex;

  align-items:center;

  justify-content:space-between;

  gap:10px;

  margin-bottom:12px;

}



.mqa-sheet__head strong{

  font-size:17px;

  color:#17304f;

}



.mqa-sheet__close{

  width:34px;

  height:34px;

  border:0;

  border-radius:50%;

  background:#eef5ff;

  color:#17304f;

  font-size:23px;

  line-height:1;

  cursor:pointer;

}



.mqa-sheet__grid{

  display:grid;

  grid-template-columns:repeat(2,minmax(0,1fr));

  gap:10px;

}



.mqa-tile{

  min-height:50px;

  display:flex;

  align-items:center;

  justify-content:center;

  padding:10px 12px;

  border-radius:16px;

  border:0;

  text-decoration:none;

  color:#fff;

  font-size:13px;

  font-weight:800;

  box-shadow:0 10px 24px rgba(18,31,53,.10);

}



.mqa-tile--tg{ background:linear-gradient(135deg,#27a7e7,#56c1ff); }

.mqa-tile--wa{ background:linear-gradient(135deg,#16b86f,#3ad985); }

.mqa-tile--vk{ background:linear-gradient(135deg,#2f74ff,#5a97ff); }

.mqa-tile--copy{ background:linear-gradient(135deg,#ff7a59,#ff5ea8); }



.mqa-toast{

  position:fixed;

  left:50%;

  bottom:76px;

  transform:translateX(-50%);

  z-index:9999;

  padding:10px 14px;

  border-radius:999px;

  background:#17304f;

  color:#fff;

  font-size:13px;

  font-weight:700;

  box-shadow:0 14px 28px rgba(23,48,79,.22);

}



@keyframes mqaBreath{

  0%,100%{ transform:scale(1); box-shadow:0 12px 28px rgba(63,140,255,.28); }

  50%{ transform:scale(1.03); box-shadow:0 16px 34px rgba(63,140,255,.34); }

}



@keyframes mqaSheetUp{

  from{ transform:translateY(24px); opacity:0; }

  to{ transform:translateY(0); opacity:1; }

}



@media (max-width: 768px){

  .mobile-quick-actions{ display:flex; }

}



@media (max-width: 420px){

  .mqa-btn--share{

    height:42px;

    padding:0 13px 0 11px;

  }

  .mqa-btn--share .mqa-btn__text{

    font-size:12px;

  }

  .mqa-btn--top{

    width:40px;

    height:40px;

  }

}




/* final layout: top button left, share button center, desktop + mobile */

.mobile-quick-actions{

  position:fixed !important;

  left:0 !important;

  right:0 !important;

  bottom:max(16px, env(safe-area-inset-bottom)) !important;

  z-index:9997 !important;

  display:flex !important;

  justify-content:center !important;

  align-items:flex-end !important;

  gap:0 !important;

  pointer-events:none !important;

}



.mobile-quick-actions .mqa-btn{

  pointer-events:auto !important;

}



.mobile-quick-actions .mqa-btn--share{

  position:relative !important;

  left:auto !important;

  right:auto !important;

  margin:0 auto !important;

}



.mobile-quick-actions .mqa-btn--top{

  position:fixed !important;

  left:max(12px, env(safe-area-inset-left)) !important;

  right:auto !important;

  bottom:max(16px, env(safe-area-inset-bottom)) !important;

  margin:0 !important;

}



@media (min-width: 769px){

  .mobile-quick-actions{

    display:flex !important;

  }

}



@media (max-width: 420px){

  .mobile-quick-actions{

    bottom:max(14px, env(safe-area-inset-bottom)) !important;

  }



  .mobile-quick-actions .mqa-btn--top{

    left:max(10px, env(safe-area-inset-left)) !important;

    bottom:max(14px, env(safe-area-inset-bottom)) !important;

  }

}




@media (min-width: 769px){

  .mobile-quick-actions .mqa-btn--share{

    height:42px !important;

    padding:0 13px 0 11px !important;

  }



  .mobile-quick-actions .mqa-btn--share .mqa-btn__text{

    font-size:12px !important;

  }

}




/* world search addon */

.wsg-box{

  position:fixed;

  z-index:10060;

  width:min(460px, calc(100vw - 24px));

  background:#fff;

  border:1px solid #dfe8f3;

  border-radius:16px;

  box-shadow:0 18px 44px rgba(21,37,63,.16);

  overflow:hidden;

}



.wsg-box[hidden]{

  display:none !important;

}



.wsg-head{

  padding:10px 14px 8px;

  font-size:12px;

  font-weight:800;

  letter-spacing:.04em;

  text-transform:uppercase;

  color:#5d7490;

  background:linear-gradient(180deg,#f8fbff 0%,#f2f7ff 100%);

  border-bottom:1px solid #e8f0fa;

}



.wsg-list{

  max-height:280px;

  overflow:auto;

}



.wsg-item{

  display:block;

  padding:12px 14px;

  text-decoration:none;

  color:#17304f;

  border-bottom:1px solid #eef3f8;

}



.wsg-item:last-child{

  border-bottom:0;

}



.wsg-item:hover,

.wsg-item:focus{

  background:#f7fbff;

}



.wsg-item__title{

  display:block;

  font-size:14px;

  font-weight:800;

  color:#17304f;

  line-height:1.25;

}



.wsg-item__sub{

  display:block;

  margin-top:3px;

  font-size:12px;

  color:#6e829b;

  line-height:1.35;

}



.wsg-empty{

  padding:12px 14px;

  font-size:13px;

  color:#6e829b;

}



@media (max-width: 768px){

  .wsg-box{

    width:min(520px, calc(100vw - 16px));

    border-radius:14px;

  }

}




/* tiny scales in weather facts */

.fact{

  position:relative;

}



.fact-scale{

  margin-top:8px;

  height:4px;

  border-radius:999px;

  background:rgba(31,74,125,.08);

  overflow:hidden;

}



.fact-scale > i{

  display:block;

  height:100%;

  width:0;

  border-radius:999px;

  background:linear-gradient(90deg,#7bb6ff 0%,#3d8cff 45%,#1f6fe5 100%);

  opacity:.9;

}



.fact-scale--humidity > i{

  background:linear-gradient(90deg,#9bd3ff 0%,#53a8ff 50%,#2a78ea 100%);

}



.fact-scale--wind > i{

  background:linear-gradient(90deg,#bde7ff 0%,#69c2ff 45%,#2f8ce9 100%);

}



.fact-scale--precip > i{

  background:linear-gradient(90deg,#c7d8ff 0%,#7ca9ff 55%,#496fe8 100%);

}



.fact-scale--feels > i{

  background:linear-gradient(90deg,#9fd0ff 0%,#76b8ff 40%,#4c89f0 100%);

}




/* precip map */

.precip-map-section{

  margin-top:18px;

}



.precip-map-card{

  background:#fff;

  border:1px solid #e5eef8;

  border-radius:20px;

  overflow:hidden;

  box-shadow:0 14px 34px rgba(18,41,71,.08);

}



.precip-map-head{

  padding:16px 18px 12px;

  border-bottom:1px solid #eef3f8;

  background:linear-gradient(180deg,#f9fbff 0%,#f4f8ff 100%);

}



.precip-map-head h3{

  margin:0;

  font-size:18px;

  line-height:1.2;

  color:#18314f;

}



.precip-map-head p{

  margin:6px 0 0;

  font-size:13px;

  color:#6d819a;

}



.precip-map-frame-wrap{

  position:relative;

  background:#eef5ff;

}



.precip-map-frame{

  display:block;

  width:100%;

  min-height:380px;

  border:0;

}



@media (max-width: 768px){

  .precip-map-frame{

    min-height:320px;

  }

}



/* responsive animated fact scales */

.facts .fact{

  position:relative;

}



.fact-scale{

  position:relative;

  display:block;

  width:100%;

  height:6px;

  border-radius:999px;

  background:rgba(27,63,104,.09);

  overflow:hidden;

  box-shadow:inset 0 1px 2px rgba(10,30,55,.05);

}



.fact-scale > i{

  display:block;

  height:100%;

  width:0;

  border-radius:999px;

  transition:width 1.15s cubic-bezier(.22,.61,.36,1), background .35s ease, opacity .25s ease;

  opacity:.96;

  box-shadow:0 0 0 1px rgba(255,255,255,.16) inset;

}



.fact-scale.is-armed > i{

  width:0 !important;

}



.fact-scale.is-live > i{

  width:var(--fact-target, 0%);

}



.fact-scale--feels > i{

  background:linear-gradient(90deg,#7fc9ff 0%,#ffa44b 58%,#ff6a3d 100%);

}



.fact-scale--humidity > i{

  background:linear-gradient(90deg,#a9ddff 0%,#59afff 54%,#2d7ced 100%);

}



.fact-scale--wind > i{

  background:linear-gradient(90deg,#bdefff 0%,#6ac7ff 50%,#3d8eff 100%);

}



.fact-scale--precip > i{

  background:linear-gradient(90deg,#d7e5ff 0%,#81b4ff 52%,#4179ef 100%);

}



/* mobile: scale on the right */

@media (max-width: 768px){

  .facts .fact{

    display:grid;

    grid-template-columns:minmax(0,1fr) auto minmax(92px, 34%);

    grid-template-areas:"label value scale";

    align-items:center;

    column-gap:10px;

    row-gap:0;

  }



  .facts .fact > span{

    grid-area:label;

    min-width:0;

  }



  .facts .fact > strong{

    grid-area:value;

    justify-self:end;

    white-space:nowrap;

  }



  .facts .fact > .fact-scale{

    grid-area:scale;

    margin-top:0;

    align-self:center;

    justify-self:stretch;

  }

}



/* desktop: scale below */

@media (min-width: 769px){

  .facts .fact{

    display:grid;

    grid-template-columns:minmax(0,1fr) auto;

    grid-template-areas:

      "label value"

      "scale scale";

    align-items:center;

    column-gap:12px;

    row-gap:8px;

  }



  .facts .fact > span{

    grid-area:label;

  }



  .facts .fact > strong{

    grid-area:value;

    justify-self:end;

    white-space:nowrap;

  }



  .facts .fact > .fact-scale{

    grid-area:scale;

    margin-top:0;

  }

}




.footer-world-link-wrap{

  margin-top:14px;

  text-align:center;

}



.footer-world-link{

  display:inline-block;

  font-weight:700;

  text-decoration:none;

  color:#2b6fdc;

}



.footer-world-link:hover{

  text-decoration:underline;

}




.footer-extra-links{

  margin-top:14px;

  text-align:center;

  font-size:14px;

  line-height:1.5;

}



.footer-extra-links a{

  color:#2f6fdb;

  text-decoration:none;

  font-weight:700;

}



.footer-extra-links a:hover{

  text-decoration:underline;

}



.footer-extra-links span{

  margin:0 8px;

  color:#8aa0b8;

}




.days10-graph-scroll{

  overflow-x:auto;

  -webkit-overflow-scrolling:touch;

  padding-bottom:8px;

  margin-bottom:14px;

}



.days10-graph-inner{

  min-width:760px;

}



.days10-graph-svg{

  display:block;

  width:100%;

  height:180px;

}



.days10-graph-axis{

  stroke:#dbe6f2;

  stroke-width:1;

}



.days10-graph-line-max{

  fill:none;

  stroke:#ff8b3d;

  stroke-width:3;

}



.days10-graph-line-min{

  fill:none;

  stroke:#68a9ff;

  stroke-width:3;

}



.days10-graph-dot-max{

  fill:#ff8b3d;

}



.days10-graph-dot-min{

  fill:#68a9ff;

}



.days10-graph-label{

  font-size:12px;

  fill:#5e7590;

}



.days10-graph-temp-max{

  font-size:11px;

  fill:#d96a1d;

  font-weight:700;

}



.days10-graph-temp-min{

  font-size:11px;

  fill:#3c83e6;

  font-weight:700;

}



.forecast-grid.days10-scroll{

  display:flex;

  gap:12px;

  overflow-x:auto;

  scroll-snap-type:x proximity;

  padding-bottom:4px;

}



.forecast-grid.days10-scroll .forecast-card{

  flex:0 0 120px;

  min-width:120px;

  scroll-snap-align:start;

}




/* share button near scroll-top */

.float-actions{

  display:flex;

  align-items:center;

  gap:10px;

}



.float-share-btn{

  display:inline-flex;

  align-items:center;

  justify-content:center;

  width:44px;

  height:44px;

  border:0;

  border-radius:999px;

  background:linear-gradient(180deg,#5fa8ff 0%,#2f7cf0 100%);

  color:#fff;

  box-shadow:0 10px 22px rgba(33,91,176,.22);

  cursor:pointer;

  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;

}



.float-share-btn:hover{

  transform:translateY(-1px);

  box-shadow:0 14px 28px rgba(33,91,176,.28);

}



.float-share-btn:active{

  transform:translateY(0);

}



.float-share-btn svg{

  width:20px;

  height:20px;

  fill:currentColor;

}



@media (max-width: 768px){

  .float-share-btn{

    width:42px;

    height:42px;

  }

}



/* lighter 10 days graph */

.days10-graph-scroll{

  background:linear-gradient(180deg,#fbfdff 0%,#f7fbff 100%);

  border:1px solid #edf4fb;

  border-radius:18px;

  padding:8px 10px 4px;

}



.days10-graph-axis{

  stroke:#e9f1f8;

}



.days10-graph-line-max{

  stroke:#ffb57a;

  stroke-width:3;

}



.days10-graph-line-min{

  stroke:#9fc8ff;

  stroke-width:3;

}



.days10-graph-dot-max{

  fill:#ffbf8f;

}



.days10-graph-dot-min{

  fill:#a9cfff;

}



.days10-graph-label{

  fill:#87a0ba;

}



.days10-graph-temp-max{

  fill:#e39a58;

}



.days10-graph-temp-min{

  fill:#6ca4eb;

}




/* fixed right-bottom actions: up + share */

.floating-side-actions{

  position:fixed;

  right:18px;

  bottom:18px;

  z-index:1200;

  display:flex;

  align-items:center;

  gap:10px;

}



.floating-side-actions > *{

  position:static !important;

  inset:auto !important;

  left:auto !important;

  right:auto !important;

  top:auto !important;

  bottom:auto !important;

  margin:0 !important;

  transform:none !important;

}



.floating-side-actions .float-share-btn{

  display:inline-flex !important;

  align-items:center;

  justify-content:center;

  width:44px;

  height:44px;

  border:0;

  border-radius:999px;

  background:linear-gradient(180deg,#5fa8ff 0%,#2f7cf0 100%);

  color:#fff;

  box-shadow:0 10px 22px rgba(33,91,176,.22);

  cursor:pointer;

}



.floating-side-actions .float-share-btn svg{

  width:20px;

  height:20px;

  fill:currentColor;

}



@media (max-width: 768px){

  .floating-side-actions{

    right:12px;

    bottom:12px;

    gap:8px;

  }



  .floating-side-actions .float-share-btn{

    width:42px;

    height:42px;

  }

}



/* 10 days graph lighter */

.days10-graph-scroll{

  background:linear-gradient(180deg,#fcfeff 0%,#f8fbff 100%) !important;

  border:1px solid #eef4fb !important;

  border-radius:18px;

  padding:8px 10px 4px;

}



.days10-graph-axis{

  stroke:#e8f0f8 !important;

}



.days10-graph-line-max{

  stroke:#ffc692 !important;

}



.days10-graph-line-min{

  stroke:#b5d6ff !important;

}



.days10-graph-dot-max{

  fill:#ffd0a7 !important;

}



.days10-graph-dot-min{

  fill:#bfdcff !important;

}



.days10-graph-label{

  fill:#8ea7c0 !important;

}



.days10-graph-temp-max{

  fill:#e5a66a !important;

}



.days10-graph-temp-min{

  fill:#79acec !important;

}




/* left-bottom fixed actions: up + share */

.floating-side-actions{

  position:fixed !important;

  left:18px !important;

  right:auto !important;

  bottom:18px !important;

  top:auto !important;

  z-index:1200 !important;

  display:flex !important;

  align-items:center !important;

  gap:10px !important;

}



.floating-side-actions > *{

  position:static !important;

  inset:auto !important;

  margin:0 !important;

  transform:none !important;

}



.floating-side-actions .float-share-btn{

  display:inline-flex !important;

  align-items:center !important;

  justify-content:center !important;

  width:44px !important;

  height:44px !important;

  min-width:44px !important;

  min-height:44px !important;

  padding:0 !important;

  border:0 !important;

  border-radius:999px !important;

  background:linear-gradient(180deg,#5fa8ff 0%,#2f7cf0 100%) !important;

  color:#fff !important;

  box-shadow:0 10px 22px rgba(33,91,176,.22) !important;

  cursor:pointer !important;

  font-size:0 !important;

  line-height:0 !important;

  text-indent:-9999px !important;

  overflow:hidden !important;

}



.floating-side-actions .float-share-btn svg{

  width:20px !important;

  height:20px !important;

  fill:currentColor !important;

  text-indent:0 !important;

}



@media (max-width: 768px){

  .floating-side-actions{

    left:12px !important;

    bottom:12px !important;

    gap:8px !important;

  }



  .floating-side-actions .float-share-btn{

    width:42px !important;

    height:42px !important;

    min-width:42px !important;

    min-height:42px !important;

  }

}



/* hide stray middle share buttons/links with text */

.share-btn,

.share-button,

.btn-share,

.article-share,

.page-share,

.social-share,

.share-inline{

  display:none !important;

}




.forecast-card.precip-0{

  background:#ffffff !important;

  color:#18314f;

}



.forecast-card.precip-1{

  background:#f4f9ff !important;

  color:#18314f;

}



.forecast-card.precip-2{

  background:#e9f4ff !important;

  color:#18314f;

}



.forecast-card.precip-3{

  background:#dcebff !important;

  color:#16304c;

}



.forecast-card.precip-4{

  background:#cde3ff !important;

  color:#132a44;

}



.forecast-card.precip-0 strong,

.forecast-card.precip-1 strong,

.forecast-card.precip-2 strong,

.forecast-card.precip-3 strong,

.forecast-card.precip-4 strong,

.forecast-card.precip-0 span,

.forecast-card.precip-1 span,

.forecast-card.precip-2 span,

.forecast-card.precip-3 span,

.forecast-card.precip-4 span{

  color:inherit !important;

}




/* reset broken 10-day extras: no white block, no card tint */

.days10-graph-scroll{

  background:transparent !important;

  border:0 !important;

  box-shadow:none !important;

  padding:0 !important;

  margin:0 0 14px 0 !important;

}



.forecast-card.precip-0,

.forecast-card.precip-1,

.forecast-card.precip-2,

.forecast-card.precip-3,

.forecast-card.precip-4{

  background:inherit !important;

  color:inherit !important;

}



/* precipitation tint INSIDE the graph only */

.days10-precip-band{

  shape-rendering:crispEdges;

}



.days10-precip-band.lvl-0{ fill: rgba(255,255,255,0.00); }

.days10-precip-band.lvl-1{ fill: rgba(137,187,255,0.08); }

.days10-precip-band.lvl-2{ fill: rgba(111,171,255,0.14); }

.days10-precip-band.lvl-3{ fill: rgba(87,155,248,0.22); }

.days10-precip-band.lvl-4{ fill: rgba(59,132,236,0.30); }





/* ===== HOME + 10 DAYS POLISH ===== */



/* --- home: button under search + seo text --- */

body.pg-home-polish #site-search{

  display:grid !important;

  grid-template-columns:1fr !important;

  max-width:760px !important;

  margin:18px auto 0 !important;

  gap:0 !important;

}



body.pg-home-polish #site-search input[type="text"],

body.pg-home-polish #site-search input[type="search"]{

  width:100% !important;

  min-width:0 !important;

}



body.pg-home-polish #site-search button,

body.pg-home-polish #site-search input[type="submit"]{

  justify-self:center !important;

  display:inline-flex !important;

  margin:14px auto 0 !important;

}



body.pg-home-polish .pg-home-seo-text{

  max-width:820px;

  margin:20px auto 0;

  text-align:center;

  font-size:17px;

  line-height:1.68;

  color:#49627d;

  font-weight:500;

}



body.pg-home-polish .pg-home-seo-text strong{

  color:#1f466f;

  font-weight:800;

}



@media (max-width:768px){

  body.pg-home-polish .pg-home-seo-text{

    font-size:15px;

    line-height:1.62;

    padding:0 10px;

  }

}



/* --- 10 days graph --- */

body.page-10days .days10-graph-scroll{

  position:relative;

  overflow-x:auto;

  -webkit-overflow-scrolling:touch;

  background:linear-gradient(180deg,#fcfeff 0%,#f4f9ff 100%) !important;

  border:1px solid #e6eff8 !important;

  border-radius:20px !important;

  padding:12px 12px 8px !important;

  box-shadow:none !important;

}



body.page-10days .days10-graph-inner{

  min-width:1120px !important;

}



body.page-10days .days10-graph-scroll svg,

body.page-10days .days10-graph-svg{

  display:block;

  min-width:1120px !important;

  height:272px !important;

}



@media (max-width:768px){

  body.page-10days .days10-graph-inner{

    min-width:980px !important;

  }



  body.page-10days .days10-graph-scroll svg,

  body.page-10days .days10-graph-svg{

    min-width:980px !important;

    height:248px !important;

  }

}



body.page-10days .days10-graph-axis{

  stroke:#e3edf7 !important;

  stroke-width:1 !important;

}



body.page-10days .days10-graph-line-max{

  stroke:#f4b277 !important;

  stroke-width:3 !important;

  fill:none !important;

  animation:none !important;

}



body.page-10days .days10-graph-line-min{

  stroke:#9dc8f7 !important;

  stroke-width:3 !important;

  fill:none !important;

  animation:none !important;

}



body.page-10days .days10-graph-dot-max{

  fill:#f7bb88 !important;

}



body.page-10days .days10-graph-dot-min{

  fill:#abd1fb !important;

}



body.page-10days .days10-graph-temp-max,

body.page-10days .days10-graph-temp-min,

body.page-10days .days10-graph-precip-text{

  font-weight:700 !important;

  paint-order:stroke;

  stroke:rgba(255,255,255,.84);

  stroke-width:2px;

  stroke-linejoin:round;

}



body.page-10days .days10-graph-temp-max{ fill:#d88d49 !important; }

body.page-10days .days10-graph-temp-min{ fill:#67a0e7 !important; }

body.page-10days .days10-graph-precip-text{ fill:#7087a4 !important; }



/* hide original bottom labels */

body.page-10days .days10-graph-label{

  fill:transparent !important;

  stroke:transparent !important;

}



/* top overlay */

body.page-10days .pg-day-grid{

  stroke:rgba(191,208,227,.78);

  stroke-width:1;

  stroke-dasharray:4 5;

}



body.page-10days .pg-top-separator{

  stroke:#dbe8f4;

  stroke-width:1;

}



body.page-10days .pg-top-chip{

  fill:rgba(255,255,255,.88);

  stroke:rgba(205,220,236,.96);

  stroke-width:1;

}



body.page-10days .pg-top-dow{

  font-size:11px;

  font-weight:800;

  letter-spacing:.02em;

  fill:#4a6b91;

  paint-order:stroke;

  stroke:rgba(255,255,255,.95);

  stroke-width:2.4px;

  stroke-linejoin:round;

}



body.page-10days .pg-top-date{

  font-size:10px;

  font-weight:700;

  fill:#7189a6;

  paint-order:stroke;

  stroke:rgba(255,255,255,.95);

  stroke-width:2.4px;

  stroke-linejoin:round;

}



@media (max-width:768px){

  body.page-10days .pg-top-dow{ font-size:10px; }

  body.page-10days .pg-top-date{ font-size:9px; }

}



/* cards short weekdays */

body.page-10days .forecast-grid .forecast-card .forecast-day{

  white-space:nowrap !important;

  text-align:center !important;

  font-size:12px !important;

  line-height:1.1 !important;

  font-weight:800 !important;

}



@media (max-width:768px){

  body.page-10days .forecast-grid .forecast-card .forecast-day{

    font-size:11px !important;

  }

}




/* ===== TOMORROW COMFORT MOBILE FIX ===== */



body.page-tomorrow .weather-box .facts{

  display:grid !important;

  grid-template-columns:repeat(2,minmax(0,1fr));

  gap:12px !important;

  align-items:stretch !important;

}



body.page-tomorrow .weather-box .facts .fact{

  min-width:0;

}



body.page-tomorrow .weather-box .facts .fact--comfort{

  grid-column:1 / -1;

  display:block !important;

  padding:14px 16px !important;

  border-radius:16px;

  background:linear-gradient(180deg,#f8fbff 0%,#f2f7ff 100%);

  border:1px solid rgba(36,92,255,.08);

  box-shadow:none;

}



body.page-tomorrow .weather-box .facts .fact--comfort > span{

  display:block !important;

  margin:0 0 6px 0 !important;

  font-size:13px;

  line-height:1.2;

  color:#68809d !important;

}



body.page-tomorrow .weather-box .facts .fact--comfort > strong{

  display:block !important;

  margin:0 !important;

  white-space:normal !important;

  word-break:break-word;

  line-height:1.28 !important;

  font-size:18px;

  color:#17304f !important;

}



body.page-tomorrow .weather-box .facts .fact--comfort .fact-hint{

  display:block !important;

  margin-top:7px !important;

  font-size:13px !important;

  line-height:1.5 !important;

  color:#7a8fa8 !important;

  font-weight:500;

  white-space:normal !important;

}



@media (max-width:768px){

  body.page-tomorrow .weather-box .facts{

    grid-template-columns:1fr 1fr !important;

    gap:10px !important;

  }



  body.page-tomorrow .weather-box .facts .fact--comfort{

    grid-column:1 / -1;

    padding:12px 14px !important;

    border-radius:14px;

  }



  body.page-tomorrow .weather-box .facts .fact--comfort > strong{

    font-size:16px;

    line-height:1.3 !important;

  }



  body.page-tomorrow .weather-box .facts .fact--comfort .fact-hint{

    font-size:12px !important;

    line-height:1.45 !important;

  }

}



@media (max-width:480px){

  body.page-tomorrow .weather-box .facts{

    grid-template-columns:1fr !important;

  }



  body.page-tomorrow .weather-box .facts .fact--comfort{

    margin-top:2px;

  }

}



/* ===== END TOMORROW COMFORT MOBILE FIX ===== */




/* ===== COMPACT SHARE FAB ===== */



/* скрыть старую левую плавающую share-кнопку, если она осталась */

.floating-side-actions .float-share-btn{

  display:none !important;

}



.compact-share-fab{

  position:fixed;

  right:16px;

  bottom:calc(16px + env(safe-area-inset-bottom, 0px));

  width:48px;

  height:48px;

  border:0;

  border-radius:999px;

  display:inline-flex;

  align-items:center;

  justify-content:center;

  background:linear-gradient(180deg,#5ea8ff 0%,#3f8fff 100%);

  color:#fff;

  box-shadow:0 10px 28px rgba(41,105,191,.28);

  cursor:pointer;

  z-index:9999;

  opacity:0;

  visibility:hidden;

  transform:translateX(22px) translateY(10px);

  transition:

    opacity .26s ease,

    transform .32s cubic-bezier(.22,.61,.36,1),

    visibility .26s ease,

    box-shadow .2s ease,

    background .2s ease;

  -webkit-tap-highlight-color:transparent;

}



.compact-share-fab.is-visible{

  opacity:1;

  visibility:visible;

  transform:translateX(0) translateY(0);

}



.compact-share-fab:hover{

  box-shadow:0 12px 30px rgba(41,105,191,.34);

  background:linear-gradient(180deg,#69b0ff 0%,#4797ff 100%);

}



.compact-share-fab:active{

  transform:translateX(0) translateY(1px) scale(.98);

}



.compact-share-fab:focus-visible{

  outline:none;

  box-shadow:

    0 0 0 4px rgba(92,161,255,.20),

    0 10px 28px rgba(41,105,191,.28);

}



.compact-share-fab svg{

  width:21px;

  height:21px;

  fill:currentColor;

  display:block;

}



.compact-share-fab--raised{

  bottom:calc(76px + env(safe-area-inset-bottom, 0px));

}



.compact-share-toast{

  position:fixed;

  right:16px;

  bottom:calc(74px + env(safe-area-inset-bottom, 0px));

  max-width:220px;

  padding:9px 12px;

  border-radius:12px;

  background:rgba(24,36,54,.92);

  color:#fff;

  font-size:13px;

  line-height:1.3;

  box-shadow:0 10px 28px rgba(13,25,45,.25);

  z-index:10000;

  opacity:0;

  visibility:hidden;

  transform:translateY(8px);

  transition:opacity .22s ease, transform .22s ease, visibility .22s ease;

}



.compact-share-toast.is-visible{

  opacity:1;

  visibility:visible;

  transform:translateY(0);

}



@media (max-width:768px){

  .compact-share-fab{

    right:12px;

    bottom:calc(12px + env(safe-area-inset-bottom, 0px));

    width:44px;

    height:44px;

  }



  .compact-share-fab--raised{

    bottom:calc(66px + env(safe-area-inset-bottom, 0px));

  }



  .compact-share-toast{

    right:12px;

    bottom:calc(62px + env(safe-area-inset-bottom, 0px));

    max-width:180px;

    font-size:12px;

    padding:8px 10px;

  }

}



/* ===== END COMPACT SHARE FAB ===== */




/* ===== LEFT SHARE + LIGHTER HOME TEXT ===== */



/* share button: move to left bottom */

.compact-share-fab{

  left:16px !important;

  right:auto !important;

}



.compact-share-fab--raised{

  left:16px !important;

  right:auto !important;

}



.compact-share-toast{

  left:16px !important;

  right:auto !important;

}



@media (max-width:768px){

  .compact-share-fab{

    left:12px !important;

    right:auto !important;

  }



  .compact-share-fab--raised{

    left:12px !important;

    right:auto !important;

  }



  .compact-share-toast{

    left:12px !important;

    right:auto !important;

  }

}



/* home text: lighter and softer */

body.pg-home-polish .pg-home-seo-text{

  color:#7d93ab !important;

}



body.pg-home-polish .pg-home-seo-text strong{

  color:#6884a3 !important;

}



@media (max-width:768px){

  body.pg-home-polish .pg-home-seo-text{

    color:#8098b2 !important;

  }



  body.pg-home-polish .pg-home-seo-text strong{

    color:#6d89a8 !important;

  }

}



/* ===== END LEFT SHARE + LIGHTER HOME TEXT ===== */




/* ===== WORLD INDEX LIVE WEATHER ===== */



body.page-world-index .world-city-card{

  position:relative;

  overflow:hidden;

}



body.page-world-index .world-city-weather{

  margin-top:10px;

  padding:10px 12px;

  border-radius:14px;

  background:linear-gradient(180deg,#f8fbff 0%,#f2f7ff 100%);

  border:1px solid rgba(36,92,255,.08);

}



body.page-world-index .world-city-weather-main{

  display:flex;

  align-items:baseline;

  gap:10px;

  flex-wrap:wrap;

}



body.page-world-index .world-city-temp{

  font-size:24px;

  line-height:1;

  font-weight:800;

  color:#1b4773;

}



body.page-world-index .world-city-state{

  font-size:13px;

  line-height:1.25;

  font-weight:700;

  color:#6483a6;

}



body.page-world-index .world-city-meta{

  margin-top:6px;

  display:flex;

  flex-wrap:wrap;

  gap:8px 12px;

  font-size:12px;

  line-height:1.35;

  color:#7b91aa;

}



body.page-world-index .world-city-weather--empty{

  font-size:13px;

  line-height:1.35;

  color:#7b91aa;

}



@media (max-width:768px){

  body.page-world-index .world-city-weather{

    padding:9px 10px;

    border-radius:12px;

  }



  body.page-world-index .world-city-temp{

    font-size:21px;

  }



  body.page-world-index .world-city-state{

    font-size:12px;

  }



  body.page-world-index .world-city-meta{

    font-size:11px;

    gap:6px 10px;

  }

}



/* ===== END WORLD INDEX LIVE WEATHER ===== */

/* ===== WORLD CITY PREMIUM DESIGN ===== */



body.page-world-city{

  background:

    radial-gradient(1200px 600px at 0% 0%, rgba(103,160,255,.18) 0%, rgba(103,160,255,0) 55%),

    radial-gradient(900px 500px at 100% 0%, rgba(72,214,201,.14) 0%, rgba(72,214,201,0) 52%),

    linear-gradient(180deg, #f6f9ff 0%, #eef4ff 40%, #f8fbff 100%);

  color:#18324b;

}



body.page-world-city .container{

  max-width:1180px;

}



body.page-world-city .breadcrumbs{

  margin:18px 0 20px;

  padding:10px 14px;

  border:1px solid rgba(50,90,160,.10);

  border-radius:14px;

  background:rgba(255,255,255,.72);

  backdrop-filter:blur(10px);

  box-shadow:0 8px 30px rgba(44,88,160,.06);

  color:#6280a0;

  font-size:14px;

}



body.page-world-city .breadcrumbs a{

  color:#356dcb;

  text-decoration:none;

}



body.page-world-city .breadcrumbs a:hover{

  color:#174ea6;

  text-decoration:underline;

}



body.page-world-city .hero.hero-small{

  position:relative;

  overflow:hidden;

  margin:0 0 28px;

  padding:34px 34px 30px;

  border-radius:28px;

  background:

    linear-gradient(135deg, rgba(255,255,255,.92) 0%, rgba(245,249,255,.96) 55%, rgba(237,247,255,.98) 100%);

  border:1px solid rgba(96,136,214,.12);

  box-shadow:

    0 20px 60px rgba(41,88,165,.12),

    inset 0 1px 0 rgba(255,255,255,.85);

}



body.page-world-city .hero.hero-small::before{

  content:"";

  position:absolute;

  inset:auto -80px -90px auto;

  width:280px;

  height:280px;

  border-radius:50%;

  background:radial-gradient(circle, rgba(83,154,255,.22) 0%, rgba(83,154,255,0) 68%);

  pointer-events:none;

}



body.page-world-city .hero.hero-small::after{

  content:"";

  position:absolute;

  inset:-60px auto auto -60px;

  width:220px;

  height:220px;

  border-radius:50%;

  background:radial-gradient(circle, rgba(76,221,190,.17) 0%, rgba(76,221,190,0) 70%);

  pointer-events:none;

}



body.page-world-city .badge{

  display:inline-flex;

  align-items:center;

  gap:8px;

  padding:9px 14px;

  border-radius:999px;

  background:linear-gradient(135deg, #2d74ff 0%, #55a5ff 100%);

  color:#fff;

  box-shadow:0 10px 25px rgba(45,116,255,.22);

  letter-spacing:.02em;

  font-size:12px;

  font-weight:800;

  text-transform:uppercase;

}



body.page-world-city h1{

  margin:16px 0 10px;

  font-size:clamp(30px, 4vw, 48px);

  line-height:1.05;

  letter-spacing:-.03em;

  font-weight:900;

  color:#143250;

}



body.page-world-city .lead{

  margin:0 0 12px;

  font-size:18px;

  line-height:1.45;

  color:#5f7b98;

  font-weight:700;

}



body.page-world-city .hero-copy{

  max-width:860px;

  margin:0;

  font-size:17px;

  line-height:1.7;

  color:#3f5f7f;

}



body.page-world-city .section{

  margin:0 0 28px;

}



body.page-world-city .section-head{

  display:flex;

  align-items:center;

  justify-content:space-between;

  gap:16px;

  margin-bottom:16px;

}



body.page-world-city .section-head h2{

  margin:0;

  font-size:24px;

  line-height:1.2;

  letter-spacing:-.02em;

  color:#173656;

}



body.page-world-city .chips{

  display:flex;

  flex-wrap:wrap;

  gap:12px;

  padding:18px;

  border-radius:22px;

  background:rgba(255,255,255,.72);

  border:1px solid rgba(90,130,205,.12);

  box-shadow:0 15px 40px rgba(44,88,160,.08);

  backdrop-filter:blur(10px);

}



body.page-world-city .chip{

  display:inline-flex;

  align-items:center;

  justify-content:center;

  min-height:44px;

  padding:0 18px;

  border-radius:999px;

  background:linear-gradient(180deg, #ffffff 0%, #f2f7ff 100%);

  border:1px solid rgba(63,108,194,.12);

  color:#295dba;

  font-weight:800;

  font-size:14px;

  text-decoration:none;

  box-shadow:0 8px 20px rgba(39,88,170,.08);

  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, color .18s ease;

}



body.page-world-city .chip:hover{

  transform:translateY(-2px);

  color:#184a9f;

  border-color:rgba(45,116,255,.24);

  box-shadow:0 14px 26px rgba(39,88,170,.14);

}
body.page-world-city .facts-grid{

  display:grid;

  grid-template-columns:repeat(3, minmax(0, 1fr));

  gap:16px;

}



body.page-world-city .fact{

  position:relative;

  overflow:hidden;

  padding:20px 20px 18px;

  border-radius:22px;

  background:

    linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(244,248,255,.96) 100%);

  border:1px solid rgba(84,127,209,.12);

  box-shadow:

    0 16px 36px rgba(43,86,155,.08),

    inset 0 1px 0 rgba(255,255,255,.88);

}



body.page-world-city .fact::before{

  content:"";

  position:absolute;

  inset:0 0 auto 0;

  height:4px;

  background:linear-gradient(90deg, #4285ff 0%, #4ad6c8 100%);

  opacity:.9;

}



body.page-world-city .fact span{

  display:block;

  margin-bottom:10px;

  font-size:13px;

  line-height:1.3;

  color:#6f89a5;

  font-weight:700;

  text-transform:uppercase;

  letter-spacing:.04em;

}



body.page-world-city .fact strong{

  display:block;

  font-size:32px;

  line-height:1.05;

  font-weight:900;

  color:#143250;

  letter-spacing:-.03em;

}



body.page-world-city .forecast-grid{

  display:grid;

  grid-template-columns:repeat(5, minmax(0, 1fr));

  gap:16px;

}



body.page-world-city .forecast-card{

  position:relative;

  overflow:hidden;

  min-height:190px;

  padding:18px 18px 16px;

  border-radius:24px;

  background:

    linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(243,248,255,.96) 100%);

  border:1px solid rgba(85,125,199,.12);

  box-shadow:

    0 18px 36px rgba(43,86,155,.08),

    inset 0 1px 0 rgba(255,255,255,.88);

  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;

}



body.page-world-city .forecast-card:hover{

  transform:translateY(-4px);

  border-color:rgba(58,110,211,.2);

  box-shadow:

    0 22px 40px rgba(43,86,155,.12),

    inset 0 1px 0 rgba(255,255,255,.9);

}



body.page-world-city .forecast-card::after{

  content:"";

  position:absolute;

  inset:auto -24px -24px auto;

  width:92px;

  height:92px;

  border-radius:50%;

  background:radial-gradient(circle, rgba(70,139,255,.14) 0%, rgba(70,139,255,0) 70%);

  pointer-events:none;

}



body.page-world-city .forecast-day{

  margin-bottom:12px;

  font-size:14px;

  line-height:1.3;

  font-weight:800;

  color:#57779b;

  text-transform:uppercase;

  letter-spacing:.04em;

}



body.page-world-city .forecast-icon{

  margin-bottom:14px;

  font-size:17px;

  line-height:1.35;

  font-weight:800;

  color:#1e4f91;

}



body.page-world-city .forecast-temps{

  display:flex;

  align-items:flex-end;

  gap:10px;

  margin-bottom:14px;

}



body.page-world-city .forecast-temps strong{

  font-size:30px;

  line-height:1;

  color:#143250;

  font-weight:900;

  letter-spacing:-.03em;

}



body.page-world-city .forecast-temps span{

  font-size:18px;

  line-height:1;

  color:#6a86a4;

  font-weight:800;

}



body.page-world-city .forecast-meta{

  font-size:13px;

  line-height:1.45;

  color:#6b85a2;

  font-weight:700;

}



body.page-world-city .days10-scroll{

  overflow:visible;

}



body.page-world-city .site-footer,

body.page-world-city footer{

  margin-top:36px;

}



@media (max-width:1100px){

  body.page-world-city .forecast-grid{

    grid-template-columns:repeat(3, minmax(0, 1fr));

  }



  body.page-world-city .facts-grid{

    grid-template-columns:repeat(2, minmax(0, 1fr));

  }

}



@media (max-width:760px){

  body.page-world-city .breadcrumbs{

    margin:14px 0 16px;

    padding:10px 12px;

    font-size:13px;

  }



  body.page-world-city .hero.hero-small{

    padding:24px 18px 22px;

    border-radius:22px;

  }



  body.page-world-city h1{

    font-size:32px;

  }
body.page-world-city .lead{

    font-size:16px;

  }



  body.page-world-city .hero-copy{

    font-size:15px;

    line-height:1.6;

  }



  body.page-world-city .chips{

    padding:14px;

    border-radius:18px;

    gap:10px;

  }



  body.page-world-city .chip{

    min-height:40px;

    padding:0 14px;

    font-size:13px;

  }



  body.page-world-city .facts-grid,

  body.page-world-city .forecast-grid{

    grid-template-columns:1fr;

  }



  body.page-world-city .fact{

    padding:18px 16px 16px;

    border-radius:18px;

  }



  body.page-world-city .fact strong{

    font-size:28px;

  }



  body.page-world-city .forecast-card{

    min-height:auto;

    padding:16px 15px 14px;

    border-radius:18px;

  }



  body.page-world-city .forecast-temps strong{

    font-size:28px;

  }



  body.page-world-city .forecast-temps span{

    font-size:17px;

  }



  body.page-world-city .section-head h2{

    font-size:21px;

  }

}



/* ===== END WORLD CITY PREMIUM DESIGN ===== */

/* ===== HEADER CENTER CTA ONLY PATCH ===== */



header.pg-header-center-only-host,

.site-header.pg-header-center-only-host{

  position:relative;

}



.pg-header-center-only-wrap{

  z-index:40;

}



.pg-header-center-only-actions{

  display:flex;

  align-items:center;

  justify-content:center;

  gap:10px;

  flex-wrap:wrap;

}



.pg-header-center-only-primary,

.pg-header-center-only-secondary,

.pg-header-center-only-geo{

  display:inline-flex !important;

  align-items:center;

  justify-content:center;

  text-decoration:none !important;

  border-radius:999px;

  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, filter .18s ease;

}



.pg-header-center-only-primary{

  min-height:48px;

  padding:0 20px;

  background:linear-gradient(135deg,#2d74ff 0%,#4fa8ff 100%);

  color:#fff !important;

  font-size:14px;

  font-weight:800;

  line-height:1;

  border:1px solid rgba(255,255,255,.18);

  box-shadow:0 12px 30px rgba(45,116,255,.28);

}



.pg-header-center-only-primary:hover{

  transform:translateY(-1px);

  box-shadow:0 16px 36px rgba(45,116,255,.34);

}



.pg-header-center-only-secondary{

  min-height:42px;

  padding:0 16px;

  background:#fff;

  color:#2a5db3 !important;

  font-size:13px;

  font-weight:700;

  border:1px solid rgba(60,108,196,.14);

  box-shadow:0 8px 20px rgba(40,84,160,.10);

}



.pg-header-center-only-secondary:hover{

  transform:translateY(-1px);

  border-color:rgba(45,116,255,.24);

  box-shadow:0 12px 24px rgba(40,84,160,.14);

}



.pg-header-center-only-geo{

  min-width:42px;

  min-height:42px;

  padding:0 12px;

  background:#fff;

  color:#2a5db3 !important;

  border:1px solid rgba(60,108,196,.14);

  box-shadow:0 8px 20px rgba(40,84,160,.10);

}



.pg-header-center-only-geo:hover{

  transform:translateY(-1px);

  border-color:rgba(45,116,255,.24);

  box-shadow:0 12px 24px rgba(40,84,160,.14);

}



.pg-header-center-only-hidden{

  visibility:hidden !important;

  opacity:0 !important;

  pointer-events:none !important;

}



@media (min-width: 992px){

  .pg-header-center-only-wrap{

    position:absolute;

    left:50%;

    top:50%;

    transform:translate(-50%,-50%);

  }

}



@media (max-width: 991px){

  .pg-header-center-only-wrap{

    position:relative;

    display:flex;

    justify-content:center;

    width:100%;

    margin-top:10px;

    margin-bottom:2px;

  }



  .pg-header-center-only-actions{

    gap:8px;

  }



  .pg-header-center-only-primary{

    min-height:44px;

    padding:0 16px;

    font-size:13px;

  }



  .pg-header-center-only-secondary{

    min-height:38px;

    padding:0 12px;

    font-size:12px;

  }



  .pg-header-center-only-geo{

    min-width:38px;

    min-height:38px;

    padding:0 10px;

  }

}



/* ===== END HEADER CENTER CTA ONLY PATCH ===== */



/* ===== HIDE HEADER WORLD BUTTON ONLY ===== */

.pg-header-center-minimal-world,

.pg-header-center-only-secondary,

.pg-header-premium-secondary{

  display:none !important;

}

/* ===== END HIDE HEADER WORLD BUTTON ONLY ===== */




/* ===== HIDE HEADER WORLD BUTTON ONLY ===== */
.pg-header-center-minimal-world,
.pg-header-center-only-secondary,
.pg-header-premium-secondary{
  display:none !important;
}
/* ===== END HIDE HEADER WORLD BUTTON ONLY ===== */

/* ===== WEATHER PUSH FAB ===== */

.pg-push-fab{

  position:fixed;

  right:14px;

  bottom:18px;

  z-index:9999;

  display:inline-flex;

  align-items:center;

  justify-content:center;

  min-height:48px;

  padding:12px 16px;

  border-radius:999px;

  background:linear-gradient(180deg,#2563eb,#1d4ed8);

  color:#fff;

  text-decoration:none;

  font:700 14px/1 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;

  box-shadow:0 12px 28px rgba(37,99,235,.32);

  border:1px solid rgba(255,255,255,.22);

}

.pg-push-fab:hover{

  color:#fff;

  text-decoration:none;

  transform:translateY(-1px);

  box-shadow:0 16px 34px rgba(37,99,235,.38);

}

@media (min-width: 992px){

  .pg-push-fab{

    right:24px;

    bottom:24px;

  }

}

/* ===== END WEATHER PUSH FAB ===== */




/* WEATHER_SHARE_INLINE_V1 */

.weather-share-inline-wrap{

  display:flex;

  flex-wrap:wrap;

  gap:12px;

  margin-top:14px;

}

.weather-share-inline{

  appearance:none;

  border:0;

  display:inline-flex;

  align-items:center;

  justify-content:center;

  gap:8px;

  min-height:46px;

  padding:12px 18px;

  border-radius:999px;

  background:linear-gradient(180deg,#2563eb,#1d4ed8);

  color:#fff;

  font-weight:800;

  font-size:14px;

  letter-spacing:.01em;

  cursor:pointer;

  text-decoration:none;

  box-shadow:0 12px 28px rgba(37,99,235,.20);

  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;

}

.weather-share-inline:hover{

  transform:translateY(-1px);

  filter:brightness(1.03);

  box-shadow:0 16px 34px rgba(37,99,235,.26);

}

.weather-share-inline::before{

  content:"✈";

  font-size:14px;

  line-height:1;

  opacity:.95;

}

.weather-share-inline.pulse{

  animation:weatherSharePulse 2.7s ease-in-out 1;

}

@keyframes weatherSharePulse{

  0%{transform:scale(1);box-shadow:0 12px 28px rgba(37,99,235,.20)}

  22%{transform:scale(1.03);box-shadow:0 16px 34px rgba(37,99,235,.28),0 0 0 10px rgba(96,165,250,.12)}

  46%{transform:scale(1);box-shadow:0 12px 28px rgba(37,99,235,.20)}

  100%{transform:scale(1);box-shadow:0 12px 28px rgba(37,99,235,.20)}

}

@media (prefers-reduced-motion: reduce){

  .weather-share-inline,

  .weather-share-inline.pulse{

    animation:none !important;

    transition:none !important;

  }

}





/* HEADER_RIGHT_ALIGN_SAFE_V1 */

.site-header--premium{

  position:relative;

}



.site-header--premium .header-inner--premium{

  position:relative;

  display:flex;

  align-items:center;

  min-height:72px;

  padding-right:240px;

}



.site-header--premium .brand--premium{

  position:relative;

  z-index:2;

}



.site-header--premium .pg-header-center-only-wrap{

  position:absolute;

  right:16px;

  top:50%;

  transform:translateY(-50%);

  margin:0;

  width:auto;

  z-index:3;

}



.site-header--premium .pg-header-center-only-actions{

  display:flex;

  align-items:center;

  gap:10px;

  margin:0;

}



.site-header--premium .pg-header-center-only-primary,

.site-header--premium .pg-header-center-only-geo{

  display:inline-flex !important;

  align-items:center;

  justify-content:center;

}



@media (max-width: 900px){

  .site-header--premium .header-inner--premium{

    padding-right:210px;

    min-height:68px;

  }



  .site-header--premium .pg-header-center-only-wrap{

    right:12px;

  }



  .site-header--premium .pg-header-center-only-actions{

    gap:8px;

  }

}



@media (max-width: 640px){

  .site-header--premium .header-inner--premium{

    padding-right:170px;

    min-height:64px;

  }



  .site-header--premium .brand-text small{

    display:none;

  }



  .site-header--premium .pg-header-center-only-wrap{

    right:10px;

  }



  .site-header--premium .pg-header-center-only-actions{

    gap:6px;

  }



  .site-header--premium .pg-header-center-only-primary{

    padding:10px 12px;

    min-height:40px;

    font-size:14px;

  }



  .site-header--premium .pg-header-center-only-geo{

    min-width:40px;

    min-height:40px;

  }

}





/* GEO_HINT_TOOLTIP_V1 */

.geo-hint-anchor{

  position:relative;

}



.geo-hint-tooltip{

  position:absolute;

  top:calc(100% + 10px);

  right:0;

  width:min(320px, calc(100vw - 24px));

  padding:12px 14px;

  border-radius:14px;

  background:rgba(15,23,42,.96);

  color:#fff;

  font-size:13px;

  line-height:1.45;

  box-shadow:0 16px 36px rgba(15,23,42,.24);

  z-index:60;

  opacity:0;

  visibility:hidden;

  transform:translateY(-4px);

  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;

  pointer-events:none;

}



.geo-hint-tooltip::before{

  content:"";

  position:absolute;

  top:-6px;

  right:18px;

  width:12px;

  height:12px;

  background:rgba(15,23,42,.96);

  transform:rotate(45deg);

  border-radius:2px;

}



.geo-hint-anchor.is-visible .geo-hint-tooltip{

  opacity:1;

  visibility:visible;

  transform:translateY(0);

}



@media (max-width: 640px){

  .geo-hint-tooltip{

    right:-6px;

    width:min(300px, calc(100vw - 18px));

    font-size:12px;

    padding:11px 12px;

  }

}





/* GEO_HINT_TOOLTIP_MOBILE_SAFE_V1 */

@media (max-width: 640px){

  .geo-hint-anchor{

    position:static;

  }



  .geo-hint-tooltip{

    position:fixed !important;

    left:12px !important;

    right:12px !important;

    top:auto !important;

    bottom:calc(14px + env(safe-area-inset-bottom, 0px)) !important;

    width:auto !important;

    max-width:none !important;

    transform:translateY(10px);

    border-radius:16px;

    padding:13px 14px;

    font-size:13px;

    line-height:1.45;

    z-index:9999;

    box-shadow:0 18px 40px rgba(15,23,42,.28);

  }



  .geo-hint-tooltip::before{

    display:none !important;

  }



  .geo-hint-anchor.is-visible .geo-hint-tooltip{

    transform:translateY(0);

  }

}





/* GEO_HINT_MOBILE_POPUP_V2 */

@media (max-width: 640px){

  .geo-hint-tooltip{

    display:none !important;

    opacity:0 !important;

    visibility:hidden !important;

    pointer-events:none !important;

  }



  .geo-mobile-popup{

    position:fixed;

    left:12px;

    right:12px;

    bottom:calc(14px + env(safe-area-inset-bottom, 0px));

    z-index:99999;

    padding:14px 16px;

    border-radius:16px;

    background:rgba(15,23,42,.97);

    color:#fff;

    font-size:13px;

    line-height:1.5;

    box-shadow:0 18px 40px rgba(15,23,42,.28);

    opacity:0;

    visibility:hidden;

    transform:translateY(16px);

    transition:opacity .18s ease, transform .18s ease, visibility .18s ease;

    pointer-events:none;

  }



  .geo-mobile-popup.is-visible{

    opacity:1;

    visibility:visible;

    transform:translateY(0);

  }



  .geo-mobile-popup strong{

    display:block;

    margin-bottom:4px;

    font-size:13px;

    color:#93c5fd;

  }

}





/* WEATHER_TTS_BUTTON_V1 */

.weather-share-inline-wrap{

  display:flex;

  flex-wrap:wrap;

  align-items:center;

  gap:12px;

}



.weather-tts-btn{

  appearance:none;

  border:1px solid #c7d7f5;

  display:inline-flex;

  align-items:center;

  justify-content:center;

  gap:8px;

  min-height:46px;

  padding:12px 18px;

  border-radius:999px;

  background:linear-gradient(180deg,#ffffff,#f6f9ff);

  color:#173054;

  font-weight:800;

  font-size:14px;

  letter-spacing:.01em;

  cursor:pointer;

  text-decoration:none;

  box-shadow:0 10px 24px rgba(37,99,235,.08);

  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;

}



.weather-tts-btn:hover{

  transform:translateY(-1px);

  border-color:#93c5fd;

  box-shadow:0 14px 28px rgba(37,99,235,.14);

}



.weather-tts-btn.is-playing{

  color:#0f3d2e;

  border-color:#86efac;

  background:linear-gradient(180deg,#f0fdf4,#dcfce7);

  box-shadow:0 14px 28px rgba(22,163,74,.12);

}



.weather-tts-btn__icon{

  display:inline-flex;

  align-items:center;

  justify-content:center;

  width:20px;

  min-width:20px;

  font-size:13px;

  line-height:1;

}



.weather-tts-btn__text{

  display:inline-block;

}



@media (max-width: 640px){

  .weather-share-inline-wrap{

    gap:10px;

  }



  .weather-share-inline,

  .weather-tts-btn{

    min-height:44px;

    padding:11px 15px;

    font-size:13px;

  }

}





/* FOOTER_TELEGRAM_LINK_V1 */

.footer-extra-links{

  display:flex;

  flex-wrap:wrap;

  align-items:center;

  justify-content:center;

  gap:10px;

}



.footer-telegram-link{

  display:inline-flex;

  align-items:center;

  gap:8px;

  padding:8px 12px;

  border-radius:999px;

  text-decoration:none;

  color:#0f3d8f;

  background:linear-gradient(180deg,#eef6ff,#e0f2fe);

  border:1px solid #bfdbfe;

  box-shadow:0 8px 20px rgba(37,99,235,.08);

  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;

  font-weight:700;

}



.footer-telegram-link:hover{

  transform:translateY(-1px);

  filter:brightness(1.02);

  box-shadow:0 12px 28px rgba(37,99,235,.14);

}



.footer-telegram-link__icon{

  display:inline-flex;

  align-items:center;

  justify-content:center;

  width:22px;

  height:22px;

  min-width:22px;

  border-radius:50%;

  background:#229ED9;

  color:#fff;

  box-shadow:0 6px 14px rgba(34,158,217,.28);

}



.footer-telegram-link__icon svg{

  width:12px;

  height:12px;

  display:block;

  fill:currentColor;

}



@media (max-width: 640px){

  .footer-extra-links{

    gap:8px;

  }



  .footer-telegram-link{

    padding:8px 11px;

    font-size:13px;

  }

}





/* FOOTER_TELEGRAM_SUBSCRIBE_V1 */

.footer-telegram-subscribe{

  display:inline-flex;

  align-items:center;

  gap:8px;

  padding:8px 12px;

  border-radius:999px;

  text-decoration:none;

  color:#fff;

  background:linear-gradient(180deg,#22c55e,#16a34a);

  border:1px solid #86efac;

  box-shadow:0 8px 20px rgba(22,163,74,.16);

  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;

  font-weight:800;

}



.footer-telegram-subscribe:hover{

  transform:translateY(-1px);

  filter:brightness(1.02);

  box-shadow:0 12px 28px rgba(22,163,74,.22);

}



.footer-telegram-subscribe__icon{

  display:inline-flex;

  align-items:center;

  justify-content:center;

  width:22px;

  height:22px;

  min-width:22px;

  border-radius:50%;

  background:rgba(255,255,255,.16);

  color:#fff;

  box-shadow:inset 0 1px 0 rgba(255,255,255,.18);

  font-size:13px;

  line-height:1;

}



@media (max-width: 640px){

  .footer-telegram-subscribe{

    padding:8px 11px;

    font-size:13px;

  }

}





/* FOOTER_TELEGRAM_SUBSCRIBE_CONTRAST_V2 */

.footer-telegram-subscribe{

  color:#ffffff !important;

  background:linear-gradient(180deg,#16a34a 0%, #15803d 100%) !important;

  border:1px solid #166534 !important;

  box-shadow:0 10px 24px rgba(21,128,61,.24) !important;

  text-shadow:0 1px 0 rgba(0,0,0,.12);

}



.footer-telegram-subscribe:visited,

.footer-telegram-subscribe:hover,

.footer-telegram-subscribe:active,

.footer-telegram-subscribe:focus{

  color:#ffffff !important;

}



.footer-telegram-subscribe span{

  color:inherit !important;

}



.footer-telegram-subscribe__icon{

  background:rgba(255,255,255,.22) !important;

  color:#ffffff !important;

  font-weight:900;

  border:1px solid rgba(255,255,255,.22);

}



.footer-telegram-subscribe:hover{

  background:linear-gradient(180deg,#15803d 0%, #166534 100%) !important;

  box-shadow:0 14px 30px rgba(21,128,61,.30) !important;

}



.footer-telegram-subscribe:focus-visible{

  outline:none;

  box-shadow:

    0 0 0 4px rgba(34,197,94,.18),

    0 14px 30px rgba(21,128,61,.30) !important;

}





/* FOOTER_WEATHER_NOTE_V1 */

.footer-weather-note{

  max-width: 980px;

  margin: 18px auto 0;

  padding: 16px 18px;

  border-radius: 18px;

  background: linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%);

  border: 1px solid #dbe7ff;

  box-shadow: 0 10px 28px rgba(37,99,235,.06);

  color: #24415f;

  text-align: center;

}



.footer-weather-note p{

  margin: 0;

  font-size: 15px;

  line-height: 1.7;

}



@media (max-width: 640px){

  .footer-weather-note{

    margin-top: 14px;

    padding: 14px 15px;

    border-radius: 16px;

  }



  .footer-weather-note p{

    font-size: 14px;

    line-height: 1.65;

  }

}





/* HOME_SEARCH_UNDER_SHARE_V1 */

.home-search-under-share-host{

  width:100%;

  margin:14px 0 0;

}



.home-search-under-share-host form,

.home-search-under-share-host .search,

.home-search-under-share-host .search-form,

.home-search-under-share-host .hero-search,

.home-search-under-share-host .weather-search{

  width:100%;

}



.home-search-under-share-host form{

  margin:0;

}



.home-search-under-share-host .search,

.home-search-under-share-host .search-form,

.home-search-under-share-host .hero-search,

.home-search-under-share-host .weather-search{

  margin-top:0 !important;

}



@media (max-width: 640px){

  .home-search-under-share-host{

    margin-top:12px;

  }

}





/* HOME_SEARCH_UNDER_EYEBROW_V2 */

.home-search-under-eyebrow-host{

  width:100%;

  margin:14px 0 18px;

}



.home-search-under-eyebrow-host form{

  position:relative;

  width:100%;

  max-width:640px;

  margin:0;

}



.home-search-under-eyebrow-host input[type="text"],

.home-search-under-eyebrow-host input[type="search"]{

  width:100%;

  min-height:58px;

  padding:0 140px 0 18px;

  border-radius:18px;

  box-sizing:border-box;

}



.home-search-under-eyebrow-host button[type="submit"],

.home-search-under-eyebrow-host input[type="submit"]{

  position:absolute;

  top:50%;

  right:8px;

  transform:translateY(-50%);

  min-width:116px;

  min-height:44px;

  margin:0;

  border-radius:14px;

  display:inline-flex;

  align-items:center;

  justify-content:center;

  z-index:3;

}



.home-search-under-eyebrow-host .search-suggest{

  top:calc(100% + 8px);

}



@media (max-width: 640px){

  .home-search-under-eyebrow-host{

    margin:12px 0 16px;

  }



  .home-search-under-eyebrow-host form{

    max-width:none;

  }



  .home-search-under-eyebrow-host input[type="text"],

  .home-search-under-eyebrow-host input[type="search"]{

    min-height:54px;

    padding:0 118px 0 15px;

    border-radius:16px;

  }



  .home-search-under-eyebrow-host button[type="submit"],

  .home-search-under-eyebrow-host input[type="submit"]{

    right:6px;

    min-width:102px;

    min-height:40px;

    border-radius:12px;

    font-size:14px;

  }

}





/* HOME_SEARCH_INLINE_ROW_FIX_V1 */

.home-search-under-eyebrow-host form{

  position:static !important;

  display:flex !important;

  flex-wrap:wrap !important;

  align-items:center !important;

  gap:10px !important;

  max-width:720px !important;

}



.home-search-under-eyebrow-host input[type="text"],

.home-search-under-eyebrow-host input[type="search"]{

  flex:1 1 0 !important;

  min-width:0 !important;

  width:auto !important;

  min-height:56px !important;

  padding:0 18px !important;

  box-sizing:border-box !important;

}



.home-search-under-eyebrow-host button[type="submit"],

.home-search-under-eyebrow-host input[type="submit"]{

  position:static !important;

  top:auto !important;

  right:auto !important;

  transform:none !important;

  flex:0 0 auto !important;

  min-width:116px !important;

  min-height:56px !important;

  margin:0 !important;

  border-radius:16px !important;

}



.home-search-under-eyebrow-host .search-suggest{

  width:100% !important;

  order:10 !important;

  top:auto !important;

}



@media (max-width: 640px){

  .home-search-under-eyebrow-host form{

    gap:8px !important;

  }



  .home-search-under-eyebrow-host input[type="text"],

  .home-search-under-eyebrow-host input[type="search"]{

    min-height:50px !important;

    padding:0 14px !important;

  }



  .home-search-under-eyebrow-host button[type="submit"],

  .home-search-under-eyebrow-host input[type="submit"]{

    min-width:96px !important;

    min-height:50px !important;

    border-radius:14px !important;

    font-size:14px !important;

    padding:0 14px !important;

  }

}





/* HOME_SEARCH_PREMIUM_ROW_V2 */

.home-search-under-eyebrow-host{

  width:100%;

  max-width:760px;

  margin:14px 0 20px;

  overflow:visible !important;

}



.home-search-under-eyebrow-host form{

  position:relative !important;

  display:grid !important;

  grid-template-columns:minmax(0,1fr) 132px !important;

  align-items:center !important;

  gap:12px !important;

  width:100% !important;

  max-width:760px !important;

  margin:0 !important;

  overflow:visible !important;

}



.home-search-under-eyebrow-host input[type="text"],

.home-search-under-eyebrow-host input[type="search"]{

  width:100% !important;

  min-width:0 !important;

  height:58px !important;

  min-height:58px !important;

  padding:0 18px !important;

  border-radius:18px !important;

  border:1px solid #d7e3f8 !important;

  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%) !important;

  box-shadow:

    0 10px 30px rgba(36,92,255,.08),

    inset 0 1px 0 rgba(255,255,255,.7) !important;

  color:#173054 !important;

  box-sizing:border-box !important;

  position:relative !important;

  z-index:2 !important;

}



.home-search-under-eyebrow-host input[type="text"]::placeholder,

.home-search-under-eyebrow-host input[type="search"]::placeholder{

  color:#6b86a8 !important;

}



.home-search-under-eyebrow-host input[type="text"]:focus,

.home-search-under-eyebrow-host input[type="search"]:focus{

  outline:none !important;

  border-color:#93c5fd !important;

  box-shadow:

    0 0 0 4px rgba(59,130,246,.12),

    0 14px 34px rgba(36,92,255,.12),

    inset 0 1px 0 rgba(255,255,255,.7) !important;

}



.home-search-under-eyebrow-host button[type="submit"],

.home-search-under-eyebrow-host input[type="submit"]{

  position:relative !important;

  top:auto !important;

  right:auto !important;

  transform:none !important;

  width:132px !important;

  min-width:132px !important;

  height:58px !important;

  min-height:58px !important;

  margin:0 !important;

  padding:0 18px !important;

  border-radius:18px !important;

  border:1px solid #245cff !important;

  background:linear-gradient(180deg,#3b82f6 0%, #245cff 100%) !important;

  color:#fff !important;

  font-weight:800 !important;

  letter-spacing:.01em !important;

  box-shadow:0 14px 30px rgba(36,92,255,.22) !important;

  z-index:2 !important;

}



.home-search-under-eyebrow-host button[type="submit"]:hover,

.home-search-under-eyebrow-host input[type="submit"]:hover{

  filter:brightness(1.03) !important;

  box-shadow:0 18px 36px rgba(36,92,255,.28) !important;

}



.home-search-under-eyebrow-host .search-suggest{

  position:absolute !important;

  left:0 !important;

  right:0 !important;

  top:calc(100% + 10px) !important;

  bottom:auto !important;

  width:100% !important;

  margin:0 !important;

  order:initial !important;

  z-index:90 !important;

  border-radius:18px !important;

  border:1px solid rgba(219,231,255,.95) !important;

  background:rgba(255,255,255,.98) !important;

  backdrop-filter:blur(10px) !important;

  box-shadow:0 18px 44px rgba(15,23,42,.14) !important;

  overflow:hidden !important;

}



.home-search-under-eyebrow-host .search-suggest[hidden]{

  display:none !important;

}



.hero.hero-grid > div{

  overflow:visible !important;

}



@media (max-width: 640px){

  .home-search-under-eyebrow-host{

    margin:12px 0 18px;

    max-width:none;

  }



  .home-search-under-eyebrow-host form{

    grid-template-columns:minmax(0,1fr) 108px !important;

    gap:8px !important;

    max-width:none !important;

  }



  .home-search-under-eyebrow-host input[type="text"],

  .home-search-under-eyebrow-host input[type="search"]{

    height:52px !important;

    min-height:52px !important;

    padding:0 14px !important;

    border-radius:16px !important;

    font-size:15px !important;

  }



  .home-search-under-eyebrow-host button[type="submit"],

  .home-search-under-eyebrow-host input[type="submit"]{

    width:108px !important;

    min-width:108px !important;

    height:52px !important;

    min-height:52px !important;

    border-radius:16px !important;

    font-size:14px !important;

    padding:0 12px !important;

  }



  .home-search-under-eyebrow-host .search-suggest{

    top:calc(100% + 8px) !important;

    border-radius:16px !important;

  }

}





/* P365_COOKIE_NOTICE_SAFE_V2 */

.p365-cookie-notice{

  position:fixed;

  left:16px;

  right:16px;

  bottom:16px;

  z-index:2147483000;

  display:flex;

  justify-content:center;

  pointer-events:none;

  opacity:0;

  transform:translateY(16px);

  transition:opacity .25s ease, transform .25s ease;

}



.p365-cookie-notice.is-visible{

  opacity:1;

  transform:translateY(0);

}



.p365-cookie-notice[hidden]{

  display:none !important;

}



.p365-cookie-notice__card{

  width:min(100%,1100px);

  pointer-events:auto;

  display:grid;

  grid-template-columns:minmax(0,1fr) auto;

  gap:18px;

  align-items:center;

  padding:20px 22px;

  border-radius:22px;

  background:rgba(12,18,32,.94);

  border:1px solid rgba(255,255,255,.10);

  box-shadow:0 24px 60px rgba(2,8,23,.34);

  backdrop-filter:blur(12px);

  color:#fff;

}



.p365-cookie-notice__title{

  margin:0 0 8px;

  font-size:17px;

  line-height:1.3;

  font-weight:800;

  color:#fff;

}



.p365-cookie-notice__text{

  margin:0;

  font-size:14px;

  line-height:1.72;

  color:rgba(255,255,255,.88);

}



.p365-cookie-notice__text a{

  color:#9ec5ff;

  text-decoration:none;

  border-bottom:1px solid rgba(158,197,255,.35);

}



.p365-cookie-notice__text a:hover{

  color:#cfe2ff;

  border-bottom-color:rgba(207,226,255,.65);

}



.p365-cookie-notice__btn{

  border:none;

  min-height:52px;

  padding:0 22px;

  border-radius:16px;

  background:linear-gradient(180deg,#4c8dff 0%, #245cff 100%);

  color:#fff;

  font-size:14px;

  font-weight:800;

  letter-spacing:.01em;

  cursor:pointer;

  white-space:nowrap;

  box-shadow:0 14px 30px rgba(36,92,255,.28);

  transition:transform .18s ease, filter .18s ease, box-shadow .18s ease;

}



.p365-cookie-notice__btn:hover{

  transform:translateY(-1px);

  filter:brightness(1.03);

  box-shadow:0 18px 36px rgba(36,92,255,.34);

}



.p365-cookie-notice__btn:focus-visible{

  outline:none;

  box-shadow:0 0 0 4px rgba(59,130,246,.22), 0 18px 36px rgba(36,92,255,.34);

}



.p365-policy-link{

  display:inline-flex;

  align-items:center;

  gap:8px;

  padding:8px 12px;

  border-radius:999px;

  text-decoration:none;

  color:#173054;

  background:linear-gradient(180deg,#ffffff,#f6f9ff);

  border:1px solid #d7e3f8;

  box-shadow:0 10px 24px rgba(37,99,235,.08);

  font-weight:700;

}



.p365-policy-doc{

  max-width:980px;

  margin:0 auto;

  padding:30px 16px 56px;

}



.p365-policy-doc__hero{

  margin-bottom:18px;

}



.p365-policy-doc__eyebrow{

  display:inline-flex;

  align-items:center;

  padding:7px 12px;

  border-radius:999px;

  background:#eef4ff;

  color:#245cff;

  font-size:13px;

  font-weight:800;

  text-transform:uppercase;

  letter-spacing:.02em;

}



.p365-policy-doc__title{

  margin:14px 0 12px;

  font-size:clamp(30px,4vw,46px);

  line-height:1.08;

  color:#10213d;

}



.p365-policy-doc__lead{

  margin:0;

  max-width:840px;

  font-size:17px;

  line-height:1.75;

  color:#47627f;

}



.p365-policy-doc__card{

  margin-top:18px;

  padding:24px;

  border-radius:24px;

  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);

  border:1px solid #dbe7ff;

  box-shadow:0 18px 40px rgba(36,92,255,.08);

}



.p365-policy-doc__card h2{

  margin:0 0 12px;

  font-size:24px;

  line-height:1.25;

  color:#10213d;

}
.p365-policy-doc__card p,

.p365-policy-doc__card li{

  color:#35506d;

  font-size:16px;

  line-height:1.8;

}



.p365-policy-doc__card ul{

  margin:0;

  padding-left:20px;

}



.p365-policy-doc__meta{

  margin-top:18px;

  font-size:14px;

  color:#6b86a8;

}



@media (max-width: 860px){

  .p365-cookie-notice{

    left:12px;

    right:12px;

    bottom:12px;

  }



  .p365-cookie-notice__card{

    grid-template-columns:1fr;

    gap:14px;

    padding:18px 16px;

    border-radius:18px;

  }



  .p365-cookie-notice__btn{

    width:100%;

    min-height:50px;

    border-radius:14px;

  }



  .p365-cookie-notice__title{

    font-size:16px;

  }



  .p365-cookie-notice__text{

    font-size:13px;

    line-height:1.66;

  }



  .p365-policy-doc{

    padding:22px 14px 44px;

  }



  .p365-policy-doc__card{

    padding:18px 16px;

    border-radius:20px;

  }



  .p365-policy-doc__card h2{

    font-size:21px;

  }



  .p365-policy-doc__card p,

  .p365-policy-doc__card li{

    font-size:15px;

  }

}

