:root { --w: 820px; }
body { font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif; margin: 0; }
.container { max-width: var(--w); margin: 0 auto; padding: 22px 16px 48px; }
.card { border: 1px solid #e5e5e5; border-radius: 14px; padding: 14px; margin: 12px 0; }
h1 { font-size: 26px; margin: 0 0 8px; }
h2 { font-size: 18px; margin: 0 0 10px; }
.small { color: #555; font-size: 14px; }
.row { display: flex; gap: 10px; flex-wrap: wrap; }
.badge { display: inline-block; padding: 6px 10px; border-radius: 999px; border: 1px solid #111; font-size: 13px; }
.btn { background: #111; color: #fff; border: 1px solid #111; border-radius: 12px; padding: 10px 14px; cursor: pointer; text-decoration: none; display:inline-block; }
.transparent { background: lightgrey; }
.q { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin: 10px 0; }
/* Gör varje fråga till en kolumn (fråga överst, svar under) */
.q-block {
  display: grid;
  gap: 10px;
  margin: 10px 0;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e9e9e9;
}
.q-block:last-child {
  border-bottom: none;
}

/* Kompetensgruppens card */
.card.cg {
  border-left: 4px solid #e3e8f0;
  padding-left: 14px;
}


/* Sticky kompetensgrupp */
.cg-title {
  font-size: 30px;
  position: sticky;
  top: 8px;                  /* avstånd från toppen */
  background: #e6f0ff;
  border-bottom: 1px solid #c9dcff;     
  padding: 6px 0;
  margin: 0 0 12px 0;
  z-index: 5;
  font-weight: 600;
}

/* Om du har en .row-klass som gör flex, så vill vi inte att den påverkar här */
.q-block.row {
  display: grid;
}

/* Extra luft mellan kompetensgrupper (om de är cards) */
.card .q-block:last-child {
  margin-bottom: 8px;
}
/* Liten separation mellan text och svarsalternativ */
.q-block .likert {
  margin-top: 6px;
}


.qmeta { flex: 1; }
select, input[type="email"] { padding: 9px 10px; border-radius: 10px; border: 1px solid #ddd; }
.row label {
  flex: 0 0 60%;   /* ca 1.5× jämfört med tidigare */
}
.row label input[type="email"] {
  width: 80%;
}

pre { white-space: pre-wrap; word-break: break-word; background: #f6f6f6; padding: 12px; border-radius: 12px; border: 1px solid #eee; }
hr { border: 0; border-top: 1px solid #eee; margin: 16px 0; }

/* Instruktionsruta */
.card.howto {
  background: #f6f8fb;          /* mycket ljus blå/grå */
  border: 1px solid #e3e8f0;
}

.card.howto h3 {
  margin-top: 0;
}

.card.howto p {
  color: #333;
}

.btn-calc {
  background: blue;   /* blå */
  color: whitesmoke;
  border: 1px solid #8cc4ff;
  width: 100%;           /* bredare än nu */
  padding: 14px 16px;    /* lite större */
  border-radius: 14px;
  font-weight: 600;
}

@media print {
  .btn, .no-print { display: none !important; }
  body { margin: 0; }
  .container { padding: 0; }
  .card { break-inside: avoid; }
}

/* Likert 1–5 med ankare under 1/3/5 */
.likert {
  display: grid;
  gap: 6px;
  width: 100%;
  min-width: 320px;
}

.likert-radios {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;
  align-items: center;
}

.likert-choice {
  display: grid;
  justify-items: center;
  gap: 4px;
  padding: 6px 0;
  border-radius: 10px;
  border: 1px solid #e9e9e9;
  background: #fafafa;
}

.likert-choice:hover {
  background: #f1f4f8;
}

.likert-choice input {
  margin: 0;
}

.likert-num {
  font-size: 13px;
  color: #111;
}

.likert-anchors {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;
}

.likert-anchor {
  font-size: 12px;
  color: #555;
  line-height: 1.2;
  text-align: center;
  min-height: 2.4em; /* håller höjden stabil även när text saknas */
}

/* Luft runt "Jag förstår inte frågan" */
.likert-unsure {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;     /* luft från ankare/radios */
  margin-bottom: 8px;   /* luft till nästa fråga */
  font-size: 12px;
  color: #555;
}

.card.feedback {
  background: #1f4ed8;          /* din blå */
  color: #ffffff;
  border: none;
}

.card.feedback h2 {
  color: #ffffff;
}

.card.feedback .small {
  color: rgba(255,255,255,0.85);
}

.card.feedback textarea,
.card.feedback select,
.card.feedback input[type="text"],
.card.feedback input[type="email"],
.card.feedback input[type="number"] {
  background: #ffffff;
  color: #111111;
}

.card.feedback button {
  background: #ffffff;
  color: #1f4ed8;
  border: none;
}

.card.feedback button:hover {
  opacity: 0.9;
}



