/* Final admin color contract. Keep this stylesheet loaded last. */
html.page-admin-v2.page-admin body.index2-page.page-admin {
  --admin-action-primary-bg: #245ff2;
  --admin-action-primary-border: #245ff2;
  --admin-action-primary-text: #fff;
  --admin-action-secondary-bg: #fff;
  --admin-action-secondary-border: #245ff2;
  --admin-action-secondary-text: #142a55;
  --admin-action-neutral-bg: #edf3fc;
  --admin-action-neutral-border: #9fb1cc;
  --admin-action-neutral-text: #12284a;
  --admin-action-danger-bg: #f7e2e8;
  --admin-action-danger-border: #d9a2b2;
  --admin-action-danger-text: #84233f;
  --admin-action-disabled-bg: #dbe3ef;
  --admin-action-disabled-border: #b4c1d4;
  --admin-action-disabled-text: #52627a;
  --admin-photo-action-bg: rgba(9, 19, 36, .9);
  --admin-photo-action-border: rgba(255, 255, 255, .9);
  --admin-photo-action-text: #fff;
  --admin-photo-danger-bg: rgba(132, 27, 58, .94);
  --admin-primary-bg: var(--admin-action-primary-bg);
  --admin-primary-border: var(--admin-action-primary-border);
  --admin-primary-color: var(--admin-action-primary-text);
  --admin-alt-bg: var(--admin-action-secondary-bg);
  --admin-alt-border: var(--admin-action-secondary-border);
  --admin-alt-color: var(--admin-action-secondary-text);
  --admin-ghost-bg: var(--admin-action-neutral-bg);
  --admin-ghost-border: var(--admin-action-neutral-border);
  --admin-ghost-color: var(--admin-action-neutral-text);
  --admin-disabled-bg: var(--admin-action-disabled-bg);
  --admin-disabled-border: var(--admin-action-disabled-border);
  --admin-disabled-color: var(--admin-action-disabled-text);
  --admin-tab-bg: var(--admin-action-neutral-bg);
  --admin-tab-border: var(--admin-action-neutral-border);
  --admin-tab-color: var(--admin-action-neutral-text);
  --admin-tab-active-bg: var(--admin-action-primary-bg);
  --admin-tab-active-border: var(--admin-action-primary-border);
  --admin-tab-active-color: var(--admin-action-primary-text);
  color-scheme: light;
}

html.page-admin-v2.page-admin body.index2-page.theme-night.page-admin {
  --admin-action-primary-bg: #f6d77a;
  --admin-action-primary-border: #f6d77a;
  --admin-action-primary-text: #091324;
  --admin-action-secondary-bg: #1c1e23;
  --admin-action-secondary-border: #f6d77a;
  --admin-action-secondary-text: #f6d77a;
  --admin-action-neutral-bg: #111318;
  --admin-action-neutral-border: #746b4f;
  --admin-action-neutral-text: #f7f4e8;
  --admin-action-danger-bg: #4b1d28;
  --admin-action-danger-border: #b65b6f;
  --admin-action-danger-text: #ffd7df;
  --admin-action-disabled-bg: #34332f;
  --admin-action-disabled-border: #676257;
  --admin-action-disabled-text: #c8c2af;
  color-scheme: dark;
}

html.page-admin-v2.page-admin body.index2-page.theme-morning.page-admin {
  --admin-action-primary-bg: linear-gradient(135deg, #d95778, #bd3c70);
  --admin-action-primary-border: #a73660;
  --admin-action-primary-text: #fff;
  --admin-action-secondary-bg: #fff8f5;
  --admin-action-secondary-border: #c9687f;
  --admin-action-secondary-text: #65253f;
  --admin-action-neutral-bg: #fae9e7;
  --admin-action-neutral-border: #d7a6a3;
  --admin-action-neutral-text: #522238;
  --admin-action-danger-bg: #f8dde4;
  --admin-action-danger-border: #d29aa9;
  --admin-action-danger-text: #7b253e;
  --admin-action-disabled-bg: #ead3d2;
  --admin-action-disabled-border: #cda5a5;
  --admin-action-disabled-text: #76545f;
}

html.page-admin-v2.page-admin body.index2-page.page-admin .btn:not(.alt):not(.ghost):not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .v2-inline-btn:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .v2-pill.v2-active:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .v2-primary:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .tx-btn-primary:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .geo-locate-btn:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .article-manual-upload-btn:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .mini-btn.active:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .v2-subtab-btn.v2-active:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .article-preview-tab.is-active:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .recommendation-preview-tab.is-active:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .admin-tab[aria-selected="true"]:not(:disabled) {
  background: var(--admin-action-primary-bg) !important;
  border-color: var(--admin-action-primary-border) !important;
  color: var(--admin-action-primary-text) !important;
  -webkit-text-fill-color: var(--admin-action-primary-text) !important;
  text-shadow: none !important;
}

html.page-admin-v2.page-admin body.index2-page.page-admin .btn.alt:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .v2-rebuild-mini:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .v2-quick-btn.v2-rebuild:not(:disabled) {
  background: var(--admin-action-secondary-bg) !important;
  border-color: var(--admin-action-secondary-border) !important;
  color: var(--admin-action-secondary-text) !important;
  -webkit-text-fill-color: var(--admin-action-secondary-text) !important;
  text-shadow: none !important;
}

html.page-admin-v2.page-admin body.index2-page.page-admin .btn.ghost:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .mini-btn:not(.active):not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .article-html-tool:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .article-layout-builder-btn:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .article-layout-block-btn:not(.is-danger):not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .v2-quick-btn:not(.v2-primary):not(.v2-rebuild):not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .v2-subtab-btn:not(.v2-active):not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .admin-tab[aria-selected="false"]:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .admin-nav-action:not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .icon-action-btn:not(.is-danger):not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .tx-btn:not(.tx-btn-primary):not(.tx-btn-danger):not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .article-preview-tab:not(.is-active):not(:disabled),
html.page-admin-v2.page-admin body.index2-page.page-admin .recommendation-preview-tab:not(.is-active):not(:disabled) {
  background: var(--admin-action-neutral-bg) !important;
  border-color: var(--admin-action-neutral-border) !important;
  color: var(--admin-action-neutral-text) !important;
  -webkit-text-fill-color: var(--admin-action-neutral-text) !important;
  text-shadow: none !important;
}

html.page-admin-v2.page-admin body.index2-page.page-admin :is(.btn, .mini-btn, .icon-action-btn, .v2-inline-btn, .v2-rebuild-mini, .v2-quick-btn, .v2-subtab-btn, .tx-btn, .admin-tab, .article-preview-tab, .recommendation-preview-tab):disabled {
  background: var(--admin-action-disabled-bg) !important;
  border-color: var(--admin-action-disabled-border) !important;
  color: var(--admin-action-disabled-text) !important;
  -webkit-text-fill-color: var(--admin-action-disabled-text) !important;
  opacity: 1 !important;
}

html.page-admin-v2.page-admin body.index2-page.page-admin :is(
  .btn.is-danger,
  .mini-btn.is-danger,
  .icon-action-btn.is-danger,
  .article-layout-block-btn.is-danger,
  .tx-btn-danger,
  #postDeleteBtn,
  #articleDeleteBtn,
  #recommendationDeleteBtn,
  #adminUserDeleteBtn,
  #discoveryDeleteBtn
):not(:disabled) {
  background: var(--admin-action-danger-bg) !important;
  border-color: var(--admin-action-danger-border) !important;
  color: var(--admin-action-danger-text) !important;
  -webkit-text-fill-color: var(--admin-action-danger-text) !important;
  text-shadow: none !important;
}

html.page-admin-v2.page-admin body.index2-page.page-admin :is(.btn, .mini-btn, .icon-action-btn, .v2-inline-btn, .v2-rebuild-mini, .v2-quick-btn, .v2-subtab-btn, .tx-btn, .admin-tab, .article-preview-tab, .recommendation-preview-tab):focus-visible {
  outline: 3px solid var(--admin-input-focus, #245ff2) !important;
  outline-offset: 3px !important;
}

/* Controls over photography always use their own high-contrast palette. */
html.page-admin-v2.page-admin body.index2-page.page-admin :is(
  .post-photo-shift,
  .post-photo-remove,
  .discovery-photo-action,
  .article-inline-photo-action,
  .article-layout-inline-action,
  [data-photo-action],
  [data-image-action]
) {
  display: inline-grid !important;
  place-items: center !important;
  min-width: 40px !important;
  width: 40px !important;
  min-height: 40px !important;
  height: 40px !important;
  padding: 0 !important;
  border: 2px solid var(--admin-photo-action-border) !important;
  border-radius: 999px !important;
  background: var(--admin-photo-action-bg) !important;
  color: var(--admin-photo-action-text) !important;
  -webkit-text-fill-color: var(--admin-photo-action-text) !important;
  box-shadow: 0 3px 12px rgba(0, 0, 0, .45) !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

html.page-admin-v2.page-admin body.index2-page.page-admin :is(
  .post-photo-remove,
  .discovery-photo-action.is-danger,
  [data-photo-action="remove"],
  [data-image-action="remove"]
) {
  background: var(--admin-photo-danger-bg) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

html.page-admin-v2.page-admin body.index2-page.page-admin :is(
  .post-photo-shift,
  .post-photo-remove,
  .discovery-photo-action,
  .article-inline-photo-action,
  .article-layout-inline-action,
  [data-photo-action],
  [data-image-action]
):focus-visible {
  outline: 3px solid #fff !important;
  outline-offset: 2px !important;
}

@media (max-width: 680px) {
  html.page-admin-v2.page-admin body.index2-page.page-admin :is(
    .post-photo-shift,
    .post-photo-remove,
    .discovery-photo-action,
    .article-inline-photo-action,
    .article-layout-inline-action,
    [data-photo-action],
    [data-image-action]
  ) {
    min-width: 44px !important;
    width: 44px !important;
    min-height: 44px !important;
    height: 44px !important;
  }
}

/* Geometry and native controls belong to the same final contract as colors. */
html.page-admin-v2.page-admin body.index2-page.page-admin {
  --admin-radius-panel: 8px;
  --admin-radius-control: 8px;
  --admin-radius-thumbnail: 6px;
  --admin-radius-pill: 999px;
  --admin-range-track: #c6d1e2;
}

html.page-admin-v2.page-admin body.index2-page.theme-morning.page-admin {
  --admin-range-track: #d8c9c2;
}

html.page-admin-v2.page-admin body.index2-page.theme-night.page-admin {
  --admin-range-track: #514d40;
}

html.page-admin-v2.page-admin body.index2-page.page-admin .story-crop-controls {
  border-color: var(--admin-border) !important;
  border-radius: var(--admin-radius-panel) !important;
  background: var(--admin-surface-soft) !important;
}

html.page-admin-v2.page-admin body.index2-page.page-admin .story-crop-controls input[type="range"] {
  border: 0 !important;
  border-radius: var(--admin-radius-pill) !important;
  background: transparent !important;
  box-shadow: none !important;
  accent-color: var(--admin-accent) !important;
}

html.page-admin-v2.page-admin body.index2-page.page-admin .story-crop-controls input[type="range"]:focus-visible {
  outline: 3px solid var(--admin-accent) !important;
  outline-offset: 3px !important;
}

html.page-admin-v2.page-admin body.index2-page.page-admin .page-story-image-picker {
  grid-template-columns: repeat(auto-fill, minmax(112px, 1fr));
  border-color: var(--admin-border) !important;
  border-radius: var(--admin-radius-panel) !important;
  background: var(--admin-surface-soft) !important;
}

html.page-admin-v2.page-admin body.index2-page.page-admin .page-story-image-choice {
  grid-template-rows: auto auto;
  min-height: 0;
  padding: 6px;
  border: 2px solid var(--admin-border) !important;
  border-radius: var(--admin-radius-control) !important;
  background: var(--admin-surface) !important;
  color: var(--admin-text) !important;
}

html.page-admin-v2.page-admin body.index2-page.page-admin .page-story-image-choice img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  border-radius: var(--admin-radius-thumbnail) !important;
  object-fit: cover;
}

html.page-admin-v2.page-admin body.index2-page.page-admin .page-story-image-choice.is-selected {
  border-color: var(--admin-accent) !important;
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--admin-accent) 24%, transparent) !important;
}

html.page-admin-v2.page-admin body.index2-page.page-admin .page-story-image-choice.is-selected::after {
  top: 10px;
  right: 10px;
  border: 2px solid var(--admin-surface);
  background: var(--admin-selected-bg);
  color: var(--admin-selected-text);
}

@media (max-width: 640px) {
  html.page-admin-v2.page-admin body.index2-page.page-admin .page-story-image-picker {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  html.page-admin-v2.page-admin body.index2-page.page-admin .page-story-image-choice {
    grid-template-rows: auto auto;
    min-height: 0;
  }
  html.page-admin-v2.page-admin body.index2-page.page-admin .page-story-image-choice img {
    height: auto;
  }
}
