/* main.css — vse pod pregibom.
   Mobile first. Edini prelom je 768px (namizna navigacija ↔ hamburger).
   Vse ostalo je fluidno: clamp(), auto-fit mreže, flex-wrap. */

/* ---------- Postavitev ---------- */

.vi-main{
  display:flex;
  flex-direction:column;
  gap:var(--section-gap);
  padding-block:36px calc(var(--section-gap) + 24px);
}
.vi-main>.vi-container{
  display:flex;
  flex-direction:column;
  gap:var(--section-gap);
}
.vi-main--plain{padding-top:28px}

.vi-section{display:flex;flex-direction:column;gap:13px}

/* Naslovi imajo tri stopnje, ločnica je postavitev, ne pomembnost:
   15px/600 v heroju, 16px/600 znotraj dvostolpičnega splita, 21px/700 v polni širini. */
.vi-section__title{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:21px;
  font-weight:700;
  letter-spacing:-.01em;
  line-height:1.3;
}

.vi-section__title--sub{font-size:16px;font-weight:600}

/* Sekcije pod pregibom ne rabijo izrisa, dokler se ne približajo vidnemu polju. */
.vi-nearby,.vi-postlist,.vi-faq,.vi-related,.vi-footer{
  content-visibility:auto;
  contain-intrinsic-size:auto 420px;
}

.vi-split{display:flex;flex-wrap:wrap;gap:40px 48px;align-items:flex-start}
.vi-split__main{flex:1.8 1 420px;min-width:0}
.vi-split__side{flex:1 1 280px;max-width:380px;min-width:0}

/* Dnevna napoved ob podrobnostih: dizajn ima 1.5 / 1 in ožji stolpec za podrobnosti. */
.vi-split--days{gap:40px 56px}
.vi-split--days>.vi-split__main{flex:1.5 1 420px}
.vi-split--days>.vi-split__side{flex:1 1 300px}

/* V ožjem stolpcu se par ključ/vrednost ne sme lomiti v več stolpcev. */
.vi-split__side .vi-kv--grid{grid-template-columns:1fr}

.vi-prose{max-width:var(--measure);font-size:18px;line-height:1.75}
.vi-prose h2{margin-top:32px;font-size:21px;font-weight:700}
.vi-prose h3{margin-top:24px;font-size:17.5px;font-weight:600}
.vi-prose p+p{margin-top:18px}
.vi-prose a{color:var(--action);font-weight:600}
.vi-prose a:hover{color:var(--action);text-decoration:underline}
.vi-prose img{border-radius:var(--r-card)}

.vi-answer{
  max-width:var(--measure);
  font-size:17px;
  line-height:1.6;
  color:var(--ink);
  font-weight:500;
}

.vi-empty{color:var(--muted)}

/* ---------- Drobtinice ---------- */

.vi-crumbs{padding-block:12px}
.vi-crumbs__list{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px}
.vi-crumbs__item+.vi-crumbs__item::before{content:"/";margin-right:6px;opacity:.5}
.vi-crumbs a{color:inherit;opacity:.8;font-weight:500}
.vi-crumbs a:hover{opacity:1}
.vi-crumbs [aria-current]{font-weight:600}

.vi-pagehead{display:flex;flex-direction:column;gap:10px;padding-block:8px 4px}
.vi-pagehead__title{font-size:clamp(24px,4vw,32px);font-weight:600;letter-spacing:-.01em;line-height:1.2}
.vi-pagehead__desc{max-width:var(--measure);color:var(--muted)}

/* ---------- Pilule in čipi ---------- */

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

.vi-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:var(--tap);
  padding:0 16px;
  border:1px solid var(--line);
  border-radius:var(--r-pill);
  background:var(--card);
  color:var(--ink);
  font-size:13.5px;
  font-weight:600;
  transition:border-color var(--ease),color var(--ease),transform var(--ease);
}
.vi-chip:hover{text-decoration:none}
.vi-chip[aria-current="page"],.vi-chip.is-active{border-color:var(--action);color:var(--action)}

.vi-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:var(--tap);
  padding:0 16px;
  border:none;
  border-radius:var(--r-pill);
  font-size:13.5px;
  font-weight:600;
  cursor:pointer;
}
.vi-pill--glass{background:var(--glass);color:var(--glassInk)}
.vi-pill[aria-pressed="true"]{outline:1px solid currentColor;outline-offset:-1px}

.vi-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:var(--tap);
  padding:0 20px;
  border:none;
  border-radius:var(--r-pill);
  font-size:14px;
  font-weight:600;
  cursor:pointer;
}
.vi-btn--action{background:var(--action);color:var(--actionInk)}

.vi-link--cta{font-size:13.5px;font-weight:600;color:var(--action)}

.vi-anchors{margin-top:-12px}
.vi-anchors__list{display:flex;gap:8px;overflow-x:auto;padding-block:4px;scrollbar-width:none}
.vi-anchors__list::-webkit-scrollbar{display:none}
.vi-anchors__list>li{flex:0 0 auto}

/* ---------- Opozorilni banner ---------- */

/* Zaobljena kartica znotraj containerja, ne polna širina (dizajn: radij 14px). */
.vi-alert{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  gap:10px;
  min-height:var(--tap);
  padding:8px 16px;
  border-radius:var(--r-card);
  background:var(--alertBg);
  color:var(--alertInk);
  font-size:13.5px;
  font-weight:600;
}
.vi-alert:hover{text-decoration:none}
.vi-alert__icon{flex:0 0 auto}
.vi-alert__text{flex:1 1 auto;min-width:0}
.vi-alert__until{font-weight:500;opacity:.8;white-space:nowrap}
.vi-alert__more{flex:0 0 auto;font-weight:700;white-space:nowrap}

/* ---------- Trakovi (urni, morski) ---------- */

.vi-hourly{margin-top:24px;scroll-margin-top:80px}

.vi-hourly__head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}

.vi-hourly__title{
  font-size:15px;
  font-weight:600;
  letter-spacing:-.01em;
  color:var(--heroInk);
}

.vi-hourly__link{
  flex:0 0 auto;
  font-size:13px;
  font-weight:500;
  color:var(--heroInk);
  opacity:.85;
}
.vi-hourly__link:hover{opacity:1}

.vi-strip{position:relative}

.vi-strip__scroll{
  position:relative;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  border-radius:var(--r-panel);
}
.vi-strip__scroll::-webkit-scrollbar{display:none}

/* Znotraj heroja trak stoji na prosojni glass ploskvi (dizajn: --glass, 18px, 10px 4px). */
.vi-hero .vi-strip__scroll{background:var(--glass);padding:10px 4px}

.vi-strip__cols{display:flex;min-width:max-content}

.vi-strip__col{
  flex:0 0 74px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:7px;
  padding:8px 6px;
  scroll-snap-align:start;
  color:var(--glassInk);
}
.vi-strip__col+.vi-strip__col{border-left:1px solid color-mix(in oklab,var(--glassInk) 22%,transparent)}
.vi-strip__col.is-now{font-weight:700}

.vi-strip__time{font-size:11.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;opacity:.9}
.vi-strip__temp{font-size:15px;font-weight:600}

.vi-strip__bar{display:flex;align-items:flex-end;height:24px}
.vi-strip__barfill{width:4px;border-radius:2px;background:#4aa8ef}

/* Krivulja je svoja vrstica pod stolpci, ne plast za njimi: v prototipu je tako in
   številke ostanejo berljive, ker se z njo ne prekrivajo. */
.vi-strip__curve{display:block;min-width:max-content;margin-top:2px;pointer-events:none}

.vi-strip__nav{display:none}

.vi-strip--sea .vi-strip__col{color:var(--ink)}
.vi-strip--sea .vi-strip__col+.vi-strip__col{border-left-color:color-mix(in oklab,var(--seaA) 18%,transparent)}

/* Med vlečenjem ne označujemo besedila — samo v traku, nikoli v članku. */
.vi-strip.is-dragging .vi-strip__scroll{scroll-snap-type:none;cursor:grabbing}
.vi-strip.is-dragging .vi-strip__col{user-select:none}

/* ---------- Dnevna napoved ---------- */

.vi-days__list{display:flex;flex-direction:column}

.vi-dayrow{border-bottom:1px solid var(--line)}
.vi-dayrow[open]>.vi-dayrow__summary .vi-dayrow__chev{transform:rotate(180deg)}

.vi-dayrow__summary{
  display:grid;
  grid-template-columns:auto auto 24px 1fr auto 18px;
  align-items:center;
  gap:0 12px;
  min-height:56px;
  padding-block:6px;
  cursor:pointer;
  list-style:none;
}
.vi-dayrow__summary::-webkit-details-marker{display:none}
.vi-dayrow__summary:hover{color:var(--action)}

.vi-dayrow__day{font-size:14px;font-weight:600;text-transform:capitalize}
.vi-dayrow__date{font-size:12.5px;color:var(--muted)}
.vi-dayrow__pop{font-size:12.5px;color:var(--muted);min-width:40px}

.vi-dayrow__track{position:relative;height:5px;border-radius:3px;background:var(--line)}
.vi-dayrow__fill{position:absolute;inset-block:0;border-radius:3px;background:linear-gradient(90deg,#63b0ea,#f0a53c)}

.vi-dayrow__temps{display:flex;align-items:baseline;gap:8px;font-size:14px}
.vi-dayrow__max{font-weight:600}
.vi-dayrow__min{color:var(--muted)}

.vi-dayrow__chev{transition:transform .2s}

.vi-dayrow__detail{display:flex;flex-direction:column;gap:16px;padding-block:4px 18px}

.vi-dayhours{
  display:flex;
  gap:0;
  overflow-x:auto;
  padding:10px 4px;
  border:1px solid var(--line);
  border-radius:var(--r-card);
  background:var(--card);
  scrollbar-width:none;
}
.vi-dayhours::-webkit-scrollbar{display:none}
.vi-dayhours__col{flex:1 0 62px;display:flex;flex-direction:column;align-items:center;gap:6px;padding:4px 6px}
.vi-dayhours__time{font-size:11.5px;color:var(--muted);font-weight:600}
.vi-dayhours__temp{font-size:14px;font-weight:600}

/* ---------- Ključ/vrednost mreža ---------- */

.vi-kv{display:flex;flex-direction:column}
.vi-kv--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:0 32px}

.vi-kv__pair{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:48px;
  border-bottom:1px solid var(--line);
}
.vi-kv__pair dt{font-size:13.5px;color:var(--muted)}
.vi-kv__pair dd{font-size:14.5px;font-weight:600}

/* ---------- Vrstica kraja ---------- */

.vi-now__list,.vi-nearby__grid{display:flex;flex-direction:column}
.vi-nearby__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:0 32px}

.vi-placerow{
  display:grid;
  grid-template-columns:1fr auto auto auto;
  align-items:center;
  gap:0 12px;
  min-height:48px;
  border-bottom:1px solid var(--line);
  color:var(--ink);
  transition:color var(--ease)}
.vi-placerow:hover{text-decoration:none}
.vi-placerow__name{font-size:14px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vi-placerow__temp{font-size:15px;font-weight:600}
.vi-placerow__range{display:flex;gap:8px;font-size:12.5px;color:var(--muted)}
.vi-placerow__distance{font-size:12.5px;color:var(--muted);min-width:52px;text-align:right}

.vi-now__extremes{display:flex;flex-direction:column;gap:6px;margin-top:12px;font-size:13.5px}
.vi-now__extremes li{display:flex;align-items:baseline;gap:8px}
.vi-now__label{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);min-width:92px}
.vi-now__value{margin-left:auto;font-weight:600}

/* ---------- Morje ---------- */

.vi-sea__panel{
  border:1px solid var(--line);
  border-radius:var(--r-panel);
  background:linear-gradient(180deg,color-mix(in oklab,var(--seaA) 8%,var(--card)),var(--card));
  padding:16px 4px 12px;
}
.vi-sea__item{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--ink);text-align:center}
.vi-sea__item:hover{text-decoration:none;color:var(--action)}
.vi-sea__name{font-size:12.5px;font-weight:600}
.vi-sea__temp{font-size:20px;font-weight:600;letter-spacing:-.02em}
.vi-sea__index{font-size:11px;font-weight:600;color:var(--muted)}
.vi-sea__more{padding:8px 16px 0}

/* ---------- Radar ---------- */

/* Naslov levo, status desno v isti vrstici. */
.vi-sectionhead{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px}
.vi-sectionhead__link{flex:0 0 auto;font-size:13px;font-weight:600;color:var(--action)}

.vi-status{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--muted)}
.vi-status__sep{opacity:.5}

.vi-dot{width:8px;height:8px;border-radius:50%;background:currentColor;flex:0 0 auto}
.vi-dot--live{background:var(--live);animation:viPulse 1.8s ease-in-out infinite}
@keyframes viPulse{0%,100%{opacity:1}50%{opacity:.35}}

.vi-radar__figure{display:flex;flex-direction:column;gap:8px}

.vi-radar__frame{
  position:relative;
  max-width:820px;
  border:1px solid var(--line);
  border-radius:var(--r-card);
  overflow:hidden;
  background:#eef3f7;
  aspect-ratio:730/510;
}
.vi-radar__img{width:100%;height:100%;object-fit:contain}

.vi-mappin{position:absolute;width:0;height:0}
.vi-mappin__ring{
  position:absolute;left:0;top:0;
  width:14px;height:14px;margin:-7px 0 0 -7px;
  border-radius:50%;
  background:rgba(255,59,48,.45);
  animation:viRing 2s ease-out infinite;
}
.vi-mappin__dot{
  position:absolute;left:0;top:0;
  width:11px;height:11px;margin:-5.5px 0 0 -5.5px;
  border-radius:50%;
  background:var(--live);
  border:2px solid #fff;
  box-shadow:0 1px 4px rgba(0,0,0,.4);
}
.vi-mappin__label{
  position:absolute;left:0;top:-26px;
  transform:translateX(-50%);
  padding:3px 10px;
  border-radius:var(--r-pill);
  background:rgba(13,19,25,.82);
  color:#fff;
  font-size:11px;font-weight:600;
  white-space:nowrap;
}
@keyframes viRing{0%{transform:scale(.6);opacity:.8}100%{transform:scale(2.2);opacity:0}}

.vi-radar__caption{font-size:12.5px;color:var(--muted);max-width:var(--measure)}

/* ---------- Pogosta vprašanja ---------- */

.vi-faq__list{display:flex;flex-direction:column}

.vi-faq__item{border-bottom:1px solid var(--line)}
.vi-faq__item[open] .vi-faq__chev{transform:rotate(180deg)}

.vi-faq__q{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:var(--tap);
  padding-block:12px;
  cursor:pointer;
  list-style:none;
}
.vi-faq__q::-webkit-details-marker{display:none}
.vi-faq__q:hover{color:var(--action)}
.vi-faq__qtext{font-size:15.5px;font-weight:600;line-height:1.4}
.vi-faq__chev{flex:0 0 auto;transition:transform .2s}
.vi-faq__a{padding-bottom:16px;max-width:var(--measure);color:var(--muted)}
.vi-faq__a p+p{margin-top:12px}

/* ---------- Seznam prispevkov ---------- */

.vi-postlist__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:0 56px}

.vi-postlist__item{
  display:grid;
  grid-template-columns:30px 1fr auto;
  gap:0 16px;
  align-items:start;
  padding:20px 4px;
  border-top:1px solid var(--line);
}
.vi-postlist__num{font-size:13px;font-weight:600;color:var(--muted);padding-top:3px}
.vi-postlist__meta{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}
.vi-postlist__cat{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--action)}
.vi-postlist__title{margin-top:4px;font-size:17.5px;font-weight:600;line-height:1.35;letter-spacing:-.01em}
.vi-postlist__title a{color:var(--ink)}
.vi-postlist__title a:hover{color:var(--action);text-decoration:none}
.vi-postlist__arrow{font-size:17px;color:var(--muted);padding-top:16px}

/* ---------- Kartice ---------- */

.vi-cardgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:32px}

.vi-card{
  display:flex;
  flex-direction:column;
  gap:12px;
  border:1px solid var(--line);
  border-radius:var(--r-card);
  background:var(--card);
  overflow:hidden;
  transition:border-color var(--ease),transform var(--ease);
}
.vi-card__media{display:block;aspect-ratio:16/9;background:#eef3f7}
.vi-card__img{width:100%;height:100%;object-fit:cover}
.vi-card__body{display:flex;flex-direction:column;gap:8px;padding:0 16px 18px}
.vi-card__title{font-size:16px;font-weight:600;line-height:1.35}
.vi-card__title a{color:var(--ink)}
.vi-card__title a:hover{color:var(--action);text-decoration:none}
.vi-card__excerpt{font-size:13.5px;color:var(--muted)}

.vi-related__list{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:14px;font-weight:600}

.vi-pagination{display:flex;justify-content:center;gap:8px;margin-top:8px}
.vi-pagination .page-numbers{
  display:grid;place-items:center;
  min-width:var(--tap);min-height:var(--tap);
  padding:0 12px;
  border:1px solid var(--line);
  border-radius:var(--r-pill);
  color:var(--ink);font-size:13.5px;font-weight:600;
}
.vi-pagination .current{border-color:var(--action);color:var(--action)}

/* ---------- Oglasi ---------- */

.vi-ad{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  margin-inline:auto;
  border:1px dashed var(--line);
  border-radius:var(--r-chip);
  background:var(--card);
  overflow:hidden;
}
.vi-ad__label{
  position:absolute;top:8px;left:12px;
  font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--muted);
}
.vi-ad__unit{margin-top:14px}

/* ---------- Iskalni overlay ---------- */

.vi-search{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column}
.vi-search[hidden]{display:none}

.vi-search__backdrop{position:absolute;inset:0;background:rgba(8,14,22,.5)}

.vi-search__panel{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  gap:14px;
  width:100%;
  max-width:640px;
  max-height:min(86dvh,720px);
  margin:12px auto 0;
  padding:14px 16px 18px;
  border-radius:var(--r-panel);
  background:var(--card);
  color:var(--ink);
  box-shadow:0 24px 60px rgba(8,18,32,.30);
  overflow-y:auto;
  overscroll-behavior:contain;
}

.vi-search__form{display:flex;align-items:center;gap:8px}

.vi-search__field{
  position:relative;
  display:flex;
  align-items:center;
  gap:10px;
  flex:1 1 auto;
  min-height:var(--tap);
  padding:0 14px;
  border:1px solid var(--line);
  border-radius:var(--r-pill);
  background:var(--paper);
}
.vi-search__icon{flex:0 0 auto}

.vi-search__input{
  flex:1 1 auto;
  min-width:0;
  min-height:var(--tap);
  border:none;
  background:transparent;
  color:inherit;
  /* 16px, ker iOS pri manjši pisavi samodejno približa stran. */
  font-size:16px;
  font-family:inherit;
}
.vi-search__input:focus{outline:none}
.vi-search__input::-webkit-search-cancel-button{display:none}

.vi-search__close{--ico:var(--muted);flex:0 0 auto}

.vi-search__group,.vi-search__savedgroup{display:flex;flex-direction:column;gap:6px}
.vi-search__grouplabel{
  font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--muted);
}
.vi-search__list{display:flex;flex-direction:column}

.vi-search__item{
  display:grid;
  grid-template-columns:16px 1fr auto;
  align-items:center;
  gap:10px;
  min-height:var(--tap);
  padding:0 8px;
  border-radius:10px;
  color:var(--ink);
  font-size:14.5px;
}
.vi-search__item:hover,.vi-search__item.is-active{background:var(--paper);text-decoration:none}
.vi-search__name{opacity:.7;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vi-search__name strong{opacity:1;font-weight:650}
.vi-search__region{font-size:12px;color:var(--muted)}

.vi-search__results{display:flex;flex-direction:column;gap:14px}
.vi-search__saved{display:flex;flex-direction:column;gap:14px}
.vi-search__empty,.vi-search__hint{font-size:13.5px;color:var(--muted)}
.vi-search__all{padding-top:4px;border-top:1px solid var(--line);font-size:13.5px;font-weight:600}

body.vi-search-open{overflow:hidden}

/* ---------- Mobilna navigacija ---------- */

.vi-mobilenav{position:relative;z-index:20;padding-bottom:12px}
.vi-mobilenav[hidden]{display:none}

.vi-mobilenav__panel{
  border-radius:16px;
  background:var(--card);
  color:var(--ink);
  box-shadow:0 24px 60px rgba(8,18,32,.30);
  overflow:hidden;
}
.vi-mobilenav__list>li+li{border-top:1px solid var(--line)}
.vi-mobilenav__list a{
  display:flex;
  align-items:center;
  min-height:var(--tap);
  padding:0 16px;
  color:var(--ink);
  font-size:14.5px;
  font-weight:600;
}
.vi-mobilenav__list a:hover{background:var(--paper);text-decoration:none}

/* ---------- Lepljivi gumb ---------- */

.vi-pillbar{
  position:fixed;
  z-index:150;
  left:0;right:0;
  bottom:var(--vi-pill-offset,0px);
  padding:0 var(--gutter) max(16px,env(safe-area-inset-bottom));
  pointer-events:none;
}
.vi-pillbar[hidden]{display:none}

.vi-pillbar__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  max-width:520px;
  min-height:52px;
  margin-inline:auto;
  padding:0 6px 0 16px;
  border-radius:var(--r-pill);
  background:rgba(13,19,25,.92);
  color:#fff;
  box-shadow:0 14px 40px rgba(5,12,20,.4);
  backdrop-filter:blur(8px);
  pointer-events:auto;
  transform:translateY(0);
  transition:transform .2s;
}

.vi-pillbar__place{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;min-width:0}
.vi-pillbar__temp{opacity:.8}

.vi-pillbar__action{
  display:inline-flex;
  align-items:center;
  min-height:var(--tap);
  padding:0 16px;
  border:none;
  border-radius:var(--r-pill);
  background:rgba(255,255,255,.16);
  color:#fff;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
  white-space:nowrap;
}

/* ---------- Noga ---------- */

.vi-footer{
  margin-top:var(--section-gap);
  padding-block:40px 32px;
  border-top:1px solid var(--line);
  background:var(--paper);
  color:var(--ink);
}
.vi-footer__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:32px 48px}
.vi-footer__brand{display:flex;flex-direction:column;gap:10px}
.vi-logo--footer{--logoLine:var(--ink);color:var(--ink);margin-right:0}
.vi-footer__tagline{font-size:13.5px;color:var(--muted);max-width:34ch}
.vi-footer__source{font-size:12.5px;color:var(--muted)}

/* Namerno brez display:contents — ta odvzame <nav> vlogo landmarka v več brskalnikih. */
.vi-footer__cols{min-width:0}
.vi-footer__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr));gap:24px 40px}
.vi-footer__list>li>a{
  display:block;
  font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  color:var(--muted);
}
.vi-footer__list .sub-menu{margin-top:8px;display:flex;flex-direction:column}
.vi-footer__list .sub-menu a{
  display:flex;align-items:center;
  min-height:var(--tap);
  font-size:14px;font-weight:500;
  letter-spacing:normal;text-transform:none;
  color:var(--ink);
}
.vi-footer__list .sub-menu a:hover{color:var(--action);text-decoration:none}

.vi-footer__pwa{margin-top:32px;padding-top:20px;border-top:1px solid var(--line)}
.vi-footer__pwa p:first-child{font-size:14px;font-weight:600}
.vi-footer__pwahint{font-size:12.5px;color:var(--muted);max-width:52ch}

.vi-footer__legal{margin-top:24px;font-size:12.5px;color:var(--muted)}

/* ---------- Hover samo tam, kjer hover obstaja ---------- */

@media (hover:hover){
  .vi-chip:hover{border-color:var(--action);color:var(--action);transform:translateY(-2px)}
  .vi-card:hover{border-color:var(--action);transform:translateY(-2px)}
  .vi-placerow:hover{color:var(--action)}
  .vi-searchtrigger:hover{background:color-mix(in oklab,var(--glass) 70%,#fff)}
  .vi-iconbtn:hover{background:rgba(255,255,255,.14)}
  .vi-header--solid .vi-iconbtn:hover{background:var(--paper)}
}

/* ---------- Namizna postavitev ---------- */

@media (min-width:768px){
  .vi-mobilenav{display:none}

  .vi-strip__nav{
    position:absolute;
    top:50%;
    z-index:5;
    display:grid;
    place-items:center;
    width:40px;height:40px;
    transform:translateY(-50%);
    border:1px solid var(--line);
    border-radius:50%;
    background:var(--card);
    color:var(--ink);
    cursor:pointer;
    box-shadow:0 8px 22px rgba(8,18,32,.22);
  }
  .vi-strip__nav--prev{left:-17px}
  .vi-strip__nav--prev .vi-icon{transform:rotate(90deg)}
  .vi-strip__nav--next{right:-17px}
  .vi-strip__nav--next .vi-icon{transform:rotate(-90deg)}
  .vi-strip__nav:hover{color:var(--action)}

  .vi-pillbar{display:none}

  .vi-search__panel{margin-top:64px;padding:18px 20px 22px}

  .vi-dayrow__summary{grid-template-columns:96px 52px 26px 44px 1fr auto 18px}
}

@media (prefers-reduced-motion:reduce){
  .vi-dot--live,.vi-mappin__ring{animation:none}
  .vi-chip:hover,.vi-card:hover{transform:none}
}

@media print{
  .vi-header,.vi-search,.vi-pillbar,.vi-ad,.vi-strip__nav{display:none!important}
  .vi-hero{background:none;color:#000}
}
