.watch-save-nav-button {
  border: 1px solid #f7d45c;
  background: linear-gradient(180deg, #e6bd3f, #a87409);
  color: #140e00;
  box-shadow: 0 0 14px rgba(235, 190, 52, .22);
  font-weight: 800;
}
.watch-save-nav-button:hover, .watch-save-nav-button:focus-visible { filter: brightness(1.08); }
.account-link.watch-save-nav-button { white-space: nowrap; }

.watch-save-modal[hidden] { display: none !important; }
.watch-save-modal { position: fixed; z-index: 1000; inset: 0; display: grid; place-items: center; padding: 1rem; }
.watch-save-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.78); backdrop-filter: blur(6px); }
.watch-save-dialog {
  position: relative;
  z-index: 1;
  width: min(560px, 100%);
  max-height: min(820px, calc(100svh - 2rem));
  overflow: auto;
  border: 1px solid rgba(247,212,92,.6);
  border-radius: .65rem;
  padding: clamp(1.2rem, 4vw, 2rem);
  background: linear-gradient(180deg, rgba(30,24,10,.98), rgba(5,8,12,.99));
  box-shadow: 0 24px 80px rgba(0,0,0,.7);
}
.watch-save-dialog h2 { margin: .15rem 0 .55rem; font-size: clamp(1.5rem, 5vw, 2.2rem); }
.watch-save-close {
  position: absolute; top: .65rem; right: .75rem; width: 2.2rem; height: 2.2rem;
  border: 0; border-radius: 50%; background: rgba(255,255,255,.09); color: #fff;
  font-size: 1.45rem; cursor: pointer;
}
.watch-save-balances { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; margin: 1.1rem 0; }
.watch-save-balances > div, .watch-save-offer, .watch-save-progress {
  border: 1px solid rgba(255,255,255,.14); border-radius: .45rem; background: rgba(0,0,0,.26); padding: .9rem;
}
.watch-save-balances span, .watch-save-offer span { display: block; color: rgba(255,255,255,.68); font-size: .78rem; }
.watch-save-balances strong { display: block; margin-top: .2rem; font-size: 1.3rem; }
.watch-save-offer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .8rem; }
.watch-save-progress { margin-bottom: .8rem; }
.watch-save-progress-row { display: flex; justify-content: space-between; gap: .8rem; }
.watch-save-progress-track { height: .55rem; border-radius: 999px; overflow: hidden; background: rgba(255,255,255,.1); margin-top: .65rem; }
.watch-save-progress-track span { display: block; height: 100%; width: 0; background: linear-gradient(90deg, #a87409, #f7d45c); transition: width .2s ease; }
.watch-save-warning { padding: .75rem; border-left: 3px solid #f7d45c; background: rgba(247,212,92,.08); font-size: .9rem; }
.watch-save-status { min-height: 1.35rem; margin: .9rem 0; }
.watch-save-actions { display: flex; gap: .7rem; flex-wrap: wrap; }

.page-content--with-ad-rail {
  max-width: 1240px;
  position: relative;
  display: block;
}
.page-primary { width: 100%; min-width: 0; }
.page-ad-rail {
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(100% + 2rem);
  width: min(260px, calc((100vw - 1240px) / 2 - 3rem));
  min-width: 170px;
  min-height: 540px;
}
.page-ad-rail .ad-slot { position: sticky; top: 4.5rem; min-height: 420px; }
.adsbygoogle { display: block; width: 100%; min-height: inherit; }
.bottom-ad-anchor[hidden] { display: none !important; }
.bottom-ad-anchor {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: min(100%, 1240px);
  min-height: 96px;
  margin: clamp(3rem, 6vw, 6rem) auto 0;
  padding: .75rem clamp(.75rem, 2vw, 1.5rem) calc(.75rem + env(safe-area-inset-bottom));
  box-sizing: border-box;
  border-top: 1px solid rgba(255,255,255,.12);
  background: rgba(2,7,12,.72);
}
.bottom-ad {
  width: min(100%, 970px);
  min-height: 90px;
}
.bottom-ad--mobile { display: none; }
.bottom-ad-anchor .ad-slot { min-height: 90px; }

/* Keep the content centered. Side inventory lives in the unused page margin. */
.page-player .player-stream-showcase,
.page-player .page-primary { width: 100%; }

@media (min-width: 1900px) {
  .page-game .page-ad-rail {
    left: calc(100% + 150px);
    width: min(190px, calc((100vw - 1240px) / 2 - 166px));
    min-width: 140px;
  }
}

.owner-ad-shell { max-width: 1500px; margin: 0 auto; padding: clamp(1rem, 3vw, 3rem); }
.owner-ad-header, .owner-ad-panel { border: 1px solid rgba(255,255,255,.16); background: rgba(3,9,15,.86); padding: clamp(1.1rem, 3vw, 2rem); }
.owner-ad-header { margin-bottom: 1rem; }
.owner-ad-header h1 { margin: .15rem 0 .65rem; }
.owner-ad-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: .8rem; margin: 1rem 0; }
.owner-ad-grid--compact { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
.owner-ad-card { border: 1px solid rgba(255,255,255,.13); background: rgba(0,0,0,.28); padding: 1rem; border-radius: .4rem; }
.owner-ad-card span, .owner-ad-card small { display: block; color: rgba(255,255,255,.68); }
.owner-ad-card strong { display: block; margin: .35rem 0; font-size: 1.35rem; }
.owner-ad-panel { margin-top: 1rem; }
.owner-ad-panel h2 { margin-top: 0; }
.owner-ad-table-wrap { overflow-x: auto; }
.owner-ad-table { width: 100%; border-collapse: collapse; font-size: .88rem; }
.owner-ad-table th, .owner-ad-table td { padding: .65rem .75rem; border-bottom: 1px solid rgba(255,255,255,.1); text-align: left; vertical-align: top; }
.owner-ad-table th { color: rgba(255,255,255,.72); }

@media (max-width: 1899px) {
  .page-game .page-ad-rail { display: none; }
}
@media (max-width: 1700px) {
  .page-ad-rail { display: none; }
}
@media (max-width: 900px) {
  .owner-ad-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .home-ad-rail,
  .page-ad-rail { display: none; }
  .bottom-ad--desktop { display: none; }
  .bottom-ad--mobile {
    display: block;
    width: min(100%, 728px);
  }
}
@media (max-width: 560px) {
  .watch-save-balances, .owner-ad-grid { grid-template-columns: 1fr; }
  .watch-save-offer, .watch-save-progress-row { align-items: flex-start; flex-direction: column; }
}


/* Owner-only Ad Preview placeholders. These never request Google inventory. */
.ad-slot--preview {
  min-height: inherit;
  border: 2px dashed rgba(247, 212, 92, .9);
  background:
    repeating-linear-gradient(
      -45deg,
      rgba(247, 212, 92, .07),
      rgba(247, 212, 92, .07) 12px,
      rgba(255, 255, 255, .025) 12px,
      rgba(255, 255, 255, .025) 24px
    );
}
.ad-preview-placeholder {
  min-height: inherit;
  display: grid;
  place-content: center;
  gap: .45rem;
  padding: 1rem;
  box-sizing: border-box;
  text-align: center;
  color: #fff2b5;
}
.ad-preview-placeholder strong {
  font-size: clamp(.78rem, 1.5vw, 1rem);
  letter-spacing: .08em;
}
.ad-preview-placeholder span {
  color: rgba(255,255,255,.85);
  font-size: .84rem;
}
.ad-preview-placeholder small {
  color: rgba(255,255,255,.62);
  font-size: .72rem;
}
body[data-ad-preview="1"] .bottom-ad-anchor {
  outline: 1px solid rgba(247, 212, 92, .4);
}
body[data-ad-preview="1"] .home-ad-rail,
body[data-ad-preview="1"] .page-ad-rail {
  outline: 1px solid rgba(247, 212, 92, .28);
}
