.v30{max-width:56rem;margin:0 auto;padding:1rem}
.v30 .lead{font-size:1.05rem}
.v30 .card{border:1px solid var(--line,#ddd);border-radius:10px;padding:.8rem 1rem;margin:.8rem 0}
.v30 .muted{color:var(--muted,#666);font-size:.9rem}
.v30 .fine{font-size:.8rem}
.v30 .filters{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin:1rem 0}
.v30 .votes{width:100%;border-collapse:collapse;margin:.5rem 0;font-variant-numeric:tabular-nums}
.v30 .votes th,.v30 .votes td{padding:.2rem .5rem;text-align:right;border-bottom:1px solid var(--line,#eee)}
.v30 .votes th:first-child,.v30 .votes td:last-child{text-align:left}
.v30 .votes thead th{font-weight:600;font-size:.85rem}
.v30 .w-ja td:last-child{font-weight:600}.v30 .w-nej td:last-child{font-weight:600}
.v30 .pager{display:flex;gap:1rem;justify-content:center;margin:1rem 0}
@media (max-width:480px){.v30{padding:.6rem}.v30 .votes th,.v30 .votes td{padding:.2rem .3rem}}
.v30 .v30nav{display:flex;gap:.4rem;flex-wrap:wrap;margin:.4rem 0 1rem}
.v30 .v30nav a{padding:.3rem .7rem;border:1px solid var(--line,#ddd);border-radius:999px;text-decoration:none}
.v30 .v30nav a[aria-current=page]{font-weight:600;background:var(--line,#eee)}
.v30 .pm{display:inline-block;width:.8em;height:.8em;border-radius:50%;background:var(--c);margin-right:.35em;vertical-align:-.05em;box-shadow:0 0 0 1px rgba(0,0,0,.25)}
.v30 .seat{display:inline-block;margin-right:.9rem;white-space:nowrap}
.v30 .vs{margin:.3rem 0}
.v30 .proposal{margin:.4rem 0}.v30 .proposal summary{cursor:pointer;font-weight:600}
.v30 .ptext{white-space:pre-line;margin:.5rem 0;padding:.5rem .8rem;border-left:3px solid var(--line,#ccc);max-height:22rem;overflow:auto}
.v30 .scroll{overflow-x:auto}
.v30 .matrix{border-collapse:separate;border-spacing:3px;font-variant-numeric:tabular-nums}
.v30 .matrix th{font-weight:600;font-size:.85rem;text-align:left;white-space:nowrap}
.v30 .matrix td{text-align:center;min-width:3.4rem;border-radius:6px;padding:0;background:color-mix(in srgb,#3b6ea5 calc(var(--p,0%) * .6),transparent)}
.v30 .matrix td a{display:block;padding:.45rem .3rem;text-decoration:none;color:inherit}
.v30 .matrix td.self,.v30 .matrix td.none{background:none;color:var(--muted,#888);padding:.45rem .3rem}
.v30 .notes{line-height:1.5}
.v30 .chips{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}
.v30 .chip{padding:.25rem .65rem;border:1px solid var(--line,#ddd);border-radius:999px;text-decoration:none}
.v30 .chip.on{font-weight:600;background:var(--line,#eee)}
.v30 .people{list-style:none;padding:0;columns:2 16rem}
.v30 .people li{padding:.2rem 0;break-inside:avoid}
.v30 .stats p{margin:.3rem 0}
.v30 .votes.person td.l{text-align:left}
.v30 .votes.person .r-ja b,.v30 .votes.person .r-nej b{font-weight:700}
.v30 .votes.person .r-franvarande{opacity:.65}
.v30 .tl fieldset{border:1px solid var(--line,#ddd);border-radius:8px;padding:.4rem .8rem;display:flex;gap:.2rem 1rem;flex-wrap:wrap}
.v30 .chk{white-space:nowrap}
.v30 .day h2{font-size:1.05rem;margin:1.2rem 0 .3rem;position:sticky;top:0;background:var(--bg,#fff);padding:.2rem 0}
.v30 .evs,.v30 .thread{list-style:none;padding:0;margin:0}
.v30 .ev{padding:.5rem 0;border-bottom:1px solid var(--line,#eee)}
.v30 .ev .tag{font-size:.75rem;padding:.05rem .45rem;border:1px solid var(--line,#ccc);border-radius:999px;margin-right:.4rem;white-space:nowrap}
.v30 .ev .evt{font-weight:600}
.v30 .ev .x{font-weight:400;opacity:.7}
.v30 .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.v30 .ev .ing{margin:.2rem 0;color:var(--muted,#555)}
.v30 .ev p{margin:.15rem 0}
.v30 .dayh h2{font-size:1.05rem;margin:1.2rem 0 .2rem}
.v30 .evs.compact li{padding:.15rem 0}
.v30 .pi{width:1.35em;height:1.35em;vertical-align:-.35em;margin-right:.35em;border-radius:22%;background:#fff;padding:1px;box-sizing:border-box;object-fit:contain}
.v30 .res{margin:.4rem 0}
.v30 .resv{display:inline-block;margin:0 1rem .2rem 0;white-space:nowrap}
.v30 .rp{margin-right:.5rem}
.v30 a.plain{color:inherit;text-decoration:none}.v30 a.plain:hover{text-decoration:underline}
.v30 .votes tfoot .total th,.v30 .votes tfoot .total td{font-weight:700;border-top:2px solid var(--line,#999);border-bottom:none;padding-top:.35rem}
.v30 .votes td a{color:inherit;text-decoration:underline dotted;padding:.1rem .3rem}
.v30 .outcome{margin:.5rem 0;padding:.5rem .7rem;border-radius:8px;background:rgba(127,127,127,.12)}
.v30 .verdict{display:inline-block;padding:.05rem .55rem;border-radius:999px;color:#fff;margin-right:.3rem}
.v30 .v-bifall{background:#2e7d32}.v30 .v-avslag{background:#b3261e}
.v30 .grp{margin:1rem 0 .2rem;font-size:1rem}
.v30 .who .chips{margin:.4rem 0}
.v30 .big{font-size:1.6rem;font-weight:600;margin:.2rem 0}
.v30 .spark{width:100%;max-width:240px;height:48px;color:var(--muted,#555)}
.v30 .quote{margin:.4rem 0;padding:.3rem .8rem;border-left:3px solid var(--line,#ccc);font-style:italic}
.v30 .unit{font-size:1rem;font-weight:400}
.v30 .how{margin:.2rem 0 .6rem}
.v30 .chart{width:100%;max-width:420px;height:auto;color:var(--muted,#444)}
.v30 .chart .axis{stroke:var(--line,#bbb);stroke-width:1}
.v30 .chart .elec{stroke:var(--muted,#888);stroke-dasharray:3 3;stroke-width:1}
.v30 .chart .tick{font-size:9px;fill:var(--muted,#666)}
.v30 .chart .tick.end{text-anchor:end}.v30 .chart .tick.mid{text-anchor:middle}
.v30 .since{margin:.4rem 0;padding-left:1.1rem}
.v30 .sum td:first-child{text-align:left}.v30 .sum th,.v30 .sum td{text-align:left}
.v30 .legend{font-size:.85rem;margin:.2rem 0}
.v30 .sw{display:inline-block;width:1.6rem;border-top:2px solid currentColor;vertical-align:middle;margin:0 .3rem 0 .6rem}
.v30 .sw.dashed{border-top-style:dashed;opacity:.7}

/* "Partier jämfört" on a phone (iPhone 13 mini = 375 px): the whole matrix fits without sideways scrolling.
   Column heads stack icon over letters, cells shrink to their number. */
@media (max-width:480px){
  .v30 .matrix{border-spacing:2px;width:100%;table-layout:fixed}
  .v30 .matrix th{font-size:.7rem}
  .v30 .matrix thead th{text-align:center}
  .v30 .matrix thead th .pi,.v30 .matrix thead th .pc{display:block;margin:0 auto}
  .v30 .matrix tbody th{width:2.9rem}
  .v30 .matrix tbody th .pi{margin-right:.2rem;width:1.1em;height:1.1em}
  .v30 .matrix td{min-width:0;font-size:.68rem;white-space:nowrap;border-radius:4px}
  .v30 .matrix td a,.v30 .matrix td.self,.v30 .matrix td.none{padding:.5rem 0}
}

.v30 .matrix td a{white-space:nowrap}

/* the page says when a source was last read to the end; the colour only appears when that was long ago */
.v30 .synced{color:var(--muted,#666)}
.v30 .synced.stale{color:#b3261e;font-weight:600}
/* a long lead text (a betänkande's summary) is folded after its first paragraph */
.v30 .more{margin:.3rem 0}
.v30 .more summary{cursor:pointer;font-size:.85rem;color:var(--muted,#555)}
.v30 .more .ptext{max-height:18rem;font-size:.92rem}
.v30 .few{border-style:dashed}
.v30 .t-votering .ing{color:inherit}

/* "Läget i korthet" on a phone: one block per measure instead of a five-column table that scrolls sideways */
@media (max-width:560px){
  .v30 .sum thead{display:none}
  .v30 .sum,.v30 .sum tbody,.v30 .sum tr,.v30 .sum td{display:block;width:100%}
  .v30 .sum tr{padding:.55rem 0;border-bottom:1px solid var(--line,#ddd)}
  .v30 .sum td{border:0;padding:.05rem 0;text-align:left}
  .v30 .sum td:first-child{font-weight:600;font-size:1rem}
  .v30 .sum td[data-l]::before{content:attr(data-l) ": ";color:var(--muted,#666);font-size:.8rem}
  .v30 .sum td.none{display:none}
}

.v30 .upcoming .agenda{margin:.15rem 0 .35rem;padding-left:1.1rem;font-size:.9rem;color:var(--muted,#555)}
.v30 .upcoming .agenda li{padding:.05rem 0}

/* form controls take the page's own colours (the browser's default select was mid-grey in dark mode, contrast 4.46 against 4.5) */
.v30 select,.v30 input[type=search]{background:var(--surface,#fff);color:var(--text,inherit);border:1px solid var(--line,#ccc);border-radius:8px;padding:.3rem .5rem;font:inherit}
.v30 .dec .dt{font-size:1.17em;margin:1em 0}
/* buttons take the page's colours too (the default button was mid-grey in dark mode, contrast 4.46) */
.v30 .btn{background:var(--surface-2,#eee);color:var(--text,inherit);border:1px solid var(--line,#ccc);border-radius:8px;padding:.3rem .9rem;font:inherit;cursor:pointer}
