/* Delad styling för Sverigekartan (kartmotor.js) – används av startsidan och /karta */

.sverigekarta path{
  stroke:#ffffff;stroke-width:0.8;
  cursor:pointer;
  transition:fill .12s ease;
}
.sverigekarta path:hover{stroke:#e8433e;stroke-width:1.6;}
/* Vald kommun får kampanjgult med röd kant – de röda skolprickarna
   syns tydligt ovanpå, vilket de inte gjorde mot en röd fyllning */
.sverigekarta path.vald{fill:#fafe8e;stroke:#e8433e;stroke-width:2.5;}
.sverigekarta circle{
  fill:#e8433e;stroke:#ffffff;stroke-width:1;cursor:pointer;
  vector-effect:non-scaling-stroke; /* strecket ska inte växa med zoomen */
}
.sverigekarta circle.vald{fill:#fafe8e;stroke:#e8433e;stroke-width:2.5;}

.kart-scen{position:relative;}
.zoom-knappar{
  position:absolute;right:0.6rem;bottom:1rem;z-index:150;
  display:flex;flex-direction:column;gap:0.45rem;
}
.zoom-knappar button{
  width:2.75rem;height:2.75rem;min-width:44px;min-height:44px;border-radius:50%;
  border:2px solid #1c3f5b;background:#ffffff;color:#1c3f5b;
  font-family:'Alice',Georgia,serif;font-size:1.4rem;line-height:1;cursor:pointer;
  box-shadow:0 2px 8px rgba(0,0,0,.18);
}
.zoom-knappar button:hover{background:#fafe8e;}
.zoom-knappar button:focus-visible{outline:3px solid #1c3f5b;outline-offset:2px;}
.zoom-hint{font-size:0.85rem;color:#44586b;margin-top:0.6rem;}

.kart-tooltip{
  position:fixed;z-index:300;pointer-events:none;
  background:#1c3f5b;color:#ffffff;
  font-size:0.92rem;padding:0.45rem 0.8rem;border-radius:0.5rem;
  box-shadow:0 4px 14px rgba(0,0,0,.3);
  opacity:0;transition:opacity .1s ease;max-width:16rem;
}
.kart-tooltip strong{color:#fafe8e;}

.kommun-chip[hidden], .skol-popup[hidden]{display:none;}
.kommun-chip{
  display:inline-flex;align-items:center;gap:0.6rem;
  background:#1c3f5b;color:#ffffff;
  border-radius:2rem;padding:0.4rem 1rem;margin-bottom:0.8rem;
  font-size:0.95rem;
}
.kommun-chip strong{color:#fafe8e;}
.kommun-chip button{
  background:none;border:none;color:#ffffff;
  font-size:1rem;cursor:pointer;line-height:1;
  min-width:44px;min-height:44px;   /* träffyta för fingrar */
  display:inline-flex;align-items:center;justify-content:center;
  margin:-0.6rem -0.6rem -0.6rem 0; /* utan att chipet växer visuellt */
}
.kommun-chip button:focus-visible{outline:2px solid #fafe8e;outline-offset:2px;}

.skol-popup{
  position:fixed;z-index:400;
  background:#ffffff;color:#1c3f5b;
  border:3px solid #1c3f5b;border-radius:0.9rem;
  padding:1rem 1.1rem;max-width:19rem;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
  font-size:0.92rem;line-height:1.45;
  font-family:'Alice',Georgia,serif;
}
.skol-popup h3{font-size:1.05rem;margin:0 1.4rem 0.3rem 0;}
.skol-popup p{margin-bottom:0.35rem;}
.skol-popup .popup-ab{color:#e8433e;font-weight:bold;}
.skol-popup .popup-mail{
  display:inline-block;margin-top:0.4rem;
  background:#1c3f5b;color:#fafe8e;
  padding:0.45rem 1rem;border-radius:2rem;text-decoration:none;font-size:0.92rem;
}
.skol-popup .popup-mail:focus-visible{outline:3px solid #1c3f5b;outline-offset:2px;}
.popup-stang{
  position:absolute;top:0.15rem;right:0.2rem;
  background:none;border:none;font-size:1.05rem;color:#1c3f5b;cursor:pointer;
  min-width:44px;min-height:44px;   /* träffyta för fingrar */
  display:inline-flex;align-items:flex-start;justify-content:flex-end;
  padding:0.4rem 0.5rem;
}
.popup-stang:focus-visible{outline:3px solid #1c3f5b;outline-offset:-2px;border-radius:0.4rem;}
.sverigekarta:focus-visible{outline:3px solid #1c3f5b;outline-offset:2px;}
.skol-popup .popup-lista{list-style:none;margin-top:0.5rem;max-height:13rem;overflow-y:auto;}
.skol-popup .popup-lista li{margin-bottom:0.35rem;}
.skol-popup .popup-lista button{
  width:100%;text-align:left;
  background:#f2f5f7;border:2px solid #dfe6ec;border-radius:0.5rem;
  font-family:'Alice',Georgia,serif;font-size:0.92rem;color:#1c3f5b;
  padding:0.4rem 0.6rem;cursor:pointer;
}
.skol-popup .popup-lista button:hover{border-color:#1c3f5b;}
.skol-popup .popup-lista button:focus-visible{outline:3px solid #1c3f5b;outline-offset:1px;}

@media (prefers-reduced-motion: reduce){
  .sverigekarta path{transition:none;}
  .kart-tooltip{transition:none;}
}

/* På mobil ligger den flytande "Skriv under"-knappen nere till höger –
   flytta zoomknapparna till vänster så de inte hamnar under den. */
@media (max-width: 720px){
  .zoom-knappar{ right:auto; left:0.6rem; bottom:0.8rem; }
}
