.article-layout > .article-main,
.article-layout > .article-sidebar {
  min-width: 0;
}

.vegas-hero-panel {
  position: relative;
  display: grid;
  min-height: 286px;
  overflow: hidden;
  place-content: center;
  padding: 34px;
  border: 1px solid #264b40;
  background:
    radial-gradient(circle at 15% 18%, rgba(255, 168, 0, .22) 0 3px, transparent 4px),
    radial-gradient(circle at 82% 24%, rgba(133, 230, 66, .18) 0 4px, transparent 5px),
    linear-gradient(135deg, rgba(255, 163, 0, .1), transparent 42%),
    linear-gradient(145deg, #081d17 0%, #0a3d2c 55%, #071713 100%);
  color: #fff;
  text-align: center;
}

.vegas-hero-panel::before {
  position: absolute;
  inset: 18px;
  border: 1px solid rgba(255, 177, 39, .26);
  content: "";
  pointer-events: none;
}

.vegas-hero-panel::after {
  position: absolute;
  right: -56px;
  bottom: -78px;
  width: 220px;
  height: 220px;
  border: 30px solid rgba(255, 166, 0, .09);
  border-radius: 50%;
  content: "";
}

.vegas-hero-mark,
.vegas-reels,
.vegas-hero-panel > small {
  position: relative;
  z-index: 1;
}

.vegas-hero-mark {
  color: #ffac12;
  font-size: clamp(2.8rem, 8vw, 5.4rem);
  font-weight: 950;
  letter-spacing: -.065em;
  line-height: .9;
  text-shadow: 0 8px 28px rgba(0, 0, 0, .35);
}

.vegas-hero-panel > small {
  margin-top: 15px;
  color: #d8eee6;
  font-size: .75rem;
  font-weight: 850;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.vegas-reels {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin: 19px auto 0;
}

.vegas-reels span {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 9px;
  background: rgba(255, 255, 255, .1);
  color: #fff;
  font-size: 1.2rem;
  font-weight: 950;
  box-shadow: inset 0 0 18px rgba(255, 255, 255, .04);
}

.vegas-affiliate-note,
.vegas-update-note,
.vegas-caption {
  color: #52647d;
  font-size: .9rem;
  line-height: 1.58;
}

.vegas-update-note {
  margin: 18px 0 0;
  padding: 14px 16px;
  border-left: 4px solid #0b806d;
  background: #edf7f4;
}

.vegas-warning,
.vegas-proof-note {
  margin: 18px 0;
  padding: 15px 17px;
  border: 1px solid #f0ca75;
  border-left: 4px solid #d98600;
  background: #fff8e9;
  color: #392a08;
}

.vegas-warning strong,
.vegas-proof-note strong { display: block; margin-bottom: 4px; }
.vegas-warning p,
.vegas-proof-note p { margin: 0; }

.vegas-fact-grid,
.vegas-card-grid,
.vegas-truth-grid,
.vegas-help-grid,
.vegas-step-grid {
  display: grid;
  gap: 13px;
  margin-top: 20px;
}

.vegas-fact-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.vegas-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.vegas-truth-grid,
.vegas-help-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.vegas-step-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }

.vegas-fact,
.vegas-card,
.vegas-truth,
.vegas-help,
.vegas-step {
  min-width: 0;
  padding: 17px;
  border: 1px solid #d4e2e9;
  background: #fff;
}

.vegas-fact span,
.vegas-card > span,
.vegas-truth > span,
.vegas-help > span,
.vegas-step > span {
  display: block;
  margin-bottom: 7px;
  color: #087c6c;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.vegas-fact strong {
  display: block;
  color: #071f3d;
  font-size: 1.07rem;
}

.vegas-fact p,
.vegas-card p,
.vegas-truth p,
.vegas-help p,
.vegas-step p {
  margin: 7px 0 0;
  color: #40556c;
  font-size: .9rem;
}

.vegas-card h3,
.vegas-truth h3,
.vegas-help h3,
.vegas-step h3 { margin: 0 0 8px; font-size: 1.03rem; }

.vegas-card.is-orange { border-top: 4px solid #e28b00; }
.vegas-card.is-green { border-top: 4px solid #07825e; }
.vegas-card.is-red { border-top: 4px solid #b94a48; }

.vegas-shot {
  margin: 24px 0;
  overflow: hidden;
  border: 1px solid #2b403b;
  border-radius: 8px;
  background: #101312;
  box-shadow: 0 14px 34px rgba(9, 37, 29, .12);
}

.vegas-shot img {
  display: block;
  width: 100%;
  height: auto;
}

.vegas-shot figcaption {
  padding: 12px 15px;
  background: #f4f8f7;
  color: #4d6277;
  font-size: .82rem;
  line-height: 1.55;
}

.vegas-table-wrap {
  margin: 20px 0;
  overflow-x: auto;
  border: 1px solid #d4e2e9;
  background: #fff;
  -webkit-overflow-scrolling: touch;
}

.vegas-table {
  width: 100%;
  min-width: 720px;
  border-collapse: collapse;
  font-size: .9rem;
}

.vegas-table th,
.vegas-table td {
  padding: 12px 14px;
  border-bottom: 1px solid #e1e9ee;
  text-align: left;
  vertical-align: top;
}

.vegas-table th {
  background: #eef6f3;
  color: #173a4d;
  font-size: .74rem;
  letter-spacing: .035em;
  text-transform: uppercase;
}

.vegas-table tr:last-child td { border-bottom: 0; }

.vegas-checklist {
  padding-left: 0;
  list-style: none;
}

.vegas-checklist li {
  position: relative;
  padding: 8px 0 8px 29px;
}

.vegas-checklist li::before {
  position: absolute;
  left: 0;
  color: #087c6c;
  content: "✓";
  font-weight: 900;
}

.vegas-calculator {
  margin: 24px 0;
  padding: clamp(20px, 4vw, 30px);
  border: 1px solid #a9cfc3;
  background: linear-gradient(145deg, #edf8f5 0%, #fbfdfc 100%);
}

.vegas-calculator h3 { margin-top: 0; font-size: clamp(1.28rem, 2.5vw, 1.65rem); }

.vegas-calculator-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.vegas-field label {
  display: block;
  color: #173a4d;
  font-size: .82rem;
  font-weight: 850;
}

.vegas-field input,
.vegas-field select {
  width: 100%;
  min-height: 48px;
  margin-top: 7px;
  padding: 10px 12px;
  border: 1px solid #88b8ab;
  border-radius: 4px;
  background: #fff;
  color: #071f3d;
  font: inherit;
}

.vegas-field small { display: block; margin-top: 5px; color: #607287; }

.vegas-calculator-output {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 18px;
}

.vegas-calculator-output > div {
  min-width: 0;
  padding: 15px;
  border: 1px solid #cfe0db;
  background: #fff;
}

.vegas-calculator-output span,
.vegas-calculator-output strong { display: block; }
.vegas-calculator-output span { color: #5b6f80; font-size: .7rem; font-weight: 800; text-transform: uppercase; }
.vegas-calculator-output strong { margin-top: 5px; color: #071f3d; font-size: 1.05rem; }
.vegas-calculator-explanation { grid-column: 1 / -1; margin: 0; color: #344d63; line-height: 1.65; }

.vegas-calculator-error {
  margin: 14px 0 0;
  padding: 10px 12px;
  border-left: 4px solid #b94a48;
  background: #fff3f1;
  color: #7a2b25;
}

.vegas-cta {
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  margin-top: 22px;
  padding: 20px;
  border: 1px solid #c8dcec;
  background: #f1f7fb;
}

.vegas-cta > div { min-width: 0; }
.vegas-cta strong { display: block; color: #071f3d; font-size: 1.05rem; }
.vegas-cta p { margin: 4px 0 0; color: #52647d; font-size: .92rem; }
.vegas-cta .button { flex: 0 0 auto; text-align: center; }

.vegas-definition {
  display: grid;
  grid-template-columns: minmax(150px, .55fr) minmax(0, 1.45fr);
  margin: 20px 0;
  border: 1px solid #dde7ec;
  border-bottom: 0;
  background: #fff;
}

.vegas-definition dt,
.vegas-definition dd {
  margin: 0;
  padding: 13px 14px;
  border-bottom: 1px solid #dde7ec;
}

.vegas-definition dt { color: #071f3d; font-weight: 850; }
.vegas-definition dd { color: #40556c; }

.vegas-author-box {
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  margin-top: 18px;
  padding: 20px;
  border: 1px solid #d4e3df;
  border-radius: 8px;
  background: #f2faf7;
}

.vegas-author-box img {
  width: 82px;
  height: 82px;
  border-radius: 50%;
  object-fit: cover;
}

.vegas-author-box span {
  display: block;
  margin-bottom: 4px;
  color: #087c6c;
  font-size: .75rem;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.vegas-author-box h3 { margin: 0 0 5px; color: #071f3d; }
.vegas-author-box p { margin: 0; color: #40556c; line-height: 1.58; }

#prehled-vegas,
#hry,
#bonus-vegas,
#kalkulacka-vegas,
#top-vyhry,
#jackpoty,
#mobil-vegas,
#registrace-vegas,
#platby-vegas,
#bezpecnost-vegas,
#rozdily-vegas,
#faq-vegas,
#autori-vegas { scroll-margin-top: 96px; }

@media (max-width: 1040px) {
  .vegas-fact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .vegas-step-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .vegas-calculator-output { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
  .vegas-card-grid,
  .vegas-calculator-grid { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .vegas-hero-panel { min-height: 220px; padding: 26px; }
  .vegas-truth-grid,
  .vegas-help-grid,
  .vegas-step-grid,
  .vegas-calculator-output { grid-template-columns: 1fr; }
  .vegas-calculator-explanation { grid-column: auto; }
  .vegas-cta { align-items: stretch; flex-direction: column; }
  .vegas-cta .button { width: 100%; }
  .vegas-definition { grid-template-columns: 1fr; }
  .vegas-definition dt { padding-bottom: 3px; border-bottom: 0; }
  .vegas-definition dd { padding-top: 3px; }
  .vegas-author-box { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
  .vegas-fact-grid { grid-template-columns: 1fr; }
  .vegas-calculator,
  .vegas-cta { margin-right: -8px; margin-left: -8px; padding: 17px; }
  .vegas-table { min-width: 640px; }
  .vegas-shot { margin-right: -8px; margin-left: -8px; border-radius: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .vegas-cta .button { scroll-behavior: auto; }
}
