/* Degmaskinen – Väljaren
   Allt är namnrymdat med .dgv- för att inte krocka med Extra/Divi.
   Typsnitt laddas från plugin-filen (dgv-fonts). */


.dgv-root {
  /* --- FÄRGER (loggans palett) --- */
  --dgv-chassis:#2D4769; --dgv-panel:#22374F; --dgv-edge:#3A5273;
  --dgv-brass:#3CAE60; --dgv-verdigris:#7FB394; --dgv-warn:#C4553C;
  --dgv-paper:#F4F5E6; --dgv-ink:#1C2B3F; --dgv-muted:#9BAEC4;

  /* --- TYPSNITT (byt här, slår igenom överallt) --- */
  --dgv-display:'Archivo', sans-serif;
  --dgv-utility:'IBM Plex Mono', ui-monospace, monospace;
  --dgv-body:'Source Serif 4', Georgia, serif;

  background:var(--dgv-chassis);
  padding:48px 20px 56px;
  font-family:var(--dgv-utility);
  color:var(--dgv-paper);
  box-sizing:border-box;
}
.dgv-root *, .dgv-root *::before, .dgv-root *::after { box-sizing:border-box; }

.dgv-wrap { max-width:720px; margin:0 auto; }

.dgv-eyebrow {
  font-size:11px; line-height:1.2; letter-spacing:.22em; text-transform:uppercase;
  color:var(--dgv-brass); margin:0 0 18px;
}
.dgv-root h2.dgv-h1 {
  font-family:var(--dgv-display); font-weight:700;
  font-size:clamp(28px,6.5vw,44px); line-height:1.05; letter-spacing:-.02em;
  margin:0 0 14px; color:var(--dgv-paper); text-transform:none;
}
.dgv-lede {
  font-family:var(--dgv-body); font-size:16px; line-height:1.6;
  color:var(--dgv-muted); margin:0 0 34px;
}

.dgv-panel {
  background:var(--dgv-panel); border:1px solid var(--dgv-edge);
  border-radius:3px; padding:26px 22px 8px;
}
.dgv-step { margin-bottom:24px; }
.dgv-steplabel { line-height:1.2; margin-bottom:8px; }
.dgv-steplabel .dgv-nr { margin-right:10px; }
.dgv-nr { font-size:11px; color:var(--dgv-brass); letter-spacing:.1em; }
.dgv-name {
  font-size:11px; letter-spacing:.19em; text-transform:uppercase;
  color:var(--dgv-muted);
}
.dgv-chips { margin:-3.5px; font-size:0; }

.dgv-root button.dgv-chip {
  display:inline-block; margin:3.5px; vertical-align:top;
  font-family:inherit; font-size:13px; line-height:1.2; padding:9px 14px;
  background:transparent; color:var(--dgv-paper);
  border:1px solid var(--dgv-edge); border-radius:2px;
  cursor:pointer; text-transform:none; letter-spacing:0;
  transition:border-color .15s, color .15s, box-shadow .15s;
}
.dgv-root button.dgv-chip:hover { border-color:var(--dgv-verdigris); background:transparent; }
.dgv-root button.dgv-chip:focus-visible { outline:2px solid var(--dgv-brass); outline-offset:2px; }
.dgv-root button.dgv-chip[aria-pressed="true"] {
  border-color:var(--dgv-brass); color:var(--dgv-brass);
  box-shadow:inset 0 0 0 1px var(--dgv-brass);
}

.dgv-slot {
  display:flex; align-items:center; gap:12px; margin:26px 2px 0;
  font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--dgv-muted);
}
.dgv-slot span { flex:1; height:1px; background:var(--dgv-edge); }
.dgv-slot em { font-style:normal; }

.dgv-readout {
  background:var(--dgv-paper); color:var(--dgv-ink); border-radius:3px;
  padding:34px 26px; margin-top:26px;
  animation:dgv-feed .45s cubic-bezier(.2,.7,.3,1);
}
@keyframes dgv-feed { from { opacity:0; transform:translateY(-14px); } }
@media (prefers-reduced-motion:reduce) { .dgv-readout { animation:none; } }

.dgv-rohead {
  font-size:10px; line-height:1.2; letter-spacing:.22em; text-transform:uppercase;
  color:#8A9AAF; border-bottom:1px solid #D8D9C4; padding-bottom:9px; margin:0 0 22px;
}
.dgv-sec { margin-bottom:24px; }
.dgv-sec:last-child { margin-bottom:0; }
.dgv-kicker {
  font-size:10px; line-height:1.2; letter-spacing:.2em; text-transform:uppercase;
  color:#8A9AAF; margin:0 0 7px;
}
.dgv-root h3.dgv-h3 {
  font-family:var(--dgv-display); font-weight:700; font-size:19px;
  letter-spacing:-.01em; margin:0 0 7px; color:var(--dgv-ink); text-transform:none;
}
.dgv-root p.dgv-p {
  font-family:var(--dgv-body); font-size:15.5px; line-height:1.62;
  margin:0 0 8px; color:#2B3B4F;
}
.dgv-root p.dgv-p:last-child { margin-bottom:0; }
.dgv-stop { border-left:3px solid var(--dgv-warn); padding-left:16px; }
.dgv-p + .dgv-p { margin-top:11px; }
.dgv-note { border-left:2px solid var(--dgv-brass); padding-left:14px; margin-top:14px; }
.dgv-notehead {
  font-family:var(--dgv-utility); font-size:10px; line-height:1.2;
  letter-spacing:.2em; text-transform:uppercase;
  color:#8A9AAF; margin:0 0 6px;
}
.dgv-gate { border-left:2px solid var(--dgv-warn); padding-left:14px; margin-top:12px; }
.dgv-gate .dgv-p { font-size:14.5px; color:#5A5347; }

/* Textjustering styrs av temat/sektionen. Vill du tvinga vänsterställt,
   avkommentera raden nedan:
.dgv-root, .dgv-root h2, .dgv-root h3, .dgv-root p { text-align:left; }
*/

.dgv-foot {
  font-size:11px; line-height:1.7; color:var(--dgv-muted);
  margin:26px 0 0; text-align:center;
}

@media (max-width:520px) {
  .dgv-root { padding:34px 14px 42px; }
  .dgv-panel { padding:20px 16px 4px; }
  .dgv-readout { padding:26px 18px; }
}
