/* KGN_Sok — sentrert søkeboks (28.10.2026). Alt er avgrenset til .kgn-sok. */
.kgn-sok{
  --s-ink:#181818; --s-ink2:#595c5c; --s-muted:#8b95a3; --s-line:#e4e9ee;
  --s-flate:#f6f8fa; --s-accent:#0051ff; --s-soft:#e8efff; --s-mark:#fff2b3;
  position:fixed; inset:0; z-index:999999;
  background:rgba(14,20,30,.55);
  display:flex; justify-content:center; align-items:flex-start;
  padding:10vh 20px 20px;
  font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  color:var(--s-ink); line-height:1.4; text-align:left;
}
.kgn-sok[hidden]{display:none!important}
.kgn-sok *,.kgn-sok *::before,.kgn-sok *::after{box-sizing:border-box}
.kgn-sok__panel{
  width:100%; max-width:640px; max-height:80vh;
  background:#fff; border-radius:14px; box-shadow:0 24px 60px rgba(0,0,0,.28);
  display:flex; flex-direction:column; overflow:hidden;
}
.kgn-sok__felt{display:flex; align-items:center; gap:10px; padding:14px 16px; border-bottom:1px solid var(--s-line)}
.kgn-sok__felt svg{flex:none; color:var(--s-accent)}
.kgn-sok input.kgn-sok__input{
  flex:1; min-width:0; margin:0; padding:4px 0; height:auto;
  border:0!important; outline:0; box-shadow:none!important; background:transparent!important;
  font:500 18px/1.3 'Inter',system-ui,sans-serif; color:var(--s-ink);
  -webkit-appearance:none; appearance:none;
}
.kgn-sok input.kgn-sok__input::placeholder{color:var(--s-muted)}
.kgn-sok input.kgn-sok__input::-webkit-search-cancel-button{display:none}
.kgn-sok__lukk{
  flex:none; border:0; background:var(--s-flate); color:var(--s-ink2);
  font:600 12px/1 'Inter',system-ui,sans-serif; padding:8px 10px; border-radius:6px; cursor:pointer;
}
.kgn-sok__liste{overflow-y:auto; padding:6px; -webkit-overflow-scrolling:touch}
.kgn-sok__lbl{font-size:11px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--s-muted); padding:10px 10px 4px}
.kgn-sok ul{list-style:none; margin:0; padding:0; display:grid; gap:2px}
.kgn-sok li{margin:0; padding:0}
.kgn-sok li::before{display:none}
.kgn-sok a.kgn-sok__rad{
  display:grid; grid-template-columns:44px 1fr; gap:12px; align-items:center;
  padding:9px 10px; border-radius:8px; color:var(--s-ink); text-decoration:none!important;
}
.kgn-sok a.kgn-sok__rad[aria-selected="true"],.kgn-sok a.kgn-sok__rad:hover{background:var(--s-soft)}
.kgn-sok a.kgn-sok__rad:focus-visible,.kgn-sok__lukk:focus-visible,.kgn-sok__alle:focus-visible{outline:2px solid var(--s-accent); outline-offset:2px}
.kgn-sok__bilde{
  width:44px; height:44px; border-radius:8px; background:var(--s-flate);
  display:grid; place-items:center; overflow:hidden;
  font-weight:700; font-size:15px; color:var(--s-accent);
}
.kgn-sok__bilde img{width:100%; height:100%; object-fit:cover; display:block; margin:0}
.kgn-sok__tekst{min-width:0}
.kgn-sok__tittel{display:block; font-weight:600; font-size:15px; line-height:1.3}
.kgn-sok__url{display:block; font-size:12px; color:var(--s-muted); margin-top:2px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.kgn-sok mark{background:var(--s-mark); color:inherit; padding:0; border-radius:2px}
.kgn-sok__tom{padding:22px 12px; color:var(--s-ink2); font-size:14px}
.kgn-sok__fot{display:flex; justify-content:space-between; align-items:center; gap:10px; padding:10px 16px; border-top:1px solid var(--s-line); font-size:12px; color:var(--s-muted)}
.kgn-sok__alle{color:var(--s-accent)!important; font-weight:600; text-decoration:none!important; margin-left:auto}
body.kgn-sok-aapen{overflow:hidden}

@media (max-width:767px){
  .kgn-sok{padding:0; background:#fff}
  .kgn-sok__panel{max-width:none; max-height:none; height:100%; border-radius:0; box-shadow:none;
    padding-top:env(safe-area-inset-top,0px); padding-bottom:env(safe-area-inset-bottom,0px)}
  .kgn-sok__taster{display:none}
}
@media (prefers-reduced-motion:no-preference){
  .kgn-sok__panel{animation:kgnSokInn .14s ease-out}
  @keyframes kgnSokInn{from{opacity:0; transform:translateY(-6px)}to{opacity:1; transform:none}}
}
