:root {
  color-scheme: dark;
  --bg: #070a13;
  --panel: rgba(15, 23, 42, 0.78);
  --panel-2: rgba(2, 6, 23, 0.72);
  --line: rgba(148, 163, 184, 0.22);
  --text: #e5eefc;
  --muted: #9fb0c8;
  --soft: #cbd5e1;
  --accent: #38bdf8;
  --good: #22c55e;
  --warn: #f59e0b;
  --bad: #ef4444;
  --violet: #a855f7;
  --shadow: 0 24px 80px rgba(0, 0, 0, 0.35);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
body {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(circle at 15% 15%, rgba(56, 189, 248, 0.22), transparent 31rem),
    radial-gradient(circle at 80% 5%, rgba(168, 85, 247, 0.18), transparent 28rem),
    linear-gradient(145deg, #040713 0%, #07111f 45%, #080b16 100%);
  color: var(--text);
  overflow-x: hidden;
}
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.bg-orb {
  position: fixed;
  border-radius: 999px;
  filter: blur(22px);
  opacity: .45;
  pointer-events: none;
  z-index: 0;
}
.orb-a { width: 18rem; height: 18rem; left: -7rem; top: 20rem; background: rgba(14, 165, 233, .3); }
.orb-b { width: 22rem; height: 22rem; right: -9rem; bottom: 5rem; background: rgba(244, 63, 94, .18); }
.app-shell {
  position: relative;
  z-index: 1;
  width: min(1480px, calc(100% - 28px));
  margin: 0 auto;
  padding: 28px 0 50px;
}
.boot-card, .auth-card, .panel, .stat-card, .event-card, .region-card, .election-card {
  background: linear-gradient(180deg, rgba(15, 23, 42, 0.84), rgba(2, 6, 23, 0.68));
  border: 1px solid var(--line);
  border-radius: 26px;
  box-shadow: var(--shadow);
  backdrop-filter: blur(14px);
}
.boot-card {
  min-height: 360px;
  display: grid;
  place-items: center;
  text-align: center;
  padding: 50px 24px;
}
.loader {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: 4px solid rgba(148, 163, 184, .22);
  border-top-color: var(--accent);
  animation: spin 1s linear infinite;
}
@keyframes spin { to { transform: rotate(360deg); } }
.hero {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 22px;
  align-items: stretch;
}
.hero-copy {
  padding: 34px;
  min-height: 540px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background:
    linear-gradient(135deg, rgba(56,189,248,.18), transparent 42%),
    linear-gradient(180deg, rgba(15, 23, 42, 0.86), rgba(2, 6, 23, 0.72));
  border: 1px solid var(--line);
  border-radius: 32px;
  box-shadow: var(--shadow);
  overflow: hidden;
  position: relative;
}
.hero-copy::after {
  content: "";
  position: absolute;
  right: -100px;
  bottom: -160px;
  width: 390px;
  height: 390px;
  border: 1px solid rgba(56, 189, 248, .24);
  border-radius: 48%;
  transform: rotate(-18deg);
}
.brand-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.brand {
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.logo-mark {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: linear-gradient(135deg, #38bdf8, #a855f7);
  color: white;
  box-shadow: 0 15px 40px rgba(56, 189, 248, .3);
}
.pill {
  border: 1px solid rgba(56, 189, 248, .34);
  color: #bfebff;
  background: rgba(8, 47, 73, .45);
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 13px;
  white-space: nowrap;
}
.hero h1 {
  font-size: clamp(42px, 6vw, 86px);
  line-height: .92;
  margin: 60px 0 18px;
  letter-spacing: -0.07em;
}
.gradient-text {
  background: linear-gradient(90deg, #e0f2fe, #38bdf8 45%, #c084fc 80%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.lead {
  color: var(--soft);
  max-width: 720px;
  font-size: 18px;
  line-height: 1.65;
}
.feature-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 32px;
}
.feature {
  padding: 15px;
  border-radius: 18px;
  background: rgba(15, 23, 42, .62);
  border: 1px solid var(--line);
}
.feature b { display: block; margin-bottom: 6px; }
.feature span { color: var(--muted); font-size: 13px; line-height: 1.45; }
.auth-card {
  padding: 24px;
  align-self: stretch;
}
.tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding: 5px;
  background: rgba(2, 6, 23, .6);
  border-radius: 18px;
  border: 1px solid var(--line);
  margin-bottom: 20px;
}
.tab-btn {
  border: 0;
  background: transparent;
  color: var(--muted);
  border-radius: 14px;
  padding: 12px;
  font-weight: 800;
}
.tab-btn.active { background: rgba(56, 189, 248, .15); color: #e0f2fe; }
.form { display: grid; gap: 13px; }
.form label { display: grid; gap: 7px; color: var(--muted); font-size: 13px; font-weight: 700; }
.input, .select, .textarea {
  width: 100%;
  border: 1px solid var(--line);
  background: rgba(2, 6, 23, .72);
  color: var(--text);
  border-radius: 15px;
  padding: 12px 13px;
  outline: none;
}
.input:focus, .select:focus { border-color: rgba(56, 189, 248, .65); box-shadow: 0 0 0 3px rgba(56, 189, 248, .12); }
.two { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.btn {
  border: 0;
  border-radius: 16px;
  padding: 12px 16px;
  color: white;
  background: linear-gradient(135deg, #0ea5e9, #7c3aed);
  font-weight: 900;
  box-shadow: 0 16px 36px rgba(14, 165, 233, .18);
}
.btn:hover { transform: translateY(-1px); filter: brightness(1.06); }
.btn.secondary {
  background: rgba(15, 23, 42, .7);
  border: 1px solid var(--line);
  box-shadow: none;
  color: #dbeafe;
}
.btn.danger { background: linear-gradient(135deg, #ef4444, #f97316); }
.btn.good { background: linear-gradient(135deg, #22c55e, #0ea5e9); }
.btn:disabled { opacity: .5; cursor: not-allowed; transform: none; }
.flash {
  margin: 12px 0;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(56, 189, 248, .13);
  border: 1px solid rgba(56, 189, 248, .28);
  color: #dff7ff;
  line-height: 1.45;
}
.flash.error { background: rgba(239, 68, 68, .12); border-color: rgba(239, 68, 68, .28); color: #fecaca; }
.flash.success { background: rgba(34, 197, 94, .12); border-color: rgba(34, 197, 94, .28); color: #bbf7d0; }
.range-stack { display: grid; gap: 10px; margin-top: 4px; }
.range-row {
  display: grid;
  grid-template-columns: 1fr 160px 1fr;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border-radius: 16px;
  background: rgba(15, 23, 42, .48);
  border: 1px solid rgba(148, 163, 184, .13);
}
.range-row small:first-child { text-align: right; }
.range-row small { color: var(--muted); }
input[type="range"] { accent-color: var(--accent); width: 100%; }
.topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: rgba(2, 6, 23, .5);
  backdrop-filter: blur(12px);
}
.topbar-left { display: flex; align-items: center; gap: 14px; min-width: 0; }
.party-dot { width: 14px; height: 14px; border-radius: 50%; box-shadow: 0 0 0 5px rgba(255,255,255,.07); }
.topbar h1 { margin: 0; font-size: 22px; }
.topbar p { margin: 3px 0 0; color: var(--muted); }
.layout {
  display: grid;
  grid-template-columns: 330px 1fr;
  gap: 18px;
  align-items: start;
}
.sidebar { display: grid; gap: 14px; position: sticky; top: 14px; }
.panel { padding: 18px; }
.panel h2, .panel h3 { margin: 0 0 12px; }
.muted { color: var(--muted); }
.tiny { font-size: 12px; color: var(--muted); }
.stat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 18px; }
.stat-card { padding: 16px; }
.stat-card small { color: var(--muted); display: block; margin-bottom: 5px; }
.stat-card strong { font-size: 26px; letter-spacing: -0.03em; }
.stat-card .trend { display: block; margin-top: 8px; color: var(--soft); font-size: 12px; }
.main-stack { display: grid; gap: 18px; }
.section-head { display: flex; align-items: end; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.section-head h2 { margin: 0; }
.events-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.event-card { padding: 18px; position: relative; overflow: hidden; }
.event-card::before {
  content: "";
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, #38bdf8, #a855f7);
}
.event-meta { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 10px; }
.tag {
  padding: 5px 9px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: rgba(15, 23, 42, .68);
  color: #dbeafe;
  font-size: 12px;
}
.event-card h3 { margin: 0 0 8px; }
.event-card p { color: var(--soft); line-height: 1.55; }
.choice-stack { display: grid; gap: 9px; margin-top: 14px; }
.choice-btn {
  text-align: left;
  border: 1px solid rgba(56, 189, 248, .22);
  background: rgba(2, 6, 23, .58);
  color: var(--text);
  padding: 12px;
  border-radius: 16px;
}
.choice-btn:hover { background: rgba(56, 189, 248, .12); border-color: rgba(56, 189, 248, .5); }
.choice-btn small { display: block; color: var(--muted); margin-top: 5px; line-height: 1.35; }
.map-grid { display: grid; grid-template-columns: 1fr 360px; gap: 14px; align-items: stretch; }
.region-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.region-card {
  padding: 12px;
  min-height: 112px;
  box-shadow: none;
  border-radius: 18px;
}
.region-card header { display: flex; justify-content: space-between; gap: 10px; align-items: start; }
.region-card b { font-size: 14px; }
.region-card small { color: var(--muted); }
.bar {
  height: 9px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(148, 163, 184, .15);
  margin: 10px 0 8px;
}
.bar span { display: block; height: 100%; width: var(--w); background: linear-gradient(90deg, var(--accent), #a855f7); border-radius: inherit; }
.region-stats { display: flex; gap: 6px; flex-wrap: wrap; }
.region-stats span { font-size: 11px; color: var(--muted); border: 1px solid rgba(148,163,184,.15); border-radius: 999px; padding: 4px 7px; }
.campaign-box { display: grid; gap: 10px; }
.election-card { padding: 18px; }
.election-top { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.progress-wrap { margin: 12px 0 6px; height: 12px; border-radius: 999px; overflow: hidden; background: rgba(148, 163, 184, .15); }
.progress-wrap span { display: block; height: 100%; background: linear-gradient(90deg, #22c55e, #38bdf8, #a855f7); width: var(--w); }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 10px 8px; border-bottom: 1px solid rgba(148, 163, 184, .13); text-align: left; }
th { color: var(--muted); font-size: 12px; text-transform: uppercase; letter-spacing: .05em; }
.party-chip { display: inline-flex; align-items: center; gap: 8px; }
.chip-dot { width: 10px; height: 10px; border-radius: 50%; }
.leaderboard { display: grid; gap: 8px; }
.leader-row { display: grid; grid-template-columns: 1fr auto; gap: 10px; align-items: center; padding: 10px; border-radius: 15px; background: rgba(15,23,42,.48); border: 1px solid rgba(148,163,184,.12); }
.world-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
.world-card { border: 1px solid rgba(148,163,184,.14); background: rgba(15,23,42,.45); padding: 10px; border-radius: 15px; }
.world-card.locked { opacity: .55; }
.ideology-list { display: grid; gap: 10px; }
.ideology-item { display: grid; gap: 6px; }
.ideology-item header { display: flex; justify-content: space-between; color: var(--muted); font-size: 12px; }
.dev-row { display: grid; grid-template-columns: 1fr; gap: 9px; margin-top: 10px; }
.empty { padding: 22px; border-radius: 20px; border: 1px dashed rgba(148, 163, 184, .24); color: var(--muted); text-align: center; background: rgba(2,6,23,.35); }
a { color: #7dd3fc; }
@media (max-width: 1120px) {
  .hero, .layout, .map-grid { grid-template-columns: 1fr; }
  .sidebar { position: static; }
  .stat-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 760px) {
  .app-shell { width: min(100% - 18px, 1480px); padding-top: 12px; }
  .topbar { align-items: stretch; flex-direction: column; }
  .feature-grid, .events-grid, .region-grid, .two, .stat-grid { grid-template-columns: 1fr; }
  .hero-copy { padding: 22px; min-height: auto; }
  .hero h1 { margin-top: 38px; }
  .range-row { grid-template-columns: 1fr; }
  .range-row small:first-child { text-align: left; }
}
.menu-list {
  display: grid;
  gap: 8px;
}
.menu-btn {
  width: 100%;
  text-align: left;
  border: 1px solid rgba(148, 163, 184, .14);
  background: rgba(15, 23, 42, .55);
  color: var(--soft);
  padding: 11px 12px;
  border-radius: 14px;
  font-weight: 800;
}
.menu-btn:hover,
.menu-btn.active {
  color: #e0f2fe;
  border-color: rgba(56, 189, 248, .55);
  background: rgba(56, 189, 248, .14);
}
.viewbar {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  padding: 18px;
  border-radius: 24px;
  border: 1px solid var(--line);
  background: rgba(2, 6, 23, .52);
  box-shadow: var(--shadow);
}
.viewbar h2 { margin: 0 0 4px; }
.viewbar p { margin: 0; }
.viewbar-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}
.viewbar-actions .menu-btn {
  width: auto;
  min-width: 92px;
  text-align: center;
}
.country-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.country-card {
  border: 1px solid rgba(148, 163, 184, .15);
  background: rgba(15, 23, 42, .45);
  border-radius: 18px;
  padding: 13px;
  min-height: 118px;
}
.country-card.active,
.world-card.selected {
  border-color: rgba(56, 189, 248, .65);
  background: rgba(56, 189, 248, .13);
}
.country-card div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}
.country-card span {
  color: #bae6fd;
  border: 1px solid rgba(56, 189, 248, .25);
  border-radius: 999px;
  padding: 3px 7px;
  font-size: 11px;
}
.country-card p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.4;
  margin: 10px 0 8px;
}
.country-card small { color: var(--soft); }
.region-deep-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.region-deep-card {
  border: 1px solid rgba(148, 163, 184, .15);
  background: rgba(15, 23, 42, .45);
  border-radius: 20px;
  padding: 15px;
}
.region-deep-card.home {
  border-color: rgba(34, 197, 94, .45);
  background: rgba(34, 197, 94, .08);
}
.region-deep-card header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}
.region-deep-card header span {
  color: #bae6fd;
  font-weight: 900;
}
.region-deep-card p {
  color: var(--soft);
  line-height: 1.5;
  margin: 10px 0;
}
@media (max-width: 1120px) {
  .country-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .viewbar { align-items: stretch; flex-direction: column; }
  .viewbar-actions { justify-content: flex-start; }
}
@media (max-width: 760px) {
  .country-grid, .region-deep-grid { grid-template-columns: 1fr; }
  .viewbar-actions .menu-btn { flex: 1 1 44%; min-width: 0; }
}

/* v0.4 map + finance + newspaper layer */
.wide { width: 100%; }
.mini-stats, .quick-actions, .dev-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.mini-stats span {
  border: 1px solid rgba(148, 163, 184, .18);
  background: rgba(15, 23, 42, .46);
  border-radius: 999px;
  padding: 6px 9px;
  color: var(--soft);
  font-size: 12px;
}
.map-hub {
  display: grid;
  gap: 16px;
}
.map-panel { overflow: hidden; }
.photo-map {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 24px;
  border: 1px solid rgba(148, 163, 184, .22);
  background: rgba(2, 6, 23, .55);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
}
.photo-map img {
  display: block;
  width: 100%;
  height: auto;
  user-select: none;
  filter: saturate(1.04) contrast(1.03) brightness(.86);
}
.map-hotspot {
  position: absolute;
  transform: translate(-50%, -50%);
  border: 0;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: rgba(15, 23, 42, .72);
  color: #e0f2fe;
  outline: 2px solid rgba(255, 255, 255, .55);
  box-shadow: 0 0 0 5px rgba(56, 189, 248, .12), 0 10px 22px rgba(0,0,0,.35);
  display: grid;
  place-items: center;
  font-weight: 950;
  font-size: 10px;
  transition: transform .14s ease, background .14s ease, outline-color .14s ease;
  z-index: 2;
}
.map-hotspot::after {
  content: "";
  position: absolute;
  inset: -11px;
  border-radius: inherit;
}
.map-hotspot:hover {
  transform: translate(-50%, -50%) scale(1.12);
  background: rgba(56, 189, 248, .92);
  outline-color: white;
  z-index: 5;
}
.country-hotspot.current,
.region-hotspot.home {
  background: rgba(34, 197, 94, .86);
  box-shadow: 0 0 0 6px rgba(34, 197, 94, .18), 0 10px 24px rgba(0,0,0,.38);
}
.map-hotspot.active {
  width: 42px;
  height: 42px;
  background: linear-gradient(135deg, #38bdf8, #a855f7);
  outline-color: rgba(255,255,255,.92);
  z-index: 6;
}
.region-hotspot {
  width: 40px;
  height: 40px;
  font-size: 10px;
}
.map-detail-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 12px;
  padding: 14px 16px;
  border: 1px solid rgba(148, 163, 184, .16);
  background: rgba(15, 23, 42, .5);
  border-radius: 18px;
}
.map-detail-card h3 { margin: 0 0 4px; }
.tag-good { border-color: rgba(34, 197, 94, .35); color: #bbf7d0; background: rgba(34, 197, 94, .12); }
.generic-map-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.generic-region-btn {
  text-align: left;
  border: 1px solid rgba(148, 163, 184, .16);
  background: rgba(15, 23, 42, .5);
  color: var(--text);
  border-radius: 18px;
  padding: 14px;
}
.generic-region-btn span { display: block; color: var(--muted); font-size: 12px; margin-top: 5px; }
.generic-region-btn.active { border-color: rgba(56, 189, 248, .55); background: rgba(56, 189, 248, .12); }
.region-analysis-layout {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 16px;
  align-items: start;
}
.region-deep-grid.compact {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 12px;
}
.region-deep-card {
  text-align: left;
  color: var(--text);
}
.region-deep-card.selected {
  border-color: rgba(56, 189, 248, .7);
  background: rgba(56, 189, 248, .1);
}
.region-detail-card {
  border: 1px solid rgba(148, 163, 184, .16);
  background: linear-gradient(180deg, rgba(15, 23, 42, .72), rgba(2, 6, 23, .55));
  border-radius: 24px;
  padding: 18px;
  box-shadow: var(--shadow);
}
.region-detail-card.compact {
  margin-top: 12px;
  box-shadow: none;
}
.region-detail-card > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.region-detail-card h2, .region-detail-card h3 { margin: 0 0 8px; }
.region-detail-card header strong {
  font-size: 28px;
  color: #bae6fd;
  white-space: nowrap;
}
.bar.big { height: 13px; margin: 12px 0 16px; }
.data-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
  margin: 14px 0;
}
.data-grid span {
  display: grid;
  gap: 3px;
  border: 1px solid rgba(148, 163, 184, .14);
  background: rgba(15, 23, 42, .5);
  border-radius: 15px;
  padding: 11px;
}
.data-grid b { font-size: 18px; }
.data-grid small { color: var(--muted); font-size: 11px; }
.analysis-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 12px;
}
.analysis-columns ul {
  margin: 0;
  padding-left: 18px;
  color: var(--soft);
  line-height: 1.55;
}
.rival-list { display: grid; gap: 8px; }
.rival-list span {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(148, 163, 184, .14);
  background: rgba(2, 6, 23, .36);
  border-radius: 999px;
  padding: 8px 10px;
  color: var(--soft);
  font-size: 13px;
}
.rival-list i {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  display: inline-block;
}
.company-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
  color: var(--soft);
}
.company-row span {
  border: 1px solid rgba(56, 189, 248, .18);
  background: rgba(8, 47, 73, .28);
  color: #dff7ff;
  border-radius: 999px;
  padding: 6px 9px;
  font-size: 12px;
}
.recommended-actions { margin-top: 16px; }
.dash-grid, .finance-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.milestone-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 14px;
}
.milestone {
  border: 1px solid rgba(148, 163, 184, .15);
  background: rgba(15, 23, 42, .45);
  border-radius: 16px;
  padding: 12px;
}
.milestone b { display:block; font-size: 20px; }
.milestone span { color: var(--muted); font-size: 12px; }
.milestone.done { border-color: rgba(34, 197, 94, .45); background: rgba(34, 197, 94, .1); }
.newspaper-panel { overflow: hidden; }
.news-list { display: grid; gap: 12px; }
.news-list.compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.news-card {
  border: 1px solid rgba(148, 163, 184, .16);
  background: rgba(15, 23, 42, .52);
  border-radius: 20px;
  padding: 16px;
}
.news-card header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.news-card h3 { margin: 10px 0 8px; }
.news-card p { color: var(--soft); line-height: 1.55; margin: 0 0 8px; }
.news-card.tone-positive { border-color: rgba(34, 197, 94, .28); }
.news-card.tone-negative { border-color: rgba(239, 68, 68, .28); }
.news-card.tone-warning { border-color: rgba(245, 158, 11, .34); }
.funding-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.funding-card {
  text-align: left;
  border: 1px solid rgba(148, 163, 184, .16);
  color: var(--text);
  background: rgba(15, 23, 42, .46);
  border-radius: 18px;
  padding: 14px;
}
.funding-card:hover { border-color: rgba(56, 189, 248, .45); background: rgba(56, 189, 248, .1); }
.funding-card b, .funding-card span, .funding-card small { display: block; }
.funding-card span { color: #bbf7d0; font-weight: 900; margin: 7px 0; }
.funding-card small { color: var(--muted); line-height: 1.45; }
.finance-status {
  border: 1px solid rgba(148, 163, 184, .15);
  background: rgba(15, 23, 42, .42);
  border-radius: 20px;
  padding: 16px;
}
.finance-log { display: grid; gap: 8px; }
.finance-log div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-top: 1px solid rgba(148, 163, 184, .12);
  padding-top: 8px;
}
.money-plus { color: #bbf7d0; }
.money-minus { color: #fecaca; }
@media (max-width: 1180px) {
  .region-analysis-layout, .dash-grid, .finance-grid { grid-template-columns: 1fr; }
  .generic-map-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .map-hotspot { width: 28px; height: 28px; font-size: 7px; }
  .region-hotspot { width: 30px; height: 30px; font-size: 7px; }
  .data-grid, .analysis-columns, .milestone-grid, .funding-grid, .news-list.compact, .region-deep-grid.compact { grid-template-columns: 1fr; }
  .map-detail-card, .region-detail-card > header { align-items: stretch; flex-direction: column; }
}

/* v0.5 polygon map layer + institutions */
.photo-map.polygon-mode img { filter: saturate(.98) contrast(1.08) brightness(.82); }
.map-svg-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.map-poly {
  fill: rgba(56, 189, 248, 0.02);
  stroke: rgba(255, 255, 255, 0.12);
  stroke-width: .28;
  vector-effect: non-scaling-stroke;
  cursor: pointer;
  transition: fill .16s ease, stroke .16s ease, filter .16s ease;
}
.map-poly:hover {
  fill: rgba(56, 189, 248, 0.24);
  stroke: rgba(255, 255, 255, .9);
  filter: drop-shadow(0 0 7px rgba(56, 189, 248, .7));
}
.map-poly.active { fill: rgba(168, 85, 247, .34); stroke: rgba(255,255,255,.95); }
.map-poly.current, .map-poly.home { fill: rgba(34, 197, 94, .25); stroke: rgba(187,247,208,.9); }
.map-label {
  position: absolute;
  transform: translate(-50%, -50%);
  z-index: 3;
  border: 1px solid rgba(255,255,255,.25);
  background: rgba(2, 6, 23, .55);
  color: #e0f2fe;
  box-shadow: 0 8px 22px rgba(0,0,0,.35);
  border-radius: 999px;
  min-width: 28px;
  height: 22px;
  padding: 0 7px;
  display: grid;
  place-items: center;
  font-weight: 950;
  font-size: 10px;
  backdrop-filter: blur(5px);
}
.map-label:hover { background: rgba(56, 189, 248, .86); color: white; }
.map-label.active { background: linear-gradient(135deg, #38bdf8, #a855f7); border-color: white; }
.map-label.current, .map-label.home { background: rgba(34, 197, 94, .78); color: white; }
.region-label { min-width: 36px; height: 24px; }
.data-source-note {
  border: 1px solid rgba(56, 189, 248, .14);
  background: rgba(8, 47, 73, .22);
  padding: 9px 11px;
  border-radius: 14px;
  color: #d7f3ff;
}
.calendar-grid, .ministry-grid, .person-grid, .demand-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.calendar-grid div, .ministry-card, .person-grid div, .demand-grid div, .president-card, .negotiation-card {
  border: 1px solid rgba(148, 163, 184, .15);
  background: rgba(15, 23, 42, .48);
  border-radius: 18px;
  padding: 14px;
}
.calendar-grid b, .calendar-grid span, .calendar-grid strong,
.person-grid b, .person-grid span { display: block; }
.calendar-grid span, .person-grid span, .ministry-card p, .demand-grid small { color: var(--muted); }
.calendar-grid strong { color: #bae6fd; margin-top: 8px; }
.parliament-hemicycle {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: stretch;
  padding: 16px;
  border-radius: 22px;
  border: 1px solid rgba(148, 163, 184, .15);
  background: radial-gradient(circle at 50% 100%, rgba(56,189,248,.16), transparent 60%), rgba(2,6,23,.38);
  margin: 14px 0;
}
.seat-block {
  flex: 1 1 var(--w);
  min-width: 94px;
  border: 1px solid color-mix(in srgb, var(--c), white 20%);
  background: linear-gradient(180deg, color-mix(in srgb, var(--c), transparent 72%), rgba(2,6,23,.55));
  border-radius: 17px;
  padding: 12px;
}
.seat-block b, .seat-block span { display:block; }
.seat-block span { color: var(--soft); font-size: 12px; margin-top: 4px; }
.leaderboard.slim { margin-top: 12px; }
.coalition-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0; }
.coalition-row span { border: 1px solid rgba(56,189,248,.28); border-radius: 999px; padding: 7px 10px; background: rgba(2,6,23,.36); color: var(--soft); }
.ministry-card header { display:flex; justify-content:space-between; gap:10px; }
.ministry-card header span { color:#bae6fd; font-size:12px; font-weight:900; }
.president-card { margin: 12px 0; display: grid; gap: 5px; }
@media (max-width: 900px) {
  .calendar-grid, .ministry-grid, .person-grid, .demand-grid { grid-template-columns: 1fr; }
  .map-label { font-size: 7px; min-width: 22px; height: 19px; }
  .region-label { min-width: 30px; }
}

/* v0.6: calibrated EU points anchored to the uploaded map image */
.eu-photo-map.calibrated-mode img {
  filter: saturate(1.02) contrast(1.04) brightness(.9);
}
.eu-hit-layer { z-index: 2; }
.country-hit {
  fill: rgba(56, 189, 248, 0.01);
  stroke: rgba(255,255,255,0.0);
  stroke-width: .08;
  cursor: pointer;
}
.country-hit:hover {
  fill: rgba(56, 189, 248, .22);
  stroke: rgba(255,255,255,.75);
}
.country-hit.active {
  fill: rgba(168, 85, 247, .24);
  stroke: rgba(255,255,255,.9);
}
.country-hit.current {
  fill: rgba(34, 197, 94, .20);
  stroke: rgba(187,247,208,.9);
}
.map-label.pin-label {
  min-width: 25px;
  height: 21px;
  padding: 0 6px;
  font-size: 9px;
  background: rgba(2, 6, 23, .62);
  border-color: rgba(255,255,255,.2);
  box-shadow: 0 5px 14px rgba(0,0,0,.28);
}
.map-label.pin-label::after {
  content: "";
  position: absolute;
  inset: -12px;
  border-radius: 999px;
}
.map-label.pin-label.active {
  background: linear-gradient(135deg, #38bdf8, #8b5cf6);
  outline: 2px solid rgba(255,255,255,.55);
}
.map-label.pin-label.current {
  background: rgba(34, 197, 94, .82);
}
.map-calibration-note {
  margin: 9px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
}
@media (max-width: 760px) {
  .map-label.pin-label { min-width: 22px; height: 18px; font-size: 7px; padding: 0 5px; }
}

/* v0.7 deep institutions */
.parliament-panel .parliament-toolbar,
.vote-create-grid,
.quick-actions,
.mp-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.parliament-toolbar label {
  display: flex;
  flex-direction: column;
  gap: 4px;
  color: var(--muted);
  font-size: 12px;
}
.parliament-toolbar .check {
  flex-direction: row;
  align-items: center;
  margin-top: 18px;
}
.parliament-layout,
.vote-layout,
.candidate-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.8fr) minmax(320px, .65fr);
  gap: 18px;
  align-items: start;
  margin-top: 18px;
}
.hemicycle-stage {
  position: relative;
  min-height: 640px;
  border-radius: 28px;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 95%, rgba(56,189,248,.22), transparent 33%),
    linear-gradient(180deg, rgba(15,23,42,.84), rgba(2,6,23,.94));
  border: 1px solid rgba(148,163,184,.22);
  box-shadow: inset 0 0 80px rgba(56,189,248,.05);
}
.senate-stage { min-height: 520px; }
.majority-line {
  position: absolute;
  left: 50%;
  bottom: 20px;
  transform: translateX(-50%);
  border: 1px dashed rgba(255,255,255,.35);
  color: rgba(255,255,255,.65);
  padding: 5px 10px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 12px;
}
.mp-seat {
  position: absolute;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 2px solid rgba(255,255,255,.75);
  box-shadow: 0 4px 14px rgba(0,0,0,.35);
  transform: translate(-50%, -50%);
  cursor: pointer;
  display: grid;
  place-items: center;
  transition: transform .12s ease, filter .12s ease, opacity .12s ease;
  color: white;
  font-size: 7px;
  line-height: 1;
}
.mp-seat:hover,
.mp-seat.selected { transform: translate(-50%, -50%) scale(1.5); z-index: 5; filter: brightness(1.2); }
.mp-seat.minister { box-shadow: 0 0 0 5px rgba(250,204,21,.18), 0 5px 18px rgba(0,0,0,.45); }
.mp-seat.rebel { border-color: #fb7185; }
.mp-seat.dimmed { opacity: .16; }
.mp-seat span { pointer-events: none; text-shadow: 0 1px 2px #000; font-weight: 900; }
.senator-seat { width: 15px; height: 15px; }
.club-summary {
  margin-top: 14px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px;
}
.club-card {
  border: 1px solid rgba(148,163,184,.22);
  background: rgba(15,23,42,.58);
  border-radius: 16px;
  padding: 12px;
  display: grid;
  gap: 4px;
}
.club-card.gov { border-color: rgba(34,197,94,.45); }
.club-card i { width: 24px; height: 8px; border-radius: 99px; display: block; }
.club-card b { font-size: 16px; }
.club-card span, .club-card small { color: var(--muted); }
.mp-detail,
.vote-detail,
.candidate-detail {
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 22px;
  background: rgba(15,23,42,.72);
  padding: 18px;
  box-shadow: 0 12px 35px rgba(0,0,0,.25);
}
.mp-detail header,
.vote-detail header,
.media-card header,
.structure-card header,
.ministry-card header,
.candidate-detail header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.mp-detail header { justify-content: flex-start; }
.mp-detail h3, .vote-detail h3 { margin: 0; }
.mp-flags,
.small-list,
.ministry-mini-list {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 12px 0;
}
.mp-flags span,
.small-list span,
.ministry-mini-list span {
  border: 1px solid rgba(148,163,184,.24);
  border-radius: 999px;
  padding: 6px 9px;
  color: var(--muted);
  background: rgba(2,6,23,.38);
  font-size: 12px;
}
.mp-flags .bad { border-color: rgba(248,113,113,.55); color: #fecaca; }
.mp-flags .goodish { border-color: rgba(34,197,94,.45); color: #bbf7d0; }
.vote-create-grid { margin-bottom: 16px; }
.vote-row {
  width: 100%;
  text-align: left;
  background: rgba(15,23,42,.55);
  border: 1px solid rgba(148,163,184,.22);
  color: var(--text);
  border-radius: 16px;
  padding: 12px;
  display: grid;
  gap: 5px;
  cursor: pointer;
}
.vote-row.selected { border-color: rgba(56,189,248,.75); background: rgba(14,165,233,.12); }
.vote-member-list {
  max-height: 460px;
  overflow: auto;
  display: grid;
  gap: 7px;
  padding-right: 6px;
}
.vote-member-list div {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 8px;
  align-items: center;
  border-bottom: 1px solid rgba(148,163,184,.12);
  padding: 7px 0;
}
.vote-pro { color: #86efac; }
.vote-proti { color: #fca5a5; }
.vote-zdržel { color: #fde68a; }
.vote-nepřítomen { color: #cbd5e1; }
.pill.ok { border-color: rgba(34,197,94,.45); color: #bbf7d0; }
.pill.bad { border-color: rgba(248,113,113,.45); color: #fecaca; }
.ministry-grid.deep,
.media-grid,
.structure-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 14px;
}
.deep-card,
.media-card,
.structure-card {
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 18px;
  background: rgba(15,23,42,.60);
  padding: 15px;
}
.media-card p { color: var(--muted); min-height: 38px; }
.president-card.big { padding: 22px; display: grid; gap: 14px; }
.candidate-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}
.candidate-list div {
  border: 1px solid rgba(148,163,184,.18);
  border-radius: 14px;
  padding: 10px;
  display: grid;
  gap: 4px;
  background: rgba(2,6,23,.28);
}
.candidate-list span, .candidate-list small { color: var(--muted); }

.coalition-builder {
  margin-top: 14px;
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 20px;
  background: rgba(15,23,42,.58);
  padding: 14px;
}
.section-head.mini { margin-bottom: 10px; }
.coalition-picks {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.coalition-pick {
  border: 1px solid rgba(148,163,184,.25);
  background: rgba(2,6,23,.45);
  color: var(--text);
  border-radius: 999px;
  padding: 8px 10px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}
.coalition-pick::before {
  content: '';
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--party);
  box-shadow: 0 0 0 3px rgba(255,255,255,.05);
}
.coalition-pick.active {
  border-color: rgba(56,189,248,.75);
  background: rgba(14,165,233,.16);
}
.structure-actions .btn {
  display: grid;
  gap: 3px;
  text-align: left;
  align-content: center;
}
.structure-actions .btn small {
  color: rgba(255,255,255,.72);
  font-size: 10px;
}
.candidate-list.editable { gap: 12px; }
.candidate-edit label {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: 12px;
}
.candidate-form-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(90px, 1fr));
  gap: 8px;
}
.candidate-edit textarea.input {
  resize: vertical;
  min-height: 58px;
}
.integrity-grid .funding-card span { color: #fca5a5; }
.goodish { color: #86efac !important; }
.bad { color: #fca5a5 !important; }
.pill.ok { border-color: rgba(34,197,94,.55); background: rgba(34,197,94,.12); color: #bbf7d0; }
button[disabled] { opacity: .46; cursor: not-allowed !important; filter: grayscale(.25); }

@media (max-width: 1100px) {
  .parliament-layout, .vote-layout, .candidate-layout { grid-template-columns: 1fr; }
  .hemicycle-stage { min-height: 520px; }
  .mp-seat { width: 12px; height: 12px; }
  .candidate-form-grid { grid-template-columns: 1fr 1fr; }
}
.election-studio {
  margin-top: 18px;
  display: grid;
  grid-template-columns: minmax(260px,.8fr) 1.4fr;
  gap: 14px;
}
.studio-feed,
.region-winner {
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 16px;
  background: rgba(15,23,42,.58);
  padding: 14px;
}
.studio-feed p { color: var(--muted); margin: 8px 0; }
.region-winner-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 8px;
}
.region-winner {
  display: grid;
  gap: 4px;
  padding: 10px;
}
.region-winner i { display:block; width: 28px; height: 8px; border-radius: 99px; }
.region-winner span { color: var(--muted); font-size: 12px; }
@media (max-width: 900px) { .election-studio { grid-template-columns: 1fr; } }

/* v0.9 polish: cleaner maps, wider parliament, safer candidate editor */
.photo-map.point-mode img { filter: saturate(.96) contrast(1.08) brightness(.86); }
.region-hit { fill: rgba(56, 189, 248, .015); stroke: rgba(255,255,255,.04); cursor: pointer; }
.region-hit:hover { fill: rgba(56, 189, 248, .18); stroke: rgba(255,255,255,.65); }
.region-hit.active { fill: rgba(168,85,247,.22); stroke: rgba(255,255,255,.85); }
.region-hit.current { fill: rgba(34,197,94,.16); stroke: rgba(187,247,208,.75); }
.country-detail-deep { align-items: flex-start; }
.foreign-actions { margin: 10px 0 0; }
.foreign-actions .btn, .leader-panel .funding-card .btn { display: grid; gap: 3px; text-align: left; }
.foreign-actions small, .leader-panel .funding-card small { font-size: 10px; color: rgba(255,255,255,.72); }
.leader-panel .data-grid { margin: 14px 0; }
.vote-custom-box { margin: 10px 0 12px; max-width: 640px; }
.vote-custom-box label { display:grid; gap:7px; color:var(--muted); font-size:13px; font-weight:800; }
.hemicycle-stage { min-height: 760px; }
.senate-stage { min-height: 610px; }
.mp-seat { width: 11px; height: 11px; border-width: 1.5px; }
.senator-seat { width: 12px; height: 12px; }
.mp-seat:hover, .mp-seat.selected { transform: translate(-50%, -50%) scale(1.85); }
.candidate-layout { grid-template-columns: minmax(260px, .85fr) minmax(0, 1.15fr); }
.candidate-detail { min-width: 0; overflow: hidden; }
.candidate-list.editable { max-height: 78vh; overflow: auto; padding-right: 6px; }
.candidate-list.editable .candidate-edit { min-width: 0; }
.candidate-form-grid { grid-template-columns: repeat(5, minmax(90px, 1fr)); }
.candidate-form-grid .input { min-width: 0; }
.candidate-presets .btn { padding: 10px 12px; border-radius: 13px; }
@media (max-width: 1180px) {
  .hemicycle-stage { min-height: 620px; }
  .candidate-layout { grid-template-columns: 1fr; }
  .candidate-form-grid { grid-template-columns: 1fr 1fr; }
}

/* v1.0 geo maps */
.geo-mode { background:#0b1223; overflow:hidden; }
.geo-mode img { display:block; width:100%; height:auto; }
.geo-layer { pointer-events:auto; }
.geo-shape { fill: var(--fill, rgba(56,189,248,.16)); stroke: rgba(226,232,240,.82); stroke-width: 2.2; vector-effect: non-scaling-stroke; cursor:pointer; transition: fill .15s ease, stroke .15s ease, filter .15s ease, opacity .15s ease; }
.geo-shape:hover { fill: rgba(250,204,21,.32) !important; stroke: #fde68a; filter: drop-shadow(0 0 8px rgba(250,204,21,.55)); }
.geo-shape.active { fill: rgba(129,140,248,.42) !important; stroke:#c4b5fd; filter: drop-shadow(0 0 8px rgba(129,140,248,.7)); }
.geo-shape.current { fill: rgba(34,197,94,.38) !important; stroke:#86efac; }
.region-shape { stroke: rgba(15,23,42,.92); stroke-width:1.6; mix-blend-mode:multiply; }
.region-shape.current { stroke:#22c55e; stroke-width:3.0; mix-blend-mode:normal; }
.region-shape.active { stroke:#60a5fa; stroke-width:3.0; mix-blend-mode:normal; }
.geo-label { transform: translate(-50%, -50%); z-index:6; }
.eu-photo-map.geo-mode .geo-label span, .cz-photo-map.geo-mode .geo-label span { box-shadow: 0 4px 16px rgba(0,0,0,.38); }
.cz-geo-map { background:#e5e7eb; }

.voter-block-grid,.economy-grid,.scandal-grid,.law-stage-grid,.advisor-grid { display:grid; grid-template-columns: repeat(auto-fit,minmax(210px,1fr)); gap:12px; }
.voter-block,.economy-card,.scandal-card,.law-stage,.advisor-card { border:1px solid rgba(148,163,184,.18); background:rgba(15,23,42,.58); border-radius:16px; padding:14px; }
.voter-block b,.economy-card b { display:block; font-size:1.35rem; }
.law-timeline { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0; }
.law-step { border:1px solid rgba(148,163,184,.22); border-radius:999px; padding:7px 10px; font-size:.8rem; background:rgba(15,23,42,.55); }
.law-step.done { background:rgba(34,197,94,.16); border-color:rgba(34,197,94,.45); }
.law-step.active { background:rgba(96,165,250,.18); border-color:rgba(96,165,250,.65); }
.negotiation-grid { display:grid; grid-template-columns: 1.1fr .9fr; gap:16px; align-items:start; }
@media (max-width: 1000px){ .negotiation-grid{ grid-template-columns:1fr; } }

/* v1.1 živý stát */
.mission-grid,.district-grid,.faction-grid,.lobby-offers{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.mission-card,.district-card,.faction-card,.lobby-card,.poll-card{background:rgba(15,23,42,.72);border:1px solid rgba(148,163,184,.22);border-radius:18px;padding:16px;box-shadow:0 16px 45px rgba(0,0,0,.2)}
.mission-card.active{border-color:rgba(56,189,248,.55);box-shadow:0 0 0 1px rgba(56,189,248,.18),0 20px 50px rgba(14,165,233,.12)}
.mission-card.done{border-color:rgba(34,197,94,.48)}
.task-list{display:grid;gap:10px;margin-top:12px}.task{display:grid;grid-template-columns:1fr 120px 42px;gap:10px;align-items:center;padding:10px;border:1px solid rgba(148,163,184,.16);border-radius:14px;background:rgba(2,6,23,.25)}
.task.done{border-color:rgba(34,197,94,.35)}.mini-bar{height:8px;border-radius:99px;background:rgba(148,163,184,.18);overflow:hidden}.mini-bar span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#38bdf8,#a78bfa)}
.district-layout{display:grid;grid-template-columns:minmax(250px,340px) 1fr;gap:16px}.district-detail h3{margin-top:0}.district-card header,.faction-card header,.lobby-card header,.poll-card header{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px}.tip-box{margin-top:10px;padding:10px 12px;border-radius:14px;background:rgba(56,189,248,.10);border:1px solid rgba(56,189,248,.25);color:#c7f9ff}.district-card ul{padding-left:18px;color:#cbd5e1}.district-card li{margin:5px 0}.lobby-card.closed{opacity:.72}.inline-form{display:grid;grid-template-columns:minmax(180px,240px) 1fr auto;gap:10px;align-items:center;margin:12px 0}.timeline{display:grid;gap:10px}.timeline-item{display:flex;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid rgba(148,163,184,.2);border-radius:16px;background:rgba(15,23,42,.70)}.timeline-item.major{border-color:rgba(251,146,60,.45)}.timeline-item time{text-align:right;color:#bfdbfe;min-width:190px}.poll-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.district-card .data-grid.compact,.faction-card .data-grid.compact,.lobby-card .data-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:900px){.district-layout{grid-template-columns:1fr}.inline-form{grid-template-columns:1fr}.task{grid-template-columns:1fr}.timeline-item{display:block}.timeline-item time{text-align:left;display:block;margin-top:8px}}

/* v1.2 premium political strategy skin */
:root {
  --gold: #f8c35d;
  --cyan: #67e8f9;
  --ink: #030712;
  --glass: rgba(9, 14, 28, 0.72);
  --glass-strong: rgba(12, 18, 35, 0.88);
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(0deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 58px 58px;
  mask-image: radial-gradient(circle at 50% 18%, #000 0, rgba(0,0,0,.75) 34%, transparent 82%);
}
body::after {
  content: "";
  position: fixed;
  inset: auto -18% -42% -18%;
  height: 55vh;
  background: radial-gradient(ellipse at 50% 100%, rgba(56,189,248,.18), transparent 68%);
  pointer-events: none;
}
.topbar {
  position: sticky;
  top: 12px;
  z-index: 10;
  background: linear-gradient(135deg, rgba(10,18,34,.92), rgba(17,24,39,.76));
  border: 1px solid rgba(125, 211, 252, .22);
  border-radius: 28px;
  box-shadow: 0 30px 90px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter: blur(18px) saturate(120%);
  padding: 18px 20px;
}
.topbar h1 { letter-spacing: -0.035em; }
.party-dot {
  box-shadow: 0 0 0 7px rgba(255,255,255,.06), 0 0 34px currentColor;
}
.sidebar .panel, .viewbar, .panel, .stat-card, .event-card, .region-card, .election-card {
  background:
    linear-gradient(180deg, rgba(15, 23, 42, .90), rgba(5, 10, 22, .76)),
    radial-gradient(circle at 0 0, rgba(103,232,249,.09), transparent 28rem);
  border-color: rgba(148, 163, 184, .20);
  box-shadow: 0 22px 70px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.05);
}
.sidebar {
  position: sticky;
  top: 112px;
  align-self: start;
  max-height: calc(100vh - 130px);
  overflow: auto;
  padding-right: 4px;
}
.sidebar::-webkit-scrollbar, .viewbar-actions::-webkit-scrollbar { width: 8px; height: 8px; }
.sidebar::-webkit-scrollbar-thumb, .viewbar-actions::-webkit-scrollbar-thumb { background: rgba(103,232,249,.22); border-radius: 999px; }
.menu-list {
  display: grid;
  gap: 8px;
}
.menu-btn {
  border-radius: 15px;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.menu-btn:hover { transform: translateX(2px); border-color: rgba(103,232,249,.45); }
.menu-btn.active {
  background: linear-gradient(135deg, rgba(56,189,248,.24), rgba(168,85,247,.20));
  border-color: rgba(103,232,249,.55);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.05), 0 10px 30px rgba(56,189,248,.10);
}
.viewbar {
  position: relative;
  overflow: hidden;
}
.viewbar::after {
  content: "";
  position: absolute;
  right: -90px;
  top: -120px;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: rgba(248,195,93,.10);
  filter: blur(2px);
}
.viewbar-actions {
  max-height: 96px;
  overflow: auto;
  padding-bottom: 4px;
}
.btn {
  transition: transform .16s ease, filter .16s ease, box-shadow .16s ease;
  box-shadow: 0 14px 34px rgba(56,189,248,.16), inset 0 1px 0 rgba(255,255,255,.12);
}
.btn.good { background: linear-gradient(135deg, #14b8a6, #22c55e); }
.btn.mini { padding: 7px 10px; border-radius: 12px; font-size: 12px; }
.input, .select, .textarea {
  background: rgba(3, 7, 18, .64);
  border-color: rgba(148, 163, 184, .25);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.stat-card {
  position: relative;
  overflow: hidden;
}
.stat-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 3px;
  background: linear-gradient(90deg, var(--cyan), var(--violet), var(--gold));
  opacity: .55;
}
.leader-row, .media-card, .club-card, .region-winner, .candidate-edit, .alliance-card, .ai-relation-row {
  background: rgba(2, 6, 23, .52);
  border: 1px solid rgba(148,163,184,.18);
  border-radius: 18px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.party-row-enhanced {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 14px;
  align-items: center;
}
.party-row-enhanced.you {
  border-color: rgba(103,232,249,.44);
  background: linear-gradient(90deg, rgba(56,189,248,.12), rgba(2,6,23,.48));
}
.party-row-actions { display: flex; align-items: center; gap: 10px; }
.ai-rules-grid, .alliance-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 12px;
  margin: 16px 0 22px;
}
.ai-rules-grid > div {
  padding: 16px;
  border-radius: 18px;
  border: 1px solid rgba(103,232,249,.18);
  background: linear-gradient(145deg, rgba(14,165,233,.10), rgba(2,6,23,.55));
}
.ai-rules-grid b { display: block; font-size: 24px; color: #e0f2fe; }
.ai-rules-grid span { color: var(--muted); font-size: 13px; }
.alliance-card { padding: 16px; }
.alliance-card p { color: var(--muted); line-height: 1.5; }
.alliance-colors { display: flex; gap: 6px; margin-bottom: 10px; }
.alliance-colors i { width: 24px; height: 10px; border-radius: 999px; box-shadow: 0 0 0 1px rgba(255,255,255,.18) inset; }
.ai-relation-list { display: grid; gap: 10px; }
.ai-relation-row {
  display: grid;
  grid-template-columns: 180px 1fr minmax(220px, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px;
}
.ai-relation-row.friendly { border-color: rgba(34,197,94,.35); background: linear-gradient(90deg, rgba(34,197,94,.10), rgba(2,6,23,.50)); }
.ai-relation-row.rival { border-color: rgba(239,68,68,.28); background: linear-gradient(90deg, rgba(239,68,68,.08), rgba(2,6,23,.50)); }
.ai-bars { display: grid; grid-template-columns: repeat(3, minmax(90px, 1fr)); gap: 8px; color: var(--muted); font-size: 12px; }
.ai-bars b { color: var(--text); }
.ai-relation-row p { margin: 0; color: var(--soft); font-size: 13px; }
.map-frame, .country-map-frame, .region-map-frame {
  box-shadow: 0 28px 70px rgba(0,0,0,.32), 0 0 0 1px rgba(255,255,255,.06) inset;
  border-radius: 28px;
  overflow: hidden;
}
.hemicycle-stage {
  background:
    radial-gradient(ellipse at 50% 100%, rgba(56,189,248,.16), transparent 54%),
    linear-gradient(180deg, rgba(15,23,42,.62), rgba(3,7,18,.68));
  border: 1px solid rgba(148,163,184,.20);
}
.mp-seat, .senate-seat {
  box-shadow: 0 0 0 1px rgba(255,255,255,.36), 0 9px 18px rgba(0,0,0,.25);
}
@media (max-width: 1120px) {
  .ai-relation-row { grid-template-columns: 1fr; }
  .sidebar { position: relative; top: 0; max-height: none; }
  .topbar { position: relative; top: 0; }
}

/* v1.3 modern readable skin + clean vector maps */
:root {
  --panel: rgba(10, 16, 31, 0.82);
  --panel-2: rgba(15, 23, 42, 0.72);
  --line: rgba(148, 163, 184, 0.18);
  --accent-2: #8b5cf6;
}
body {
  background:
    radial-gradient(circle at 8% 4%, rgba(56,189,248,.20), transparent 28rem),
    radial-gradient(circle at 78% 0%, rgba(139,92,246,.18), transparent 30rem),
    linear-gradient(135deg, #050814 0%, #07111f 48%, #0a1020 100%);
}
.panel, .stat-card, .event-card, .region-card, .election-card, .auth-card {
  border-radius: 22px;
  box-shadow: 0 20px 70px rgba(0,0,0,.30);
}
.sidebar .panel { border-radius: 20px; }
.viewbar { position: sticky; top: 10px; z-index: 20; backdrop-filter: blur(18px); }
.viewbar-actions { gap: 7px; }
.menu-btn { border-radius: 14px; padding: 9px 11px; }
.mega-panel { overflow: hidden; position: relative; }
.mega-panel::before { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(120deg, rgba(56,189,248,.08), transparent 28%, rgba(139,92,246,.06)); }
.mega-panel > * { position: relative; z-index: 1; }
.photo-map.pure-vector-map { min-height: 420px; background: linear-gradient(180deg, rgba(15,23,42,.72), rgba(2,6,23,.86)); border:1px solid rgba(148,163,184,.18); border-radius:24px; padding:16px; overflow:hidden; }
.photo-map.pure-vector-map img { display:none !important; }
.photo-map.pure-vector-map .map-svg-overlay { position:relative; inset:auto; width:100%; height:520px; display:block; }
.cz-photo-map.pure-vector-map .map-svg-overlay { height:420px; }
.map-water { fill: rgba(8, 47, 73, .35); stroke: rgba(125,211,252,.16); stroke-width: 1; }
.map-water.cz-bg { fill: rgba(15, 23, 42, .55); }
.geo-shape { stroke: rgba(226,232,240,.72); stroke-width: 1.4; fill: var(--fill); fill-opacity: .72; transition: fill-opacity .16s ease, stroke-width .16s ease, filter .16s ease, transform .16s ease; vector-effect: non-scaling-stroke; }
.geo-shape:hover, .geo-shape.active { fill-opacity: .95; stroke: #f8fafc; stroke-width: 2.6; filter: drop-shadow(0 0 10px rgba(56,189,248,.42)); }
.geo-shape.current { stroke: #38bdf8; stroke-width: 2.8; }
.geo-label { z-index: 4; font-size: 11px; padding: 3px 6px; background: rgba(2,6,23,.74); border:1px solid rgba(226,232,240,.20); }
.geo-label:hover, .geo-label.active { background: #38bdf8; color:#02131f; }
.social-composer { display:grid; grid-template-columns: minmax(260px, 1fr) 260px; gap:14px; margin: 16px 0 18px; }
.social-action-grid, .program-grid, .topic-region-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap:14px; }
.social-action-card, .social-post, .program-card, .topic-region-card, .tutorial-step { background: rgba(15,23,42,.64); border:1px solid rgba(148,163,184,.18); border-radius:18px; padding:16px; }
.social-action-card header, .social-post header, .program-card header, .topic-region-card header { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
.social-post.good { border-color: rgba(34,197,94,.35); }
.social-post.bad, .topic-region-card.bad { border-color: rgba(239,68,68,.38); }
.topic-region-card.good { border-color: rgba(34,197,94,.38); }
.stance-options { display:grid; gap:8px; margin:12px 0; }
.stance-btn { text-align:left; border:1px solid rgba(148,163,184,.18); background:rgba(2,6,23,.52); color:var(--text); border-radius:14px; padding:10px 12px; }
.stance-btn.active { border-color: rgba(56,189,248,.62); background: linear-gradient(135deg, rgba(14,165,233,.25), rgba(139,92,246,.18)); box-shadow: inset 0 0 0 1px rgba(56,189,248,.18); }
.program-fit-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:14px; margin-top:18px; }
.program-fit-grid > article { background:rgba(2,6,23,.36); border:1px solid rgba(148,163,184,.15); border-radius:18px; padding:16px; }
.program-region-row { width:100%; display:grid; grid-template-columns: 1fr auto; gap:4px 12px; align-items:center; text-align:left; color:var(--text); background:rgba(15,23,42,.55); border:1px solid rgba(148,163,184,.14); border-radius:14px; padding:10px 12px; margin:8px 0; }
.program-region-row small { grid-column:1 / -1; color:var(--muted); }
.program-region-row.good span { color:#86efac; }
.tutorial-steps { display:grid; gap:12px; margin-top:16px; }
.tutorial-step { display:grid; grid-template-columns: 42px 1fr auto; align-items:center; gap:14px; }
.tutorial-step .check { width:42px; height:42px; display:grid; place-items:center; border-radius:14px; background:rgba(2,6,23,.52); font-weight:900; color:#93c5fd; }
.tutorial-step.done .check { background:rgba(34,197,94,.20); color:#86efac; }
.tutorial-progress .bar.big { height:16px; margin:12px 0; }
@media (max-width: 820px) {
  .social-composer, .program-fit-grid { grid-template-columns:1fr; }
  .photo-map.pure-vector-map .map-svg-overlay, .cz-photo-map.pure-vector-map .map-svg-overlay { height:340px; }
  .tutorial-step { grid-template-columns: 36px 1fr; }
  .tutorial-step .quick-actions { grid-column: 1 / -1; }
}

/* v1.4 navigation + map recovery hotfix */
.layout {
  grid-template-columns: 300px minmax(0, 1fr);
}
.sidebar-menu-panel {
  padding: 14px;
  background:
    linear-gradient(180deg, rgba(9, 14, 27, .96), rgba(8, 13, 26, .88)),
    radial-gradient(circle at 0 0, rgba(56,189,248,.10), transparent 18rem) !important;
}
.side-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 8px 14px;
  border-bottom: 1px solid rgba(148,163,184,.16);
  margin-bottom: 12px;
}
.logo-mark.small {
  width: 36px;
  height: 36px;
  border-radius: 13px;
  font-size: 13px;
}
.side-brand b { display: block; letter-spacing: .02em; }
.side-brand small { display: block; color: var(--muted); font-size: 12px; margin-top: 2px; }
.menu-group { margin: 0 0 14px; }
.menu-group-title {
  color: #8eb6d6;
  text-transform: uppercase;
  letter-spacing: .10em;
  font-size: 10px;
  font-weight: 900;
  margin: 0 8px 7px;
}
.menu-list.grouped {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
}
.menu-list.grouped .menu-btn {
  padding: 9px 9px;
  border-radius: 13px;
  font-size: 13px;
  text-align: left;
  min-height: 38px;
  display: flex;
  align-items: center;
}
.menu-list.grouped .menu-btn.active {
  transform: none;
  background: linear-gradient(135deg, rgba(56,189,248,.27), rgba(139,92,246,.18));
  box-shadow: inset 3px 0 0 rgba(103,232,249,.95), 0 10px 26px rgba(56,189,248,.10);
}
.compact-viewbar {
  position: sticky;
  top: 10px;
  z-index: 8;
  min-height: 92px;
  overflow: hidden;
}
.compact-viewbar::after { display: none; }
.breadcrumb {
  color: #7dd3fc;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 11px;
  font-weight: 900;
  margin-bottom: 5px;
}
.viewbar-summary {
  display: grid;
  justify-items: end;
  gap: 2px;
  padding: 10px 13px;
  border: 1px solid rgba(103,232,249,.22);
  background: rgba(8,47,73,.28);
  border-radius: 16px;
  min-width: 138px;
}
.viewbar-summary span { font-weight: 950; font-size: 24px; color: #e0f2fe; }
.viewbar-summary small { color: var(--muted); font-size: 11px; }
.viewbar-actions { display: none !important; }

.photo-truth-map {
  border-radius: 24px;
  min-height: 0 !important;
  padding: 0 !important;
  background: #0a1222 !important;
  overflow: hidden;
  border: 1px solid rgba(148,163,184,.22);
}
.photo-truth-map img {
  display: block !important;
  width: 100%;
  height: auto;
  filter: saturate(.98) contrast(1.05) brightness(.90);
}
.photo-truth-map::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(2,6,23,.05), rgba(2,6,23,.18));
}
.silent-map-zone {
  position: absolute;
  transform: translate(-50%, -50%);
  border: 0;
  background: transparent;
  color: transparent;
  z-index: 3;
  width: 54px;
  height: 54px;
  border-radius: 999px;
  outline: 0;
}
.silent-map-zone::before {
  content: "";
  position: absolute;
  inset: 16px;
  border-radius: inherit;
  background: rgba(56,189,248,.0);
  box-shadow: 0 0 0 0 rgba(56,189,248,0);
  transition: .16s ease;
}
.silent-map-zone:hover::before,
.silent-map-zone.active::before,
.silent-map-zone.home::before,
.silent-map-zone.current::before {
  inset: 10px;
  background: rgba(56,189,248,.65);
  box-shadow: 0 0 0 7px rgba(56,189,248,.18), 0 12px 28px rgba(0,0,0,.28);
}
.silent-map-zone.home::before,
.silent-map-zone.current::before { background: rgba(34,197,94,.72); }
.silent-map-zone.active::before { background: linear-gradient(135deg, #38bdf8, #8b5cf6); }
.region-zone { width: 68px; height: 68px; }
.country-zone { width: 42px; height: 42px; }
.map-floating-selection {
  position: absolute;
  left: 18px;
  bottom: 18px;
  z-index: 5;
  display: grid;
  gap: 2px;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(2,6,23,.78);
  border: 1px solid rgba(226,232,240,.22);
  backdrop-filter: blur(10px);
  box-shadow: 0 14px 36px rgba(0,0,0,.32);
}
.map-floating-selection small { color: var(--muted); }
.map-mode-note {
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(103,232,249,.20);
  background: linear-gradient(135deg, rgba(14,165,233,.12), rgba(15,23,42,.58));
  color: var(--soft);
  margin-bottom: 12px;
  line-height: 1.45;
}
.map-picker-block {
  margin-top: 14px;
  padding: 14px;
  border-radius: 18px;
  background: rgba(2,6,23,.35);
  border: 1px solid rgba(148,163,184,.16);
}
.map-picker-block h3 { margin: 0 0 6px; }
.country-picker-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(135px, 1fr));
  gap: 8px;
  margin-top: 12px;
  max-height: 230px;
  overflow: auto;
  padding-right: 4px;
}
.country-picker,
.region-picker {
  border: 1px solid rgba(148,163,184,.18);
  background: rgba(15,23,42,.58);
  color: var(--text);
  border-radius: 14px;
  padding: 9px 10px;
  text-align: left;
  display: grid;
  gap: 2px;
}
.country-picker b,
.region-picker b { color: #dbeafe; }
.country-picker span,
.region-picker span,
.region-picker small { color: var(--muted); font-size: 12px; }
.country-picker:hover,
.country-picker.active,
.region-picker:hover,
.region-picker.active {
  border-color: rgba(103,232,249,.55);
  background: rgba(14,165,233,.15);
}
.country-picker.current { box-shadow: inset 3px 0 0 rgba(34,197,94,.9); }
.region-picker-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 8px;
  margin-top: 12px;
}
.region-district-preview {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid rgba(148,163,184,.16);
}
.section-head.mini {
  align-items: center;
  margin-bottom: 10px;
}
.section-head.mini h3 { margin: 0 0 3px; }
.district-chip-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 9px;
}
.district-chip {
  display: grid;
  gap: 3px;
  text-align: left;
  color: var(--text);
  border: 1px solid rgba(148,163,184,.16);
  background: rgba(15,23,42,.52);
  border-radius: 15px;
  padding: 10px 11px;
}
.district-chip span { color: #7dd3fc; font-weight: 900; }
.district-chip small { color: var(--muted); line-height: 1.25; }
.district-chip:hover { border-color: rgba(103,232,249,.48); background: rgba(14,165,233,.12); }
.region-analysis-layout { grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr); }
@media (max-width: 1120px) {
  .layout { grid-template-columns: 1fr; }
  .sidebar { top: 0; max-height: none; position: relative; }
  .compact-viewbar { position: relative; top: auto; }
  .region-analysis-layout { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .menu-list.grouped { grid-template-columns: 1fr; }
  .country-picker-grid { grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); }
  .viewbar-summary { justify-items: start; }
  .compact-viewbar { align-items: stretch; flex-direction: column; }
}

/* v1.5 — barevnější, ale přehledný skin + text spacing hotfix */
:root {
  --bg: #08111f;
  --panel: rgba(14, 24, 44, .86);
  --panel-strong: rgba(18, 32, 58, .94);
  --line: rgba(125, 211, 252, .19);
  --line-strong: rgba(56, 189, 248, .32);
  --text: #eef6ff;
  --muted: #9fb2ca;
  --accent: #38bdf8;
  --accent-2: #a78bfa;
  --accent-3: #22c55e;
  --warn: #f59e0b;
  --danger: #fb7185;
}
body {
  background:
    radial-gradient(circle at 14% 12%, rgba(56,189,248,.18), transparent 34%),
    radial-gradient(circle at 88% 8%, rgba(167,139,250,.18), transparent 30%),
    radial-gradient(circle at 78% 80%, rgba(34,197,94,.10), transparent 36%),
    linear-gradient(135deg, #06101f 0%, #0b1324 42%, #10172a 100%);
}
.panel, .viewbar, .stat-card, .action-card, .media-card, .lobby-card, .poll-card, .faction-card, .region-card, .event-card, .election-card {
  background: linear-gradient(180deg, rgba(20,33,59,.92), rgba(10,18,35,.88));
  border: 1px solid var(--line);
  box-shadow: 0 18px 70px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.04);
}
.panel:hover, .action-card:hover, .media-card:hover, .lobby-card:hover, .region-card:hover {
  border-color: rgba(125,211,252,.34);
}
.sidebar-menu-panel {
  background: linear-gradient(180deg, rgba(16,29,56,.96), rgba(8,17,33,.94));
}
.menu-group-title {
  color: #7dd3fc;
  letter-spacing: .08em;
}
.menu-list .menu-btn, .btn, .select, .input, input, textarea, select {
  border-color: rgba(148,163,184,.22);
}
.menu-list .menu-btn.active, .btn.good, .country-picker.active, .region-picker.active {
  background: linear-gradient(135deg, rgba(56,189,248,.22), rgba(167,139,250,.22));
  border-color: rgba(125,211,252,.48);
  box-shadow: 0 0 0 1px rgba(125,211,252,.18), 0 12px 34px rgba(56,189,248,.12);
}
.btn.good { color: #ecfeff; }
.btn.secondary:hover, .btn:hover {
  transform: translateY(-1px);
  border-color: rgba(125,211,252,.45);
}
.topbar {
  background: linear-gradient(135deg, rgba(12,27,52,.94), rgba(25,35,64,.9));
  border: 1px solid rgba(125,211,252,.22);
  box-shadow: 0 18px 70px rgba(0,0,0,.30);
}
.logo-mark, .party-dot {
  box-shadow: 0 0 30px rgba(56,189,248,.24);
}
.action-card header,
.media-card header,
.lobby-card header,
.poll-card header,
.faction-card header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  line-height: 1.25;
}
.action-card header b,
.media-card header b,
.lobby-card header b,
.poll-card header b,
.faction-card header b {
  display: block;
  min-width: 0;
}
.action-card header span,
.media-card header span,
.lobby-card header span,
.poll-card header span,
.faction-card header span {
  flex: 0 0 auto;
  white-space: nowrap;
  color: #bae6fd;
  font-weight: 800;
}
.debate-card header span { color: #fef3c7; }
.daily-rule {
  padding: 10px 12px;
  border: 1px solid rgba(125,211,252,.18);
  border-radius: 14px;
  background: rgba(56,189,248,.07);
}
.photo-map {
  border-color: rgba(125,211,252,.24);
  box-shadow: 0 20px 80px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.06);
}
.photo-map img { filter: saturate(1.08) contrast(1.03) brightness(.92); }
.silent-map-zone::before {
  opacity: .86;
  transform: translate(-50%, -50%) scale(.82);
  border: 2px solid rgba(255,255,255,.82);
  box-shadow: 0 8px 22px rgba(0,0,0,.38), 0 0 0 6px rgba(15,23,42,.22);
}
.silent-map-zone:hover::before,
.silent-map-zone.active::before,
.silent-map-zone.home::before,
.silent-map-zone.current::before {
  transform: translate(-50%, -50%) scale(1.02);
}
.country-picker-grid, .region-picker-grid { gap: 10px; }
.country-picker, .region-picker, .district-chip {
  background: linear-gradient(180deg, rgba(18,31,56,.94), rgba(8,16,32,.92));
  border-color: rgba(148,163,184,.20);
}
.map-floating-selection {
  background: rgba(6,12,26,.78);
  border: 1px solid rgba(125,211,252,.28);
  backdrop-filter: blur(10px);
}
.section-head h2, .viewbar h2 { letter-spacing: -.02em; }
.tiny { line-height: 1.45; }

/* v1.6 — mobil, okresní kampaně, studio a sjednocenější layout */
:root {
  --ps-bg-a: #06101f;
  --ps-bg-b: #0d1730;
  --ps-card: rgba(13, 25, 49, .86);
  --ps-card-2: rgba(18, 35, 67, .72);
  --ps-border: rgba(148, 163, 184, .20);
  --ps-cyan: #38bdf8;
  --ps-violet: #8b5cf6;
  --ps-green: #22c55e;
  --ps-warn: #f59e0b;
}
body {
  background:
    radial-gradient(circle at 14% -12%, rgba(56,189,248,.20), transparent 34%),
    radial-gradient(circle at 100% 10%, rgba(139,92,246,.18), transparent 32%),
    linear-gradient(135deg, var(--ps-bg-a), var(--ps-bg-b) 52%, #101828);
}
.panel, .election-card, .viewbar, .topbar {
  border-radius: 24px;
  border: 1px solid var(--ps-border);
}
.panel, .election-card {
  background: linear-gradient(180deg, rgba(15, 27, 52, .88), rgba(8, 16, 32, .82));
}
.mobile-menu-toggle { display: none; }
.bottom-nav { display: none; }
.mobile-overlay { display: none; }
.section-head { align-items: flex-start; }
.section-head > div { min-width: 0; }
.section-head p { max-width: 78ch; }
.quick-actions, .mp-actions, .vote-create-grid, .funding-grid, .action-grid { align-items: stretch; }
.btn, .select, .input, textarea { min-height: 44px; }
.district-action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 8px;
  margin-top: 8px;
}
.district-action-btn {
  justify-content: space-between;
  text-align: left;
  padding: 10px 12px;
  gap: 8px;
}
.district-action-btn b { font-size: .86rem; }
.district-action-btn small { opacity: .72; }
.district-campaign-block {
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid rgba(148,163,184,.16);
}
.pro-studio {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
  gap: 14px;
}
.pro-studio .studio-map-grid { grid-column: 1 / -1; }
.studio-live-head,
.coalition-dashboard,
.coalition-detail-grid,
.studio-metrics {
  display: grid;
  gap: 10px;
}
.studio-live-head {
  grid-template-columns: 1fr auto;
  align-items: center;
}
.studio-metrics,
.coalition-dashboard {
  grid-template-columns: repeat(4, minmax(0,1fr));
}
.studio-metrics span,
.coalition-dashboard div {
  padding: 12px;
  border-radius: 16px;
  background: rgba(15,23,42,.58);
  border: 1px solid rgba(148,163,184,.16);
}
.studio-metrics b,
.coalition-dashboard b { display: block; font-size: 1.15rem; }
.studio-metrics small,
.coalition-dashboard small { color: #94a3b8; }
.studio-headlines {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}
.studio-headlines div {
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(56,189,248,.08);
  border: 1px solid rgba(56,189,248,.12);
}
.threshold-list { display: grid; gap: 8px; }
.threshold-row {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border-radius: 14px;
  background: rgba(15,23,42,.54);
  border: 1px solid rgba(148,163,184,.14);
}
.coalition-2 { margin-top: 18px; }
.coalition-pick { min-height: 70px; }
.coalition-pick small { display: block; opacity: .72; margin-top: 3px; }
.coalition-detail-grid {
  grid-template-columns: repeat(2, minmax(0,1fr));
  margin-top: 12px;
}
.coalition-detail-grid > div {
  padding: 12px;
  border-radius: 16px;
  border: 1px solid rgba(148,163,184,.15);
  background: rgba(15,23,42,.44);
}
.coalition-detail-grid ul { margin: 8px 0 0; padding-left: 18px; }
/* lepší čitelnost mapy a kandidátek */
.photo-map { max-height: 72vh; }
.photo-map img { width: 100%; height: auto; object-fit: contain; }
.candidate-editor, .candidate-card, .district-card, .region-deep-card {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.hemicycle-stage { min-width: 720px; }
.parliament-layout > div:first-child { overflow-x: auto; padding-bottom: 8px; }
.vote-member-list, .table-wrap { overflow-x: auto; }

@media (max-width: 980px) {
  body { padding-bottom: 76px; }
  .topbar {
    position: sticky;
    top: 0;
    z-index: 50;
    gap: 10px;
    border-radius: 0 0 20px 20px;
  }
  .mobile-menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(148,163,184,.22);
    border-radius: 14px;
    background: rgba(15,23,42,.72);
    color: #e2e8f0;
    font-size: 1.35rem;
    font-weight: 900;
  }
  .topbar-left h1 { font-size: 1.02rem; }
  .topbar-left p { font-size: .78rem; }
  .topbar-actions .btn { padding: 8px 10px; min-height: 38px; }
  .layout { display: block; }
  .sidebar {
    position: fixed;
    z-index: 80;
    top: 0;
    left: 0;
    bottom: 0;
    width: min(88vw, 360px);
    transform: translateX(-106%);
    transition: transform .22s ease;
    overflow-y: auto;
    padding: 14px;
    background: linear-gradient(180deg, rgba(5, 12, 26, .98), rgba(12, 24, 49, .98));
    box-shadow: 24px 0 90px rgba(0,0,0,.45);
  }
  .sidebar.open { transform: translateX(0); }
  .mobile-overlay.show {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 70;
    background: rgba(0,0,0,.50);
    backdrop-filter: blur(3px);
  }
  .main-stack { width: 100%; }
  .viewbar, .compact-viewbar { grid-template-columns: 1fr; gap: 12px; }
  .stat-grid, .dash-grid, .finance-grid, .district-layout, .region-analysis-layout, .vote-layout, .parliament-layout, .pro-studio, .coalition-detail-grid {
    grid-template-columns: 1fr !important;
  }
  .section-head { display: grid; grid-template-columns: 1fr; }
  .photo-map { width: 100%; max-height: none; border-radius: 18px; }
  .map-stage, .cz-map-stage { overflow-x: auto; }
  .parliament-panel { overflow: hidden; }
  .hemicycle-stage { min-width: 680px; height: 430px; transform-origin: top left; }
  .club-summary, .district-grid, .candidate-main, .candidate-list-grid, .ministry-grid.deep, .scandal-grid, .voter-block-grid, .economy-grid {
    grid-template-columns: 1fr !important;
  }
  .candidate-card, .district-card { padding: 14px; }
  .candidate-card .two, .candidate-editor .two { grid-template-columns: 1fr !important; }
  .mp-detail, .vote-detail {
    position: relative;
    right: auto;
    top: auto;
    max-height: none;
    border-radius: 22px;
  }
  .district-action-grid { grid-template-columns: 1fr; }
  .studio-metrics, .coalition-dashboard { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .threshold-row { grid-template-columns: 1fr auto; }
  .threshold-row small { grid-column: 1 / -1; }
  .bottom-nav {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 4px;
    position: fixed;
    z-index: 60;
    left: 8px;
    right: 8px;
    bottom: 8px;
    padding: 8px;
    border-radius: 22px;
    border: 1px solid rgba(148,163,184,.18);
    background: rgba(6, 12, 26, .86);
    backdrop-filter: blur(18px);
    box-shadow: 0 18px 60px rgba(0,0,0,.40);
  }
  .bottom-nav-btn {
    min-height: 48px;
    border: 0;
    border-radius: 16px;
    background: transparent;
    color: #94a3b8;
    font-weight: 800;
  }
  .bottom-nav-btn b { display: block; font-size: 1.05rem; }
  .bottom-nav-btn span { display: block; font-size: .72rem; }
  .bottom-nav-btn.active { color: #fff; background: linear-gradient(135deg, rgba(56,189,248,.28), rgba(139,92,246,.22)); }
}

@media (max-width: 560px) {
  .topbar-actions #refreshBtn { display: none; }
  .logo-mark.small { width: 32px; height: 32px; }
  .data-grid, .mini-stats, .studio-metrics, .coalition-dashboard { grid-template-columns: 1fr 1fr !important; }
  .country-picker-grid, .region-picker-grid { grid-template-columns: 1fr !important; }
  .hemicycle-stage { min-width: 610px; height: 390px; }
  .mp-seat { width: 15px; height: 15px; }
  .senate-seat { width: 17px; height: 17px; }
}


/* v1.7 každodenní práce + text spacing fix */
.btn small, .district-action-btn small, .foreign-actions small, .leader-panel .funding-card small { display:block; margin-top:5px; line-height:1.25; }
.district-action-btn { display:grid !important; grid-template-columns:1fr; justify-items:start; align-content:start; row-gap:6px; white-space:normal; }
.district-action-btn b { display:block; line-height:1.18; }
.district-action-btn small { opacity:.78; color:var(--muted); }
.daily-layout { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:16px; align-items:start; }
.micro-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:12px; margin-bottom:16px; }
.micro-card, .micro-message { border:1px solid rgba(148,163,184,.20); background:linear-gradient(180deg,rgba(15,23,42,.78),rgba(8,16,32,.72)); border-radius:18px; padding:14px; box-shadow:inset 0 1px 0 rgba(255,255,255,.04); }
.micro-card header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:10px; }
.micro-card h3 { margin:0; font-size:1rem; }
.micro-card header span { font-size:.75rem; color:#bae6fd; border:1px solid rgba(125,211,252,.22); border-radius:999px; padding:4px 8px; white-space:nowrap; }
.micro-controls { display:grid; gap:8px; margin-top:10px; }
.micro-list { display:grid; gap:10px; }
.micro-message p { margin:0 0 6px; }
.micro-message small { color:var(--muted); display:block; }
.micro-side { display:grid; gap:12px; position:sticky; top:84px; }
.note-line { border-bottom:1px solid rgba(148,163,184,.14); padding:9px 0; margin:0; color:var(--soft); display:grid; gap:4px; }
.note-line b { color:var(--text); display:block; }
.note-line small { color:var(--muted); font-size:.75rem; }
.note-line.success { color:#bbf7d0; }
.note-line.tip { color:#bae6fd; }
.achievement-grid { display:flex; flex-wrap:wrap; gap:8px; }
.achievement { border:1px solid rgba(250,204,21,.28); background:rgba(250,204,21,.08); color:#fef3c7; border-radius:999px; padding:7px 10px; font-weight:800; font-size:.8rem; }
.photo-map .silent-map-zone { display:none !important; }
.election-map-safe { max-height:360px; margin-bottom:12px; }
.studio-count-map { grid-column:1 / -1; border:1px solid rgba(148,163,184,.16); border-radius:18px; padding:12px; background:rgba(15,23,42,.32); }
@media (max-width: 1000px) { .daily-layout { grid-template-columns:1fr; } .micro-side { position:static; } }
@media (max-width: 620px) { .micro-grid { grid-template-columns:1fr; } .micro-controls { grid-template-columns:1fr; } }

/* v1.8 — definitivní mapy, volební noc 2.0, koalice 2.5, daily balanc */
.atlas-map { background: linear-gradient(180deg, rgba(10,18,34,.72), rgba(6,12,24,.88)); }
.atlas-map::after {
  content: 'výběr přes karty níže';
  position: absolute;
  right: 16px;
  bottom: 14px;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(2,6,23,.70);
  color: #dbeafe;
  border-radius: 999px;
  padding: 7px 10px;
  font-size: .78rem;
  font-weight: 800;
  backdrop-filter: blur(10px);
}
.selected-atlas-card {
  display: flex;
  gap: 12px;
  align-items: center;
  margin: 12px 0;
  padding: 12px 14px;
  border-radius: 17px;
  border: 1px solid rgba(125,211,252,.22);
  background: linear-gradient(135deg, rgba(14,165,233,.13), rgba(139,92,246,.08));
}
.selected-atlas-card b { display:block; font-size: 1.05rem; }
.selected-atlas-card small { display:block; color: var(--muted); margin-top: 3px; }
.map-more-countries { margin-top: 14px; border-top: 1px solid rgba(148,163,184,.16); padding-top: 12px; }
.map-more-countries summary { cursor:pointer; font-weight: 900; color: #bfdbfe; }
.country-picker-grid.compact { max-height: 180px; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.country-picker small { display:block; color: var(--muted); font-size: .72rem; }
.region-picker small { line-height: 1.25; }
.election-night-map { overflow: hidden; }
.election-region-board {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(155px, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.election-region-tile {
  position: relative;
  text-align: left;
  border: 1px solid rgba(148,163,184,.18);
  border-left: 6px solid var(--winner, #64748b);
  background: linear-gradient(135deg, color-mix(in srgb, var(--winner, #64748b) 18%, rgba(15,23,42,.92)), rgba(8,16,32,.92));
  color: var(--text);
  border-radius: 16px;
  padding: 11px 12px;
  display: grid;
  gap: 3px;
  min-height: 86px;
}
.election-region-tile:hover,
.election-region-tile.active { border-color: rgba(255,255,255,.42); transform: translateY(-1px); }
.election-region-tile b { display:block; }
.election-region-tile span { font-weight: 900; color: #e0f2fe; }
.election-region-tile small { color: var(--muted); }
.election-region-detail {
  margin-top: 12px;
  padding: 13px 14px;
  border-radius: 17px;
  border: 1px solid rgba(125,211,252,.20);
  background: rgba(2,6,23,.36);
}
.election-region-detail h4 { margin: 0 0 5px; }
.coalition-hint-list { display:grid; gap:8px; margin-top: 8px; }
.coalition-hint {
  border: 1px solid rgba(148,163,184,.18);
  border-radius: 14px;
  padding: 9px 10px;
  background: rgba(15,23,42,.52);
  display:grid;
  gap:3px;
}
.coalition-hint.ok { border-color: rgba(34,197,94,.36); background: rgba(34,197,94,.08); }
.coalition-hint b { display:block; }
.coalition-hint span { color:#e0f2fe; font-weight: 900; }
.coalition-hint small { color:var(--muted); }
.negotiation-25 .coalition-dashboard.deep { grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); }
.negotiation-grid { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.negotiation-grid ul { margin: 8px 0 0; padding-left: 18px; color: var(--soft); }
.daily-rules-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px,1fr));
  gap: 10px;
  margin-bottom: 14px;
}
.daily-rule { display:grid; gap:4px; }
.daily-rule b { color:#e0f2fe; }
.daily-rule span { color:var(--muted); font-size:.86rem; line-height:1.35; }
.btn { gap: 5px; }
.btn b, .btn small { pointer-events: none; }
.btn small { display:block; margin-top: 3px; line-height:1.25; opacity:.78; }
.quick-actions .btn, .action-grid .btn { white-space: normal; text-align: left; }
.note-line span { display:block; line-height:1.35; }
@media (max-width: 760px) {
  .atlas-map::after { display:none; }
  .election-region-board { grid-template-columns: 1fr; }
  .selected-atlas-card { align-items:flex-start; }
}


/* v1.9 map hotfix + always-play activities visibility */
.photo-truth-map::after,
.atlas-map::after,
.election-map-safe::after {
  display: none !important;
  content: none !important;
  inset: auto !important;
  left: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  width: 0 !important;
  height: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.photo-truth-map,
.atlas-map,
.election-map-safe {
  background: #0b1220 !important;
  min-height: 0 !important;
  height: auto !important;
}
.photo-truth-map img,
.atlas-map img,
.election-map-safe img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  opacity: 1 !important;
  filter: saturate(1.03) contrast(1.02) brightness(.96) !important;
}
.map-mode-note { margin-top: 0; }
.daily-teaser { margin-top: 14px; }
.daily-teaser-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.daily-teaser-card {
  border:1px solid rgba(125,211,252,.18);
  background:linear-gradient(180deg,rgba(15,23,42,.82),rgba(8,16,32,.76));
  color:var(--text);
  border-radius:16px;
  padding:12px;
  text-align:left;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.daily-teaser-card:hover { border-color:rgba(125,211,252,.45); transform:translateY(-1px); }
.daily-teaser-card b { display:block; margin-bottom:4px; }
.daily-teaser-card small { color:var(--muted); line-height:1.3; }
.district-action-btn { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:4px; min-height:66px; }
.district-action-btn b, .district-action-btn small { display:block; line-height:1.18; }
.debate-card header { gap:8px; }
.debate-card header b, .debate-card header span { display:block; line-height:1.3; }
@media (max-width: 800px) { .daily-teaser-grid { grid-template-columns:1fr 1fr; } }
@media (max-width: 520px) { .daily-teaser-grid { grid-template-columns:1fr; } }

/* v2.0 — fixed daily route + safe map badges instead of broken overlays */
.badge-map {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 22px !important;
  background: #eef2f7 !important;
}
.badge-map img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center !important;
  filter: saturate(1.02) contrast(1.01) brightness(.98) !important;
}
.eu-photo-map.badge-map img { background:#b9c9d8; }
.cz-photo-map.badge-map img { background:#f8fafc; }
.atlas-badge-layer {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 4;
}
.map-badge {
  position: absolute;
  left: var(--x);
  top: var(--y);
  transform: translate(-50%, -50%);
  width: 38px;
  height: 38px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  border: 2px solid rgba(255,255,255,.85);
  background: color-mix(in srgb, var(--badge, #38bdf8) 78%, #020617);
  color: #fff;
  font-weight: 950;
  font-size: .78rem;
  letter-spacing: .02em;
  box-shadow: 0 10px 26px rgba(2,6,23,.35), 0 0 0 5px color-mix(in srgb, var(--badge, #38bdf8) 20%, transparent);
  cursor: pointer;
  pointer-events: auto;
  transition: transform .12s ease, box-shadow .12s ease, filter .12s ease;
}
.map-badge:hover,
.map-badge.active {
  transform: translate(-50%, -50%) scale(1.13);
  box-shadow: 0 14px 34px rgba(2,6,23,.45), 0 0 0 7px color-mix(in srgb, var(--badge, #38bdf8) 30%, transparent);
  filter: brightness(1.12);
}
.region-badges .map-badge { width: 42px; height: 42px; font-size: .76rem; }
.election-map-safe {
  max-height: none !important;
  margin-bottom: 12px;
  display: block;
}
.election-map-safe img {
  max-height: none !important;
  object-fit: contain !important;
}
.election-map-safe .map-badge {
  width: 44px;
  height: 44px;
  border-width: 2px;
  font-size: .74rem;
}
.daily-panel .micro-card,
.daily-panel .micro-message,
.daily-panel .note-line,
.daily-panel .daily-rule {
  border-radius: 16px;
}
.daily-panel .micro-card .btn,
.daily-panel .micro-message .btn {
  justify-content: center;
}
@media (max-width: 760px) {
  .map-badge { width: 30px; height: 30px; font-size: .65rem; box-shadow: 0 8px 18px rgba(2,6,23,.32), 0 0 0 3px color-mix(in srgb, var(--badge, #38bdf8) 18%, transparent); }
  .region-badges .map-badge,
  .election-map-safe .map-badge { width: 32px; height: 32px; font-size: .62rem; }
}

/* v2.1 — volební noc jako event + jasnější dopady akcí */
.choice-btn.rich-choice { gap: 6px; }
.choice-btn.rich-choice em {
  display: block;
  margin-top: 7px;
  font-style: normal;
  color: #bfdbfe;
  font-size: .78rem;
  line-height: 1.32;
  border-top: 1px solid rgba(148,163,184,.14);
  padding-top: 7px;
}
.tag-soft { background: rgba(125,211,252,.10); color:#bae6fd; }
.micro-effect-preview {
  border: 1px solid rgba(125,211,252,.18);
  background: rgba(14,165,233,.07);
  color: #c7d2fe;
  border-radius: 13px;
  padding: 8px 10px;
  font-size: .82rem;
  line-height: 1.35;
  margin: 8px 0;
}
.micro-effect-preview b { color:#e0f2fe; }
.election-map-safe { position: relative; isolation: isolate; }
.election-map-safe img { position: relative; z-index: 1; }
.winner-region-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
  mix-blend-mode: multiply;
  filter: saturate(1.35);
}
.winner-region-overlay polygon {
  stroke: rgba(255,255,255,.58);
  stroke-width: .55;
  vector-effect: non-scaling-stroke;
  transition: opacity .2s ease, filter .2s ease;
}
.election-map-safe .map-badge { z-index: 3; }
.counting-phase {
  margin: 12px 0;
  border: 1px solid rgba(125,211,252,.18);
  background: linear-gradient(135deg, rgba(14,165,233,.10), rgba(139,92,246,.08));
  border-radius: 16px;
  padding: 11px 12px;
  display: grid;
  gap: 8px;
}
.counting-phase b { color:#e0f2fe; }
.counting-phase span { color: var(--soft); line-height: 1.35; }
.counting-phase div { display:flex; flex-wrap:wrap; gap:7px; }
.counting-phase i {
  font-style: normal;
  border: 1px solid rgba(148,163,184,.18);
  background: rgba(15,23,42,.56);
  color: var(--muted);
  border-radius: 999px;
  padding: 5px 8px;
  font-size: .75rem;
  font-weight: 800;
}
.counting-phase i.on {
  color:#052e16;
  background: linear-gradient(135deg, #86efac, #67e8f9);
  border-color: rgba(255,255,255,.35);
}
.election-studio.pro-studio { gap: 16px; }
.studio-headlines div { line-height: 1.35; }
@media (max-width: 760px) {
  .winner-region-overlay { opacity: .86; }
  .counting-phase div { display:grid; grid-template-columns:1fr 1fr; }
}

/* v2.2 okrsky + volební noc drilldown */
.election-colored-map .winner-region-overlay { opacity: .92; mix-blend-mode: multiply; }
.election-colored-map .winner-region-overlay polygon { stroke: rgba(15,23,42,.28); stroke-width: .65; }
.election-drilldown {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(330px, .85fr);
  gap: 16px;
  margin-top: 14px;
}
.drill-main,
.drill-side,
.precinct-detail,
.mini-party-table,
.precinct-preview {
  border: 1px solid rgba(148,163,184,.18);
  background: rgba(15,23,42,.58);
  border-radius: 18px;
  padding: 14px;
}
.election-district-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 10px;
}
.election-district-card,
.precinct-row {
  text-align: left;
  border: 1px solid rgba(148,163,184,.18);
  background: linear-gradient(135deg, color-mix(in srgb, var(--winner, #38bdf8) 16%, rgba(15,23,42,.86)), rgba(15,23,42,.72));
  color: var(--text);
  border-radius: 15px;
  padding: 11px 12px;
  cursor: pointer;
  display: grid;
  gap: 4px;
}
.election-district-card.active,
.precinct-row.active {
  border-color: color-mix(in srgb, var(--winner, #38bdf8) 72%, white);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--winner, #38bdf8) 20%, transparent);
}
.precinct-list {
  display: grid;
  gap: 8px;
  max-height: 460px;
  overflow: auto;
  padding-right: 4px;
  margin: 10px 0;
}
.precinct-row.pending { opacity: .72; filter: grayscale(.25); }
.mini-party-table { margin: 10px 0 14px; }
.mini-party-table h4 { margin: 0 0 8px; }
.mini-party-row {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) 72px 96px;
  gap: 8px;
  align-items: center;
  padding: 7px 0;
  border-top: 1px solid rgba(148,163,184,.10);
  font-size: .9rem;
}
.mini-party-row span { display:flex; align-items:center; gap:8px; min-width:0; }
.mini-party-row i { width:11px; height:11px; border-radius:50%; flex:0 0 auto; }
.mini-party-row small { color: var(--muted); text-align:right; }
.precinct-chip-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 8px;
  margin-top: 8px;
}
.precinct-chip {
  border: 1px solid rgba(148,163,184,.16);
  background: rgba(2,6,23,.32);
  border-radius: 13px;
  padding: 8px 9px;
  display: grid;
  gap: 3px;
}
.precinct-chip small { color: var(--muted); }
@media (max-width: 900px) {
  .election-drilldown { grid-template-columns: 1fr; }
  .mini-party-row { grid-template-columns: 1fr 64px; }
  .mini-party-row small { grid-column: 1 / -1; text-align:left; }
}

/* v2.3 — bezpečné barvení volební mapy + viditelné cooldowny */
.winner-region-overlay { display:none !important; }
.winner-bubble-overlay {
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
}
.winner-bubble {
  position:absolute;
  left:var(--x);
  top:var(--y);
  width:var(--size, 96px);
  height:var(--size, 96px);
  transform:translate(-50%, -50%);
  border-radius:999px;
  background: color-mix(in srgb, var(--winner, #38bdf8) 54%, transparent);
  border: 2px solid color-mix(in srgb, var(--winner, #38bdf8) 72%, white);
  box-shadow: 0 0 0 10px color-mix(in srgb, var(--winner, #38bdf8) 12%, transparent), inset 0 0 35px rgba(255,255,255,.12);
  filter:saturate(1.22);
  opacity:.78;
}
.election-map-safe .atlas-badge-layer,
.election-map-safe .map-badge { z-index:4; }
.turnout-strip {
  border:1px solid rgba(125,211,252,.18);
  background:linear-gradient(135deg,rgba(14,165,233,.10),rgba(34,197,94,.07));
  border-radius:14px;
  padding:10px 12px;
  display:grid;
  gap:3px;
  margin:8px 0 12px;
}
.turnout-strip b { color:#e0f2fe; }
.turnout-strip span { color:var(--muted); font-size:.84rem; line-height:1.35; }
.cooldown-line {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border:1px solid rgba(148,163,184,.14);
  background:rgba(15,23,42,.55);
  border-radius:12px;
  padding:7px 9px;
  margin:8px 0;
  font-size:.82rem;
}
.cooldown-line.ready { border-color:rgba(74,222,128,.18); background:rgba(22,163,74,.07); }
.cooldown-line.locked { border-color:rgba(251,191,36,.22); background:rgba(245,158,11,.08); }
.cooldown-line b { color:#e2e8f0; }
.cooldown-line span { color:var(--muted); }
.election-district-card small,
.election-region-tile small,
.precinct-row small { line-height:1.32; }
@media (max-width:760px){
  .winner-bubble { width: calc(var(--size, 96px) * .68); height: calc(var(--size, 96px) * .68); }
}

/* v2.4 regime / endgame cards */
.regime-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:14px 0 20px}.regime-card{border:1px solid rgba(148,163,184,.22);background:linear-gradient(180deg,rgba(15,23,42,.82),rgba(2,6,23,.72));border-radius:18px;padding:16px;box-shadow:0 12px 32px rgba(0,0,0,.18)}.regime-card.locked{opacity:.62}.regime-card header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.regime-card header span{font-size:12px;color:#fbbf24}.callout{border:1px solid rgba(56,189,248,.28);background:rgba(14,165,233,.08);padding:12px 14px;border-radius:16px;margin:12px 0}.callout.warn{border-color:rgba(251,191,36,.35);background:rgba(251,191,36,.08)}.callout.bad{border-color:rgba(248,113,113,.38);background:rgba(127,29,29,.18)}.precinct-row.partial{border-color:rgba(251,191,36,.38)}

/* v2.5 okrskové akce */
.precinct-campaign-block { margin-top: 14px; padding: 14px; border: 1px solid rgba(56,189,248,.22); border-radius: 18px; background: rgba(15,23,42,.42); }
.precinct-campaign-block .select { width: 100%; margin: 8px 0 10px; }
.precinct-actions .district-action-btn small { color: #bae6fd; }
.precinct-chip small { display: block; line-height: 1.35; }
.regime-card.locked { opacity: .62; }
.precinct-chip em { display:block; margin-top:4px; color:#b7e4ff; font-style:normal; font-size:11px; line-height:1.25; opacity:.88; }
.historical-note { color:#bde7ff; }
.source-note { color:#c7f9d4; }
.data-source-panel .pill.ok { background:rgba(34,197,94,.18); border-color:rgba(34,197,94,.55); }

/* v2.9 dynamic politics expansion */
.power-map-summary,
.ideology-compass-card,
.society-trends-card {
  margin: 14px 0;
  padding: 14px;
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 18px;
  background: rgba(2,6,23,.28);
}
.power-map-grid,
.voter-national-grid,
.poll-group-grid,
.compass-grid,
.society-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 10px;
  margin-top: 10px;
}
.power-map-card,
.poll-group-grid span {
  text-align: left;
  border: 1px solid rgba(148,163,184,.20);
  border-radius: 14px;
  background: rgba(15,23,42,.58);
  color: var(--text);
  padding: 11px 12px;
}
.power-map-card.active,
.voter-block.national {
  border-color: rgba(56,189,248,.42);
  box-shadow: 0 0 0 1px rgba(56,189,248,.10);
}
.power-map-card b,
.power-map-card span,
.poll-group-grid b,
.poll-group-grid small { display:block; }
.power-focus { margin-top: 0; }
.voter-detail-head { display:flex; justify-content:space-between; gap:12px; align-items:center; margin:14px 0 10px; }
.scandals-panel .section-head .quick-actions { align-items:center; }
.crisis-actions { margin-top: 12px; }
.deep-poll details { margin-top: 8px; }
.region-poll { margin-top: 8px; opacity: .92; }
.warn-card { border-color: rgba(251,146,60,.42); }
.callout.warn ul { margin: 6px 0 0 18px; padding: 0; }
.pill.warn,
.tag.warn { border-color: rgba(251,191,36,.45); color:#fde68a; background:rgba(251,191,36,.10); }
@media (max-width: 760px) {
  .voter-detail-head { display:block; }
}

/* v3.0 — UI polish, global cooldown timers, cleaner district/precinct layout */
body {
  background:
    radial-gradient(circle at 12% 10%, rgba(14,165,233,.24), transparent 34rem),
    radial-gradient(circle at 85% 8%, rgba(124,58,237,.20), transparent 30rem),
    radial-gradient(circle at 55% 90%, rgba(34,197,94,.08), transparent 34rem),
    linear-gradient(145deg, #030712 0%, #081326 48%, #040816 100%);
}
body::before {
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  opacity:.18;
  background-image:
    linear-gradient(rgba(148,163,184,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148,163,184,.08) 1px, transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.85), transparent 78%);
}
.panel, .stat-card, .event-card, .region-card, .election-card {
  border-color:rgba(125,211,252,.18);
  box-shadow:0 24px 80px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.045);
}
.panel::selection, .btn::selection { background:rgba(56,189,248,.35); }
.btn {
  transition:transform .16s ease, filter .16s ease, border-color .16s ease, background .16s ease;
  letter-spacing:-.01em;
}
.btn.secondary {
  background:linear-gradient(180deg, rgba(15,23,42,.86), rgba(2,6,23,.82));
  border-color:rgba(125,211,252,.22);
}
.btn.good {
  background:linear-gradient(135deg, #16a34a, #0ea5e9);
}
.select, .input, .textarea {
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.section-head h2, .section-head h3 { letter-spacing:-.035em; }
.tiny { line-height:1.45; }

/* poradci — oddělený text a čísla */
.advisor-grid { grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:14px; }
.advisor-card {
  display:grid;
  gap:14px;
  align-content:space-between;
  min-height:165px;
  background:
    linear-gradient(150deg, rgba(30,41,59,.82), rgba(2,6,23,.64)),
    radial-gradient(circle at 100% 0%, rgba(56,189,248,.12), transparent 44%);
  border-color:rgba(125,211,252,.19);
}
.advisor-title { display:grid; gap:4px; }
.advisor-title b { font-size:1.02rem; line-height:1.18; color:#f8fbff; }
.advisor-title small { color:#93c5fd; font-weight:800; text-transform:uppercase; letter-spacing:.045em; }
.advisor-money {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}
.advisor-money span {
  display:grid;
  gap:3px;
  padding:10px 11px;
  border:1px solid rgba(148,163,184,.16);
  border-radius:14px;
  background:rgba(2,6,23,.42);
}
.advisor-money b { color:#e0f2fe; font-size:.95rem; }
.advisor-money small { color:var(--muted); font-size:.72rem; text-transform:uppercase; letter-spacing:.04em; }
.advisor-card .btn { justify-self:start; min-width:118px; }

/* okresy/kraje — méně chaosu, výběr přes command bar */
.districts-redesign .section-head { margin-bottom:16px; }
.district-command-bar {
  display:grid;
  gap:14px;
  padding:14px;
  border:1px solid rgba(148,163,184,.16);
  border-radius:22px;
  background:linear-gradient(180deg, rgba(15,23,42,.58), rgba(2,6,23,.38));
  margin-bottom:16px;
}
.district-command-bar label,
.district-focus-head label {
  display:grid;
  gap:7px;
  color:#bfdbfe;
  font-size:.8rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.district-region-strip {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(205px,1fr));
  gap:10px;
}
.region-pill-card,
.district-mini-card {
  text-align:left;
  border:1px solid rgba(148,163,184,.16);
  background:linear-gradient(180deg, rgba(15,23,42,.70), rgba(2,6,23,.60));
  color:var(--text);
  border-radius:18px;
  padding:12px 13px;
  display:grid;
  gap:5px;
  min-height:86px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.region-pill-card b,
.district-mini-card b { line-height:1.12; }
.region-pill-card span,
.district-mini-card span { color:#bae6fd; font-weight:900; }
.region-pill-card small,
.district-mini-card small { color:var(--muted); line-height:1.3; }
.region-pill-card.active,
.district-mini-card.active {
  border-color:rgba(56,189,248,.62);
  background:linear-gradient(135deg, rgba(14,165,233,.22), rgba(124,58,237,.18));
  box-shadow:0 18px 42px rgba(14,165,233,.10), inset 0 1px 0 rgba(255,255,255,.08);
}
.district-layout.compact-layout { grid-template-columns:1fr; }
.district-detail.wide { min-width:0; }
.district-focus-head {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,380px);
  gap:14px;
  align-items:end;
  margin-bottom:14px;
}
.district-focus-head h3 { margin:0 0 5px; font-size:1.45rem; letter-spacing:-.04em; }
.district-mini-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:10px;
  margin-bottom:16px;
}
.district-card-focus {
  display:grid;
  gap:12px;
  padding:18px;
  background:
    radial-gradient(circle at 100% 0%, rgba(56,189,248,.12), transparent 36%),
    linear-gradient(180deg, rgba(15,23,42,.78), rgba(2,6,23,.66));
  border-color:rgba(125,211,252,.20);
}
.district-card-focus > header b { font-size:1.25rem; letter-spacing:-.025em; }
.precinct-campaign-block,
.district-campaign-block,
.precinct-preview {
  border:1px solid rgba(148,163,184,.15);
  border-radius:18px;
  padding:14px;
  background:rgba(2,6,23,.34);
}
.precinct-campaign-block h4,
.district-campaign-block h4,
.precinct-preview h4 { margin-top:0; }

/* akční karty — text, cena a cooldown se nemačkají do sebe */
.district-action-grid.precinct-actions,
.district-action-grid { gap:10px; }
.action-button-clean {
  display:grid !important;
  grid-template-columns:1fr;
  justify-items:start;
  gap:8px;
  min-height:104px;
  text-align:left;
  padding:14px !important;
  border-radius:18px !important;
  white-space:normal !important;
  position:relative;
  overflow:hidden;
}
.action-button-clean::after {
  content:"";
  position:absolute;
  inset:auto -40px -45px auto;
  width:110px;
  height:110px;
  border-radius:999px;
  background:rgba(56,189,248,.08);
  pointer-events:none;
}
.action-button-clean b { display:block; line-height:1.15; max-width:92%; }
.action-meta {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.action-meta span {
  border:1px solid rgba(148,163,184,.14);
  background:rgba(2,6,23,.34);
  color:#cbd5e1;
  border-radius:999px;
  padding:5px 8px;
  font-size:.78rem;
  font-weight:900;
}
.ready-badge,
.cooldown-badge {
  display:inline-flex;
  align-items:center;
  gap:6px;
  border-radius:999px;
  padding:6px 9px;
  font-size:.76rem;
  font-weight:950;
  letter-spacing:.02em;
}
.ready-badge { color:#bbf7d0; background:rgba(34,197,94,.13); border:1px solid rgba(34,197,94,.28); }
.cooldown-badge { color:#fecaca; background:rgba(239,68,68,.14); border:1px solid rgba(248,113,113,.38); }
.cooldown-badge::before { content:"●"; color:#ef4444; animation:pulseDot 1.1s ease-in-out infinite; }
@keyframes pulseDot { 50% { opacity:.35; transform:scale(.82); } }
.action-button-clean.cooldown-locked {
  border-color:rgba(248,113,113,.34) !important;
  background:linear-gradient(160deg, rgba(69,10,10,.55), rgba(15,23,42,.72)) !important;
  opacity:1 !important;
  color:#f8fafc !important;
}
.action-button-clean.cooldown-locked b { color:#fee2e2; }
.action-button-clean:disabled { cursor:not-allowed; }
.cooldown-line.locked {
  border-color:rgba(248,113,113,.36);
  background:rgba(127,29,29,.18);
}
.cooldown-line.locked b,
.cooldown-line.locked span { color:#fecaca; }
.micro-card header span:not(.ready-badge),
.micro-message .cooldown-line.locked { color:#fecaca; }
.micro-card:has(.cooldown-line.locked),
.micro-card .cooldown-line.locked { border-color:rgba(248,113,113,.28); }

@media (max-width:900px) {
  .district-focus-head { grid-template-columns:1fr; }
  .district-region-strip { grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); }
  .advisor-money { grid-template-columns:1fr; }
}
@media (max-width:620px) {
  .district-command-bar { padding:10px; }
  .region-pill-card, .district-mini-card { min-height:auto; }
  .action-button-clean { min-height:92px; }
}

/* v3.1 election testing + autorefresh polish */
.dev-row.stacked { display:grid; gap:10px; }
.election-tools-panel { margin-top:16px; border-color:rgba(56,189,248,.26); background:linear-gradient(180deg, rgba(15,23,42,.94), rgba(8,13,27,.94)); }
.election-type-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:10px; margin-top:12px; }
.election-type-btn { text-align:left; border:1px solid rgba(96,165,250,.24); background:rgba(15,23,42,.74); border-radius:18px; padding:13px 14px; color:var(--text); cursor:pointer; transition:.18s ease; box-shadow:inset 0 1px 0 rgba(255,255,255,.04); }
.election-type-btn:hover { transform:translateY(-1px); border-color:rgba(56,189,248,.55); background:rgba(15,23,42,.96); }
.election-type-btn b { display:block; font-size:15px; margin-bottom:4px; }
.election-type-btn span { display:block; color:var(--muted); font-size:12px; }
.election-type-btn small { display:block; color:#93c5fd; margin-top:8px; line-height:1.25; }
.president-nomination-box { margin-top:14px; display:grid; grid-template-columns:minmax(240px,1fr) auto; align-items:end; gap:10px; padding:12px; border:1px solid rgba(96,165,250,.18); border-radius:18px; background:rgba(2,6,23,.26); }
.president-nomination-box label { display:grid; gap:6px; font-size:12px; color:var(--muted); }
.election-card .pill.ok, .calendar-panel .pill.ok { background:rgba(34,197,94,.12); border-color:rgba(34,197,94,.35); color:#bbf7d0; }
.studio-live-head .pill.warn { animation:pulseLive 2.4s ease-in-out infinite; }
@keyframes pulseLive { 0%,100% { box-shadow:0 0 0 rgba(248,113,113,0); } 50% { box-shadow:0 0 20px rgba(248,113,113,.18); } }
@media (max-width: 720px) { .president-nomination-box { grid-template-columns:1fr; } }

/* v3.2: presidential strategy + political ticker */
.presidential-strategy-box { margin-top: 14px; border-color: rgba(56,189,248,.24); }
.presidential-strategy-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:12px; }
.strategy-card { border:1px solid rgba(148,163,184,.16); background:linear-gradient(180deg, rgba(15,23,42,.78), rgba(2,6,23,.42)); border-radius:18px; padding:14px; display:grid; gap:10px; }
.strategy-card.active { border-color:rgba(34,197,94,.55); box-shadow:0 0 0 1px rgba(34,197,94,.16), inset 0 1px 0 rgba(255,255,255,.05); }
.strategy-card b { display:block; color:#e5f3ff; }
.strategy-card label { display:grid; gap:6px; }
.political-ticker-panel { margin-top: 14px; }
.political-ticker-panel .section-head { align-items:flex-start; }
@media (max-width: 1000px) { .presidential-strategy-grid { grid-template-columns:1fr; } }

/* v3.3: fixed Senate/President pages */
.senate-layout { align-items: start; }
.senate-detail header, .president-card header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.senate-cycle-box { margin-top: 14px; }
.senate-clubs .club-card { min-height: 92px; }
.president-layout-grid {
  display:grid;
  grid-template-columns:minmax(300px,.85fr) minmax(360px,1.15fr);
  gap:16px;
  align-items:start;
  margin-top:14px;
}
.president-actions { align-items:stretch; }
.candidate-mini-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:10px;
  margin-top:12px;
}
.candidate-mini-card {
  border:1px solid rgba(148,163,184,.20);
  background:rgba(15,23,42,.55);
  border-radius:16px;
  padding:12px;
  display:grid;
  gap:4px;
}
.candidate-mini-card span, .candidate-mini-card small { color:var(--muted); }
.president-panel .election-tools-panel { margin:0; }
.president-panel .political-ticker-panel { margin-top:12px; }
@media (max-width: 1050px) {
  .president-layout-grid, .senate-layout { grid-template-columns:1fr; }
}

/* v3.4: president UI cleanup + leader press interviews */
.president-layout-grid { grid-template-columns:minmax(320px,.75fr) minmax(420px,1.25fr); }
.strategy-shell-card { padding:0; background:transparent; border:0; box-shadow:none; }
.presidential-control-panel { display:grid; gap:14px; border:1px solid rgba(56,189,248,.24); background:linear-gradient(180deg, rgba(15,23,42,.76), rgba(2,6,23,.38)); border-radius:22px; padding:16px; overflow:hidden; }
.clean-strategy-grid, .presidential-strategy-grid.clean-strategy-grid { grid-template-columns:repeat(auto-fit,minmax(235px,1fr)); gap:14px; }
.clean-strategy-grid .strategy-card { min-width:0; align-content:start; }
.clean-strategy-grid .strategy-card .btn, .clean-strategy-grid .strategy-card .input, .clean-strategy-grid .strategy-card .select { width:100%; max-width:100%; min-width:0; }
.clean-strategy-grid .strategy-card .btn { white-space:normal; line-height:1.2; }
.incumbent-rerun-card { display:flex; align-items:center; justify-content:space-between; gap:12px; border:1px solid rgba(245,158,11,.28); background:linear-gradient(135deg, rgba(245,158,11,.10), rgba(15,23,42,.45)); border-radius:18px; padding:12px 14px; }
.incumbent-rerun-card b, .incumbent-rerun-card small { display:block; }
.incumbent-rerun-card small { color:var(--muted); margin-top:3px; }
.presidential-election-studio .studio-metrics { grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); }
.presidential-side .finalist-row { border-color:rgba(245,158,11,.22); }
.leader-interview-card { margin:18px 0; border:1px solid rgba(56,189,248,.22); background:linear-gradient(180deg, rgba(15,23,42,.70), rgba(2,6,23,.32)); border-radius:22px; padding:16px; display:grid; gap:12px; }
.interview-question { border:1px solid rgba(148,163,184,.16); background:rgba(2,6,23,.28); border-radius:16px; padding:11px 12px; color:var(--soft); }
.interview-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:10px; }
.interview-choice { text-align:left; border:1px solid rgba(96,165,250,.22); background:rgba(15,23,42,.72); color:var(--text); border-radius:17px; padding:12px; display:grid; gap:5px; cursor:pointer; transition:.18s ease; }
.interview-choice:hover:not(:disabled) { transform:translateY(-1px); border-color:rgba(56,189,248,.55); background:rgba(15,23,42,.95); }
.interview-choice:disabled { opacity:.48; cursor:not-allowed; }
.interview-choice span, .interview-choice small { color:var(--muted); line-height:1.28; }
@media (max-width:1050px) { .president-layout-grid { grid-template-columns:1fr; } .incumbent-rerun-card { align-items:flex-start; flex-direction:column; } }

/* v3.5 election night polish */
.election-lock-note{
  margin:10px 0 14px;
  padding:12px 13px;
  border:1px solid rgba(251,113,133,.38);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(127,29,29,.34),rgba(15,23,42,.78));
  color:#e5e7eb;
  box-shadow:0 12px 34px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.04);
}
.election-lock-note b{display:block;color:#fecaca;margin-bottom:4px;}
.election-lock-note span{display:block;font-size:.78rem;line-height:1.35;color:#cbd5e1;}
.election-night-main{
  border-color:rgba(56,189,248,.45)!important;
  background:radial-gradient(circle at 12% 0%,rgba(59,130,246,.18),transparent 33%),radial-gradient(circle at 88% 4%,rgba(236,72,153,.14),transparent 26%),rgba(8,15,31,.94)!important;
  box-shadow:0 24px 70px rgba(2,6,23,.42), inset 0 1px 0 rgba(255,255,255,.05);
}
.election-night-main .election-top h2{font-size:clamp(1.55rem,2.2vw,2.45rem);letter-spacing:-.035em;}
.election-night-main .progress-wrap{height:13px;border-radius:99px;background:rgba(15,23,42,.78);border:1px solid rgba(125,211,252,.2);overflow:hidden;}
.election-night-main .progress-wrap span{height:100%;display:block;background:linear-gradient(90deg,#60a5fa,#22d3ee,#a78bfa);border-radius:inherit;box-shadow:0 0 20px rgba(34,211,238,.45);}
.election-night-main .studio-headlines div{
  font-size:1.02rem;
  padding:13px 15px;
  border-radius:16px;
  background:linear-gradient(135deg,rgba(30,64,175,.28),rgba(8,47,73,.22));
  border:1px solid rgba(96,165,250,.25);
}
.election-archive-panel{display:flex;flex-direction:column;gap:16px;}
.archive-election-card{
  border:1px solid rgba(96,165,250,.24);
  background:linear-gradient(145deg,rgba(15,23,42,.92),rgba(2,6,23,.68));
  border-radius:24px;
  padding:18px;
  box-shadow:0 16px 44px rgba(0,0,0,.22);
}
.archive-election-card header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px;}
.archive-election-card h3{margin:0 0 6px;font-size:1.25rem;letter-spacing:-.02em;}
.archive-result-hero{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0 14px;}
.archive-result-hero>div{padding:13px 14px;border-radius:18px;background:rgba(15,23,42,.72);border:1px solid rgba(148,163,184,.16);}
.archive-result-hero b{display:block;font-size:1.25rem;color:#e2e8f0;}
.archive-result-hero small{color:#94a3b8;}
.archive-mini-table{margin-top:12px;}
@media (max-width:760px){.archive-election-card header{display:block}.archive-result-hero{grid-template-columns:1fr}.election-night-main .studio-headlines div{font-size:.92rem}}

/* v3.6: real election schedule, persistent filters, clearer government & finance */
.election-filter-bar{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  align-items:end;
  margin:12px 0;
  padding:12px;
  border:1px solid rgba(96,165,250,.18);
  border-radius:18px;
  background:rgba(2,6,23,.26);
}
.election-filter-bar label{display:grid;gap:6px;color:var(--muted);font-size:.78rem;}
.precinct-list.tall{max-height:460px;overflow:auto;padding-right:4px;}
.precinct-list .selected{border-color:rgba(34,211,238,.62)!important;background:linear-gradient(135deg,rgba(8,145,178,.22),rgba(15,23,42,.74))!important;}
.polished-negotiation{display:grid;gap:16px;}
.mandate-strip{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  padding:12px 14px;
  border:1px solid rgba(56,189,248,.24);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(14,116,144,.14),rgba(15,23,42,.62));
}
.mandate-strip span{color:var(--muted);font-size:.8rem;}
.mandate-strip b{padding:7px 11px;border-radius:999px;border:1px solid color-mix(in srgb,var(--party,#38bdf8),transparent 30%);background:color-mix(in srgb,var(--party,#38bdf8),transparent 88%);color:#e2e8f0;}
.mandate-strip small{color:#93c5fd;}
.coalition-row{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 4px;}
.coalition-row .party-chip{display:inline-flex;align-items:center;gap:6px;}
.coalition-row .human-mark{font-size:.72rem;color:#a7f3d0;background:rgba(16,185,129,.16);border:1px solid rgba(16,185,129,.32);padding:2px 6px;border-radius:999px;}
.negotiation-grid-clean{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start;}
.demand-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;}
.demand-card{border:1px solid rgba(148,163,184,.18);background:rgba(15,23,42,.62);border-radius:18px;padding:13px;display:grid;gap:8px;line-height:1.35;}
.demand-card.human{border-color:rgba(34,211,238,.36);box-shadow:inset 0 1px 0 rgba(255,255,255,.04);}
.demand-card .demand-title{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.demand-card .demand-title b{font-size:1rem;}
.demand-card .demand-meta{display:grid;gap:5px;color:var(--muted);font-size:.83rem;}
.demand-card .demand-meta span{display:block;}
.funding-card.cost-card span{color:#fbbf24;}
.crowd-streams{margin:10px 0 12px;padding:11px;border:1px solid rgba(16,185,129,.22);border-radius:16px;background:rgba(6,78,59,.12);display:flex;flex-wrap:wrap;gap:8px;}
.crowd-streams h4{width:100%;margin:0;color:#d1fae5;}
.crowd-streams span{display:inline-flex;padding:6px 9px;border:1px solid rgba(16,185,129,.25);border-radius:999px;background:rgba(15,23,42,.45);color:#bbf7d0;font-size:.82rem;}
@media (max-width:900px){.negotiation-grid-clean{grid-template-columns:1fr}.mandate-strip{align-items:flex-start;flex-direction:column}}

/* v3.7 election archive, predictions, runoff and interview polish */
.result-day-banner{position:sticky;top:0;z-index:40;margin:0 12px 10px;border:1px solid rgba(56,189,248,.35);border-radius:18px;background:linear-gradient(135deg,rgba(14,165,233,.18),rgba(20,184,166,.10));box-shadow:0 14px 40px rgba(2,6,23,.38);overflow:hidden}.result-day-main{width:100%;border:0;background:transparent;color:var(--text);display:flex;gap:14px;align-items:center;justify-content:space-between;padding:12px 16px;text-align:left;cursor:pointer}.result-day-main b{font-size:1.02rem}.result-day-main span{color:var(--muted);flex:1}.result-day-main small{color:#93c5fd}.prediction-panel{margin:18px 0;padding:18px;border:1px solid rgba(56,189,248,.22);border-radius:20px;background:linear-gradient(180deg,rgba(15,23,42,.92),rgba(15,23,42,.66))}.prediction-bars{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}.prediction-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border:1px solid rgba(148,163,184,.16);border-radius:15px;background:rgba(2,6,23,.25)}.prediction-row b{color:#dbeafe}.prediction-row small{color:#86efac}.runoff-panel{border-color:rgba(245,158,11,.38)!important;background:linear-gradient(135deg,rgba(245,158,11,.12),rgba(14,165,233,.07))!important}.runoff-finalists{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:12px 0}.runoff-finalists article{padding:15px;border:1px solid rgba(148,163,184,.18);border-radius:18px;background:rgba(2,6,23,.28)}.runoff-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:14px 0}.runoff-actions label{min-width:260px;flex:1}.small-feed{margin-top:12px}.archive-drill-details{margin-top:14px;border:1px solid rgba(56,189,248,.20);border-radius:18px;background:rgba(2,6,23,.20);overflow:hidden}.archive-drill-details summary{cursor:pointer;padding:14px 16px;font-weight:800;color:#bfdbfe}.archive-drill-details .studio-count-map{margin:0;border:0;border-top:1px solid rgba(148,163,184,.13);border-radius:0}.leader-interview-card h4{margin:14px 0 8px;color:#e2e8f0}.interview-grid.personal .interview-choice{opacity:.92;background:rgba(15,23,42,.58)}.interview-choice.soft{border-style:dashed}.program-card .stance-btn:disabled{opacity:.45;cursor:not-allowed}.president-panel .runoff-panel{margin-bottom:16px}.callout.warn{border-color:rgba(245,158,11,.45);background:rgba(245,158,11,.10)}
@media(max-width:800px){.result-day-main{display:block}.runoff-actions{display:block}.runoff-actions>*{margin-top:8px;width:100%}.prediction-bars{grid-template-columns:1fr}}

/* v3.8 multiplayer/admin/program finance polish */
.program-save-bar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:14px 0 18px;padding:14px 16px;border:1px solid rgba(148,163,184,.18);border-radius:18px;background:rgba(2,6,23,.28)}
.program-save-bar.dirty{border-color:rgba(34,211,238,.42);background:linear-gradient(135deg,rgba(14,116,144,.18),rgba(15,23,42,.55))}
.program-save-bar b{display:block;color:#e2e8f0}.program-save-bar small{display:block;color:#94a3b8;margin-top:3px}.program-card.drafting{border-color:rgba(34,211,238,.42)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 14px 34px rgba(8,145,178,.12)}
.funding-target-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}.funding-target-picker label{display:grid;gap:6px;font-size:.8rem;color:#94a3b8}
.chat-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}.chat-card{padding:15px;border:1px solid rgba(148,163,184,.18);border-radius:18px;background:rgba(2,6,23,.24)}.chat-card h3{margin-top:0}.chat-list{display:grid;gap:8px;max-height:320px;overflow:auto;padding-right:4px;margin-bottom:10px}.chat-msg{padding:10px 11px;border:1px solid rgba(96,165,250,.16);border-radius:14px;background:rgba(15,23,42,.58);display:grid;gap:3px}.chat-msg b{color:#dbeafe}.chat-msg span{color:#e2e8f0}.chat-msg small{color:#64748b}
.admin-table{display:grid;gap:9px;margin-top:12px}.admin-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:rgba(15,23,42,.55)}.admin-row small{display:block;color:#94a3b8;margin-top:2px}.admin-row span{font-weight:800;color:#bfdbfe;text-align:right}.admin-dev-panel{border-color:rgba(168,85,247,.28)!important;background:linear-gradient(135deg,rgba(88,28,135,.16),rgba(15,23,42,.65))!important}.president-action-grid .btn{white-space:normal;text-align:left;display:grid;gap:4px}.president-action-grid .btn small{font-size:.72rem;color:#94a3b8;line-height:1.2}.president-metrics{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}
@media(max-width:760px){.layout{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(86vw,340px);transform:translateX(-105%);transition:.18s ease;z-index:80;overflow:auto}.sidebar.open{transform:none}.mobile-overlay.show{position:fixed;inset:0;background:rgba(2,6,23,.62);z-index:70}.topbar{position:sticky;top:0;z-index:50}.topbar-left h1{font-size:1rem}.topbar-actions{gap:6px}.funding-target-picker,.chat-grid,.negotiation-grid-clean,.archive-result-hero{grid-template-columns:1fr}.program-save-bar{display:grid}.admin-row{display:grid}.bottom-nav{display:grid}.data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-actions,.inline-form{display:grid;grid-template-columns:1fr}.main-stack{min-width:0}.panel,.election-card{border-radius:18px}.table-wrap{overflow:auto}}

/* v3.9 ostré volby + média/admin polish */
.party-row-enhanced.human{border-color:rgba(52,211,153,.24);background:linear-gradient(135deg,rgba(6,78,59,.10),rgba(15,23,42,.62));}
.media-card.locked{background:linear-gradient(180deg,rgba(2,6,23,.72),rgba(2,6,23,.48));filter:saturate(.72);}
.media-card.locked .btn:not(.danger),.media-card.locked .btn.danger{background:#050816!important;border-color:rgba(71,85,105,.65)!important;color:#64748b!important;box-shadow:none!important;}
.media-card.locked header b{color:#94a3b8;}
.admin-actions{align-items:end;}
#adminStateFilter{min-width:220px;}
.election-night-main .studio-headlines div{padding:13px 15px;border-radius:15px;line-height:1.42;}
@media(max-width:760px){
  .media-grid{grid-template-columns:1fr!important;}
  .admin-actions{display:grid;grid-template-columns:1fr!important;}
  #adminStateFilter{min-width:0;width:100%;}
  .party-row-actions{align-items:flex-start!important;}
  .leader-row.party-row-enhanced{grid-template-columns:1fr!important;}
}

/* v3.10: pop-up upozornění, vláda a lokální moc */
.notice-overlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;background:rgba(2,6,23,.58);backdrop-filter:blur(8px);padding:18px}
.notice-modal{position:relative;display:grid;grid-template-columns:auto 1fr;gap:16px;max-width:720px;width:min(720px,96vw);padding:22px;border:1px solid rgba(56,189,248,.35);border-radius:24px;background:linear-gradient(135deg,rgba(15,23,42,.98),rgba(8,18,37,.98));box-shadow:0 24px 80px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.04) inset}
.notice-modal.positive{border-color:rgba(34,197,94,.46)}.notice-modal.warning{border-color:rgba(245,158,11,.55)}.notice-modal.negative{border-color:rgba(248,113,113,.55)}
.notice-icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:rgba(56,189,248,.13);font-size:28px;border:1px solid rgba(125,211,252,.28)}
.notice-modal h2{margin:.15rem 0 .45rem;font-size:1.55rem}.notice-modal p{margin:0;color:var(--muted);line-height:1.5}.notice-close{position:absolute;right:14px;top:10px;border:0;background:transparent;color:var(--muted);font-size:30px;cursor:pointer}.notice-close:hover{color:var(--text)}
.local-power-card{margin-top:20px;padding:18px;border:1px solid rgba(56,189,248,.2);border-radius:22px;background:rgba(15,23,42,.52)}
.local-power-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin-top:14px}.local-power-list span{border:1px solid rgba(56,189,248,.22);border-left:4px solid var(--accent);background:rgba(2,6,23,.28);border-radius:16px;padding:12px;color:var(--muted)}.local-power-list b{color:var(--text)}
.polished-negotiation .demand-grid.clean{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.polished-negotiation .coalition-detail-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.polished-negotiation .coalition-detail-grid li{line-height:1.45;margin-bottom:6px}.polished-negotiation .ministry-mini-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}.polished-negotiation .ministry-mini-list span{padding:10px 12px;border:1px solid rgba(148,163,184,.18);border-radius:13px;background:rgba(2,6,23,.25)}
@media(max-width:720px){.notice-modal{grid-template-columns:1fr;padding:18px}.notice-icon{width:46px;height:46px}.notice-modal h2{font-size:1.25rem}.calendar-grid{grid-template-columns:1fr!important}.local-power-list{grid-template-columns:1fr}.polished-negotiation .quick-actions{display:grid;grid-template-columns:1fr}.polished-negotiation .coalition-row.clean{display:grid;grid-template-columns:1fr}}

/* v3.11: kandidátky pro více voleb + admin státy */
.small-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.small-tabs .tab{border:1px solid rgba(96,165,250,.24);background:rgba(15,23,42,.62);color:var(--text);border-radius:999px;padding:9px 12px;font-weight:800;cursor:pointer}.small-tabs .tab.active{border-color:rgba(34,211,238,.62);background:linear-gradient(135deg,rgba(14,116,144,.28),rgba(59,130,246,.14));color:#dffaff}
.candidate-move-row{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;gap:8px;align-items:center;margin-top:9px}.candidate-target{min-width:0}.transfer-history{margin-top:16px;padding:14px;border:1px solid rgba(148,163,184,.16);border-radius:18px;background:rgba(2,6,23,.24)}
.admin-country-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:14px 0}.mini-card{padding:14px;border:1px solid rgba(148,163,184,.18);border-radius:18px;background:rgba(2,6,23,.24)}.mini-card h3{margin:.1rem 0 .35rem}.mini-card .leaderboard{max-height:260px;overflow:auto}
@media(max-width:760px){.candidate-move-row{grid-template-columns:1fr}.small-tabs .tab{width:100%}.candidate-layout{grid-template-columns:1fr!important}.admin-country-grid{grid-template-columns:1fr}}

/* v3.13 stability / QA / mobile polish */
.advisor-tips-panel,
.audit-panel,
.admin-qa-grid .mini-card {
  border-color: rgba(56,189,248,.22);
  background: linear-gradient(180deg, rgba(15,23,42,.96), rgba(10,16,30,.98));
}
.advisor-tip-grid {
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(220px,1fr));
  gap:12px;
}
.advisor-tip {
  text-align:left;
  display:flex;
  flex-direction:column;
  gap:6px;
  min-height:92px;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(148,163,184,.22);
  background: rgba(15,23,42,.78);
  color: var(--text);
  cursor:pointer;
}
.advisor-tip:hover { border-color: rgba(56,189,248,.55); transform: translateY(-1px); }
.advisor-tip.warning { border-color: rgba(245,158,11,.38); }
.advisor-tip.danger { border-color: rgba(239,68,68,.42); }
.advisor-tip.info { border-color: rgba(56,189,248,.28); }
.audit-panel.ok { border-color: rgba(34,197,94,.24); }
.audit-panel.warn { border-color: rgba(245,158,11,.42); }
.audit-warnings p,
.warn { color:#fbbf24; }
.ok-text { color:#86efac; }
.warn-row { background: rgba(245,158,11,.08); }
.admin-qa-grid {
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(280px,1fr));
  gap:14px;
  margin:14px 0;
}
.admin-qa-grid .mini-card .audit-panel,
.admin-qa-grid .mini-card .economy-audit {
  padding:0;
  border:0;
  background:transparent;
}
.system-log-list { display:flex; flex-direction:column; gap:8px; max-height:360px; overflow:auto; }
.system-log-list div { padding:8px 10px; border:1px solid rgba(148,163,184,.16); border-radius:12px; background:rgba(2,6,23,.32); }
.system-log-list b, .system-log-list span, .system-log-list small { display:block; }
.finance-audit-table .admin-row > span { display:flex; flex-direction:column; align-items:flex-end; gap:2px; }
.map-layer-controls {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:12px 0;
}
.layer-chip {
  border:1px solid rgba(56,189,248,.25);
  background:rgba(15,23,42,.86);
  color:var(--text);
  border-radius:999px;
  padding:8px 11px;
  font-weight:800;
  cursor:pointer;
}
.layer-chip.active { background:linear-gradient(135deg, rgba(14,165,233,.35), rgba(34,197,94,.2)); border-color:rgba(125,211,252,.8); }
.chat-msg em { display:flex; gap:8px; margin-top:4px; font-style:normal; }
.tiny-link { border:0; background:transparent; color:#93c5fd; padding:0; font-weight:800; cursor:pointer; }
.tiny-link.danger { color:#fca5a5; }
.chat-card .chat-list { max-height:420px; overflow:auto; }
.mobile-menu-toggle { touch-action:manipulation; }

@media (max-width: 900px) {
  .layout { display:block; padding-bottom:78px; }
  .sidebar {
    position:fixed;
    inset:0 auto 0 0;
    width:min(88vw, 360px);
    z-index:40;
    transform:translateX(-105%);
    transition:transform .2s ease;
    overflow:auto;
    padding:10px;
    background:#07101f;
  }
  body.mobile-menu-open .sidebar { transform:translateX(0); }
  body.mobile-menu-open .mobile-overlay { display:block; }
  .mobile-overlay { position:fixed; inset:0; background:rgba(2,6,23,.68); z-index:35; display:none; }
  .main-stack { width:100%; }
  .topbar { position:sticky; top:0; z-index:30; padding:10px; gap:8px; }
  .topbar-left h1 { font-size:15px; }
  .topbar-left p { display:none; }
  .topbar-actions .btn { padding:9px 10px; }
  .mobile-menu-toggle { display:inline-flex; }
  .stat-grid, .dash-grid, .finance-grid, .chat-grid, .admin-country-grid, .admin-qa-grid, .topic-region-grid, .candidate-layout, .election-layout, .map-hub { grid-template-columns:1fr !important; }
  .data-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .leader-row, .admin-row { display:flex; flex-direction:column; align-items:flex-start; gap:6px; }
  .admin-row > span, .finance-audit-table .admin-row > span { align-items:flex-start; }
  .election-table, .table-wrap, table { display:block; width:100%; overflow-x:auto; }
  .election-district-grid, .region-picker-grid, .country-picker-grid, .advisor-tip-grid, .funding-grid { grid-template-columns:1fr !important; }
  .pro-drilldown { display:block; }
  .drill-side { margin-top:14px; }
  .photo-map { min-height:240px; }
  .map-layer-controls { overflow-x:auto; flex-wrap:nowrap; padding-bottom:4px; }
  .layer-chip { white-space:nowrap; }
  .bottom-nav { display:grid; }
}

@media (min-width: 901px) {
  .mobile-menu-toggle { display:none; }
}


/* v3.14 polish: all-party predictions and safer mobile cards */
.prediction-bars { grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); }
.prediction-row { min-width: 0; }
.prediction-row b { white-space: nowrap; }
.finance-audit-table .admin-row span { text-align: right; }
@media (max-width: 760px) {
  .prediction-bars { grid-template-columns: 1fr; }
  .prediction-row { padding: 11px 12px; }
  .finance-audit-table .admin-row { display: grid; gap: 8px; }
  .finance-audit-table .admin-row span { text-align: left; }
}

/* v3.16 election agenda polish */
.agenda-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;margin-top:14px}
.agenda-card{border:1px solid rgba(125,211,252,.25);background:rgba(8,16,35,.72);border-radius:18px;padding:16px;box-shadow:0 12px 30px rgba(0,0,0,.18)}
.agenda-card header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}
.agenda-card h3,.agenda-card h4{margin:.1rem 0 .35rem}.agenda-issues{display:grid;gap:12px}.agenda-issue{border:1px solid rgba(148,163,184,.18);background:rgba(15,23,42,.55);border-radius:14px;padding:12px}.agenda-options{display:grid;grid-template-columns:1fr;gap:8px}.agenda-options .stance-btn{text-align:left;display:block;min-height:auto}.agenda-options small{display:block;margin-top:4px;color:var(--muted);font-weight:600;line-height:1.25}.agenda-impact{display:grid;gap:4px;margin:12px 0;color:var(--muted)}.ok-text{color:#86efac}.warn-text{color:#fbbf24}.gov-performance.good{border-color:rgba(34,197,94,.45)}.gov-performance.bad{border-color:rgba(248,113,113,.45)}
@media(max-width:700px){.agenda-grid{grid-template-columns:1fr}.agenda-card{padding:12px}.agenda-card header{display:block}.agenda-options .stance-btn{font-size:.92rem}}

/* v3.17 – election countdown, promise archive, government dashboard */
.next-election-banner{position:sticky;top:0;z-index:41;margin:0 12px 10px;border:1px solid rgba(14,165,233,.40);border-radius:18px;background:linear-gradient(135deg,rgba(14,165,233,.18),rgba(168,85,247,.10));box-shadow:0 14px 40px rgba(2,6,23,.36);overflow:hidden}.next-election-banner.counting{border-color:rgba(34,197,94,.45);background:linear-gradient(135deg,rgba(34,197,94,.16),rgba(14,165,233,.10))}.next-election-banner button{width:100%;border:0;background:transparent;color:var(--text);display:flex;gap:14px;align-items:center;justify-content:space-between;padding:12px 16px;text-align:left;cursor:pointer}.next-election-banner b{font-size:1.02rem}.next-election-banner span{color:#dbeafe;flex:1}.next-election-banner small{color:#93c5fd}.prediction-row.trend-up small,.prediction-row.trend-up .prediction-trend{color:#86efac}.prediction-row.trend-down small,.prediction-row.trend-down .prediction-trend{color:#f87171}.prediction-row.trend-flat small,.prediction-row.trend-flat .prediction-trend{color:#94a3b8}.agenda-promise-label{display:grid;gap:6px;margin-top:10px;color:#bfdbfe}.agenda-detail-input{width:100%;resize:vertical;min-height:74px}.promise-archive{margin-top:16px;border:1px solid rgba(148,163,184,.16);border-radius:18px;padding:14px;background:rgba(2,6,23,.25)}.promise-record{border:1px solid rgba(148,163,184,.13);border-radius:16px;padding:12px;margin-top:10px;background:rgba(15,23,42,.42)}.promise-record header,.promise-item{display:grid;gap:4px}.promise-record header{grid-template-columns:1fr auto;align-items:center}.promise-record header span,.promise-item small{color:var(--muted)}.promise-list{display:grid;gap:8px;margin-top:10px}.promise-item{border-left:3px solid rgba(148,163,184,.35);padding:10px 12px;background:rgba(2,6,23,.22);border-radius:10px}.promise-item.ok{border-color:#22c55e}.promise-item.bad{border-color:#ef4444}.promise-item.warn{border-color:#f59e0b}.government-hero-grid,.government-section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:14px 0}.gov-hero-card,.gov-scandal-card{border:1px solid rgba(148,163,184,.16);border-radius:18px;background:rgba(15,23,42,.55);padding:14px}.gov-hero-card h3{margin-top:0}.tag{display:inline-flex;align-items:center;margin:3px 5px 3px 0;padding:5px 9px;border-radius:999px;background:rgba(56,189,248,.12);border:1px solid rgba(56,189,248,.20);color:#bfdbfe;font-size:.85rem}.gov-scandal-card{display:grid;gap:8px;margin:10px 0}.gov-scandal-card header{display:flex;justify-content:space-between;gap:10px}.gov-scandal-card.open{border-color:rgba(245,158,11,.35)}.gov-scandal-card.dismissed,.gov-scandal-card.audited{border-color:rgba(34,197,94,.35)}.gov-scandal-card.covered{border-color:rgba(239,68,68,.35)}
@media (max-width:700px){.next-election-banner button{display:grid;gap:4px}.promise-record header,.gov-scandal-card header{grid-template-columns:1fr;display:grid}.government-hero-grid,.government-section-grid{grid-template-columns:1fr}}

/* v3.18 pinned calendar, government metrics and major polls */
.pos{color:#86efac!important}.neg{color:#fca5a5!important}.ok-text{color:#86efac}.pinned-calendar-panel{border-color:rgba(250,204,21,.35);box-shadow:0 0 0 1px rgba(250,204,21,.08),0 20px 60px rgba(0,0,0,.18)}
.pinned-event-grid{display:grid;gap:14px}.pinned-event-card{padding:14px;border:1px solid rgba(148,163,184,.22);border-radius:18px;background:rgba(15,23,42,.72)}.pinned-event-card>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.pinned-event-card small{display:block;color:var(--soft)}
.calendar-question-list{display:grid;gap:10px;margin-top:12px}.calendar-question{padding:12px;border:1px solid rgba(59,130,246,.18);border-radius:14px;background:rgba(2,6,23,.24)}.calendar-question.answered{border-color:rgba(34,197,94,.28);opacity:.82}.calendar-question .quick-actions .btn{white-space:normal;text-align:left;align-items:flex-start}.calendar-question .btn small{display:block;font-weight:500;opacity:.78;margin-top:3px}
.timeline-item{width:100%;text-align:left;color:inherit;font:inherit;cursor:pointer}.timeline-item.active{border-color:rgba(250,204,21,.65);background:linear-gradient(135deg,rgba(250,204,21,.10),rgba(15,23,42,.76))}.tag.warn{background:rgba(250,204,21,.14);border:1px solid rgba(250,204,21,.34);color:#fde68a;padding:3px 8px;border-radius:999px}
.economy-mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:12px 0}.metric-chip{border:1px solid rgba(148,163,184,.20);border-radius:14px;padding:10px 12px;background:rgba(2,6,23,.24);display:grid;gap:4px}.metric-chip b{font-size:.82rem}.metric-chip strong{font-size:1.05rem}.metric-chip.ok{border-color:rgba(34,197,94,.25)}.metric-chip.bad{border-color:rgba(248,113,113,.28)}
.major-poll-card{border:1px solid rgba(56,189,248,.25);border-radius:18px;padding:16px;background:rgba(8,47,73,.18);margin-bottom:16px}.compact-scroll{max-height:440px;overflow:auto}.major-poll-card details{margin-top:10px}.major-poll-card summary{cursor:pointer;font-weight:800;color:#dbeafe;margin:10px 0}.leader-row .pos,.leader-row .neg{display:block;font-size:.78rem;margin-top:3px}
@media(max-width:760px){.pinned-event-card>header{display:grid}.calendar-question .quick-actions{grid-template-columns:1fr}.economy-mini-grid{grid-template-columns:1fr}.timeline-item time{min-width:0}}


/* v3.19 – Audio & Visual Update */
.topbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.audio-controls{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.audio-toggle{border:1px solid rgba(148,163,184,.22);background:rgba(2,6,23,.52);color:#cbd5e1;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:800}.audio-toggle.on{border-color:rgba(56,189,248,.40);background:rgba(8,47,73,.54);color:#bfebff;box-shadow:0 0 18px rgba(56,189,248,.10)}.audio-toggle:hover{border-color:rgba(56,189,248,.70);transform:translateY(-1px)}
.event-visual{position:relative;border-radius:18px;overflow:hidden;border:1px solid rgba(56,189,248,.20);background:rgba(2,6,23,.35);box-shadow:inset 0 0 30px rgba(56,189,248,.04)}.event-visual img{display:block;width:100%;height:100%;object-fit:cover}.event-visual.card{height:128px;margin:-4px -4px 14px}.event-visual.wide{height:170px;margin-bottom:12px}.event-thumb{width:54px;height:42px;flex:0 0 54px;display:inline-grid;place-items:center;border-radius:12px;overflow:hidden;border:1px solid rgba(56,189,248,.24);background:rgba(2,6,23,.35);box-shadow:0 10px 26px rgba(0,0,0,.18)}.event-thumb img{width:100%;height:100%;object-fit:cover}.visual-card::before{z-index:1}.visual-news-card{position:relative;padding-left:80px;min-height:92px}.visual-news-card>.event-thumb{position:absolute;left:14px;top:14px;width:52px;height:52px;border-radius:16px}.timeline-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px}.pinned-event-card{overflow:hidden}.pinned-event-card .event-visual.wide{height:190px;margin:-2px -2px 14px}.gov-visual-hero{display:grid;grid-template-columns:320px 1fr auto;gap:16px;align-items:center;margin-bottom:16px}.gov-visual-hero .event-visual{height:132px;margin:0}.gov-visual-hero h2{margin:0 0 6px}.next-election-banner .event-thumb{width:64px;height:46px}.notice-modal .event-thumb{width:70px;height:70px;border-radius:20px}.event-card,.news-card,.timeline-item,.pinned-event-card,.gov-hero-card{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.event-card:hover,.news-card:hover,.timeline-item:hover,.pinned-event-card:hover,.gov-hero-card:hover{transform:translateY(-1px);border-color:rgba(56,189,248,.36);box-shadow:0 18px 45px rgba(2,6,23,.24)}
@media(max-width:900px){.gov-visual-hero{grid-template-columns:1fr}.gov-visual-hero .event-visual{height:170px}.timeline-item{grid-template-columns:auto 1fr}.timeline-item time{grid-column:2}.topbar-actions{justify-content:flex-start}.audio-toggle{padding:7px 9px}.event-visual.wide{height:140px}}
@media(max-width:560px){.visual-news-card{padding-left:14px;padding-top:76px}.visual-news-card>.event-thumb{width:54px;height:48px}.event-thumb{width:48px;height:38px}.next-election-banner .event-thumb{width:52px;height:40px}.audio-controls{width:100%}.audio-toggle{flex:1;text-align:center}.event-visual.card{height:110px}}

/* v3.22 politics life update */
.balance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.balance-grid label{display:flex;flex-direction:column;gap:6px}.deep-promises .promise-item{border:1px solid rgba(148,163,184,.22);border-radius:18px;padding:14px;background:rgba(15,23,42,.42);margin:10px 0}.promise-milestones{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:10px 0}.promise-milestones div{border:1px solid rgba(148,163,184,.18);border-radius:14px;padding:10px;background:rgba(255,255,255,.035)}.promise-milestones b,.promise-milestones span,.promise-milestones small{display:block}.media-actions,.negotiation-actions{gap:8px;flex-wrap:wrap}.admin-balance-panel{border:1px solid rgba(34,197,94,.22)}.promise-item.ok{border-color:rgba(34,197,94,.35)}.promise-item.bad{border-color:rgba(239,68,68,.35)}.promise-item.warn{border-color:rgba(245,158,11,.35)}

/* v3.24: readable poll/region rows + grant/media/government polish */
.leader-row > span:first-child,
.admin-row > div:first-child,
.election-region-tile,
.region-deep-card header,
.generic-region-btn,
.region-picker {
  min-width: 0;
}
.leader-row > span:first-child {
  display: grid;
  gap: 3px;
}
.leader-row > span:first-child b,
.leader-row > span:first-child small,
.generic-region-btn b,
.generic-region-btn span,
.region-deep-card header b,
.region-deep-card header span {
  min-width: 0;
  overflow-wrap: anywhere;
}
.leader-row > span:last-child {
  justify-self: end;
  padding-left: 14px;
  font-weight: 900;
  color: #e0f2fe;
  white-space: nowrap;
}
.generic-region-btn { display: grid; gap: 5px; }
.generic-region-btn b { display: block; line-height: 1.2; }
.generic-region-btn span { margin-top: 0; line-height: 1.3; }
.region-deep-card header { grid-template-columns: minmax(0,1fr) auto; }

.startup-grant-card.grant-application {
  border-color: rgba(34,197,94,.34);
  background: linear-gradient(135deg, rgba(34,197,94,.10), rgba(14,165,233,.08));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.startup-grant-card.taken {
  border-color: rgba(56,189,248,.28);
}
.grant-form-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
  margin: 12px 0;
}
.grant-form-grid label { display:grid; gap:6px; color:#bfdbfe; font-weight:800; font-size:.9rem; }

.media-radar-grid,
.media-playbook-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:10px;
  margin:14px 0;
}
.media-radar-grid article,
.media-playbook-grid span {
  border:1px solid rgba(148,163,184,.18);
  background:rgba(2,6,23,.36);
  border-radius:16px;
  padding:12px;
  display:grid;
  gap:4px;
}
.media-radar-grid b { font-size:1.25rem; color:#e0f2fe; }
.media-radar-grid span,
.media-playbook-grid b { font-weight:900; color:#bfdbfe; }
.media-radar-grid small,
.media-playbook-grid small { color:var(--muted); line-height:1.35; }
.media-groups { display:grid; gap:18px; }
.media-grid.power { grid-template-columns:repeat(auto-fit,minmax(310px,1fr)); }
.media-card.power { display:grid; gap:10px; position:relative; overflow:hidden; }
.media-card.power::before { content:''; position:absolute; inset:0 auto 0 0; width:4px; background:#64748b; opacity:.9; }
.media-card.power.friendly::before { background:#22c55e; }
.media-card.power.hostile::before { background:#ef4444; }
.media-card.power.neutral::before { background:#38bdf8; }
.media-title { display:flex; align-items:center; gap:10px; min-width:0; }
.media-title i { width:34px; height:34px; border-radius:12px; display:grid; place-items:center; background:rgba(56,189,248,.12); border:1px solid rgba(56,189,248,.22); font-style:normal; }
.media-title div { display:grid; min-width:0; }
.media-relation-meter { display:grid; grid-template-columns:auto 1fr; gap:12px; align-items:center; }
.media-hint { border:1px solid rgba(56,189,248,.17); border-radius:14px; padding:10px; background:rgba(14,165,233,.08); color:#dbeafe; }
.media-action-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.media-action-grid .btn { min-height:42px; }
.government-economy-block { border-color:rgba(56,189,248,.22); background:rgba(2,6,23,.28); }
.compact-economy { grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); }
@media(max-width:760px){
  .leader-row { grid-template-columns:minmax(0,1fr) auto; gap:8px; }
  .media-grid.power { grid-template-columns:1fr; }
  .media-action-grid { grid-template-columns:1fr; }
  .grant-form-grid { grid-template-columns:1fr; }
}

/* v3.25 – kandidátky, dotace, starostové, sněmovní reakce */
.candidate-save-region-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid rgba(56,189,248,.22);background:rgba(14,165,233,.08);border-radius:18px;margin:12px 0;flex-wrap:wrap}
.parliament-agenda-panel{margin:14px 0;border-color:rgba(245,158,11,.28);background:linear-gradient(135deg,rgba(245,158,11,.08),rgba(15,23,42,.7))}
.agenda-vote-card{border:1px solid rgba(148,163,184,.18);border-radius:18px;padding:12px;margin:10px 0;background:rgba(2,6,23,.45)}
.agenda-vote-card header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.elected-candidates-block{margin:12px 0;border:1px solid rgba(56,189,248,.18);border-radius:18px;padding:10px;background:rgba(14,165,233,.06)}
.elected-candidate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:10px}
.elected-candidate-card{border:1px solid rgba(148,163,184,.18);border-radius:16px;padding:10px;background:rgba(15,23,42,.58);display:flex;flex-direction:column;gap:4px}
.elected-candidate-card.jumped{border-color:rgba(34,197,94,.55);box-shadow:0 0 0 1px rgba(34,197,94,.15) inset}
.mayor-review-box{border:1px solid rgba(34,197,94,.24);border-radius:18px;padding:12px;margin:12px 0;background:rgba(34,197,94,.06)}
.mayor-review-card{display:grid;grid-template-columns:1.4fr 1.1fr auto auto auto;gap:8px;align-items:center;border-top:1px solid rgba(148,163,184,.14);padding:10px 0}
.mayor-review-card:first-of-type{border-top:0}
.governance-narrative{margin:14px 0}
.governance-narrative-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.governance-narrative-grid article{border:1px solid rgba(148,163,184,.18);border-radius:18px;padding:12px;background:rgba(15,23,42,.58)}
.governance-narrative-grid article header{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:6px}
.governance-narrative-grid article header span{font-size:.75rem;color:#fbbf24;text-transform:uppercase;letter-spacing:.04em}
@media (max-width:780px){.mayor-review-card{grid-template-columns:1fr}.mayor-review-card .btn{width:100%}.agenda-vote-card header{display:block}}

/* v3.26 — UI compactness, program accordion, candidate autonomy */
.pinned-calendar-panel { padding: 16px 18px; }
.pinned-event-card.compact-event { padding: 12px 14px; border-radius: 18px; }
.pinned-event-card.compact-event .event-visual.wide,
.event-visual.wide.compact { height: 86px !important; margin: -2px -2px 10px !important; border-radius: 15px; }
.pinned-event-card.compact-event header { display:grid; grid-template-columns:1fr auto; gap:12px; align-items:center; }
.pinned-event-card.compact-event .callout { padding:10px 12px; margin:8px 0; }
.program-topics-collapse { border:1px solid rgba(56,189,248,.20); border-radius:18px; background:rgba(2,6,23,.22); margin:14px 0; overflow:hidden; }
.program-topics-collapse > summary { cursor:pointer; padding:14px 16px; font-weight:900; display:flex; justify-content:space-between; gap:12px; color:#dbeafe; }
.program-topics-collapse > summary span { color:var(--muted); font-size:.88rem; font-weight:700; }
.compact-program-grid { padding:12px; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); }
.program-card.compact { padding:0; overflow:hidden; }
.program-card.compact > summary { cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:12px; padding:13px 14px; }
.program-card.compact > summary b { color:#e2e8f0; }
.program-card.compact > summary span { color:#93c5fd; font-weight:800; }
.program-card.compact .stance-options, .program-card.compact label { margin:0 14px 12px; }
.candidate-kind-save-bar, .candidate-save-region-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; border:1px solid rgba(56,189,248,.22); background:rgba(14,165,233,.08); border-radius:18px; margin:12px 0; flex-wrap:wrap; }
.candidate-kind-save-bar b, .candidate-save-region-bar b { display:block; color:#e0f2fe; }
.candidate-kind-save-bar small, .candidate-save-region-bar small { display:block; color:var(--muted); margin-top:3px; max-width:760px; }
.candidate-risk-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:8px; padding-top:8px; border-top:1px dashed rgba(148,163,184,.18); }
.candidate-risk-actions .btn { padding:8px 10px; font-size:.82rem; }
.candidate-stories { margin-top:16px; padding:12px 14px; border:1px solid rgba(148,163,184,.18); border-radius:18px; background:rgba(2,6,23,.24); }
.candidate-stories > summary { cursor:pointer; font-weight:900; color:#dbeafe; margin-bottom:10px; }
.candidate-stories.empty { display:flex; flex-direction:column; gap:4px; color:var(--muted); }
.candidate-story { padding:10px 12px; border:1px solid rgba(148,163,184,.16); border-radius:14px; background:rgba(15,23,42,.58); margin:8px 0; }
.candidate-story.positive { border-color:rgba(34,197,94,.35); }
.candidate-story.negative { border-color:rgba(248,113,113,.42); background:rgba(127,29,29,.14); }
.candidate-story p { margin:5px 0; color:var(--soft); line-height:1.35; }
.candidate-story small { color:var(--muted); }
.illegal-business-panel { margin-top:14px; border:1px solid rgba(248,113,113,.28); border-radius:18px; background:linear-gradient(135deg,rgba(127,29,29,.16),rgba(2,6,23,.24)); overflow:hidden; }
.illegal-business-panel > summary { cursor:pointer; padding:13px 15px; font-weight:900; color:#fecaca; }
.illegal-business-inner { padding:0 15px 15px; display:grid; gap:10px; }
.illegal-business-inner b { color:#fee2e2; }
.illegal-business-inner .btn { justify-self:start; }
.elected-candidates-block .elected-candidate-card small { line-height:1.35; }
@media(max-width:760px){
  .pinned-event-card.compact-event .event-visual.wide, .event-visual.wide.compact { height:70px!important; }
  .candidate-kind-save-bar, .candidate-save-region-bar { display:grid; }
  .candidate-risk-actions { display:grid; grid-template-columns:1fr; }
  .program-topics-collapse > summary { display:grid; }
}

/* v3.27 program neskrývá kapitoly do obřího details bloku */
.program-topics-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:16px 0 10px;padding:13px 14px;border:1px solid rgba(56,189,248,.20);border-radius:18px;background:rgba(2,6,23,.22)}
.program-topics-head h3{margin:0 0 4px}.program-topics-head p{margin:0}.full-program-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:stretch}.program-card.open-card{padding:14px;display:flex;flex-direction:column;gap:10px}.program-card.open-card header{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid rgba(148,163,184,.12);padding-bottom:8px}.program-card.open-card header span{color:#93c5fd;font-weight:900}.compact-stances{grid-template-columns:1fr;gap:7px;margin:0}.compact-stances .stance-btn{min-height:40px;padding:9px 10px;text-align:left}.program-intensity-label{margin-top:auto}.compact-start-note{margin:10px 0 0}.compact-start-note b,.compact-start-note span{display:block}.compact-start-note span{color:var(--muted);margin-top:4px}

.preference-details-block{margin:14px 0;border:1px solid rgba(34,211,238,.22);border-radius:18px;background:rgba(2,6,23,.24);overflow:hidden}.preference-details-block>summary{cursor:pointer;padding:14px 16px;font-weight:900;color:#dbeafe}.preference-details-block>p{padding:0 16px}.preference-region-card{margin:12px 14px;padding:14px;border:1px solid rgba(148,163,184,.16);border-radius:16px;background:rgba(15,23,42,.52)}.preference-region-card header{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.preference-region-card header span{color:#93c5fd;font-weight:800}.jumped-row td{background:rgba(34,197,94,.08)!important}.admin-calendar-jump-panel .quick-actions label{min-width:220px}.admin-calendar-jump-panel{border-color:rgba(34,211,238,.24)!important}

/* v3.28 — lock programu do sčítání, čitelnější hlasování, mapy průzkumů, vyjednávání a chráněný lídr */
.readable-vote-card header > div{min-width:0;display:block;line-height:1.35}.readable-vote-card header h4{display:block;margin:0 0 6px;font-size:1.03rem;line-height:1.25}.readable-vote-card header small{display:block;color:var(--muted);margin-top:2px}.law-discussion-box{margin:10px 0;padding:11px 12px;border:1px solid rgba(96,165,250,.22);border-radius:14px;background:rgba(15,23,42,.55)}.law-discussion-box b{display:block;margin-bottom:5px}.law-discussion-box ul{margin:0;padding-left:18px}.law-discussion-box li{margin:4px 0;line-height:1.45}.readable-vote-card .tiny b{margin-right:4px}.separated-row b,.separated-row span,.separated-row small{display:block}.separated-row{gap:8px}.compact-poll-map{margin:12px 0 16px}.compact-poll-map .photo-map{max-height:380px;overflow:hidden}.compact-poll-map .map-badge,.compact-poll-map .region-badge{transform:scale(.92)}.poll-colored-map img{filter:saturate(1.1) contrast(1.02)}.gov-negotiation-alert{display:grid;grid-template-columns:minmax(180px,.7fr) 1fr;gap:10px;align-items:center;margin:12px 0;padding:12px 14px;border-radius:17px;border:1px solid rgba(34,211,238,.32);background:linear-gradient(135deg,rgba(14,165,233,.14),rgba(15,23,42,.52))}.gov-negotiation-alert b{color:#e0f2fe}.gov-negotiation-alert span{color:var(--muted);line-height:1.45}.gov-negotiation-alert.mandate{border-color:rgba(34,197,94,.36);background:linear-gradient(135deg,rgba(34,197,94,.12),rgba(15,23,42,.54))}.gov-negotiation-alert.offer{border-color:rgba(56,189,248,.42)}.gov-negotiation-alert.passive{border-color:rgba(148,163,184,.18);background:rgba(2,6,23,.28)}.ministry-nominees span{display:flex!important;flex-direction:column;align-items:flex-start!important;border-radius:14px!important;line-height:1.35}.ministry-nominees span b{color:var(--text);font-size:.9rem}.ministry-nominees span small{display:block;color:var(--muted);font-size:.75rem;margin-top:4px}.leader-lock-notice{display:grid;grid-template-columns:minmax(180px,.6fr) 1fr auto;gap:10px;align-items:center;margin:10px 0 14px;padding:12px 14px;border:1px solid rgba(250,204,21,.35);border-radius:17px;background:linear-gradient(135deg,rgba(250,204,21,.1),rgba(15,23,42,.6))}.leader-lock-notice b{color:#fde68a}.leader-lock-notice span{color:var(--muted);line-height:1.4}.leader-protected-candidate{border-color:rgba(250,204,21,.42)!important;box-shadow:0 0 0 1px rgba(250,204,21,.12) inset;background:linear-gradient(135deg,rgba(250,204,21,.06),rgba(15,23,42,.68))!important}.leader-protected-candidate> b{color:#fde68a}.archive-drill-details[open]{padding-bottom:8px}@media(max-width:760px){.gov-negotiation-alert,.leader-lock-notice{grid-template-columns:1fr}.compact-poll-map .photo-map{max-height:320px}.readable-vote-card .quick-actions{display:grid;grid-template-columns:1fr}.readable-vote-card .btn{width:100%}}

/* v3.29 — výkon + zvoneček + politický grind */
.notification-bell { position: relative; z-index: 30; }
.notification-bell summary { list-style: none; cursor: pointer; display:flex; align-items:center; gap:7px; min-height:42px; padding:9px 12px; border:1px solid rgba(148,163,184,.25); border-radius:999px; background:rgba(2,6,23,.58); color:#e5e7eb; }
.notification-bell summary::-webkit-details-marker { display:none; }
.notification-bell.warn summary { border-color:rgba(251,191,36,.55); box-shadow:0 0 0 1px rgba(251,191,36,.12) inset; }
.notification-bell.ok summary { border-color:rgba(34,197,94,.35); }
.notification-bell summary b { min-width:20px; height:20px; display:inline-grid; place-items:center; border-radius:999px; background:#ef4444; color:#fff; font-size:12px; }
.notification-menu { position:absolute; right:0; top:calc(100% + 10px); width:min(430px, 92vw); max-height:70vh; overflow:auto; padding:12px; border:1px solid rgba(56,189,248,.28); border-radius:20px; background:linear-gradient(180deg, rgba(15,23,42,.98), rgba(2,6,23,.98)); box-shadow:0 24px 80px rgba(0,0,0,.42); }
.notification-menu header { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:8px; color:#e5e7eb; }
.notification-menu header small { color:#93c5fd; }
.notification-item { display:grid; grid-template-columns:1fr auto; gap:10px; padding:11px; border:1px solid rgba(148,163,184,.18); border-radius:16px; background:rgba(15,23,42,.72); margin:8px 0; }
.notification-item.warning { border-color:rgba(251,191,36,.33); }
.notification-item.negative { border-color:rgba(248,113,113,.42); }
.notification-item.positive { border-color:rgba(34,197,94,.32); }
.notification-item span, .notification-item p { color:#a8b7ce; }
.notification-item b { display:block; margin:3px 0 5px; }
.notification-item p { margin:0; font-size:13px; line-height:1.35; }
.notification-actions { display:flex; flex-direction:column; gap:6px; align-self:start; }
.muted.compact { margin:8px 2px; font-size:13px; }
.attack-control-row { display:grid; grid-template-columns: minmax(240px, 1fr) minmax(240px, 1fr); gap:12px; margin:12px 0; }
.attack-control-row label { display:grid; gap:6px; }
.attack-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px,1fr)); gap:12px; }
.attack-action-card { border:1px solid rgba(148,163,184,.20); border-radius:18px; background:rgba(2,6,23,.46); padding:14px; display:grid; gap:10px; }
.attack-action-card header { display:flex; justify-content:space-between; gap:10px; align-items:start; }
.attack-action-card header span { color:#93c5fd; font-size:12px; }
.attack-action-card p { color:#cbd5e1; margin:0; line-height:1.38; }
.attack-action-card small { color:#94a3b8; }
.voter-national-grid.compact { grid-template-columns:repeat(auto-fit, minmax(190px,1fr)); }
.voter-block.compact { padding:10px; }
@media (max-width: 760px) { .attack-control-row { grid-template-columns:1fr; } .notification-menu { right:-92px; } .notification-item { grid-template-columns:1fr; } .notification-actions { flex-direction:row; } }

/* v3.30: topbar/banners už se nepřekrývají */
.topbar{position:sticky!important;top:0!important;z-index:90!important;flex-wrap:wrap;isolation:isolate;}
.next-election-banner{position:relative!important;top:auto!important;z-index:5!important;margin-top:10px!important;}
.next-election-banner button{flex-wrap:wrap;min-height:auto;}
.next-election-banner .event-thumb{flex:0 0 56px;}
@media(max-width:900px){.next-election-banner button{display:grid!important;grid-template-columns:56px 1fr;align-items:center}.next-election-banner small{grid-column:2}.topbar-actions{width:100%;justify-content:flex-start}}

/* v3.30: kandidáti jako živí členové strany */
.candidate-stat-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:10px 0;}
.candidate-stat-strip span{border:1px solid rgba(148,163,184,.16);border-radius:12px;background:rgba(2,6,23,.28);padding:8px 10px;display:grid;gap:2px;}
.candidate-stat-strip b{color:#bfdbfe;font-size:1rem;}
.candidate-stat-strip small{color:var(--muted);font-size:.76rem;}
.preference-region-card table th:nth-child(2),.preference-region-card table td:nth-child(2){min-width:150px;}
.notification-menu header{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.notification-menu header small{margin-left:auto;}

/* v3.31 – voter ideology / marketing / parliament life */
.marketing2-panel,.voter-deep-panel,.parliament-live-panel,.president-gameplay-panel,.candidate-scandal-panel,.map-diagnosis-panel,.coalition-drama-panel,.election-night-studio-panel{margin-top:18px}
.marketing-channel-grid,.parliament-action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-top:12px}
.marketing-channel-card,.parliament-action-card,.candidate-scandal-card{border:1px solid rgba(148,163,184,.22);background:rgba(15,23,42,.58);border-radius:18px;padding:14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
.marketing-channel-card header,.parliament-action-card header,.candidate-scandal-card header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.marketing-channel-card p,.parliament-action-card p,.candidate-scandal-card p{margin:8px 0;color:#cbd5e1}
.marketing-region-row{display:flex;justify-content:flex-end;margin:10px 0}.marketing-region-row label{min-width:280px}
.two-col-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.two-col-list ul{margin:8px 0 0;padding-left:20px;color:#cbd5e1}.two-col-list li{margin:6px 0}
.timeline-list{display:grid;gap:8px}.timeline-item{border-left:3px solid rgba(148,163,184,.26);padding:8px 10px;background:rgba(2,6,23,.35);border-radius:12px}.timeline-item.active{border-left-color:#22c55e;background:rgba(34,197,94,.08)}.timeline-item b,.timeline-item span,.timeline-item small{display:block}.timeline-item span{color:#cbd5e1;margin-top:4px}
.live-feed-list{display:grid;gap:8px}.live-feed-list p{margin:0;padding:10px 12px;border:1px solid rgba(56,189,248,.18);background:rgba(14,165,233,.08);border-radius:12px;color:#dbeafe}
.map-diagnosis-panel ul{margin:8px 0 0;padding-left:20px}.map-diagnosis-panel li{margin:5px 0;color:#cbd5e1}
.candidate-scandal-card{border-color:rgba(245,158,11,.32);background:linear-gradient(135deg,rgba(245,158,11,.08),rgba(15,23,42,.65))}
.committee-detail{margin-top:12px}.committee-detail summary{cursor:pointer;font-weight:800;color:#dbeafe}

/* v3.32 stability / organization / governing panels */
.admin-diagnostics-v332,.game-time-panel,.candidate-career-panel,.org-deep-panel,.government-flow-panel,.parliament-club-panel,.opposition-panel,.president-deep-panel,.media-story-panel,.election-analytics-panel{border-color:rgba(56,189,248,.28);background:linear-gradient(135deg,rgba(15,23,42,.78),rgba(2,6,23,.58));}
.compact-timeline .timeline-item{grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:auto;padding:10px 12px;}
.candidate-profile-grid,.org-region-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:12px;}
.candidate-profile-card,.org-region-card,.government-agenda-card,.exclusive-interview-card,.media-scandal-story{border:1px solid rgba(148,163,184,.18);border-radius:18px;padding:14px;background:rgba(2,6,23,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.03);}
.candidate-profile-card header,.org-region-card header,.government-agenda-card header,.exclusive-interview-card header,.media-scandal-story header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:8px;}
.vertical-actions{align-items:stretch;}
.vertical-actions .btn{justify-content:space-between;text-align:left;white-space:normal;}
.two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;}
.system-log-list div{gap:6px;}

/* v3.35 — plně použitelný mobilní layout */
html, body { max-width: 100%; overflow-x: hidden; -webkit-text-size-adjust: 100%; }
* { box-sizing: border-box; }
.panel, .main-stack, .topbar, .viewbar, .compact-viewbar, .event-card, .election-card, .candidate-card, .region-card, .district-card { min-width: 0; }
button, .btn, .menu-btn, .bottom-nav-btn, summary { touch-action: manipulation; }
.mobile-menu-close { display:none; }

@media (max-width: 860px) {
  :root { --mobile-pad: 10px; }
  body { padding: 0 0 calc(82px + env(safe-area-inset-bottom)); }
  body.mobile-menu-open { overflow: hidden; }
  .app-shell { width: 100%; padding: 8px var(--mobile-pad) 0; }
  .topbar {
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr);
    align-items: center !important;
    gap: 8px !important;
    margin: 0 calc(-1 * var(--mobile-pad)) 10px !important;
    padding: calc(8px + env(safe-area-inset-top)) 10px 10px !important;
    border-radius: 0 0 18px 18px !important;
    z-index: 120 !important;
    background: rgba(10, 20, 40, .94) !important;
    backdrop-filter: blur(18px) !important;
  }
  .mobile-menu-toggle {
    display: inline-grid !important;
    place-items: center;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px;
    border-radius: 15px !important;
    font-size: 1.35rem !important;
  }
  .topbar-left { min-width: 0; gap: 9px !important; }
  .party-dot { width: 10px !important; height: 10px !important; flex: 0 0 10px; box-shadow: 0 0 0 3px rgba(255,255,255,.08); }
  .topbar-left h1 { font-size: clamp(.98rem, 4vw, 1.16rem) !important; line-height: 1.12; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
  .topbar-left h1 .muted { font-size: .9em; }
  .topbar-left p { display: none !important; }
  .topbar-actions {
    grid-column: 1 / -1;
    display: grid !important;
    grid-template-columns: auto minmax(82px, 1fr) minmax(74px, .9fr) minmax(62px, .75fr) auto;
    gap: 6px !important;
    width: 100% !important;
    align-items: center;
    justify-content: stretch !important;
  }
  .topbar-actions #refreshBtn { display: none !important; }
  .topbar-actions .btn, .audio-toggle, .notification-bell summary {
    min-height: 38px !important;
    padding: 7px 9px !important;
    border-radius: 999px !important;
    font-size: .76rem !important;
    line-height: 1.1 !important;
    white-space: nowrap;
    box-shadow: none !important;
  }
  .topbar-actions #logoutBtn { padding-inline: 12px !important; }
  .audio-controls { display: contents !important; }
  .audio-toggle { width: 100%; text-align: center; overflow: hidden; text-overflow: ellipsis; }
  .notification-bell { position: static !important; }
  .notification-bell summary { justify-content: center; min-width: 50px; }
  .notification-bell[open] .notification-menu {
    position: fixed !important;
    left: 10px !important;
    right: 10px !important;
    top: calc(96px + env(safe-area-inset-top)) !important;
    width: auto !important;
    max-height: calc(100dvh - 174px - env(safe-area-inset-top)) !important;
    z-index: 1400 !important;
    border-radius: 18px !important;
  }
  .notification-menu header { display:grid !important; grid-template-columns:1fr auto; align-items:center; }
  .notification-menu header .btn { grid-column: 1 / -1; width: 100%; }
  .mobile-overlay.show {
    z-index: 900 !important;
    background: rgba(0,0,0,.62) !important;
    backdrop-filter: blur(2px) !important;
  }
  .sidebar {
    z-index: 1000 !important;
    width: min(92vw, 380px) !important;
    padding: max(10px, env(safe-area-inset-top)) 12px calc(90px + env(safe-area-inset-bottom)) !important;
    background: linear-gradient(180deg, rgba(5,12,26,.99), rgba(9,20,42,.99)) !important;
  }
  .sidebar .panel { padding: 12px !important; border-radius: 17px !important; }
  .side-brand { position: sticky; top: 0; z-index: 2; background: linear-gradient(180deg, rgba(5,12,26,.99), rgba(5,12,26,.93)); border-radius: 16px; padding: 10px !important; margin: 0 0 10px !important; }
  .mobile-menu-close { display: inline-grid; place-items: center; margin-left:auto; width:38px; height:38px; border:1px solid rgba(148,163,184,.22); border-radius:14px; background:rgba(15,23,42,.76); color:#e5e7eb; font-size:1.4rem; font-weight:900; }
  .menu-list.grouped { grid-template-columns: 1fr 1fr !important; gap: 7px !important; }
  .menu-list.grouped .menu-btn { min-height: 42px; padding: 9px 10px !important; font-size: .82rem !important; }
  .main-stack { gap: 12px !important; }
  .panel { padding: 14px !important; border-radius: 18px !important; }
  .section-head, .section-head.mini { display: grid !important; grid-template-columns: 1fr; gap: 8px !important; align-items: start !important; }
  .section-head h2, .section-head h3 { font-size: 1.15rem; line-height: 1.15; }
  .next-election-banner { margin: 8px 0 10px !important; border-radius: 16px !important; }
  .next-election-banner button { display:grid!important; grid-template-columns: 46px 1fr; gap:8px; padding: 9px 10px !important; }
  .next-election-banner .event-thumb { width: 46px !important; height: 34px !important; flex-basis: 46px !important; }
  .next-election-banner b, .next-election-banner span, .next-election-banner small { grid-column: 2; min-width: 0; }
  .next-election-banner b { font-size: .94rem; }
  .next-election-banner span, .next-election-banner small { font-size: .78rem; line-height: 1.25; }
  .result-day-banner { margin: 8px 0 10px !important; border-radius:16px !important; }
  .result-day-main { display:grid !important; grid-template-columns:1fr; gap:4px; padding:10px 12px !important; }
  .compact-viewbar, .viewbar { position: relative !important; top:auto!important; min-height: auto !important; padding: 13px !important; border-radius: 18px !important; }
  .viewbar-actions, .quick-actions { display:grid !important; grid-template-columns: 1fr; gap:8px; width:100%; }
  .quick-actions .btn, .viewbar-actions .btn, .choice-stack .choice-btn { width: 100%; min-height: 42px; }
  .data-grid, .mini-stats, .studio-metrics, .coalition-dashboard, .candidate-stat-strip, .voter-national-grid.compact { grid-template-columns: 1fr !important; }
  .events-grid, .micro-grid, .attack-grid, .poll-list, .prediction-bars, .candidate-list-grid, .full-program-grid { grid-template-columns: 1fr !important; }
  .table-wrap { width:100%; overflow-x:auto; -webkit-overflow-scrolling: touch; }
  table { min-width: 620px; }
  .poll-colored-map, .compact-poll-map, .photo-map, .cz-photo-map { max-width:100%; overflow:hidden; }
  .photo-map, .compact-poll-map .photo-map { max-height: 260px !important; }
  .event-visual.wide, .pinned-event-card .event-visual.wide, .gov-visual-hero .event-visual { height: 115px !important; }
  .event-visual.card { height: 88px !important; }
  .timeline-item { grid-template-columns: 1fr !important; display:grid !important; }
  .timeline-item time { grid-column:auto !important; text-align:left !important; min-width:0 !important; }
  .bottom-nav {
    z-index: 850 !important;
    left: max(7px, env(safe-area-inset-left)) !important;
    right: max(7px, env(safe-area-inset-right)) !important;
    bottom: max(7px, env(safe-area-inset-bottom)) !important;
    padding: 7px !important;
    border-radius: 20px !important;
  }
  .bottom-nav-btn { min-height: 46px !important; border-radius: 15px !important; }
  .bottom-nav-btn b { font-size: .98rem !important; }
  .bottom-nav-btn span { font-size: .67rem !important; }
}

@media (max-width: 430px) {
  .topbar-actions { grid-template-columns: auto 1fr .82fr .72fr auto; gap:5px!important; }
  .topbar-actions .btn, .audio-toggle, .notification-bell summary { font-size: .69rem !important; padding: 7px 7px !important; }
  .audio-toggle[data-audio-toggle="master"] { font-size: 0 !important; }
  .audio-toggle[data-audio-toggle="master"]::before { content: "🔊 Zvuk"; font-size: .69rem; }
  .topbar-actions #logoutBtn { font-size: 0 !important; min-width: 44px; }
  .topbar-actions #logoutBtn::before { content: "⏻"; font-size: 1.05rem; }
  .menu-list.grouped { grid-template-columns: 1fr !important; }
  .photo-map, .compact-poll-map .photo-map { max-height: 220px !important; }
}

/* v3.36 — kompletně předělané mobilní menu: čitelné, fullscreen, bez rozmazaného chaosu */
@media (max-width: 860px) {
  body.mobile-menu-open { overflow: hidden !important; }

  body.mobile-menu-open .mobile-overlay,
  .mobile-overlay.show {
    display: block !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 1990 !important;
    background: rgba(0, 0, 0, .72) !important;
    backdrop-filter: none !important;
  }

  .sidebar,
  #sidebarNav {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    max-width: none !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    z-index: 2000 !important;
    transform: translateX(-105%) !important;
    transition: transform .20s ease !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    padding: max(12px, env(safe-area-inset-top)) 12px calc(92px + env(safe-area-inset-bottom)) !important;
    background:
      radial-gradient(circle at 15% 0%, rgba(56, 189, 248, .18), transparent 32%),
      radial-gradient(circle at 85% 8%, rgba(168, 85, 247, .16), transparent 34%),
      linear-gradient(180deg, #071225 0%, #050b18 56%, #020617 100%) !important;
    box-shadow: none !important;
    color: #e5f3ff !important;
  }

  body.mobile-menu-open .sidebar,
  body.mobile-menu-open #sidebarNav,
  .sidebar.open,
  #sidebarNav.open {
    transform: translateX(0) !important;
  }

  .sidebar .panel,
  #sidebarNav .panel,
  .sidebar-menu-panel {
    width: 100% !important;
    max-width: 620px !important;
    margin: 0 auto 12px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }

  /* Na mobilu necháme v draweru jen hlavní menu. Doplňkové regionální/info panely dělaly nečitelný dlouhý chaos. */
  #sidebarNav > .panel:not(.sidebar-menu-panel) {
    display: none !important;
  }

  .side-brand {
    position: sticky !important;
    top: 0 !important;
    z-index: 3 !important;
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr) 48px !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 12px !important;
    padding: 12px !important;
    border: 1px solid rgba(125, 211, 252, .22) !important;
    border-radius: 22px !important;
    background: rgba(8, 18, 38, .96) !important;
    box-shadow: 0 16px 46px rgba(0,0,0,.34) !important;
  }

  .side-brand::after {
    content: "Menu";
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
    margin-right: 52px;
    color: #7dd3fc;
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .12em;
    opacity: .9;
  }

  .side-brand .logo-mark.small {
    width: 42px !important;
    height: 42px !important;
    border-radius: 15px !important;
    font-size: .9rem !important;
  }

  .side-brand b {
    display: block !important;
    font-size: 1.06rem !important;
    line-height: 1.05 !important;
    color: #f8fafc !important;
  }

  .side-brand small {
    display: block !important;
    margin-top: 3px !important;
    color: #93c5fd !important;
    font-size: .78rem !important;
  }

  .mobile-menu-close {
    display: inline-grid !important;
    place-items: center !important;
    grid-column: 3 !important;
    width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
    border-radius: 16px !important;
    border: 1px solid rgba(248, 113, 113, .42) !important;
    background: rgba(127, 29, 29, .35) !important;
    color: #fecaca !important;
    font-size: 1.7rem !important;
    line-height: 1 !important;
  }

  .menu-group {
    width: 100% !important;
    max-width: 620px !important;
    margin: 0 auto 14px !important;
    padding: 12px !important;
    border: 1px solid rgba(148, 163, 184, .14) !important;
    border-radius: 22px !important;
    background: rgba(15, 23, 42, .72) !important;
  }

  .menu-group-title {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 10px !important;
    padding: 0 2px !important;
    color: #67e8f9 !important;
    font-size: .72rem !important;
    font-weight: 950 !important;
    text-transform: uppercase !important;
    letter-spacing: .12em !important;
  }

  .menu-group-title::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, #38bdf8, #a78bfa);
    box-shadow: 0 0 18px rgba(56, 189, 248, .5);
  }

  .menu-list.grouped,
  .menu-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .menu-list.grouped .menu-btn,
  .menu-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 50px !important;
    padding: 13px 14px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(148, 163, 184, .18) !important;
    background: rgba(2, 6, 23, .62) !important;
    color: #dbeafe !important;
    font-size: .96rem !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    text-align: left !important;
    box-shadow: none !important;
  }

  .menu-list.grouped .menu-btn::after,
  .menu-btn::after {
    content: "›";
    color: #60a5fa;
    font-size: 1.25rem;
    line-height: 1;
    opacity: .9;
    margin-left: 12px;
  }

  .menu-list.grouped .menu-btn.active,
  .menu-btn.active {
    border-color: rgba(56, 189, 248, .62) !important;
    background: linear-gradient(135deg, rgba(14, 116, 144, .48), rgba(59, 130, 246, .22)) !important;
    color: #ffffff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.05), 0 12px 28px rgba(8, 145, 178, .13) !important;
  }

  .menu-list.grouped .menu-btn.active::after,
  .menu-btn.active::after {
    content: "✓";
    color: #a7f3d0;
    font-size: 1rem;
  }

  .election-lock-note {
    max-width: 620px !important;
    margin: 0 auto 12px !important;
    padding: 12px 14px !important;
    border-radius: 18px !important;
    background: rgba(245, 158, 11, .12) !important;
    border: 1px solid rgba(245, 158, 11, .35) !important;
  }

  .topbar {
    z-index: 100 !important;
  }

  body.mobile-menu-open .topbar {
    pointer-events: none !important;
  }

  body.mobile-menu-open .sidebar,
  body.mobile-menu-open .mobile-overlay {
    pointer-events: auto !important;
  }
}

@media (max-width: 380px) {
  .menu-list.grouped .menu-btn,
  .menu-btn {
    min-height: 48px !important;
    padding: 12px !important;
    font-size: .9rem !important;
  }
  .menu-group { padding: 10px !important; border-radius: 20px !important; }
  .side-brand { border-radius: 20px !important; }
}


/* v3.37 — tvrdý rebuild mobilního menu: samostatný fullscreen sheet, bez rozmazaného podkladu a bez starého sidebaru */
.mobile-menu-sheet { display: none; }
@media (max-width: 860px) {
  body.mobile-menu-open { overflow: hidden !important; height: 100dvh !important; }
  body.mobile-menu-open .mobile-overlay,
  .mobile-overlay.show { display: none !important; }

  /* Starý sidebar na mobilu úplně vypínáme. Byl zdroj překryvů, blur efektu a nešlo ho spolehlivě scrollovat. */
  #sidebarNav,
  .sidebar { display: none !important; }

  .mobile-menu-sheet {
    display: none;
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    width: 100vw !important;
    height: 100dvh !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
    background: #050b18 !important;
    color: #eaf6ff !important;
    padding: max(12px, env(safe-area-inset-top)) 12px calc(96px + env(safe-area-inset-bottom)) !important;
  }
  body.mobile-menu-open .mobile-menu-sheet {
    display: block !important;
  }

  .mobile-menu-sheet-inner {
    width: 100% !important;
    max-width: 620px !important;
    margin: 0 auto !important;
  }

  .mobile-menu-head {
    position: sticky !important;
    top: 0 !important;
    z-index: 2 !important;
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr) 52px !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 0 14px !important;
    padding: 12px !important;
    border: 1px solid rgba(125, 211, 252, .28) !important;
    border-radius: 22px !important;
    background: #0b1730 !important;
    box-shadow: 0 16px 40px rgba(0,0,0,.32) !important;
  }
  .mobile-menu-head .logo-mark.small {
    width: 44px !important;
    height: 44px !important;
    border-radius: 16px !important;
  }
  .mobile-menu-head b {
    display: block !important;
    color: #ffffff !important;
    font-size: 1.12rem !important;
    line-height: 1.1 !important;
  }
  .mobile-menu-head small {
    display: block !important;
    margin-top: 4px !important;
    color: #a7c7f7 !important;
    font-size: .78rem !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  .mobile-menu-x {
    display: grid !important;
    place-items: center !important;
    width: 48px !important;
    height: 48px !important;
    border: 1px solid rgba(248,113,113,.48) !important;
    border-radius: 17px !important;
    background: #3b1118 !important;
    color: #fecaca !important;
    font-size: 2rem !important;
    line-height: 1 !important;
    font-weight: 900 !important;
  }

  .mobile-menu-alert {
    display: grid !important;
    gap: 4px !important;
    margin: 0 0 12px !important;
    padding: 12px 14px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(245,158,11,.36) !important;
    background: rgba(245,158,11,.11) !important;
    color: #fde68a !important;
  }
  .mobile-menu-alert span { color: #f8d795 !important; font-size: .86rem !important; line-height: 1.35 !important; }

  .mobile-menu-sections {
    display: grid !important;
    gap: 12px !important;
  }
  .mobile-menu-section {
    display: grid !important;
    gap: 10px !important;
    padding: 13px !important;
    border-radius: 22px !important;
    border: 1px solid rgba(148,163,184,.17) !important;
    background: #0a1328 !important;
  }
  .mobile-menu-section h3 {
    margin: 0 !important;
    color: #67e8f9 !important;
    font-size: .78rem !important;
    font-weight: 950 !important;
    letter-spacing: .13em !important;
    text-transform: uppercase !important;
  }
  .mobile-menu-links {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
  .mobile-menu-sheet .menu-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 54px !important;
    padding: 14px 15px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(148,163,184,.22) !important;
    background: #071020 !important;
    color: #e6f3ff !important;
    font-size: 1rem !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    text-align: left !important;
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
  }
  .mobile-menu-sheet .menu-btn::after {
    content: "›" !important;
    margin-left: 12px !important;
    color: #60a5fa !important;
    font-size: 1.35rem !important;
  }
  .mobile-menu-sheet .menu-btn.active {
    background: linear-gradient(135deg, rgba(8,145,178,.58), rgba(37,99,235,.34)) !important;
    color: #ffffff !important;
    border-color: rgba(103,232,249,.72) !important;
    box-shadow: 0 12px 28px rgba(8,145,178,.16) !important;
  }
  .mobile-menu-sheet .menu-btn.active::after { content: "✓" !important; color: #bbf7d0 !important; font-size: 1rem !important; }

  .topbar { z-index: 100 !important; }
  body.mobile-menu-open .topbar { visibility: hidden !important; pointer-events: none !important; }
}

/* v3.38 — MOBILE HARD FIX 2
   Cíl: žádný rozmazaný starý sidebar, čitelný fullscreen menu, kompaktní topbar. */
.mobile-menu-sheet { display: none; }
@media (max-width: 860px) {
  html, body { width: 100%; max-width: 100%; overflow-x: hidden !important; }
  .app-shell { width: 100% !important; max-width: 100% !important; padding: 8px 8px calc(86px + env(safe-area-inset-bottom)) !important; }

  .topbar {
    position: sticky !important;
    top: max(6px, env(safe-area-inset-top)) !important;
    z-index: 1000 !important;
    display: grid !important;
    grid-template-columns: 50px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 0 0 10px !important;
    padding: 8px !important;
    border-radius: 18px !important;
    background: rgba(10, 22, 44, .96) !important;
    border: 1px solid rgba(125, 211, 252, .17) !important;
    box-shadow: 0 12px 28px rgba(0,0,0,.28) !important;
    backdrop-filter: none !important;
  }
  .mobile-menu-toggle {
    display: grid !important;
    place-items: center !important;
    width: 48px !important;
    height: 48px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(148, 163, 184, .24) !important;
    background: #071020 !important;
    color: #f8fafc !important;
    font-size: 1.55rem !important;
    line-height: 1 !important;
    box-shadow: none !important;
  }
  .topbar-left { min-width: 0 !important; display:flex !important; align-items:center !important; gap:8px !important; }
  .topbar-left .party-dot { width: 12px !important; height: 12px !important; flex: 0 0 12px !important; }
  .topbar-left h1 { margin:0 !important; max-width: 100% !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; font-size: .98rem !important; line-height: 1.1 !important; }
  .topbar-left p { display: none !important; }
  .topbar-actions {
    grid-column: 1 / -1 !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 0 1px 1px !important;
  }
  .topbar-actions::-webkit-scrollbar { display:none !important; }
  .topbar-actions .btn,
  .topbar-actions .audio-toggle,
  .notification-bell summary {
    flex: 0 0 auto !important;
    min-height: 36px !important;
    min-width: auto !important;
    padding: 7px 10px !important;
    border-radius: 14px !important;
    font-size: .72rem !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
  }
  .notification-bell summary { min-width: 54px !important; justify-content:center !important; }
  .notification-bell summary b { min-width: 18px !important; height: 18px !important; font-size: .72rem !important; }
  #logoutBtn { background: linear-gradient(135deg, #ef4444, #f97316) !important; color:#fff !important; font-size: .78rem !important; }

  body.mobile-menu-open { overflow: hidden !important; height: 100dvh !important; touch-action: none !important; }
  body.mobile-menu-open .topbar { display: none !important; visibility: hidden !important; pointer-events: none !important; }
  body.mobile-menu-open .mobile-overlay,
  .mobile-overlay.show { display: none !important; visibility: hidden !important; pointer-events: none !important; }

  /* Starý sidebar na mobilu nepoužívat vůbec. Menu renderujeme jen do .mobile-menu-sheet. */
  #sidebarNav,
  .sidebar {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: none !important;
    filter: none !important;
    backdrop-filter: none !important;
  }

  .mobile-menu-sheet {
    display: none !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483647 !important;
    width: 100vw !important;
    height: 100dvh !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
    touch-action: pan-y !important;
    padding: max(12px, env(safe-area-inset-top)) 12px calc(100px + env(safe-area-inset-bottom)) !important;
    background: #050b18 !important;
    color: #eaf6ff !important;
    filter: none !important;
    backdrop-filter: none !important;
  }
  body.mobile-menu-open .mobile-menu-sheet {
    display: block !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  .mobile-menu-sheet-inner { max-width: 640px !important; margin: 0 auto !important; display: grid !important; gap: 12px !important; }
  .mobile-menu-head {
    position: sticky !important;
    top: 0 !important;
    z-index: 2 !important;
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr) 50px !important;
    gap: 10px !important;
    align-items: center !important;
    padding: 12px !important;
    border-radius: 22px !important;
    border: 1px solid rgba(125, 211, 252, .28) !important;
    background: #0b1730 !important;
    box-shadow: 0 18px 45px rgba(0,0,0,.34) !important;
  }
  .mobile-menu-head b { display:block !important; color:#fff !important; font-size:1.08rem !important; line-height:1.08 !important; }
  .mobile-menu-head small { display:block !important; margin-top:4px !important; color:#a7c7f7 !important; font-size:.78rem !important; overflow:hidden !important; white-space:nowrap !important; text-overflow:ellipsis !important; }
  .mobile-menu-x {
    display:grid !important;
    place-items:center !important;
    width: 46px !important;
    height: 46px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(248,113,113,.52) !important;
    background:#3b1118 !important;
    color:#fecaca !important;
    font-size: 1.9rem !important;
    font-weight: 900 !important;
    line-height:1 !important;
  }
  .mobile-menu-sections { display:grid !important; gap: 12px !important; }
  .mobile-menu-section {
    display:grid !important;
    gap: 10px !important;
    padding: 13px !important;
    border-radius: 22px !important;
    border: 1px solid rgba(148, 163, 184, .18) !important;
    background:#0a1328 !important;
  }
  .mobile-menu-section h3 { margin:0 !important; color:#67e8f9 !important; font-size:.78rem !important; font-weight:950 !important; letter-spacing:.13em !important; text-transform:uppercase !important; }
  .mobile-menu-links { display:grid !important; grid-template-columns:1fr !important; gap:8px !important; }
  .mobile-menu-sheet .menu-btn {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    width:100% !important;
    min-height:54px !important;
    padding:14px 15px !important;
    border-radius:18px !important;
    border:1px solid rgba(148,163,184,.22) !important;
    background:#071020 !important;
    color:#e6f3ff !important;
    font-size:1rem !important;
    font-weight:900 !important;
    line-height:1.15 !important;
    text-align:left !important;
    opacity:1 !important;
    filter:none !important;
    transform:none !important;
  }
  .mobile-menu-sheet .menu-btn::after { content:'›' !important; margin-left:12px !important; color:#60a5fa !important; font-size:1.35rem !important; }
  .mobile-menu-sheet .menu-btn.active { background:linear-gradient(135deg, rgba(8,145,178,.60), rgba(37,99,235,.36)) !important; color:#fff !important; border-color:rgba(103,232,249,.72) !important; }
  .mobile-menu-sheet .menu-btn.active::after { content:'✓' !important; color:#bbf7d0 !important; font-size:1rem !important; }

  .panel, .election-card, .event-card, .region-card, .stat-card { border-radius: 18px !important; }
  .pinned-events-wrap, .next-election-banner, .result-day-banner { margin-left: 0 !important; margin-right:0 !important; }
}


/* v3.39 – menší denní akce, obrana proti útokům, lepší mobil */
.compact-pinned-panel { padding: 14px 16px; }
.pinned-calendar-details { width:100%; }
.pinned-calendar-summary {
  list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:12px;
  padding:10px 12px; border-radius:18px; background:rgba(8,20,44,.72); border:1px solid rgba(56,189,248,.20);
}
.pinned-calendar-summary::-webkit-details-marker { display:none; }
.pinned-calendar-summary span:first-child { display:grid; gap:2px; }
.pinned-calendar-summary small { color:var(--muted); font-weight:700; }
.compact-note { margin:10px 4px 8px; }
.compact-events-list { gap:12px; }
.event-mini-details { border:1px solid rgba(148,163,184,.16); border-radius:18px; overflow:hidden; background:rgba(5,12,28,.52); }
.event-mini-summary { list-style:none; cursor:pointer; display:flex; justify-content:space-between; gap:12px; align-items:center; padding:12px 14px; }
.event-mini-summary::-webkit-details-marker { display:none; }
.event-mini-summary span:first-child { display:grid; gap:2px; min-width:0; }
.event-mini-summary b { white-space:normal; }
.event-mini-summary small { color:var(--muted); }
.event-mini-body { padding: 0 14px 14px; }
.attack-defense-card { padding:14px; border:1px solid rgba(251,191,36,.34); border-radius:18px; background:linear-gradient(135deg, rgba(120,53,15,.25), rgba(15,23,42,.72)); margin:10px 0; }
.attack-defense-card header { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-bottom:8px; }
.attack-defense-card header div { display:grid; gap:3px; }
.defense-actions { align-items:stretch; }
.defense-actions .btn { display:grid; gap:2px; min-height:56px; text-align:left; }
.defense-actions .btn small { font-size:.72rem; color:var(--muted); }
.danger-soft { border-color: rgba(251,191,36,.36); background:linear-gradient(135deg, rgba(120,53,15,.18), rgba(8,20,44,.60)); }
.finance-panel .finance-status p b { color:#bae6fd; }

@media (max-width: 760px) {
  .compact-pinned-panel { padding:10px !important; margin-bottom:10px !important; }
  .pinned-calendar-summary { padding:10px 11px !important; border-radius:15px !important; }
  .pinned-calendar-summary b { font-size:.98rem !important; }
  .pinned-calendar-summary small { font-size:.72rem !important; }
  .pinned-calendar-summary .pill { font-size:.70rem !important; padding:6px 8px !important; }
  .compact-events-list { display:grid !important; grid-template-columns:1fr !important; gap:9px !important; }
  .event-mini-summary { padding:10px 11px !important; align-items:flex-start !important; }
  .event-mini-summary .btn { padding:8px 10px !important; min-height:38px !important; font-size:.78rem !important; }
  .event-mini-body { padding:0 10px 10px !important; }
  .event-mini-body .visual-card, .event-mini-body .visual-card img, .event-mini-body .visual-card svg { max-height:64px !important; min-height:0 !important; overflow:hidden !important; }
  .calendar-question-list { gap:8px !important; }
  .calendar-question { padding:10px !important; border-radius:14px !important; }
  .calendar-question .quick-actions { grid-template-columns:1fr !important; }
  .calendar-question .btn { min-height:48px !important; padding:10px !important; }
  .attack-control-row { grid-template-columns:1fr !important; }
  .attack-grid { grid-template-columns:1fr !important; }
  .attack-defense-card header { display:grid !important; }
  .defense-actions { grid-template-columns:1fr !important; }
  .topbar, .game-topbar { padding:10px 12px !important; gap:8px !important; }
  .topbar .btn, .game-topbar .btn { min-height:38px !important; padding:8px 10px !important; font-size:.78rem !important; }
}

/* v3.40 grind update */
.media-interview-top { border-color: rgba(56,189,248,.45); box-shadow: 0 18px 70px rgba(14,165,233,.12); }
.media-interview-top .exclusive-interview-card.hot { border: 1px solid rgba(245,158,11,.45); background: linear-gradient(135deg, rgba(245,158,11,.12), rgba(15,23,42,.92)); }
.media-collapse-map { padding: 0; overflow: hidden; }
.media-collapse-map > summary { cursor: pointer; list-style: none; padding: 18px 22px; display: flex; justify-content: space-between; align-items: center; gap: 12px; background: rgba(15,23,42,.82); border-bottom: 1px solid rgba(148,163,184,.15); }
.media-collapse-map > summary::-webkit-details-marker { display: none; }
.media-collapse-map > summary span { color: #93c5fd; font-size: .86rem; }
.media-collapse-map > section { border: 0 !important; border-radius: 0 !important; margin: 0 !important; }
.voter-transfer-mini { margin-top: 16px; }
.law-rich-card .data-grid { margin: 10px 0 12px; }
@media (max-width: 760px) {
  .media-collapse-map > summary { padding: 16px; align-items:flex-start; flex-direction: column; }
  .media-interview-top .section-head { gap: 8px; }
  .exclusive-interview-card.hot .quick-actions { grid-template-columns: 1fr; }
  .attack-control-row { grid-template-columns: 1fr !important; }
  .attack-grid, .marketing-channel-grid { grid-template-columns: 1fr !important; }
  .law-rich-card .data-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

/* v3.41 — hlubší obsahové systémy */
.content-counter { margin:6px 0 0; color:#67e8f9; font-size:.78rem; font-weight:800; letter-spacing:.02em; }
.action-button-clean { align-items:flex-start !important; text-align:left !important; gap:7px !important; min-height:116px; }
.action-button-clean > small { display:block; color:var(--muted); font-size:.72rem; line-height:1.35; font-weight:600; }
.action-meta { flex-wrap:wrap; }
.village-boost { color:#bbf7d0 !important; background:rgba(34,197,94,.12); border:1px solid rgba(34,197,94,.28); border-radius:999px; padding:2px 7px; }
.interview-bank-stats { display:flex; flex-wrap:wrap; gap:7px; justify-content:flex-end; }
.exclusive-interview-card.hot header > div { display:grid; gap:3px; }
.exclusive-interview-card.hot header small { color:#67e8f9; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.interview-answer-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-top:13px; }
.interview-answer-btn { min-height:88px; display:grid !important; align-content:start; text-align:left !important; gap:5px; }
.interview-answer-btn small { color:var(--muted); line-height:1.35; }
.interview-history-details, .law-action-details, .scandal-response-details { margin-top:14px; border:1px solid rgba(148,163,184,.20); border-radius:16px; overflow:hidden; background:rgba(8,20,44,.55); }
.interview-history-details > summary, .law-action-details > summary, .scandal-response-details > summary { cursor:pointer; padding:13px 15px; color:#bae6fd; font-weight:800; }
.interview-history-list { display:grid; gap:8px; padding:0 13px 13px; }
.interview-history-list article { display:grid; gap:4px; padding:11px; border-radius:13px; background:rgba(15,23,42,.72); border:1px solid rgba(148,163,184,.14); }
.interview-history-list article span { font-size:.84rem; line-height:1.45; }
.interview-history-list article small { color:var(--muted); }
.party-finance-strategy { margin-top:18px; border-color:rgba(34,197,94,.28); background:linear-gradient(135deg,rgba(6,78,59,.14),rgba(8,20,44,.78)); }
.vote-grant-highlight { display:flex; justify-content:space-between; gap:18px; align-items:center; padding:16px; border-radius:18px; background:linear-gradient(135deg,rgba(34,197,94,.18),rgba(14,165,233,.14)); border:1px solid rgba(74,222,128,.30); }
.vote-grant-highlight > div { display:grid; gap:4px; }
.vote-grant-highlight b { color:#bbf7d0; font-size:1.08rem; }
.vote-grant-highlight span { color:var(--muted); font-size:.82rem; }
.vote-grant-highlight strong { white-space:nowrap; color:#4ade80; font-size:1.2rem; }
.finance-pillar-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:13px 0; }
.finance-pillar-grid article { padding:13px; border-radius:15px; background:rgba(15,23,42,.72); border:1px solid rgba(148,163,184,.16); display:grid; gap:4px; }
.finance-pillar-grid article b { color:#bae6fd; font-size:1.02rem; }
.finance-pillar-grid article span { font-weight:800; }
.finance-pillar-grid article small { color:var(--muted); line-height:1.35; }
.finance-risk-row { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.finance-risk-row > span { display:grid; gap:3px; padding:10px; border-radius:13px; background:rgba(2,6,23,.44); }
.finance-risk-row b { color:#fef3c7; }
.finance-risk-row small { color:var(--muted); }
.finance-recommendations { margin:12px 0 0; color:#dbeafe; }
.law-public-meters { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:12px 0; }
.law-public-meters > div { padding:12px; border-radius:15px; background:rgba(15,23,42,.74); border:1px solid rgba(148,163,184,.16); }
.law-public-meters span { display:flex; justify-content:space-between; align-items:baseline; gap:8px; margin-bottom:8px; }
.law-public-meters b { color:#bae6fd; font-size:1.05rem; }
.law-public-meters small { color:var(--muted); }
.law-public-meters .bar i { display:block; width:var(--w); height:100%; border-radius:inherit; background:linear-gradient(90deg,#22c55e,#67e8f9); }
.law-public-meters .danger-bar i { background:linear-gradient(90deg,#f59e0b,#ef4444); }
.law-action-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; padding:0 12px 12px; }
.law-action-grid .btn { min-height:98px; display:grid; align-content:start; gap:4px; text-align:left; }
.law-action-grid .btn span { color:#67e8f9; font-weight:800; }
.law-action-grid .btn small { color:var(--muted); line-height:1.3; }
.crisis-action-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; padding:0 12px 12px; }
.scandal-card .data-grid { margin:10px 0; }

@media (max-width: 980px) {
  .interview-answer-grid, .law-action-grid, .crisis-action-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .finance-pillar-grid, .finance-risk-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .action-button-clean { min-height:106px; }
  .interview-bank-stats { justify-content:flex-start; }
  .interview-answer-grid, .law-action-grid, .crisis-action-grid, .finance-pillar-grid, .finance-risk-row, .law-public-meters { grid-template-columns:1fr !important; }
  .vote-grant-highlight { align-items:flex-start; flex-direction:column; }
  .vote-grant-highlight strong { white-space:normal; }
}

/* ========================================================================== */
/* Politikon v3.42 — coalition document, local government, careers and memory */
/* ========================================================================== */
.finance-button-state{display:block;margin-top:.55rem;padding:.48rem .65rem;border-radius:.65rem;font-style:normal;font-weight:800;text-align:center;background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.3)}
.finance-button-state.locked{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.35);color:#fbbf24}.funding-card.cooldown-locked{opacity:.78}.funding-card:disabled{cursor:not-allowed;filter:saturate(.65)}
.coalition-contract-panel{margin-top:1rem}.contract-health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:.8rem 0 1rem}.coalition-document-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:1rem}.coalition-party-contract{border:1px solid color-mix(in srgb,var(--party) 55%,var(--line));border-top:4px solid var(--party);border-radius:1rem;padding:1rem;background:linear-gradient(160deg,rgba(255,255,255,.035),rgba(255,255,255,.01))}.coalition-party-contract>header{display:flex;justify-content:space-between;gap:.8rem;align-items:flex-start}.coalition-party-contract>header div{display:grid;gap:.2rem}.coalition-party-contract h4{margin:1rem 0 .45rem}.contract-chip-grid{display:flex;flex-wrap:wrap;gap:.4rem}.contract-chip{border:1px solid var(--line);background:var(--surface-2);color:var(--text);border-radius:999px;padding:.42rem .65rem;font-size:.78rem;cursor:pointer}.contract-chip.selected{border-color:var(--party);box-shadow:0 0 0 1px var(--party) inset;background:color-mix(in srgb,var(--party) 14%,var(--surface-2))}.contract-chip:disabled{cursor:default;opacity:.85}.contract-law-list{display:grid;gap:.45rem}.contract-law{display:flex;justify-content:space-between;gap:.8rem;padding:.55rem .65rem;border-radius:.65rem;background:var(--surface-2);border-left:3px solid #f59e0b}.contract-law.fulfilled{border-left-color:#10b981}.contract-law.missed{border-left-color:#ef4444}.contract-law span{font-size:.75rem;color:var(--muted);text-align:right}.contract-form-row{display:flex;gap:.5rem;align-items:center;margin-top:.55rem}.contract-form-row .input{min-width:0}.contract-form-row .short{max-width:90px}.contract-budget-row{display:grid;grid-template-columns:1fr auto auto;gap:.55rem;align-items:center}.red-line-list{display:flex;flex-wrap:wrap;gap:.45rem}.red-line-list span{padding:.4rem .6rem;border-radius:.6rem;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.25);font-size:.8rem}.contract-dispute{margin-top:1rem;padding:1rem;border:1px dashed var(--line);border-radius:1rem}.contract-violations{display:grid;gap:.55rem;margin-top:.7rem}.contract-violations>div{display:grid;grid-template-columns:auto 1fr auto;gap:.7rem;padding:.65rem;border-radius:.65rem;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2)}
.v342-meter{display:grid;gap:.35rem}.v342-meter>span{display:flex;justify-content:space-between;gap:.5rem}.v342-meter small{color:var(--muted)}.v342-meter .bar i{display:block;width:var(--w);height:100%;border-radius:inherit;background:linear-gradient(90deg,#38bdf8,#8b5cf6)}.v342-meter.good .bar i{background:linear-gradient(90deg,#10b981,#22c55e)}.v342-meter.danger .bar i{background:linear-gradient(90deg,#f59e0b,#ef4444)}
.government-crisis-active{padding:1rem;border-radius:1rem;background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.25);margin-top:.8rem}.crisis-action-grid,.decision-choice-grid,.memory-response-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.6rem}.crisis-action-grid .btn,.decision-choice-grid .btn,.memory-response-grid .btn{display:grid;text-align:left;gap:.25rem;white-space:normal;height:auto;min-height:64px}.crisis-action-grid small,.decision-choice-grid small,.memory-response-grid small{font-weight:400;line-height:1.3}
.shadow-cabinet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.8rem}.shadow-cabinet-grid article{border:1px solid var(--line);border-radius:.85rem;padding:.8rem;background:var(--surface-2)}.shadow-cabinet-grid header{display:grid;gap:.25rem}.shadow-cabinet-grid header span{color:var(--muted);font-size:.85rem}
.local-government-page h3{margin-top:1.25rem}.local-decision-grid,.local-character-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.local-decision-card,.local-character-card{border:1px solid var(--line);border-radius:1rem;padding:1rem;background:var(--surface-2)}.local-decision-card>header,.local-character-card>header{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}.local-decision-card>header{display:grid}.local-decision-card>header span,.local-character-card>header small{color:var(--muted);font-size:.78rem}.local-character-card.governor{border-top:4px solid #8b5cf6}.local-character-card.mayor{border-top:4px solid #38bdf8}.local-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:.8rem 0}.local-character-card .quick-actions{margin-top:.8rem}
.press-builder{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:.65rem;align-items:end}.press-builder label{display:grid;gap:.35rem}.press-builder .wide{grid-column:1/-1}.press-history{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.8rem;margin-top:1rem}.press-history article{border:1px solid var(--line);border-radius:.85rem;padding:.85rem;background:var(--surface-2)}.press-history header{display:flex;justify-content:space-between;gap:.5rem}
.memory-challenge{padding:1rem;border-radius:1rem;border:1px solid rgba(245,158,11,.3);background:rgba(245,158,11,.07)}.memory-response-grid{margin-top:.8rem}.memory-entry-list{display:grid;gap:.5rem;margin-top:.7rem}.memory-entry-list>div{display:grid;grid-template-columns:minmax(180px,1fr) minmax(140px,1fr) auto;gap:.6rem;padding:.6rem;border-radius:.65rem;background:var(--surface-2)}
.leadership-continuity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;padding:.9rem;border:1px solid var(--line);border-radius:.9rem;background:var(--surface-2);margin-bottom:1rem}.leadership-continuity>div{display:grid;gap:.25rem}.leadership-continuity p{grid-column:1/-1;margin:0;color:var(--muted)}.career-path{overflow:auto;margin:.75rem 0}.career-path>span{display:flex;gap:.3rem;min-width:max-content}.career-path i{font-style:normal;font-size:.68rem;padding:.25rem .42rem;border-radius:999px;border:1px solid var(--line);color:var(--muted)}.career-path i.done{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.3);color:var(--text)}.v342-careers .candidate-profile-card .quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.v342-careers .candidate-profile-card .btn{height:auto;white-space:normal}
@media(max-width:900px){.press-builder{grid-template-columns:1fr 1fr}.press-builder label:first-child,.press-builder .wide{grid-column:1/-1}.coalition-document-grid,.local-decision-grid,.local-character-grid{grid-template-columns:1fr}.contract-form-row{flex-wrap:wrap}.contract-form-row .input{flex:1 1 180px}.contract-health-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.contract-health-grid,.local-stat-grid,.leadership-continuity,.press-builder{grid-template-columns:1fr}.press-builder label:first-child,.press-builder .wide,.leadership-continuity p{grid-column:auto}.contract-budget-row{grid-template-columns:1fr auto}.contract-budget-row .btn{grid-column:1/-1}.contract-violations>div,.memory-entry-list>div{grid-template-columns:1fr}.coalition-party-contract{padding:.8rem}.v342-careers .candidate-profile-card .quick-actions{grid-template-columns:1fr}.finance-button-state{font-size:.8rem}.micro-controls .btn:disabled{opacity:.88}.micro-controls .btn{white-space:normal;min-height:44px}}


/* v3.42.2 – jasná odezva při ukládání akce a ochrana proti vícenásobnému kliknutí */
body.server-working { cursor: progress; }
body.server-working::before { content: none !important; display: none !important; }
body.server-working #app button { pointer-events: none; }
body.server-working::after {
  content: 'Provádím akci…';
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 2147483646;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(5, 11, 24, .94);
  color: #eaf6ff;
  border: 1px solid rgba(56, 189, 248, .45);
  box-shadow: 0 10px 30px rgba(0,0,0,.35);
  font-weight: 800;
  font-size: 12px;
  max-width: min(80vw, 240px);
  white-space: nowrap;
}
@media (max-width: 760px) {
  body.server-working::after {
    right: 10px;
    bottom: 10px;
    padding: 7px 10px;
    font-size: 11px;
    max-width: calc(100vw - 20px);
  }
}


/* v3.42.3 – úplný zámek herních akcí během všech voleb */
.election-total-lock-panel {
  border: 1px solid rgba(248, 113, 113, .34);
  background: linear-gradient(160deg, rgba(127, 29, 29, .22), rgba(15, 23, 42, .88));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 14px 32px rgba(0,0,0,.18);
}
.election-total-lock-panel h3 { color: #fecaca; }
.election-total-lock-panel .btn { margin-top: 8px; }


/* v3.42.5 — výrazné živé cooldowny na tlačítkách */
.cooldown-ui-btn {
  display:grid !important;
  align-content:start;
  gap:7px;
  white-space:normal !important;
  height:auto !important;
  min-height:72px;
  text-align:left;
  position:relative;
  overflow:hidden;
}
.cooldown-ui-btn > b,
.cooldown-ui-btn .action-button-label { font-weight:950; line-height:1.15; }
.action-state-strip {
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:8px;
  width:100%;
  margin-top:5px;
  padding:8px 10px;
  border-radius:11px;
  border:1px solid transparent;
  font-style:normal;
  line-height:1;
  box-sizing:border-box;
}
.action-state-strip b { font-size:.72rem; letter-spacing:.065em; }
.action-state-strip em { font-style:normal; font-size:.86rem; font-weight:950; text-align:right; font-variant-numeric:tabular-nums; }
.action-state-strip.is-ready {
  color:#dcfce7;
  background:linear-gradient(90deg,rgba(22,163,74,.26),rgba(16,185,129,.14));
  border-color:rgba(74,222,128,.48);
}
.action-state-strip.is-soon {
  color:#ffedd5;
  background:linear-gradient(90deg,rgba(234,88,12,.30),rgba(245,158,11,.16));
  border-color:rgba(251,146,60,.58);
  box-shadow:0 0 0 1px rgba(251,146,60,.08) inset;
}
.action-state-strip.is-locked {
  color:#fee2e2;
  background:linear-gradient(90deg,rgba(185,28,28,.34),rgba(127,29,29,.20));
  border-color:rgba(248,113,113,.60);
}
.action-state-strip.is-unavailable {
  color:#fef3c7;
  background:linear-gradient(90deg,rgba(180,83,9,.28),rgba(120,53,15,.16));
  border-color:rgba(251,191,36,.45);
}
.cooldown-ui-btn.is-ready:not(:disabled) { border-color:rgba(74,222,128,.42) !important; }
.cooldown-ui-btn.is-soon,
.action-card-with-state.is-soon { border-color:rgba(251,146,60,.55) !important; background-image:linear-gradient(160deg,rgba(124,45,18,.18),rgba(15,23,42,.74)) !important; }
.cooldown-ui-btn.is-locked,
.action-card-with-state.is-locked { border-color:rgba(248,113,113,.52) !important; background-image:linear-gradient(160deg,rgba(127,29,29,.22),rgba(15,23,42,.78)) !important; opacity:1 !important; }
.cooldown-ui-btn.is-unavailable,
.action-card-with-state.is-unavailable { border-color:rgba(251,191,36,.38) !important; }
button[data-countdown-at].is-locked { border-color:rgba(248,113,113,.55) !important; background:linear-gradient(160deg,rgba(127,29,29,.30),rgba(15,23,42,.82)) !important; color:#fee2e2 !important; opacity:1 !important; }
button[data-countdown-at].is-soon { border-color:rgba(251,146,60,.62) !important; background:linear-gradient(160deg,rgba(154,52,18,.30),rgba(15,23,42,.82)) !important; color:#ffedd5 !important; opacity:1 !important; }
.funding-card .action-state-strip { margin-top:auto; }
.campaign-region-btn .action-state-strip,
.district-action-btn .action-state-strip { margin-top:auto; }
@media(max-width:760px) {
  .cooldown-ui-btn { min-height:64px; gap:5px; padding:10px !important; }
  .action-state-strip { padding:7px 8px; border-radius:9px; gap:6px; }
  .action-state-strip b { font-size:.64rem; }
  .action-state-strip em { font-size:.76rem; }
}

/* ========================================================================== */
/* Politikon v3.43 — koaliční vyjednávání, role a volební volatilita          */
/* ========================================================================== */
.v343-negotiation{display:grid;gap:1rem;border-top:4px solid #38bdf8;background:linear-gradient(160deg,rgba(14,116,144,.10),rgba(15,23,42,.94))}
.parliament-role-banner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:.8rem 1rem;border-radius:.85rem;border:1px solid var(--line);background:rgba(15,23,42,.72)}
.parliament-role-banner.role-pending{border-color:rgba(245,158,11,.45);background:rgba(245,158,11,.09)}
.parliament-role-banner.role-government{border-color:rgba(16,185,129,.45);background:rgba(16,185,129,.09)}
.parliament-role-banner.role-opposition{border-color:rgba(239,68,68,.38);background:rgba(239,68,68,.07)}
.parliament-role-banner span,.parliament-role-banner small{color:var(--muted)}
.v343-coalition-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}
.v343-coalition-summary>div{display:grid;gap:.2rem;padding:.8rem;border-radius:.8rem;background:var(--surface-2);border:1px solid var(--line)}
.v343-coalition-summary b{font-size:1.05rem}.v343-coalition-summary small{color:var(--muted)}
.v343-add-partner{display:flex;gap:.7rem;align-items:end;padding:.8rem;border-radius:.8rem;background:rgba(56,189,248,.07);border:1px dashed rgba(56,189,248,.35)}
.v343-add-partner label{display:grid;gap:.3rem;flex:1}.mini-remove{border:0;background:rgba(239,68,68,.18);color:#fecaca;border-radius:999px;width:22px;height:22px;cursor:pointer;font-weight:900}
.v343-contract{display:grid;gap:1rem}.v343-contract-section{display:grid;gap:.75rem;padding:1rem;border-radius:1rem;border:1px solid var(--line);background:rgba(2,6,23,.34)}
.v343-validation{display:grid;gap:.35rem;padding:.85rem 1rem;border-radius:.8rem;border:1px solid rgba(239,68,68,.35);background:rgba(239,68,68,.08)}
.v343-validation.ok{border-color:rgba(16,185,129,.38);background:rgba(16,185,129,.08)}.v343-validation span{color:#fecaca}.v343-validation small{color:#fcd34d}
.v343-program-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:.8rem}.v343-program-clause{display:grid;gap:.65rem;padding:.85rem;border-radius:.85rem;background:var(--surface-2);border:1px solid var(--line)}
.v343-program-clause header{display:flex;justify-content:space-between;gap:.7rem}.v343-program-clause header span{color:var(--muted);font-size:.78rem}.v343-program-clause label{display:grid;gap:.3rem;color:var(--muted);font-size:.78rem}
.v343-budget-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.v343-budget-row{display:grid;grid-template-columns:1fr auto;gap:.45rem;padding:.75rem;border-radius:.75rem;background:var(--surface-2);border:1px solid var(--line)}
.v343-budget-row>span{grid-column:1/-1;display:flex;justify-content:space-between}.v343-budget-row em{font-style:normal;color:#67e8f9;font-weight:900}.v343-budget-row input{width:100%}
.v343-term h5{margin:.85rem 0 .45rem}.v343-feedback{display:grid;gap:.25rem;padding:.65rem;border-radius:.65rem;background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.22)}.v343-feedback span{font-size:.8rem;color:#fde68a}
.v343-ai-timer{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin:.55rem 0}.v343-ai-timer .action-state-strip{min-width:150px}
.v343-contract-actions{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;padding:1rem;position:sticky;bottom:8px;z-index:20;border-radius:1rem;background:rgba(5,11,24,.96);border:1px solid rgba(56,189,248,.35);box-shadow:0 12px 35px rgba(0,0,0,.35)}.v343-contract-actions .input{flex:1 1 260px}
.role-lock-message{padding:1rem;border-radius:.8rem;border:1px dashed rgba(245,158,11,.35);background:rgba(245,158,11,.07);color:#fde68a}
.v343-vote-links{display:grid;gap:.5rem}.v343-vote-links .btn{height:auto;display:grid;text-align:left;white-space:normal}.v343-vote-links .btn small{color:var(--muted)}
.v343-volatility{display:grid;gap:.8rem}.v343-retention-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.7rem}.v343-retention-grid article{display:grid;gap:.45rem;padding:.8rem;border-radius:.8rem;background:var(--surface-2);border:1px solid var(--line)}
.v343-retention-grid header{display:flex;justify-content:space-between}.v343-retention-grid header span{font-weight:900;color:#67e8f9}.v343-retention-grid .bar{height:8px;background:rgba(148,163,184,.18);border-radius:999px;overflow:hidden}.v343-retention-grid .bar i{display:block;height:100%;background:linear-gradient(90deg,#ef4444,#f59e0b,#22c55e);border-radius:inherit}.v343-retention-grid small,.v343-retention-grid p{color:var(--muted);font-size:.78rem;margin:0}
@media(max-width:800px){.v343-coalition-summary,.v343-budget-grid{grid-template-columns:1fr 1fr}.parliament-role-banner{grid-template-columns:1fr}.v343-add-partner{display:grid}.v343-contract-actions{bottom:5px}.v343-program-grid{grid-template-columns:1fr}}
@media(max-width:520px){.v343-coalition-summary,.v343-budget-grid{grid-template-columns:1fr}.v343-contract-section{padding:.75rem}.v343-ai-timer{display:grid}.v343-contract-actions .btn{width:100%}}

/* Politikon v4.0 */
.government-formation-banner-v400{margin:12px 18px 0;padding:16px 18px;border-radius:18px;border:1px solid rgba(248,113,113,.38);background:linear-gradient(120deg,rgba(127,29,29,.34),rgba(15,23,42,.96));display:flex;justify-content:space-between;gap:18px;align-items:center;box-shadow:0 18px 40px rgba(0,0,0,.24)}
.government-formation-banner-v400 span{font-size:11px;font-weight:900;letter-spacing:.12em;color:#fca5a5}.government-formation-banner-v400 h2{margin:3px 0}.government-formation-banner-v400 p{margin:0;color:var(--muted)}.formation-clock{display:grid;text-align:right;gap:3px}.formation-clock small{color:#fca5a5;font-weight:800}.formation-clock strong{font-size:2rem;line-height:1;color:#fff;font-variant-numeric:tabular-nums}.formation-clock em{font-style:normal;font-size:11px;color:var(--muted)}
.v400-project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.v400-project-grid article,.v400-project-list article{padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);display:grid;gap:8px}.v400-project-grid small,.v400-project-list small{color:var(--muted)}.v400-project-list{display:grid;gap:8px;margin-top:14px}.v400-project-list article{grid-template-columns:1fr auto;align-items:center}.v400-project-list article small{grid-column:1/-1}
@media(max-width:760px){.government-formation-banner-v400{margin:8px 8px 0;padding:12px;align-items:flex-start;flex-direction:column}.formation-clock{text-align:left}.formation-clock strong{font-size:1.65rem}.v400-project-grid{grid-template-columns:1fr}}


/* v4.0.1 — sjednocené povolební vyjednávání */
.post-election-negotiation-page{display:grid;gap:16px}.post-election-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:22px;border:1px solid rgba(56,189,248,.28);border-radius:20px;background:linear-gradient(135deg,rgba(14,165,233,.13),rgba(79,70,229,.09) 48%,rgba(15,23,42,.9))}.post-election-hero.completed{border-color:rgba(16,185,129,.35);background:linear-gradient(135deg,rgba(16,185,129,.13),rgba(15,23,42,.92))}.post-election-hero.opposition{border-color:rgba(245,158,11,.35);background:linear-gradient(135deg,rgba(245,158,11,.12),rgba(15,23,42,.92))}.post-election-hero.idle{opacity:.9}.post-election-hero h2{margin:.2rem 0 .45rem;font-size:clamp(1.4rem,2.5vw,2.2rem)}.post-election-hero p{margin:0;color:var(--muted);max-width:900px}.post-election-hero .eyebrow{font-size:.72rem;font-weight:900;letter-spacing:.14em;color:#7dd3fc}.post-election-status{min-width:190px;display:grid;text-align:center;padding:14px 18px;border-radius:16px;background:rgba(2,6,23,.65);border:1px solid rgba(125,211,252,.25)}.post-election-status b{color:#bae6fd}.post-election-status strong{font-size:1.65rem;margin:.2rem 0}.post-election-status small{color:var(--muted)}.post-election-result-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.post-election-result-grid article{display:grid;gap:5px;padding:14px;border-radius:14px;border:1px solid var(--line);background:var(--surface-2)}.post-election-result-grid span{font-size:1.05rem;font-weight:800}.closed-contract-archive>summary{cursor:pointer;font-weight:900;padding:4px 0}.post-election-negotiation-page .v343-negotiation{margin:0}.post-election-negotiation-page .coalition-contract-panel{margin-top:0}
@media(max-width:800px){.post-election-hero{grid-template-columns:1fr;padding:16px}.post-election-status{min-width:0}.post-election-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.post-election-result-grid{grid-template-columns:1fr}}


/* v4.0.2 — dashboard command center and visible media alerts */
.dashboard-command-center{overflow:hidden}.quick-state-hero{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(280px,1.4fr) minmax(260px,1fr);gap:16px;align-items:stretch;margin:12px 0 16px}.quick-state-main,.quick-state-progress,.quick-state-signals{border:1px solid rgba(56,189,248,.18);border-radius:18px;background:linear-gradient(155deg,rgba(15,23,42,.85),rgba(3,12,28,.7));padding:16px}.quick-state-main{display:grid;align-content:center;gap:3px}.quick-state-main strong{font-size:2.7rem;line-height:1;color:#7dd3fc}.quick-state-main small,.quick-state-main span,.quick-state-progress small{color:var(--muted)}.quick-state-progress{display:grid;align-content:center;gap:10px}.quick-state-progress>div:first-child{display:flex;justify-content:space-between;gap:10px}.quick-state-signals{display:grid;grid-template-columns:1fr 1fr;gap:9px}.quick-state-signals span,.risk-summary-grid span{display:grid;gap:2px;padding:10px;border-radius:13px;background:rgba(14,165,233,.07);border:1px solid rgba(56,189,248,.13)}.quick-state-signals b,.risk-summary-grid b{font-size:1.25rem}.quick-state-signals small,.risk-summary-grid small{color:var(--muted)}.milestone-grid.improved{grid-template-columns:repeat(6,minmax(115px,1fr))}.dashboard-media-alert{border-color:rgba(56,189,248,.32);background:linear-gradient(145deg,rgba(8,47,73,.22),rgba(15,23,42,.94))}.dashboard-media-alert.quiet{display:flex;align-items:center;justify-content:space-between;gap:18px}.dashboard-interview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.dashboard-interview-grid article{padding:14px;border-radius:16px;border:1px solid rgba(56,189,248,.22);background:rgba(2,10,24,.72);display:grid;gap:10px}.dashboard-interview-grid header{display:flex;justify-content:space-between;gap:10px}.dashboard-interview-grid header small{color:#fbbf24}.dashboard-interview-grid p{margin:0;line-height:1.45}.risk-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:12px 0}.notification-item.rozhovor{border-color:rgba(56,189,248,.35);background:rgba(14,165,233,.08)}
@media(max-width:1050px){.quick-state-hero{grid-template-columns:1fr 1.5fr}.quick-state-signals{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}.milestone-grid.improved{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.quick-state-hero{grid-template-columns:1fr}.quick-state-signals{grid-column:auto;grid-template-columns:1fr 1fr}.milestone-grid.improved{grid-template-columns:1fr 1fr}.dashboard-media-alert.quiet{align-items:flex-start;flex-direction:column}.risk-summary-grid{grid-template-columns:1fr 1fr}.quick-state-main strong{font-size:2.2rem}}


/* v4.0.3 – jednoduché a samoopravné povolební vyjednávání */
.v403-contract-simple{display:grid;gap:14px}.v403-negotiation-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.v403-negotiation-steps span{padding:10px;border-radius:12px;border:1px solid var(--line);text-align:center;color:var(--muted);font-weight:800}.v403-negotiation-steps span.active{border-color:#38bdf8;color:#bae6fd;background:rgba(14,165,233,.09)}.v403-negotiation-steps span.done{border-color:#22c55e;color:#bbf7d0;background:rgba(34,197,94,.09)}.v403-action-center{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px;border-radius:18px;border:1px solid rgba(56,189,248,.3);background:linear-gradient(135deg,rgba(14,165,233,.10),rgba(15,23,42,.72))}.v403-action-center h3{margin:0 0 5px}.v403-action-center p{margin:0;color:var(--muted)}.v403-action-center small{display:block;margin-top:8px;color:#86efac}.v403-primary-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.v403-primary-actions .btn{min-height:52px}.v403-ai-wait{display:grid;gap:2px;padding:10px 14px;border-radius:13px;background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.35)}.v403-ai-wait span{color:#fbbf24;font-weight:900}.v403-contract-details{border:1px solid var(--line);border-radius:16px;background:rgba(2,6,23,.22);overflow:hidden}.v403-contract-details>summary{display:flex;justify-content:space-between;gap:12px;padding:16px;cursor:pointer}.v403-contract-details>summary span{color:var(--muted);font-size:.85rem}.v403-contract-details>.v343-contract-section{border:0;margin:0;border-top:1px solid var(--line);border-radius:0}.v403-contract-details .coalition-document-grid{padding:0 14px 14px}.v403-contract-simple .v343-validation{display:none}.v403-contract-simple .v343-contract-section>.section-head{padding:14px 14px 0}.v403-contract-simple .coalition-party-contract{min-width:0}.v403-contract-simple .v343-term h5{margin-top:14px}.v403-contract-simple .v343-program-grid,.v403-contract-simple .v343-budget-grid{padding:0 14px 14px}
@media(max-width:760px){.v403-negotiation-steps{grid-template-columns:1fr 1fr}.v403-action-center{align-items:stretch;flex-direction:column}.v403-primary-actions{justify-content:stretch}.v403-primary-actions .btn{width:100%}.v403-contract-details>summary{flex-direction:column}}

/* Politikon v4.0.4 — přehledné koaliční vyjednávání po kolech */
.v404-contract{display:grid;gap:14px}.v404-sticky-action{position:sticky;top:64px;z-index:24;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid rgba(56,189,248,.45);border-radius:16px;background:rgba(6,18,38,.96);box-shadow:0 14px 35px rgba(0,0,0,.35);backdrop-filter:blur(12px)}.v404-sticky-action>div:first-child{display:grid;gap:3px}.v404-sticky-action>div:last-child{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.v404-sticky-action span{color:var(--muted);font-size:.88rem}.v404-main-send{min-height:48px;padding-inline:20px;font-size:1rem;box-shadow:0 0 0 1px rgba(34,197,94,.25),0 10px 28px rgba(34,197,94,.18)}.v404-wait-pill{padding:9px 12px;border-radius:999px;background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.38);color:#fcd34d!important;font-weight:800}.v404-counter-card{display:grid;gap:9px;padding:16px;border:1px solid rgba(245,158,11,.42);border-radius:16px;background:linear-gradient(145deg,rgba(120,53,15,.18),rgba(15,23,42,.78))}.v404-counter-card header{display:flex;justify-content:space-between;gap:10px}.v404-counter-card header div{display:grid;gap:2px}.v404-counter-card ul{margin:0;padding-left:22px}.v404-counter-card p{margin:0;color:var(--muted)}.v404-counter-card .btn{justify-self:start}.v404-partner-editor{display:grid;gap:14px;padding:18px;border:1px solid rgba(56,189,248,.48);border-radius:18px;background:linear-gradient(150deg,rgba(3,105,161,.13),rgba(15,23,42,.82))}.v404-field{display:grid;gap:7px}.v404-field>span,.v404-counter-grid label{font-weight:800}.v404-counter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v404-counter-grid label{display:grid;gap:6px}.v404-negotiation-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.v404-negotiation-buttons .btn{height:auto;min-height:52px;white-space:normal}.v404-round-history{border:1px solid var(--line);border-radius:14px;padding:0 14px;background:rgba(15,23,42,.48)}.v404-round-history summary{display:flex;justify-content:space-between;gap:10px;padding:14px 0;cursor:pointer}.v404-round-history summary span{color:var(--muted);font-size:.85rem}.v404-bottom-send{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px;border:1px solid rgba(34,197,94,.34);border-radius:16px;background:rgba(6,78,59,.13)}.v404-bottom-send>div{display:grid;gap:3px}.v404-bottom-send span{color:var(--muted);font-size:.88rem}
@media(max-width:760px){.v404-sticky-action{top:54px;align-items:stretch;flex-direction:column;padding:11px}.v404-sticky-action>div:last-child{display:grid;grid-template-columns:1fr}.v404-main-send{width:100%}.v404-counter-grid,.v404-negotiation-buttons{grid-template-columns:1fr}.v404-bottom-send{align-items:stretch;flex-direction:column}.v404-bottom-send .btn{width:100%}}

/* v4.0.5 — úplné koaliční vyjednávání nabídka vs. protinávrh */
.v405-contract,.v405-board{display:grid;gap:14px}.v405-board-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:16px;border:1px solid rgba(56,189,248,.35);border-radius:16px;background:rgba(3,105,161,.08)}.v405-board-head h2{margin:0 0 5px}.v405-board-head p{margin:0;color:var(--muted)}.v405-compare{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.v405-side{display:grid;gap:16px;padding:18px;border-radius:18px;border:1px solid var(--line);background:rgba(8,18,38,.82)}.v405-offer{border-color:rgba(148,163,184,.28)}.v405-mine{border-color:rgba(56,189,248,.55);box-shadow:0 0 0 1px rgba(56,189,248,.08) inset}.v405-side>header{display:flex;justify-content:space-between;gap:12px}.v405-side>header h3{margin:3px 0 0}.v405-side section{display:grid;gap:9px;padding-top:13px;border-top:1px solid rgba(148,163,184,.14)}.v405-side h4{margin:0}.v405-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.v405-summary-grid span{display:grid;gap:2px;padding:10px;border-radius:12px;background:rgba(15,23,42,.78);border:1px solid rgba(148,163,184,.16)}.v405-summary-grid b{font-size:1.05rem}.v405-summary-grid small{color:var(--muted)}.v405-line{display:flex;justify-content:space-between;gap:10px;padding:9px 10px;border-radius:10px;background:rgba(15,23,42,.66)}.v405-line span{color:var(--muted);font-size:.82rem}.v405-budget-read,.v405-budget-edit{display:grid;gap:7px}.v405-budget-read span,.v405-budget-edit label>span{display:flex;justify-content:space-between;gap:10px}.v405-budget-read em,.v405-budget-edit em{font-style:normal;color:#7dd3fc;font-weight:800}.v405-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}.v405-fields label,.v405-side label{display:grid;gap:6px}.v405-pm-toggle{grid-template-columns:auto 1fr!important;align-items:start;padding:12px;border-radius:12px;background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.3)}.v405-pm-toggle input{width:20px;height:20px;margin-top:2px}.v405-pm-toggle span{display:grid;gap:2px}.v405-pm-toggle small{color:var(--muted)}.v405-program-editor{display:grid;gap:10px}.v405-program-editor article{display:grid;gap:8px;padding:12px;border:1px solid rgba(148,163,184,.18);border-radius:13px;background:rgba(15,23,42,.55)}.v405-program-editor header{display:flex;justify-content:space-between;gap:10px}.v405-program-editor header small{color:var(--muted)}.v405-actions{position:sticky;bottom:10px;z-index:12;display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:8px;padding:10px;border-radius:14px;background:rgba(5,11,24,.96);border:1px solid rgba(56,189,248,.35);box-shadow:0 12px 30px rgba(0,0,0,.35)}.v405-actions .btn{height:auto;min-height:50px;white-space:normal}.v405-side details{padding:8px 10px;border-radius:10px;background:rgba(15,23,42,.55)}.v405-side details summary{cursor:pointer;font-weight:800}.v405-side details summary small{float:right;color:var(--muted);font-weight:500}
@media(max-width:980px){.v405-compare{grid-template-columns:1fr}.v405-offer{order:1}.v405-mine{order:2}.v405-actions{position:static}}@media(max-width:620px){.v405-summary-grid{grid-template-columns:repeat(2,1fr)}.v405-fields,.v405-actions{grid-template-columns:1fr}.v405-side{padding:13px}.v405-board-head{flex-direction:column}.v405-program-editor header{flex-direction:column}}


/* Politikon v4.0.6 */
.law-stage{display:grid;gap:6px}.law-stage b,.law-stage small{display:block}.law-stage small{color:var(--muted);font-size:.78rem}
.chamber-proposal-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.chamber-proposal-form label{display:grid;gap:6px}.chamber-proposal-form .wide{grid-column:1/-1}.chamber-proposal-list{display:grid;gap:10px}.chamber-proposal-list article{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;padding:14px}.chamber-proposal-list header{display:flex;justify-content:space-between;gap:10px}.chamber-proposal-list small{color:var(--muted)}
@media(max-width:760px){.chamber-proposal-form{grid-template-columns:1fr}.chamber-proposal-form .wide{grid-column:auto}}


/* v4.0.7 — pevný profil předsedy, Evropský parlament, menší mobilní toast */
.leader-identity-v407{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:12px;margin:12px 0;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(15,23,42,.66)}
.leader-identity-v407>div{display:grid;gap:5px}.leader-identity-v407>div>b{font-size:1.2rem}.leader-identity-v407>div span,.leader-identity-v407>div small{color:var(--muted)}
.leader-profile-form-v407{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:10px}.leader-profile-form-v407 label{display:grid;gap:5px}.leader-profile-form-v407 .wide{grid-column:1/-1}
.ep-command-grid-v407{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ep-command-grid-v407>article{padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(15,23,42,.6);display:grid;gap:9px}.ep-member-list-v407{display:grid;gap:6px}.ep-member-list-v407 span{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:10px;background:rgba(2,6,23,.5)}
.ep-party-grid-v407{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:8px}.ep-party-grid-v407 article{border:1px solid color-mix(in srgb,var(--party) 65%,var(--line));border-top:3px solid var(--party);padding:10px;border-radius:12px;display:grid;gap:3px}.ep-party-grid-v407 strong{font-size:1.35rem}.ep-party-grid-v407 small{color:var(--muted)}
.ep-actions-v407{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}.ep-actions-v407 .btn{height:auto;min-height:92px;display:grid;gap:5px;text-align:left;white-space:normal}
@media(max-width:760px){.leader-identity-v407,.ep-command-grid-v407{grid-template-columns:1fr}.leader-profile-form-v407{grid-template-columns:1fr}.leader-profile-form-v407 .wide{grid-column:auto}.ep-actions-v407{grid-template-columns:1fr 1fr}body.server-working::after{right:7px;bottom:7px;padding:5px 8px;font-size:9px;max-width:145px;overflow:hidden;text-overflow:ellipsis;box-shadow:0 6px 18px rgba(0,0,0,.3)}}
@media(max-width:420px){.ep-actions-v407{grid-template-columns:1fr}body.server-working::after{font-size:8px;padding:4px 7px;max-width:120px}}

/* v4.0.8 — prezidentská nominace a antikorupční čitelnost */
.presidential-lock-banner{margin:.7rem 0;padding:.75rem .9rem;border:1px solid rgba(34,197,94,.38);background:rgba(34,197,94,.1);border-radius:.8rem;color:#bbf7d0;font-weight:800}
.integrity-grid .funding-card{border-left:3px solid rgba(34,197,94,.65)}
@media(max-width:760px){body.server-working::after{right:7px;bottom:7px;padding:5px 8px;font-size:9px;max-width:150px;opacity:.88}.presidential-lock-banner{font-size:.78rem;padding:.6rem .7rem}}

/* Politikon v4.0.9 — živé povolební vyjednávání */
.live-gov-v409{border-top:4px solid #38bdf8;background:linear-gradient(160deg,rgba(14,116,144,.09),rgba(15,23,42,.82));}
.live-gov-summary-v409{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:.8rem 0 1rem}.live-gov-summary-v409 article{display:grid;gap:.25rem;padding:.85rem;border:1px solid var(--line);border-radius:.85rem;background:var(--surface-2)}.live-gov-summary-v409 small{color:var(--muted)}.live-gov-summary-v409 b{font-size:1.15rem}
.live-gov-layout-v409{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:1rem}.neg-party-status-v409{display:grid;gap:.55rem}.neg-party-status-v409 article{display:grid;grid-template-columns:1fr auto;gap:.15rem .7rem;padding:.7rem .8rem;border-radius:.75rem;border-left:4px solid var(--party);background:var(--surface-2)}.neg-party-status-v409 article small{grid-column:1/-1;color:var(--muted)}.neg-party-status-v409 article.active{box-shadow:0 0 0 1px rgba(56,189,248,.35) inset;background:rgba(14,116,144,.12)}.neg-party-status-v409 article.failed{opacity:.62}.neg-party-status-v409 article.mandate{background:rgba(16,185,129,.08)}
.neg-live-feed-v409{display:grid;gap:.55rem;max-height:430px;overflow:auto;padding-right:.25rem}.neg-live-feed-v409>div{display:grid;grid-template-columns:92px 1fr;gap:.7rem;padding:.65rem;border-radius:.7rem;background:var(--surface-2);border:1px solid var(--line)}.neg-live-feed-v409>div.latest{border-color:rgba(56,189,248,.42);background:rgba(14,116,144,.11)}.neg-live-feed-v409 time{font-size:.75rem;color:var(--muted)}.neg-live-feed-v409 p{margin:0;line-height:1.35}
@media(max-width:820px){.live-gov-summary-v409{grid-template-columns:1fr}.live-gov-layout-v409{grid-template-columns:1fr}.neg-live-feed-v409>div{grid-template-columns:1fr}.neg-live-feed-v409 time{font-size:.68rem}}


/* v4.0.9.2 – jednotný 28denní volební kalendář */
.unified-cycle-box{margin:14px 0;padding:14px 16px;border:1px solid rgba(56,189,248,.35);border-radius:18px;background:linear-gradient(135deg,rgba(8,47,73,.42),rgba(15,23,42,.82));display:grid;grid-template-columns:1fr auto;gap:8px 16px;align-items:center}.unified-cycle-box>div:first-child{display:flex;flex-direction:column;gap:3px}.unified-cycle-box b{font-size:16px}.unified-cycle-box span,.unified-cycle-box small{color:var(--muted)}.unified-cycle-box .bar{grid-column:1/-1}.unified-cycle-box>small{grid-column:1/-1}.timeline-item.cycle-marker{border-color:rgba(56,189,248,.55);background:rgba(14,116,144,.12)}
@media(max-width:760px){.unified-cycle-box{padding:11px 12px;border-radius:14px}.unified-cycle-box b{font-size:14px}.unified-cycle-box span,.unified-cycle-box small{font-size:11px}}


/* v4.1.0 — sjednocená legislativa */
.unified-laws-v410 { display:grid; gap:18px; }
.law-hub-tabs-v410 { display:flex; flex-wrap:wrap; gap:8px; position:sticky; top:8px; z-index:8; padding:10px; border:1px solid var(--border); border-radius:16px; background:rgba(7,15,31,.94); backdrop-filter:blur(12px); }
.law-hub-tabs-v410 a { color:var(--text); text-decoration:none; border:1px solid var(--border); border-radius:999px; padding:8px 12px; font-weight:800; font-size:13px; }
.law-hub-section-v410 { scroll-margin-top:88px; border:1px solid var(--border); border-radius:18px; padding:16px; background:rgba(5,12,26,.45); }
.law-auto-state { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:12px; padding:10px 12px; border:1px solid rgba(56,189,248,.42); border-radius:12px; background:rgba(14,116,144,.12); color:#bae6fd; }
.law-auto-state small { color:#e0f2fe; font-weight:800; }
.law-auto-state.terminal { border-color:rgba(100,116,139,.35); background:rgba(51,65,85,.18); color:#cbd5e1; }
.law-archive-v410 { margin-top:16px; }
@media (max-width:760px){.law-hub-tabs-v410{top:4px;gap:5px;padding:7px}.law-hub-tabs-v410 a{font-size:11px;padding:6px 8px}.law-hub-section-v410{padding:10px}.law-auto-state{align-items:flex-start;flex-direction:column;gap:3px}}

/* v4.2.0 — konkrétní mediální odpovědi a potvrzení kandidáti */
.interview-question-v420{padding:14px 16px;border:1px solid rgba(56,189,248,.35);border-radius:16px;background:rgba(8,20,40,.7);margin:12px 0 16px}.interview-question-v420 small{color:#7dd3fc;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.interview-question-v420 p{font-size:17px;font-weight:800;line-height:1.45;margin:6px 0 0}.concrete-answer-v420{display:flex!important;flex-direction:column;align-items:flex-start!important;text-align:left!important;gap:7px;min-height:145px}.answer-quote-v420{font-size:14px;line-height:1.42;color:#e2e8f0;font-weight:650}.concrete-answer-v420 small{color:#94a3b8}.candidate-mini-card.confirmed-v420{border-color:rgba(34,197,94,.65);background:rgba(20,83,45,.18)}.candidate-mini-card.confirmed-v420 small{color:#86efac;font-weight:800}
@media(max-width:760px){.concrete-answer-v420{min-height:auto;padding:12px}.answer-quote-v420{font-size:12px}.interview-question-v420 p{font-size:14px}}


/* v4.2.1 – čitelné karty návrhů zákonů bez světlého systémového vzhledu tlačítek */
.law-proposal-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:14px 0 18px;
}
.law-proposal-card{
  appearance:none;
  -webkit-appearance:none;
  display:grid;
  gap:7px;
  width:100%;
  min-width:0;
  padding:16px;
  text-align:left;
  color:var(--text,#e5edf8) !important;
  background:linear-gradient(155deg,rgba(15,27,49,.98),rgba(8,18,35,.96)) !important;
  border:1px solid rgba(92,129,175,.34) !important;
  border-radius:16px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  cursor:pointer;
  white-space:normal;
}
.law-proposal-card:hover:not(:disabled){
  transform:translateY(-1px);
  border-color:rgba(34,211,238,.7) !important;
  background:linear-gradient(155deg,rgba(13,54,72,.96),rgba(8,29,50,.98)) !important;
}
.law-proposal-card b{display:block;color:#f3f7ff !important;font-size:16px;line-height:1.25;}
.law-proposal-card span{display:block;color:#86efac !important;font-weight:900;line-height:1.2;}
.law-proposal-card small{display:block;color:#9fb0c7 !important;line-height:1.45;font-size:13px;}
.law-proposal-card:disabled{opacity:.55;cursor:not-allowed;filter:none;}
@media(max-width:760px){.law-proposal-grid{grid-template-columns:1fr}.law-proposal-card{padding:13px}}

/* Politikon v5.0.0 */
.ep-v500-expansion{margin-top:24px;display:grid;gap:20px}.ep-v500-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ep-v500-kpis span,.ep-dossier-v500,.ep-group-v500,.ep-grant-v500,.ep-mission-v500{background:#0b1427;border:1px solid #243552;border-radius:16px;padding:14px}.ep-v500-kpis b{font-size:1.35rem;display:block}.ep-v500-kpis small{color:#9fb0cb}.ep-v500-columns{display:grid;grid-template-columns:1.35fr .85fr;gap:16px}.ep-dossier-v500{margin-bottom:10px}.ep-dossier-v500 header,.ep-group-v500,.ep-grant-v500{display:flex;justify-content:space-between;gap:12px;align-items:center}.ep-dossier-v500 p{color:#cbd5e1}.meter{height:7px;background:#111d33;border-radius:99px;overflow:hidden}.meter i{display:block;height:100%;background:linear-gradient(90deg,#22c55e,#38bdf8)}.ep-group-v500{margin-bottom:8px;flex-wrap:wrap}.ep-group-v500 small{width:100%;color:#92a5c2}.ep-mission-v500{display:block;width:100%;text-align:left;color:inherit;margin-bottom:8px}.ep-mission-v500 small{display:block;color:#9fb0cb;margin-top:5px}.local-level-grid-v500{display:grid;grid-template-columns:1fr 1fr;gap:16px}.local-level-grid-v500 article,.regional-strength-v500 article{background:#0b1427;border:1px solid #243552;border-radius:18px;padding:18px}.local-level-grid-v500 ul{padding-left:20px}.tag-row{display:flex;flex-wrap:wrap;gap:7px}.tag-row span{background:#10213a;border:1px solid #28527a;border-radius:999px;padding:5px 9px;font-size:.82rem}.regional-strength-v500{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.regional-strength-v500 header{display:flex;flex-direction:column;margin-bottom:10px}.regional-strength-v500 header small{color:#9fb0cb}.regional-strength-v500 article>div{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;padding:7px 0;border-top:1px solid #17243b}.regional-strength-v500 i{width:10px;height:10px;border-radius:50%}.law-agenda-v500{border:1px solid #a06a16!important;background:linear-gradient(180deg,rgba(160,106,22,.09),transparent)}
@media(max-width:900px){.ep-v500-kpis{grid-template-columns:1fr 1fr}.ep-v500-columns,.local-level-grid-v500{grid-template-columns:1fr}.regional-strength-v500{grid-template-columns:1fr}}

/* Politikon v5.1.0 */
.career-v510,.election-moods-v510{margin-top:18px}.career-leader-v510{padding:18px;border:1px solid rgba(78,142,255,.25);border-radius:16px;background:rgba(8,18,38,.45)}.career-leader-v510 p{display:flex;gap:8px;flex-wrap:wrap}.eligibility-v510{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.eligibility-v510 span{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800}.eligibility-v510 .yes{background:rgba(16,185,129,.14);color:#7ee7bd}.eligibility-v510 .no{background:rgba(239,68,68,.14);color:#ff9b9b}.mood-election-grid-v510{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:14px}.mood-election-grid-v510>article{padding:16px;border:1px solid rgba(93,129,190,.23);border-radius:16px;background:rgba(6,14,31,.52)}.mood-election-grid-v510 header{display:flex;justify-content:space-between;gap:12px}.mood-kpis-v510{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:13px 0}.mood-kpis-v510 span{padding:10px;border-radius:12px;background:rgba(30,64,175,.12);text-align:center}.mood-kpis-v510 b,.mood-kpis-v510 small{display:block}.mood-topic-v510{display:grid;grid-template-columns:1fr auto;gap:3px 10px;padding:8px 0;border-bottom:1px solid rgba(148,163,184,.12)}.mood-topic-v510 small{grid-column:1/-1;color:var(--muted)}

/* Politikon v6.0.0 */
.mandates-v600{margin-top:20px}.mandate-kpis-v600{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.mandate-kpis-v600 article{padding:14px;border-radius:14px;background:rgba(15,31,58,.75);border:1px solid rgba(88,125,184,.24)}.mandate-kpis-v600 b,.mandate-kpis-v600 small{display:block}.mandate-kpis-v600 b{font-size:1.45rem}.mandate-kpis-v600 small{color:var(--muted)}.mandate-columns-v600{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}.person-career-v600,.successor-v600{padding:14px;border:1px solid rgba(95,129,183,.22);border-radius:15px;background:rgba(5,13,29,.48);margin-bottom:10px}.person-career-v600 header,.successor-v600{display:flex;justify-content:space-between;gap:12px}.person-career-v600 header small,.successor-v600 small{display:block;color:var(--muted)}.career-tags-v600{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.career-tags-v600 span,.successor-v600 span{padding:5px 8px;border-radius:999px;background:rgba(37,99,235,.14);border:1px solid rgba(96,165,250,.25);font-size:.78rem}.career-tags-v600 .free{background:rgba(16,185,129,.12);border-color:rgba(52,211,153,.25)}.timeline-row-v600{display:grid;grid-template-columns:10px 1fr;gap:9px;padding:8px 0;border-top:1px solid rgba(148,163,184,.12)}.timeline-row-v600 i{width:9px;height:9px;border-radius:50%;margin-top:5px}.timeline-row-v600 i.active{background:#34d399;box-shadow:0 0 9px rgba(52,211,153,.5)}.timeline-row-v600 i.ended{background:#64748b}.timeline-row-v600 small{display:block;color:var(--muted)}.successor-v600{align-items:flex-start;flex-direction:column}.successor-v600>div:last-child{display:flex;gap:5px;flex-wrap:wrap}.rules-v600{padding-left:20px;color:#cbd5e1}.rules-v600 li{margin:7px 0}@media(max-width:900px){.mandate-kpis-v600{grid-template-columns:1fr 1fr}.mandate-columns-v600{grid-template-columns:1fr}}


/* Politikon v6.1.0 — Living Elections */
.living-election-kpis-v610{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.living-election-kpis-v610 article,.election-card-v610{background:var(--card,#111827);border:1px solid rgba(148,163,184,.18);border-radius:16px;padding:14px}.living-election-kpis-v610 b{font-size:24px;display:block}.living-election-kpis-v610 small{color:var(--muted,#94a3b8)}.election-card-grid-v610{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.election-card-v610.next{outline:2px solid rgba(59,130,246,.55)}.election-card-v610 header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.election-card-v610 header small{display:block;color:var(--muted,#94a3b8);margin-top:4px}.projection-v610{margin:12px 0}.projection-v610>div{display:grid;grid-template-columns:10px 60px 1fr auto;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid rgba(148,163,184,.12)}.projection-v610 i{width:9px;height:9px;border-radius:50%}.candidate-list-v610>div{display:grid;grid-template-columns:30px 1fr auto;gap:8px;padding:8px;border-bottom:1px solid rgba(148,163,184,.12);align-items:center}.candidate-list-v610>div.jumped{background:rgba(16,185,129,.08)}.candidate-list-v610 em{grid-column:2/4;color:#34d399;font-size:12px}.substitutes-v610,.counting-steps-v610{display:flex;gap:8px;flex-wrap:wrap}.substitutes-v610 span,.counting-steps-v610 span{padding:6px 9px;border-radius:999px;background:rgba(148,163,184,.12);font-size:12px}.election-night-preview-v610{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:18px 0;padding:16px;border-radius:16px;background:linear-gradient(135deg,rgba(37,99,235,.15),rgba(124,58,237,.12));border:1px solid rgba(99,102,241,.25)}
@media(max-width:900px){.living-election-kpis-v610,.election-card-grid-v610{grid-template-columns:1fr 1fr}.election-night-preview-v610{display:block}.counting-steps-v610{margin-top:12px}}@media(max-width:600px){.living-election-kpis-v610,.election-card-grid-v610{grid-template-columns:1fr}.candidate-list-v610>div{grid-template-columns:26px 1fr}.candidate-list-v610 small{grid-column:2}.projection-v610>div{grid-template-columns:10px 50px 1fr}}

/* ========================================================================== */
/* Politikon v6.2.0 — Daily Government + Fast Actions                        */
/* ========================================================================== */
body.state-syncing-v620::after{content:'Synchronizuji stav…';position:fixed;right:18px;bottom:18px;z-index:99999;padding:9px 13px;border:1px solid rgba(56,189,248,.35);border-radius:999px;background:rgba(8,18,33,.94);box-shadow:0 10px 30px rgba(0,0,0,.28);font-size:12px;font-weight:800;color:var(--text);pointer-events:none;backdrop-filter:blur(12px)}
.eyebrow-v620{display:block;font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:900;color:var(--accent,#38bdf8);margin-bottom:6px}
.daily-command-v620{margin-bottom:18px;border:1px solid rgba(56,189,248,.24);border-radius:24px;padding:18px;background:linear-gradient(145deg,rgba(56,189,248,.075),rgba(255,255,255,.025));overflow:hidden}
.daily-command-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:15px}.daily-command-hero h2{margin:0 0 7px;font-size:clamp(22px,2.5vw,34px)}.daily-command-hero p{margin:0;color:var(--muted);max-width:900px}.daily-score-v620{min-width:150px;text-align:center;border:1px solid var(--line);border-radius:20px;padding:14px;background:rgba(0,0,0,.15)}.daily-score-v620 strong{display:block;font-size:31px;line-height:1}.daily-score-v620 small{display:block;margin:5px 0 9px;color:var(--muted)}
.briefing-strip-v620{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}.briefing-strip-v620>span{display:flex;flex-direction:column;gap:3px;border:1px solid var(--line);border-radius:14px;padding:11px;background:rgba(255,255,255,.028)}.briefing-strip-v620 b{font-size:13px}.briefing-strip-v620 small{color:var(--muted);font-size:11px}
.daily-objectives-v620{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.daily-objective-v620{border:1px solid var(--line);border-radius:16px;padding:12px;background:rgba(255,255,255,.026);min-width:0}.daily-objective-v620.done{border-color:rgba(52,211,153,.34);background:rgba(52,211,153,.055)}.daily-objective-v620 header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.daily-objective-v620 header b{font-size:13px}.daily-objective-v620 header strong{font-size:12px;color:var(--muted)}.daily-objective-v620 p{font-size:11px;color:var(--muted);min-height:32px;margin:7px 0}
.v620-progress{height:7px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}.v620-progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#38bdf8,#34d399);transition:width .25s ease}
.daily-reward-v620{display:flex;justify-content:space-between;gap:12px;margin:12px 0 18px;padding:10px 12px;border:1px dashed rgba(250,204,21,.35);border-radius:13px;background:rgba(250,204,21,.045);font-size:12px}.daily-reward-v620.claimed{border-color:rgba(52,211,153,.35);background:rgba(52,211,153,.045)}
.daily-issues-v620,.gov-docket-v620{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.daily-issue-v620,.gov-docket-card-v620{border:1px solid var(--line);border-radius:18px;padding:14px;background:rgba(6,14,26,.58);min-width:0}.daily-issue-v620.resolved,.gov-docket-card-v620.resolved{opacity:.78;border-color:rgba(52,211,153,.25)}.daily-issue-v620 header,.gov-docket-card-v620 header{display:flex;flex-direction:column;gap:5px}.daily-issue-v620 header span,.gov-docket-card-v620 header span{text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:900;color:var(--accent,#38bdf8)}.daily-issue-v620 header b,.gov-docket-card-v620 header b{font-size:15px}.daily-issue-v620>p,.gov-docket-card-v620>p{color:var(--muted);font-size:12px;line-height:1.5;min-height:54px}
.v620-choice-grid{display:grid;gap:8px}.v620-choice-grid .btn{height:auto;min-height:54px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.v620-choice-grid .btn b{font-size:12px}.v620-choice-grid .btn small{font-size:10px;color:var(--muted);white-space:normal}.v620-resolution{border-radius:12px;padding:10px;background:rgba(52,211,153,.065);font-size:12px;line-height:1.45}
.government-command-v620{margin:15px 0;border-color:rgba(56,189,248,.25);background:linear-gradient(145deg,rgba(56,189,248,.05),rgba(255,255,255,.018))}.government-command-v620.locked{background:rgba(255,255,255,.018)}
.gov-metrics-v620{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin:13px 0 17px}.gov-metric-v620{position:relative;display:flex;flex-direction:column;gap:3px;padding:12px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025);overflow:hidden}.gov-metric-v620 b{font-size:21px}.gov-metric-v620 small{font-size:10px;color:var(--muted)}.gov-metric-v620 i{position:absolute;left:0;bottom:0;height:3px;background:#38bdf8}.gov-metric-v620.ok i{background:#34d399}.gov-metric-v620.bad i{background:#fb7185}.gov-metric-v620.warn i{background:#facc15}
.gov-command-grid-v620{display:grid;grid-template-columns:1.3fr .7fr;gap:14px;margin-bottom:17px}.gov-command-grid-v620>div{border:1px solid var(--line);border-radius:16px;padding:13px;background:rgba(255,255,255,.02)}.gov-command-grid-v620 h3{margin-top:0}.gov-priorities-v620{display:grid;gap:9px}.gov-priorities-v620 article header{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin-bottom:5px}.gov-history-v620{margin-top:12px}.gov-history-v620 p{display:grid;grid-template-columns:180px 1fr auto;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);font-size:11px}.gov-history-v620 p span,.gov-history-v620 p small{color:var(--muted)}
@media(max-width:1100px){.daily-objectives-v620{grid-template-columns:repeat(2,minmax(0,1fr))}.gov-metrics-v620{grid-template-columns:repeat(3,minmax(0,1fr))}.daily-issues-v620,.gov-docket-v620{grid-template-columns:1fr}.gov-command-grid-v620{grid-template-columns:1fr}.briefing-strip-v620{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){body.state-syncing-v620::after{right:10px;bottom:78px}.daily-command-v620{padding:13px;border-radius:18px}.daily-command-hero{grid-template-columns:1fr}.daily-score-v620{text-align:left;min-width:0}.daily-score-v620 strong{font-size:25px}.daily-objectives-v620,.briefing-strip-v620,.gov-metrics-v620{grid-template-columns:1fr}.daily-reward-v620{flex-direction:column}.gov-history-v620 p{grid-template-columns:1fr}.daily-issue-v620>p,.gov-docket-card-v620>p{min-height:0}}

/* ========================================================================== */
/* Politikon v6.2.1 — Anti-snowball / accountability                         */
/* ========================================================================== */
.political-pressure-v621{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;margin:0 0 14px;padding:14px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025)}
.political-pressure-v621>div:first-child>b{display:block;font-size:16px;margin-bottom:5px}.political-pressure-v621 p{margin:0;color:var(--muted);font-size:11px;max-width:760px;line-height:1.45}
.political-pressure-v621.ok{border-color:rgba(52,211,153,.25);background:rgba(52,211,153,.035)}.political-pressure-v621.warn{border-color:rgba(250,204,21,.3);background:rgba(250,204,21,.04)}.political-pressure-v621.bad{border-color:rgba(251,113,133,.38);background:linear-gradient(145deg,rgba(127,29,29,.13),rgba(255,255,255,.02))}
.pressure-numbers-v621{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:8px}.pressure-numbers-v621 span{display:flex;flex-direction:column;gap:2px;min-width:90px;padding:9px 10px;border:1px solid var(--line);border-radius:12px;background:rgba(0,0,0,.12)}.pressure-numbers-v621 b{font-size:17px}.pressure-numbers-v621 small{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.pressure-reasons-v621{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px}.pressure-reasons-v621 span{font-size:10px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:5px 8px;background:rgba(255,255,255,.025)}
.v620-choice-grid .btn small strong{font-weight:900}.risk-nízké{color:#86efac}.risk-střední{color:#fde68a}.risk-vysoké{color:#fdba74}.risk-extrémní{color:#fda4af}
@media(max-width:900px){.political-pressure-v621{grid-template-columns:1fr}.pressure-numbers-v621{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.pressure-numbers-v621{grid-template-columns:1fr}.political-pressure-v621{padding:11px}}


/* v6.3.0 Election DNA */
.election-dna-v630{margin-top:18px}.election-dna-score-v630{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.election-dna-score-v630 article{border:1px solid var(--line);border-radius:16px;padding:13px;background:rgba(255,255,255,.035);display:grid;gap:4px}.election-dna-score-v630 b{font-size:1.35rem}.election-dna-score-v630 small{color:var(--muted)}.election-dna-score-v630 .good b{color:#8ff0b2}.election-dna-score-v630 .bad b{color:#ff9fae}.election-dna-grid-v630{display:grid;grid-template-columns:1.15fr .85fr;gap:14px}.election-dna-grid-v630>div{border:1px solid var(--line);border-radius:18px;padding:15px;background:rgba(255,255,255,.025)}.dna-factor-v630{display:grid;grid-template-columns:1fr auto;gap:7px;margin:10px 0}.dna-factor-v630 i{grid-column:1/-1;height:7px;border-radius:999px;background:rgba(255,255,255,.07);overflow:hidden}.dna-factor-v630 em{display:block;height:100%;background:currentColor;opacity:.7}.dna-groups-v630{display:flex;flex-wrap:wrap;gap:7px}.dna-groups-v630 span{display:flex;gap:6px;align-items:center;border:1px solid var(--line);border-radius:999px;padding:7px 9px;font-size:.82rem;background:rgba(255,255,255,.035)}.dna-groups-v630.low span{opacity:.78}.dna-published-v630{display:grid;gap:4px;border:1px solid var(--line);border-radius:14px;padding:11px;margin-top:12px}.dna-published-v630 span{color:var(--muted);font-size:.82rem}.dna-regions-v630{margin-top:13px}.dna-regions-v630>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}.dna-regions-v630 span{display:grid;grid-template-columns:1fr auto;gap:4px;border:1px solid var(--line);border-radius:12px;padding:9px}.dna-regions-v630 small{grid-column:1/-1;color:var(--muted)}
@media(max-width:850px){.election-dna-score-v630{grid-template-columns:repeat(2,minmax(0,1fr))}.election-dna-grid-v630{grid-template-columns:1fr}.dna-regions-v630>div{grid-template-columns:1fr}}


/* ========================================================================== */
/* Politikon v6.3.1 — Interaction hotfix                                     */
/* ========================================================================== */
/* DŮLEŽITÉ: body má vlastní dekorativní ::after s height:55vh. Statusové
   pseudo-elementy proto MUSÍ explicitně resetovat inset/left/top/height. */
body.server-working::after,
body.state-syncing-v620::after {
  inset: auto 14px 14px auto !important;
  left: auto !important;
  top: auto !important;
  right: 14px !important;
  bottom: 14px !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: min(78vw, 220px) !important;
  display: block !important;
  padding: 6px 9px !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  pointer-events: none !important;
  box-sizing: border-box !important;
}
/* Když mutation a background sync krátce běží zároveň, zobraz jen jednu malou hlášku. */
body.server-working.state-syncing-v620::after { content: 'Ukládám a synchronizuji…' !important; }

/* Starý v3.42 blok vypínal všechna tlačítka v celé appce. Už ne. */
body.server-working #app button { pointer-events: auto !important; }
button.action-pending-v631,
.choice-btn.action-pending-v631 {
  pointer-events: none !important;
  opacity: .72 !important;
  cursor: progress !important;
  position: relative;
}
button.action-pending-v631::after,
.choice-btn.action-pending-v631::after {
  content: ' · ukládám';
  font-size: .72em;
  opacity: .82;
}

/* Top-level flash už není součást layoutu a nikdy nezvětší stránku / nepřekryje UI. */
.flash-toast-v631 {
  position: fixed !important;
  right: 16px !important;
  bottom: 48px !important;
  z-index: 2147483645 !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 8px !important;
  width: auto !important;
  max-width: min(420px, calc(100vw - 32px)) !important;
  max-height: 130px !important;
  overflow: auto !important;
  margin: 0 !important;
  padding: 9px 10px 9px 12px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(56,189,248,.38) !important;
  background: rgba(7,17,32,.97) !important;
  color: #dff7ff !important;
  box-shadow: 0 14px 36px rgba(0,0,0,.42) !important;
  backdrop-filter: blur(12px) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}
.flash-toast-v631.success { border-color: rgba(34,197,94,.45) !important; color:#bbf7d0 !important; }
.flash-toast-v631.error { border-color: rgba(239,68,68,.5) !important; color:#fecaca !important; }
.flash-toast-v631 > span { min-width:0; }
.flash-toast-v631 > button {
  width: 28px !important; height: 28px !important; min-width:28px !important;
  padding:0 !important; border-radius:9px !important; border:1px solid rgba(148,163,184,.22) !important;
  background:rgba(255,255,255,.05) !important; color:inherit !important; box-shadow:none !important;
  font-size:18px !important; line-height:1 !important; cursor:pointer !important;
}

/* Klikací denní/kabinetní rozhodnutí explicitně nad dekorativními vrstvami. */
.daily-command-v620, .daily-issues-v620, .daily-issue-v620, .v620-choice-grid,
.government-command-v620, .gov-docket-v620, .gov-docket-card-v620 {
  position: relative;
  z-index: 1;
}
.v620-choice-grid .btn { position:relative; z-index:2; pointer-events:auto; }

@media(max-width:680px){
  body.server-working::after, body.state-syncing-v620::after {
    inset:auto 9px calc(76px + env(safe-area-inset-bottom)) auto !important;
    right:9px !important; bottom:calc(76px + env(safe-area-inset-bottom)) !important;
    max-width:170px !important; font-size:9px !important; padding:5px 8px !important;
  }
  .flash-toast-v631 {
    right:10px !important; bottom:calc(92px + env(safe-area-inset-bottom)) !important;
    max-width:calc(100vw - 20px) !important; font-size:11px !important;
  }
}

/* ========================================================================== */
/* Politikon v6.3.2 — Daily Desk / reliable clicks / timers                  */
/* ========================================================================== */
.daily-command-v620 {
  isolation: isolate;
  position: relative !important;
  z-index: 20 !important;
}
.daily-issues-v620 { position:relative; z-index:30 !important; }
.daily-issue-v620 { position:relative; z-index:31 !important; overflow:hidden; }
.daily-issue-v620 .v620-choice-grid { position:relative; z-index:40 !important; }
.daily-issue-v620 .v620-choice-grid > button,
.daily-issue-v620 .v632-daily-choice {
  position:relative !important;
  z-index:50 !important;
  pointer-events:auto !important;
  touch-action:manipulation;
  cursor:pointer !important;
  user-select:none;
}
.daily-issue-v620 .v620-choice-grid > button:active { transform:translateY(1px); }
.daily-issue-v620.client-expired-v632 .v620-choice-grid { opacity:.45; }
.daily-issue-v620.expired,
.daily-issue-v620.client-expired-v632 { border-color:rgba(251,113,133,.32); }
.daily-issue-v620.severity-crisis { border-color:rgba(251,113,133,.42); box-shadow:inset 3px 0 0 rgba(251,113,133,.65); }
.daily-issue-v620.severity-important { border-color:rgba(250,204,21,.30); box-shadow:inset 3px 0 0 rgba(250,204,21,.48); }

.v632-daily-head { align-items:center; gap:12px; }
.v632-reset-clock {
  margin-left:auto; min-width:132px; padding:8px 11px; border:1px solid var(--line);
  border-radius:13px; background:rgba(0,0,0,.13); display:flex; flex-direction:column; align-items:flex-end;
}
.v632-reset-clock small { font-size:8px; letter-spacing:.08em; color:var(--muted); font-weight:900; }
.v632-reset-clock b { font-variant-numeric:tabular-nums; font-size:14px; }
.v632-issue-meta { display:flex; justify-content:space-between; align-items:center; gap:8px; }
.v632-issue-meta em {
  font-style:normal; font-size:8px; font-weight:950; letter-spacing:.08em; border:1px solid var(--line);
  border-radius:999px; padding:3px 6px; color:var(--muted); background:rgba(255,255,255,.025);
}
.severity-important .v632-issue-meta em { color:#fde68a; border-color:rgba(250,204,21,.30); }
.severity-crisis .v632-issue-meta em { color:#fda4af; border-color:rgba(251,113,133,.38); }
.v632-issue-timer {
  margin-top:9px; display:flex; justify-content:space-between; align-items:center; gap:8px;
  border:1px solid rgba(56,189,248,.18); border-radius:10px; padding:6px 8px; background:rgba(56,189,248,.035);
}
.v632-issue-timer small { color:var(--muted); font-size:9px; }
.v632-issue-timer strong { font-size:12px; font-variant-numeric:tabular-nums; color:#9ee9ff; }
.v632-issue-timer strong.is-urgent { color:#fde68a; }
.v632-issue-timer strong.is-critical { color:#fda4af; animation:v632TimerPulse 1s ease-in-out infinite alternate; }
@keyframes v632TimerPulse { from{opacity:1} to{opacity:.58} }
.v620-resolution.expired { border-color:rgba(251,113,133,.25); color:#fecaca; }

@media(min-width:1350px){
  .daily-issues-v620 { grid-template-columns:repeat(5,minmax(0,1fr)); }
  .daily-issue-v620>p { min-height:72px; }
}
@media(min-width:1050px) and (max-width:1349px){ .daily-issues-v620 { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:680px){
  .v632-daily-head { align-items:flex-start; }
  .v632-reset-clock { margin-left:0; align-items:flex-start; width:100%; }
}


/* ========================================================================== */
/* Politikon v6.4.0 — clean daily + Public Opinion Engine                    */
/* ========================================================================== */
.v640-clean-daily .v632-daily-head,.v640-clean-daily .daily-issues-v620{display:none!important}
.public-opinion-v640{margin:14px 0;border:1px solid rgba(56,189,248,.25);border-radius:18px;padding:16px;background:linear-gradient(135deg,rgba(14,165,233,.06),rgba(15,23,42,.28))}
.public-opinion-v640.bad{border-color:rgba(251,113,133,.30)}
.public-opinion-v640.good{border-color:rgba(52,211,153,.30)}
.opinion-kpis-v640{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:12px}
.opinion-kpis-v640 article{border:1px solid var(--line);border-radius:14px;padding:11px;background:rgba(255,255,255,.025);min-width:0}
.opinion-kpis-v640 b{display:block;font-size:18px}.opinion-kpis-v640 small{display:block;color:var(--muted);margin-top:3px;font-size:10px}
.opinion-kpis-v640 article.good b{color:#6ee7b7}.opinion-kpis-v640 article.bad b{color:#fda4af}
.opinion-reasons-v640{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}.opinion-reasons-v640 span{font-size:10px;padding:6px 8px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.025);color:var(--muted)}
.opinion-explain-v640{margin-top:12px;display:grid;gap:4px;padding:11px 12px;border-radius:13px;background:rgba(0,0,0,.14);border:1px solid rgba(255,255,255,.06)}.opinion-explain-v640 span{color:var(--muted);font-size:11px;line-height:1.5}
.v640-real-politics-links{margin-top:14px;border:1px solid var(--line);border-radius:16px;padding:14px;display:flex;gap:14px;align-items:center;justify-content:space-between;background:rgba(255,255,255,.022)}.v640-real-politics-links>div:first-child{display:grid;gap:4px}.v640-real-politics-links span{font-size:11px;color:var(--muted)}
@media(max-width:1000px){.opinion-kpis-v640{grid-template-columns:repeat(2,minmax(0,1fr))}.v640-real-politics-links{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.opinion-kpis-v640{grid-template-columns:1fr}}

/* Politikon v6.5.0 — Political Conflict Engine */
.v650-conflict-panel{display:grid;gap:18px}.v650-capital{min-width:150px;padding:14px 18px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.035);display:grid;gap:2px}.v650-capital b{font-size:26px}.v650-capital small,.v650-capital span{color:var(--muted);font-size:12px}.v650-how-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.v650-how-grid article,.v650-conflict-action,.v650-incoming-card{border:1px solid var(--line);border-radius:18px;padding:14px;background:rgba(255,255,255,.028)}.v650-how-grid article{display:grid;gap:5px}.v650-how-grid span{color:var(--muted);font-size:13px}.v650-selector-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:12px}.v650-selector-grid label{display:grid;gap:7px}.v650-selector-grid label>span{font-size:12px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.v650-opportunity-detail{border:1px solid rgba(68,205,255,.28);border-radius:18px;padding:16px;background:linear-gradient(135deg,rgba(68,205,255,.07),rgba(255,255,255,.02));display:grid;gap:9px}.v650-opportunity-detail header{display:flex;justify-content:space-between;gap:10px;align-items:center}.v650-opportunity-detail p{margin:0;color:var(--muted)}.v650-opportunity-detail>div{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.v650-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.v650-conflict-action{display:flex;flex-direction:column;gap:9px}.v650-conflict-action header{display:flex;justify-content:space-between;gap:8px}.v650-conflict-action p{margin:0;color:var(--muted);font-size:13px;min-height:54px}.v650-conflict-action .btn{margin-top:auto}.v650-incoming-wrap{display:grid;gap:10px}.v650-incoming-card{border-color:rgba(255,184,85,.35)}.v650-incoming-card header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.v650-incoming-card h3{margin:4px 0 0}.v650-evidence-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.v650-evidence-row span{display:grid;padding:10px;border:1px solid var(--line);border-radius:13px}.v650-evidence-row small{color:var(--muted)}.v650-defense-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.v650-defense-grid .btn{height:auto;min-height:74px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left}.v650-defense-grid small{white-space:normal;color:var(--muted);margin-top:4px}.v650-history ul{display:grid;gap:8px;padding-left:0;list-style:none}.v650-history li{padding:10px 12px;border:1px solid var(--line);border-radius:12px}.v650-history li small{display:block;color:var(--muted);margin-top:4px}.v650-history li.bad{border-color:rgba(255,100,120,.35)}
@media(max-width:1050px){.v650-action-grid,.v650-defense-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v650-how-grid{grid-template-columns:1fr}.v650-selector-grid{grid-template-columns:1fr}}@media(max-width:650px){.v650-action-grid,.v650-defense-grid,.v650-evidence-row{grid-template-columns:1fr}.v650-opportunity-detail header,.v650-incoming-card header{display:grid}}

/* Politikon v6.6.0 — Political War Room */
.v660-war-room{display:grid;gap:20px}.v660-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:18px;border:1px solid rgba(68,205,255,.25);border-radius:22px;background:linear-gradient(135deg,rgba(68,205,255,.08),rgba(255,255,255,.025))}.v660-hero h2{margin:4px 0 6px}.v660-hero p{margin:0;color:var(--muted);max-width:760px}.v660-hero-kpis{display:grid;grid-template-columns:repeat(3,minmax(115px,1fr));gap:8px;min-width:390px}.v660-hero-kpis article{border:1px solid var(--line);border-radius:15px;padding:11px 12px;background:rgba(4,14,29,.45);display:grid;gap:2px}.v660-hero-kpis b{font-size:22px}.v660-hero-kpis small,.v660-hero-kpis span{font-size:11px;color:var(--muted)}
.v660-tabs-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.v660-tabs-grid>section{display:grid;gap:9px}.v660-active-card{border:1px solid var(--line);border-radius:20px;padding:15px;background:rgba(255,255,255,.026);display:grid;gap:12px}.v660-active-card.incoming{border-color:rgba(255,176,73,.34);background:linear-gradient(135deg,rgba(255,158,58,.055),rgba(255,255,255,.018))}.v660-active-card.outgoing{border-color:rgba(68,205,255,.30)}.v660-active-card header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.v660-active-card h3{margin:3px 0 0}.v660-active-card p{margin:0;color:var(--muted)}.v660-battle-meter{height:8px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}.v660-battle-meter span{display:block;height:100%;width:var(--v);max-width:100%;background:linear-gradient(90deg,#26bfff,#62e8c3);border-radius:999px}.v660-scoreboard{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px}.v660-scoreboard>div{border:1px solid var(--line);border-radius:14px;padding:9px 12px;display:grid}.v660-scoreboard>div:last-child{text-align:right}.v660-scoreboard>b{}.v660-scoreboard>span{font-weight:900;color:var(--muted)}.v660-scoreboard b{font-size:22px}.v660-scoreboard small{color:var(--muted)}
.v660-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.v660-metrics.compact{grid-template-columns:repeat(5,minmax(0,1fr))}.v660-metrics>span{border:1px solid var(--line);border-radius:13px;padding:9px 10px;display:grid;gap:2px;background:rgba(255,255,255,.02)}.v660-metrics>span.bad{border-color:rgba(255,98,124,.35)}.v660-metrics b{font-size:15px}.v660-metrics small{font-size:10px;color:var(--muted)}
.v660-timeline{display:grid;gap:7px;padding:3px 0}.v660-timeline-row{display:grid;grid-template-columns:9px 1fr;gap:9px;align-items:start}.v660-timeline-row>span{width:8px;height:8px;border-radius:50%;background:var(--muted);margin-top:5px}.v660-timeline-row.attacker>span{background:#42cfff}.v660-timeline-row.defender>span{background:#ffc45b}.v660-timeline-row.public>span{background:#73e6a9}.v660-timeline-row div{display:grid}.v660-timeline-row small{color:var(--muted);line-height:1.35}.v660-defense-grid,.v660-followup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v660-defense-grid .btn,.v660-followup-grid .btn{height:auto;min-height:74px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;white-space:normal}.v660-defense-grid small,.v660-followup-grid small{white-space:normal;color:var(--muted);margin-top:4px}.v660-waiting{border:1px dashed rgba(68,205,255,.25);border-radius:14px;padding:10px 12px;display:grid;grid-template-columns:auto 1fr;gap:2px 9px;align-items:center}.v660-waiting small{grid-column:2;color:var(--muted)}.spinner-dot{width:9px;height:9px;border-radius:50%;background:#42cfff;box-shadow:0 0 0 0 rgba(66,207,255,.35);animation:v660pulse 1.5s infinite}.v660-empty{min-height:110px}
.v660-launch-panel{border:1px solid rgba(68,205,255,.20);border-radius:21px;padding:16px;background:rgba(5,16,31,.40);display:grid;gap:15px}.v660-selector-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:12px}.v660-selector-grid label,.v660-subsection label{display:grid;gap:6px}.v660-selector-grid label>span,.v660-subsection label>span{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:850}.v660-opportunity-box{border:1px solid var(--line);border-radius:18px;padding:15px;display:grid;gap:14px;background:linear-gradient(135deg,rgba(39,172,255,.055),rgba(255,255,255,.015))}.v660-opportunity-head{display:flex;justify-content:space-between;gap:16px}.v660-opportunity-head h3{margin:4px 0}.v660-opportunity-head p{margin:0;color:var(--muted);max-width:780px}.v660-evidence-orb{width:92px;min-width:92px;height:78px;border:1px solid var(--line);border-radius:17px;display:grid;place-content:center;text-align:center;background:rgba(255,255,255,.025)}.v660-evidence-orb.good{border-color:rgba(70,220,150,.35)}.v660-evidence-orb.warn{border-color:rgba(255,190,72,.38)}.v660-evidence-orb b{font-size:26px;line-height:1}.v660-evidence-orb small{color:var(--muted);font-size:10px;margin-top:4px}.v660-subsection{display:grid;gap:9px}.v660-research-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.v660-research-btn{height:auto;min-height:72px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left}.v660-research-btn small{white-space:normal;color:var(--muted);margin-top:4px}.v660-no-opportunity{padding:20px;text-align:center}.v660-no-opportunity p{color:var(--muted)}
.v660-tactic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.v660-tactic-card{border:1px solid var(--line);border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:8px;background:rgba(255,255,255,.022)}.v660-tactic-card header{display:flex;justify-content:space-between;gap:7px}.v660-tactic-card p{margin:0;color:var(--muted);font-size:12px;min-height:52px}.v660-tactic-card .btn{margin-top:auto}
.v660-salience{border:1px solid rgba(173,126,255,.22);border-radius:18px;padding:14px;background:rgba(114,72,196,.045)}.v660-salience-list{display:grid;gap:7px}.v660-salience-list>div{display:grid;grid-template-columns:180px 1fr 38px;gap:10px;align-items:center;font-size:12px}.v660-salience-list>div>b{text-align:right}.v660-salience-bar{height:7px;background:rgba(255,255,255,.06);border-radius:999px;overflow:hidden}.v660-salience-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#9d78ff,#42cfff)}.v660-verdict-history ul{list-style:none;padding:0;display:grid;gap:7px}.v660-verdict-history li{border:1px solid var(--line);border-radius:12px;padding:9px 11px;display:flex;justify-content:space-between;gap:12px}.v660-verdict-history li div{display:grid}.v660-verdict-history li span{color:var(--muted);font-size:11px}.v660-verdict-history li.good{border-color:rgba(70,220,150,.28)}.v660-verdict-history li.bad{border-color:rgba(255,98,124,.30)}.v660-verdict-history li.warn{border-color:rgba(255,190,72,.28)}
@keyframes v660pulse{0%{box-shadow:0 0 0 0 rgba(66,207,255,.32)}70%{box-shadow:0 0 0 8px rgba(66,207,255,0)}100%{box-shadow:0 0 0 0 rgba(66,207,255,0)}}
@media(max-width:1100px){.v660-hero{display:grid}.v660-hero-kpis{min-width:0}.v660-tabs-grid{grid-template-columns:1fr}.v660-research-grid,.v660-tactic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v660-metrics.compact{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.v660-hero-kpis{grid-template-columns:1fr}.v660-selector-grid{grid-template-columns:1fr}.v660-research-grid,.v660-tactic-grid,.v660-defense-grid,.v660-followup-grid,.v660-metrics,.v660-metrics.compact{grid-template-columns:1fr}.v660-opportunity-head{display:grid}.v660-evidence-orb{width:100%;height:auto;padding:10px}.v660-salience-list>div{grid-template-columns:110px 1fr 32px}.v660-active-card header{display:grid}}

/* ========================================================================== */
/* Politikon v6.7.0 — normalized prediction + living AI field                */
/* ========================================================================== */
.v670-prediction .section-head{align-items:flex-start}.v670-prediction-badges{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.v670-prediction-bars{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.v670-prediction-row{display:grid;grid-template-columns:minmax(82px,.8fr) minmax(145px,1.2fr) auto;align-items:center}.v670-poll-number{display:grid;gap:1px;min-width:0}.v670-poll-number b{font-size:1.08rem;color:#eaf2ff}.v670-poll-number small{font-size:.72rem!important;color:var(--muted)!important;white-space:normal}.v670-poll-note{margin-top:12px;padding:10px 12px;border:1px dashed rgba(68,205,255,.28);border-radius:13px;background:rgba(68,205,255,.055);font-size:.78rem;color:var(--muted)}.v670-poll-note b{color:#cdefff}
.v670-living-field{margin-bottom:14px}.v670-ai-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:9px}.v670-ai-party{border:1px solid var(--line);border-radius:14px;padding:11px;background:rgba(4,14,29,.36);display:grid;gap:7px}.v670-ai-party header{display:flex;align-items:center;justify-content:space-between;gap:8px}.v670-ai-party header strong{white-space:nowrap}.v670-ai-party>div{display:flex;gap:9px;flex-wrap:wrap;font-size:.72rem;color:var(--muted)}.v670-ai-party>small{font-size:.72rem;color:var(--muted)}
@media(max-width:700px){.v670-prediction-bars{grid-template-columns:1fr}.v670-prediction-row{grid-template-columns:1fr auto;gap:5px 10px}.v670-poll-number{grid-column:1/2}.v670-prediction-row>.prediction-trend{grid-column:2;grid-row:1/3}.v670-prediction-badges{justify-content:flex-start}}
.v670-random-impact{display:block;margin-top:5px;font-size:.68rem;color:#93c5fd;font-weight:750}.district-action-btn .v670-random-impact{grid-column:1/-1}

/* ========================================================================== */
/* Politikon v6.8.0 — long-run governance + one-click interaction             */
/* ========================================================================== */
.v680-action-syncing{position:relative;pointer-events:none!important;opacity:.72!important;cursor:wait!important}
.v680-action-syncing::after{content:'✓ hotovo · synchronizuji';position:absolute;inset:auto 8px 5px 8px;padding:3px 6px;border-radius:8px;background:rgba(3,12,25,.92);font-size:.62rem;font-weight:850;letter-spacing:.02em;text-align:center;color:var(--text);border:1px solid var(--line)}
body.state-syncing-v680 #app{cursor:progress}
.v680-accountability-strip{display:grid;grid-template-columns:180px 180px minmax(0,1fr);gap:9px;margin:0 0 12px;padding:12px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}
.v680-accountability-strip.warn{border-color:rgba(255,190,72,.28)}.v680-accountability-strip.bad{border-color:rgba(255,98,124,.33)}
.v680-accountability-card{border:1px solid var(--line);border-radius:13px;padding:9px 10px;display:grid;gap:1px;background:rgba(3,12,25,.35)}
.v680-accountability-card>b{font-size:1.15rem}.v680-accountability-card>small,.v680-accountability-card>span{color:var(--muted);font-size:.7rem}.v680-accountability-card.bad{border-color:rgba(255,98,124,.35)}.v680-accountability-card.warn{border-color:rgba(255,190,72,.30)}
.v680-accountability-copy{display:grid;align-content:center;gap:4px}.v680-accountability-copy span{color:var(--muted);font-size:.75rem;line-height:1.45}
.v680-candidate-origin{margin:12px 0;padding:10px 12px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.025);display:grid;gap:3px}.v680-candidate-origin span,.v680-candidate-origin small{color:var(--muted);font-size:.72rem}
.v680-law-duty{margin-top:12px;border:1px solid var(--line);border-radius:15px;padding:12px;background:rgba(3,12,25,.38);display:grid;gap:9px}.v680-law-duty.pending{border-color:rgba(255,190,72,.34)}.v680-law-duty.missed{border-color:rgba(255,98,124,.36)}.v680-law-duty.answered{border-color:rgba(70,220,150,.28)}
.v680-law-duty>header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.v680-law-duty>header>div{display:grid;gap:2px}.v680-law-duty>header small{color:var(--muted);font-size:.65rem;letter-spacing:.05em}.v680-law-duty>p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.45}
.v680-law-duty-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.v680-law-duty-actions .btn{height:auto;min-height:62px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;white-space:normal}.v680-law-duty-actions small{white-space:normal;color:var(--muted);margin-top:3px}
.v680-government-accountability{margin:13px 0;border:1px solid var(--line);border-radius:17px;padding:13px;background:rgba(255,255,255,.02)}.v680-government-accountability.warn{border-color:rgba(255,190,72,.28)}.v680-government-accountability.bad{border-color:rgba(255,98,124,.34)}
.v680-government-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0}.v680-government-deadlines{display:grid;gap:6px;margin-top:8px}.v680-government-deadlines>span{border:1px solid var(--line);border-radius:12px;padding:8px 10px;display:grid;gap:2px}.v680-government-deadlines small{color:var(--muted);font-size:.7rem}
@media(max-width:800px){.v680-accountability-strip{grid-template-columns:1fr}.v680-law-duty-actions,.v680-government-kpis{grid-template-columns:1fr}.v680-law-duty>header{display:grid}}


/* ========================================================================== */
/* Politikon v6.9.0 — Daily Governance Loop                                   */
/* ========================================================================== */
.v690-daily-loop{display:grid;gap:14px}.v690-hero{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:16px;align-items:stretch;padding:18px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,rgba(66,207,255,.07),rgba(255,255,255,.018))}.v690-hero h2{margin:4px 0 7px}.v690-hero p{margin:0;color:var(--muted);line-height:1.5}.v690-hero-pills{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.v690-score{border:1px solid var(--line);border-radius:18px;padding:15px;display:grid;align-content:center;text-align:center;background:rgba(3,12,25,.4)}.v690-score strong{font-size:2.55rem;line-height:1}.v690-score>small{color:var(--muted)}.v690-score>b{margin-top:8px}.v690-score.good{border-color:rgba(70,220,150,.32)}.v690-score.warn{border-color:rgba(255,190,72,.34)}.v690-score.bad{border-color:rgba(255,98,124,.38)}.v690-scorebar{height:7px;border-radius:999px;background:rgba(255,255,255,.07);overflow:hidden;margin-top:10px}.v690-scorebar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#42cfff,#6ee7b7)}
.v690-return-briefing{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:14px;border:1px solid rgba(255,190,72,.35);border-radius:18px;padding:15px;background:rgba(255,190,72,.055)}.v690-return-briefing h3{margin:3px 0 5px}.v690-return-briefing p{margin:0;color:var(--muted)}.v690-return-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.v690-return-numbers span,.v690-kpis article{border:1px solid var(--line);border-radius:13px;padding:10px;background:rgba(3,12,25,.35);display:grid;gap:2px}.v690-return-numbers b{font-size:1.05rem}.v690-return-numbers small,.v690-kpis small{font-size:.68rem;color:var(--muted)}
.v690-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.v690-kpis article b{font-size:1.12rem}.v690-kpis article.warn{border-color:rgba(255,190,72,.32)}
.v690-priorities{border:1px solid var(--line);border-radius:18px;padding:14px;background:rgba(255,255,255,.018)}.v690-priority-grid{display:grid;gap:8px}.v690-priority-card{width:100%;border:1px solid var(--line);border-radius:15px;background:rgba(3,12,25,.34);padding:11px 12px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;text-align:left;align-items:center;color:var(--text);cursor:pointer}.v690-priority-card:hover{transform:translateY(-1px);border-color:rgba(66,207,255,.38)}.v690-priority-card.urgent{border-color:rgba(255,98,124,.36);background:rgba(255,98,124,.045)}.v690-priority-card.warn{border-color:rgba(255,190,72,.32)}.v690-priority-index{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;border:1px solid var(--line);font-weight:900}.v690-priority-card b{font-size:.92rem}.v690-priority-card p{margin:2px 0;color:var(--muted);font-size:.75rem;line-height:1.4}.v690-priority-card small{color:#93c5fd;font-size:.68rem}.v690-open{font-size:.72rem;color:var(--muted);white-space:nowrap}.v690-empty-note{padding:13px;border:1px dashed var(--line);border-radius:13px;color:var(--muted);font-size:.75rem}
.v690-routine{border:1px solid var(--line);border-radius:16px;padding:12px}.v690-routine>summary{cursor:pointer;font-weight:850}.v690-routine-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:10px}.v690-routine-grid article{border:1px solid var(--line);border-radius:13px;padding:9px;display:grid;gap:6px;background:rgba(3,12,25,.3)}.v690-routine-grid article.done{border-color:rgba(70,220,150,.28)}.v690-routine-grid header{display:flex;justify-content:space-between;gap:7px}.v690-routine-grid small{color:var(--muted);font-size:.67rem;line-height:1.35}
.v690-bottom-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:10px}.v690-bottom-grid>section{border:1px solid var(--line);border-radius:17px;padding:13px;background:rgba(255,255,255,.016)}.v690-bottom-grid h3{margin:3px 0 8px}.v690-history{display:grid;gap:6px}.v690-history>div{display:grid;grid-template-columns:24px 1fr;gap:7px;align-items:center;border:1px solid var(--line);border-radius:11px;padding:8px 9px}.v690-history>div.active{border-color:rgba(70,220,150,.20)}.v690-history>div.missed{border-color:rgba(255,98,124,.25)}.v690-history>div div{display:grid}.v690-history small{color:var(--muted);font-size:.68rem}.v690-offline-rules p{color:var(--muted);font-size:.76rem;line-height:1.5}
@media(max-width:1000px){.v690-hero,.v690-return-briefing,.v690-bottom-grid{grid-template-columns:1fr}.v690-kpis{grid-template-columns:repeat(3,1fr)}.v690-routine-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.v690-kpis,.v690-return-numbers,.v690-routine-grid{grid-template-columns:1fr}.v690-priority-card{grid-template-columns:30px 1fr}.v690-open{grid-column:2}.v690-score{min-height:130px}}

/* v7.0.1 — slovenská mapa + multiplayer country badges */
.sk-photo-map.badge-map img{background:#05080c;object-fit:contain}
.sk-photo-map .map-badge{box-shadow:0 0 0 2px rgba(255,255,255,.16),0 8px 22px rgba(2,6,23,.42)}
.multiplayer-panel .leader-row .tag{margin-left:6px}
.multiplayer-panel .chat-card .section-head{margin-bottom:10px}
.multiplayer-panel .chat-msg small{display:block}
@media(max-width:760px){.sk-photo-map{min-height:220px}.multiplayer-panel .section-head>.quick-actions{width:100%;display:flex;flex-wrap:wrap}}


/* v7.1.0 */
.v710-location-suggestion{display:flex;gap:.55rem;align-items:center;justify-content:space-between;margin:.45rem 0 .15rem;padding:.55rem .65rem;border:1px solid rgba(56,189,248,.22);border-radius:12px;background:rgba(8,47,73,.28);font-size:.78rem}.v710-location-suggestion span{display:flex;flex-direction:column;gap:.12rem;min-width:0}.v710-location-suggestion small{color:var(--muted);white-space:normal}
.v710-international{display:flex;flex-direction:column;gap:1rem}.v710-intl-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:start;padding:1rem;border:1px solid rgba(56,189,248,.25);border-radius:18px;background:linear-gradient(135deg,rgba(14,165,233,.10),rgba(30,41,59,.18))}.v710-intl-hero h2{margin:.18rem 0 .35rem}.v710-intl-hero p{margin:0;color:var(--muted);max-width:850px}
.v710-intl-kpis{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:.55rem}.v710-intl-kpis article{padding:.7rem .8rem;border:1px solid rgba(148,163,184,.18);border-radius:14px;background:rgba(15,23,42,.48);display:flex;flex-direction:column}.v710-intl-kpis b{font-size:1.05rem}.v710-intl-kpis small,.v710-intl-kpis span{color:var(--muted);font-size:.72rem}
.v710-intl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(285px,1fr));gap:.75rem}.v710-intl-partner,.v710-intl-offer,.v710-intl-candidate{padding:.85rem;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:rgba(15,23,42,.52)}.v710-intl-partner header,.v710-intl-offer header,.v710-intl-candidate header{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem}.v710-intl-partner header>div,.v710-intl-offer header>div{display:flex;flex-direction:column;gap:.2rem}
.v710-intl-election{display:flex;justify-content:space-between;gap:.5rem;margin:.65rem 0;padding:.55rem .65rem;border-radius:11px;background:rgba(30,41,59,.62);font-size:.78rem}.v710-intl-actions{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.v710-intl-actions .btn{min-height:66px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left}.v710-intl-actions small{font-size:.68rem;opacity:.78}
.v710-intl-candidate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.65rem;margin-top:.75rem}.v710-intl-candidate p{margin:.45rem 0}.v710-intl-candidate>div{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.72rem;color:var(--muted);margin-bottom:.55rem}.v710-intl-history{display:flex;flex-direction:column;gap:.45rem;padding:0;list-style:none}.v710-intl-history li{display:grid;grid-template-columns:minmax(170px,.35fr) 1fr auto;gap:.65rem;padding:.65rem;border-bottom:1px solid rgba(148,163,184,.14)}.v710-intl-history li.bad{border-left:3px solid #ef4444}.v710-intl-history small{color:var(--muted)}
@media(max-width:900px){.v710-intl-hero{grid-template-columns:1fr}.v710-intl-kpis{grid-template-columns:repeat(3,1fr)}.v710-intl-actions{grid-template-columns:1fr}.v710-intl-history li{grid-template-columns:1fr}.v710-location-suggestion{align-items:flex-start}}@media(max-width:560px){.v710-intl-kpis{grid-template-columns:1fr 1fr}.v710-intl-kpis article:last-child{grid-column:1/-1}}

/* ========================================================================== */
/* Politikon v7.1.1 — UI wiring repair                                        */
/* ========================================================================== */
.v711-build-warning{margin:0 0 10px;padding:10px 12px;border:1px solid rgba(251,191,36,.42);border-radius:13px;background:rgba(120,53,15,.18);display:grid;gap:3px}.v711-build-warning span{color:var(--muted);font-size:.72rem}.v711-location-suggestion strong{color:#dbeafe;font-size:.78rem}.v711-intl-shortcut{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.v711-intl-shortcut>div{display:grid;gap:3px}.v711-intl-shortcut span{color:var(--muted);font-size:.75rem}.v711-direct-pending{opacity:.72!important;pointer-events:none!important}.v660-defense-grid button,.v650-defense-grid button{pointer-events:auto!important;position:relative!important;z-index:5}.v710-location-suggestion{position:relative;z-index:3}.micro-card select{position:relative;z-index:2}
@media(max-width:720px){.v711-intl-shortcut{align-items:stretch;flex-direction:column}.v711-intl-shortcut .btn{width:100%}}


/* v7.1.2 DIRECT UI */
.v712-build-tag{color:#5eead4;font-weight:800;letter-spacing:.04em}
.v712-location-direct{display:grid;gap:8px;margin-bottom:8px;padding:10px;border:1px solid rgba(56,189,248,.25);border-radius:14px;background:rgba(7,20,38,.62)}
.v712-location-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.v712-location-head span{display:grid;gap:2px;min-width:0}.v712-location-head b{font-size:.69rem;color:#67e8f9;letter-spacing:.06em;text-transform:uppercase}.v712-location-head strong{font-size:.9rem;white-space:normal}.v712-location-direct>small{color:#8fa8c5;line-height:1.35}.v712-pending{opacity:.65;pointer-events:none}
@media(max-width:720px){.v712-location-head{align-items:flex-start}.v712-location-head .btn{padding:7px 9px}.v712-location-direct{padding:8px}}

/* v7.1.3 — interaction + partnership rules */
.v713-pending{opacity:.62!important;pointer-events:none!important;cursor:wait!important}
.v713-response-title{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-top:4px}.v713-response-title span{font-size:.72rem;color:var(--muted)}
.v713-defense-btn{pointer-events:auto!important;position:relative!important;z-index:8!important;opacity:1!important}
.v713-counter-strip{margin:14px 0;padding:15px;border:1px solid rgba(251,191,36,.34);border-radius:18px;background:linear-gradient(135deg,rgba(120,53,15,.14),rgba(15,23,42,.52));display:grid;grid-template-columns:minmax(260px,.85fr) 1.15fr;gap:14px}.v713-counter-strip>div:first-child{display:grid;gap:5px}.v713-counter-strip p{margin:0;color:var(--muted)}.v713-counter-list{display:grid;gap:8px}.v713-counter-list .btn{height:auto;text-align:left;display:grid;justify-items:start;white-space:normal}.v713-counter-list small{white-space:normal;color:var(--muted)}
.v713-partnership-summary{display:flex;flex-wrap:wrap;gap:7px 14px;font-size:.76rem;color:var(--muted)}.v713-partnership-summary b{color:var(--text)}
.v713-intl-conditions{display:grid;gap:5px;margin:9px 0}.v713-intl-conditions span{font-size:.72rem;padding:5px 8px;border-radius:9px;border:1px solid var(--line)}.v713-intl-conditions .ok{color:#86efac;background:rgba(34,197,94,.06)}.v713-intl-conditions .bad{color:#fda4af;background:rgba(244,63,94,.06);border-color:rgba(244,63,94,.22)}
.v710-intl-candidate.blocked{opacity:.76}.v713-strength{display:grid;gap:5px}.v713-strength>span{font-size:.78rem;color:var(--muted)}.v713-strength>div{height:7px;border-radius:999px;background:rgba(255,255,255,.07);overflow:hidden}.v713-strength i{display:block;height:100%;background:linear-gradient(90deg,#38bdf8,#34d399);border-radius:999px}
@media(max-width:760px){.v713-counter-strip{grid-template-columns:1fr}.v713-response-title{align-items:flex-start;flex-direction:column}}


/* ========================================================================== */
/* Politikon v7.1.4 — HARD INTERACTION FIX                                    */
/* Never freeze the whole SPA because one request is running. Only the actual */
/* control being submitted is locked.                                         */
/* ========================================================================== */
body.server-working #app button { pointer-events:auto !important; }
body.server-working #app button.action-pending-v631,
body.server-working #app button.v714-busy,
button.v714-busy { pointer-events:none !important; opacity:.68 !important; cursor:wait !important; }
[data-v714-reroll],[data-v714-defense],[data-v714-intl-propose],[data-v714-intl-respond],[data-v714-intl-action],[data-v714-intl-end]{pointer-events:auto!important;position:relative!important;z-index:20!important}
.v714-toast-host{position:fixed;right:18px;bottom:18px;z-index:2147483647;display:grid;gap:8px;max-width:min(420px,calc(100vw - 36px));pointer-events:none}
.v714-toast{pointer-events:auto;padding:10px 13px;border-radius:13px;border:1px solid rgba(56,189,248,.35);background:rgba(6,15,30,.97);box-shadow:0 18px 50px rgba(0,0,0,.38);font-size:.82rem;line-height:1.4;color:#eaf6ff}.v714-toast.ok{border-color:rgba(52,211,153,.48)}.v714-toast.bad{border-color:rgba(248,113,113,.55)}
.v714-build-badge{position:fixed;left:8px;bottom:8px;z-index:2147483000;padding:4px 7px;border-radius:7px;background:rgba(4,12,25,.9);border:1px solid rgba(56,189,248,.28);color:#7dd3fc;font:800 10px/1.1 system-ui;pointer-events:none;opacity:.8}


/* Politikon v7.1.5 — negotiated partnerships + final UI cleanup */
.v715-negotiation-card{border:1px solid rgba(56,189,248,.25);background:rgba(7,18,34,.7);padding:16px;border-radius:18px}.v715-negotiation-card.outgoing{border-style:dashed}.v715-offer-terms{display:grid;gap:7px;margin:12px 0;padding:0;list-style:none}.v715-offer-terms li{padding:8px 10px;border-radius:10px;background:rgba(15,34,55,.65);font-size:.9rem}.v715-offer-message{margin:10px 0;padding:10px 12px;border-left:3px solid rgba(56,189,248,.6);background:rgba(15,34,55,.45);font-size:.9rem}.v715-conditions{display:grid;gap:5px;margin:10px 0}.v715-conditions span{font-size:.78rem;padding:5px 7px;border-radius:8px}.v715-conditions .ok{color:#86efac;background:rgba(34,197,94,.08)}.v715-conditions .bad{color:#fca5a5;background:rgba(239,68,68,.08)}.v715-expiry{display:block;margin-top:10px;color:#94a3b8}.v715-active-contract{margin:12px 0;padding:10px;border-radius:12px;background:rgba(15,34,55,.5)}
.v715-modal-backdrop{position:fixed;inset:0;z-index:100000;background:rgba(2,6,23,.78);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px}.v715-modal{width:min(720px,100%);max-height:min(88vh,900px);overflow:auto;background:#071426;border:1px solid rgba(56,189,248,.35);border-radius:22px;box-shadow:0 28px 80px rgba(0,0,0,.55);padding:22px}.v715-modal header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.v715-modal header h2{margin:2px 0 4px}.v715-modal-close{border:0;background:transparent;color:#cbd5e1;font-size:28px;cursor:pointer}.v715-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v715-term-toggle{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid rgba(148,163,184,.18);border-radius:13px;background:rgba(15,34,55,.45)}.v715-term-toggle input{margin-top:3px}.v715-term-toggle b,.v715-term-toggle small{display:block}.v715-term-toggle small{color:#94a3b8;margin-top:4px}.v715-field{display:grid;gap:6px}.v715-field label{font-size:.82rem;color:#cbd5e1}.v715-field select,.v715-field textarea{width:100%;background:#08111f;color:#e5edf7;border:1px solid #29425e;border-radius:11px;padding:10px}.v715-field textarea{min-height:86px;resize:vertical}.v715-modal-note{margin:12px 0;padding:10px 12px;border-radius:12px;background:rgba(14,116,144,.12);color:#bae6fd}.v715-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.v715-build-badge{position:fixed;left:10px;bottom:10px;z-index:99999;padding:5px 8px;border-radius:999px;background:#082f49;color:#bae6fd;border:1px solid #0ea5e9;font:700 11px/1 system-ui;pointer-events:none}
@media(max-width:700px){.v715-form-grid{grid-template-columns:1fr}.v715-modal{padding:16px;border-radius:16px}.v715-modal-actions{flex-direction:column}.v715-modal-actions .btn{width:100%}}


/* Politikon v7.1.6 — scandal severity + partnership impact */
.v716-build-badge{position:fixed;left:10px;bottom:10px;z-index:99999;padding:5px 8px;border-radius:999px;background:#103253;color:#dbeafe;border:1px solid #38bdf8;font:700 11px/1 system-ui;pointer-events:none}
.v716-scandal-metrics{display:grid;grid-template-columns:repeat(4,minmax(145px,1fr));gap:10px;margin:14px 0 10px}.v716-scandal-metric{display:grid;gap:5px;padding:12px;border:1px solid rgba(148,163,184,.18);border-radius:14px;background:rgba(15,23,42,.62)}.v716-scandal-metric b{font-size:1.08rem}.v716-scandal-metric small{color:#94a3b8}.v716-scandal-metric i{height:5px;border-radius:999px;background:rgba(148,163,184,.15);overflow:hidden}.v716-scandal-metric u{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#38bdf8,#818cf8);text-decoration:none}.v716-scandal-metric.severity-low{border-color:rgba(34,197,94,.28)}.v716-scandal-metric.severity-medium{border-color:rgba(234,179,8,.34)}.v716-scandal-metric.severity-high{border-color:rgba(249,115,22,.40)}.v716-scandal-metric.severity-critical{border-color:rgba(239,68,68,.52);box-shadow:inset 0 0 24px rgba(239,68,68,.06)}.v716-scandal-metric.severity-low u{background:linear-gradient(90deg,#22c55e,#4ade80)}.v716-scandal-metric.severity-medium u{background:linear-gradient(90deg,#eab308,#facc15)}.v716-scandal-metric.severity-high u{background:linear-gradient(90deg,#f97316,#fb923c)}.v716-scandal-metric.severity-critical u{background:linear-gradient(90deg,#ef4444,#f87171)}
.v716-scandal-impact{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:9px;margin:10px 0 12px;padding:11px;border:1px solid rgba(56,189,248,.16);border-radius:14px;background:rgba(8,20,44,.48)}.v716-scandal-impact>div{display:grid;gap:3px}.v716-scandal-impact small{color:#94a3b8}.v716-scandal-impact b{color:#dbeafe}.v716-intl-impact{display:block;margin-top:6px;color:#86efac;font-size:.72rem;font-style:normal;line-height:1.35}.v710-intl-actions .btn:disabled .v716-intl-impact{color:#94a3b8}
@media(max-width:850px){.v716-scandal-metrics{grid-template-columns:1fr 1fr}.v716-scandal-impact{grid-template-columns:1fr}}@media(max-width:520px){.v716-scandal-metrics{grid-template-columns:1fr}}

/* v7.1.7 saturday election night */
.v717-election-rhythm{border-color:rgba(34,197,94,.35)}


/* ===== v7.2.0 CENTRÁLA ===== */
.v720-central{overflow:hidden;position:relative}.v720-central:before{content:"";position:absolute;inset:-40% auto auto 55%;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(99,102,241,.18),transparent 68%);pointer-events:none}.v720-central-hero{display:flex;justify-content:space-between;gap:28px;align-items:flex-start;position:relative}.v720-central-hero h2{font-size:32px;margin:6px 0}.v720-central-hero p{max-width:720px}.v720-central-kpis{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:10px;min-width:390px}.v720-central-kpis article{padding:14px;border:1px solid var(--border);border-radius:16px;background:rgba(255,255,255,.03)}.v720-central-kpis b{display:block;font-size:18px}.v720-central-kpis small{color:var(--muted)}.v720-xp{margin-top:18px}.v720-xp>div{display:flex;justify-content:space-between;font-size:13px}.v720-xp>i{display:block;height:10px;margin-top:8px;background:rgba(255,255,255,.07);border-radius:999px;overflow:hidden}.v720-xp>i>u{display:block;height:100%;background:linear-gradient(90deg,#6366f1,#22c55e);border-radius:999px}.v720-rule{margin-top:14px;padding:11px 14px;border-radius:12px;background:rgba(34,197,94,.07);border:1px solid rgba(34,197,94,.2);font-size:13px}.v720-mission-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.v720-mission-card{display:flex;flex-direction:column;gap:11px;padding:18px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));min-height:330px}.v720-mission-card header{display:flex;justify-content:space-between;align-items:center}.v720-mission-card header span{font-size:10px;font-weight:900;letter-spacing:.11em;color:var(--muted)}.v720-mission-card header b{font-size:22px}.v720-mission-card h3{font-size:18px;margin:2px 0}.v720-mission-card p{font-size:13px;color:var(--muted);min-height:52px}.v720-mission-card .btn{margin-top:auto}.v720-place{padding:9px 10px;border-radius:12px;background:rgba(99,102,241,.08);font-size:12px;font-weight:700}.v720-offer-rewards{display:grid;gap:7px}.v720-offer-rewards span{display:flex;justify-content:space-between;gap:10px;font-size:12px}.v720-offer-rewards small{color:var(--muted)}.v720-offer-rewards b{font-size:12px}.v720-active-mission{border-color:rgba(99,102,241,.35)}.v720-active-grid{display:grid;grid-template-columns:220px 1fr;gap:18px;margin:18px 0}.v720-countdown{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:18px;border-radius:18px;background:rgba(99,102,241,.09);border:1px solid rgba(99,102,241,.25)}.v720-countdown>b{font-size:42px;letter-spacing:.04em}.v720-countdown small,.v720-countdown span{color:var(--muted)}.v720-reward-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.v720-reward-preview span{padding:14px;border:1px solid var(--border);border-radius:15px}.v720-reward-preview small{display:block;color:var(--muted);margin-bottom:5px}.v720-history{list-style:none;padding:0;margin:0;display:grid;gap:8px}.v720-history li{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid var(--border)}.v720-history li:last-child{border-bottom:0}.v720-history li div{display:flex;flex-direction:column}.v720-history small,.v720-history span{font-size:11px;color:var(--muted)}.v720-history strong{font-size:13px;text-align:right}
@media(max-width:1100px){.v720-mission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v720-central-hero{flex-direction:column}.v720-central-kpis{min-width:0;width:100%}}@media(max-width:680px){.v720-mission-grid{grid-template-columns:1fr}.v720-central-kpis{grid-template-columns:1fr 1fr}.v720-active-grid{grid-template-columns:1fr}.v720-reward-preview{grid-template-columns:1fr}.v720-history li{flex-direction:column}.v720-history strong{text-align:left}}

/* ========================================================================== */
/* Politikon v7.3.0 — Centrála Contacts + War Room                           */
/* ========================================================================== */
.v730-central-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;position:relative}.v730-central-summary article{padding:13px 14px;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.025)}.v730-central-summary small,.v730-central-summary span{display:block;color:var(--muted);font-size:11px}.v730-central-summary b{display:block;font-size:18px;margin:2px 0 3px}.v730-team-panel,.v730-war-room,.v730-contacts{margin-top:16px}.v730-team-score,.v730-war-record{min-width:150px;padding:13px 15px;border:1px solid var(--border);border-radius:15px;background:rgba(255,255,255,.025);text-align:right}.v730-team-score small,.v730-team-score span,.v730-war-record small,.v730-war-record span{display:block;color:var(--muted);font-size:11px}.v730-team-score b,.v730-war-record b{font-size:24px;display:block}.v730-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v730-team-slot{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:15px;padding:12px;background:rgba(255,255,255,.02)}.v730-team-slot.empty{opacity:.72;border-style:dashed}.v730-slot-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:rgba(99,102,241,.1);font-size:20px}.v730-slot-body{min-width:0}.v730-slot-body>small,.v730-slot-body>span.muted{display:block;color:var(--muted);font-size:10px}.v730-slot-body>b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v730-rarity{display:inline-flex!important;width:max-content;padding:2px 6px;border-radius:999px;font-size:9px!important;font-weight:900;letter-spacing:.08em;margin-top:3px;border:1px solid currentColor}.v730-rarity.rarity-common{color:#a8b0bd}.v730-rarity.rarity-rare{color:#60a5fa}.v730-rarity.rarity-epic{color:#c084fc}.v730-rarity.rarity-legendary{color:#fbbf24}.v730-mini-bonuses,.v730-contact-bonuses{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.v730-mini-bonuses span,.v730-contact-bonuses span{display:inline-flex;gap:4px;align-items:center;padding:3px 6px;border-radius:8px;background:rgba(255,255,255,.04);font-size:9px}.v730-mini-bonuses small,.v730-contact-bonuses small{color:var(--muted)}.v730-stats-details{margin-top:12px}.v730-stats-details summary,.v730-war-history-wrap summary{cursor:pointer;color:var(--muted);font-size:12px}.v730-team-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.v730-team-stat{padding:10px;border:1px solid var(--border);border-radius:12px}.v730-team-stat span{font-size:10px;color:var(--muted)}.v730-team-stat b{float:right}.v730-team-stat i{display:block;clear:both;height:5px;margin-top:7px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}.v730-team-stat u{display:block;height:100%;background:linear-gradient(90deg,#6366f1,#22c55e)}
.v730-war-room{position:relative;overflow:hidden}.v730-war-room:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-170px;top:-240px;background:radial-gradient(circle,rgba(239,68,68,.12),transparent 68%);pointer-events:none}.v730-war-room.completed:before{background:radial-gradient(circle,rgba(234,179,8,.18),transparent 68%)}.v730-war-hero{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;position:relative}.v730-war-hero h2{margin:5px 0 7px;font-size:26px}.v730-war-hero p{max-width:760px}.v730-focus{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.v730-focus span{padding:4px 8px;border-radius:999px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.18);font-size:10px;font-weight:800}.v730-floor-track{display:grid;grid-template-columns:repeat(20,minmax(24px,1fr));gap:4px;margin:18px 0}.v730-floor{height:34px;display:grid;place-items:center;border-radius:8px;border:1px solid var(--border);font-size:10px;font-weight:900;background:rgba(255,255,255,.02);color:var(--muted)}.v730-floor.cleared{background:rgba(34,197,94,.13);border-color:rgba(34,197,94,.28);color:#86efac}.v730-floor.current{background:rgba(99,102,241,.18);border-color:rgba(99,102,241,.45);color:#c7d2fe;box-shadow:0 0 0 1px rgba(99,102,241,.13)}.v730-floor.locked{opacity:.45}.v730-floor.boss{border-width:2px}.v730-war-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.v730-war-meta>span{padding:7px 9px;border-radius:10px;background:rgba(255,255,255,.035);font-size:11px}.v730-war-meta .warn{background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.2)}.v730-strategies{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.v730-strategy{appearance:none;text-align:left;color:inherit;border:1px solid var(--border);border-radius:15px;padding:13px;background:rgba(255,255,255,.02);display:flex;gap:9px;cursor:pointer;transition:.15s ease}.v730-strategy:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(99,102,241,.45);background:rgba(99,102,241,.07)}.v730-strategy:disabled{opacity:.48;cursor:not-allowed}.v730-strategy.recommended{border-color:rgba(34,197,94,.42);background:rgba(34,197,94,.055)}.v730-strategy>span{font-size:21px}.v730-strategy div{min-width:0}.v730-strategy b{font-size:12px;display:block}.v730-strategy small{display:block;color:var(--muted);font-size:10px;line-height:1.35;margin:4px 0 8px}.v730-strategy i{display:block;font-size:9px;font-style:normal;color:var(--muted)}.v730-strategy strong{color:var(--text)}.v730-boss-reward{margin-top:12px;padding:10px 12px;border:1px solid rgba(234,179,8,.24);background:rgba(234,179,8,.07);border-radius:12px;font-size:11px}.v730-war-history-wrap{margin-top:12px}.v730-war-history{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:6px}.v730-war-history li{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid var(--border);padding:8px 0;font-size:11px}.v730-war-history li:last-child{border-bottom:0}.v730-war-history li small{display:block;color:var(--muted);font-size:9px}.v730-war-history li.win>b,.v730-war-history li.win span{color:#86efac}.v730-war-history li.loss>b,.v730-war-history li.loss span{color:#fca5a5}
.v730-rarity-counts{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.v730-rarity-counts span{padding:5px 8px;border:1px solid var(--border);border-radius:999px;font-size:9px;color:var(--muted)}.v730-rarity-counts b{color:var(--text)}.v730-drop-rules{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 14px}.v730-drop-rules>span{padding:7px 9px;border-radius:10px;background:rgba(99,102,241,.06);border:1px solid rgba(99,102,241,.14);font-size:10px}.v730-drop-rules .pity{background:rgba(234,179,8,.06);border-color:rgba(234,179,8,.18)}.v730-contact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.v730-contact-card{padding:14px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.012));position:relative;overflow:hidden}.v730-contact-card:before{content:"";position:absolute;left:0;top:0;right:0;height:2px;background:#94a3b8}.v730-contact-card.rarity-rare:before{background:#60a5fa}.v730-contact-card.rarity-epic:before{background:#c084fc}.v730-contact-card.rarity-legendary:before{background:#fbbf24}.v730-contact-card.active{box-shadow:inset 0 0 0 1px rgba(34,197,94,.24)}.v730-contact-card header,.v730-contact-card footer{display:flex;justify-content:space-between;gap:8px;align-items:center}.v730-contact-role{display:flex;gap:6px;align-items:center}.v730-contact-role small{color:var(--muted);font-size:9px}.v730-contact-card h3{font-size:15px;margin:10px 0 4px}.v730-contact-card>p{font-size:10px;color:var(--muted);min-height:28px}.v730-contact-card footer{margin-top:12px;padding-top:9px;border-top:1px solid var(--border);font-size:10px}.v730-empty{padding:26px;border:1px dashed var(--border);border-radius:16px;text-align:center;color:var(--muted)}.v730-empty b{color:var(--text)}
@media(max-width:1180px){.v730-central-summary{grid-template-columns:repeat(2,1fr)}.v730-strategies{grid-template-columns:repeat(3,minmax(0,1fr))}.v730-contact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v730-floor-track{grid-template-columns:repeat(10,1fr)}}
@media(max-width:760px){.v730-team-grid,.v730-contact-grid{grid-template-columns:1fr}.v730-team-stats{grid-template-columns:repeat(2,1fr)}.v730-war-hero{flex-direction:column}.v730-team-score,.v730-war-record{width:100%;text-align:left}.v730-strategies{grid-template-columns:1fr}.v730-floor-track{grid-template-columns:repeat(5,1fr)}.v730-rarity-counts{justify-content:flex-start}.v730-team-slot{grid-template-columns:40px 1fr}.v730-team-slot>.btn{grid-column:1/-1}.v730-central-summary{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.v730-central-summary{grid-template-columns:1fr}.v730-team-stats{grid-template-columns:1fr}.v730-war-history li{flex-direction:column}.v730-floor-track{grid-template-columns:repeat(4,1fr)}}


/* Politikon v7.3.3 — visible Centrála / Kontakty / Síň moci navigation */
.v733-central-nav{padding:14px!important;background:linear-gradient(145deg,rgba(10,25,48,.96),rgba(7,14,30,.98));border-color:rgba(75,190,255,.3)!important}
.v733-central-nav-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.v733-central-nav-card{display:flex;gap:12px;align-items:center;text-align:left;padding:15px 16px;border:1px solid rgba(123,161,210,.28);border-radius:16px;background:rgba(8,17,34,.8);color:inherit;cursor:pointer;min-height:74px}
.v733-central-nav-card:hover{transform:translateY(-1px);border-color:rgba(67,198,255,.62)}
.v733-central-nav-card.active{border-color:rgba(56,201,255,.9);box-shadow:0 0 0 1px rgba(56,201,255,.22) inset;background:linear-gradient(135deg,rgba(18,74,111,.55),rgba(17,32,67,.8))}
.v733-central-nav-card>span{font-size:28px}.v733-central-nav-card div{display:flex;flex-direction:column;gap:3px}.v733-central-nav-card b{font-size:16px}.v733-central-nav-card small{color:var(--muted,#9fb0c8);font-size:12px}
.v733-page-hero{border-top:3px solid rgba(63,203,255,.65)!important}.v733-page-hero>h2{font-size:30px;margin:.25rem 0}.v733-page-hero>p{max-width:900px}
.v733-central-links{border-color:rgba(70,190,255,.28)!important}
@media(max-width:760px){.v733-central-nav-grid{grid-template-columns:1fr}.v733-central-nav-card{min-height:62px}.v733-page-hero>h2{font-size:24px}}

/* v7.4.0 — Hall of Power 1–100 + duel arena */
.v740-stage-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:18px 0}.v740-stage-card{position:relative;display:flex;gap:10px;align-items:flex-start;padding:13px;border:1px solid rgba(100,116,139,.3);border-radius:15px;background:linear-gradient(145deg,rgba(15,23,42,.96),rgba(8,15,30,.92));min-height:126px;overflow:hidden}.v740-stage-card.active{border-color:rgba(56,189,248,.68);box-shadow:0 0 0 1px rgba(56,189,248,.14),0 16px 36px rgba(14,165,233,.08)}.v740-stage-card.completed{border-color:rgba(52,211,153,.46);background:linear-gradient(145deg,rgba(6,78,59,.22),rgba(8,15,30,.96))}.v740-stage-card.locked{opacity:.48;filter:saturate(.55)}.v740-stage-icon{font-size:26px;line-height:1}.v740-stage-card div{min-width:0}.v740-stage-card small{display:block;color:#93c5fd;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.v740-stage-card b{display:block;margin-top:5px;font-size:22px;color:#f8fafc}.v740-stage-card p{margin:4px 0 18px;color:#94a3b8;font-size:11px;line-height:1.35}.v740-stage-card em{position:absolute;bottom:8px;right:10px;font-style:normal;font-size:9px;font-weight:900;color:#67e8f9;letter-spacing:.04em}.v740-stage-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:14px 0 8px;padding:10px 12px;border-radius:12px;background:rgba(15,23,42,.72);border:1px solid rgba(71,85,105,.35)}.v740-stage-head b{display:block;color:#e2e8f0}.v740-stage-head small{display:block;color:#94a3b8;margin-top:2px}.v740-stage-head>span{font-size:18px;font-weight:900;color:#67e8f9}.v740-floor-track{grid-template-columns:repeat(10,minmax(0,1fr))}.v730-floor.major{border-color:rgba(250,204,21,.75)!important;box-shadow:0 0 16px rgba(250,204,21,.16)}
.v740-duel-preview{display:grid;grid-template-columns:minmax(0,1fr) 100px minmax(0,1fr);align-items:center;gap:14px;padding:18px;margin:18px 0;border-radius:18px;border:1px solid rgba(99,102,241,.36);background:radial-gradient(circle at 50% 50%,rgba(124,58,237,.16),transparent 48%),linear-gradient(135deg,rgba(8,15,30,.97),rgba(15,23,42,.94))}.v740-fighter{display:flex;align-items:center;gap:12px}.v740-fighter.enemy{justify-content:flex-end;text-align:right}.v740-fighter>span{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;font-size:27px;background:rgba(14,165,233,.12);border:1px solid rgba(56,189,248,.35)}.v740-fighter.enemy>span{order:2;background:rgba(239,68,68,.1);border-color:rgba(248,113,113,.35)}.v740-fighter small,.v740-fighter i{display:block;font-size:10px;color:#94a3b8;font-style:normal}.v740-fighter b{display:block;color:#f8fafc;font-size:16px;margin:2px 0}.v740-versus{text-align:center}.v740-versus b{display:block;font-size:28px;font-style:italic;color:#f8fafc;text-shadow:0 0 18px rgba(124,58,237,.6)}.v740-versus small{font-size:9px;color:#a78bfa;font-weight:900}.v740-duel-hint{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:11px 13px;margin:12px 0;border:1px solid rgba(168,85,247,.28);border-radius:12px;background:rgba(88,28,135,.1)}.v740-duel-hint b{color:#ddd6fe}.v740-duel-hint span{font-size:11px;color:#a5b4fc}.v740-page-hero{background:radial-gradient(circle at 90% 0,rgba(124,58,237,.18),transparent 34%),linear-gradient(145deg,rgba(15,23,42,.97),rgba(8,15,30,.96))}
.v740-duel-overlay{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:18px;background:rgba(2,6,23,.88);backdrop-filter:blur(8px)}.v740-duel-modal{width:min(940px,96vw);max-height:92vh;overflow:auto;border:1px solid rgba(99,102,241,.5);border-radius:22px;background:radial-gradient(circle at 50% 0,rgba(76,29,149,.28),transparent 40%),linear-gradient(180deg,#0f172a,#07101f);box-shadow:0 30px 100px rgba(0,0,0,.55);padding:20px}.v740-duel-modal>header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid rgba(71,85,105,.35);padding-bottom:13px}.v740-duel-modal header small{display:block;color:#a78bfa;font-weight:900;letter-spacing:.08em}.v740-duel-modal header h2{margin:2px 0;color:#f8fafc}.v740-duel-skip{border:1px solid rgba(148,163,184,.3);border-radius:10px;background:rgba(15,23,42,.9);color:#cbd5e1;padding:8px 11px;cursor:pointer}.v740-duel-arena{display:grid;grid-template-columns:1fr 190px 1fr;align-items:center;gap:18px;padding:28px 6px 20px}.v740-duelist{text-align:center}.v740-duelist .v740-avatar{width:82px;height:82px;margin:0 auto 10px;display:grid;place-items:center;border-radius:24px;font-size:42px;background:linear-gradient(145deg,rgba(14,165,233,.24),rgba(30,64,175,.14));border:1px solid rgba(56,189,248,.4);box-shadow:0 0 28px rgba(14,165,233,.12)}.v740-duelist.enemy .v740-avatar{background:linear-gradient(145deg,rgba(239,68,68,.22),rgba(127,29,29,.12));border-color:rgba(248,113,113,.4);box-shadow:0 0 28px rgba(239,68,68,.1)}.v740-duelist small{display:block;font-size:10px;font-weight:900;color:#94a3b8;letter-spacing:.08em}.v740-duelist b{display:block;margin:4px 0;color:#fff;font-size:19px}.v740-duelist em{display:block;font-style:normal;color:#a5b4fc;font-size:12px}.v740-hp{height:13px;margin:13px auto 5px;max-width:260px;overflow:hidden;border-radius:999px;background:#172033;border:1px solid rgba(148,163,184,.2)}.v740-hp i{display:block;height:100%;background:linear-gradient(90deg,#0ea5e9,#22d3ee);transition:width .32s ease}.v740-hp.enemy i{background:linear-gradient(90deg,#ef4444,#fb7185)}.v740-duelist strong{font-size:11px;color:#cbd5e1}.v740-duel-center{text-align:center}.v740-duel-center>span{font-size:38px;font-weight:1000;font-style:italic;color:#f8fafc;text-shadow:0 0 20px rgba(168,85,247,.75)}.v740-duel-center>small{display:block;color:#c4b5fd;margin:3px 0 15px}.v740-duel-center>div{min-height:52px;display:grid;place-items:center;border-radius:13px;background:rgba(15,23,42,.72);border:1px solid rgba(99,102,241,.28);padding:9px;color:#e2e8f0;font-weight:800}.v740-duel-center>div.player-hit{border-color:rgba(34,211,238,.45);color:#67e8f9}.v740-duel-center>div.enemy-hit{border-color:rgba(248,113,113,.45);color:#fca5a5}.v740-duel-center>div.duel-win{border-color:rgba(52,211,153,.55);color:#6ee7b7;font-size:18px}.v740-duel-center>div.duel-loss{border-color:rgba(248,113,113,.5);color:#fca5a5;font-size:18px}.v740-duel-log{display:grid;gap:5px;max-width:700px;margin:0 auto 16px}.v740-duel-log div{padding:6px 9px;border-radius:9px;font-size:11px;background:rgba(15,23,42,.66);color:#94a3b8}.v740-duel-log div.player{border-left:3px solid #22d3ee}.v740-duel-log div.enemy{border-left:3px solid #f87171}.v740-duel-log div.critical{font-weight:900;color:#fde68a}.v740-duel-modal>footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:13px;border-top:1px solid rgba(71,85,105,.35)}.v740-duel-modal>footer>div b,.v740-duel-modal>footer>div span{display:block}.v740-duel-modal>footer>div span{font-size:11px;color:#94a3b8;margin-top:3px}.v740-duel-overlay.won .v740-duel-modal{box-shadow:0 30px 100px rgba(0,0,0,.55),0 0 55px rgba(16,185,129,.13)}.v740-duel-overlay.lost .v740-duel-modal{box-shadow:0 30px 100px rgba(0,0,0,.55),0 0 55px rgba(239,68,68,.1)}
@media(max-width:980px){.v740-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v740-stage-card:last-child{grid-column:1/-1}.v740-duel-arena{grid-template-columns:1fr 115px 1fr}.v740-floor-track{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:680px){.v740-stage-grid{grid-template-columns:1fr}.v740-stage-card:last-child{grid-column:auto}.v740-duel-preview{grid-template-columns:1fr;gap:8px}.v740-fighter.enemy{justify-content:flex-start;text-align:left}.v740-fighter.enemy>span{order:0}.v740-versus{padding:2px}.v740-versus b{font-size:22px}.v740-duel-hint{display:block}.v740-duel-hint span{display:block;margin-top:4px}.v740-duel-arena{grid-template-columns:1fr;gap:8px;padding-top:17px}.v740-duel-center{order:2}.v740-duelist.enemy{order:3}.v740-duelist .v740-avatar{width:62px;height:62px;font-size:32px}.v740-duel-modal{padding:14px}.v740-duel-modal>footer{align-items:stretch;flex-direction:column}.v740-duel-modal>footer .btn{width:100%}}

/* ========================================================================== */
/* v7.4.1 — Parallel Czech hockey world                                       */
/* ========================================================================== */
.v741-hockey-hero{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;align-items:stretch;overflow:hidden;position:relative;background:linear-gradient(135deg,rgba(5,24,45,.96),rgba(10,19,42,.96));border-color:rgba(75,194,255,.28)}
.v741-hockey-hero:after{content:'🏒';position:absolute;right:280px;top:-28px;font-size:150px;opacity:.035;transform:rotate(-18deg);pointer-events:none}
.v741-hockey-hero-copy h2{font-size:clamp(25px,3vw,40px);margin:4px 0 10px}.v741-hockey-hero-copy p{max-width:850px;color:var(--muted);line-height:1.55}.v741-hockey-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.v741-hockey-badges span{padding:7px 10px;border:1px solid rgba(92,196,255,.25);border-radius:999px;background:rgba(23,87,135,.16);font-size:12px;font-weight:800;color:#bfe9ff}
.v741-next-puck{border:1px solid rgba(92,196,255,.32);border-radius:18px;background:linear-gradient(180deg,rgba(26,91,145,.22),rgba(4,13,27,.5));padding:18px;display:flex;flex-direction:column;justify-content:center;gap:5px}.v741-next-puck small{color:#75d6ff;font-weight:900;letter-spacing:.08em}.v741-next-puck>b{font-size:13px;color:var(--muted)}.v741-next-puck strong{font-size:26px}.v741-next-puck span{font-size:13px;color:var(--muted)}
.v741-fan-panel{border-color:rgba(255,80,110,.25);background:linear-gradient(135deg,rgba(47,15,36,.35),rgba(8,18,35,.96))}.v741-fan-controls{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;max-width:760px}.v741-fan-controls select{min-height:43px}.v741-favorite-club{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:rgba(3,12,27,.42);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}.v741-favorite-club>div:first-child{display:flex;flex-direction:column;gap:4px}.v741-favorite-club small{color:var(--muted)}.v741-donate-grid{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.v741-donate-grid .btn{padding:8px 10px;font-size:12px}
.v741-hockey-format-note{padding:11px 13px;border-left:3px solid #4dc5ff;background:rgba(38,115,165,.11);border-radius:10px;margin:10px 0 15px;color:var(--muted);line-height:1.45}.v741-hockey-format-note b{color:var(--text)}
.v741-hockey-table-wrap{max-height:550px;overflow:auto}.v741-hockey-table{min-width:760px}.v741-hockey-table tr.direct-qf td:first-child{box-shadow:inset 3px 0 #45d49b}.v741-hockey-table tr.playoff-zone td:first-child{box-shadow:inset 3px 0 #49aef0}.v741-hockey-table tr.danger-zone td:first-child{box-shadow:inset 3px 0 #ef6674}.v741-hockey-table .link-btn{border:0;background:none;color:inherit;text-align:left;padding:0;cursor:pointer}.v741-hockey-table .link-btn:hover{text-decoration:underline;color:#7bd7ff}
.v741-hockey-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.v741-games-list{display:flex;flex-direction:column;gap:8px}.v741-hockey-game{border:1px solid var(--line);background:rgba(4,13,27,.42);border-radius:14px;padding:12px}.v741-hockey-game.finished{border-color:rgba(69,212,155,.2)}.v741-hockey-time{display:flex;justify-content:space-between;gap:8px;margin-bottom:9px}.v741-hockey-time b{font-size:11px;color:#70d5ff}.v741-hockey-time small{color:var(--muted)}.v741-hockey-matchup{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}.v741-hockey-matchup>span{display:flex;flex-direction:column;min-width:0}.v741-hockey-matchup>span.away{text-align:right}.v741-hockey-matchup b{font-size:15px}.v741-hockey-matchup small{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v741-hockey-matchup>strong{font-size:21px;padding:4px 8px;border-radius:10px;background:rgba(255,255,255,.045)}.v741-hockey-game details{margin-top:9px}.v741-hockey-game summary{cursor:pointer;color:var(--muted);font-size:11px}.v741-scorers{display:flex;flex-direction:column;gap:3px;margin-top:7px;font-size:11px;color:var(--muted)}
.v741-series-list{display:flex;flex-direction:column;gap:9px}.v741-series{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:13px;background:rgba(4,13,27,.38)}.v741-series.won{border-color:rgba(69,212,155,.22)}.v741-series>div{display:flex;flex-direction:column;gap:3px}.v741-series small{color:var(--muted);font-weight:800}.v741-series b{font-size:14px}.v741-series b strong{display:inline-block;padding:2px 7px;margin:0 5px;border-radius:8px;background:rgba(255,255,255,.07);font-size:18px}.v741-barage{border-color:rgba(255,184,70,.35);background:linear-gradient(135deg,rgba(77,49,9,.16),rgba(8,18,35,.95))}
.v741-team-detail{border-color:rgba(110,125,255,.25)}.v741-roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.v741-roster span{display:flex;gap:8px;align-items:center;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:rgba(5,15,30,.34);font-size:12px}.v741-roster small{display:inline-flex;width:23px;height:23px;align-items:center;justify-content:center;border-radius:7px;background:rgba(77,190,255,.1);color:#72d5ff;font-size:9px;font-weight:900}
@media(max-width:980px){.v741-hockey-hero{grid-template-columns:1fr}.v741-next-puck{min-height:130px}.v741-hockey-two-col{grid-template-columns:1fr}.v741-favorite-club{grid-template-columns:1fr}.v741-donate-grid{justify-content:flex-start}.v741-roster{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.v741-hockey-hero{padding:16px}.v741-fan-controls{grid-template-columns:1fr}.v741-roster{grid-template-columns:1fr}.v741-series{align-items:flex-start;flex-direction:column}.v741-hockey-matchup{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.v741-hockey-matchup small{display:none}.v741-donate-grid{display:grid;grid-template-columns:1fr 1fr;width:100%}.v741-donate-grid .btn:last-child{grid-column:1/-1}}

/* ========================================================================== */
/* v7.5.0 — Hockey LIVE + player power + Hall attributes                    */
/* ========================================================================== */
.v750-club-logo{display:inline-block;object-fit:contain;flex:0 0 auto;filter:drop-shadow(0 4px 10px rgba(0,0,0,.28))}.v750-club-logo.xs{width:24px;height:24px}.v750-club-logo.sm{width:38px;height:38px}.v750-club-logo.md{width:52px;height:52px}.v750-club-logo.xl{width:84px;height:84px}.v750-logo-fallback{display:inline-grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.07)}.v750-logo-fallback.xs{width:24px;height:24px}.v750-logo-fallback.sm{width:38px;height:38px}.v750-logo-fallback.md{width:52px;height:52px}.v750-logo-fallback.xl{width:84px;height:84px}
.v750-hockey-hero{overflow:hidden}.v750-next-teams{display:flex;align-items:center;justify-content:center;gap:10px;margin:8px 0}.v750-next-teams strong{font-size:1.12rem}.v750-test-panel{border-color:rgba(69,224,166,.35);background:linear-gradient(135deg,rgba(13,33,56,.96),rgba(12,23,42,.96))}.v750-test-controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:12px;align-items:end}.v750-test-controls label{display:grid;gap:6px;font-size:.78rem;color:var(--muted)}.v750-test-controls select{width:100%;min-width:0}.v750-test-controls>b{align-self:center;padding-bottom:10px;color:var(--muted)}
.v750-live-arena{border:1px solid rgba(55,194,255,.42);background:radial-gradient(circle at 50% 0,rgba(25,124,174,.19),transparent 42%),linear-gradient(180deg,#0b1728,#091221);overflow:hidden}.v750-live-arena.finished{border-color:rgba(80,224,163,.32)}.v750-live-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.v750-live-head h3{margin:.2rem 0 0}.v750-live-clock{text-align:right}.v750-live-clock b{display:block;font-size:1.12rem}.v750-live-clock small{color:var(--muted)}.v750-scoreboard{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin:20px 0;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:rgba(0,0,0,.16)}.v750-scoreboard article{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:3px 14px;align-items:center}.v750-scoreboard article .v750-club-logo{grid-row:1/3}.v750-scoreboard article small{font-size:.7rem;color:var(--muted)}.v750-scoreboard article>b{font-size:1rem}.v750-scoreboard article>strong{grid-column:3;grid-row:1/3;font-size:3.2rem;line-height:1}.v750-scoreboard article:last-child{text-align:right;grid-template-columns:auto 1fr auto}.v750-scoreboard article:last-child .v750-club-logo{grid-column:3}.v750-scoreboard article:last-child>small,.v750-scoreboard article:last-child>b{grid-column:2}.v750-scoreboard article:last-child>strong{grid-column:1}.v750-score-mid{text-align:center;min-width:85px}.v750-score-mid span{display:block;font-weight:900;letter-spacing:.1em;color:#5fd7ff}.v750-score-mid small{display:block;color:var(--muted);margin-top:4px}.v750-sim-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:-4px 0 16px}.v750-sim-controls>span{font-size:.76rem;color:var(--muted);margin-right:4px}.v750-live-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(220px,.7fr);gap:16px}.v750-live-grid h4{margin:0 0 10px}.v750-live-feed{display:grid;gap:6px;max-height:330px;overflow:auto;padding-right:5px}.v750-live-feed>div{display:grid;grid-template-columns:74px 1fr auto;gap:8px;padding:9px 10px;border-radius:11px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);font-size:.82rem}.v750-live-feed>div.goal{border-color:rgba(72,231,164,.35);background:rgba(45,170,116,.11)}.v750-live-feed>div.penalty{border-color:rgba(255,179,65,.28);background:rgba(190,109,18,.08)}.v750-live-feed time{font-variant-numeric:tabular-nums;color:#73d8ff}.v750-live-feed em{font-style:normal;font-weight:900}.v750-goalies{display:grid;gap:8px}.v750-goalies span{display:flex;justify-content:space-between;gap:10px;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.03)}.v750-goalies small{color:var(--muted)}.v750-final-note{margin-top:12px;padding:12px;border-radius:12px;background:rgba(60,212,148,.1);border:1px solid rgba(60,212,148,.25)}.v750-final-note b,.v750-final-note span{display:block}.v750-final-note span{font-size:.76rem;color:var(--muted);margin-top:3px}
.v750-table-team{display:inline-flex!important;align-items:center;gap:7px!important;text-align:left}.v750-matchup span{display:grid;grid-template-columns:auto auto;align-items:center;justify-content:start;gap:2px 8px}.v750-matchup span .v750-club-logo{grid-row:1/3}.v750-matchup span.away{grid-template-columns:auto auto;justify-content:end}.v750-matchup span.away .v750-club-logo{grid-column:2;grid-row:1/3}.v750-live-card{border-color:rgba(255,65,88,.35)!important;box-shadow:inset 3px 0 0 rgba(255,65,88,.8)}
.v750-leader-list{display:grid;gap:6px}.v750-leader-list>div{display:grid;grid-template-columns:28px 28px 1fr auto;align-items:center;gap:8px;padding:8px 10px;border-radius:11px;background:rgba(255,255,255,.035)}.v750-leader-list>div>span strong,.v750-leader-list>div>span small{display:block}.v750-leader-list>div>span small{color:var(--muted);font-size:.7rem}.v750-leader-list em{font-style:normal;text-align:right}.v750-team-title{display:flex;align-items:center;gap:14px}.v750-rating-card{display:grid;grid-template-columns:minmax(220px,.7fr) 1fr;gap:16px;align-items:center;margin:12px 0 18px;padding:14px;border-radius:14px;background:rgba(35,147,215,.08);border:1px solid rgba(75,184,241,.18)}.v750-rating-card>div{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;align-items:center}.v750-rating-card>div small{grid-column:1/3;color:var(--muted);font-size:.7rem}.v750-rating-card>div b{font-size:1.8rem}.v750-rating-card>span{font-size:.8rem;color:var(--muted)}.v750-power-track{display:block;height:7px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden;min-width:80px}.v750-power-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#41b9ff,#64e0a7)}.v750-roster-table td,.v750-roster-table th{white-space:nowrap}.v750-roster-table tbody tr:hover{background:rgba(78,184,238,.06)}
.v750-fan-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.v750-fan-actions article{padding:13px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.025)}.v750-fan-actions h4{margin:0 0 6px}.v750-fan-actions p{font-size:.76rem;color:var(--muted);min-height:40px}.v750-arena-buttons{display:flex;flex-wrap:wrap;gap:6px}.v750-arena-buttons .btn,.v750-donate-grid .btn{padding:.5rem .65rem;font-size:.72rem}.v750-fav-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.v750-fav-meta span{padding:7px 9px;border-radius:99px;background:rgba(255,255,255,.05);font-size:.72rem}.v750-honours{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v750-honours article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:12px}.v750-honours b,.v750-honours small{display:block}.v750-honours small{font-size:.7rem;color:var(--muted)}
.v750-hall-attributes{margin:18px 0;padding:15px;border-radius:16px;border:1px solid rgba(95,182,255,.2);background:rgba(15,32,54,.66)}.v750-hall-attributes .section-head{margin-bottom:10px}.v750-hall-attr{display:grid;grid-template-columns:130px minmax(0,1fr) 48px minmax(0,1fr);align-items:center;gap:10px;padding:7px 0;border-top:1px solid rgba(255,255,255,.055)}.v750-hall-attr:first-of-type{border-top:0}.v750-hall-attr>span{font-size:.78rem;font-weight:800}.v750-hall-attr>div{display:grid;grid-template-columns:34px 1fr 28px;align-items:center;gap:6px}.v750-hall-attr>div:last-child{grid-template-columns:36px 1fr 34px}.v750-hall-attr small{font-size:.58rem;color:var(--muted);text-align:center}.v750-hall-attr em{text-align:center;font-style:normal;font-weight:900;font-size:.72rem}.v750-hall-attr em.good{color:#63dfa7}.v750-hall-attr em.bad{color:#ff7f87}
@media(max-width:900px){.v750-test-controls{grid-template-columns:1fr 1fr}.v750-test-controls>b{display:none}.v750-test-controls .btn{grid-column:1/3}.v750-scoreboard{grid-template-columns:1fr auto 1fr;gap:8px;padding:12px}.v750-scoreboard article{display:flex;flex-direction:column;text-align:center!important;gap:4px}.v750-scoreboard article .v750-club-logo{order:0}.v750-scoreboard article small{order:1}.v750-scoreboard article>b{order:2;font-size:.8rem}.v750-scoreboard article>strong{order:3;font-size:2.5rem}.v750-live-grid{grid-template-columns:1fr}.v750-fan-actions{grid-template-columns:1fr}.v750-honours{grid-template-columns:1fr}.v750-hall-attr{grid-template-columns:90px 1fr 36px 1fr}.v750-hall-attr>div{grid-template-columns:28px 1fr}.v750-hall-attr>div small{display:none}.v750-club-logo.xl{width:62px;height:62px}.v750-rating-card{grid-template-columns:1fr}}

/* ========================================================================== */
/* Politikon v7.6.0 — Hockey Universe                                         */
/* ========================================================================== */
.v760-hockey-hero{background:linear-gradient(135deg,rgba(24,112,153,.18),rgba(16,32,58,.72) 48%,rgba(44,19,90,.18));}
.v760-live-strip{display:flex;gap:14px;align-items:center;margin:0 0 14px;padding:12px 14px;border:1px solid rgba(68,207,255,.28);border-radius:16px;background:rgba(7,22,39,.86);overflow:hidden}.v760-live-strip-title{display:flex;align-items:center;gap:7px;min-width:max-content}.v760-live-strip-title small{color:var(--muted);margin-left:6px}.v760-live-dot{width:9px;height:9px;border-radius:50%;background:#ff4058;box-shadow:0 0 0 4px rgba(255,64,88,.14);animation:v760pulse 1.3s infinite}.v760-live-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.v760-live-tabs button{display:flex;align-items:center;gap:8px;min-width:max-content;border:1px solid rgba(148,163,184,.18);border-radius:12px;padding:7px 10px;background:rgba(15,28,48,.85);color:var(--text);cursor:pointer}.v760-live-tabs button.active{border-color:#35c7ff;background:rgba(29,123,168,.21);box-shadow:inset 0 0 0 1px rgba(53,199,255,.15)}.v760-live-tabs button span{display:grid;text-align:left}.v760-live-tabs button small{font-size:10px;color:#79dfff}.v760-live-tabs .v750-club-logo.xs{width:26px;height:26px}.v760-no-live{margin:0 0 18px}
@keyframes v760pulse{50%{opacity:.35;transform:scale(.82)}}
.v760-live-arena .v750-live-feed{max-height:470px}.v760-live-arena .v750-live-feed>div{grid-template-columns:72px minmax(0,1fr) auto}.v760-live-arena .v750-live-feed .passShot,.v760-live-arena .v750-live-feed .rush,.v760-live-arena .v750-live-feed .rebound,.v760-live-arena .v750-live-feed .glove{border-left-color:#39bdf8}.v760-live-arena .v750-live-feed .hit,.v760-live-arena .v750-live-feed .block{border-left-color:#f5b942}.v760-live-arena .v750-live-feed .turnover{border-left-color:#fd7f6f}
.v760-match-tabs>details{border-top:1px solid rgba(148,163,184,.14);padding-top:12px;margin-top:10px}.v760-match-tabs>details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;font-weight:800;color:#dcecff;padding:8px 0}.v760-match-tabs>details>summary span{font-size:11px;font-weight:600;color:var(--muted)}
.v760-game-rosters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:10px}.v760-roster-side{min-width:0;border:1px solid rgba(148,163,184,.15);border-radius:14px;background:rgba(7,18,33,.58);padding:10px}.v760-roster-side>header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.v760-roster-side>header div{display:grid}.v760-roster-side>header small{color:var(--muted);font-size:10px}.v760-roster-side>header b{font-size:14px}.v760-game-roster{max-height:390px;overflow:auto}.v760-game-roster table{font-size:11px;min-width:760px}.v760-game-roster td,.v760-game-roster th{padding:6px 7px}.v760-goalie-boxes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}.v760-goalie-boxes article{display:grid;border:1px solid rgba(148,163,184,.13);padding:8px;border-radius:10px}.v760-goalie-boxes article.active{border-color:rgba(46,204,113,.4);background:rgba(46,204,113,.07)}.v760-goalie-boxes span,.v760-goalie-boxes small{color:var(--muted);font-size:10px}
.v760-country-league-switch{display:grid;gap:8px;justify-items:end}.v760-country-league-switch .segmented{max-width:100%;overflow-x:auto}.v760-country-league-switch button{white-space:nowrap}
.v760-fan-actions .v760-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.v760-action-grid article{border:1px solid rgba(148,163,184,.14);border-radius:13px;background:rgba(7,18,33,.45);padding:12px}.v760-action-grid article p{min-height:42px;color:var(--muted);font-size:12px}.v760-action-grid article>div{display:flex;gap:5px;flex-wrap:wrap}.v760-action-grid .btn{font-size:11px;padding:7px 9px}
.v760-team-detail .section-head>div:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center}.v760-team-detail .section-head .v750-club-logo{grid-row:1/4}.v760-roster-groups{display:grid;grid-template-columns:.75fr 1fr 1.35fr;gap:10px}.v760-roster-groups>div{border:1px solid rgba(148,163,184,.13);border-radius:13px;overflow:hidden}.v760-roster-groups h4{margin:0;padding:10px 11px;background:rgba(19,37,63,.7);display:flex;justify-content:space-between}.v760-roster-groups article{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border-top:1px solid rgba(148,163,184,.08)}.v760-roster-groups article span{display:grid}.v760-roster-groups article small,.v760-roster-groups article em{font-size:10px;color:var(--muted);font-style:normal}.v760-roster-groups article em{text-align:right}
.v760-club-world{border-color:rgba(98,204,255,.22)}.v760-club-world.active{background:linear-gradient(135deg,rgba(12,47,72,.42),rgba(18,18,45,.76))}.v760-world-qualifiers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.v760-world-qualifiers article{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid rgba(148,163,184,.14);border-radius:12px}.v760-world-qualifiers article span{display:grid;min-width:0}.v760-world-qualifiers small{color:var(--muted)}.v760-world-history{display:flex;gap:8px;flex-wrap:wrap}.v760-world-history span{display:flex;align-items:center;gap:6px;border:1px solid rgba(148,163,184,.13);padding:7px 9px;border-radius:10px}
@media(max-width:1100px){.v760-game-rosters{grid-template-columns:1fr}.v760-fan-actions .v760-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v760-roster-groups{grid-template-columns:1fr 1fr}.v760-roster-groups>div:last-child{grid-column:1/-1}.v760-world-qualifiers{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.v760-live-strip{display:block}.v760-live-strip-title{margin-bottom:8px}.v760-live-strip-title small{display:none}.v760-country-league-switch{justify-items:stretch;width:100%}.v760-country-league-switch .segmented{display:flex}.v760-country-league-switch button{flex:1}.v760-fan-actions .v760-action-grid,.v760-roster-groups,.v760-world-qualifiers{grid-template-columns:1fr}.v760-roster-groups>div:last-child{grid-column:auto}.v760-game-roster{max-height:320px}.v760-live-arena .v750-live-feed>div{grid-template-columns:60px minmax(0,1fr) auto}.v760-match-tabs>details>summary{align-items:flex-start;flex-direction:column}}

/* ========================================================================== */
/* Politikon v7.7.0 — Central Energy + Sports selector + Football World       */
/* ========================================================================== */
.v770-energy{margin:18px 0 4px;padding:16px 18px;border:1px solid rgba(77,208,225,.22);border-radius:18px;background:linear-gradient(135deg,rgba(8,35,62,.86),rgba(18,28,55,.82));box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.v770-energy-head{display:flex;gap:18px;align-items:center;justify-content:space-between}.v770-energy-head span{display:flex;flex-direction:column;gap:3px}.v770-energy-head small{color:var(--muted)}.v770-energy-head strong{font-size:1.2rem;color:#baf6ff}.v770-energy-bar{height:11px;margin:12px 0 9px;border-radius:999px;background:rgba(255,255,255,.075);overflow:hidden}.v770-energy-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#17b978,#21c7ef);box-shadow:0 0 20px rgba(33,199,239,.28)}.v770-energy p{margin:0;color:var(--muted);font-size:.88rem}
.v770-sport-switch{min-width:360px;max-width:520px;padding:12px;border:1px solid rgba(116,171,235,.18);border-radius:16px;background:rgba(4,16,34,.55);display:grid;gap:8px}.v770-switch-title{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.v770-switch-title span{color:#d9eaff;font-weight:800;letter-spacing:0;text-transform:none}.v770-switch-title.league{margin-top:3px}.v770-switch-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v770-switch-row button{border:1px solid rgba(142,181,225,.2);border-radius:11px;padding:10px 12px;background:rgba(10,23,43,.86);color:#b9c9dd;font-weight:800;cursor:pointer;transition:.16s ease}.v770-switch-row button:hover{transform:translateY(-1px);border-color:rgba(64,200,241,.4);color:#fff}.v770-switch-row button.active{background:linear-gradient(135deg,rgba(19,151,195,.32),rgba(23,185,120,.23));border-color:rgba(62,207,243,.65);color:#fff;box-shadow:0 0 0 1px rgba(62,207,243,.08) inset}.v770-sports-head{align-items:flex-start}
.v770-fb-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;background:radial-gradient(circle at 86% 20%,rgba(35,185,110,.12),transparent 34%),linear-gradient(145deg,rgba(10,29,51,.98),rgba(12,23,46,.98))}.v770-fb-hero>div:first-child{max-width:760px}.v770-fb-next{min-width:260px;padding:18px;border:1px solid rgba(79,214,145,.23);border-radius:18px;background:rgba(7,25,37,.75)}.v770-fb-next>small{display:block;color:#78deaa;font-weight:800;letter-spacing:.08em}.v770-fb-next>b{display:block;margin:7px 0 14px;font-size:1.08rem}.v770-fb-next>div{display:flex;align-items:center;justify-content:center;gap:12px}.v770-fb-next strong{font-size:1.12rem}
.v770-fb-logo{width:34px;height:34px;display:inline-grid;place-items:center;flex:0 0 auto}.v770-fb-logo img{width:100%;height:100%;object-fit:contain}.v770-fb-logo.xs{width:25px;height:25px}.v770-fb-logo.md{width:46px;height:46px}.v770-fb-logo.xl{width:72px;height:72px}.v770-fb-logo.placeholder{border-radius:50%;background:rgba(255,255,255,.06)}
.v770-team-link{display:flex;align-items:center;gap:9px;border:0;background:transparent;color:inherit;text-align:left;padding:0;cursor:pointer}.v770-team-link span{display:flex;flex-direction:column}.v770-team-link small{font-size:.68rem;color:var(--muted)}.v770-fb-table td,.v770-fb-table th{white-space:nowrap}
.v770-fb-games{display:grid;gap:8px;margin-top:14px}.v770-fb-game{display:grid;grid-template-columns:minmax(90px,1fr) auto minmax(90px,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(120,159,201,.14);border-radius:13px;background:rgba(7,17,34,.58)}.v770-fb-game>div{display:flex;align-items:center;gap:8px}.v770-fb-game>div:nth-of-type(2){justify-content:flex-end}.v770-fb-game>strong{font-size:.85rem;color:#ddebfb;text-align:center}.v770-fb-game.live{border-color:rgba(63,221,145,.42);background:rgba(7,49,41,.35)}.v770-fb-game.final{opacity:.92}.v770-fb-game .btn.tiny{padding:6px 9px;font-size:.72rem}
.v770-fb-live-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}.v770-live-match{padding:15px;border:1px solid rgba(65,220,142,.28);border-radius:16px;background:rgba(6,36,33,.42)}.v770-live-match header{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.v770-live-match header span{color:#63e0a3}.v770-live-events{display:grid;gap:5px;max-height:220px;overflow:auto}.v770-live-events p{margin:0;padding:7px 9px;border-radius:9px;background:rgba(255,255,255,.035);font-size:.82rem}.v770-live-events p.goal{background:rgba(33,193,108,.13);color:#d9ffeb}
.v770-fb-favorite-picker{display:flex;gap:10px;align-items:center}.v770-fb-favorite-picker select{flex:1;min-width:260px}.v770-fb-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.v770-fb-actions article{padding:15px;border:1px solid rgba(116,159,205,.15);border-radius:15px;background:rgba(8,19,39,.5)}.v770-fb-actions article>b{display:block;margin-bottom:6px}.v770-fb-actions article p{min-height:40px;margin:0 0 10px;color:var(--muted);font-size:.82rem}.v770-fb-actions article>div{display:flex;flex-wrap:wrap;gap:6px}.v770-fb-actions .btn{padding:7px 9px;font-size:.72rem}
.v770-cl-qualifiers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.v770-cl-qualifiers article{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid rgba(104,165,228,.15);border-radius:13px;background:rgba(7,18,36,.46)}.v770-cl-qualifiers span{display:flex;flex-direction:column;min-width:0}.v770-cl-qualifiers b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v770-cl-qualifiers small{color:var(--muted)}.v770-cl-games{display:grid;gap:8px;margin-top:12px}.v770-cl-games h4{margin:12px 0 2px}
.v770-cup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v770-cup-bye{padding:11px;border:1px dashed rgba(121,172,224,.22);border-radius:12px;color:var(--muted)}.v770-trophy-winner{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid rgba(250,205,89,.28);border-radius:18px;background:rgba(90,64,12,.18)}.v770-trophy-winner div{display:flex;flex-direction:column}.v770-trophy-winner small{color:#edcb66;font-weight:800}.v770-trophy-winner b{font-size:1.35rem}
@media(max-width:980px){.v770-sports-head,.v770-fb-hero{display:block}.v770-sport-switch{min-width:0;max-width:none;margin-top:14px}.v770-fb-next{margin-top:18px}.v770-fb-actions{grid-template-columns:1fr 1fr}.v770-cl-qualifiers{grid-template-columns:1fr 1fr}.v770-cup-grid{grid-template-columns:1fr}}
@media(max-width:640px){.v770-energy-head{align-items:flex-start;flex-direction:column}.v770-switch-row{grid-template-columns:1fr 1fr}.v770-fb-actions,.v770-cl-qualifiers{grid-template-columns:1fr}.v770-fb-favorite-picker{align-items:stretch;flex-direction:column}.v770-fb-game{grid-template-columns:1fr auto 1fr}.v770-fb-game>.btn{grid-column:1/-1}.v770-fb-table{min-width:760px}}

/* ========================================================================
   Politikon v7.8.0 — FOOTBALL MATCH CENTER
   ======================================================================== */
.v780-fb-hero{border-color:rgba(67,208,159,.32);background:linear-gradient(135deg,rgba(15,44,65,.96),rgba(18,30,62,.96));}
.v780-test-panel{border-color:rgba(77,190,255,.28);}
.v780-test-controls{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr) auto;gap:12px;align-items:end;}
.v780-test-controls label{display:grid;gap:6px;color:var(--muted);font-size:12px}.v780-test-controls select{min-width:0;width:100%;background:#0b1425;color:var(--text);border:1px solid #293a55;border-radius:12px;padding:11px 12px}.v780-test-controls>b{padding-bottom:13px;color:#66d9ff}
.v780-live-strip-panel{padding-bottom:18px}.v780-live-strip{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 8px}.v780-live-chip{min-width:180px;text-align:left;background:#0c1729;border:1px solid #2b3d5a;border-radius:13px;padding:10px 12px;color:var(--text);display:grid;gap:3px}.v780-live-chip span{font-size:11px;color:#ff7186;font-weight:800}.v780-live-chip b{font-size:14px}.v780-live-chip small{color:var(--muted)}.v780-live-chip.active{border-color:#42d9a7;box-shadow:0 0 0 1px rgba(66,217,167,.2) inset;background:#102a2d}
.v780-no-live{margin:0 0 18px;padding:26px;border:1px dashed #2b3f5e;border-radius:18px;background:#0b1424}
.v780-football-arena{border-color:rgba(56,214,154,.45);background:linear-gradient(180deg,#0c1c2d 0%,#0b1726 100%);overflow:hidden}.v780-football-arena.finished{border-color:rgba(105,197,255,.32)}
.v780-arena-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.v780-arena-top h3{margin:2px 0 0}.v780-clock{text-align:right;display:grid}.v780-clock b{font-size:18px}.v780-clock small{color:var(--muted)}
.v780-scoreboard{margin:18px 0 14px;display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;border:1px solid #253752;background:#091524;border-radius:20px;padding:18px 22px}.v780-club{display:flex;align-items:center;gap:14px;min-width:0}.v780-club.away{justify-content:flex-end;text-align:right}.v780-club span{display:grid;gap:3px;min-width:0}.v780-club small{color:#95a9c4;font-size:11px}.v780-club b{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v780-score{display:flex;align-items:center;gap:16px}.v780-score strong{font-size:48px;line-height:1}.v780-score span{font-weight:900;color:#4bd3ff;font-size:13px;min-width:48px;text-align:center}
.v780-speed{display:flex;align-items:center;gap:8px;margin-bottom:16px}.v780-speed span{color:var(--muted);font-size:12px}.v780-speed button{border:1px solid #29405f;background:#0b1729;color:var(--text);border-radius:12px;padding:9px 13px;font-weight:800}.v780-speed button.active{background:#123a4b;border-color:#43d2ff}
.v780-arena-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr);gap:18px}.v780-arena-grid h4{margin:0 0 10px}.v780-commentary{height:390px;overflow:auto;padding-right:5px;display:grid;align-content:start;gap:6px}.v780-comment{display:grid;grid-template-columns:54px 1fr auto;gap:9px;align-items:start;border:1px solid #23344d;background:#101d30;border-radius:11px;padding:9px 10px}.v780-comment>span{color:#56d5ff;font-weight:800}.v780-comment p{margin:0;line-height:1.35}.v780-comment.goal{border-color:rgba(48,211,150,.6);background:rgba(15,63,56,.72)}.v780-comment.goal p{font-weight:800}.v780-comment.red{border-color:rgba(255,80,96,.55);background:rgba(70,22,31,.5)}.v780-comment.yellow{border-color:rgba(255,207,73,.35)}.v780-comment.substitution{border-color:rgba(106,153,255,.34)}
.v780-teamstats{display:grid;gap:7px}.v780-teamstats>div{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:8px;align-items:center;background:#0d1929;border:1px solid #22344e;border-radius:10px;padding:9px 10px;text-align:center}.v780-teamstats span{color:#9db0c9;font-size:12px}.v780-teamstats b:first-child{text-align:left}.v780-teamstats b:last-child{text-align:right}.v780-result-box{margin-top:12px;padding:14px;border-radius:13px;background:rgba(29,118,96,.22);border:1px solid rgba(66,218,169,.32);display:grid}.v780-result-box small{color:var(--muted)}
.v780-full-rosters{margin-top:18px;border-top:1px solid #243752;padding-top:14px}.v780-full-rosters summary{cursor:pointer;font-weight:900;font-size:16px;color:#eaf3ff}.v780-roster-tabs{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.v780-roster-tabs>section{min-width:0}.v780-roster-head{display:flex;gap:10px;align-items:center;margin-bottom:8px}.v780-roster-head div{display:grid}.v780-roster-head small{color:var(--muted)}.v780-roster-wrap{max-height:460px;overflow:auto}.v780-roster-table{font-size:11px;white-space:nowrap}.v780-roster-table td:first-child{min-width:160px}.v780-roster-table tr.bench{opacity:.72}.v780-roster-table small{color:#78c9ff}
.v780-team-title{display:flex;align-items:center;gap:14px}.v780-squad-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v780-player-card{border:1px solid #243752;background:#0d192a;border-radius:14px;padding:12px}.v780-player-card header{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center}.v780-player-card header>div{display:grid}.v780-player-card header small,.v780-player-card footer{color:var(--muted);font-size:11px}.v780-player-card header>strong{font-size:24px;color:#59d7ff}.v780-pos{font-size:10px;font-weight:900;border-radius:7px;padding:5px 6px;background:#183553;color:#8dddff}.v780-player-attrs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 0}.v780-player-attrs span{display:grid;grid-template-columns:1fr auto;gap:4px;align-items:center;font-size:10px}.v780-player-attrs small{color:#93a8c3}.v780-player-attrs i{grid-column:1/3;height:3px;border-radius:999px;background:linear-gradient(90deg,#28c58e var(--w),#203047 var(--w));}.v780-player-card footer{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #203149;padding-top:8px}.v780-leaders{display:grid;gap:7px}.v780-leaders article{display:grid;grid-template-columns:30px auto 1fr auto;gap:10px;align-items:center;background:#0d192a;border:1px solid #243752;border-radius:11px;padding:8px 10px}.v780-leaders span{display:grid}.v780-leaders small{color:var(--muted)}.v780-leaders em{font-style:normal;font-weight:900;color:#60daa9}.v780-inline-team{border:0;background:none;color:inherit;padding:0;cursor:pointer}
@media(max-width:980px){.v780-test-controls{grid-template-columns:1fr 1fr}.v780-test-controls>b{display:none}.v780-test-controls .btn{grid-column:1/3}.v780-arena-grid{grid-template-columns:1fr}.v780-roster-tabs{grid-template-columns:1fr}.v780-squad-grid{grid-template-columns:1fr}.v780-scoreboard{grid-template-columns:1fr auto 1fr;padding:14px 10px}.v780-club b{font-size:13px}.v780-club small{display:none}.v780-score strong{font-size:38px}}
@media(max-width:620px){.v780-test-controls{grid-template-columns:1fr}.v780-test-controls .btn{grid-column:auto}.v780-scoreboard{gap:8px}.v780-club{gap:6px}.v780-club b{font-size:11px;white-space:normal}.v780-score{gap:7px}.v780-score strong{font-size:32px}.v780-commentary{height:330px}.v780-player-attrs{grid-template-columns:repeat(2,1fr)}}


/* ========================================================================== */
/* Politikon v7.8.1 — Football LIVE UI + prominent club crests                */
/* ========================================================================== */
.v770-fb-logo.v781-crest{display:inline-grid;place-items:center;flex:0 0 auto;background:rgba(255,255,255,.035);border:1px solid rgba(174,205,241,.12);border-radius:14px;padding:4px;box-sizing:border-box;filter:drop-shadow(0 5px 12px rgba(0,0,0,.25))}.v770-fb-logo.v781-crest img{width:100%;height:100%;object-fit:contain;display:block}.v770-fb-logo.v781-crest.fallback{font-weight:950;font-size:12px;color:#eaf4ff;background:#14243a}.v770-fb-logo.v781-crest.sm{width:38px;height:38px}.v770-fb-logo.v781-crest.table{width:38px;height:38px}.v770-fb-logo.v781-crest.game{width:46px;height:46px}.v770-fb-logo.v781-crest.md{width:54px;height:54px}.v770-fb-logo.v781-crest.lg{width:72px;height:72px}.v770-fb-logo.v781-crest.xl{width:88px;height:88px}.v770-fb-logo.v781-crest.hero{width:94px;height:94px;border-radius:20px;padding:7px;background:rgba(255,255,255,.055);border-color:rgba(160,210,255,.22)}
.v781-football-arena{overflow:visible!important}.v781-match-sticky{position:sticky;top:8px;z-index:28;margin:-2px -2px 16px;padding:14px;border:1px solid rgba(84,193,255,.26);border-radius:20px;background:rgba(7,18,33,.965);backdrop-filter:blur(16px);box-shadow:0 18px 45px rgba(0,0,0,.34)}.v781-arena-top{margin-bottom:7px}.v781-scoreboard{margin:8px 0 10px;padding:12px 18px;background:linear-gradient(135deg,rgba(10,26,44,.98),rgba(13,23,42,.98));border-color:rgba(104,180,230,.22)}.v781-scoreboard .v780-club b{font-size:18px}.v781-scoreboard .v780-score strong{font-size:52px}.v781-stats-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:2px 2px 8px}.v781-stats-title>span{font-size:10px;letter-spacing:.12em;font-weight:950;color:#6edcff}.v781-goal-list{display:flex;justify-content:flex-end;gap:5px;flex-wrap:wrap}.v781-no-goals{font-size:11px;color:var(--muted)}.v781-goal-pill{font-size:10px;padding:4px 7px;border-radius:999px;background:rgba(53,201,142,.11);border:1px solid rgba(53,201,142,.24);white-space:nowrap}.v781-goal-pill.away{background:rgba(80,159,255,.11);border-color:rgba(80,159,255,.25)}
.v781-stats-strip .v780-teamstats{display:grid;grid-template-columns:repeat(8,minmax(90px,1fr));gap:6px;overflow-x:auto;padding-bottom:2px}.v781-stats-strip .v780-teamstats>div{display:grid;grid-template-columns:1fr;gap:1px;min-width:90px;padding:7px 8px}.v781-stats-strip .v780-teamstats>div b{text-align:center!important;font-size:15px;line-height:1.1}.v781-stats-strip .v780-teamstats>div span{order:-1;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.v781-stats-strip .v780-teamstats>div b:first-child:after{content:' :';color:#536d8c}.v781-stats-strip .v780-teamstats>div b:first-child,.v781-stats-strip .v780-teamstats>div b:last-child{display:inline}.v781-stats-strip .v780-teamstats>div{grid-template-columns:1fr auto 1fr}.v781-stats-strip .v780-teamstats>div span{grid-column:1/4;grid-row:1}.v781-stats-strip .v780-teamstats>div b:first-child{grid-column:1;grid-row:2}.v781-stats-strip .v780-teamstats>div b:last-child{grid-column:3;grid-row:2}.v781-stats-strip .v780-teamstats>div b:first-child:after{content:''}
.v781-arena-body{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(230px,.55fr);gap:16px}.v781-section-title{display:flex;align-items:center;justify-content:space-between}.v781-section-title h4{margin:0 0 9px}.v781-section-title span{font-size:11px;color:var(--muted)}.v781-commentary{height:480px}.v781-match-side{align-self:start;position:sticky;top:330px}.v781-side-crests{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;margin-top:12px;padding:12px;border:1px solid #263b58;border-radius:15px;background:#0b1728}.v781-side-crests article{display:grid;place-items:center;gap:5px}.v781-side-crests>span{font-size:10px;font-weight:950;color:#66dfff}.v781-full-rosters{scroll-margin-top:320px}
.v781-live-chip{min-width:245px;grid-template-columns:auto 1fr auto!important;align-items:center!important;gap:9px!important}.v781-live-chip>span{display:grid;gap:2px}.v781-live-chip em{font-style:normal;font-size:10px;color:#ff788a;font-weight:900}.v781-live-chip b{font-size:13px}.v781-fb-table .v781-team-link{gap:10px}.v781-fb-table tbody tr:hover{background:rgba(61,182,255,.06)}.v781-fb-game{grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr) auto!important;min-height:62px}.v781-fb-game>div{gap:8px!important}.v781-fb-game>div:last-of-type{justify-content:flex-end}.v781-fb-game .v780-inline-team{display:grid;text-align:left}.v781-fb-game>div:last-of-type .v780-inline-team{text-align:right}.v781-fb-game .v780-inline-team small{display:block;font-size:9px;color:var(--muted);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1000px){.v781-match-sticky{top:4px}.v770-fb-logo.v781-crest.hero{width:76px;height:76px}.v781-scoreboard .v780-score strong{font-size:44px}.v781-arena-body{grid-template-columns:1fr}.v781-match-side{position:static;display:none}.v781-stats-strip .v780-teamstats{grid-template-columns:repeat(8,110px)}}
@media(max-width:650px){.v781-match-sticky{padding:9px;border-radius:15px}.v781-arena-top small{display:none}.v770-fb-logo.v781-crest.hero{width:58px;height:58px;padding:4px}.v781-scoreboard{padding:8px;gap:7px}.v781-scoreboard .v780-club{gap:5px}.v781-scoreboard .v780-club b{font-size:11px;white-space:normal}.v781-scoreboard .v780-club small{display:none}.v781-scoreboard .v780-score{gap:5px}.v781-scoreboard .v780-score strong{font-size:34px}.v781-scoreboard .v780-score span{min-width:32px;font-size:10px}.v781-stats-title{align-items:flex-start}.v781-goal-list{max-width:70%;overflow-x:auto;flex-wrap:nowrap}.v781-commentary{height:380px}.v781-fb-game{grid-template-columns:1fr auto 1fr!important}.v781-fb-game>button{grid-column:1/4}.v781-fb-game .v780-inline-team small{display:none}.v770-fb-logo.v781-crest.game{width:38px;height:38px}.v770-fb-logo.v781-crest.table{width:32px;height:32px}}

/* Politikon v7.8.3 — full football rounds + scorer tables */
.v783-scorers-card{margin-top:22px;padding-top:20px;border-top:1px solid rgba(148,163,184,.18)}
.v783-scorer-table td,.v783-world-table td{vertical-align:middle}
.v783-scorer-club{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.v783-round-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;margin:4px 0 14px;border:1px solid rgba(56,189,248,.28);border-radius:14px;background:linear-gradient(135deg,rgba(14,165,233,.10),rgba(15,23,42,.32))}
.v783-round-banner h4{margin:2px 0 0;font-size:20px}.v783-round-banner>div:last-child{text-align:right}.v783-round-banner small{display:block;margin-top:4px;color:var(--muted)}
.v783-round-games{max-height:560px;overflow:auto;padding-right:4px}
.v783-world-leaders{margin-top:18px}.v783-world-table .v770-fb-logo{flex:0 0 auto}
@media(max-width:720px){.v783-round-banner{align-items:flex-start;flex-direction:column}.v783-round-banner>div:last-child{text-align:left}.v783-world-table th:nth-child(4),.v783-world-table td:nth-child(4),.v783-world-table th:nth-child(8),.v783-world-table td:nth-child(8){display:none}}

/* v7.8.4 — daily complete-round rhythm */
.v784-round-rhythm{margin-bottom:14px}.v784-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.v784-slots>div{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(90,180,255,.22);border-radius:14px;background:rgba(7,21,42,.72)}.v784-slots b{font-size:1.25rem;color:#67d8ff}.v784-slots span{color:#b7c6da;font-size:.86rem}@media(max-width:760px){.v784-slots{grid-template-columns:1fr}.v784-round-rhythm{position:relative}}

/* ========================================================================== */
/* Politikon v7.9.0 — Central & Chairman RPG                                 */
/* ========================================================================== */
.v790-central .v720-central-hero{align-items:flex-start}.v790-mission-card{overflow:hidden}.v790-mission-scene{margin:10px 0 14px;border:1px solid rgba(125,177,230,.2);border-radius:16px;overflow:hidden;background:#0a1728}.v790-scene-art{height:128px;position:relative;overflow:hidden;background:linear-gradient(180deg,#173c63 0 52%,#224f45 52% 67%,#172536 67% 100%)}.v790-mission-scene.compact .v790-scene-art{height:102px}.v790-scene-sky{position:absolute;inset:0;background:radial-gradient(circle at 78% 22%,rgba(255,231,145,.52) 0 4%,transparent 4.5%),linear-gradient(115deg,transparent 0 58%,rgba(255,255,255,.06) 58% 61%,transparent 61%)}.v790-scene-road{position:absolute;left:37%;bottom:-18px;width:38%;height:86px;background:#29394b;transform:perspective(110px) rotateX(18deg);clip-path:polygon(38% 0,62% 0,100% 100%,0 100%)}.v790-scene-road:after{content:"";position:absolute;left:49%;top:10px;width:3px;height:75px;background:repeating-linear-gradient(#e6d993 0 9px,transparent 9px 17px)}.v790-scene-car{position:absolute;left:48%;bottom:12px;font-size:28px;filter:drop-shadow(0 6px 5px rgba(0,0,0,.45));transform:translateX(-50%)}.v790-scene-landmark{position:absolute;right:9%;bottom:22px;font-size:58px;filter:drop-shadow(0 6px 9px rgba(0,0,0,.32))}.v790-scene-art>em{position:absolute;left:12px;top:10px;font-style:normal;font-size:10px;font-weight:950;letter-spacing:.08em;padding:5px 8px;border-radius:999px;background:rgba(6,17,31,.72);border:1px solid rgba(133,201,255,.23);color:#b8e7ff}.tone-industry .v790-scene-art{background:linear-gradient(180deg,#23394f 0 53%,#4a4937 53% 68%,#1e2d3d 68%)}.tone-media .v790-scene-art{background:linear-gradient(180deg,#35234d 0 52%,#334e49 52% 67%,#1c2338 67%)}.tone-care .v790-scene-art{background:linear-gradient(180deg,#244b63 0 52%,#4b6c62 52% 67%,#1b2e3b 67%)}.tone-sport .v790-scene-art{background:linear-gradient(180deg,#21476b 0 52%,#27613f 52% 68%,#17263a 68%)}.tone-housing .v790-scene-art{background:linear-gradient(180deg,#293a62 0 52%,#4c584d 52% 67%,#1d2a3b 67%)}.tone-municipal .v790-scene-art{background:linear-gradient(180deg,#243e67 0 52%,#495b48 52% 67%,#1c2939 67%)}.v790-route{padding:9px 11px;background:rgba(6,16,29,.92)}.v790-route>small{display:block;font-size:8px;letter-spacing:.14em;color:#5dcaf5;font-weight:950;margin-bottom:6px}.v790-route>div{display:flex;align-items:center;gap:5px;overflow:hidden}.v790-route span{display:flex;align-items:center;gap:5px;min-width:0;font-size:9px;color:#a9b8cc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v790-route span i{width:7px;height:7px;border-radius:50%;background:#48bfe8;box-shadow:0 0 0 3px rgba(72,191,232,.1)}.v790-route span.destination{color:#ecf7ff;font-weight:800}.v790-route span.destination i{background:#26d68a;box-shadow:0 0 0 3px rgba(38,214,138,.12)}.v790-route b{color:#4c6078}.v790-active .v790-mission-scene{margin:5px 0 18px}
.v790-contact-footer{align-items:flex-end!important}.v790-contact-footer>span small{display:block;color:var(--muted);margin-top:2px}.v790-contact-footer>div{display:flex;gap:6px}.v790-market-prices{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0 12px;padding:10px 12px;border:1px solid rgba(73,190,255,.18);border-radius:13px;background:rgba(33,93,132,.08)}.v790-market-prices span{font-size:10px;color:var(--muted);padding:5px 8px;border-radius:8px;background:rgba(255,255,255,.03)}.v790-market-prices span b{color:var(--text);margin-left:4px}.v790-market-prices em{margin-left:auto;font-style:normal;font-size:10px;color:#72e5b0}
.v790-hall-tactics{display:grid;grid-template-columns:1.6fr 1fr .7fr .7fr;gap:9px;margin:14px 0}.v790-hall-tactics article{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid rgba(122,161,210,.18);border-radius:14px;background:rgba(255,255,255,.025)}.v790-hall-tactics article>span:first-child{font-size:27px}.v790-hall-tactics small,.v790-hall-tactics p,.v790-hall-tactics span{display:block;font-size:9px;color:var(--muted)}.v790-hall-tactics b{display:block;font-size:13px}.v790-hall-tactics p{margin:3px 0 0;line-height:1.35}.v790-hall-tactics .counter{border-color:rgba(37,211,139,.22);background:rgba(37,211,139,.055)}.v790-hall-tactics .counter b{color:#75e8b2}
.v790-chairman-rpg{margin-top:18px}.v790-career-targets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:14px 0}.v790-career-target{display:grid;grid-template-columns:38px 1fr;gap:9px;align-items:center;text-align:left;padding:11px;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.02);color:var(--text);cursor:pointer}.v790-career-target:hover{border-color:rgba(66,193,255,.36);background:rgba(66,193,255,.05)}.v790-career-target.active{border-color:rgba(44,214,144,.46);box-shadow:inset 0 0 0 1px rgba(44,214,144,.12);background:rgba(44,214,144,.065)}.v790-career-target>span{font-size:23px}.v790-career-target b,.v790-career-target small{display:block}.v790-career-target small{font-size:9px;color:var(--muted);margin:2px 0 7px}.v790-career-target i{display:block;height:4px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}.v790-career-target u{display:block;height:100%;background:linear-gradient(90deg,#38bdf8,#2dd4bf,#4ade80)}.v790-personal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:15px 0}.v790-personal-grid label{display:grid;gap:5px;font-size:10px;color:var(--muted)}.v790-personal-grid .wide{grid-column:1/-1}
@media(max-width:1050px){.v790-career-targets{grid-template-columns:repeat(2,1fr)}.v790-hall-tactics{grid-template-columns:1fr 1fr}.v790-hall-tactics article:first-child{grid-column:1/-1}}
@media(max-width:680px){.v790-career-targets,.v790-personal-grid,.v790-hall-tactics{grid-template-columns:1fr}.v790-hall-tactics article:first-child{grid-column:auto}.v790-contact-footer{align-items:stretch!important;flex-direction:column}.v790-contact-footer>div{width:100%}.v790-contact-footer>div .btn{flex:1}.v790-scene-art{height:100px}.v790-route>div{overflow-x:auto}.v790-route span{overflow:visible}.v790-market-prices em{width:100%;margin-left:0}}


/* v7.9.1 lazy sport loading */
.v791-sport-loading{min-height:220px;display:flex;flex-direction:column;justify-content:center;gap:12px}.v791-sport-loading .skeleton-line{height:16px;border-radius:999px;background:linear-gradient(90deg,rgba(125,211,252,.08),rgba(125,211,252,.22),rgba(125,211,252,.08));background-size:200% 100%;animation:v791sk 1.25s linear infinite}.v791-sport-loading .skeleton-line:last-child{width:68%}@keyframes v791sk{to{background-position:-200% 0}}

/* ========================================================================== */
/* Politikon v8.0.0 — closable sport Match Centers + Tennis World             */
/* ========================================================================== */
.v780-football-arena,.v750-live-arena,.v800-tennis-arena{position:relative}
.v800-match-close{position:absolute;z-index:25;top:14px;right:14px;width:40px;height:40px;border-radius:12px;border:1px solid rgba(148,163,184,.3);background:rgba(7,16,31,.88);color:#dbeafe;font-size:28px;line-height:1;cursor:pointer;display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.22);backdrop-filter:blur(10px)}
.v800-match-close:hover{border-color:#38bdf8;background:#10243d;color:white;transform:translateY(-1px)}
.v800-match-closed{margin:12px 0 22px;border:1px dashed rgba(56,189,248,.28);border-radius:18px;background:rgba(8,23,43,.58);padding:24px;text-align:center}

.v800-tennis-hero{overflow:hidden;background:radial-gradient(circle at 92% 12%,rgba(34,197,94,.18),transparent 34%),radial-gradient(circle at 5% 100%,rgba(56,189,248,.14),transparent 38%),#0d1b34}
.v800-tennis-hero h2{font-size:clamp(28px,4vw,46px);margin:.2rem 0 .65rem}.v800-tennis-hero p{max-width:860px;color:#b8c8df}
.v800-mode-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.v800-mode-cards article{border:1px solid #20344f;background:#0c182c;border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:10px}.v800-mode-cards article>b{font-size:17px}.v800-mode-cards article p{margin:0;color:#9fb0ca;min-height:48px}.v800-support-pick{display:grid;grid-template-columns:85px 1fr;gap:8px}.v800-support-pick .btn{grid-column:1/-1}.v800-support-pick select,.v800-tennis-test-controls select{background:#071426;border:1px solid #28415e;color:#e8f0fc;border-radius:10px;padding:10px}
.danger-text{color:#fca5a5}
.v800-focus{background:linear-gradient(145deg,rgba(8,31,48,.96),rgba(14,24,47,.98))}.v800-power-orb{width:94px;height:94px;border-radius:50%;border:2px solid rgba(52,211,153,.55);display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle,rgba(16,185,129,.2),transparent 68%)}.v800-power-orb small{font-size:10px;color:#8ee9cb}.v800-power-orb b{font-size:31px}
.v800-tennis-attrs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.v800-tennis-attrs span{background:#0a172a;border:1px solid #20334d;border-radius:12px;padding:10px;display:grid;grid-template-columns:1fr auto;gap:5px}.v800-tennis-attrs small{color:#91a5c1}.v800-tennis-attrs i{grid-column:1/-1;height:5px;background:#162945;border-radius:99px;overflow:hidden}.v800-tennis-attrs i u{display:block;height:100%;background:linear-gradient(90deg,#22c55e,#38bdf8);border-radius:inherit}
.v800-threats{margin-top:16px;padding:14px;border-radius:14px;background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.2)}.v800-threats>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:10px}.v800-threats span{display:flex;flex-direction:column;gap:3px;border:1px solid rgba(245,158,11,.16);background:#101a2b;border-radius:10px;padding:9px}.v800-threats em{font-style:normal;color:#67e8f9}
.v800-training-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.v800-ranking-around{margin-top:16px;border-top:1px solid #20334e;padding-top:14px;display:grid;gap:6px}.v800-ranking-around>span{display:grid;grid-template-columns:55px 32px 1fr auto;align-items:center;background:#0b1729;border-radius:9px;padding:8px 10px}.v800-ranking-around>span.me{outline:1px solid #22c55e;background:rgba(34,197,94,.08)}.v800-ranking-around em{font-style:normal;color:#67e8f9}
.v800-tennis-test-controls{display:grid;grid-template-columns:1fr auto 1fr 120px auto;align-items:center;gap:10px}
.v800-tournament-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}.v800-tournament-card{background:#0c182c;border:1px solid #20344f;border-radius:18px;padding:17px}.v800-tournament-card header{display:flex;align-items:center;justify-content:space-between}.v800-tournament-card h3{margin:10px 0 5px}.v800-tournament-card p{color:#9eb0c8}.v800-tournament-status{display:flex;flex-direction:column;gap:4px;padding:10px 0}.v800-tournament-status span{color:#aebed2}.v800-tournament-card .btn{width:100%;margin-top:8px}.v800-tournament-full{grid-column:1/-1}
.v800-tennis-rounds{display:grid;gap:10px}.v800-tennis-rounds details{background:#091627;border:1px solid #20344d;border-radius:14px;overflow:hidden}.v800-tennis-rounds summary{padding:12px 14px;cursor:pointer;font-weight:800}.v800-tennis-rounds summary small{float:right;color:#8fa3bd}.v800-tennis-rounds details>div{padding:0 10px 10px;display:grid;gap:6px}.v800-tennis-match{display:grid;grid-template-columns:minmax(0,1fr) 160px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;background:#0f1d32;border-radius:10px}.v800-tennis-match>div{display:grid;grid-template-columns:28px 1fr;column-gap:5px}.v800-tennis-match>div b,.v800-tennis-match>div small{grid-column:2}.v800-tennis-match>strong{text-align:center;color:#d8e7fa}.v800-tennis-match.live{outline:1px solid rgba(34,197,94,.45);background:rgba(16,88,62,.15)}
.v800-rankings .table-wrap{max-height:620px}.v800-rank-pager{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:14px}.v800-real-tag{color:#67e8f9;margin-left:5px}.v800-tennis-history{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v800-tennis-history article{display:grid;grid-template-columns:auto 1fr;gap:5px 10px;align-items:center;background:#0b1729;border:1px solid #20334d;border-radius:12px;padding:11px}.v800-tennis-history article>b,.v800-tennis-history article>strong,.v800-tennis-history article>small{grid-column:2}
.v800-tennis-arena{background:linear-gradient(145deg,#081c25,#0d1830);border-color:rgba(34,197,94,.4)}.v800-tennis-score{display:grid;grid-template-columns:1fr 200px 1fr;align-items:center;gap:16px;padding:20px 50px 20px 20px;border:1px solid #1f3c4f;border-radius:18px;background:#081729}.v800-tennis-score article{display:grid;grid-template-columns:44px 1fr;gap:3px 8px;align-items:center}.v800-tennis-score article>span{font-size:30px;grid-row:1/3}.v800-tennis-score article>b{font-size:20px}.v800-tennis-score article small{color:#93a8c2}.v800-tennis-score>div{text-align:center;display:flex;flex-direction:column;gap:3px}.v800-tennis-score>div strong{font-size:38px;color:#86efac}.v800-tennis-score>div b{font-size:17px}.v800-tennis-score>div em{font-style:normal;color:#a8bad0}.v800-tennis-speed{display:flex;gap:8px;align-items:center;margin:12px 0}.v800-tennis-feed{max-height:520px;overflow:auto;display:flex;flex-direction:column;gap:6px;padding-right:4px}.v800-tennis-feed>div{display:grid;grid-template-columns:100px 62px 1fr;gap:10px;align-items:center;padding:10px;border-radius:10px;background:#0e1b2f;border:1px solid #1f324b}.v800-tennis-feed>div.game,.v800-tennis-feed>div.set{border-color:rgba(34,197,94,.35);background:rgba(16,88,62,.13)}.v800-tennis-feed time{color:#67e8f9}.v800-tennis-feed b{color:#e5f7ee}.v800-tennis-feed span{color:#c8d5e7}

@media(max-width:900px){.v800-mode-cards,.v800-tournament-list,.v800-tennis-history{grid-template-columns:1fr}.v800-tennis-attrs{grid-template-columns:repeat(2,minmax(0,1fr))}.v800-threats>div{grid-template-columns:1fr 1fr}.v800-training-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v800-tennis-test-controls{grid-template-columns:1fr}.v800-tennis-score{grid-template-columns:1fr;padding:50px 14px 14px}.v800-tennis-score article{justify-self:stretch}.v800-tennis-match{grid-template-columns:1fr}.v800-tennis-match>strong{text-align:left}.v800-tennis-feed>div{grid-template-columns:70px 50px 1fr}.v800-match-close{top:10px;right:10px}}


/* ========================================================================== */
/* Politikon v8.0.1 — Tennis career loop + Daily Circuit                      */
/* ========================================================================== */
.v801-career-mode-locked{display:flex;align-items:center;justify-content:space-between;gap:18px;border-color:rgba(34,197,94,.28);background:linear-gradient(135deg,rgba(16,70,54,.18),rgba(10,24,44,.97))}.v801-career-mode-locked h3{margin:4px 0}.v801-career-mode-locked p{margin:0}
.v801-training-progress{height:7px;border-radius:999px;background:#12243c;overflow:hidden;margin:0 0 12px}.v801-training-progress i{display:block;height:100%;background:linear-gradient(90deg,#22c55e,#38bdf8);border-radius:inherit}
.v801-daily-circuit{border-color:rgba(168,85,247,.3);background:radial-gradient(circle at 100% 0,rgba(168,85,247,.11),transparent 36%),#0d1a31}.v801-daily-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.v801-daily-card{border:1px solid #283b59;border-radius:16px;background:#0a172a;padding:14px;display:flex;flex-direction:column;gap:8px}.v801-daily-card.entered{border-color:rgba(34,197,94,.5);box-shadow:inset 0 0 0 1px rgba(34,197,94,.1)}.v801-daily-card header{display:flex;justify-content:space-between;align-items:center}.v801-daily-card h4{font-size:17px;margin:2px 0}.v801-daily-card p{color:#9eb0c9;margin:0}.v801-hourly{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}.v801-hourly span{font-size:9px;text-align:center;padding:6px 3px;border:1px solid #23364e;border-radius:8px;color:#9fdcf2;background:#0c1c31}.v801-daily-card .btn{width:100%;margin-top:auto}
.v801-tennis-arena .v800-tennis-feed>div.advantage{border-color:rgba(245,158,11,.55);background:rgba(245,158,11,.09)}.v801-tennis-arena .v800-tennis-feed>div.end{border-color:rgba(34,197,94,.55);background:rgba(34,197,94,.10)}
.v801-fav-next{margin-top:16px;border:1px solid rgba(34,197,94,.28);background:linear-gradient(135deg,rgba(13,80,59,.2),rgba(8,27,44,.92));border-radius:16px;padding:14px}.v801-fav-next>small{display:block;color:#6ee7b7;font-weight:900;letter-spacing:.07em}.v801-fav-next>b{display:block;font-size:17px;margin:4px 0 10px}.v801-fav-next>div{display:grid;grid-template-columns:58px 1fr 58px;gap:12px;align-items:center}.v801-fav-next>div>span{text-align:center;display:grid;gap:2px}.v801-fav-next em{font-style:normal;color:#7dd3fc;font-size:10px;text-transform:uppercase}.v801-fav-next strong{font-size:14px}
@media(max-width:900px){.v801-daily-grid{grid-template-columns:1fr}.v801-hourly{grid-template-columns:repeat(5,minmax(56px,1fr));overflow-x:auto}.v801-career-mode-locked{align-items:stretch;flex-direction:column}.v801-fav-next>div{grid-template-columns:48px 1fr 48px}}


/* ========================================================================== */
/* Politikon v8.1.0 — archived Match Centers + personal finance / life sim     */
/* ========================================================================== */
.v810-inline-close{align-self:center;border:1px solid rgba(248,113,113,.38);background:rgba(73,18,28,.45);color:#fecaca;border-radius:12px;padding:9px 13px;font-weight:900;cursor:pointer;white-space:nowrap}.v810-inline-close:hover{background:rgba(127,29,29,.72);color:#fff}
.v810-hockey-detail-row{display:flex;justify-content:flex-end;margin-top:8px;padding-top:8px;border-top:1px solid rgba(148,163,184,.12)}
.v810-life-panel{background:radial-gradient(circle at 100% 0,rgba(16,185,129,.12),transparent 34%),radial-gradient(circle at 0 100%,rgba(59,130,246,.10),transparent 35%),#0d1a31}.v810-wallet{min-width:210px;padding:14px 18px;border-radius:18px;border:1px solid rgba(52,211,153,.38);background:rgba(4,45,42,.34);text-align:right}.v810-wallet small{display:block;color:#86efac;font-weight:900}.v810-wallet b{display:block;font-size:27px;margin-top:3px}.v810-fin-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.v810-fin-kpis article{display:flex;flex-direction:column;gap:5px;background:#09172a;border:1px solid #213653;border-radius:14px;padding:13px}.v810-fin-kpis small,.v810-fin-kpis span{color:#92a7c2}.v810-fin-kpis b{font-size:17px}.v810-life-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:14px}.v810-life-grid>article{background:#09172a;border:1px solid #203651;border-radius:16px;padding:15px}.v810-life-grid h3{margin-top:0}.v810-property-shop{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v810-property-shop button{border:1px solid #29415e;background:#0c1c31;color:#e8f1ff;border-radius:13px;padding:11px;text-align:left;display:grid;gap:5px;cursor:pointer}.v810-property-shop button:hover:not(:disabled){border-color:#38bdf8;transform:translateY(-1px)}.v810-property-shop button:disabled{opacity:.42;cursor:not-allowed}.v810-property-shop small{color:#90a5c0}.v810-property-shop strong{color:#86efac}.v810-owned-property{display:grid;gap:8px;padding:14px;border:1px solid rgba(52,211,153,.3);border-radius:14px;background:rgba(16,88,62,.12)}.v810-owned-property>b{font-size:20px}.v810-owned-property span{color:#9eb1c9}.v810-personal-sports{display:grid;gap:12px}.v810-personal-sports>div{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.v810-personal-sports>div>b{width:100%}.v810-ledger{margin-top:15px;border:1px solid #203650;border-radius:14px;overflow:hidden}.v810-ledger summary{padding:12px 14px;font-weight:900;cursor:pointer;background:#0b192d}.v810-ledger>div{padding:8px 12px}.v810-ledger p{display:grid;grid-template-columns:150px 1fr auto;gap:10px;margin:0;padding:8px;border-bottom:1px solid rgba(148,163,184,.10)}.v810-ledger p:last-child{border-bottom:0}.v810-ledger p span{color:#8095b1;font-size:12px}.v810-ledger strong.plus{color:#86efac}.v810-ledger strong.minus{color:#fca5a5}
@media(max-width:900px){.v780-arena-top,.v750-live-head{padding-right:0;flex-wrap:wrap}.v810-inline-close{order:3;margin-left:auto}.v810-fin-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.v810-life-grid{grid-template-columns:1fr}.v810-property-shop{grid-template-columns:1fr}.v810-wallet{width:100%;text-align:left}.v810-ledger p{grid-template-columns:1fr auto}.v810-ledger p span{grid-column:1/-1}}

/* ========================================================================== */
/* Politikon v8.2.0 — tennis / chairman / parliament rebuild                  */
/* ========================================================================== */
.v820-tennis-reward{display:grid;gap:.28rem;margin:.8rem 0;padding:.7rem .8rem;border:1px solid rgba(34,197,94,.28);background:rgba(16,185,129,.08);border-radius:14px}.v820-tennis-reward span{display:flex;justify-content:space-between;gap:.5rem;color:#d7fbe8}.v820-tennis-reward small{color:#9fb7cb}.v820-tennis-career-summary{border-color:rgba(45,212,191,.32)}.v820-power-orb{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;align-content:center;border:2px solid rgba(45,212,191,.55);background:rgba(13,148,136,.08)}.v820-power-orb small{font-size:.62rem;color:#8be6d6}.v820-power-orb b{font-size:1.7rem}.v820-career-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin:1rem 0}.v820-career-kpis article{padding:.8rem;border:1px solid #223652;background:#0b1729;border-radius:13px}.v820-career-kpis small,.v820-career-kpis b{display:block}.v820-career-kpis b{font-size:1.2rem;margin-top:.2rem}.v820-tennis-recent{display:grid;gap:.45rem}.v820-tennis-recent>div{display:grid;grid-template-columns:30px minmax(120px,1fr) auto minmax(160px,1fr);gap:.55rem;align-items:center;padding:.55rem .65rem;border:1px solid #223652;border-radius:10px;background:#0a1626}.v820-tennis-recent>div>span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:900}.v820-tennis-recent .win>span{background:rgba(34,197,94,.18);color:#66e6a3}.v820-tennis-recent .loss>span{background:rgba(239,68,68,.15);color:#ff8a8a}.v820-tennis-recent em{font-style:normal;font-weight:800}.v820-tennis-recent small{color:#93a8c2}

.v820-chairman-hero{display:flex;justify-content:space-between;gap:1rem;align-items:center;background:linear-gradient(135deg,rgba(12,26,48,.98),rgba(12,23,43,.96));border-color:rgba(56,189,248,.28)}.v820-chairman-hero h1,.v820-parliament h1,.v820-laws h1{margin:.18rem 0;font-size:clamp(1.55rem,2.4vw,2.2rem)}.v820-chairman-office{min-width:250px;padding:1rem;border:1px solid rgba(56,189,248,.28);border-radius:16px;background:rgba(2,12,25,.38)}.v820-chairman-office small,.v820-chairman-office b,.v820-chairman-office span{display:block}.v820-chairman-office small{color:#6ed7ff;font-weight:900;letter-spacing:.08em}.v820-chairman-office b{font-size:1.18rem;margin:.28rem 0}.v820-chairman-office span{color:#9db0c9}.v820-attribute-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:1rem 0}.v820-attribute-grid article{padding:.8rem;border-radius:13px;background:#0a1627;border:1px solid #223650}.v820-attribute-grid small,.v820-attribute-grid b{display:block}.v820-attribute-grid b{font-size:1.25rem}.v820-attribute-grid i{display:block;height:5px;background:#172942;border-radius:99px;margin-top:.55rem;overflow:hidden}.v820-attribute-grid i u{display:block;height:100%;background:linear-gradient(90deg,#2dd4bf,#38bdf8);text-decoration:none}.v820-chairman-section{margin-top:1.1rem;padding-top:1rem;border-top:1px solid #223650}.v820-chairman-folds{display:grid;gap:.65rem}.v820-chairman-folds>details{border:1px solid #223650;border-radius:14px;background:#091526;overflow:hidden}.v820-chairman-folds>details>summary{padding:1rem 1.1rem;font-weight:900;cursor:pointer}.v820-fold-body{padding:0 1rem 1rem}.v820-leader-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.v820-leader-actions article{border:1px solid #243852;background:#0c192b;border-radius:12px;padding:.8rem}.v820-leader-actions p{min-height:44px;color:#a7bad2;font-size:.84rem}.v820-leader-actions span{display:block;font-weight:800;margin:.4rem 0}.v820-cadres details{border:1px solid #253b58;border-radius:14px;padding:.2rem}.v820-cadres summary{padding:.9rem 1rem;font-weight:900;cursor:pointer}.v820-cadre-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;padding:.2rem .8rem .9rem;max-height:520px;overflow:auto}.v820-cadre-grid article{padding:.7rem;border:1px solid #243852;border-radius:10px;background:#0a1626}.v820-cadre-grid b,.v820-cadre-grid span,.v820-cadre-grid small{display:block}.v820-cadre-grid span{color:#8edbff;margin:.15rem 0}.v820-cadre-grid small{color:#94a8c0}

.v820-parliament{min-height:0!important;height:auto!important;overflow:visible!important}.v820-parliament-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin:1rem 0}.v820-parliament-kpis article{padding:.8rem 1rem;border:1px solid #263a55;border-radius:13px;background:#0a1627}.v820-parliament-kpis b{display:block;font-size:1.55rem}.v820-parliament-kpis small{color:#93a8c2}.v820-parliament-kpis .gov{border-color:rgba(34,197,94,.34)}.v820-parliament-kpis .opp{border-color:rgba(244,63,94,.32)}.v820-parliament-balance{display:flex;height:12px;border-radius:999px;overflow:hidden;background:#17263a;margin-bottom:1rem}.v820-parliament-balance .gov{background:linear-gradient(90deg,#10b981,#22c55e)}.v820-parliament-balance .opp{background:linear-gradient(90deg,#f43f5e,#fb7185)}.v820-parliament-section{margin-top:1rem;padding:1rem;border:1px solid #223650;border-radius:15px;background:rgba(6,16,30,.4)}.v820-clubs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.v820-clubs article{border:1px solid #263a55;border-left:4px solid var(--party);background:#0b1728;border-radius:11px;padding:.7rem}.v820-clubs article>div{display:grid;grid-template-columns:8px 1fr auto;gap:.45rem;align-items:center}.v820-clubs article>div i{width:8px;height:8px;border-radius:50%;background:var(--party)}.v820-clubs article u{display:block;height:4px;background:#192a42;border-radius:99px;margin:.5rem 0;overflow:hidden;text-decoration:none}.v820-clubs article u em{display:block;height:100%;background:var(--party)}.v820-clubs small{color:#9bb0c9}.v820-club-own{display:flex;gap:.6rem;margin:.7rem 0}.v820-club-own span{min-width:120px;padding:.65rem;border:1px solid #253a54;border-radius:10px}.v820-club-own b,.v820-club-own small{display:block}.v820-club-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.v820-club-actions .btn{text-align:left;min-height:72px}.v820-club-actions b,.v820-club-actions small{display:block}.v820-parliament-links{display:flex;gap:.6rem;margin:1rem 0;flex-wrap:wrap}.v820-mp-directory{border:1px solid #263a55;border-radius:14px;overflow:hidden}.v820-mp-directory>summary{padding:1rem;font-weight:900;cursor:pointer}.v820-mp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;padding:.7rem;max-height:520px;overflow:auto}.v820-mp-grid article{display:grid;grid-template-columns:7px 1fr;column-gap:.45rem;padding:.55rem;background:#0a1626;border:1px solid #223650;border-radius:9px}.v820-mp-grid i{grid-row:1/4;width:7px;border-radius:5px;background:var(--party)}.v820-mp-grid b,.v820-mp-grid span,.v820-mp-grid small{grid-column:2}.v820-mp-grid span{color:#7dd3fc}.v820-mp-grid small{color:#90a5bd}

.v820-role-workbench{border-color:rgba(56,189,248,.3)}.v820-role-workbench.government{border-color:rgba(34,197,94,.3)}.v820-role-workbench.opposition{border-color:rgba(244,63,94,.3)}.v820-role-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}.v820-role-actions article{padding:.8rem;border:1px solid #263a55;border-radius:12px;background:#0a1627;display:flex;flex-direction:column}.v820-role-actions header{display:flex;gap:.45rem;align-items:center}.v820-role-actions header span{font-size:1.2rem}.v820-role-actions p{color:#a0b4cc;font-size:.82rem;flex:1}.v820-role-actions footer{display:grid;gap:.4rem}.v820-role-actions footer small{color:#8fa6bf}.v820-role-actions article.cooldown{opacity:.7}

.v820-laws{min-height:0!important}.v820-law-tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.v820-law-tabs a{padding:.55rem .75rem;border:1px solid #2a405d;border-radius:999px;color:#b8dfff;text-decoration:none;background:#0a1728}.v820-law-section{padding:1rem 0;border-top:1px solid #223650}.v820-law-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}.v820-law-template-grid button{appearance:none;text-align:left;padding:.85rem;border:1px solid #2a405d;border-radius:12px;background:#0b182a;color:#e7effc;cursor:pointer;min-height:112px}.v820-law-template-grid button:hover:not(:disabled){border-color:#38bdf8;transform:translateY(-1px)}.v820-law-template-grid button:disabled{opacity:.45;cursor:not-allowed}.v820-law-template-grid span,.v820-law-template-grid b,.v820-law-template-grid small{display:block}.v820-law-template-grid span{font-size:.7rem;color:#67d8ff;text-transform:uppercase;font-weight:900}.v820-law-template-grid b{font-size:.96rem;margin:.35rem 0;line-height:1.25}.v820-law-template-grid small{color:#9fb1c8;line-height:1.35}.v820-law-list{display:grid;gap:.7rem}.v820-law-card{padding:1rem;border:1px solid #29405c;background:#0a1728;border-radius:14px;color:#eaf2ff}.v820-law-card.closed{opacity:.82}.v820-law-card header{display:flex;justify-content:space-between;gap:.7rem}.v820-law-card header h3{margin:.35rem 0 0}.v820-law-card>p{color:#a6bad0}.v820-law-progress{height:7px;background:#1a2d47;border-radius:99px;overflow:hidden;margin:.8rem 0}.v820-law-progress i{display:block;height:100%;background:linear-gradient(90deg,#38bdf8,#2dd4bf)}.v820-law-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}.v820-law-meta span{padding:.55rem;border:1px solid #223650;border-radius:10px;background:#0e1c30}.v820-law-meta b,.v820-law-meta small{display:block}.v820-law-meta small{color:#91a7c1}.v820-law-sides{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.7rem}.v820-law-sides small{padding:.55rem;border-radius:9px;background:#0d1a2d;color:#a9bad0}.v820-law-archive{margin-top:.8rem;border:1px solid #263a55;border-radius:12px}.v820-law-archive>summary{padding:.8rem 1rem;font-weight:900;cursor:pointer}.v820-law-archive .v820-law-list{padding:.7rem}

@media(max-width:1050px){.v820-career-kpis,.v820-parliament-kpis{grid-template-columns:repeat(2,1fr)}.v820-attribute-grid,.v820-clubs,.v820-club-actions,.v820-law-template-grid{grid-template-columns:repeat(2,1fr)}.v820-role-actions,.v820-cadre-grid,.v820-mp-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.v820-chairman-hero{align-items:stretch;flex-direction:column}.v820-chairman-office{min-width:0}.v820-attribute-grid,.v820-clubs,.v820-club-actions,.v820-role-actions,.v820-law-template-grid,.v820-cadre-grid,.v820-mp-grid,.v820-law-meta,.v820-law-sides{grid-template-columns:1fr}.v820-tennis-recent>div{grid-template-columns:28px 1fr auto}.v820-tennis-recent small{grid-column:2/4}.v820-parliament-kpis{grid-template-columns:repeat(2,1fr)}.v820-career-kpis{grid-template-columns:repeat(2,1fr)}}

/* ========================================================================== */
/* Politikon v8.2.1 — live/life/parliament reliability                       */
/* ========================================================================== */
.v821-daily-card.entered{box-shadow:inset 0 0 0 1px rgba(45,212,191,.5),0 14px 34px rgba(15,118,110,.08)}
.v821-enter-note{display:block;margin-top:8px;color:#8fb4c9;line-height:1.35}

.v821-life-extra{overflow:hidden}.v821-life-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.v821-life-columns>article{background:#0a172a;border:1px solid #263b57;border-radius:18px;padding:16px}.v821-life-columns h3{margin:0 0 12px}.v821-car-shop,.v821-lifestyle-shop{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v821-car-shop button,.v821-lifestyle-shop button{appearance:none;text-align:left;background:#0d1d33;color:#e9f3ff;border:1px solid #2b4262;border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:6px;cursor:pointer;min-height:118px}.v821-car-shop button:hover:not(:disabled),.v821-lifestyle-shop button:hover:not(:disabled){border-color:#28c7d9;transform:translateY(-1px)}.v821-car-shop button:disabled,.v821-lifestyle-shop button:disabled{opacity:.45;cursor:not-allowed}.v821-car-shop span,.v821-lifestyle-shop span{font-size:15px}.v821-car-shop small,.v821-lifestyle-shop small{color:#9cb0ca;line-height:1.35}.v821-car-shop em,.v821-lifestyle-shop em{font-style:normal;color:#6ee7b7;font-weight:800;margin-top:auto}.v821-owned-car{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;background:#0d1d33;border:1px solid #2b4262;border-radius:14px;padding:14px}.v821-owned-car>span{font-size:34px}.v821-owned-car div{display:flex;flex-direction:column;gap:4px}.v821-owned-car small{color:#9cb0ca}

.v821-hemicycle-section{overflow:hidden}.v821-hemicycle{position:relative;width:min(100%,920px);height:440px;margin:10px auto 0;border-radius:26px;background:radial-gradient(circle at 50% 100%,rgba(24,182,218,.14),transparent 54%),linear-gradient(180deg,#081426,#0b1930);border:1px solid #27415f;overflow:hidden}.v821-hemicycle:before{content:"";position:absolute;left:50%;bottom:-42%;width:74%;height:72%;transform:translateX(-50%);border:1px solid rgba(80,143,190,.26);border-radius:50%}.v821-hemicycle-stage{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);padding:8px 18px;border-radius:999px;background:#142642;border:1px solid #36587d;color:#9bc7e4;font-size:11px;font-weight:900;letter-spacing:.12em;z-index:3}.v821-seat{position:absolute;width:13px;height:13px;border:0;border-radius:50%;background:var(--party,#64748b);transform:translate(-50%,-50%);box-shadow:0 0 0 2px #07111f,0 0 0 3px color-mix(in srgb,var(--party,#64748b) 60%,transparent);cursor:pointer;transition:.12s transform,.12s filter;z-index:2;padding:0}.v821-seat:hover,.v821-seat.selected{transform:translate(-50%,-50%) scale(1.65);filter:brightness(1.35);z-index:5}.v821-seat.minister{box-shadow:0 0 0 2px #07111f,0 0 0 4px #facc15}.v821-seat.rebel:after{content:"!";position:absolute;inset:-7px -7px auto auto;color:#fb7185;font-size:9px;font-weight:900}.v821-mp-detail{min-height:62px;margin:12px auto 0;width:min(100%,920px);display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #253c59;border-radius:14px;background:#0a1729;color:#a9bdd4}.v821-mp-detail i{width:14px;height:40px;border-radius:7px;background:var(--party,#64748b)}.v821-mp-detail div{display:flex;flex-direction:column}.v821-mp-detail b{color:#f1f7ff}.v821-mp-detail span{font-size:13px}

.v821-live-strip .v760-live-tabs,.v821-live-strip-panel .v780-live-strip{scrollbar-width:thin}.v821-live-strip-title small,.v821-live-strip-panel .muted{color:#9ab2c8}.v750-live-feed,.v780-commentary{overflow-anchor:none}

@media(max-width:900px){.v821-life-columns{grid-template-columns:1fr}.v821-hemicycle{height:330px}.v821-seat{width:10px;height:10px}.v821-car-shop,.v821-lifestyle-shop{grid-template-columns:1fr}}


/* v8.2.2 — embedded personal life sim, impossible to miss */
.v822-life-embedded{grid-column:1/-1;margin:16px 0;border-top:1px solid #28415f;padding-top:18px}.v822-life-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.v822-life-title h3{font-size:22px;margin:3px 0 4px}.v822-life-loading{border:1px dashed #315478;border-radius:16px;padding:16px;background:#0a172a}.v822-life-loading>div{display:flex;flex-direction:column;gap:5px}.v822-life-loading small{color:#9cb0ca}.v810-life-panel .v822-life-embedded .v821-life-columns{margin-top:4px}@media(max-width:760px){.v822-life-title{flex-direction:column}.v821-car-shop,.v821-lifestyle-shop{grid-template-columns:1fr}}

/* ========================================================================== */
/* Politikon v8.3.0 — REAL LIFE SIM                                           */
/* ========================================================================== */
.v830-real-life{margin-top:18px;border-top:1px solid #294360;padding-top:20px}.v830-life-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}.v830-life-hero h3{margin:4px 0 5px;font-size:23px}.v830-budget-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}.v830-budget-grid article{background:#09182b;border:1px solid #28415f;border-radius:15px;padding:13px;display:flex;flex-direction:column;gap:4px;min-height:94px}.v830-budget-grid small{color:#8fa7c4}.v830-budget-grid b{font-size:20px}.v830-budget-grid span{font-size:12px;color:#8297b2}.v830-budget-grid .positive b{color:#6ee7b7}.v830-budget-grid .negative b{color:#fb7185}.v830-wellbeing{background:#09182b;border:1px solid #28415f;border-radius:16px;padding:14px;margin-bottom:16px}.v830-wellbeing h4{margin:0 0 10px}.v830-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.v830-stat{display:flex;flex-direction:column;gap:7px}.v830-stat>div{display:flex;justify-content:space-between;gap:8px}.v830-stat span{font-size:12px;color:#9db0c8}.v830-stat i{height:7px;background:#172b45;border-radius:999px;overflow:hidden}.v830-stat u{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#22c55e,#06b6d4)}.v830-stat u.stress{background:linear-gradient(90deg,#f59e0b,#ef4444)}.v830-stat u.happy{background:linear-gradient(90deg,#a3e635,#22c55e)}.v830-stat u.comfort{background:linear-gradient(90deg,#38bdf8,#8b5cf6)}.v830-stat u.prestige{background:linear-gradient(90deg,#f59e0b,#eab308)}.v830-accordion{display:flex;flex-direction:column;gap:9px}.v830-accordion details{background:#09182b;border:1px solid #28415f;border-radius:15px;overflow:hidden}.v830-accordion summary{cursor:pointer;padding:14px 16px;font-weight:800;font-size:15px;list-style:none}.v830-accordion summary::-webkit-details-marker{display:none}.v830-accordion summary:before{content:'▸';margin-right:9px;color:#67e8f9}.v830-accordion details[open] summary:before{content:'▾'}.v830-detail-body{padding:0 16px 16px}.v830-shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.v830-shop-grid button{appearance:none;text-align:left;background:#0d1d33;color:#e8f2ff;border:1px solid #2b4567;border-radius:14px;padding:12px;min-height:118px;display:flex;flex-direction:column;gap:6px;cursor:pointer}.v830-shop-grid button:hover:not(:disabled){border-color:#22d3ee;transform:translateY(-1px)}.v830-shop-grid button:disabled{opacity:.45;cursor:not-allowed}.v830-shop-grid button.owned{border-color:#13866a;background:#0c2a2a}.v830-shop-grid button span{font-size:14px}.v830-shop-grid button small{color:#9bb0ca;line-height:1.35}.v830-shop-grid button em{font-style:normal;color:#6ee7b7;font-weight:800;margin-top:auto}.v830-shop-grid button i{font-style:normal;color:#93c5fd;font-size:12px}.v830-current{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;background:#0d1d33;border:1px solid #2b4567;border-radius:14px;padding:13px}.v830-current>span{font-size:32px}.v830-current div{display:flex;flex-direction:column;gap:4px}.v830-current small{color:#9bb0ca}.v830-asset-group+ .v830-asset-group{margin-top:16px}.v830-asset-group h4{margin:0 0 8px;color:#cfe7ff}.v830-savings{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v830-savings>div{display:flex;align-items:center;flex-wrap:wrap;gap:7px;background:#0d1d33;border:1px solid #28415f;border-radius:13px;padding:12px}.v830-savings b{margin-right:6px}.v830-cost-list{display:grid;grid-template-columns:1fr 1fr;gap:7px 16px}.v830-cost-list>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #203752;padding:7px 0}.v830-cost-list span{color:#b8c9dc}.v830-mini-history{margin-top:14px;background:#0d1d33;border:1px solid #28415f;border-radius:13px;padding:12px}.v830-mini-history h4{margin:0 0 8px}.v830-mini-history>div{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-top:1px solid #203752}.v830-mini-history small{color:#91a7c2}.v830-loading{padding:14px;border:1px dashed #315478;border-radius:14px;background:#09182b;display:flex;flex-direction:column;gap:4px}.v810-property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1150px){.v830-budget-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v830-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v830-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.v830-life-hero{flex-direction:column}.v830-budget-grid,.v830-stat-grid,.v830-shop-grid,.v830-savings,.v830-cost-list{grid-template-columns:1fr}.v830-current{grid-template-columns:auto 1fr}.v830-current button{grid-column:1/-1}.v810-property-grid{grid-template-columns:1fr}}

/* ========================================================================== */
/* Politikon v8.3.1 — law flow + hockey archive + Real Life Sim Plus          */
/* ========================================================================== */
.v831-law-kpis{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.v831-law-nav{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 20px}.v831-law-nav a{padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(9,24,48,.7);color:#dbeafe;text-decoration:none;font-weight:800;font-size:.8rem}.v831-law-nav a:hover{border-color:#38bdf8;color:#67e8f9}
.v831-law-command{margin-top:12px;padding:11px 12px;border:1px solid rgba(56,189,248,.24);border-radius:14px;background:rgba(5,18,38,.68);display:flex;justify-content:space-between;align-items:center;gap:12px}.v831-law-command.attention{border-color:rgba(250,204,21,.48);box-shadow:inset 3px 0 0 #facc15}.v831-law-command>div{display:grid;gap:2px}.v831-law-command span{font-size:.63rem;letter-spacing:.08em;color:#7dd3fc;font-weight:900}.v831-law-command b{font-size:.9rem}.v831-law-command small{color:var(--muted)}
.v831-law-duty{margin-top:10px;padding:13px;border-radius:14px;border:1px solid var(--line);background:rgba(4,13,29,.75)}.v831-law-duty.urgent{border-color:rgba(250,204,21,.48);background:linear-gradient(135deg,rgba(89,62,5,.22),rgba(4,13,29,.82))}.v831-law-duty.missed{border-color:rgba(248,113,113,.42)}.v831-law-duty.done{border-color:rgba(52,211,153,.32)}.v831-law-duty header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.v831-law-duty header>div{display:grid;gap:3px}.v831-law-duty p{margin:8px 0;color:var(--muted);line-height:1.45}.v831-law-actions{margin-top:10px}
.v831-vote-history{margin-top:10px}.v831-vote-history>.section-head{margin-bottom:10px}
.v831-life-plus{display:grid;gap:8px;margin-top:12px}.v831-life-plus>details{border:1px solid var(--line);border-radius:14px;background:rgba(5,18,38,.62);overflow:hidden}.v831-life-plus>details>summary{cursor:pointer;padding:13px 15px;font-weight:900;color:#e0f2fe}.v831-plan-group{margin-bottom:18px}.v831-plan-group>h4{margin:0 0 8px}.v831-plan-group>.btn{margin-top:8px}.v831-milestones{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.v831-milestones article{border:1px solid var(--line);border-radius:13px;padding:11px;background:rgba(6,20,42,.7);display:grid;grid-template-columns:auto 1fr;gap:3px 8px;align-items:center}.v831-milestones article span{font-size:1.3rem;grid-row:1/3}.v831-milestones article b{font-size:.8rem}.v831-milestones article small{color:var(--muted);font-size:.65rem}.v831-milestones article.done{border-color:rgba(52,211,153,.42);background:rgba(5,71,55,.18)}.v831-milestones article.done small{color:#6ee7b7;font-weight:900}
.v750-live-arena.finished .v750-live-feed .empty-state:only-child{border-color:rgba(248,113,113,.28)}
@media(max-width:900px){.v831-milestones{grid-template-columns:repeat(2,minmax(0,1fr))}.v831-law-command,.v831-law-duty header{align-items:stretch;display:grid}}
@media(max-width:600px){.v831-milestones{grid-template-columns:1fr}.v831-law-nav{display:grid;grid-template-columns:1fr 1fr}.v831-law-kpis{justify-content:flex-start}}

/* ========================================================================== */
/* Politikon v8.3.2 — Parliament 200 / no rebels / Life+                    */
/* ========================================================================== */
.v832-hemicycle-section{overflow:visible}.v832-hemicycle-section .v821-hemicycle{height:500px;overflow:hidden}.v832-hemicycle-section .v821-seat{width:12px;height:12px}.v832-parliament .v821-seat.rebel:after{display:none!important}.v832-committee-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 0}.v832-committee-grid article{display:grid;gap:4px;background:#09182b;border:1px solid #29415f;border-radius:13px;padding:12px}.v832-committee-grid article span,.v832-committee-grid article small{color:#9eb2ca}.v832-own-club .v820-club-own{grid-template-columns:repeat(3,minmax(0,1fr))}.v832-life-extra{display:grid;gap:9px;margin-top:9px}.v832-life-extra details{background:#09182b;border:1px solid #28415f;border-radius:15px;overflow:hidden}.v832-life-extra summary{cursor:pointer;padding:14px 16px;font-weight:800}.v832-life-extra summary:before{content:'▸';margin-right:9px;color:#67e8f9}.v832-life-extra details[open] summary:before{content:'▾'}
@media(max-width:900px){.v832-hemicycle-section .v821-hemicycle{height:360px}.v832-hemicycle-section .v821-seat{width:9px;height:9px}.v832-committee-grid{grid-template-columns:1fr}.v832-own-club .v820-club-own{grid-template-columns:1fr 1fr}}

.v832-hemi-legend{display:flex;flex-wrap:wrap;gap:8px 14px;margin:10px 0 4px;font-size:12px;color:var(--muted,#9fb0c9)}
.v832-hemi-legend span{display:inline-flex;align-items:center;gap:6px}.v832-hemi-legend i{width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 1px rgba(255,255,255,.18)}


/* v8.4.0 performance diagnostics */
.v840-perf-panel{margin-top:14px}.v840-proc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:10px}.v840-proc-grid>div{border:1px solid var(--border,#263850);border-radius:12px;padding:10px;display:grid;gap:3px}.v840-proc-grid span,.v840-proc-grid small{color:var(--muted,#9dafc8);font-size:12px}

/* ========================================================================== */
/* Politikon v8.5.0 — Agenda, Institution gameplay, Hall RPG, Life Rhythm    */
/* ========================================================================== */
.v850-agenda .section-head{align-items:flex-start}.v850-agenda-kpis{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.v850-agenda-list{display:grid;gap:10px;margin-top:18px}.v850-agenda-item{width:100%;display:grid;grid-template-columns:48px minmax(0,1fr) auto 18px;align-items:center;gap:12px;text-align:left;border:1px solid rgba(148,163,184,.18);border-left:5px solid rgba(34,197,94,.72);border-radius:14px;padding:13px 14px;background:rgba(15,23,42,.4);cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease}.v850-agenda-item:hover{transform:translateY(-1px);background:rgba(30,41,59,.62)}.v850-agenda-item.red{border-left-color:#ef4444;background:rgba(127,29,29,.13)}.v850-agenda-item.orange{border-left-color:#f59e0b;background:rgba(120,53,15,.12)}.v850-agenda-item.green{border-left-color:#22c55e}.v850-agenda-icon{font-size:27px;text-align:center}.v850-agenda-copy{display:flex;min-width:0;flex-direction:column;gap:3px}.v850-agenda-copy small{font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;opacity:.65}.v850-agenda-copy b{font-size:15px}.v850-agenda-copy em{font-style:normal;font-size:12px;opacity:.72;white-space:normal}.v850-agenda-due{font-weight:800;font-size:12px;white-space:nowrap}.v850-agenda-arrow{font-size:24px;opacity:.4}.v850-agenda-empty{display:flex;flex-direction:column;gap:5px;padding:22px;border:1px dashed rgba(148,163,184,.2);border-radius:14px;text-align:center}.v850-agenda-note{margin-top:14px;font-size:11px;opacity:.58}
.v850-hall-rpg{margin:14px 0;padding:14px;border:1px solid rgba(129,140,248,.25);border-radius:15px;background:linear-gradient(135deg,rgba(79,70,229,.09),rgba(15,23,42,.25))}.v850-hall-xp{display:grid;gap:6px;margin:10px 0 12px;font-size:11px;font-weight:700}.v850-hall-xp i{display:block;height:7px;border-radius:999px;background:rgba(148,163,184,.17);overflow:hidden}.v850-hall-xp u{display:block;height:100%;border-radius:inherit;background:currentColor}.v850-hall-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.v850-hall-stat{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:10px;border:1px solid rgba(148,163,184,.15);border-radius:12px;background:rgba(2,6,23,.24)}.v850-hall-stat>span{font-size:20px}.v850-hall-stat div{display:flex;flex-direction:column}.v850-hall-stat small{opacity:.64}.v850-hall-stat b{font-size:18px}
.v850-institution{margin-top:18px;padding:16px;border:1px solid rgba(56,189,248,.2);border-radius:16px;background:rgba(2,6,23,.2)}.v850-inst-status{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.v850-inst-grid{display:grid;gap:11px;margin-top:13px}.v850-inst-case{padding:14px;border:1px solid rgba(148,163,184,.16);border-radius:14px;background:rgba(15,23,42,.34)}.v850-inst-case.resolved{opacity:.72}.v850-inst-case header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.v850-inst-case header>div{display:flex;flex-direction:column;gap:3px}.v850-inst-case header small{text-transform:uppercase;font-size:9px;letter-spacing:.08em;opacity:.6}.v850-inst-case p{margin:9px 0 12px;font-size:12px;line-height:1.55;opacity:.78}.v850-inst-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.v850-inst-options button{display:flex;flex-direction:column;gap:3px;min-height:58px;text-align:left}.v850-inst-options small{font-size:10px;opacity:.62}.v850-inst-resolution{padding:9px 11px;border-radius:10px;background:rgba(34,197,94,.08);font-size:12px}
.v850-tennis-registrations{margin:14px 0}.v850-tennis-reg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.v850-tennis-reg{padding:12px;border:1px solid rgba(148,163,184,.16);border-radius:13px;background:rgba(15,23,42,.32)}.v850-tennis-reg.live{border-color:rgba(34,197,94,.42)}.v850-tennis-reg.finished{opacity:.6}.v850-tennis-reg header{display:flex;justify-content:space-between;gap:10px}.v850-tennis-reg header>div{display:flex;flex-direction:column;gap:2px}.v850-tennis-reg header span{font-size:9px;font-weight:800;letter-spacing:.08em;opacity:.6}.v850-tennis-reg header em{font-style:normal;font-size:10px;font-weight:800;text-transform:uppercase}.v850-tennis-reg p,.v850-tennis-reg small{margin:5px 0 0;font-size:11px;opacity:.7}.v850-tennis-ranking th small{font-weight:500;opacity:.55}
.v850-life-rhythm{margin:12px 0;padding:14px;border:1px solid rgba(34,197,94,.2);border-radius:15px;background:rgba(20,83,45,.08)}.v850-life-growth{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px}.v850-life-growth span{padding:7px 9px;border-radius:999px;background:rgba(148,163,184,.1);font-size:11px}.v850-life-rhythm .v830-shop-grid button{min-height:92px}
@media(max-width:900px){.v850-hall-stats,.v850-inst-options{grid-template-columns:repeat(2,minmax(0,1fr))}.v850-tennis-reg-grid{grid-template-columns:1fr}.v850-agenda-item{grid-template-columns:40px minmax(0,1fr) auto}.v850-agenda-arrow{display:none}}
@media(max-width:560px){.v850-hall-stats,.v850-inst-options{grid-template-columns:1fr}.v850-agenda-item{grid-template-columns:36px minmax(0,1fr);align-items:start}.v850-agenda-due{grid-column:2}.v850-agenda-icon{font-size:22px}.v850-agenda-kpis,.v850-inst-status{justify-content:flex-start}}

/* ========================================================================== */
/* Politikon v8.5.2 — Growth Diagnostics                                      */
/* ========================================================================== */
.v852-growth-diagnostic{margin-top:16px;display:grid;gap:14px}.v852-growth-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid rgba(93,168,255,.28);border-radius:16px;background:linear-gradient(135deg,rgba(20,45,78,.72),rgba(12,23,43,.9))}.v852-growth-hero.bad{border-color:rgba(255,101,113,.42)}.v852-growth-hero.warn{border-color:rgba(236,184,61,.4)}.v852-growth-hero.good{border-color:rgba(93,208,148,.35)}.v852-growth-hero h3{margin:4px 0 6px;font-size:21px}.v852-growth-hero p{margin:0;color:var(--muted,#a9b8cd);max-width:760px;line-height:1.45}.v852-growth-score{min-width:118px;text-align:center;padding:12px 14px;border-radius:14px;background:rgba(7,16,31,.52);border:1px solid rgba(255,255,255,.08)}.v852-growth-score strong{display:block;font-size:25px}.v852-growth-score small{display:block;margin-top:3px;color:var(--muted,#9fb0c7)}
.v852-growth-roadmap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.v852-growth-roadmap article{padding:13px 14px;border-radius:14px;border:1px solid rgba(101,161,220,.23);background:rgba(11,28,49,.72);display:flex;flex-direction:column;gap:3px;min-height:92px}.v852-growth-roadmap small{font-size:10px;letter-spacing:.08em;color:#90a6c1}.v852-growth-roadmap b{font-size:20px}.v852-growth-roadmap span{font-size:11px;color:#9fb0c7}.v852-growth-roadmap .bad{color:#ff939c}.v852-growth-roadmap .good{color:#6ee0a7}.v852-hard-limit{display:flex;gap:9px;align-items:flex-start;padding:12px 14px;border-radius:13px;border:1px solid rgba(236,184,61,.33);background:rgba(122,86,12,.12);color:#dce7f5}.v852-hard-limit span{color:#b9c5d6;line-height:1.4}
.v852-diagnostic-section{display:grid;gap:10px}.v852-diagnostic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v852-diagnostic-card{padding:14px;border-radius:14px;background:rgba(10,24,44,.78);border:1px solid rgba(255,255,255,.09);display:grid;gap:11px}.v852-diagnostic-card.bad{border-color:rgba(255,96,110,.33)}.v852-diagnostic-card.warn{border-color:rgba(236,184,61,.28)}.v852-diagnostic-card-head{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:start}.v852-diagnostic-icon{font-size:16px}.v852-diagnostic-card-head div{display:grid;gap:4px}.v852-diagnostic-card-head b{font-size:14px}.v852-diagnostic-card-head small{color:#9eb0c7;line-height:1.35}.v852-diagnostic-card-head strong{font-size:17px;white-space:nowrap}.v852-diagnostic-target{display:grid;grid-template-columns:minmax(130px,.7fr) 1.3fr;gap:12px;align-items:center;padding-top:9px;border-top:1px solid rgba(255,255,255,.07)}.v852-diagnostic-target span{display:grid;gap:2px}.v852-diagnostic-target small{font-size:9px;color:#8599b4;letter-spacing:.08em}.v852-diagnostic-target b{font-size:12px}.v852-diagnostic-target p{margin:0;font-size:11px;color:#aebbd0;line-height:1.35}.v852-diagnostic-action{justify-self:start}.v852-all-good{grid-column:1/-1;padding:16px;border:1px solid rgba(93,208,148,.28);border-radius:14px;background:rgba(31,104,74,.10);display:grid;gap:5px}.v852-all-good span{color:#aabbd0}
.v852-plan-box{padding:14px;border-radius:15px;background:rgba(7,19,36,.66);border:1px solid rgba(93,168,255,.22)}.v852-plan-steps{display:grid;gap:7px}.v852-plan-step{appearance:none;width:100%;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;text-align:left;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:rgba(18,38,65,.62);color:inherit;cursor:pointer}.v852-plan-step:hover{transform:translateY(-1px);border-color:rgba(101,174,245,.42)}.v852-plan-step>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-weight:800;background:rgba(71,144,220,.17)}.v852-plan-step>div{display:grid;gap:2px}.v852-plan-step small{color:#9fb0c7}.v852-plan-step i{font-style:normal;font-size:20px;color:#8fbce8}.v852-plan-step.bad>span{background:rgba(255,91,107,.17)}.v852-plan-step.warn>span{background:rgba(236,184,61,.15)}
.v852-strengths{border:1px solid rgba(93,208,148,.2);border-radius:13px;background:rgba(25,85,61,.07);overflow:hidden}.v852-strengths summary{cursor:pointer;padding:12px 14px;font-weight:700}.v852-strengths>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 12px 12px}.v852-strengths article{padding:10px;border-radius:10px;background:rgba(7,21,35,.55);display:grid;gap:3px}.v852-strengths article b{font-size:12px}.v852-strengths article strong{font-size:15px;color:#72dfa9}.v852-strengths article small{color:#9cadc2;line-height:1.3}
@media(max-width:900px){.v852-growth-roadmap{grid-template-columns:repeat(2,minmax(0,1fr))}.v852-diagnostic-grid{grid-template-columns:1fr}.v852-strengths>div{grid-template-columns:1fr 1fr}.v852-growth-hero{align-items:flex-start}.v852-growth-score{min-width:96px}}@media(max-width:560px){.v852-growth-hero{display:grid}.v852-growth-score{width:auto;text-align:left}.v852-growth-roadmap{grid-template-columns:1fr}.v852-strengths>div{grid-template-columns:1fr}.v852-diagnostic-target{grid-template-columns:1fr}.v852-diagnostic-card-head{grid-template-columns:auto 1fr}.v852-diagnostic-card-head strong{grid-column:2}.v852-hard-limit{display:grid}}

/* ========================================================================== */
/* Politikon v8.5.3 — clarity + fair simulation                              */
/* ========================================================================== */
.v853-gov-guide{margin:14px 0;padding:15px;border:1px solid rgba(56,189,248,.28);border-radius:16px;background:linear-gradient(145deg,rgba(8,25,43,.88),rgba(10,22,38,.72));display:grid;gap:12px}
.v853-gov-guide>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.v853-gov-guide>header h3{margin:0;color:#dff7ff}.v853-gov-guide>header p{margin:4px 0 0;color:#9fb5cd;font-size:12px;line-height:1.45}.v853-gov-guide>header strong{white-space:nowrap;color:#7dd3fc}
.v853-gov-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.v853-gov-guide-card{padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(7,19,33,.7);display:grid;grid-template-columns:1fr auto;gap:7px 12px}.v853-gov-guide-card.bad{border-color:rgba(251,113,133,.35)}.v853-gov-guide-card.warn{border-color:rgba(251,191,36,.30)}.v853-gov-guide-card.good{border-color:rgba(74,222,128,.22)}.v853-gov-guide-card b{font-size:13px}.v853-gov-guide-card strong{font-size:15px}.v853-gov-guide-card p{grid-column:1/-1;margin:0;color:#9fb0c7;font-size:11px;line-height:1.4}.v853-gov-guide-card small{grid-column:1/-1;color:#c4d2e4}.v853-gov-guide-card .btn{grid-column:1/-1;justify-self:start}
.v853-gov-impact{display:block;margin-top:7px;padding:7px 9px;border-radius:9px;background:rgba(34,197,94,.08);border:1px solid rgba(74,222,128,.14);color:#a7f3d0!important;font-size:10px!important;line-height:1.35}
.v853-law-guide{margin:12px 0 16px;padding:14px;border:1px solid rgba(167,139,250,.25);border-radius:15px;background:rgba(30,22,58,.28);display:grid;gap:10px}.v853-law-guide h3{margin:0;color:#e9ddff}.v853-law-guide p{margin:0;color:#aebbd0;font-size:12px;line-height:1.45}.v853-law-guide ol{margin:0;padding-left:20px;display:grid;gap:5px;color:#d7e1ee;font-size:12px}.v853-law-guide .v853-law-now{padding:9px 11px;border-radius:10px;background:rgba(124,58,237,.12);border:1px solid rgba(167,139,250,.18)}
.v853-structural-help{margin-top:10px;padding:10px 11px;border-radius:11px;background:rgba(56,189,248,.08);border:1px solid rgba(56,189,248,.20);display:grid;gap:4px}.v853-structural-help b{font-size:11px;color:#7dd3fc}.v853-structural-help span{font-size:11px;line-height:1.42;color:#b6c8dc}
.v853-party-donation{margin-top:14px;padding:14px;border:1px solid rgba(74,222,128,.23);border-radius:15px;background:rgba(8,35,28,.25);display:grid;gap:10px}.v853-party-donation header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.v853-party-donation h3{margin:0}.v853-party-donation p{margin:3px 0 0;color:#9fb3ca;font-size:11px;line-height:1.4}.v853-party-donation-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.v853-party-donation-kpis span{padding:8px 10px;border-radius:10px;background:rgba(5,18,31,.58);border:1px solid rgba(255,255,255,.07)}.v853-party-donation-kpis b,.v853-party-donation-kpis small{display:block}.v853-party-donation-kpis small{color:#91a5bc;font-size:9px}.v853-party-donation-actions{display:flex;gap:7px;flex-wrap:wrap}.v853-party-donation-actions button{padding:8px 11px;border-radius:9px;border:1px solid #31516c;background:#10243a;color:#eaf5ff;cursor:pointer;font-weight:800}.v853-party-donation-actions button:hover:not(:disabled){border-color:#4ade80}.v853-party-donation-actions button:disabled{opacity:.45;cursor:not-allowed}.v853-party-donation-custom{display:flex;gap:7px;align-items:center}.v853-party-donation-custom input{width:180px;max-width:100%;padding:9px 10px;border-radius:9px;border:1px solid #2b4561;background:#081727;color:#edf6ff}.v853-party-donation-status{font-size:11px;color:#a7f3d0}
.v853-fair-sim{margin:10px 0 14px;padding:11px 13px;border:1px solid rgba(45,212,191,.22);border-radius:13px;background:rgba(13,55,55,.14);display:grid;gap:4px}.v853-fair-sim b{color:#99f6e4;font-size:12px}.v853-fair-sim span{color:#a9bbcf;font-size:11px;line-height:1.4}
.v853-full-replay{max-height:520px;overflow:auto;display:grid;gap:4px;padding-right:5px}.v853-full-replay .v780-feed-row{min-height:34px}.v853-full-replay-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;color:#c7d9ea;font-size:11px}.v853-full-replay-label b{color:#7dd3fc}
@media(max-width:800px){.v853-gov-guide-grid{grid-template-columns:1fr}.v853-party-donation-kpis{grid-template-columns:1fr 1fr}.v853-party-donation header{display:grid}}
@media(max-width:520px){.v853-party-donation-kpis{grid-template-columns:1fr}.v853-party-donation-custom{display:grid}.v853-party-donation-custom input{width:100%}.v853-gov-guide>header{display:grid}}
/* v8.5.3 UI class aliases used by the injected government guide */
.v853-gov-formula{padding:10px 12px;border-radius:11px;background:rgba(14,40,63,.65);border:1px solid rgba(56,189,248,.13);display:grid;gap:4px}.v853-gov-formula b{font-size:11px;color:#c7e8ff}.v853-gov-formula span{font-size:10px;color:#9fb4cc;line-height:1.4}
.v853-gov-repair-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.v853-gov-repair-grid article{padding:11px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(6,18,31,.64);display:grid;gap:8px}.v853-gov-repair-grid article.bad{border-color:rgba(251,113,133,.35)}.v853-gov-repair-grid article.warn{border-color:rgba(251,191,36,.28)}.v853-gov-repair-grid article.good{border-color:rgba(74,222,128,.20);opacity:.86}.v853-gov-repair-grid header{display:flex;gap:8px;align-items:center}.v853-gov-repair-grid header>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:rgba(59,130,246,.15);font-weight:900;font-size:10px}.v853-gov-repair-grid header div{display:grid}.v853-gov-repair-grid header small{color:#91a8c1;font-size:9px}.v853-gov-repair-grid p{margin:0;color:#a9b9cc;font-size:10px;line-height:1.4}.v853-gov-repair-grid em{font-style:normal;color:#86efac;font-size:10px}.v853-gov-repair-grid .btn{justify-self:start;font-size:10px}
.v853-gov-rule{padding:10px 12px;border-radius:11px;background:rgba(251,191,36,.06);border:1px solid rgba(251,191,36,.15);color:#b7c6d8;font-size:10px;line-height:1.45}.v853-gov-rule b{color:#fde68a}.v853-gov-rule strong{color:#86efac}
.v853-law-guide.attention{border-color:rgba(251,191,36,.34);background:rgba(66,43,9,.19)}
.v853-party-donation>div:first-child p{margin:4px 0 0;color:#a7b8ca;font-size:11px;line-height:1.45}.v853-party-donation-actions label{display:flex;gap:7px;align-items:center;flex-wrap:wrap;color:#9fb0c5;font-size:10px}.v853-party-donation-actions .input{width:180px;max-width:100%}.v853-party-donation-wait{color:#facc15;font-size:11px}
@media(max-width:800px){.v853-gov-repair-grid{grid-template-columns:1fr}}

/* ========================================================================== */
/* Politikon v8.5.4 — Government Intervention Desk                           */
/* ========================================================================== */
.v854-gov-guide{margin:14px 0;padding:15px;border:1px solid rgba(56,189,248,.30);border-radius:17px;background:linear-gradient(145deg,rgba(7,23,39,.94),rgba(8,18,33,.90));display:grid;gap:12px}
.v854-gov-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.v854-gov-rules article{padding:10px 12px;border:1px solid rgba(125,211,252,.14);border-radius:12px;background:rgba(12,31,50,.68);display:grid;gap:3px}.v854-gov-rules b{font-size:13px;color:#e6f7ff}.v854-gov-rules span{font-size:10px;color:#91a8c1}
.v854-gov-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.v854-gov-metric-card{appearance:none;text-align:left;width:100%;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(6,18,31,.72);color:inherit;display:grid;grid-template-columns:auto 1fr auto;gap:5px 10px;cursor:pointer;transition:.16s ease}.v854-gov-metric-card:hover,.v854-gov-metric-card.selected{transform:translateY(-1px);border-color:rgba(96,165,250,.55);background:rgba(10,30,52,.88)}.v854-gov-metric-card.bad{border-color:rgba(251,113,133,.35)}.v854-gov-metric-card.warn{border-color:rgba(251,191,36,.28)}.v854-gov-metric-card.good{border-color:rgba(74,222,128,.20)}.v854-gov-metric-card .rank{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:rgba(59,130,246,.16);font-weight:900;font-size:10px}.v854-gov-metric-card>div{display:grid}.v854-gov-metric-card b{font-size:14px}.v854-gov-metric-card small{font-size:10px;color:#9db2c8}.v854-gov-metric-card p{grid-column:2/-1;margin:4px 0 0;color:#a8b7c9;font-size:10px;line-height:1.4}.v854-gov-metric-card strong{font-size:10px;color:#93c5fd;align-self:start}.v854-gov-metric-card.good strong{color:#86efac}.v854-gov-metric-card em{grid-column:2/-1;font-style:normal;color:#7dd3fc;font-size:10px}
.v854-gov-action-picker{padding:13px;border:1px solid rgba(139,92,246,.32);border-radius:15px;background:rgba(14,20,42,.82);display:grid;gap:10px}.v854-gov-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.v854-gov-action-grid article{padding:12px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(5,15,28,.78);display:grid;gap:8px}.v854-gov-action-grid article.disabled{opacity:.58}.v854-gov-action-grid header{display:flex;gap:9px;align-items:center}.v854-gov-action-grid header>span{font-size:22px}.v854-gov-action-grid header div{display:grid;gap:2px}.v854-gov-action-grid header b{font-size:13px}.v854-gov-action-grid header small{font-size:10px;color:#facc15}.v854-gov-action-grid>article>strong{font-size:11px;color:#93c5fd}.v854-gov-action-grid p{margin:0;color:#9fb0c4;font-size:10px;line-height:1.45}.v854-gov-action-grid footer{display:grid;grid-template-columns:1fr auto;gap:6px 9px;align-items:center}.v854-gov-action-grid footer>span{font-size:9px;color:#899eb6}.v854-gov-action-grid footer>em{font-style:normal;font-size:9px;color:#fda4af}.v854-gov-action-grid footer .btn{grid-column:1/-1;justify-self:stretch}
.v854-gov-recent{border-top:1px solid rgba(255,255,255,.07);padding-top:9px}.v854-gov-recent summary{cursor:pointer;color:#b8c8db;font-size:11px}.v854-gov-recent>div{display:grid;gap:6px;margin-top:8px}.v854-gov-recent article{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.035)}.v854-gov-recent b{font-size:11px}.v854-gov-recent span{font-size:10px;color:#93c5fd}.v854-gov-recent small{grid-column:1/-1;color:#7f93aa;font-size:9px}
@media(max-width:850px){.v854-gov-rules,.v854-gov-metric-grid,.v854-gov-action-grid{grid-template-columns:1fr}}

/* ========================================================================== */
/* Politikon v8.6.0 — CONTROL CENTER                                         */
/* ========================================================================== */
.menu-btn{position:relative}.v860-menu-badge{margin-left:auto;min-width:22px;padding:2px 6px;border-radius:999px;font-size:9px;font-weight:900;text-align:center;letter-spacing:.02em;background:rgba(148,163,184,.14);color:#dbeafe;border:1px solid rgba(148,163,184,.18)}.v860-menu-badge.good{background:rgba(34,197,94,.14);color:#86efac;border-color:rgba(34,197,94,.28)}.v860-menu-badge.warn{background:rgba(245,158,11,.14);color:#fde68a;border-color:rgba(245,158,11,.28)}.v860-menu-badge.bad{background:rgba(244,63,94,.14);color:#fda4af;border-color:rgba(244,63,94,.30)}
.v860-gov-projects{margin-top:4px;padding-top:12px;border-top:1px solid rgba(255,255,255,.07);display:grid;gap:10px}.v860-gov-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.v860-gov-project-grid>article{padding:12px;border:1px solid rgba(125,211,252,.15);border-radius:13px;background:rgba(4,15,28,.70);display:grid;gap:8px}.v860-gov-project-grid>article.done{border-color:rgba(74,222,128,.28);background:rgba(10,40,31,.42)}.v860-gov-project-grid>article.ready{border-color:rgba(250,204,21,.36)}.v860-gov-project-grid header{display:flex;gap:9px;align-items:center}.v860-gov-project-grid header>span{font-size:22px}.v860-gov-project-grid header div{display:grid}.v860-gov-project-grid header b{font-size:13px}.v860-gov-project-grid header small{font-size:9px;color:#93c5fd;font-weight:800}.v860-gov-project-grid p{margin:0;color:#9fb0c4;font-size:10px;line-height:1.45}.v860-project-progress i{display:block;height:6px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}.v860-project-progress u{display:block;height:100%;background:linear-gradient(90deg,#38bdf8,#8b5cf6);text-decoration:none}.v860-project-reqs{display:flex;flex-wrap:wrap;gap:5px}.v860-project-reqs span{padding:4px 6px;border-radius:8px;background:rgba(255,255,255,.04);font-size:9px;color:#a8b7c9}.v860-project-reqs span.done{color:#86efac;background:rgba(34,197,94,.08)}.v860-gov-project-grid footer{display:grid;gap:2px;border-top:1px solid rgba(255,255,255,.06);padding-top:7px}.v860-gov-project-grid footer small{font-size:8px;color:#7f93aa}.v860-gov-project-grid footer b{font-size:10px;color:#c4b5fd}
.v860-inst-milestones{margin:10px 0 12px;padding:11px;border:1px solid rgba(139,92,246,.24);border-radius:12px;background:rgba(18,17,42,.58);display:grid;grid-template-columns:minmax(180px,.7fr) 1fr;gap:12px;align-items:center}.v860-inst-milestones>div:first-child{display:grid;gap:2px}.v860-inst-milestones small{font-size:8px;color:#a78bfa;font-weight:900}.v860-inst-milestones b{font-size:13px}.v860-inst-milestones p{margin:0;color:#95a6bc;font-size:9px}.v860-inst-levels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.v860-inst-levels span{padding:7px;border-radius:10px;background:rgba(255,255,255,.035);display:grid;text-align:center;gap:2px;border:1px solid rgba(255,255,255,.06)}.v860-inst-levels span.done{border-color:rgba(34,197,94,.24);background:rgba(34,197,94,.07)}.v860-inst-levels span b{font-size:12px}.v860-inst-levels span em{font-style:normal;font-size:8px;color:#9fb0c4}
.v860-life-benefits{margin:8px 0 11px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.v860-life-benefits span{padding:8px 9px;border:1px solid rgba(96,165,250,.14);border-radius:10px;background:rgba(15,29,50,.58);display:grid;gap:2px}.v860-life-benefits b{font-size:12px}.v860-life-benefits small{font-size:8px;color:#8fa2ba}.v860-life-benefits p{grid-column:1/-1;margin:0;color:#8fa2ba;font-size:9px;line-height:1.4}
@media(max-width:850px){.v860-gov-project-grid,.v860-inst-milestones,.v860-inst-levels,.v860-life-benefits{grid-template-columns:1fr}.v860-inst-levels{grid-template-columns:repeat(2,minmax(0,1fr))}}
.v860-inst-levels span small{font-size:7px;color:#7dd3fc;line-height:1.25}


/* v8.6.1 EVENT FAIRNESS */
.v861-event-neutral{display:flex;gap:10px;align-items:flex-start;margin:12px 0;padding:10px 12px;border:1px solid rgba(125,211,252,.22);border-radius:12px;background:rgba(15,23,42,.34)}
.v861-event-neutral b{white-space:nowrap}.v861-event-neutral span{opacity:.82;font-size:.86rem;line-height:1.35}
.v861-choice-warning,.v861-choice-positive{display:block;margin-top:5px;font-size:.76rem;font-style:normal;opacity:.9}
.v861-ignore-event{margin-top:10px;width:100%}

/* v8.6.2 CLEANUP & POLISH — no new visual layer; intentionally reuses stable v8.6.1 styles. */

/* ============================================================
   v8.7.0 GOVERNANCE & MEDIA REWORK
   ============================================================ */
.v870-government-agenda,
.v870-shadow-lobby,
.v870-media-desk{
  margin-top:14px;
}
.v870-gov-case,
.v870-interview,
.v870-lobby-offer,
.v870-active-deal{
  border:1px solid rgba(92,180,255,.22);
  background:linear-gradient(180deg,rgba(12,28,50,.76),rgba(7,17,34,.88));
  border-radius:18px;
  padding:16px;
  margin-top:12px;
}
.v870-gov-head,
.v870-lobby-head,
.v870-media-head,
.v870-ministry-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.v870-kicker{
  color:#5bd6ff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.v870-muted{color:var(--muted,#9fb1ca);font-size:13px;line-height:1.45}
.v870-policy-choices,
.v870-media-choices,
.v870-ministry-actions{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:10px;
  margin-top:13px;
}
button.v870-policy-choice,
button.v870-media-choice,
button.v870-ministry-action,
button.v870-lobby-action{
  width:100%;
  border:1px solid rgba(107,188,255,.28);
  background:rgba(13,31,55,.78);
  border-radius:15px;
  padding:13px 14px;
  text-align:left;
  color:inherit;
  cursor:pointer;
  transition:transform .15s ease,border-color .15s ease,background .15s ease;
}
button.v870-policy-choice:hover,
button.v870-media-choice:hover,
button.v870-ministry-action:hover,
button.v870-lobby-action:hover{
  transform:translateY(-1px);
  border-color:rgba(80,205,255,.62);
  background:rgba(21,46,76,.9);
}
button.v870-policy-choice:disabled,
button.v870-media-choice:disabled,
button.v870-ministry-action:disabled,
button.v870-lobby-action:disabled{
  opacity:.48;
  cursor:not-allowed;
  transform:none;
}
.v870-choice-title{font-weight:900;font-size:15px;margin-bottom:4px}
.v870-choice-impact{
  margin-top:8px;
  color:#9debc9;
  font-size:12px;
  font-weight:800;
  line-height:1.45;
}
.v870-choice-cost{
  display:inline-flex;
  margin-top:7px;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  font-size:11px;
  font-weight:900;
}
.v870-choice-cost.free{color:#8df3ba}
.v870-choice-cost.paid{color:#ffd37c}
.v870-gov-history,
.v870-shadow-log{
  margin-top:13px;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,.08);
}
.v870-ministry-card{
  border:1px solid rgba(100,170,230,.2);
  background:rgba(8,22,42,.64);
  border-radius:18px;
  padding:15px;
  min-width:0;
}
.v870-ministry-card.is-own{border-color:rgba(68,219,157,.28)}
.v870-ministry-card.is-foreign{opacity:.92}
.v870-ministry-desk{
  margin-top:12px;
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:11px;
}
.v870-ministry-desk summary{
  cursor:pointer;
  font-weight:900;
  color:#dceaff;
  list-style:none;
}
.v870-ministry-desk summary::-webkit-details-marker{display:none}
.v870-ministry-cooldown{
  margin-top:8px;
  padding:8px 10px;
  border-radius:12px;
  background:rgba(255,196,72,.08);
  color:#ffd77c;
  font-size:12px;
  font-weight:800;
}
.v870-shadow-lobby{
  border:1px solid rgba(255,90,90,.25);
  background:linear-gradient(180deg,rgba(38,13,19,.38),rgba(7,16,30,.82));
  border-radius:20px;
  padding:18px;
}
.v870-shadow-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(155px,1fr));
  gap:10px;
  margin:12px 0;
}
.v870-shadow-stat{
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.08);
  border-radius:13px;
  padding:11px;
}
.v870-shadow-stat b{display:block;font-size:18px;margin-top:2px}
.v870-bribe-money{color:#ffd477}
.v870-shadow-risk{color:#ff909d}
.v870-shadow-actions{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin-top:12px;
}
button.v870-lobby-action.accept{border-color:rgba(255,83,83,.45)}
button.v870-lobby-action.expose{border-color:rgba(78,208,255,.42)}
button.v870-lobby-action.refuse{border-color:rgba(142,158,181,.3)}
.v870-active-deals{margin-top:16px}
.v870-active-deal{
  border-color:rgba(255,164,70,.28);
  padding:12px 14px;
}
.v870-media-desk{
  border:1px solid rgba(81,185,255,.23);
  border-radius:20px;
  padding:18px;
  background:rgba(5,17,35,.52);
}
.v870-question{
  margin-top:10px;
  font-size:18px;
  line-height:1.42;
  font-weight:800;
}
.v870-media-choice .v870-choice-title{font-size:14px}
.v870-interview-skip{
  margin-top:10px;
  border:1px dashed rgba(183,196,218,.3);
  background:transparent;
  color:#aebdd2;
  border-radius:12px;
  padding:9px 12px;
  cursor:pointer;
  font-weight:800;
}
.v870-interview-skip:hover{border-color:rgba(183,196,218,.56);color:#e1e9f5}
.v870-personal-ticket-note{
  margin-top:8px;
  color:#8ee8bf;
  font-size:12px;
  font-weight:800;
}
.v870-law-title{font-weight:900;color:#e9f3ff}
@media(max-width:760px){
  .v870-shadow-actions{grid-template-columns:1fr}
  .v870-policy-choices,.v870-media-choices,.v870-ministry-actions{grid-template-columns:1fr}
  .v870-gov-head,.v870-lobby-head,.v870-media-head,.v870-ministry-head{flex-direction:column}
}
.v870-shadow-preview{
  margin:10px 0 2px;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
  font-size:12px;
  line-height:1.55;
  color:#c9d5e6;
}
.v870-shadow-preview b{color:#f1f6ff}

/* ========================================================================== */
/* v8.7.1 DECISION CLARITY + POLITICAL INTELLIGENCE                          */
/* ========================================================================== */
.v871-effects{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.v871-effect{display:inline-flex;align-items:center;justify-content:space-between;gap:9px;padding:7px 10px;border-radius:10px;border:1px solid rgba(148,163,184,.24);background:rgba(15,23,42,.6);font-size:12px;line-height:1.15}
.v871-effect b{font-weight:700;color:#cbd5e1}.v871-effect strong{font-size:13px;font-weight:900}
.v871-effect.good{border-color:rgba(52,211,153,.48);background:rgba(16,185,129,.12)}.v871-effect.good strong{color:#6ee7b7}.v871-effect.good b{color:#a7f3d0}
.v871-effect.bad{border-color:rgba(248,113,113,.5);background:rgba(239,68,68,.12)}.v871-effect.bad strong{color:#fca5a5}.v871-effect.bad b{color:#fecaca}
.v871-effect.neutral{border-color:rgba(56,189,248,.36);background:rgba(14,165,233,.09)}.v871-effect.neutral strong{color:#bae6fd}
.v871-required-card{border-color:rgba(251,191,36,.28)!important}
.v871-required-note{display:grid;gap:3px;margin:12px 0;padding:10px 12px;border:1px solid rgba(251,191,36,.35);border-radius:12px;background:rgba(245,158,11,.08)}
.v871-required-note b{color:#fbbf24}.v871-required-note span{color:#cbd5e1;font-size:12px;line-height:1.45}
.v871-decision-choice{position:relative;overflow:hidden}.v871-decision-choice:hover{border-color:rgba(125,211,252,.62)!important;transform:translateY(-1px)}
.v871-decision-choice .v871-effects{margin-top:11px;padding-top:9px;border-top:1px solid rgba(148,163,184,.14)}
.v871-ministry-actions .v870-ministry-action header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.v871-ministry-actions .v870-ministry-action header b{min-width:0}.v871-ministry-actions .v870-ministry-action header span{white-space:nowrap;flex:none}
.v871-lobby-intel{display:grid;gap:9px;margin:14px 0;padding:13px;border:1px solid rgba(56,189,248,.32);border-radius:14px;background:rgba(14,165,233,.07)}
.v871-lobby-intel.known{border-color:rgba(251,191,36,.42);background:rgba(245,158,11,.07)}.v871-lobby-intel>header{display:flex;justify-content:space-between;align-items:center;gap:12px}.v871-lobby-intel small{color:#94a3b8}.v871-lobby-intel p{margin:0;color:#cbd5e1;line-height:1.45}
.v871-network-party{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:8px;padding-top:9px;border-top:1px solid rgba(148,163,184,.15)}.v871-network-party small{grid-column:1/-1}
.v871-law-context{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.v871-law-context>div{display:grid;gap:4px;padding:11px;border:1px solid rgba(56,189,248,.25);border-radius:12px;background:rgba(15,23,42,.55)}.v871-law-context small,.v871-vote-blocs small{font-size:10px;font-weight:900;letter-spacing:.08em;color:#7dd3fc}.v871-law-context span{font-size:12px;color:#94a3b8;line-height:1.35}
.v871-gov-promise{display:grid;gap:4px;margin:11px 0;padding:12px;border:1px solid rgba(52,211,153,.38);border-radius:12px;background:rgba(16,185,129,.08)}.v871-gov-promise>b{color:#6ee7b7}.v871-gov-promise>span{font-weight:800;color:#d1fae5}.v871-gov-promise p{margin:0;color:#cbd5e1;font-size:12px}.v871-gov-promise.law-promise{margin-top:14px}
.v871-no-promise{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0;padding:9px 11px;border-radius:10px;background:rgba(100,116,139,.09);border:1px solid rgba(148,163,184,.16)}.v871-no-promise b{color:#cbd5e1}.v871-no-promise span{color:#94a3b8;font-size:12px}
.v871-vote-blocs{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}.v871-vote-blocs>div{display:grid;gap:5px;padding:10px;border-radius:11px}.v871-vote-blocs .for{background:rgba(16,185,129,.09);border:1px solid rgba(52,211,153,.3)}.v871-vote-blocs .against{background:rgba(239,68,68,.08);border:1px solid rgba(248,113,113,.3)}.v871-vote-blocs .uncertain{grid-column:1/-1;background:rgba(245,158,11,.07);border:1px solid rgba(251,191,36,.25)}.v871-vote-blocs .for small{color:#6ee7b7}.v871-vote-blocs .against small{color:#fca5a5}.v871-vote-blocs .uncertain small{color:#fde68a}.v871-vote-blocs b{font-size:12px;line-height:1.4;color:#e2e8f0}
.v871-law-agenda{border-color:rgba(56,189,248,.3)!important}
@media(max-width:760px){.v871-law-context,.v871-vote-blocs{grid-template-columns:1fr}.v871-vote-blocs .uncertain{grid-column:auto}.v871-network-party{grid-template-columns:1fr}.v871-network-party small{grid-column:auto}.v871-lobby-intel>header{align-items:flex-start;flex-direction:column}}

/* ========================================================================== */
/* Politikon v8.7.2 — long-run politics, lobby intelligence & casefiles       */
/* ========================================================================== */
.v872-term-mandate{display:grid;grid-template-columns:minmax(260px,.85fr) 1.5fr;gap:18px;padding:18px 20px;margin:14px 0 18px;border:1px solid rgba(96,165,250,.28);border-radius:18px;background:linear-gradient(135deg,rgba(14,116,144,.13),rgba(30,41,59,.3));align-items:center}.v872-term-mandate h2{margin:3px 0 7px}.v872-term-mandate p{margin:0;color:var(--muted,#9fb0c7);line-height:1.45}.v872-issue-chips{display:flex;flex-wrap:wrap;gap:8px}.v872-issue-chip{padding:8px 11px;border-radius:999px;border:1px solid rgba(45,212,191,.25);background:rgba(20,184,166,.08);color:#bff8ee;font-weight:750;font-size:.82rem}.v872-law-pool{border:1px solid rgba(96,165,250,.22);border-radius:18px;padding:16px}.v872-law-proposal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.v872-law-proposal{appearance:none;text-align:left;padding:15px;border-radius:16px;border:1px solid rgba(148,163,184,.2);background:rgba(15,23,42,.58);color:inherit;display:flex;flex-direction:column;gap:8px;min-height:210px;transition:.15s ease;cursor:pointer}.v872-law-proposal:hover:not(:disabled){transform:translateY(-2px);border-color:rgba(56,189,248,.6);box-shadow:0 10px 28px rgba(2,132,199,.09)}.v872-law-proposal.mandate{border-color:rgba(34,197,94,.35);background:linear-gradient(145deg,rgba(22,101,52,.12),rgba(15,23,42,.62))}.v872-law-proposal header,.v872-law-proposal footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.v872-law-proposal header>span{text-transform:uppercase;font-size:.72rem;letter-spacing:.08em;color:#9fb0c7;font-weight:800}.v872-law-proposal h3{font-size:1rem;margin:0}.v872-law-proposal p{font-size:.85rem;line-height:1.45;color:#aebbd0;margin:0;flex:1}.v872-law-proposal footer{padding-top:9px;border-top:1px solid rgba(148,163,184,.12);font-weight:800;color:#7dd3fc}.v872-mandate-badge,.v872-normal-badge{font-size:.68rem;padding:4px 7px;border-radius:999px}.v872-mandate-badge{color:#86efac;background:rgba(34,197,94,.13);border:1px solid rgba(34,197,94,.24)}.v872-normal-badge{color:#94a3b8;background:rgba(100,116,139,.1)}.v872-mandate-match{display:flex;flex-direction:column;gap:3px;padding:8px 10px;border-radius:10px;background:rgba(34,197,94,.09);border:1px solid rgba(34,197,94,.18)}.v872-mandate-match small{font-size:.65rem;color:#86efac;font-weight:800}.v872-mandate-match strong{font-size:.78rem;color:#dcfce7}.v872-catalog-log ul{list-style:none;padding:0;display:grid;gap:7px}.v872-catalog-log li{display:grid;grid-template-columns:100px 1fr auto;gap:9px;padding:9px;border-radius:10px;background:rgba(15,23,42,.35)}.v872-catalog-log span{color:#b5c1d3}.v872-catalog-log small{color:#718096}.v872-parliament-agenda .empty-state{padding:18px;background:rgba(15,23,42,.28);border-radius:14px}.v872-parliament-agenda .empty-state p{margin-bottom:0}

.v872-lobby-offer{border-color:rgba(244,63,94,.25)}.v872-risk-panel{margin:12px 0;padding:13px 15px;border:1px solid rgba(251,146,60,.25);border-radius:14px;background:rgba(124,45,18,.08)}.v872-risk-panel.changed{border-color:rgba(59,130,246,.28);background:rgba(30,64,175,.08)}.v872-risk-panel>small{font-size:.67rem;font-weight:900;color:#fdba74;letter-spacing:.09em}.v872-risk-panel>div{display:flex;gap:12px;align-items:baseline;margin:4px 0}.v872-risk-panel>div b{font-size:1.35rem;color:#fda4af}.v872-risk-panel>div span{color:#64748b}.v872-risk-panel>div strong{font-size:1.7rem}.v872-risk-panel p{margin:2px 0;color:#b8c4d8;font-size:.84rem}.v872-risk-panel em{display:block;margin-top:6px;color:#fde68a;font-size:.78rem}.v872-intel-result{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.v872-intel-result span{padding:6px 9px;border-radius:9px;background:rgba(15,23,42,.42);font-size:.76rem}.v872-lobby .badish{color:#fda4af}.v872-lobby .goodish{color:#86efac}

.v872-case-grid{display:grid;gap:14px}.v872-casefile{padding:18px;border:1px solid rgba(248,113,113,.22);border-radius:18px;background:linear-gradient(145deg,rgba(69,10,10,.07),rgba(15,23,42,.42))}.v872-casefile.closed{border-color:rgba(148,163,184,.16);opacity:.94}.v872-casefile>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.v872-casefile h3{margin:4px 0 0}.v872-casefile>p{color:#b6c2d5;line-height:1.48}.v872-case-damage{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:12px 0;padding:10px 12px;border-radius:12px;background:rgba(220,38,38,.11);border:1px solid rgba(248,113,113,.2)}.v872-case-damage small{font-weight:800;color:#fca5a5}.v872-case-damage b{font-size:1.15rem;color:#fecaca}.v872-case-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.v872-case-metrics span{padding:10px;border-radius:12px;background:rgba(15,23,42,.45);border:1px solid rgba(148,163,184,.13);display:flex;flex-direction:column}.v872-case-metrics b{font-size:1.05rem}.v872-case-metrics small{color:#94a3b8}.v872-case-pipeline{display:flex;align-items:center;gap:6px;overflow:auto;padding:10px 0}.v872-case-pipeline span{white-space:nowrap;padding:6px 9px;border-radius:999px;border:1px solid rgba(148,163,184,.14);color:#718096;font-size:.72rem;font-weight:800}.v872-case-pipeline span.done{color:#bfdbfe;border-color:rgba(59,130,246,.3);background:rgba(59,130,246,.09)}.v872-case-pipeline i{color:#475569;font-style:normal}.v872-case-actions{margin-top:13px;padding-top:12px;border-top:1px solid rgba(148,163,184,.13)}.v872-case-action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px}.v872-case-action{appearance:none;text-align:left;color:inherit;padding:12px;border-radius:13px;border:1px solid rgba(34,197,94,.2);background:rgba(22,101,52,.07);cursor:pointer}.v872-case-action.risky{border-color:rgba(248,113,113,.24);background:rgba(127,29,29,.08)}.v872-case-action:hover{border-color:rgba(56,189,248,.45)}.v872-case-action b{display:block;margin-bottom:7px}.v872-case-history ol{list-style:none;padding:0;display:grid;gap:8px}.v872-case-history li{display:grid;grid-template-columns:130px 180px 1fr auto;gap:10px;align-items:start;padding:10px;border-radius:11px;background:rgba(15,23,42,.4)}.v872-case-history li p{margin:0;color:#bac5d7}.v872-case-history li span,.v872-case-history li small{color:#8fa0b8;font-size:.75rem}.v872-verdict{margin:13px 0;padding:14px;border-radius:13px;border:1px solid rgba(251,191,36,.25);background:rgba(120,53,15,.08);display:grid;gap:3px}.v872-verdict.good{border-color:rgba(34,197,94,.25);background:rgba(22,101,52,.08)}.v872-verdict.bad{border-color:rgba(248,113,113,.25);background:rgba(127,29,29,.09)}.v872-verdict b{font-size:1.15rem}.v872-verdict p{margin:2px 0 0;color:#c1cada}.v872-case-watch{padding:10px;color:#8fa0b8}

@media(max-width:900px){.v872-term-mandate{grid-template-columns:1fr}.v872-case-metrics{grid-template-columns:repeat(2,1fr)}.v872-case-history li{grid-template-columns:1fr}.v872-catalog-log li{grid-template-columns:1fr}.v872-law-proposal-grid{grid-template-columns:1fr}}

/* ========================================================================== */
/* Politikon v8.7.3 — DEEP POLITICS + COMMS                                 */
/* ========================================================================== */
.v873-law-shelf-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0 16px}.v873-law-shelf-summary>span,.v873-comms-stats>span,.v873-lobby-status>span,.v873-immunity-metrics>span{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1px solid #294b68;border-radius:14px;background:rgba(8,29,49,.7)}.v873-law-shelf-summary b,.v873-comms-stats b,.v873-lobby-status b,.v873-immunity-metrics b{font-size:1.18rem;color:#edf7ff}.v873-law-shelf-summary small,.v873-comms-stats small,.v873-lobby-status small,.v873-immunity-metrics small{color:#9db0c5}
.v873-law-proposal-grid{grid-template-columns:repeat(auto-fill,minmax(245px,1fr))}.v873-law-actions summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.v873-law-actions summary small{font-weight:500;color:#90a9bf}.v873-law-action{height:auto!important;text-align:left!important;align-items:stretch!important;padding:14px!important}.v873-law-action header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;width:100%}.v873-law-action header span{color:#54d8ff;font-weight:800;white-space:nowrap}.v873-law-action p{margin:8px 0 10px;color:#aebfd0}.v873-law-effects{display:flex;gap:7px;flex-wrap:wrap;width:100%}.v873-law-effect{display:inline-flex;gap:6px;align-items:center;padding:6px 8px;border-radius:9px;border:1px solid #35506a;font-size:.79rem}.v873-law-effect.good{background:rgba(21,156,101,.15);border-color:#187a5a;color:#78efbc}.v873-law-effect.bad{background:rgba(204,65,78,.14);border-color:#9b3f4c;color:#ff9daa}.v873-law-effect strong{font-size:.83rem}.v873-party-effects{display:contents}
.v873-lobby{max-width:1200px}.v873-lobby-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:15px 0}.v873-lobby-card{border:1px solid #33465d;background:linear-gradient(180deg,rgba(14,32,52,.94),rgba(8,23,41,.94));border-radius:18px;padding:18px;margin:14px 0}.v873-lobby-card.closed{opacity:.78}.v873-lobby-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:1px solid rgba(84,130,164,.23);padding-bottom:13px}.v873-lobby-head h3{margin:3px 0 0;font-size:1.25rem}.v873-risk-badge{min-width:108px;padding:8px 12px;border:1px solid;border-radius:13px;text-align:center}.v873-risk-badge small{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}.v873-risk-badge b{font-size:1.35rem}.v873-risk-badge.low{background:rgba(20,150,97,.14);border-color:#1c8c67;color:#77efbb}.v873-risk-badge.mid{background:rgba(217,156,35,.12);border-color:#8a6a22;color:#ffd768}.v873-risk-badge.high{background:rgba(206,61,71,.14);border-color:#9d3f4b;color:#ff9aa7}.v873-lobby-deal{display:grid;grid-template-columns:minmax(250px,1.1fr) minmax(350px,1.4fr);gap:14px;margin:15px 0}.v873-lobby-deal>div{padding:13px 14px;border:1px solid #2a4761;border-radius:14px;background:rgba(5,25,43,.66)}.v873-lobby-deal small,.v873-lobby-intel small{display:block;color:#7fdcff;font-size:.72rem;font-weight:800;letter-spacing:.04em}.v873-lobby-deal>div>b{display:block;margin-top:5px;line-height:1.35}.v873-lobby-money{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.v873-lobby-money span{padding:8px;border-radius:10px;background:rgba(255,255,255,.025)}.v873-lobby-money b{display:block;margin-top:4px;color:#75f1bd}.v873-risk-explainer{padding:13px 14px;border:1px solid #665326;border-radius:14px;background:rgba(105,74,13,.12)}.v873-risk-explainer>div{display:flex;align-items:center;gap:10px}.v873-risk-explainer>div b,.v873-risk-explainer>div strong{font-size:1.35rem}.v873-risk-explainer p{margin:6px 0 0;color:#b3c1cf}.v873-risk-explainer em{display:block;margin-top:6px;color:#ffd66d}.v873-lobby-intel{margin-top:13px;padding:14px;border:1px solid #14698c;border-radius:14px;background:rgba(8,71,99,.12)}.v873-lobby-intel.known{border-color:#247b62;background:rgba(16,93,69,.11)}.v873-lobby-intel header{display:flex;justify-content:space-between;align-items:center;gap:12px}.v873-lobby-intel header b{display:block;margin-top:3px}.v873-lobby-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.v873-lobby-actions button{height:auto!important;text-align:left!important;align-items:flex-start!important;padding:12px!important}.v873-lobby-actions button b,.v873-lobby-actions button small{display:block}.v873-lobby-actions button small{margin-top:5px;line-height:1.35}.v873-lobby-result{margin-top:12px}.v873-lobby-history .v873-lobby-card{margin:10px 0}
.v873-comms-brief,.v873-composer,.v873-comms>section:not(.v873-comms-brief):not(.v873-composer){margin-top:18px}.v873-comms-stats{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:8px;min-width:285px}.v873-comms-topics{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:9px}.v873-comms-topic{appearance:none;text-align:left;border:1px solid #29526d;border-radius:13px;background:rgba(8,34,55,.72);color:#eaf6ff;padding:12px;cursor:pointer}.v873-comms-topic:hover{border-color:#35b8e7;transform:translateY(-1px)}.v873-comms-topic small{display:block;color:#62d8ff;text-transform:uppercase;font-weight:800;font-size:.69rem}.v873-comms-topic b{display:block;margin:5px 0}.v873-comms-topic span{display:block;color:#9fb3c5;font-size:.82rem;line-height:1.35}.v873-composer{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:10px}.v873-composer h3{grid-column:1/-1}.v873-comms-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px}.v873-comms-action{display:flex;flex-direction:column;gap:9px;padding:14px;border:1px solid #294861;border-radius:14px;background:rgba(8,28,47,.7)}.v873-comms-action header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.v873-comms-action h3{margin:2px 0}.v873-comms-action header small{color:#63d8ff}.v873-comms-action p{margin:0;color:#a9bbca}.v873-comms-action>.btn{margin-top:auto}.v873-comms-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.v873-comms-numbers span{padding:7px 8px;border-radius:9px;background:rgba(255,255,255,.035)}.v873-comms-numbers b,.v873-comms-numbers small{display:block}.v873-comms-numbers small{font-size:.68rem;color:#8fa5b8}.v873-comms-history{margin-top:18px}
.v873-immunity{border-color:#705c20}.v873-immunity-card{margin:12px 0;padding:16px;border:1px solid #826c24;border-radius:16px;background:rgba(94,69,12,.11)}.v873-immunity-card>header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.v873-immunity-card h3{margin:3px 0}.v873-immunity-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,180px));gap:8px;margin:12px 0}.v873-immunity-help{display:flex;flex-direction:column;gap:4px;padding:11px 13px;border-radius:12px;background:rgba(255,255,255,.035);margin-bottom:11px}.v873-immunity-help span{color:#aebdcc}.v873-immunity-history>div{display:grid;grid-template-columns:1fr auto;gap:3px 12px;padding:9px;border-bottom:1px solid rgba(255,255,255,.06)}.v873-immunity-history small{grid-column:1/-1;color:#8fa5b8}
.v873-case-subject{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}.v873-case-subject>div{padding:11px 13px;border:1px solid #31506a;border-radius:12px;background:rgba(8,31,51,.68)}.v873-case-subject small,.v873-case-subject b,.v873-case-subject span{display:block}.v873-case-subject small{color:#7fdcff;font-size:.7rem;font-weight:800}.v873-case-subject b{margin:4px 0}.v873-case-subject span{color:#9fb1c1}.v873-immunity-state.pending{border-color:#8f7023!important;background:rgba(126,88,11,.14)!important}.v873-immunity-state.released{border-color:#227a61!important;background:rgba(24,113,83,.12)!important}.v873-immunity-state.blocked{border-color:#93424d!important;background:rgba(133,40,52,.12)!important}.v873-case-immunity-alert{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;margin:11px 0;padding:12px;border:1px solid #866a22;border-radius:12px;background:rgba(103,75,15,.13)}.v873-case-immunity-alert span{color:#b5c1cc}.v873-case-immunity-alert button{grid-column:2;grid-row:1/3}
@media(max-width:850px){.v873-law-shelf-summary,.v873-lobby-status{grid-template-columns:repeat(2,1fr)}.v873-lobby-deal,.v873-composer{grid-template-columns:1fr}.v873-composer h3{grid-column:auto}.v873-lobby-money,.v873-lobby-actions{grid-template-columns:1fr}.v873-comms-stats{min-width:0}.v873-case-subject{grid-template-columns:1fr}.v873-case-immunity-alert{grid-template-columns:1fr}.v873-case-immunity-alert button{grid-column:auto;grid-row:auto}}
@media(max-width:520px){.v873-law-shelf-summary,.v873-lobby-status,.v873-comms-stats{grid-template-columns:1fr}.v873-immunity-metrics{grid-template-columns:1fr}.v873-lobby-head,.v873-immunity-card>header{flex-direction:column}.v873-risk-badge{width:100%}}

/* ========================================================================== */
/* Politikon v8.8.0 — campaign & public life                                  */
/* ========================================================================== */
.v880-impact-row,.v880-target-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}
.v880-impact,.v880-target{display:inline-flex;align-items:center;gap:6px;border:1px solid #33465f;border-radius:9px;padding:6px 9px;background:#0d1b2e;font-size:12px}
.v880-impact small{font-size:10px;text-transform:uppercase;color:#a8b6c8}.v880-impact b{font-size:13px}.v880-impact.good,.v880-target.good{border-color:#168b68;background:rgba(11,111,80,.16);color:#72edc0}.v880-impact.bad,.v880-target.bad{border-color:#a63d52;background:rgba(130,35,54,.16);color:#ff9bab}
.v880-voter-summary{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.v880-voter-summary>section{padding:15px;border:1px solid #263a54;border-radius:15px;background:#0b1729}.v880-voter-summary h3{margin:0 0 10px}.v880-voter-group{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;padding:9px 0;border-bottom:1px solid rgba(117,145,176,.14)}.v880-voter-group:last-child{border:0}.v880-voter-group small{grid-column:1/-1;color:#91a4ba}.v880-voter-group.good b{color:#6fe9bd}.v880-voter-group.bad b{color:#ff9aab}
.v880-voter-issues{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.v880-voter-issue{border:1px solid #263c57;border-radius:16px;background:linear-gradient(145deg,#0c1a2e,#0a1424);padding:15px}.v880-voter-issue.open{border-color:#9a7424}.v880-voter-issue header{display:flex;justify-content:space-between;gap:12px;align-items:start}.v880-voter-issue h3{margin:2px 0 0}.v880-voter-issue header small,.v880-voter-stance small,.v880-voter-who>div>small{color:#67c7e7;font-weight:800;letter-spacing:.04em}.v880-voter-stance{display:flex;flex-direction:column;gap:4px;padding:11px;margin:12px 0;border-radius:11px;background:#10233a}.v880-voter-stance b{font-size:15px}.v880-voter-stance span{color:#a6b5c8}.v880-voter-who{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v880-voter-who>div{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:11px;background:#091525}.v880-voter-who span{display:flex;justify-content:space-between;gap:8px;font-size:12px}.v880-voter-who em{font-style:normal;color:#879ab1;text-align:right}.v880-region-readout{margin-top:16px}.v880-region-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:10px}.v880-region-topic-grid button{text-align:left;border:1px solid #28425e;border-radius:11px;padding:10px;background:#0d1a2d;color:inherit;display:flex;flex-direction:column;gap:3px}.v880-region-topic-grid small{color:#8fa5bd}
.v880-debate-guests{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:14px;border:1px solid #27405b;border-radius:13px;background:#0b1728;margin:14px 0}.v880-debate-guests>small{font-weight:900;color:#62c6e9;margin-right:4px}.v880-debate-rsvp{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.v880-debate-rsvp button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:14px}.v880-debate-rsvp small{opacity:.85}.v880-debate-rounds{display:grid;gap:13px}.v880-debate-round{border:1px solid #2a405b;border-radius:15px;padding:15px;background:#0a1729}.v880-debate-round.done{border-color:#1c6d58}.v880-debate-round header{display:flex;justify-content:space-between;gap:10px}.v880-debate-round h3{margin:2px 0}.v880-debate-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.v880-debate-choices>button{text-align:left;border:1px solid #2b4865;border-radius:13px;padding:13px;background:#0e1d31;color:inherit}.v880-debate-choices>button:hover{border-color:#45bcea;transform:translateY(-1px)}.v880-debate-choices p{color:#b2c0d0;margin:6px 0}.v880-debate-choices>button>small{display:block;margin-top:9px;color:#e0b96e}.v880-debate-answer{border:1px solid #1d6d58;background:rgba(12,94,70,.12);border-radius:12px;padding:12px}.v880-debate-history{display:grid;gap:7px;margin-top:10px}.v880-debate-history article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;border-bottom:1px solid #22364f;padding:8px 0}.v880-debate-history small{color:#8da0b6}
.v880-poll-brief{border-color:#2c6075}.v880-poll-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.v880-poll-kpis>span{display:flex;flex-direction:column;padding:13px;border:1px solid #29425d;background:#0b182a;border-radius:13px}.v880-poll-kpis small{color:#82a0b9}.v880-poll-kpis b{font-size:21px;margin:3px 0}.v880-poll-kpis em{font-style:normal;color:#8fa1b5;font-size:12px}.v880-poll-takeaways{display:grid;gap:7px}.v880-poll-takeaways article{padding:9px 11px;border-radius:9px;background:#0b1727;border-left:4px solid #60748b}.v880-poll-takeaways article.good{border-color:#1aab7c}.v880-poll-takeaways article.bad{border-color:#dd5065}.v880-poll-takeaways article.warn{border-color:#db9c29}
.v880-dip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v880-dip-card{border:1px solid #29425e;border-radius:15px;padding:14px;background:#0b182b}.v880-dip-card.friendly{border-color:#19745d}.v880-dip-card.cold{border-color:#703545}.v880-dip-card header{display:flex;justify-content:space-between;gap:10px;align-items:center}.v880-dip-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:11px 0}.v880-dip-metrics span{padding:8px;border-radius:9px;background:#10233a;display:flex;flex-direction:column}.v880-dip-metrics small{color:#8197af}.v880-pact{padding:8px 10px;border:1px solid #1e8066;background:rgba(14,112,83,.15);border-radius:9px;color:#7ce7c1;margin-bottom:10px}.v880-dip-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v880-dip-actions button{text-align:left;border:1px solid #2b4865;border-radius:11px;background:#0e1d31;color:inherit;padding:10px}.v880-dip-actions button:disabled{opacity:.45}.v880-dip-actions p{font-size:12px;color:#9db0c5;margin:4px 0}.v880-dip-actions span,.v880-dip-actions small{display:block;font-size:11px;color:#68c7e6}.v880-alliance{border-color:#735db7!important}
.v880-tennis-history{border-color:#176d6b}.v880-tennis-match{border:1px solid #29415a;border-radius:11px;background:#0b1829;margin:7px 0}.v880-tennis-match summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto minmax(150px,auto);align-items:center;gap:10px;padding:11px;cursor:pointer}.v880-tennis-match summary>span{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;font-weight:900}.v880-tennis-match summary>span.win{background:#124d3f;color:#7cf0c5}.v880-tennis-match summary>span.loss{background:#512231;color:#ff9aad}.v880-tennis-match summary small{color:#91a4bb}.v880-lazy-slot{padding:11px;border-top:1px solid #263b55}.v880-replay-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.v880-replay-head strong{font-size:18px;color:#7de4e6}.v880-replay-head small{color:#90a4bb}.v880-tennis-replay{display:grid;gap:5px;max-height:520px;overflow:auto;padding-left:0;list-style:none}.v880-tennis-replay li{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:8px;border-radius:8px;background:#0e2034}.v880-tennis-replay li.set{background:#123226;border:1px solid #1f715b}.v880-tennis-replay li.end{background:#17304a;border:1px solid #3276a0}.v880-tennis-replay b{color:#66c9e8}.v880-bracket-details{margin-top:9px}.v880-bracket-scroll{display:flex;gap:12px;overflow-x:auto;padding:5px 2px 10px}.v880-bracket-round{min-width:245px;display:flex;flex-direction:column;gap:7px}.v880-bracket-round h4{margin:0 0 5px}.v880-bracket-round article{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:6px;align-items:center;border:1px solid #29405b;border-radius:9px;padding:8px;background:#0d1c30}.v880-bracket-round article.me{border-color:#17a584;background:rgba(12,100,78,.14)}.v880-bracket-round article span:last-child{text-align:right}.v880-bracket-round small{color:#8196ad}
@media(max-width:900px){.v880-voter-summary,.v880-voter-issues,.v880-debate-choices,.v880-dip-grid,.v880-debate-rsvp{grid-template-columns:1fr}.v880-region-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v880-voter-who{grid-template-columns:1fr}.v880-poll-kpis{grid-template-columns:1fr}.v880-tennis-match summary{grid-template-columns:auto 1fr auto}.v880-tennis-match summary small{grid-column:2/-1}.v880-dip-actions{grid-template-columns:1fr}}
@media(max-width:600px){.v880-region-topic-grid{grid-template-columns:1fr}.v880-debate-history article{grid-template-columns:1fr}.v880-tennis-replay li{grid-template-columns:85px 1fr}}

/* v8.8.1 client boot hotfix: no visual regression; stylesheet version bumped for atomic deploy. */


/* v8.8.2 — tennis point-by-point replay */
.v882-replay-head>div{display:flex;flex-direction:column;gap:4px}.v882-replay-mode{font-size:11px;color:#7dd3fc;text-transform:uppercase;letter-spacing:.06em}.v882-score-help{margin:10px 0 8px;padding:10px 12px;border:1px solid rgba(56,189,248,.28);border-radius:12px;background:rgba(14,116,144,.10);color:#b8c7da;font-size:12px}.v882-score-help b{color:#67e8f9}.v882-tennis-replay li.point{display:grid;grid-template-columns:minmax(170px,240px) 1fr;gap:12px;align-items:center}.v882-tennis-replay li.point b{color:#7dd3fc;font-variant-numeric:tabular-nums}.v882-tennis-replay li.game{border-left:3px solid #38bdf8;background:rgba(14,116,144,.13)}.v882-tennis-replay li.set{border-left:3px solid #22c55e;background:rgba(21,128,61,.18)}.v882-tennis-replay li.end{border-left:3px solid #a78bfa;background:rgba(109,40,217,.15)}@media(max-width:720px){.v882-tennis-replay li.point{grid-template-columns:1fr;gap:3px}}
/* v8.8.3 lazy view hydration */
.v883-lazy-error{padding:16px;border:1px solid rgba(248,113,113,.45);border-radius:14px;background:rgba(127,29,29,.12)}

/* ========================================================================== */
/* v8.9.0 CORE GAMEPLAY REWORK                                                */
/* ========================================================================== */
.v890-action-state{align-items:flex-start;flex-wrap:wrap}.v890-cooldown-audit{flex-basis:100%;font-size:.68rem;opacity:.78;font-weight:600;margin-top:2px}.v890-field-network h1,.v890-poll-radar h1{margin:.15rem 0 .45rem}.v890-field-kpis,.v890-poll-radar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.v890-field-kpis article,.v890-poll-radar-grid article{padding:14px 16px;border:1px solid rgba(85,154,205,.28);border-radius:15px;background:rgba(8,29,49,.58)}.v890-field-kpis b,.v890-poll-radar-grid b{display:block;font-size:1.45rem}.v890-field-kpis small,.v890-poll-radar-grid small,.v890-poll-radar-grid span{display:block;color:var(--muted);margin-top:4px}.v890-priority-regions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 14px;margin-bottom:14px;border:1px solid rgba(245,158,11,.28);background:rgba(245,158,11,.06);border-radius:14px}.v890-priority-regions button{border:1px solid rgba(245,158,11,.35);background:rgba(17,39,62,.75);color:var(--text);padding:7px 10px;border-radius:999px;cursor:pointer}.v890-region-network-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v890-region-network{border:1px solid rgba(80,139,187,.28);border-radius:17px;padding:16px;background:linear-gradient(145deg,rgba(10,31,52,.92),rgba(7,22,39,.82))}.v890-region-network.priority{border-color:rgba(245,158,11,.45)}.v890-region-network>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.v890-region-network header small{color:#70d6ff;font-weight:800;letter-spacing:.07em}.v890-region-network h3{margin:3px 0}.v890-network-score{display:flex;align-items:baseline;gap:3px}.v890-network-score b{font-size:1.6rem}.v890-network-score span{color:var(--muted)}.v890-network-bar{height:7px;background:rgba(255,255,255,.07);border-radius:999px;overflow:hidden;margin:10px 0 13px}.v890-network-bar i{display:block;height:100%;background:linear-gradient(90deg,#18a5e8,#55e6af);border-radius:999px}.v890-network-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.v890-network-metrics span{padding:8px;background:rgba(9,29,48,.72);border-radius:10px}.v890-network-metrics b,.v890-network-metrics small{display:block}.v890-network-metrics small{font-size:.68rem;color:var(--muted)}.v890-network-status{margin:10px 0 5px;color:#8bd7f4;font-weight:700}.v890-region-network details summary{cursor:pointer;font-weight:800;padding:8px 0}.v890-field-actions{display:grid;gap:8px;margin-top:5px}.v890-field-action{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;width:100%;text-align:left;padding:11px 12px;border:1px solid rgba(83,147,195,.3);border-radius:12px;background:rgba(11,33,54,.85);color:var(--text);cursor:pointer}.v890-field-action>span b,.v890-field-action>span small{display:block}.v890-field-action>span small{color:var(--muted);margin-top:3px}.v890-field-action>em{font-style:normal;color:#67def4;font-weight:800}.v890-field-action .action-state-strip{grid-column:1/-1}.v890-field-action:disabled{opacity:.56;cursor:not-allowed}.v890-poll-radar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v890-poll-radar-grid article.empty{border-style:dashed}.v890-poll-radar-grid .goodish{color:#55e6af}.v890-poll-radar-grid .badish{color:#ff8b96}.v890-poll-explain{margin-top:12px;padding:14px 16px;border-left:4px solid #25b6f4;background:rgba(37,182,244,.07);border-radius:10px}.v890-poll-explain.good{border-color:#43d99e}.v890-poll-explain.warn{border-color:#f5b83d}.v890-poll-explain b{font-size:1.03rem}.v890-poll-explain p{margin:5px 0;color:var(--muted)}.v890-poll-explain a{color:#67def4;font-weight:800}.v890-program-rule{display:flex;flex-direction:column;gap:3px;margin:12px 0;padding:12px 14px;border-radius:12px;border:1px solid rgba(67,217,158,.35);background:rgba(67,217,158,.07)}.v890-program-rule.warn{border-color:rgba(245,184,61,.35);background:rgba(245,184,61,.07)}.v890-program-rule span{color:var(--muted)}.v890-law-impact-compact{margin:10px 0 3px;padding:9px 10px;border-radius:10px;background:rgba(7,26,44,.65);text-align:left}.v890-law-impact-compact>small{color:#70d6ff!important;font-weight:900!important}.v890-law-impact-compact>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.v890-law-impact-compact span{font-size:.72rem!important;padding:4px 7px;border-radius:8px}.v890-law-impact-compact .good{background:rgba(45,210,141,.11);color:#7ee9b9}.v890-law-impact-compact .bad{background:rgba(255,91,105,.11);color:#ff9ba4}.v890-law-impact{margin-top:12px;border:1px solid rgba(77,161,215,.26);border-radius:13px;padding:10px 12px;background:rgba(7,25,42,.58)}.v890-law-impact summary{cursor:pointer;font-weight:900;color:#79daf8}.v890-law-impact>p{color:var(--muted)}.v890-law-impact-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v890-law-impact-cols>div{padding:10px;border-radius:10px}.v890-law-impact-cols>div b,.v890-law-impact-cols>div span{display:block}.v890-law-impact-cols>div span{margin-top:5px}.v890-law-impact-cols .good{background:rgba(45,210,141,.08);color:#83ebbd}.v890-law-impact-cols .bad{background:rgba(255,91,105,.08);color:#ff9aa4}.v890-law-groups{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;color:var(--muted)}.v890-hall-scaling{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;margin:14px 0;padding:12px 14px;border:1px solid rgba(255,109,93,.35);background:linear-gradient(90deg,rgba(255,80,70,.10),rgba(134,73,255,.08));border-radius:12px}.v890-hall-scaling small,.v890-hall-scaling b{display:block}.v890-hall-scaling small{color:#ff9b8f;font-weight:900}.v890-hall-scaling p{margin:0;color:var(--muted)}
@media(max-width:900px){.v890-field-kpis{grid-template-columns:repeat(2,1fr)}.v890-region-network-grid,.v890-law-impact-cols,.v890-law-groups{grid-template-columns:1fr}.v890-network-metrics{grid-template-columns:repeat(2,1fr)}.v890-poll-radar-grid{grid-template-columns:1fr}.v890-hall-scaling{grid-template-columns:1fr}}

/* v8.9.2 — election planning + Candidate HQ */
.v892-election-unlocked{margin:12px 0 16px;padding:13px 15px;border:1px solid rgba(34,197,94,.45);background:rgba(16,185,129,.08);border-radius:14px;display:flex;flex-direction:column;gap:4px}.v892-election-unlocked b{color:#86efac}.v892-election-unlocked span{color:var(--muted,#a9b7ca);font-size:.9rem}
.v892-candidate-hq{margin:14px 0 16px;padding:16px;border:1px solid rgba(56,189,248,.32);background:linear-gradient(135deg,rgba(14,165,233,.08),rgba(99,102,241,.07));border-radius:18px}.v892-candidate-hq .section-head{align-items:center}.v892-candidate-hq small{color:#7dd3fc;font-weight:800;letter-spacing:.06em}.v892-candidate-hq h3{margin:3px 0 5px}.v892-candidate-hq p{margin:0;color:var(--muted,#a9b7ca)}
.v892-hq-grid{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;margin-top:12px}.v892-hq-grid>span{padding:11px 12px;border:1px solid rgba(148,163,184,.18);border-radius:12px;background:rgba(2,6,23,.26);display:flex;flex-direction:column;gap:2px}.v892-hq-grid b{font-size:1.05rem}.v892-hq-grid small{font-size:.74rem;color:var(--muted,#94a3b8);letter-spacing:0}.v892-hq-grid .bad b{color:#fda4af}
.v892-candidate-diagnostics{margin:12px 0 14px;padding:14px;border-radius:16px;border:1px solid rgba(148,163,184,.2);background:rgba(2,6,23,.25)}.v892-candidate-diagnostics.good{border-color:rgba(34,197,94,.3)}.v892-candidate-diagnostics.warn{border-color:rgba(245,158,11,.32)}.v892-candidate-diagnostics.bad{border-color:rgba(244,63,94,.34)}
.v892-candidate-score{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}.v892-candidate-score small{width:100%;color:#7dd3fc;font-weight:800}.v892-candidate-score b{font-size:1.45rem}.v892-candidate-score span{color:var(--muted,#a9b7ca)}
.v892-candidate-metrics{display:grid;grid-template-columns:repeat(6,minmax(90px,1fr));gap:8px;margin:12px 0}.v892-candidate-metrics>span{padding:9px 10px;border-radius:10px;background:rgba(15,23,42,.55);display:flex;flex-direction:column}.v892-candidate-metrics b{font-size:1rem}.v892-candidate-metrics small{font-size:.72rem;color:var(--muted,#94a3b8)}.v892-candidate-metrics .bad b{color:#fb7185}
.v892-candidate-recommend{display:flex;justify-content:space-between;gap:14px;align-items:center;padding-top:10px;border-top:1px solid rgba(148,163,184,.15)}.v892-candidate-recommend>div{display:flex;flex-direction:column;gap:2px}.v892-candidate-recommend small{font-weight:800;color:#86efac}.v892-candidate-recommend span{font-size:.8rem;color:var(--muted,#94a3b8)}.v892-recommended-preset{box-shadow:0 0 0 1px rgba(34,197,94,.22)}
@media(max-width:900px){.v892-hq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v892-candidate-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.v892-candidate-recommend{align-items:stretch;flex-direction:column}}

/* v8.9.3 — UI NAVIGATION REWORK */
.v893-menu-group{margin:5px 8px;border:1px solid transparent;border-radius:12px;overflow:hidden}.v893-menu-group[open]{background:rgba(15,36,59,.34);border-color:rgba(87,159,209,.16)}.v893-menu-group>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:9px 10px;color:#91a7bc;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.v893-menu-group>summary::-webkit-details-marker{display:none}.v893-menu-group>summary b{color:#5dd8ff}.v893-menu-group .menu-list{padding:0 5px 6px}.v893-menu-group:not([open]) .menu-list{display:none}.v893-mobile-group{border-bottom:1px solid rgba(148,163,184,.13)}.v893-mobile-group>summary{padding:13px 4px;cursor:pointer;font-weight:900}.v893-mobile-group .mobile-menu-links{padding-bottom:10px}
.v893-election-planner{display:grid;gap:16px;max-width:1280px;margin-inline:auto}.v893-planner-hero{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:4px 2px}.v893-planner-hero h1{font-size:2rem;margin:.2rem 0 .45rem}.v893-planner-hero p{max-width:780px;margin:0;color:var(--muted)}.v893-readiness{width:92px;height:92px;border-radius:50%;border:2px solid #22c7e8;display:grid;place-content:center;text-align:center;background:rgba(18,178,210,.06);flex:none}.v893-readiness b{font-size:1.5rem}.v893-readiness small{color:#7dd3fc}.v893-program-nav{position:sticky;top:8px;z-index:18;display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:7px;border:1px solid rgba(73,153,207,.32);border-radius:14px;background:rgba(4,14,29,.94);backdrop-filter:blur(12px);box-shadow:0 12px 28px rgba(0,0,0,.25)}.v893-program-nav a,.v893-program-nav button{display:flex;justify-content:space-between;align-items:center;gap:8px;text-decoration:none;border:0;border-radius:10px;padding:10px 12px;color:#cde7f6;background:rgba(19,47,74,.58);font-weight:800;cursor:pointer}.v893-program-nav b{color:#68ddfb}.v893-planner-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.v893-planner-kpis article{display:grid;gap:3px;padding:12px 14px;border:1px solid rgba(87,153,198,.23);background:rgba(7,27,47,.65);border-radius:13px;min-width:0}.v893-planner-kpis article.warn{border-color:rgba(245,158,11,.35)}.v893-planner-kpis article.good{border-color:rgba(34,197,94,.3)}.v893-planner-kpis small{font-size:.67rem;font-weight:900;color:#7dd3fc;letter-spacing:.06em}.v893-planner-kpis b{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v893-planner-kpis span{font-size:.76rem;color:var(--muted)}.v893-link-btn{border:0;background:none;color:#67dffa;text-align:left;padding:0;font-weight:800;cursor:pointer}.v893-lock-note{display:flex;gap:8px;flex-wrap:wrap;padding:10px 13px;border:1px solid rgba(245,158,11,.35);background:rgba(245,158,11,.07);border-radius:12px}.v893-lock-note.good{border-color:rgba(34,197,94,.3);background:rgba(34,197,94,.06)}.v893-lock-note span{color:var(--muted)}
.v893-planner-section{scroll-margin-top:76px;border:1px solid rgba(79,145,191,.22);border-radius:17px;padding:14px;background:rgba(5,20,36,.42)}.v893-section-title{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px}.v893-section-title>div{display:flex;align-items:center;gap:10px}.v893-section-title>div>span{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:rgba(37,182,244,.12);border:1px solid rgba(37,182,244,.35);color:#76dcfa;font-weight:900}.v893-section-title h2{margin:0;font-size:1.1rem}.v893-section-title p{margin:2px 0 0;color:var(--muted);font-size:.78rem}.v893-section-title>b{color:#75defa}
.v893-agenda{border:1px solid rgba(78,147,194,.22);border-radius:14px;padding:12px;background:rgba(8,27,45,.55)}.v893-agenda+ .v893-agenda{margin-top:10px}.v893-agenda>header{display:flex;justify-content:space-between;align-items:center;gap:12px}.v893-agenda>header small{font-size:.65rem;color:#6edcfb;font-weight:900;letter-spacing:.07em}.v893-agenda h3{margin:2px 0;font-size:1rem}.v893-agenda>header span{color:var(--muted);font-size:.76rem}.v893-progress-ring{width:48px;height:48px;border:1px solid rgba(68,211,155,.35);border-radius:50%;display:grid;place-items:center;color:#68e3b0}.v893-mini-progress{height:5px;margin:9px 0 10px;background:rgba(255,255,255,.06);border-radius:999px;overflow:hidden}.v893-mini-progress i{display:block;height:100%;background:linear-gradient(90deg,#23b6ed,#45d7a0)}.v893-issues{display:grid;gap:7px}.v893-issue{border:1px solid rgba(103,153,188,.18);border-radius:11px;background:rgba(8,25,42,.52);overflow:hidden}.v893-issue.todo{border-color:rgba(245,158,11,.28)}.v893-issue.done{border-color:rgba(34,197,94,.19)}.v893-issue>summary{list-style:none;display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 12px;cursor:pointer}.v893-issue>summary::-webkit-details-marker{display:none}.v893-issue>summary span{display:grid;gap:2px}.v893-issue>summary small{color:var(--muted)}.v893-issue.todo>summary em{color:#ffc45d}.v893-issue.done>summary em{color:#67e6b1}.v893-issue-body{padding:0 12px 12px}.v893-issue-body>p{margin:0 0 9px;color:#cbd5e1}.v893-issue-body .agenda-options{grid-template-columns:repeat(3,minmax(0,1fr))}.v893-issue-body .agenda-promise-label{margin-top:9px}.v893-issue-impact{font-size:.73rem;color:#88b8ce;margin-top:7px}.v893-agenda-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:10px}
.v893-topic-groups{display:grid;gap:8px}.v893-topic-groups>details{border:1px solid rgba(83,151,198,.2);border-radius:12px;background:rgba(8,25,43,.5);overflow:hidden}.v893-topic-groups>details>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:11px 13px}.v893-topic-groups>details>summary::-webkit-details-marker{display:none}.v893-topic-groups>details>summary span{display:flex;gap:8px;align-items:baseline}.v893-topic-groups>details>summary small,.v893-topic-groups>details>summary em{color:var(--muted);font-size:.72rem;font-style:normal}.v893-topic-groups>details>div{padding:0 8px 8px}.v893-topic-row{border-top:1px solid rgba(148,163,184,.11)}.v893-topic-row:first-child{border-top:0}.v893-topic-row>summary{list-style:none;display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 6px;cursor:pointer}.v893-topic-row>summary::-webkit-details-marker{display:none}.v893-topic-row>summary span{display:grid;gap:2px}.v893-topic-row>summary small{color:var(--muted);font-size:.72rem}.v893-topic-row>summary em{font-style:normal;color:#72dff7;font-size:.76rem}.v893-topic-row.drafting>summary em{color:#ffcc65}.v893-topic-edit{padding:0 6px 12px}.v893-topic-edit .compact-stances{grid-template-columns:repeat(3,minmax(0,1fr))}.v893-topic-edit .program-intensity-label{margin-top:8px}
.v893-analysis{display:grid;gap:9px}.v893-quick-links{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.v893-quick-links button{border:1px solid rgba(74,153,207,.28);border-radius:10px;background:rgba(12,39,62,.72);color:var(--text);padding:10px;cursor:pointer;font-weight:800}.v893-analysis>details{border:1px solid rgba(83,151,198,.18);border-radius:11px;background:rgba(6,22,38,.54);padding:0 11px}.v893-analysis>details>summary{padding:11px 0;cursor:pointer;font-weight:850}.v893-analysis>details>.ideology-compass-card,.v893-analysis>details>.panel,.v893-analysis>details>.promise-archive{margin:0 0 11px}.v893-fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-bottom:10px}.v893-fit-grid h4{margin:0 0 8px}
.v893-savebar{position:sticky;bottom:10px;z-index:19;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border:1px solid rgba(84,151,197,.3);border-radius:13px;background:rgba(4,15,29,.95);box-shadow:0 12px 30px rgba(0,0,0,.3)}.v893-savebar.dirty{border-color:rgba(245,158,11,.48)}.v893-savebar>div:first-child{display:grid;gap:2px}.v893-savebar small{color:var(--muted)}.v893-savebar>div:last-child{display:flex;gap:7px}
@media(max-width:900px){.v893-planner-kpis{grid-template-columns:repeat(2,1fr)}.v893-program-nav{grid-template-columns:repeat(2,1fr);position:static}.v893-issue-body .agenda-options,.v893-topic-edit .compact-stances{grid-template-columns:1fr}.v893-quick-links{grid-template-columns:repeat(2,1fr)}.v893-fit-grid{grid-template-columns:1fr}.v893-savebar{position:static;align-items:stretch;flex-direction:column}.v893-savebar>div:last-child{display:grid;grid-template-columns:1fr 1fr}.v893-planner-hero{align-items:flex-start}.v893-readiness{width:72px;height:72px}.v893-planner-hero h1{font-size:1.55rem}}
@media(max-width:560px){.v893-planner-kpis{grid-template-columns:1fr 1fr}.v893-program-nav{grid-template-columns:1fr 1fr}.v893-planner-hero{display:block}.v893-readiness{margin-top:10px}.v893-section-title{align-items:flex-start}.v893-quick-links{grid-template-columns:1fr 1fr}.v893-savebar>div:last-child{grid-template-columns:1fr}}


/* v8.9.4 — UI STATE PERSISTENCE */
.v894-menu-chevron{display:inline-block;transition:transform .16s ease;color:#5dd8ff!important;font-size:.9rem;line-height:1}
details:not([open])>.v893-menu-group summary .v894-menu-chevron{transform:rotate(-90deg)}
.v893-menu-group:not([open])>summary .v894-menu-chevron,.v893-mobile-group:not([open])>summary .v894-menu-chevron{transform:rotate(-90deg)}
.v894-toggle-label .v894-when-open{display:none}.v894-persistent-details[open]>summary .v894-toggle-label .v894-when-open{display:inline}.v894-persistent-details[open]>summary .v894-toggle-label .v894-when-closed{display:none}
.v894-persistent-details>summary{user-select:none}

/* v8.10.0 Campaigns & Fieldwork */
.v8100-campaign-top,.v8100-field-kpis,.v8100-war-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:14px 0}.v8100-campaign-top article,.v8100-field-kpis span,.v8100-war-kpis span{background:#0c1c32;border:1px solid #24415d;border-radius:14px;padding:14px;display:grid;gap:5px}.v8100-campaign-top small,.v8100-field-kpis small,.v8100-war-kpis small{color:#8ba5bd}.v8100-campaign-top b{display:block}.v8100-campaign-top em{font-style:normal;color:#66d9ef;float:right}.v8100-region-select{display:grid;gap:7px;margin:14px 0;max-width:520px}.v8100-campaign-grid,.v8100-field-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.v8100-campaign-grid>article,.v8100-field-actions>button{background:#0b1a2d;border:1px solid #27425e;border-radius:16px;padding:16px;text-align:left;color:inherit}.v8100-campaign-grid article.locked{opacity:.68}.v8100-campaign-grid header{display:flex;justify-content:space-between;gap:10px}.v8100-campaign-grid header span{color:#7edff0;font-size:12px;text-transform:uppercase}.v8100-meta{display:flex;justify-content:space-between;color:#b5c8da;margin:10px 0}.v8100-effects{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 14px}.v8100-effect{border:1px solid;border-radius:999px;padding:5px 8px;font-size:12px}.v8100-effect.good{color:#83f0c0;border-color:#167a5a;background:#0d3029}.v8100-effect.bad{color:#ff9da8;border-color:#983e50;background:#351923}.v8100-batch-panel{margin:14px 0;padding:14px;border:1px solid #275e76;background:#0b2231;border-radius:14px}.v8100-batch-controls{display:grid;grid-template-columns:2fr 1fr auto;gap:8px;align-items:end}.v8100-action-line{display:block;margin-top:8px;color:#78e1f4;font-size:12px}.v8100-own-club button em{display:block;color:#ffcb68;margin-top:5px;font-style:normal}.v8100-threshold-legend{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.v8100-threshold-legend span{font-size:11px;border-radius:999px;padding:5px 8px;border:1px solid}.v8100-threshold-legend .bad{color:#ff9aa5;border-color:#8f3848}.v8100-threshold-legend .warn{color:#ffc861;border-color:#76591b}.v8100-threshold-legend .good{color:#76e4b4;border-color:#24745b}.v8100-threshold-legend .legend{color:#d8b4fe;border-color:#7042a0}.v8100-promise-archive .promise-milestones>div.bad{border-color:#743242}.v8100-promise-archive .promise-milestones>div.good,.v8100-promise-archive .promise-milestones>div.ok{border-color:#1e6d55}.v8100-promise-archive .promise-milestones>div.legend{border-color:#784bb0;box-shadow:0 0 0 1px #784bb055}.v8100-field-hq>details{margin-top:16px}.v8100-weak-regions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.v8100-weak-regions article{background:#111f34;border:1px solid #2d4562;padding:12px;border-radius:12px;display:grid;gap:4px}.v8100-field-actions button p{color:#9fb1c3;min-height:36px}.v8100-field-actions button span{color:#65d9ec}.v8100-comms-adviser,.v8100-war-help,.v8100-dip-advice{border-color:#1e5772;background:linear-gradient(135deg,#10223a,#0b1729)}.v8100-comms-links{display:flex;flex-wrap:wrap;gap:8px}.v8100-comms-links button{background:#142a42;border:1px solid #2c5b77;border-radius:10px;color:#dcefff;padding:9px 12px}.v8100-dip-scale{display:flex;align-items:center;gap:8px;color:#9db1c5;font-size:12px}.v8100-dip-scale i{height:3px;flex:1;background:linear-gradient(90deg,#ef5350,#f4c95d,#31c48d);border-radius:99px}.v8100-tutorial-steps{display:grid;gap:10px;margin:16px 0}.v8100-tutorial-steps article{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center;border:1px solid #2b415b;background:#0d1b2e;border-radius:14px;padding:13px}.v8100-tutorial-steps article.done{border-color:#1e7258;background:#0d2b25}.v8100-tutorial-steps article>span{font-size:22px}.v8100-tutorial-steps p{margin:3px 0;color:#9eb2c5}.v8100-help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;padding:12px}.v8100-help-grid article{background:#0d1b2e;border:1px solid #243b55;border-radius:12px;padding:12px}.v8100-help-grid p{color:#a3b7c9;margin:5px 0 0}
@media(max-width:800px){.v8100-batch-controls{grid-template-columns:1fr}.v8100-weak-regions{grid-template-columns:1fr}.v8100-tutorial-steps article{grid-template-columns:30px 1fr}.v8100-tutorial-steps article button{grid-column:2}.v8100-campaign-grid,.v8100-field-actions{grid-template-columns:1fr}}

/* ========================================================================== */
/* Politikon v8.11.0 — WORLD & UX UNIFICATION                                */
/* ========================================================================== */
.v8110-opinion-grid,.v8110-rel-summary,.v8110-personal-grid,.v8110-central-kpis,.v8110-whip-kpis,.v8110-endgame-world{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:9px;margin:14px 0}.v8110-opinion-grid>span,.v8110-rel-summary>span,.v8110-personal-grid>span,.v8110-central-kpis>span,.v8110-whip-kpis>span,.v8110-endgame-world>span{display:grid;gap:3px;padding:12px;border:1px solid #29435e;background:#0b1a2d;border-radius:13px}.v8110-opinion-grid b,.v8110-personal-grid b,.v8110-central-kpis b,.v8110-whip-kpis b,.v8110-endgame-world b{font-size:1.15rem}.v8110-opinion-grid small,.v8110-rel-summary small,.v8110-personal-grid small,.v8110-central-kpis small,.v8110-whip-kpis small,.v8110-endgame-world small{color:#8fa9bf}.v8110-opinion-grid .good b,.v8110-personal-grid .good b{color:#73e5b5}.v8110-opinion-grid .bad b,.v8110-personal-grid .bad b{color:#ff98a5}.v8110-audit-detail{padding:12px;color:#a9bdd0}.v8110-audit-detail p{margin:7px 0;overflow-wrap:anywhere}
.v8110-rel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:10px;margin:14px 0}.v8110-relation-card{border:1px solid #28425d;background:linear-gradient(145deg,#0b1a2c,#0d2138);border-radius:15px;padding:14px}.v8110-relation-card.government{border-color:#2a7a60;box-shadow:inset 0 0 0 1px rgba(59,202,145,.08)}.v8110-relation-card header,.v8110-relation-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.v8110-relation-card h3{font-size:.95rem;margin:9px 0}.v8110-rel-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.v8110-rel-meta span{display:grid;gap:2px;padding:8px;border-radius:9px;background:#0a1728}.v8110-rel-meta small{font-size:.67rem;color:#8ea8be}.v8110-relation-card footer{margin-top:10px;font-size:.72rem;color:#a7bdd0}.v8110-relation-card footer .good{color:#6ee7b7}.v8110-rel-section{margin-top:12px;border:1px solid #28445f;border-radius:15px;background:#091828;padding:0 12px}.v8110-rel-section>summary{cursor:pointer;padding:13px 2px;font-weight:900}.v8110-rel-section>.panel,.v8110-rel-section>.mega-panel{margin:0 0 12px}
.v8110-newsroom{overflow:hidden}.v8110-news-card{border:1px solid #28415c;background:#0b1b2e;border-radius:16px;overflow:hidden;display:grid}.v8110-news-card img{width:100%;height:140px;object-fit:cover;background:#0d2740}.v8110-news-card>div{padding:14px}.v8110-news-card.hero{grid-template-columns:minmax(250px,.9fr) 1.35fr;margin:14px 0;border-color:#31617e}.v8110-news-card.hero img{height:100%;min-height:260px}.v8110-news-card h2,.v8110-news-card h3{margin:7px 0}.v8110-news-card p{color:#afc0d2;line-height:1.5}.v8110-news-meta{display:flex;justify-content:space-between;gap:10px;color:#67d9f1;text-transform:uppercase;font-size:.7rem;font-weight:900;letter-spacing:.05em}.v8110-news-meta small{color:#829aae}.v8110-why{margin-top:11px;border-left:3px solid #2fb6df;padding:9px 11px;background:#0b2538;color:#c3d7e7;border-radius:0 9px 9px 0}.v8110-news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:11px}.v8110-news-trends{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:14px 0}.v8110-news-trends span{border:1px solid #2d5872;background:#0b2639;border-radius:999px;padding:6px 9px;color:#8ee6f5;font-size:.75rem}
.v8110-urgent{border:1px solid #8b5c22;background:#211b14;border-radius:16px;padding:13px;margin:14px 0}.v8110-urgent h3{margin:0 0 9px;color:#ffc967}.v8110-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(180px,1fr));gap:8px;overflow-x:auto;padding-bottom:8px}.v8110-day{min-width:180px;border:1px solid #28445d;background:#0a192a;border-radius:14px;padding:10px}.v8110-day.today{border-color:#2faad5;box-shadow:inset 0 0 0 1px #2faad533}.v8110-day>header{display:flex;justify-content:space-between;gap:8px;margin-bottom:8px}.v8110-day>header small{color:#7f9bb2}.v8110-plan-item{display:grid;grid-template-columns:1fr auto;gap:7px;border-left:3px solid #3ea6cc;background:#0d2236;border-radius:8px;padding:8px;margin:6px 0;cursor:pointer}.v8110-plan-item.warn,.v8110-plan-item.urgent,.v8110-plan-item.high{border-left-color:#f0ad3b}.v8110-plan-item.bad,.v8110-plan-item.danger{border-left-color:#ef5c6d}.v8110-plan-item div{display:grid;gap:2px}.v8110-plan-item small{color:#75d4ea;font-size:.62rem;font-weight:900}.v8110-plan-item span{color:#9db1c4;font-size:.7rem}.v8110-plan-item time{font-size:.66rem;color:#cbd7e2;white-space:nowrap}.v8110-empty-day{display:block;color:#617b92;font-size:.72rem;padding:8px 0}
.v8110-personal-grid>span:nth-child(-n+2){border-color:#2a6757}.v8110-life-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:9px}.v8110-life-action{display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center;text-align:left;border:1px solid #29455f;border-radius:13px;background:#0a1d31;color:inherit;padding:11px;cursor:pointer}.v8110-life-action>span{font-size:1.4rem}.v8110-life-action div{display:grid;gap:2px}.v8110-life-action small{color:#91a9be}.v8110-life-action em{color:#6eddec;font-style:normal;font-size:.75rem}.v8110-life-action:disabled{opacity:.5}.v8110-legacy-detail{padding:0 14px}.v8110-legacy-detail>summary{padding:15px 0;font-weight:900;cursor:pointer}.v8110-detail-pad>.panel{border:0;background:transparent;padding:4px}
.v8110-central-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0}.v8110-central-tabs button{border:1px solid #315675;background:#0b2136;color:#dceaf6;border-radius:11px;padding:10px;font-weight:900}.v8110-central-tabs button.active{border-color:#2db7d8;background:#0e3248;color:#83ebff}.v8110-contracts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.v8110-contracts article{display:flex;align-items:center;justify-content:space-between;gap:9px;border:1px solid #28455f;background:#0b1c30;border-radius:12px;padding:10px}.v8110-contracts article.ready{border-color:#257c5c;background:#0c2b25}.v8110-contracts article>div{display:grid;gap:2px}.v8110-contracts small{color:#92acc0}.v8110-contracts .btn{padding:7px 9px}
.v8110-candidate-tools{border:1px solid #2b607a;background:#0b2133;border-radius:14px;padding:12px;margin:8px 0 13px}.v8110-shortlist,.v8110-filterbar{display:flex;gap:7px;flex-wrap:wrap}.v8110-shortlist button,.v8110-filterbar button{border:1px solid #2a526d;background:#10273b;color:#d8e8f4;border-radius:9px;padding:7px 9px}.v8110-shortlist button span{color:#69d9ef;margin-left:5px}.v8110-filterbar{margin-top:9px}.v8110-filterbar button.active{background:#15536a;border-color:#39c0df}.v8110-flash-card{outline:2px solid #44d4f0;box-shadow:0 0 25px #44d4f033}
.v8110-whip-kpis{grid-template-columns:repeat(3,minmax(120px,1fr))}.v8110-whip-list{display:grid;gap:8px}.v8110-whip-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #2a455f;background:#0b1d31;border-radius:12px;padding:11px}.v8110-whip-list article>div:first-child{display:grid;gap:3px}.v8110-whip-list small{color:#91a8bd}.v8110-whip-list article>div:last-child{display:flex;gap:6px}.v8110-whip-list button{border:1px solid #32617c;background:#0d2a41;color:#dff4ff;border-radius:8px;padding:7px 9px}
.v8110-country-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:9px;margin:14px 0}.v8110-country-metric{display:grid;gap:4px;border:1px solid #29435f;background:#0b1b2e;border-radius:13px;padding:12px}.v8110-country-metric small{color:#8ea7bc}.v8110-country-metric b{font-size:1.08rem}.v8110-country-metric span{color:#8fa4b8;font-size:.72rem}.v8110-country-metric.good{border-color:#216b54}.v8110-country-metric.good span{color:#71e5b2}.v8110-country-metric.bad{border-color:#76384a}.v8110-country-metric.bad span{color:#ff9ca8}.v8110-country-laws{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v8110-country-laws>section{border:1px solid #29435e;border-radius:14px;padding:12px;background:#09192a}.v8110-country-law{border-top:1px solid #22384e;padding:9px 0}.v8110-country-law:first-of-type{border-top:0}.v8110-country-law>div:first-child{display:grid;gap:2px}.v8110-country-law small{color:#819ab1}.v8110-country-law-effects{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.v8110-country-law-effects span{font-size:.68rem;padding:4px 6px;border-radius:7px}.v8110-country-law-effects .good{color:#78e4b7;background:#103127}.v8110-country-law-effects .bad{color:#ff9da9;background:#351824}
.v8110-case-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:8px}.v8110-case-grid article{display:grid;grid-template-columns:1fr auto;gap:5px;border:1px solid #514053;background:#191827;border-radius:12px;padding:10px}.v8110-case-grid article>div{display:grid}.v8110-case-grid small{color:#a99eb2}.v8110-case-grid>article>span{grid-column:1/-1;color:#e0b7c1}.v8110-case-grid em{font-style:normal;color:#ffb66e;font-size:.72rem}
.v8110-endgame{border-color:#654a85;background:linear-gradient(145deg,#17132a,#0b1729)}.v8110-control-ring{width:100px;height:100px;border:2px solid #9b65d4;border-radius:50%;display:grid;place-items:center;text-align:center;background:#21163a}.v8110-control-ring b{font-size:2rem}.v8110-control-ring small{font-size:.65rem;color:#c9afdf}.v8110-endgame-stages{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:12px 0}.v8110-endgame-stages span{padding:9px;border:1px solid #3f3456;border-radius:9px;color:#75698a;font-size:.72rem}.v8110-endgame-stages span.active{color:#e7d4ff;border-color:#8157ae;background:#251a39}.v8110-impact{display:inline-flex;gap:5px;padding:4px 7px;border-radius:8px;font-size:.7rem}.v8110-impact.good{color:#76e5b6;background:#103327}.v8110-impact.bad{color:#ff9ca8;background:#351923}
@media(max-width:900px){.v8110-news-card.hero{grid-template-columns:1fr}.v8110-news-card.hero img{min-height:180px}.v8110-calendar-grid{grid-template-columns:repeat(7,170px)}.v8110-country-laws{grid-template-columns:1fr}.v8110-contracts{grid-template-columns:1fr}.v8110-endgame-stages{grid-template-columns:1fr 1fr}.v8110-whip-list article{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.v8110-rel-meta{grid-template-columns:1fr 1fr}.v8110-central-tabs{grid-template-columns:1fr}.v8110-life-action{grid-template-columns:30px 1fr}.v8110-life-action em{grid-column:2}.v8110-whip-list article>div:last-child{flex-direction:column;width:100%}.v8110-whip-list button{width:100%}.v8110-control-ring{width:82px;height:82px}}

/* v8.11.1 — election/law clarity */
.v8111-law-command{margin:16px 0;padding:18px;border:1px solid #26435d;border-radius:18px;background:linear-gradient(135deg,rgba(9,29,49,.96),rgba(15,29,52,.96))}.v8111-law-command.urgent{border-color:#8b3e4e;box-shadow:inset 4px 0 #ff4d5f}.v8111-law-command.clear{border-color:#176c57;box-shadow:inset 4px 0 #23c483}.v8111-law-command-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.v8111-law-command-grid article{padding:14px;border:1px solid #27415c;border-radius:14px;background:#0d1d31}.v8111-law-command-grid article.danger{border-color:#713749}.v8111-law-command-grid article.wait{border-color:#735d22}.v8111-law-command-grid b{display:block;font-size:1.55rem}.v8111-law-command-grid span,.v8111-law-command-grid small{display:block}.v8111-law-now{margin:16px 0;padding:14px;border:1px solid #7a3648;border-radius:16px;background:rgba(79,24,39,.16)}.v8111-section-title{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px;color:#ff9ca7}.v8111-law-wait,.v8111-law-pool,.v8111-law-other,.v8111-vote-history{margin:14px 0;border:1px solid #24425e;border-radius:16px;background:#0b1b2e;overflow:hidden}.v8111-law-wait>summary,.v8111-law-pool>summary,.v8111-law-other>summary,.v8111-vote-history>summary{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:16px 18px;cursor:pointer;list-style:none}.v8111-law-wait>summary{border-left:4px solid #f3b91f}.v8111-law-pool>summary{border-left:4px solid #31aee8}.v8111-law-other>summary{border-left:4px solid #64748b}.v8111-law-wait>div,.v8111-law-pool>div,.v8111-law-other>div,.v8111-vote-history>div{padding:0 16px 16px}.v8111-structural-guide{margin-top:18px;padding:18px;border:1px solid #276d68;border-radius:18px;background:linear-gradient(135deg,rgba(8,42,48,.7),rgba(11,25,45,.96))}.v8111-daily-growth-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.v8111-daily-growth-grid article{padding:14px;border:1px solid #28516a;border-radius:14px;background:#0d2034}.v8111-daily-growth-grid article>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#124f62;color:#71e5da;font-weight:800;margin-bottom:8px}.v8111-daily-growth-grid b{display:block;margin-bottom:6px}.v8111-daily-growth-grid p{margin:0;color:#a9bbcf;font-size:.88rem;line-height:1.45}.v8111-growth-math{display:flex;flex-wrap:wrap;gap:8px 14px;padding:12px 14px;border-radius:12px;background:#0a1728}.v8111-growth-math em{width:100%;color:#ffd36c;font-style:normal}.v8111-growth-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
@media(max-width:900px){.v8111-law-command-grid,.v8111-daily-growth-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.v8111-law-command-grid,.v8111-daily-growth-grid{grid-template-columns:1fr}.v8111-section-title{display:block}.v8111-law-wait>summary,.v8111-law-pool>summary,.v8111-law-other>summary{align-items:flex-start;flex-direction:column}}

/* v8.11.2 — tennis LIVE restore */
.v8112-tennis-live-callout{display:flex;justify-content:space-between;align-items:center;gap:18px;border:1px solid #c23b55;box-shadow:inset 4px 0 #ff405e;background:linear-gradient(135deg,rgba(76,18,35,.34),rgba(8,29,49,.96));margin-bottom:14px}.v8112-tennis-live-callout h2{margin:4px 0 5px}.v8112-tennis-live-callout h2 strong{color:#ff647d;font-size:.8em;margin:0 8px}.v8112-tennis-live-callout p{margin:0;color:#aebed0}.v8112-tennis-live-callout .btn{white-space:nowrap}@media(max-width:720px){.v8112-tennis-live-callout{align-items:stretch;flex-direction:column}.v8112-tennis-live-callout .btn{width:100%}}


/* v8.11.3 Tennis ranking + Second Chance */
.v8113-reward-strip{display:grid;grid-template-columns:repeat(6,minmax(105px,1fr));gap:7px;margin:10px 0 12px}.v8113-reward-strip span{display:flex;flex-direction:column;padding:8px 9px;border:1px solid rgba(120,170,220,.22);border-radius:10px;background:rgba(8,22,40,.42);font-size:12px}.v8113-reward-strip b{font-size:11px;color:#7ddcf5;margin-bottom:3px}.v8113-second-chance{border-color:rgba(255,174,45,.55);background:linear-gradient(135deg,rgba(44,28,5,.36),rgba(9,28,48,.84))}.v8113-sc-rules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.v8113-sc-rules article{padding:11px 12px;border:1px solid rgba(255,185,70,.25);border-radius:12px;background:rgba(8,20,37,.64)}.v8113-sc-rules small{display:block;color:#aebdd1;font-size:10px}.v8113-sc-rules b{display:block;margin-top:3px;color:#ffd066}.v8113-ranking-rule{margin-top:12px;padding:11px 13px;border:1px solid rgba(74,220,185,.28);border-radius:12px;background:rgba(8,53,54,.28);display:flex;gap:12px;align-items:flex-start}.v8113-ranking-rule b{white-space:nowrap;color:#69e3bf}.v8113-ranking-rule span{font-size:12px;color:#b8c8da;line-height:1.45}@media(max-width:900px){.v8113-reward-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.v8113-sc-rules{grid-template-columns:repeat(2,minmax(0,1fr))}.v8113-ranking-rule{flex-direction:column;gap:5px}.v8113-ranking-rule b{white-space:normal}}

/* ========================================================================== */
/* Politikon v8.12.0 — Political Systems Rework                               */
/* ========================================================================== */
.v8120-plan-status{margin:14px 0 2px;padding:12px;border:1px solid rgba(56,189,248,.26);border-radius:16px;background:rgba(5,20,39,.5)}
.v8120-plan-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.v8120-plan-steps article{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid rgba(148,163,184,.16);border-radius:12px;background:rgba(15,31,54,.72)}.v8120-plan-steps article>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-weight:900;background:#132b48;color:#93c5fd}.v8120-plan-steps article.done{border-color:rgba(16,185,129,.42);background:rgba(6,78,59,.22)}.v8120-plan-steps article.done>span{background:rgba(16,185,129,.22);color:#6ee7b7}.v8120-plan-steps article div{min-width:0}.v8120-plan-steps article b,.v8120-plan-steps article small{display:block}.v8120-plan-steps article small{color:#93a4bb;margin-top:2px}.v8120-plan-steps article em{margin-left:auto;font-style:normal;font-weight:800;color:#67e8f9}.v8120-plan-help{margin-top:10px;padding:10px 12px;border-radius:12px;background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.26)}.v8120-plan-help.good{background:rgba(16,185,129,.09);border-color:rgba(16,185,129,.3)}.v8120-plan-help p{margin:3px 0}.v893-readiness.complete{border-color:#22d3ee!important;box-shadow:0 0 0 2px rgba(34,211,238,.08) inset}
.v8120-opinion-kpis,.v8120-leader-kpis,.v8120-caucus-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.v8120-opinion-kpis article,.v8120-leader-kpis span,.v8120-caucus-kpis span{padding:12px;border:1px solid rgba(125,211,252,.18);border-radius:13px;background:rgba(7,23,43,.68)}.v8120-opinion-kpis small,.v8120-leader-kpis small,.v8120-caucus-kpis small{display:block;color:#90a3bc;font-size:.75rem}.v8120-opinion-kpis b,.v8120-leader-kpis b,.v8120-caucus-kpis b{display:block;font-size:1.25rem;margin:2px 0}.v8120-opinion-actions{display:grid;gap:9px}.v8120-opinion-actions article{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:11px;border:1px solid rgba(148,163,184,.16);border-radius:13px}.v8120-opinion-actions article>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#172c48;font-weight:900}.v8120-opinion-actions article.warn{border-color:rgba(245,158,11,.35)}.v8120-opinion-actions article.bad{border-color:rgba(248,113,113,.35)}.v8120-opinion-actions article.good{border-color:rgba(52,211,153,.35)}.v8120-opinion-actions p{margin:2px 0;color:#a8b8cc}.v8120-shock-detail{padding:10px 4px}.v8120-shock-detail b,.v8120-shock-detail small{display:block}
.v8120-leader-next{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;padding:11px 13px;margin:10px 0;border-radius:12px;background:rgba(14,116,144,.10);border:1px solid rgba(34,211,238,.2)}.v8120-leader-links{display:flex;flex-wrap:wrap;gap:8px}.v8120-leader-links button{padding:9px 11px;border-radius:10px;border:1px solid rgba(56,189,248,.25);background:#0c223b;color:#dbeafe;font-weight:800}
.v8120-structure-link{display:grid;grid-template-columns:1fr 230px;gap:16px;align-items:center;border-color:rgba(52,211,153,.28)!important}.v8120-structure-link>div:last-child{padding:12px;border-radius:13px;background:rgba(6,78,59,.2);text-align:center}.v8120-structure-link strong,.v8120-structure-link small{display:block}.v8120-structure-link strong{font-size:1.6rem;color:#6ee7b7;margin-top:8px}
.v8120-media-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:12px 0}.v8120-media-kpis span{padding:11px;border-radius:12px;background:rgba(7,23,43,.68);border:1px solid rgba(125,211,252,.16)}.v8120-media-kpis small,.v8120-media-kpis b{display:block}.v8120-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v8120-media-card{padding:13px;border-radius:14px;border:1px solid rgba(125,211,252,.18);background:rgba(10,28,50,.76)}.v8120-media-card header{display:flex;justify-content:space-between;gap:8px}.v8120-media-card .v8120-media-rel{font-size:1.15rem;font-weight:900;color:#67e8f9}.v8120-media-card p{color:#a8b8cc}.v8120-media-card details{margin-top:8px;padding-top:8px;border-top:1px solid rgba(148,163,184,.14)}
.v8120-caucus-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.v8120-caucus-actions button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;padding:12px;border-radius:13px;border:1px solid rgba(56,189,248,.25);background:#0a2039;color:#e7f2ff}.v8120-caucus-actions button:disabled{opacity:.48}.v8120-caucus-actions span,.v8120-caucus-actions small{color:#9db1c9}
.v8120-immunity-desk{margin:0 0 14px;padding:14px;border:1px solid rgba(251,191,36,.4);background:rgba(120,53,15,.08);border-radius:16px}.v8120-immunity-vote{padding:13px;border-radius:13px;background:rgba(9,26,48,.78);border:1px solid rgba(251,191,36,.2);margin-top:10px}.v8120-immunity-vote header{display:flex;justify-content:space-between;gap:12px}.v8120-immunity-vote header span{display:block;color:#9fb0c6}.v8120-immunity-metrics{display:flex;gap:8px;margin:10px 0}.v8120-immunity-metrics span{padding:8px 11px;border-radius:10px;background:#0e2945}.v8120-immunity-metrics small,.v8120-immunity-metrics b{display:block}.v8120-immunity-influence{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0}.v8120-immunity-influence button{padding:10px;text-align:left;border-radius:11px;background:#0d263f;border:1px solid rgba(125,211,252,.2);color:#e5efff}.v8120-immunity-influence button.danger{border-color:rgba(248,113,113,.35)}.v8120-immunity-influence span{display:block;color:#9fb0c6;margin-top:3px}.v8120-attendance-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:11px;margin:10px 0;border-radius:13px;border:1px solid rgba(52,211,153,.25);background:rgba(6,78,59,.10)}.v8120-attendance-strip.warn{border-color:rgba(245,158,11,.32);background:rgba(120,53,15,.08)}.v8120-attendance-strip span{padding:7px}.v8120-attendance-strip b,.v8120-attendance-strip small{display:block}.v8120-attendance-strip p{grid-column:1/-1;margin:0;color:#a8b8cc}
.v8120-ministry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.v8120-ministry-card{padding:13px;border-radius:15px;background:rgba(9,28,50,.76);border:1px solid rgba(52,211,153,.2)}.v8120-ministry-card.warn{border-color:rgba(245,158,11,.32)}.v8120-ministry-card.bad{border-color:rgba(248,113,113,.36)}.v8120-ministry-card header{display:flex;justify-content:space-between;gap:8px}.v8120-ministry-card header small{display:block;color:#93a4bb}.v8120-ministry-bars{display:grid;gap:8px;margin:10px 0}.v8120-ministry-bars>div>span{display:flex;justify-content:space-between;font-size:.82rem}.v8120-ministry-bars i{display:block;height:7px;border-radius:999px;background:#162b45;overflow:hidden}.v8120-ministry-bars u{display:block;height:100%;background:linear-gradient(90deg,#10b981,#22d3ee)}.v8120-ministry-bars .risk u{background:linear-gradient(90deg,#f59e0b,#ef4444)}.v8120-ministry-bars .pressure u{background:linear-gradient(90deg,#38bdf8,#a855f7)}
.v8120-policy-map{margin-top:14px;padding:13px;border-radius:15px;border:1px solid rgba(167,139,250,.25);background:rgba(30,27,75,.10)}.v8120-policy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.v8120-policy-grid article{padding:11px;border-radius:12px;background:#0b223b;border:1px solid rgba(148,163,184,.16)}.v8120-policy-grid article b,.v8120-policy-grid article span,.v8120-policy-grid article small{display:block}.v8120-policy-grid article span{margin-top:5px;color:#c4d4e7}.v8120-policy-grid details{margin-top:8px}.v8120-policy-grid button{display:block;width:100%;text-align:left;margin-top:4px;padding:7px;border-radius:8px;border:1px solid rgba(56,189,248,.2);background:#0a1c31;color:#bae6fd}
@media(max-width:1050px){.v8120-plan-steps,.v8120-opinion-kpis,.v8120-leader-kpis,.v8120-media-kpis,.v8120-ministry-grid,.v8120-policy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v8120-caucus-actions,.v8120-immunity-influence{grid-template-columns:1fr}.v8120-structure-link{grid-template-columns:1fr}}
@media(max-width:650px){.v8120-plan-steps,.v8120-opinion-kpis,.v8120-leader-kpis,.v8120-media-kpis,.v8120-media-grid,.v8120-ministry-grid,.v8120-policy-grid,.v8120-attendance-strip{grid-template-columns:1fr}.v8120-opinion-actions article{grid-template-columns:30px 1fr}.v8120-opinion-actions article button{grid-column:1/-1}.v8120-leader-next{grid-template-columns:1fr}.v8120-attendance-strip p{grid-column:auto}}
.v8120-leader-life{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:10px 0 14px}.v8120-leader-life article{padding:10px 12px;border:1px solid rgba(148,163,184,.16);border-radius:12px;background:rgba(8,25,45,.65)}.v8120-leader-life small,.v8120-leader-life b{display:block}.v8120-leader-life small{color:#7dd3fc;font-size:.7rem;letter-spacing:.04em}.v8120-leader-life b{margin-top:4px}.v8120-media-outlet{padding:13px;border-radius:14px;border:1px solid rgba(125,211,252,.18);background:rgba(10,28,50,.76)}.v8120-media-outlet.friendly{border-color:rgba(52,211,153,.35)}.v8120-media-outlet.hostile{border-color:rgba(248,113,113,.35)}.v8120-media-outlet header{display:flex;justify-content:space-between;gap:8px}.v8120-media-outlet header small,.v8120-media-outlet header b{display:block}.v8120-media-rel{height:7px;border-radius:999px;background:#172b46;overflow:hidden;margin:10px 0}.v8120-media-rel i{display:block;height:100%;background:linear-gradient(90deg,#38bdf8,#a855f7)}.v8120-media-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.v8120-media-facts span{padding:7px;border-radius:9px;background:rgba(7,23,43,.7)}.v8120-media-facts b,.v8120-media-facts small{display:block}.v8120-media-recommend{margin-top:9px;padding:8px 10px;border-radius:10px;background:rgba(14,116,144,.09)}.v8120-media-recommend b,.v8120-media-recommend span{display:block}.v8120-media-best{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}.v8120-media-best span{padding:9px 11px;border-radius:11px;background:#0a2038;border:1px solid rgba(148,163,184,.13)}.v8120-media-best small,.v8120-media-best b{display:block}
@media(max-width:850px){.v8120-leader-life{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.v8120-leader-life,.v8120-media-best,.v8120-media-facts{grid-template-columns:1fr}}


/* v8.12.1 — tennis POWER progression */
.v8121-power-progression{margin-top:12px;padding:13px;border:1px solid rgba(34,211,238,.24);border-radius:14px;background:linear-gradient(135deg,rgba(8,47,73,.28),rgba(15,23,42,.72))}.v8121-power-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.v8121-power-head small,.v8121-power-head b{display:block}.v8121-power-head small{color:#7dd3fc;font-weight:800}.v8121-power-head b{font-size:1.3rem}.v8121-power-head span{padding:6px 9px;border-radius:999px;font-size:.73rem;font-weight:900}.v8121-power-head span.safe{background:rgba(16,185,129,.15);color:#6ee7b7;border:1px solid rgba(52,211,153,.25)}.v8121-power-head span.live{background:rgba(245,158,11,.13);color:#fde68a;border:1px solid rgba(245,158,11,.26)}.v8121-power-bar{height:8px;border-radius:999px;background:#14263d;overflow:hidden;margin:10px 0}.v8121-power-bar i{display:block;height:100%;background:linear-gradient(90deg,#22d3ee,#8b5cf6);border-radius:inherit}.v8121-power-rules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.v8121-power-rules span{padding:8px 9px;border-radius:10px;background:rgba(7,23,43,.72);border:1px solid rgba(148,163,184,.13)}.v8121-power-rules b,.v8121-power-rules em{display:block}.v8121-power-rules b{font-size:.72rem;color:#9fb0c6}.v8121-power-rules em{font-style:normal;font-weight:900;color:#6ee7b7;margin-top:2px}.v8121-power-rules em.bad{color:#fca5a5}.v8121-power-progression p{margin:9px 0 0;color:#a9bbcf;font-size:.85rem}@media(max-width:760px){.v8121-power-rules{grid-template-columns:repeat(2,minmax(0,1fr))}.v8121-power-head{align-items:flex-start;flex-direction:column}}


/* ========================================================================== */
/* v8.12.2 — poll preference ladder + tennis folds                            */
/* ========================================================================== */
.v8122-poll-preference{margin:12px 0 14px;padding:12px;border:1px solid #284d72;border-radius:14px;background:linear-gradient(135deg,rgba(10,33,58,.94),rgba(15,27,48,.92))}.v8122-poll-pref-title{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:10px}.v8122-poll-pref-title b{font-size:15px;color:#eef7ff}.v8122-poll-pref-title small{color:#91a7be;text-align:right}.v8122-poll-pref-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.v8122-choice-card,.v8122-choice-meta{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:11px;background:#0c1d32;border:1px solid #213f5c}.v8122-choice-card small,.v8122-choice-meta small{font-size:10px;font-weight:800;letter-spacing:.04em;color:#78cfff}.v8122-choice-card b{display:flex;align-items:center;gap:7px;font-size:17px}.v8122-choice-card b i{width:9px;height:9px;border-radius:999px;display:inline-block}.v8122-choice-card em{font-style:normal;font-size:21px;font-weight:900;color:#7df0c5}.v8122-choice-card u,.v8122-choice-meta u{text-decoration:none;color:#8fa7bd;font-size:11px}.v8122-choice-meta b{font-size:18px;color:#f2f7ff}
.v8122-tennis-fold{padding:0!important;overflow:hidden}.v8122-tennis-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;background:#0d2037;border-bottom:1px solid transparent}.v8122-tennis-fold[open]>summary{border-bottom-color:#234765}.v8122-tennis-fold>summary::-webkit-details-marker{display:none}.v8122-tennis-fold>summary span{display:flex;flex-direction:column;gap:3px}.v8122-tennis-fold>summary b{font-size:18px}.v8122-tennis-fold>summary small{font-size:12px;color:#91a6ba;font-weight:500}.v8122-tennis-fold>summary em{font-style:normal;color:#77d8ff;font-size:12px;font-weight:800}.v8122-tennis-fold-body{padding:12px}.v8122-tennis-fold-body>.panel{margin:0;border-color:#1c3955;background:#0a1729}.v8122-tennis-fold-body>.v800-tournament-list{display:grid;gap:12px}.v8122-tennis-fold .v894-when-open{display:none}.v8122-tennis-fold[open] .v894-when-open{display:inline}.v8122-tennis-fold[open] .v894-when-closed{display:none}@media(max-width:700px){.v8122-poll-pref-title{align-items:start;flex-direction:column}.v8122-poll-pref-title small{text-align:left}.v8122-poll-pref-grid{grid-template-columns:1fr 1fr}.v8122-tennis-fold>summary{padding:14px}.v8122-tennis-fold>summary b{font-size:16px}}

/* ========================================================================== */
/* v8.12.3 — tennis POWER formula                                              */
/* ========================================================================== */
.v8121-power-progression{display:none!important}.v8123-training-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.v8123-power-formula{margin-top:12px;padding:13px;border:1px solid rgba(34,211,238,.25);border-radius:14px;background:linear-gradient(135deg,rgba(8,47,73,.28),rgba(15,23,42,.72));display:grid;grid-template-columns:130px 1fr;gap:12px;align-items:center}.v8123-power-formula>div:first-child small,.v8123-power-formula>div:first-child b{display:block}.v8123-power-formula>div:first-child small{font-size:.72rem;font-weight:900;color:#7dd3fc}.v8123-power-formula>div:first-child b{font-size:2rem;line-height:1.05;color:#f8fafc}.v8123-power-formula p{margin:0;color:#b9c9da;font-size:.87rem}.v8123-power-formula p strong{color:#e6f7ff}.v8123-limit-row{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.v8123-limit-row span{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:10px;background:rgba(7,23,43,.72);border:1px solid rgba(148,163,184,.13);font-size:.78rem;color:#9fb0c6}.v8123-limit-row b{color:#6ee7b7}@media(max-width:760px){.v8123-training-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v8123-power-formula{grid-template-columns:1fr}.v8123-limit-row{grid-template-columns:1fr}}

/* ========================================================================== */
/* v8.12.7 — continuous tennis tournament follow                              */
/* ========================================================================== */
.v8127-next-match{border-color:rgba(45,212,191,.38);background:linear-gradient(135deg,rgba(7,31,52,.96),rgba(8,47,73,.82));overflow:hidden}.v8127-next-match.live{border-color:rgba(248,113,113,.46)}.v8127-next-main{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:18px;align-items:center}.v8127-next-main h2{margin:5px 0 7px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.v8127-next-main h2 strong{font-size:.82rem;color:#91a7be}.v8127-next-main h2 em{font-style:normal;color:#91a7be;font-weight:700}.v8127-next-main p{margin:0;color:#b8cada}.v8127-next-main>div>small{display:block;margin-top:7px;color:#91a7be}.v8127-next-clock{padding:13px 14px;border-radius:14px;background:rgba(5,20,36,.8);border:1px solid rgba(125,211,252,.2);text-align:center}.v8127-next-clock small,.v8127-next-clock strong,.v8127-next-clock em{display:block}.v8127-next-clock small{font-size:.68rem;letter-spacing:.12em;color:#7dd3fc;font-weight:900}.v8127-next-clock strong{font-size:1.8rem;line-height:1.05;margin:5px 0;color:#f8fafc}.v8127-next-clock em{font-style:normal;color:#91a7be;font-size:.76rem}.v8127-next-actions{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-top:14px;padding-top:12px;border-top:1px solid rgba(148,163,184,.14)}.v8127-next-actions span{color:#91a7be;font-size:.82rem;text-align:right}.v8127-reg-next{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;align-items:center;padding:10px 11px;margin:9px 0;border-radius:11px;background:rgba(6,28,48,.72);border:1px solid rgba(45,212,191,.2)}.v8127-reg-next>b,.v8127-reg-next>small{grid-column:1}.v8127-reg-next>span{font-size:.74rem;color:#7dd3fc;font-weight:800}.v8127-reg-next>strong{grid-column:2;grid-row:1/3;font-size:1.2rem}.v8127-reg-next>button{grid-column:1/-1;margin-top:4px}.v8127-round-times{grid-template-columns:repeat(5,minmax(0,1fr))!important}.v8127-second-times{grid-template-columns:repeat(4,minmax(0,1fr))!important;margin:10px 0}.v8127-bracket .v880-bracket-round article.me{min-height:106px}.v8127-bracket-time{display:block!important;grid-column:1/-1;margin-top:5px;color:#7dd3fc!important}.v8127-bracket-time b{display:inline!important}.v8127-bracket article .btn{grid-column:1/-1;margin-top:4px}
@media(max-width:760px){.v8127-next-main{grid-template-columns:1fr}.v8127-next-clock{text-align:left}.v8127-next-actions{align-items:stretch;flex-direction:column}.v8127-next-actions span{text-align:left}.v8127-round-times{grid-template-columns:repeat(3,minmax(0,1fr))!important}.v8127-second-times{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* ========================================================================== */
/* v8.12.8 — election rhythm, cabinet vacancies, immunity & tennis serve      */
/* ========================================================================== */
.v8128-president-campaign{border-color:rgba(250,204,21,.34);background:linear-gradient(135deg,rgba(35,31,10,.92),rgba(10,26,45,.96))}.v8128-president-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:9px;margin-top:13px}.v8128-president-candidate{display:grid;gap:5px;padding:12px;border-radius:12px;background:rgba(7,23,43,.78);border:1px solid rgba(148,163,184,.15)}.v8128-president-candidate.mine{border-color:rgba(250,204,21,.5);box-shadow:inset 0 0 0 1px rgba(250,204,21,.08)}.v8128-president-candidate header{display:flex;justify-content:space-between;gap:8px}.v8128-president-candidate small{color:#91a7be}.v8128-president-candidate strong{font-size:1.45rem}.v8128-president-bar{height:7px;background:#172b46;border-radius:999px;overflow:hidden}.v8128-president-bar i{display:block;height:100%;background:linear-gradient(90deg,#22d3ee,#facc15)}
.v8128-vacancy-box{margin-top:12px;padding:11px;border:1px solid rgba(250,204,21,.27);background:rgba(62,45,8,.16);border-radius:12px}.v8128-vacancy-box>p{margin:0 0 9px}.v8128-negotiation-progress{height:7px;border-radius:999px;background:#172b46;overflow:hidden;margin:8px 0}.v8128-negotiation-progress i{display:block;height:100%;background:linear-gradient(90deg,#38bdf8,#34d399)}.v8128-negotiation-actions{display:grid;gap:7px}.v8128-negotiation-actions button{white-space:normal;text-align:left}.v8128-negotiation-actions small{display:block;color:#91a7be;margin-top:2px}
.v8128-immunity-desk{margin:14px 0;padding:14px;border:1px solid rgba(248,113,113,.25);border-radius:15px;background:rgba(48,15,25,.16)}.v8128-immunity-result{margin-top:9px;border:1px solid #29435e;border-radius:12px;background:#0a192c;padding:0 11px}.v8128-immunity-result>summary{cursor:pointer;padding:11px 0;display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center}.v8128-immunity-result>summary small{color:#91a7be}.v8128-immunity-totals{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:8px 0}.v8128-immunity-totals span{padding:8px;border-radius:9px;background:#0d2238;text-align:center;font-size:.7rem}.v8128-immunity-totals b{display:block;font-size:1.1rem}.v8128-immunity-party-summary{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.v8128-immunity-party-summary span{padding:5px 8px;border:1px solid #29435e;border-radius:999px;font-size:.7rem}.v8128-rollcall{max-height:430px;overflow:auto;display:grid;gap:4px;margin:8px 0 12px}.v8128-rollcall>div{display:grid;grid-template-columns:1.4fr .7fr .8fr;gap:7px;padding:7px 9px;border-radius:8px;background:#0b1b2e}.v8128-rollcall .vote-yes strong{color:#6ee7b7}.v8128-rollcall .vote-no strong{color:#fca5a5}.v8128-rollcall .vote-abstain strong,.v8128-rollcall .vote-absent strong{color:#fcd34d}
.v8128-tennis-server{margin:0 0 8px;padding:8px 11px;border:1px solid rgba(45,212,191,.34);border-radius:10px;background:rgba(13,76,67,.2);font-size:.78rem;letter-spacing:.04em;color:#99f6e4}.v8128-tennis-server b{color:#f8fafc}.v8128-life-today{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.v8128-life-today>b{width:100%;font-size:.72rem;color:#91a7be}.v8128-life-today span{padding:5px 8px;border-radius:999px;background:rgba(16,185,129,.1);border:1px solid rgba(52,211,153,.2);font-size:.72rem;color:#86efac}
.v8128-senate-district-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}.v8128-senate-district-grid article{display:grid;gap:4px;padding:10px;border:1px solid #29435e;border-radius:11px;background:#0a192c}.v8128-senate-district-grid small{color:#7dd3fc}.v8128-senate-district-grid span{font-size:.75rem;color:#91a7be}
@media(max-width:760px){.v8128-immunity-result>summary{grid-template-columns:1fr}.v8128-immunity-totals{grid-template-columns:repeat(2,1fr)}.v8128-rollcall>div{grid-template-columns:1fr}.v8128-president-grid{grid-template-columns:1fr}}
.v8128-president-week{border-color:rgba(250,204,21,.32);background:linear-gradient(135deg,rgba(38,30,8,.4),rgba(9,25,44,.96))}.v8128-my-president{display:grid;grid-template-columns:1fr auto;gap:4px 14px;align-items:center;padding:13px;margin:12px 0;border-radius:13px;border:1px solid rgba(250,204,21,.3);background:rgba(250,204,21,.06)}.v8128-my-president small{grid-column:1/-1;color:#facc15;font-weight:900}.v8128-my-president b{font-size:1.1rem}.v8128-my-president strong{font-size:1.55rem;color:#fde68a}.v8128-pres-poll{display:grid;gap:6px}.v8128-pres-poll article{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:7px 10px;align-items:center;padding:9px 10px;border-radius:10px;background:#0a192c;border:1px solid #263f59}.v8128-pres-poll article.mine{border-color:rgba(250,204,21,.45)}.v8128-pres-poll article div{display:grid}.v8128-pres-poll article small{color:#91a7be}.v8128-pres-poll article>i{grid-column:2/-1;height:5px;background:#172b46;border-radius:999px;overflow:hidden}.v8128-pres-poll article>i>u{display:block;height:100%;background:linear-gradient(90deg,#22d3ee,#facc15)}
.v8128-ministry-vacancy{margin-top:12px;padding:11px;border:1px solid rgba(250,204,21,.25);border-radius:12px;background:rgba(53,39,8,.14)}.v8128-ministry-vacancy>header{display:flex;justify-content:space-between;gap:10px}.v8128-ministry-vacancy>i{display:block;height:7px;background:#172b46;border-radius:999px;overflow:hidden;margin:9px 0}.v8128-ministry-vacancy>i>u{display:block;height:100%;background:linear-gradient(90deg,#38bdf8,#34d399)}.v8128-ministry-tactics{display:grid;gap:6px}.v8128-ministry-tactics button{display:grid;text-align:left}.v8128-ministry-tactics small{color:#91a7be}
.v8128-calendar-hot,.v8128-senate-calendar{border-color:rgba(45,212,191,.35)!important;background:rgba(13,76,67,.08)!important}.v8128-senate-calendar span b{color:#5eead4}

/* ========================================================================== */
/* Politikon v8.12.9 — institutional workbenches                              */
/* ========================================================================== */
.v8129-institution{border:1px solid rgba(99,179,237,.22);background:linear-gradient(145deg,rgba(7,25,43,.96),rgba(14,24,50,.96));overflow:hidden}
.v8129-institution .section-head{align-items:flex-start;gap:18px}
.v8129-kpis{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.v8129-kpis span{display:flex;flex-direction:column;min-width:104px;padding:9px 12px;border:1px solid rgba(125,211,252,.2);border-radius:12px;background:rgba(8,25,44,.72);font-size:11px;color:var(--muted,#98a7bc)}
.v8129-kpis b{font-size:18px;color:var(--text,#edf5ff);line-height:1.1}
.v8129-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin:16px 0}
.v8129-columns>div,.v8129-history{padding:14px;border:1px solid rgba(148,163,184,.14);border-radius:14px;background:rgba(4,16,31,.48)}
.v8129-columns h3,.v8129-history h3{margin:0 0 12px;font-size:15px}
.v8129-dossier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:12px;margin:14px 0}
.v8129-dossier{display:flex;flex-direction:column;gap:9px;padding:13px;border:1px solid rgba(125,211,252,.16);border-radius:13px;background:rgba(9,28,47,.72);margin-bottom:9px;min-width:0}
.v8129-dossier header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.v8129-dossier header b{font-size:14px;line-height:1.25}
.v8129-dossier p{margin:0;color:var(--muted,#9cacbf);line-height:1.45;font-size:12px}
.v8129-dossier small{color:#8092aa}
.v8129-vote-card{border:1px solid rgba(148,163,184,.14);border-radius:12px;background:rgba(8,21,38,.7);margin:8px 0;overflow:hidden}
.v8129-vote-card>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;cursor:pointer;padding:12px;list-style:none}
.v8129-vote-card>summary::-webkit-details-marker{display:none}
.v8129-vote-card>summary b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v8129-vote-card>summary small{color:#8395aa;white-space:nowrap}
.v8129-vote-totals{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:0 12px 12px}
.v8129-vote-totals span{padding:8px;border-radius:9px;background:rgba(148,163,184,.07);font-size:10px;color:#9aabc0}
.v8129-vote-totals b{display:block;font-size:17px;color:#e9f3ff}
.v8129-vote-totals .yes{background:rgba(16,185,129,.09)}
.v8129-vote-totals .yes b{color:#5ee2bb}
.v8129-vote-totals .no{background:rgba(239,68,68,.09)}
.v8129-vote-totals .no b{color:#ff8e8e}
.v8129-vote-totals .needed b{color:#ffd26a}
.v8129-rollcall{margin:0 12px 12px;border-top:1px solid rgba(148,163,184,.12);padding-top:9px}
.v8129-rollcall>summary{cursor:pointer;color:#bcd0e8;font-size:12px;font-weight:700}
.v8129-rollcall-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:5px;margin-top:9px;max-height:360px;overflow:auto}
.v8129-rollcall-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:7px 8px;border-radius:8px;background:rgba(148,163,184,.055);font-size:10px}
.v8129-rollcall-list span{color:#7f91a7}.v8129-rollcall-list strong{font-size:9px}
.v8129-rollcall-list .vote-pro strong{color:#5ee2bb}.v8129-rollcall-list .vote-proti strong{color:#ff8e8e}.v8129-rollcall-list .vote-zdržel\ se strong,.v8129-rollcall-list .vote-abstain strong{color:#ffd26a}
.v8129-ep-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(95px,1fr));gap:7px;margin:12px 0}
.v8129-ep-groups span{display:flex;justify-content:space-between;gap:6px;padding:7px 9px;border-radius:9px;background:rgba(56,189,248,.065);border:1px solid rgba(56,189,248,.1);font-size:10px;color:#a7b8cb}
.v8129-ep-groups b{color:#dcecff}
.v8129-support,.v8129-law-metrics{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:#8fa0b4;font-size:11px}
.v8129-support{justify-content:space-between;padding:8px;border-radius:9px;background:rgba(148,163,184,.06)}
.v8129-support b,.v8129-law-metrics b{color:#d9e8f9}
.v8129-vote-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto}
.v8129-vote-actions .btn{flex:1;min-width:90px}
.v8129-ep-group-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px;padding:0 12px 12px}
.v8129-ep-group-results span{padding:7px 8px;border-radius:8px;background:rgba(148,163,184,.055);font-size:10px;color:#a7b7ca}
.v8129-ep-group-results b{color:#e0edf9}.v8129-ep-group-results small{color:#71849a}
.v8129-president-laws{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin:14px 0}
.v8129-president-history{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border-bottom:1px solid rgba(148,163,184,.1)}
.v8129-president-history:last-child{border-bottom:0}.v8129-president-history>span{font-size:20px}.v8129-president-history div{display:flex;flex-direction:column}.v8129-president-history small{color:#8294aa}.v8129-president-history strong{font-size:10px}
.v8129-president-history.sign strong{color:#5ee2bb}.v8129-president-history.veto strong{color:#ff8e8e}
@media(max-width:900px){.v8129-columns{grid-template-columns:1fr}.v8129-kpis{justify-content:flex-start}.v8129-vote-totals{grid-template-columns:repeat(3,minmax(0,1fr))}.v8129-vote-card>summary{grid-template-columns:auto minmax(0,1fr)}.v8129-vote-card>summary small{grid-column:2;white-space:normal}.v8129-president-laws{grid-template-columns:1fr}}

/* v8.12.11 local coalition cards */
.v81211-local-power .local-power-deals{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;margin:14px 0}.local-power-deal{border:1px solid var(--line,#24435c);border-radius:14px;padding:14px;background:rgba(7,24,40,.46)}.local-power-deal>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.local-power-deal>header div{display:grid;gap:3px}.local-power-deal>header small{opacity:.7;text-transform:uppercase;font-size:.7rem;letter-spacing:.06em}.local-power-deal>header strong{white-space:nowrap}.local-power-deal p{margin:10px 0;font-size:.86rem}.local-office-targets{display:flex;flex-wrap:wrap;gap:7px}.local-office-targets span{border:1px solid rgba(148,163,184,.22);border-radius:999px;padding:5px 9px;font-size:.76rem}.local-power-deal.empty{opacity:.72}

/* ========================================================================== */
/* Politikon v8.12.12 — SAMOSPRÁVA workspace                                 */
/* ========================================================================== */
.v81212-localgov{border-color:rgba(45,212,191,.25);background:linear-gradient(150deg,rgba(5,21,35,.98),rgba(12,23,48,.97));overflow:hidden}.v81212-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 18px}.v81212-tabs button{border:1px solid rgba(125,211,252,.2);background:rgba(7,25,44,.72);color:#b7c9dc;border-radius:999px;padding:9px 13px;font-weight:800;cursor:pointer}.v81212-tabs button.active{border-color:#2dd4bf;background:rgba(45,212,191,.12);color:#d8fffa}.v81212-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:12px 0 16px}.v81212-kpis span{padding:12px;border:1px solid rgba(148,163,184,.15);border-radius:12px;background:rgba(4,16,31,.54);display:flex;flex-direction:column}.v81212-kpis b{font-size:21px;color:#eef7ff}.v81212-kpis small{font-size:10px;color:#8297ac}.v81212-kpis .money{border-color:rgba(52,211,153,.26);background:rgba(16,185,129,.07)}.v81212-kpis .money b{color:#6ee7b7}.v81212-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}.v81212-sub{margin:14px 0;padding:14px;border:1px solid rgba(148,163,184,.13);border-radius:14px;background:rgba(4,16,31,.42)}.v81212-region-mini{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.v81212-region-mini button{display:grid;gap:5px;text-align:left;padding:11px;border:1px solid rgba(125,211,252,.14);border-radius:11px;background:rgba(8,27,46,.65);color:inherit;cursor:pointer}.v81212-region-mini button:hover{border-color:rgba(45,212,191,.45)}.v81212-region-mini small{color:#7f93a9}.v81212-region-mini em{font-style:normal;color:#7f93a9}.v81212-party{display:inline-flex;align-items:center;gap:6px;min-width:0}.v81212-party i{width:8px;height:8px;border-radius:50%;background:var(--party,#64748b);box-shadow:0 0 0 2px color-mix(in srgb,var(--party,#64748b) 20%,transparent)}.v81212-party b{font-size:11px;white-space:nowrap}.v81212-party small{font-size:9px;color:#8194aa}.v81212-leaderboard{display:grid;gap:6px}.v81212-leaderboard article{display:grid;grid-template-columns:28px minmax(130px,1fr) repeat(4,minmax(90px,auto));gap:8px;align-items:center;padding:8px 10px;border-radius:9px;background:rgba(148,163,184,.055);font-size:10px}.v81212-leaderboard article>strong{font-size:13px;color:#93c5fd}.v81212-region-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:12px}.v81212-region-card,.v81212-area-card,.v81212-neg-card{border:1px solid rgba(125,211,252,.16);border-radius:14px;background:rgba(8,25,44,.72);padding:14px}.v81212-region-card>header,.v81212-area-card>header,.v81212-neg-card>header,.v81212-selected>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.v81212-region-card header small,.v81212-area-card header small,.v81212-neg-card header small,.v81212-selected header small{font-size:9px;color:#6f849c;letter-spacing:.08em}.v81212-region-card h3,.v81212-area-card h3,.v81212-neg-card h3,.v81212-selected h3{margin:3px 0 0}.v81212-region-card>header>span,.v81212-area-card>header>span{font-size:10px;color:#8aa1b7}.v81212-office,.v81212-area-office{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;align-items:center;margin:12px 0;padding:10px;border-radius:10px;background:rgba(45,212,191,.055)}.v81212-office>small,.v81212-area-office>small{grid-column:1/-1;color:#5eead4;font-size:9px;font-weight:900}.v81212-office>b,.v81212-area-office>b{font-size:12px}.v81212-council{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.v81212-council span{display:inline-flex;align-items:center;gap:5px;padding:5px 7px;border-radius:8px;background:rgba(148,163,184,.06);font-size:9px}.v81212-council i{width:7px;height:7px;border-radius:50%;background:var(--party,#64748b)}.v81212-council strong{color:#fff}.v81212-mayor-leaders{display:flex;gap:6px;flex-wrap:wrap;margin:9px 0}.v81212-filters{display:grid;grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) minmax(220px,2fr) auto;gap:8px;margin-bottom:10px}.v81212-area-meta{display:flex;justify-content:space-between;gap:12px;color:#8da1b6;font-size:10px;margin-bottom:10px}.v81212-area-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:10px}.v81212-area-card.mine-seat{border-color:rgba(56,189,248,.35)}.v81212-area-card.mine-office{border-color:rgba(52,211,153,.55);box-shadow:inset 0 0 0 1px rgba(52,211,153,.08)}.v81212-pager{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:14px}.v81212-pager span{font-size:10px;color:#8599ae}.v81212-selected{margin:0 0 14px;padding:14px;border:1px solid rgba(250,204,21,.24);border-radius:14px;background:rgba(45,33,6,.13)}.v81212-selected header p{margin:3px 0;color:#8295aa;font-size:10px}.v81212-precincts{display:grid;gap:6px;margin-top:12px;max-height:430px;overflow:auto}.v81212-precincts article{display:grid;grid-template-columns:minmax(0,1fr) auto 60px;gap:9px;align-items:center;padding:8px 10px;border-radius:9px;background:rgba(148,163,184,.055);border:1px solid transparent}.v81212-precincts article.mine{border-color:rgba(52,211,153,.3);background:rgba(52,211,153,.05)}.v81212-precincts article>div{display:flex;flex-direction:column}.v81212-precincts article small{font-size:9px;color:#7b8fa5}.v81212-precincts article>strong{text-align:right;font-size:11px}.v81212-neg-card .local-power-deal{margin:10px 0}.v81212-neg-status{padding:10px;border-radius:10px;background:rgba(148,163,184,.055);margin:10px 0}.v81212-neg-status p{margin:4px 0 0;font-size:11px;color:#8ea2b7}.v81212-neg-actions{display:grid;gap:7px}.v81212-neg-actions button{display:grid;text-align:left}.v81212-neg-actions small{color:#8295aa}.v81212-neg-log{display:grid;gap:5px;margin-top:10px}.v81212-neg-log span{font-size:10px;color:#6ee7b7}.v81212-finance-link{display:flex;justify-content:space-between;gap:16px;align-items:center}.v81212-finance-link h3{margin:3px 0;color:#6ee7b7}
@media(max-width:980px){.v81212-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.v81212-two{grid-template-columns:1fr}.v81212-leaderboard article{grid-template-columns:28px minmax(120px,1fr) repeat(2,minmax(80px,auto))}.v81212-leaderboard article span:nth-last-child(-n+2){display:none}.v81212-filters{grid-template-columns:1fr 1fr}.v81212-filters .input{grid-column:1/-1}.v81212-filters .btn{grid-column:1/-1}.v81212-finance-link{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.v81212-kpis{grid-template-columns:1fr 1fr}.v81212-region-grid,.v81212-area-grid{grid-template-columns:1fr}.v81212-filters{grid-template-columns:1fr}.v81212-filters .input,.v81212-filters .btn{grid-column:auto}.v81212-area-meta{flex-direction:column}.v81212-precincts article{grid-template-columns:minmax(0,1fr) auto}.v81212-precincts article>strong{grid-column:2}.v81212-leaderboard article{grid-template-columns:24px minmax(0,1fr) auto}.v81212-leaderboard article span{display:none}.v81212-tabs{display:grid;grid-template-columns:1fr 1fr}.v81212-tabs button:last-child{grid-column:1/-1}}
.v81212-kind-switch{display:flex;gap:7px;margin:0 0 10px}.v81212-kind-switch button{border:1px solid rgba(125,211,252,.18);border-radius:9px;padding:8px 12px;background:rgba(8,25,44,.72);color:#9eb1c6;font-weight:800;cursor:pointer}.v81212-kind-switch button.active{border-color:#38bdf8;color:#dff5ff;background:rgba(56,189,248,.1)}

/* v8.12.14 cumulative election finance */
.v81214-finance-layers{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:10px 0 18px}
.v81214-finance-layer{border:1px solid var(--line,#28445f);border-radius:14px;padding:12px;background:rgba(8,25,43,.72)}
.v81214-finance-layer header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.v81214-finance-layer header strong{color:#72e6b5;white-space:nowrap}
.v81214-finance-layer>div{display:grid;grid-template-columns:1fr 1fr;gap:5px 10px;font-size:.86rem;color:var(--muted,#9fb1c5)}
.v81214-finance-layer small{display:block;margin-top:8px;color:var(--muted,#9fb1c5)}

/* ========================================================================== */
/* Politikon v8.13.0 — core state rework UI                                   */
/* ========================================================================== */
.v8130-finance-projection,.v8130-election-models,.v8130-ai-memory{border-color:rgba(56,189,248,.28)}
.v8130-finance-projection.warn{border-color:rgba(248,113,113,.42)}
.v8130-fin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}
.v8130-fin-grid article{background:rgba(8,22,40,.72);border:1px solid rgba(148,163,184,.16);border-radius:14px;padding:12px;display:grid;gap:5px}
.v8130-fin-grid small,.v8130-fin-grid span{color:var(--muted,#94a3b8)}.v8130-fin-grid b{font-size:1.08rem}
.v8130-model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.v8130-model-grid article{border:1px solid rgba(56,189,248,.18);background:rgba(8,22,40,.7);border-radius:13px;padding:11px}.v8130-model-grid article b{display:block;margin-bottom:4px}.v8130-model-grid p{margin:4px 0;color:#cbd5e1}.v8130-model-grid small{color:#7dd3fc}
.v8130-law-life{margin:12px 0 4px;padding:10px;border:1px solid rgba(56,189,248,.18);border-radius:13px;background:rgba(6,19,34,.68)}
.v8130-law-stages{display:grid;grid-template-columns:repeat(8,minmax(70px,1fr));gap:5px;overflow-x:auto;padding-bottom:4px}.v8130-law-stages span{display:flex;align-items:center;gap:6px;padding:7px 8px;border-radius:9px;border:1px solid rgba(148,163,184,.13);min-width:0}.v8130-law-stages span i{font-style:normal;width:20px;height:20px;border-radius:999px;display:grid;place-items:center;background:#17283e;font-size:11px;flex:0 0 auto}.v8130-law-stages span b{font-size:11px;line-height:1.1}.v8130-law-stages .done{opacity:.72}.v8130-law-stages .done i{background:rgba(34,197,94,.2);color:#86efac}.v8130-law-stages .current{border-color:#38bdf8;background:rgba(14,116,144,.13)}.v8130-law-stages .current i{background:#0ea5e9;color:white}.v8130-law-override{margin:8px 0;padding:8px 10px;border-radius:9px;background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.26);display:flex;justify-content:space-between;gap:10px}.v8130-law-override span{color:#fcd34d;font-size:12px}
.v8130-law-history{margin-top:8px;border-top:1px solid rgba(148,163,184,.12);padding-top:7px}.v8130-law-history summary{cursor:pointer;font-weight:700}.v8130-history-list{display:grid;gap:6px;margin:8px 0}.v8130-history-list>div{display:grid;grid-template-columns:150px 1fr auto;gap:8px;padding:7px 8px;background:rgba(15,23,42,.45);border-radius:8px}.v8130-history-list small{color:#64748b}.v8130-rollcall{margin:8px 0;padding:9px;border:1px solid rgba(148,163,184,.12);border-radius:10px}.v8130-rollcall header{display:flex;justify-content:space-between;gap:8px}.v8130-rollcall>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:7px}.v8130-rollcall>div>span{display:flex;justify-content:space-between;gap:8px;padding:6px;background:rgba(15,23,42,.5);border-radius:7px}.v8130-rollcall small{color:#94a3b8}
.v8130-ai-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v8130-ai-cols>div{display:grid;gap:6px}.v8130-ai-cols>div>span{display:grid;grid-template-columns:130px 1fr;gap:4px 8px;padding:7px 8px;background:rgba(8,22,40,.68);border-radius:9px}.v8130-ai-cols>div>span i{height:5px;background:#17283e;border-radius:99px;overflow:hidden}.v8130-ai-cols>div>span i u{display:block;height:100%;background:linear-gradient(90deg,#38bdf8,#22c55e);text-decoration:none}.v8130-ai-cols small{grid-column:1/-1;color:#94a3b8}
.v8130-ministers .v8120-ministry-card{display:flex;flex-direction:column;gap:8px}.v8130-ministry-core{padding:10px;border-radius:11px;border:1px solid rgba(56,189,248,.14);background:rgba(8,22,40,.62)}.v8130-ministry-core.vacant{border-color:rgba(248,113,113,.32);background:rgba(127,29,29,.09)}.v8130-minister-skills{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:8px 0}.v8130-minister-skills span{display:grid;text-align:center;background:rgba(15,23,42,.56);padding:6px;border-radius:8px}.v8130-minister-skills b{font-size:1.05rem}.v8130-minister-skills small{color:#94a3b8}.v8130-nomination{display:grid;gap:8px;margin-top:8px}.v8130-nomination header{display:flex;justify-content:space-between;gap:8px}.v8130-nomination>i{height:7px;border-radius:99px;background:#17283e;overflow:hidden}.v8130-nomination>i u{display:block;height:100%;background:#22c55e;text-decoration:none}.v8130-nom-tactics{display:grid;grid-template-columns:1fr 1fr;gap:6px}.v8130-nom-tactics button{display:grid;text-align:left}.v8130-nom-tactics small{font-size:11px}.v8130-kpis{display:flex;gap:7px;flex-wrap:wrap}.v8130-kpis span{padding:6px 9px;border-radius:999px;background:rgba(15,23,42,.72);border:1px solid rgba(148,163,184,.13)}
.v8130-local-perks{margin:10px 0 14px;padding:11px;border:1px solid rgba(34,197,94,.18);background:rgba(6,35,29,.24);border-radius:14px}.v8130-local-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v8130-local-grid article{display:grid;grid-template-columns:1fr auto;gap:5px 10px;background:rgba(8,22,40,.6);border-radius:10px;padding:9px}.v8130-local-grid article>b,.v8130-local-grid article>small{grid-column:1/-1}.v8130-local-grid span{color:#cbd5e1}.v8130-local-grid strong{color:#86efac}
@media(max-width:1050px){.v8130-fin-grid{grid-template-columns:repeat(2,1fr)}.v8130-model-grid{grid-template-columns:repeat(2,1fr)}.v8130-law-stages{grid-template-columns:repeat(8,120px)}}
@media(max-width:700px){.v8130-fin-grid,.v8130-model-grid,.v8130-ai-cols,.v8130-local-grid{grid-template-columns:1fr}.v8130-minister-skills{grid-template-columns:repeat(2,1fr)}.v8130-nom-tactics{grid-template-columns:1fr}.v8130-history-list>div{grid-template-columns:1fr}.v8130-rollcall>div{grid-template-columns:1fr}}
.v8130-law-state{border-color:rgba(168,85,247,.25)}.v8130-state-indices{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}.v8130-state-indices span{display:flex;gap:8px;align-items:center;padding:7px 9px;border-radius:9px;background:rgba(15,23,42,.58);border:1px solid rgba(148,163,184,.12)}

/* Politikon v8.13.1 — unified institutions */
.v8131-governance-hub{border:1px solid rgba(68,211,255,.25);background:linear-gradient(145deg,rgba(10,29,48,.98),rgba(13,23,43,.98));}
.v8131-flow{display:flex;align-items:stretch;gap:8px;overflow-x:auto;padding:4px 0 10px}.v8131-flow-node{min-width:145px;flex:1;border:1px solid rgba(104,151,199,.28);background:rgba(10,28,46,.9);border-radius:12px;padding:12px;text-align:left;color:inherit;cursor:pointer}.v8131-flow-node:hover{border-color:#4dd9ff;transform:translateY(-1px)}.v8131-flow-node small,.v8131-flow-node em{display:block;color:var(--muted,#91a5bb);font-size:11px;font-style:normal}.v8131-flow-node b{display:block;font-size:15px;margin:4px 0}.v8131-flow-node span{display:block;color:#dbeafe;font-size:12px}.v8131-flow-arrow{align-self:center;color:#51d7ff;font-style:normal;font-size:22px}.v8131-governance-hub.compact .v8131-flow-node{min-width:120px;padding:9px}.v8131-governance-hub.compact .section-head{margin-bottom:8px}
.v8131-governance-split{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}.v8131-governance-split article{border:1px solid rgba(104,151,199,.22);border-radius:12px;padding:13px;background:rgba(3,17,31,.55)}.v8131-governance-split article.eu{border-color:rgba(64,147,255,.34)}.v8131-governance-split header{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}.v8131-governance-split article>button:not(.btn){display:block;width:100%;text-align:left;border:0;border-top:1px solid rgba(255,255,255,.07);background:transparent;color:inherit;padding:9px 0}.v8131-governance-split article>button b,.v8131-governance-split article>button small{display:block}
.v8131-identity{display:flex;justify-content:space-between;gap:18px;align-items:center}.v8131-identity.eu{border-color:rgba(66,143,255,.38)}.v8131-id-kpis{display:flex;gap:10px;flex-wrap:wrap}.v8131-id-kpis span{min-width:95px;padding:10px 12px;border-radius:11px;background:rgba(8,27,46,.8);border:1px solid rgba(104,151,199,.22);text-align:center}.v8131-id-kpis b,.v8131-id-kpis small{display:block}.v8131-id-kpis b{font-size:20px}.v8131-id-kpis small{color:var(--muted,#91a5bb);font-size:11px}
.v8131-law-priority{margin-top:10px;border:1px dashed rgba(105,178,220,.38);border-radius:11px;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;gap:12px;background:rgba(9,34,52,.48)}.v8131-law-priority.active{border-style:solid;border-color:rgba(244,190,64,.55);background:rgba(83,55,8,.2)}.v8131-law-priority b,.v8131-law-priority small{display:block}.v8131-law-priority small{color:var(--muted,#91a5bb);margin-top:3px}
@media(max-width:900px){.v8131-governance-split{grid-template-columns:1fr}.v8131-identity{align-items:flex-start;flex-direction:column}.v8131-flow-arrow{display:none}.v8131-flow{display:grid;grid-template-columns:1fr 1fr}.v8131-law-priority{align-items:flex-start;flex-direction:column}}

/* Politikon v8.14.0 — Living Governance */
.v8140-governance,.v8140-budget,.v8140-opposition,.v8140-committee,.v8140-president,.v8140-state,.v8140-media,.v8140-local,.v8140-polls,.v8140-election-recap,.v8140-candidates,.v8140-memory,.v8140-europe,.v8140-people,.v8140-law-impacts{position:relative;overflow:hidden}
.v8140-governance::before,.v8140-state::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#38bdf8,#a78bfa,#f59e0b);opacity:.9}
.v8140-governance-grid,.v8140-state-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}
.v8140-governance-grid>article,.v8140-state-grid>article{padding:13px;border:1px solid var(--border,#334155);border-radius:14px;background:rgba(15,23,42,.42);display:flex;flex-direction:column;gap:4px;min-width:0}
.v8140-governance-grid b,.v8140-state-grid b{font-size:1.22rem}.v8140-governance-grid small,.v8140-state-grid small{text-transform:uppercase;letter-spacing:.06em;opacity:.7}.v8140-state-grid span{font-size:.75rem;opacity:.78}
.v8140-meter{height:7px;border-radius:999px;background:rgba(148,163,184,.16);overflow:hidden;margin:4px 0}.v8140-meter i{display:block;height:100%;background:linear-gradient(90deg,#ef4444,#f59e0b,#22c55e);border-radius:inherit}.v8140-meter.pressure i{background:linear-gradient(90deg,#22c55e,#f59e0b,#ef4444)}
.v8140-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.v8140-priorities,.v8140-ministers,.v8140-timeline,.v8140-scandals,.v8140-crises{display:grid;gap:8px}.v8140-priorities article,.v8140-ministers article,.v8140-timeline article,.v8140-scandals article,.v8140-crises article{padding:11px;border:1px solid var(--border,#334155);border-radius:12px;background:rgba(15,23,42,.32)}
.v8140-priorities article{display:grid;grid-template-columns:1fr auto;gap:6px}.v8140-priorities .v8140-meter{grid-column:1/-1}.v8140-priorities small,.v8140-ministers small{display:block;opacity:.7}.v8140-ministers header,.v8140-scandals header{display:flex;justify-content:space-between;gap:8px;align-items:center}.v8140-mini-actions,.v8140-action-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.v8140-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.v8140-action-grid button{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.v8140-action-grid small{opacity:.7;font-size:.72rem}
.v8140-budget-envelopes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.v8140-budget-envelopes article{display:grid;grid-template-columns:1fr auto;gap:6px;padding:10px;border:1px solid var(--border,#334155);border-radius:12px}.v8140-budget-envelopes article>div{grid-column:1/-1;display:flex;gap:5px}
.v8140-media-grid,.v8140-local-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.v8140-media-grid article,.v8140-local-grid article{padding:12px;border:1px solid var(--border,#334155);border-radius:13px;background:rgba(15,23,42,.32)}.v8140-media-grid small,.v8140-local-grid small{display:block;margin:4px 0 8px;opacity:.72}.v8140-media-grid article>div{display:flex;gap:6px;flex-wrap:wrap}
.v8140-poll-list,.v8140-recap-winners,.v8140-candidate-list{display:grid;gap:7px;margin:12px 0}.v8140-poll-list article{display:grid;grid-template-columns:1fr auto 110px;gap:10px;padding:9px 12px;border-bottom:1px solid var(--border,#334155)}.v8140-poll-list span{opacity:.72;text-align:right}.v8140-recap-winners{grid-template-columns:repeat(3,1fr)}.v8140-recap-winners article,.v8140-candidate-list article{padding:12px;border:1px solid var(--border,#334155);border-radius:12px;display:flex;flex-direction:column;gap:3px}.v8140-candidate-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.v8140-timeline article{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}.v8140-timeline article>div{grid-column:1/-1;display:flex;gap:6px;flex-wrap:wrap}.v8140-timeline article>div span{padding:4px 8px;border-radius:999px;background:rgba(245,158,11,.12)}.v8140-timeline article>div span.done{background:rgba(34,197,94,.14)}
@media(max-width:900px){.v8140-governance-grid,.v8140-state-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v8140-two-col{grid-template-columns:1fr}.v8140-action-grid,.v8140-budget-envelopes,.v8140-media-grid,.v8140-local-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.v8140-governance-grid,.v8140-state-grid,.v8140-action-grid,.v8140-budget-envelopes,.v8140-media-grid,.v8140-local-grid,.v8140-candidate-list,.v8140-recap-winners{grid-template-columns:1fr}.v8140-poll-list article{grid-template-columns:1fr auto}.v8140-poll-list span{grid-column:1/-1;text-align:left}.v8140-timeline article{grid-template-columns:1fr}.v8140-timeline article>*{grid-column:1!important}}


/* v8.14.1 — tennis POWER UX */
.v8141-power-breakdown{border:1px solid rgba(105,210,255,.2);background:linear-gradient(145deg,rgba(11,28,42,.96),rgba(14,22,34,.94));overflow:hidden}
.v8141-power-breakdown .section-head{gap:18px}.v8141-power-score{min-width:132px;display:grid;gap:2px;text-align:right}.v8141-power-score small{font-size:10px;letter-spacing:.14em;opacity:.7}.v8141-power-score b{font-size:34px;line-height:1}.v8141-power-score span{font-size:11px;opacity:.75}
.v8141-power-math{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.v8141-power-math article{display:grid;gap:5px;padding:13px;border-radius:15px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07)}.v8141-power-math small{font-size:10px;letter-spacing:.08em;opacity:.66}.v8141-power-math b{font-size:20px}.v8141-power-math span{font-size:11px;opacity:.72}.v8141-power-math .v8141-weakest{border-color:rgba(255,194,92,.28);background:rgba(255,179,71,.07)}
.v8141-power-attrs{display:grid;grid-template-columns:repeat(7,minmax(76px,1fr));gap:7px;margin-top:10px}.v8141-power-attrs span{display:grid;gap:3px;padding:9px 10px;border-radius:12px;background:rgba(255,255,255,.025);text-align:center}.v8141-power-attrs span.weak{outline:1px solid rgba(255,194,92,.38);background:rgba(255,179,71,.08)}.v8141-power-attrs small{font-size:10px;opacity:.7}.v8141-power-attrs b{font-size:15px}
@media(max-width:900px){.v8141-power-math{grid-template-columns:1fr}.v8141-power-attrs{grid-template-columns:repeat(4,1fr)}}@media(max-width:560px){.v8141-power-breakdown .section-head{align-items:flex-start}.v8141-power-score{text-align:left}.v8141-power-attrs{grid-template-columns:repeat(2,1fr)}}

/* Politikon v8.15.0 — POLITICAL WORLD release marker. Governance component
   styling is inherited from the v8.14 living-governance layer. */

/* v8.15 Senate personal-politics campaign cards */
.v8150-senate-campaign{overflow:hidden}.v8150-senate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.v8150-senate-district{padding:13px;border:1px solid var(--border,#334155);border-radius:14px;background:rgba(15,23,42,.34)}.v8150-senate-district>header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.v8150-senate-district>header div{display:grid;gap:3px}.v8150-senate-district>header small{opacity:.66}.v8150-senate-candidates{display:grid;gap:7px;margin-top:10px}.v8150-senate-candidates>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:5px 10px;padding:9px;border-radius:10px;background:rgba(148,163,184,.055);border:1px solid transparent}.v8150-senate-candidates>div.favorite{border-color:rgba(245,158,11,.35);background:rgba(245,158,11,.07)}.v8150-senate-candidates span{display:grid}.v8150-senate-candidates span small,.v8150-senate-candidates>div>small,.v8150-senate-candidates i{font-size:.7rem;opacity:.7;font-style:normal}.v8150-senate-candidates em{font-size:.72rem;font-style:normal;opacity:.75}.v8150-senate-candidates i,.v8150-senate-candidates>div>small{grid-column:1/-1}.v8150-senate-endorse{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.v8150-senate-endorse>small{width:100%;opacity:.72}@media(max-width:900px){.v8150-senate-grid{grid-template-columns:1fr}}@media(max-width:560px){.v8150-senate-candidates>div{grid-template-columns:1fr auto}.v8150-senate-candidates em{grid-column:1/-1}}

/* v8.15 explainable votes + presidential personnel requests */
.v8150-vote-explanations{overflow:hidden}.v8150-vote-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.v8150-vote-grid>article{padding:12px;border:1px solid var(--border,#334155);border-radius:13px;background:rgba(15,23,42,.34)}.v8150-vote-grid>article.pro{border-color:rgba(34,197,94,.28)}.v8150-vote-grid>article.proti{border-color:rgba(239,68,68,.28)}.v8150-vote-grid>article.abstain{border-color:rgba(245,158,11,.25)}.v8150-vote-grid header{display:flex;justify-content:space-between;gap:10px;align-items:center}.v8150-vote-grid header strong{font-size:.8rem}.v8150-vote-grid>article.pro header strong{color:#5ee2bb}.v8150-vote-grid>article.proti header strong{color:#ff8e8e}.v8150-vote-grid>article.abstain header strong{color:#ffd26a}.v8150-vote-grid article>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.v8150-vote-grid span{display:grid;gap:1px;padding:6px 8px;border-radius:9px;font-size:.73rem;background:rgba(148,163,184,.065)}.v8150-vote-grid span.plus{background:rgba(34,197,94,.08)}.v8150-vote-grid span.minus{background:rgba(239,68,68,.08)}.v8150-vote-grid span small{opacity:.65;font-size:.65rem}.v8150-president-personnel{display:grid;gap:6px;align-content:start}.v8150-president-personnel select{width:100%;font-size:.74rem}.v8150-president-personnel button{width:100%}@media(max-width:800px){.v8150-vote-grid{grid-template-columns:1fr}}

/* Politikon v8.16.0 — institutions, strategic municipalities, hockey pyramid */
.v8160-president-authority,.v8160-local-strategy,.v8160-third-tier-info,.v8160-custom-club{scroll-margin-top:90px}
.v8160-custom-club .data-table .input{min-width:170px}
.v8160-custom-club .callout.good,.v8160-local-strategy .callout.good{border-color:rgba(51,214,159,.35)}
.v8160-promotion-barage{margin-top:14px}
@media(max-width:760px){.v8160-custom-club .data-table .input{min-width:135px}.v8160-custom-club img{float:none!important;margin-bottom:8px}}

/* Politikon v8.20.9 — persistent field network + country-event context */
.v8209-field-hq{scroll-margin-top:90px}.v8209-field-summary{display:grid;justify-items:end;gap:2px}.v8209-field-summary strong{font-size:1.25rem}.v8209-field-summary small{opacity:.65}
.v8209-field-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin:14px 0}.v8209-field-kpis article{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:center;padding:12px;border:1px solid var(--border,#334155);border-radius:13px;background:rgba(15,23,42,.34)}.v8209-field-kpis i{grid-row:1/3;font-style:normal;font-size:1.35rem}.v8209-field-kpis b{font-size:1.12rem}.v8209-field-kpis small{opacity:.68;font-size:.69rem}
.v8209-field-target{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(360px,1.28fr);gap:14px;align-items:end;padding:14px;border:1px solid rgba(56,189,248,.22);border-radius:15px;background:rgba(14,116,144,.07);margin:12px 0}.v8209-field-target h3{margin:3px 0}.v8209-field-target select{width:100%}
.v8209-field-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.v8209-field-action{appearance:none;text-align:left;padding:13px;border-radius:15px;border:1px solid rgba(45,212,191,.28);background:rgba(15,23,42,.48);color:inherit;cursor:pointer;display:grid;gap:9px;min-height:190px}.v8209-field-action:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(45,212,191,.65);background:rgba(13,148,136,.08)}.v8209-field-action header,.v8209-field-action footer{display:flex;justify-content:space-between;gap:9px;align-items:flex-start}.v8209-field-action header span{white-space:nowrap;color:#5ee2bb;font-weight:800}.v8209-field-action p{margin:0;opacity:.82;font-size:.83rem}.v8209-field-action footer{font-size:.7rem;opacity:.76;margin-top:auto}.v8209-field-action footer strong{color:#5ee2bb}.v8209-field-action.locked{opacity:.52;cursor:not-allowed}.v8209-field-action.busy{opacity:.7}.v8209-effect-tags{display:flex;flex-wrap:wrap;gap:5px}.v8209-effect-tags span{font-size:.66rem;padding:4px 7px;border-radius:999px;border:1px solid rgba(45,212,191,.22);background:rgba(45,212,191,.06)}.v8209-effect-tags b{color:#5ee2bb}
.v8209-field-two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.v8209-field-two-col>section{padding:13px;border:1px solid var(--border,#334155);border-radius:15px;background:rgba(15,23,42,.28)}.v8209-weak-list,.v8209-field-benefits{display:grid;gap:8px}.v8209-weak-list article{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:9px;border-radius:11px;background:rgba(148,163,184,.05)}.v8209-weak-list article>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:rgba(245,158,11,.12);color:#ffd26a}.v8209-weak-list small{display:block;opacity:.66}.v8209-field-benefits article{padding:9px;border-left:2px solid rgba(45,212,191,.35)}.v8209-field-benefits p{margin:4px 0 0;font-size:.76rem;opacity:.72}
.v8209-region-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.v8209-region-card{padding:12px;border:1px solid var(--border,#334155);border-radius:14px;background:rgba(15,23,42,.3)}.v8209-region-card header{display:flex;justify-content:space-between;gap:10px}.v8209-region-card header small{display:block;opacity:.65}.v8209-region-card header strong{font-size:1.15rem}.v8209-region-card .bar{margin:8px 0}.v8209-region-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.v8209-region-stats span{display:grid;text-align:center;padding:6px 3px;border-radius:8px;background:rgba(148,163,184,.045)}.v8209-region-stats small{font-size:.57rem;opacity:.65}.v8209-region-card footer{display:flex;justify-content:space-between;gap:8px;margin-top:8px;font-size:.65rem;opacity:.75}.v8209-legacy-detail{margin-top:16px}.v8209-event-context{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px;padding:9px;border:1px solid rgba(56,189,248,.16);border-radius:11px;background:rgba(14,116,144,.055)}.v8209-event-context p{width:100%;margin:0;font-size:.72rem;opacity:.72}
@media(max-width:1100px){.v8209-field-kpis{grid-template-columns:repeat(3,1fr)}.v8209-field-actions{grid-template-columns:repeat(2,1fr)}.v8209-region-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.v8209-field-summary{justify-items:start}.v8209-field-target,.v8209-field-two-col{grid-template-columns:1fr}.v8209-field-kpis,.v8209-field-actions,.v8209-region-grid{grid-template-columns:1fr}.v8209-region-card footer{flex-direction:column}.v8209-region-stats{grid-template-columns:repeat(3,1fr)}}
