/**
 * SPBX Sound — shared design system (admin, review, presentation)
 * Loads after page inline styles to override legacy gold theme.
 */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,600;1,300&display=swap');

:root {
  --background: #0D0D0D;
  --surface: #111111;
  --surface-raised: #1A1A1A;
  --accent: #5B7FA6;
  --accent-dim: rgba(91, 127, 166, 0.35);
  --accent-border: rgba(91, 127, 166, 0.15);
  --accent-border-hover: rgba(91, 127, 166, 0.4);
  --accent-soft: rgba(91, 127, 166, 0.1);
  --accent-soft-hover: rgba(91, 127, 166, 0.05);
  --identity: #A8874A;
  --identity-soft: rgba(168, 135, 74, 0.15);
  --text: #F0EDE6;
  --text-dim: rgba(240, 237, 230, 0.38);
  --font-display: 'Cormorant Garamond', Georgia, serif;
  --spbx-select-size: 0.8125rem;
  --spbx-select-size-compact: 0.75rem;
  --spbx-select-fw: 500;
  --spbx-select-lh: 1.35;
  --spbx-select-py: 0.4375rem;
  --spbx-select-px: 0.625rem;
  --spbx-select-min-h: 2.125rem;
  --spbx-select-radius: 6px;
  --spbx-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5L6 7.5L9 4.5' fill='none' stroke='%23888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

@keyframes spbxPageFade {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes spbxFadeUp {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

html {
  color-scheme: dark;
}

body {
  background: radial-gradient(ellipse 60% 50% at 85% 10%, rgba(91, 127, 166, 0.04) 0%, transparent 70%), var(--background) !important;
  background-color: var(--background) !important;
  color: var(--text) !important;
  animation: spbxPageFade 0.6s ease both;
}

/* Soft accent “droplets” / ripples behind auth screens */
.spbx-droplets {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  overflow: hidden;
}

.spbx-droplet {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}

body.theme-dark .spbx-droplet--accent,
body:not(.theme-light) .spbx-droplet--accent {
  width: min(70vw, 640px);
  height: min(62vh, 560px);
  top: -18%;
  right: -14%;
  background: radial-gradient(
    ellipse at 42% 48%,
    rgba(91, 127, 166, 0.38) 0%,
    rgba(91, 127, 166, 0.14) 32%,
    rgba(91, 127, 166, 0.05) 52%,
    transparent 72%
  );
  filter: blur(40px);
}

body.theme-dark .spbx-droplet--accent-2,
body:not(.theme-light) .spbx-droplet--accent-2 {
  width: min(52vw, 480px);
  height: min(46vh, 420px);
  top: 32%;
  right: 6%;
  background: radial-gradient(
    ellipse at center,
    rgba(91, 127, 166, 0.22) 0%,
    rgba(91, 127, 166, 0.08) 40%,
    transparent 70%
  );
  filter: blur(48px);
}

body.theme-dark .spbx-droplet--identity,
body:not(.theme-light) .spbx-droplet--identity {
  width: min(56vw, 520px);
  height: min(50vh, 460px);
  bottom: -20%;
  left: -16%;
  background: radial-gradient(
    ellipse at 55% 50%,
    rgba(168, 135, 74, 0.28) 0%,
    rgba(168, 135, 74, 0.1) 38%,
    transparent 72%
  );
  filter: blur(44px);
}

body.theme-light .spbx-droplet--accent {
  width: min(70vw, 640px);
  height: min(62vh, 560px);
  top: -18%;
  right: -14%;
  background: radial-gradient(
    ellipse at 42% 48%,
    rgba(91, 127, 166, 0.42) 0%,
    rgba(91, 127, 166, 0.22) 32%,
    rgba(91, 127, 166, 0.1) 52%,
    transparent 72%
  );
  filter: blur(34px);
}

body.theme-light .spbx-droplet--accent-2 {
  width: min(52vw, 480px);
  height: min(46vh, 420px);
  top: 32%;
  right: 6%;
  background: radial-gradient(
    ellipse at center,
    rgba(91, 127, 166, 0.32) 0%,
    rgba(91, 127, 166, 0.16) 40%,
    transparent 70%
  );
  filter: blur(40px);
}

body.theme-light .spbx-droplet--identity {
  width: min(56vw, 520px);
  height: min(50vh, 460px);
  bottom: -20%;
  left: -16%;
  background: radial-gradient(
    ellipse at 55% 50%,
    rgba(168, 135, 74, 0.34) 0%,
    rgba(168, 135, 74, 0.18) 38%,
    transparent 72%
  );
  filter: blur(40px);
}

/* Fixed ambient backdrop on every page (same as login) */
.spbx-page-droplets {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

body:has(.spbx-page-droplets) > .app,
body:has(.spbx-page-droplets) > .cp-app,
body:has(.spbx-page-droplets) > #authScreen,
body:has(.spbx-page-droplets) > #root,
body:has(.spbx-page-droplets) > .auth-screen,
body:has(.spbx-page-droplets) > #app,
body:has(.spbx-page-droplets) > .app-loading-overlay,
body:has(.spbx-page-droplets) > .toast {
  position: relative;
  z-index: 1;
}

body:has(.spbx-page-droplets) .cp-auth-screen > .spbx-droplets:not(.spbx-page-droplets) {
  display: none;
}

.app {
  animation: spbxFadeUp 1.1s ease both 0.1s;
}

/* ── Typography ── */
.gate-title,
.auth-title,
.np-title,
.title-main,
.rank-head h2,
.modal-title,
.gate-card h1 {
  font-family: var(--font-display);
  font-weight: 300;
  letter-spacing: 0.02em;
  color: var(--accent) !important;
}

.brand,
.brand .brand-text,
.brand .brand-label,
.bproj,
.top-brand {
  font-family: var(--font-display);
  font-weight: 300;
  font-style: italic;
  color: var(--identity) !important;
  font-size: 17px;
}

.bproj .top-proj-name {
  font-size: 17px;
  font-weight: 400;
  font-style: normal;
  color: var(--text) !important;
}

.bproj .top-screen-suffix {
  font-size: 17px;
  font-weight: 400;
  font-style: normal;
  color: var(--text) !important;
}

.bproj .top-client {
  font-size: 17px;
  font-weight: 600;
  font-style: normal;
}

/* ── Surfaces & chrome ── */
.topbar,
.file-panel,
.gate-card,
.auth-card,
.rank-panel,
.modal-card,
.tile,
.note-item,
.toast,
.waveform,
.player-panel,
.review-scroll-below > .file-panel,
.filmstrip,
.now-playing,
.audio-player,
.decision-section,
.mobile-menu-panel {
  background: var(--surface) !important;
  border-color: var(--accent-border) !important;
}

.topbar,
.file-panel,
.divider,
.now-playing,
.audio-player,
.decision-section,
.rank-head,
.mobile-menu-panel {
  border-color: var(--accent-border) !important;
}

.player-panel,
.review-player-col,
.review-media-zone,
.review-layout,
.review-content-col,
.review-scroll-below,
.review-notes-zone,
.review-scroll-below > .review-notes-zone,
.gate {
  background: transparent !important;
}

.fp-row:hover,
.tile:hover,
.fp-folder-head:hover,
.rank-close:hover {
  background: var(--accent-soft-hover) !important;
}

.fp-row.active,
.tile.active {
  background: var(--accent-soft) !important;
  border-color: var(--accent-border-hover) !important;
  box-shadow: inset 2px 0 0 var(--accent) !important;
}

/* ── Labels / eyebrows ── */
.fp-head,
.ds-label,
.ns-label,
.gate-kicker,
.auth-field-label,
.gate-label,
.section-label {
  color: rgba(91, 127, 166, 0.7) !important;
}

/* ── Inputs ── */
.gate-input,
.auth-input,
.note-input,
.note-name-input,
.tb-posting-select,
.topbar select,
.field-inp,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
textarea {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(91, 127, 166, 0.3) !important;
  border-radius: 0 !important;
  color: var(--text) !important;
}

.gate-input:focus,
.auth-input:focus,
.note-input:focus,
.note-name-input:focus,
.tb-posting-select:focus,
.topbar select:focus,
input:focus,
textarea:focus {
  outline: none !important;
  border-bottom-color: var(--accent) !important;
}

/* ── Site-wide select / dropdown typography ── */
select {
  font-family: inherit;
  font-size: var(--spbx-select-size);
  font-weight: var(--spbx-select-fw);
  line-height: var(--spbx-select-lh);
}

select.spbx-select-compact,
.tb-posting-select,
.fp-posting-select,
.dash-status-select,
.dash-card-posting-select,
.cp-status-select,
.dash-posting-panel select,
.dash-posting-panel-select,
.cp-submission-batch-bar select,
.cdb-select {
  font-size: var(--spbx-select-size-compact);
}

/* ── Primary buttons ── */
.gate-btn,
.auth-btn,
.play-btn,
.vid-play-btn,
.btn-primary,
.exp-primary {
  background: var(--accent) !important;
  color: var(--background) !important;
  border: none !important;
  border-radius: 0 !important;
}

.gate-btn:hover,
.auth-btn:hover,
.btn-primary:hover {
  filter: brightness(1.08);
}

/* ── Ghost buttons ── */
.signout,
.btn-ghost,
.rankings-btn,
.tb-tool-btn,
.np-dl-btn,
.note-send,
.add-btn,
.fp-add,
.fp-add-folder,
.ptab-review,
.ptab-pres,
.fp-dl-btn,
.fp-folder-tool,
.ctrl-btn,
.rank-close {
  background: none !important;
  border: 1px solid rgba(91, 127, 166, 0.35) !important;
  border-radius: 0 !important;
  color: var(--accent) !important;
  transition: background 0.2s, color 0.2s;
}

.signout:hover,
.btn-ghost:hover,
.rankings-btn:hover,
.tb-tool-btn:hover,
.np-dl-btn:hover,
.note-send:hover,
.add-btn:hover,
.fp-add:hover,
.ptab-review:hover,
.ptab-pres:hover,
.fp-dl-btn:hover,
.fp-folder-tool:hover,
.ctrl-btn:hover {
  background: var(--accent) !important;
  color: var(--background) !important;
  border-color: var(--accent) !important;
}

/* ── Accent color replacements ── */
.morse-bar {
  background: linear-gradient(90deg, transparent, rgba(91, 127, 166, 0.35), transparent) !important;
  border-top-color: var(--accent-border) !important;
}

.prog-fill,
.vid-pf,
.tl-fill,
.prog-fill,
.review-loading-spinner {
  background: var(--accent) !important;
}

.review-loading-spinner {
  border-color: var(--accent-border) !important;
  border-top-color: var(--accent) !important;
}

.rank-pill,
.np-badge,
.status-pill {
  border-radius: 999px;
}

.rank-pill,
.np-badge {
  background: rgba(91, 127, 166, 0.15) !important;
  color: var(--accent) !important;
  border: 1px solid var(--accent-border-hover) !important;
}

.note-ts,
.rank-section-title,
.copy-flash--ok,
.toast--success {
  color: var(--accent) !important;
}

.toast--success,
.copy-flash--ok {
  border-color: var(--accent-border-hover) !important;
  background: var(--accent-soft) !important;
}

.fp-orphan-warn {
  color: var(--accent) !important;
  background: var(--accent-soft) !important;
  border-color: var(--accent-border-hover) !important;
  border-radius: 0 !important;
}

/* ── Vote buttons ── */
.thumb-btn,
.vote-btn {
  border-radius: 0 !important;
  border-color: var(--accent-border) !important;
  background: var(--surface) !important;
}

.thumb-btn.yes.active,
.vote-btn.like.active {
  background: var(--accent-soft) !important;
  border-color: var(--accent) !important;
}

.thumb-btn.maybe.active,
.vote-btn.maybe.active {
  background: rgba(168, 135, 74, 0.12) !important;
  border-color: var(--identity) !important;
}

.thumb-btn.no.active,
.vote-btn.pass.active {
  background: rgba(180, 80, 80, 0.15) !important;
  border-color: #c47070 !important;
}

/* ── Modals ── */
.rank-panel,
.modal-card,
.auth-card,
.gate-card {
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 24px 32px !important;
}

.rank-backdrop,
.modal-backdrop {
  background: rgba(13, 13, 13, 0.88) !important;
}

.auth-screen:not(.cp-auth-screen) {
  background: transparent !important;
  overflow: hidden;
  isolation: isolate;
}

.gate {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

.cp-auth-screen.auth-screen {
  background: transparent !important;
  overflow: hidden;
  isolation: isolate;
}

/* Shared login layout (composer portal + admin) */
.auth-screen.cp-auth-screen {
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100dvh;
  padding: 32px 20px;
  overflow: hidden;
  isolation: isolate;
}

.cp-auth-screen .spbx-droplets {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.cp-auth-inner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 420px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(100dvh - 64px);
}

.cp-auth-card {
  text-align: center;
  padding: 32px 36px 30px !important;
}

.cp-auth-card .auth-logo,
.cp-auth-card .gate-logo {
  margin: 0 auto 16px;
}

.cp-auth-card .gate-kicker {
  margin-bottom: 8px;
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.cp-auth-card .auth-title,
.cp-auth-card .gate-title {
  font-size: clamp(1.65rem, 4.5vw, 2rem);
  line-height: 1.15;
  color: var(--text) !important;
  margin: 0 0 20px;
}

.cp-auth-rule {
  height: 1px;
  margin: 0 auto 22px;
  max-width: 280px;
  background: linear-gradient(90deg, transparent, var(--accent-border), transparent);
}

.cp-auth-form {
  display: flex;
  flex-direction: column;
  text-align: left;
  gap: 22px;
  width: 100%;
}

.cp-auth-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.cp-auth-field .gate-label {
  margin-bottom: 0;
  font-size: 11px;
  letter-spacing: 0.06em;
}

.cp-auth-field .gate-input,
.cp-auth-field .auth-input {
  padding: 8px 12px !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  min-height: 0;
  background: #fff !important;
  border: 1px solid rgba(91, 127, 166, 0.35) !important;
  border-radius: 0 !important;
  color: #0d0d0d !important;
  -webkit-text-fill-color: #0d0d0d;
  caret-color: var(--accent);
}

.cp-auth-field .gate-input::placeholder,
.cp-auth-field .auth-input::placeholder {
  color: rgba(13, 13, 13, 0.42);
}

.cp-auth-field .gate-input:focus,
.cp-auth-field .auth-input:focus {
  border-color: var(--accent) !important;
  outline: none;
}

.cp-auth-field .gate-input:-webkit-autofill,
.cp-auth-field .auth-input:-webkit-autofill {
  -webkit-text-fill-color: #0d0d0d !important;
  box-shadow: 0 0 0 1000px #fff inset !important;
}

.cp-auth-submit {
  width: 100%;
  margin-top: 10px;
  padding: 13px 16px !important;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.03em;
}

.cp-auth-foot {
  margin-top: 18px;
  font-size: 11px;
  line-height: 1.45;
  text-align: center;
  color: var(--text-dim);
}

.cp-muted {
  font-size: 12px;
  color: var(--text-dim);
  line-height: 1.45;
}

.cp-auth-foot a {
  color: var(--accent);
  text-decoration: none;
}

.cp-auth-foot a:hover {
  color: var(--text);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.cp-auth-screen .auth-msg {
  min-height: 18px;
  font-size: 12px;
  color: #c47070;
  text-align: center;
}

.cp-auth-screen .auth-msg[hidden] {
  display: none !important;
}

@media (max-width: 520px) {
  .cp-auth-screen {
    align-items: flex-start;
    padding: 20px 16px;
    padding-top: max(20px, env(safe-area-inset-top));
    padding-bottom: max(20px, env(safe-area-inset-bottom));
  }

  .cp-auth-card {
    padding: 22px 20px 20px !important;
  }
}

/* Login: don’t trap fixed/absolute décor inside .app fade transform */
body:has([data-cp-screen='login'].cp-screen--active) .cp-app,
#authScreen:not([style*='none']) ~ .app {
  animation: none !important;
  transform: none !important;
}

/* ── Lists / tables ── */
.rank-table th,
.rank-table td,
.fp-row {
  border-bottom: 1px solid rgba(91, 127, 166, 0.12) !important;
}

.rank-table th {
  color: var(--text-dim) !important;
}

/* ── Logo (wide wordmark — height follows row, not square) ── */
.logo,
.brand .logo,
.mx-logo-img {
  height: 22px;
  width: auto;
  max-width: none;
  object-fit: contain;
  object-position: left center;
  flex-shrink: 0;
  mix-blend-mode: screen;
  border-radius: 0 !important;
}

.gate-logo,
.auth-logo {
  height: 32px;
  width: auto;
  max-width: none;
  object-fit: contain;
  display: block;
  margin: 0 auto 14px;
  mix-blend-mode: screen;
  border-radius: 0 !important;
}

.mx-logo-img {
  height: 24px;
}

/* ── Remove legacy rounded UI chrome ── */
.waveform,
.toast,
.gate-card,
.auth-card,
.fp-row,
.tile,
.note-item,
.track-card,
.zone,
.prev-bar,
.drop-area,
.file-pill,
.field-inp,
.note-input,
.note-name-input,
.rank-panel,
.mobile-menu-panel {
  border-radius: 0 !important;
}

/* ── Presentation fullscreen ── */
.present-fs-root:fullscreen,
.present-fs-root:-webkit-full-screen {
  background: #000 !important;
}

.fs-exit-btn {
  border-color: var(--accent-border-hover) !important;
  color: var(--accent) !important;
  border-radius: 0 !important;
}

/* ── Status badges (brief) ── */
.badge-pending {
  background: rgba(91, 127, 166, 0.15) !important;
  color: var(--accent) !important;
}

.badge-approved,
.status-done {
  background: rgba(74, 168, 70, 0.15) !important;
  color: #6aaa66 !important;
}

.badge-flagged,
.status-error {
  background: rgba(180, 80, 80, 0.15) !important;
  color: #c47070 !important;
}

.badge-draft {
  background: rgba(168, 135, 74, 0.15) !important;
  color: var(--identity) !important;
}

/* ── Secondary text ── */
.gate-sub,
.auth-sub,
.auth-hint,
.hint,
.fp-meta,
.tile-meta,
.note-author,
.time-row,
.vid-time,
.title-sub,
.rank-foot {
  color: var(--text-dim) !important;
}

/* ── Admin dashboard & modals ── */
.screen-dashboard,
.ws-body {
  background: transparent !important;
}

.dash-title {
  font-family: var(--font-display) !important;
  font-weight: 300 !important;
  color: var(--text) !important;
}

.dash-card,
.modal,
.send-modal {
  background: var(--surface) !important;
  border: 1px solid var(--accent-border) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.dash-list tr.dash-row,
.dash-list tr.dash-row-detail {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.dash-card::before {
  background: var(--stripe, var(--accent)) !important;
}

.status-pill.status-active {
  background: rgba(74, 157, 95, 0.15) !important;
  color: #6fcf85 !important;
  border-color: rgba(74, 157, 95, 0.4) !important;
}

.status-pill.status-awaiting {
  background: rgba(232, 196, 106, 0.12) !important;
  color: #e8c46a !important;
  border-color: rgba(232, 196, 106, 0.35) !important;
}

.status-pill.status-wrapping {
  background: rgba(212, 135, 42, 0.15) !important;
  color: #e8a85a !important;
  border-color: rgba(212, 135, 42, 0.4) !important;
}

.status-pill.status-closed {
  background: #14120f !important;
  color: #666 !important;
  border-color: #2a2620 !important;
}

.dash-card:hover {
  border-color: var(--accent-border-hover) !important;
  transform: none !important;
}

.dash-filter {
  border-radius: 999px !important;
}

.dash-filter.active {
  background: var(--accent-soft) !important;
  border-color: var(--accent-border-hover) !important;
  color: var(--accent) !important;
}

.dash-view-toggle {
  border-color: var(--accent-border) !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}

.dash-view-btn {
  border: none !important;
  border-radius: 0 !important;
}

.dash-view-btn.active {
  background: var(--accent-soft) !important;
  color: var(--accent) !important;
}

.dash-view-btn:focus {
  outline: none !important;
}

.dash-view-btn:focus-visible {
  outline: 2px solid var(--accent) !important;
  outline-offset: -2px !important;
}

.modal-confirm,
.ws-btn-primary,
.send-submit {
  background: var(--accent) !important;
  color: var(--background) !important;
  border: none !important;
  border-radius: 0 !important;
}

.modal-cancel,
.ws-btn,
.modal-danger {
  background: none !important;
  border: 1px solid rgba(91, 127, 166, 0.35) !important;
  border-radius: 0 !important;
  color: var(--accent) !important;
}

.modal-danger {
  border-color: rgba(180, 80, 80, 0.45) !important;
  color: #c47070 !important;
}

.modal-overlay {
  background: rgba(13, 13, 13, 0.88) !important;
}

.send-modal-foot,
.modal-wide .modal-actions {
  background: var(--surface) !important;
  border-top-color: var(--accent-border) !important;
}

/* ── Presentation vote bar ── */
.vote-btns .vote-btn,
.mobile-vote-bar .vote-btn {
  border-radius: 0 !important;
}

.vote-btn.like.active {
  background: var(--accent-soft) !important;
  border-color: var(--accent) !important;
}

.vote-btn.maybe.active {
  background: rgba(168, 135, 74, 0.12) !important;
  border-color: var(--identity) !important;
}

.vote-btn.pass.active {
  background: rgba(180, 80, 80, 0.15) !important;
  border-color: #c47070 !important;
}

/* ═══════════════════════════════════════════════════════════════════════════
   Admin portal — align all screens to design tokens (overrides index.html gold)
   Screens: login, Projects hub, Calendar, Composer DB, Workspace, Briefs, modals
   ═══════════════════════════════════════════════════════════════════════════ */

.screen-dashboard,
.screen-calendar,
.screen-composer-db,
.screen-composers,
.screen-finance,
.screen-contacts,
.screen-leads,
.screen-workspace,
.cp-main,
.app,
.main,
.cp-app,
.app--dashboard .client-scroll,
.team-feedback-view,
.view-presentation {
  background: transparent !important;
}

.topbar,
.ws-toolbar,
.screen-composers .cp-tabs,
.hub-stats,
.hub-subnav,
.hub-contacts-toolbar,
.hub-filter-banner,
.hub-inline-form,
.hub-table-wrap,
.hub-summary-card,
.cdb-toolbar,
.dash-composer-hub,
.admin-cal-agenda-col,
.admin-cal-subscribe,
.admin-cal-event,
.cdb-card,
.cdb-detail-panel,
.hub-lead-drawer,
.cp-composer-search-box,
.cp-brief-history-body,
.posting-rename-popover {
  background: var(--surface) !important;
  border-color: var(--accent-border) !important;
}

.topbar {
  border-bottom-color: var(--accent-border) !important;
}

.bproj,
.top-client {
  color: var(--identity) !important;
}

.top-proj-sep {
  color: var(--text-dim) !important;
}

/* Top nav + mobile menu */
.admin-nav-btn,
.tb-right .signout {
  font-size: 11px;
  padding: 6px 0;
  border: none !important;
  background: transparent !important;
  color: #888 !important;
  border-radius: 0 !important;
  filter: none;
}

.admin-nav-btn:hover,
.tb-right .signout:hover {
  color: var(--text) !important;
  background: transparent !important;
  border-color: transparent !important;
  filter: none;
}

.admin-nav-btn.active,
.mobile-menu-btn,
.mobile-menu-btn[aria-expanded='true'] {
  color: var(--accent) !important;
}

.mobile-menu-btn:hover,
.mobile-menu-btn[aria-expanded='true'] {
  border-color: var(--accent-border-hover) !important;
  background: var(--accent-soft) !important;
}

.mobile-menu-row:hover,
.mobile-menu-row.active,
.mobile-menu-row.ws-btn-primary {
  border-color: var(--accent-border-hover) !important;
  color: var(--accent) !important;
}

.mobile-menu-row.ws-btn-primary {
  background: var(--accent-soft) !important;
}

/* Projects hub */
.dash-filter.active,
.dash-card-btn:hover,
.dash-card-icon-btn:hover,
.dash-row-btn:hover,
.dash-expand-btn.open,
.dash-card-new:hover,
.dash-hub-row:hover td,
.inline-rename-input,
.posting-rename-input:focus {
  border-color: var(--accent-border-hover) !important;
}

.dash-filter.active,
.dash-expand-btn.open,
.dash-card-new:hover {
  color: var(--accent) !important;
  background: var(--accent-soft) !important;
}

.dash-card::before,
.dash-stripe {
  background: var(--stripe, var(--accent)) !important;
}

.dash-hub-pill.await,
.dash-hub-due.soon {
  color: var(--identity) !important;
  border-color: rgba(168, 135, 74, 0.35) !important;
  background: var(--identity-soft) !important;
}

.dash-status-select.status-active {
  background: rgba(74, 157, 95, 0.15) !important;
  color: #6fcf85 !important;
  border-color: rgba(74, 157, 95, 0.4) !important;
}

.dash-status-select.status-awaiting {
  background: rgba(232, 196, 106, 0.12) !important;
  color: #e8c46a !important;
  border-color: rgba(232, 196, 106, 0.35) !important;
}

.dash-status-select.status-wrapping {
  background: rgba(212, 135, 42, 0.15) !important;
  color: #e8a85a !important;
  border-color: rgba(212, 135, 42, 0.4) !important;
}

.dash-status-select.status-closed {
  background: #14120f !important;
  color: #666 !important;
  border-color: #2a2620 !important;
}

.dash-hub-row:hover td {
  background: var(--accent-soft-hover) !important;
}

.inline-rename-wrap:hover .inline-rename-label {
  border-bottom-color: var(--accent-border) !important;
}

/* Workspace toolbar */
.ws-back:hover,
.ws-btn:hover:not(:disabled) {
  color: var(--accent) !important;
  border-color: var(--accent-border-hover) !important;
}

.ws-btn-primary {
  background: var(--accent-soft) !important;
  color: var(--accent) !important;
  border-color: var(--accent-border-hover) !important;
}

/* Admin calendar */
.admin-cal-btn:hover,
.admin-cal-day--has:hover,
.admin-cal-chip:hover,
.admin-cal-event-link,
.admin-cal-agenda-date,
.admin-cal-day--today .admin-cal-day-num,
.admin-cal-day--selected,
.admin-cal-event--soon .admin-cal-event-when {
  color: var(--accent) !important;
}

.admin-cal-btn:hover,
.admin-cal-chip:hover,
.admin-cal-day--selected {
  border-color: var(--accent-border-hover) !important;
}

.admin-cal-day--selected {
  background: var(--accent-soft) !important;
  box-shadow: inset 0 0 0 1px var(--accent-border-hover) !important;
}

.admin-cal-event-when {
  color: var(--accent) !important;
}

.admin-cal-event--overdue .admin-cal-event-when {
  color: #e87a7a !important;
}

/* Legacy composer sage (#84A39B) → admin design tokens */
.np-breadcrumb,
.batch-target-label,
.dash-admin-due:not(.dash-admin-due--soon),
.dash-row-admin-due:not(.dash-row-admin-due--soon),
.track-picker-selected-count,
.cp-tag,
.cp-submission-ver {
  color: var(--text-dim) !important;
}

.cp-link-btn,
.cp-link-btn:hover {
  color: var(--accent) !important;
}

.cp-placeholder-note {
  color: var(--accent) !important;
  background: var(--accent-soft) !important;
  border-color: var(--accent-border) !important;
}

.cp-submission-ver {
  border-color: var(--accent-border) !important;
}

.cdb-badge-status-good,
.cdb-genre-check.yes {
  color: var(--accent) !important;
  background: var(--accent-soft) !important;
  border-color: var(--accent-border) !important;
}

/* Composer database */
.cdb-search:focus,
.cdb-genre-clear:hover:not(:disabled),
.cdb-genre-btn:hover,
.cdb-genre-btn.active,
.cdb-vbtn.active,
.cdb-card:hover,
.cdb-card-link,
.cdb-td-link,
.cdb-detail-field-value a {
  color: var(--accent) !important;
}

.cdb-genre-btn.active,
.cdb-vbtn.active {
  background: var(--accent-soft) !important;
  border-color: var(--accent-border-hover) !important;
  box-shadow: 0 0 0 1px var(--accent-border-hover) !important;
}

.cdb-genre-clear:hover:not(:disabled) {
  border-color: var(--accent-border-hover) !important;
}

.cdb-count strong,
.cdb-detail-initials,
.cdb-td-initials {
  color: var(--accent) !important;
}

.cdb-card:hover {
  border-color: var(--accent-border-hover) !important;
}

.cdb-detail-initials {
  background: var(--accent-soft) !important;
  border-color: var(--accent-border-hover) !important;
}

/* Finance hub — blue accent UI (overrides inline hub gold from Hub v8 port) */
.hub-subnav-btn.active {
  color: var(--accent) !important;
  border-bottom-color: var(--accent) !important;
}

.hub-filter-banner {
  background: var(--accent-soft) !important;
  border-bottom-color: var(--accent-border) !important;
}

.hub-link-btn,
.dash-card-finance-link:hover {
  color: var(--accent) !important;
}

.hub-btn:hover,
.hub-btn-sm:hover,
.hub-sort-th:hover {
  border-color: var(--accent-border-hover) !important;
  color: var(--accent) !important;
}

.hub-btn--primary,
.hub-import-file-label.hub-btn--primary {
  background: var(--accent-soft) !important;
  border-color: var(--accent-border-hover) !important;
  color: var(--accent) !important;
}

.hub-inp:focus,
.hub-search:focus {
  border-color: var(--accent-border-hover) !important;
  outline: none !important;
}

.hub-stat-unbilled .hub-stat-val {
  color: var(--accent) !important;
}

.hub-pill--flag {
  color: var(--accent) !important;
  border-color: var(--accent-border) !important;
}

.hub-fin-proj-subnav-btn.active {
  color: var(--accent) !important;
  border-color: var(--accent-border-hover) !important;
  background: var(--accent-soft) !important;
}

.hub-fin-card--production {
  border-left-color: var(--accent) !important;
}

.hub-fin-card--wrapping {
  border-left-color: #e8a85a !important;
}

.hub-fin-card--hold {
  border-left-color: #d4b83d !important;
}

.hub-fin-card--wrapped-won {
  border-left-color: #8ec88e !important;
}

.hub-fin-card--wrapped-lost {
  border-left-color: #c86a6a !important;
}

.hub-fin-list-row.hub-fin-card--production {
  border-left-color: var(--accent) !important;
}

.hub-fin-list-row.hub-fin-card--wrapping {
  border-left-color: #e8a85a !important;
}

.hub-fin-list-row.hub-fin-card--hold {
  border-left-color: #d4b83d !important;
}

.hub-fin-list-row.hub-fin-card--wrapped-won {
  border-left-color: #8ec88e !important;
}

.hub-fin-list-row.hub-fin-card--wrapped-lost {
  border-left-color: #c86a6a !important;
}

.hub-fin-card-id {
  color: var(--accent) !important;
}

.hub-fin-stat--unbilled.is-highlight {
  color: var(--accent) !important;
}

.hub-fin-stat--billed {
  color: #c9a86a !important;
}

.hub-fin-stat--received,
.hub-fin-pay-amount {
  color: #6fcf85 !important;
}

.hub-fin-stat--open.is-alert {
  color: #e87a7a !important;
}

.hub-fin-archive-summary .hub-fin-stat--billed,
.hub-summary-val.hub-fin-stat--billed {
  color: #c9a86a !important;
}

.hub-summary-val.hub-fin-stat--received {
  color: #6fcf85 !important;
}

.top-brand {
  color: var(--identity) !important;
}

.admin-nav-btn.active {
  color: var(--accent) !important;
}

.send-modal-back:hover,
.ps-dl:hover,
.fp-folder-tool:hover,
.fp-add-folder:hover,
.ptab-review:hover,
.ptab-pres:hover,
.fp-add:hover,
.ctrl-btn:hover,
.note-send:hover,
.send-tab.active,
.send-pass-row code,
.mf input:focus,
.mf select:focus,
.mf textarea:focus,
.batch-row input.batch-name:focus,
.batch-mix-btn:hover,
.batch-folder-row select:focus,
.fp-order:hover,
.ws-back:hover,
.ws-btn:hover,
.dash-card-btn:hover,
.dash-card-icon-btn:hover,
.dash-row-icon-btn:hover,
.dash-row-btn:hover,
.dash-expand-btn.open,
.dash-card-new:hover,
.cp-btn:hover,
.cp-asset-link:hover,
.cp-submission-type-tab.active,
.cp-submission-type-tab:hover,
.post-type-btn.selected,
.pl-inp:focus,
.batch-status.uploading,
.pl-status--pub,
.mobile-menu-signout:hover {
  color: var(--accent) !important;
}

.modal-confirm,
.play-btn,
.vid-play-btn,
.ws-btn-primary,
.cp-btn-primary,
.send-submit {
  background: var(--accent) !important;
  color: var(--background) !important;
}

.dropzone:hover,
.dropzone.drag {
  border-color: var(--accent-border-hover) !important;
  background: var(--accent-soft-hover) !important;
}

.hub-contacts-toolbar input:focus,
.hub-leads-toolbar input:focus {
  border-color: var(--accent-border-hover) !important;
  outline: none !important;
}

/* Briefs (Assignments / Brief / Submissions) */
.cp-tab.active,
.cp-tab:hover,
.cp-brief-subtab.active,
.cp-brief-subtab:hover,
.cp-btn:hover:not(.cp-btn-danger),
.cp-btn-primary,
.cp-brief-dropzone--over,
.cp-brief-meta,
.cp-submission-group-title {
  color: var(--accent) !important;
}

.cp-tab.active,
.cp-tab:hover,
.cp-brief-subtab.active,
.cp-brief-subtab:hover,
.cp-btn-primary,
.cp-brief-dropzone--over {
  border-color: var(--accent-border-hover) !important;
  background: var(--accent-soft) !important;
}

.cp-asset-link:hover {
  color: var(--accent) !important;
}

.cp-field input:focus,
.cp-field select:focus,
.cp-field textarea:focus,
.cp-notes:focus,
.mf input:focus,
.mf select:focus,
.mf textarea:focus,
.track-picker-input:focus {
  border-color: var(--accent) !important;
  outline: none !important;
}

.cp-section-title,
.cdb-detail-section-label {
  color: var(--accent-dim) !important;
}

/* Modals: posting type, track picker, batch, share */
.post-type-btn.selected {
  border-color: var(--accent-border-hover) !important;
  background: var(--accent-soft) !important;
  color: var(--accent) !important;
}

.post-type-btn.selected .post-type-desc {
  color: var(--accent-dim) !important;
}

.track-picker-search-btn {
  background: var(--accent-soft) !important;
  border-color: var(--accent-border-hover) !important;
  color: var(--accent) !important;
}

.track-picker-search-btn:hover {
  background: rgba(91, 127, 166, 0.18) !important;
}

.track-picker-row.selected,
.track-picker-row:hover {
  background: var(--accent-soft-hover) !important;
}

.track-picker-row.selected {
  background: var(--accent-soft) !important;
}

.webhook-retry-btn {
  background: var(--accent-soft) !important;
  border-color: var(--accent-border-hover) !important;
  color: var(--accent) !important;
}

.webhook-retry-btn:hover {
  background: rgba(91, 127, 166, 0.18) !important;
}

.send-tab.active,
.send-pass-row code {
  color: var(--accent) !important;
}

.send-tab.active {
  background: var(--accent-soft) !important;
}

.dropzone:hover,
.dropzone.drag,
.batch-row input.batch-name:focus,
.batch-mix-btn:hover {
  border-color: var(--accent) !important;
}

.dropzone:hover,
.dropzone.drag {
  background: var(--accent-soft-hover) !important;
}

.batch-mix-btn:hover {
  color: var(--accent) !important;
}

.fp-add-folder:hover,
.fp-folder-tool:hover {
  color: var(--accent) !important;
}

/* Terms & Clearance */
.tc-form,
.tc-summary,
.tc-admin {
  max-width: 720px;
  margin: 0 auto;
  padding: 8px 0 32px;
}
.tc-form {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.tc-header { margin-bottom: 4px; }
.tc-title {
  font-family: var(--font-display);
  font-weight: 300;
  font-size: 1.65rem;
  color: var(--text);
  margin-bottom: 6px;
}
.tc-sub { font-size: 13px; color: var(--text-dim); line-height: 1.45; }
.tc-section {
  padding: 18px 20px;
  border: 1px solid var(--accent-border);
  border-radius: 12px;
  background: var(--surface);
}
.tc-section--optional {
  background: transparent;
  border-style: dashed;
}
.tc-section--submit {
  border: none;
  background: transparent;
  padding: 4px 0 0;
}
.tc-section-title {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--text-dim);
  font-weight: 600;
  margin: 0 0 14px;
}
.tc-section .tc-field:last-child { margin-bottom: 0; }
.tc-section .tc-grid-2:last-child .tc-field { margin-bottom: 0; }
.tc-media-box {
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid var(--accent-border);
  background: var(--background);
}
.tc-inline-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 12px 20px;
  margin-bottom: 12px;
}
.tc-field--compact {
  flex: 1;
  min-width: 160px;
  margin-bottom: 0;
}
.tc-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--text-dim);
  font-weight: 600;
  margin: 18px 0 8px;
}
.tc-field {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-bottom: 14px;
  font-size: 12px;
  color: var(--text-dim);
}
.tc-field span { font-size: 11px; }
.tc-field input,
.tc-field textarea,
.tc-field select,
.tc-admin-status {
  font-size: var(--spbx-select-size);
  padding: 9px 11px;
  border: 1px solid var(--accent-border);
  border-radius: 8px;
  background: var(--surface);
  color: var(--text);
  font-family: inherit;
}
.tc-field input:focus,
.tc-field textarea:focus,
.tc-field select:focus,
.tc-admin-status:focus {
  outline: none;
  border-color: var(--accent);
}
.tc-field textarea { resize: vertical; min-height: 64px; }
.tc-grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
@media (max-width: 560px) {
  .tc-grid-2 { grid-template-columns: 1fr; }
}
.tc-branch-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-bottom: 0;
}
@media (max-width: 560px) {
  .tc-branch-cards { grid-template-columns: 1fr; }
}
.tc-branch-card,
.tc-sub-card {
  text-align: left;
  padding: 12px 14px;
  border: 1px solid var(--accent-border);
  border-radius: 10px;
  background: var(--surface);
  color: var(--text);
  cursor: pointer;
  font-family: inherit;
  transition: border-color 0.15s, background 0.15s;
}
.tc-branch-card:hover,
.tc-sub-card:hover {
  border-color: var(--accent-border-hover);
  background: var(--accent-soft-hover);
}
.tc-branch-card.active,
.tc-sub-card.active {
  border-color: var(--identity);
  background: var(--identity-soft);
  box-shadow: inset 0 0 0 1px rgba(168, 135, 74, 0.25);
}
.tc-branch-title { display: block; font-size: 13px; font-weight: 600; margin-bottom: 4px; }
.tc-branch-desc { display: block; font-size: 11px; color: var(--text-dim); line-height: 1.35; }
.tc-sub-cards { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 0; }
.tc-sub-card { font-size: 12px; padding: 8px 12px; }
.tc-media-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 6px;
  margin-bottom: 8px;
}
.tc-check-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
  gap: 2px 12px;
  margin-bottom: 0;
}
.tc-check-grid--muted .tc-check:not(.tc-check-paid-social) {
  opacity: 0.42;
  color: var(--text-dim);
}
.tc-check-grid--muted .tc-check-paid-social {
  color: var(--text);
}
.tc-check-all-media {
  margin: 0 0 10px;
  font-weight: 600;
}
.tc-check-grid .tc-check {
  margin: 5px 0;
}
.tc-check {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  margin: 8px 0;
  color: var(--text);
}
.tc-check--inline {
  margin: 0 0 12px;
}
.tc-check input { width: 16px; height: 16px; accent-color: var(--identity); }
.tc-branch-panel {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin: 0;
  padding: 0;
  border: none;
}
.tc-stage-row {
  display: grid;
  grid-template-columns: 1fr 120px 32px;
  gap: 8px;
  margin-bottom: 8px;
  align-items: center;
}
.tc-stage-label,
.tc-stage-amount {
  font-size: 13px;
  padding: 8px 10px;
  border: 1px solid var(--accent-border);
  border-radius: 8px;
  background: var(--surface);
  color: var(--text);
  font-family: inherit;
}
.tc-stage-remove {
  width: 32px;
  height: 32px;
  border: 1px solid var(--accent-border);
  border-radius: 8px;
  background: var(--surface);
  color: var(--text-dim);
  cursor: pointer;
  font-size: 18px;
  line-height: 1;
  font-family: inherit;
}
.tc-add-stage {
  margin: 8px 0 12px;
  padding: 8px 12px;
  font-size: 12px;
  border: 1px dashed var(--accent-border);
  border-radius: 8px;
  background: transparent;
  color: var(--text-dim);
  cursor: pointer;
  font-family: inherit;
}
.tc-add-stage:hover { border-color: var(--accent); color: var(--text); }
.tc-field-error { font-size: 11px; color: #e07070; margin: -4px 0 10px; }
.tc-submit {
  margin-top: 16px;
  width: 100%;
  padding: 12px;
  font-size: 14px;
  font-weight: 600;
  border: none;
  border-radius: 8px;
  background: var(--accent);
  color: var(--background);
  cursor: pointer;
  font-family: inherit;
}
.tc-submit:hover { filter: brightness(1.05); }
.tc-submit:disabled { opacity: 0.55; cursor: wait; }
.tc-banner {
  padding: 10px 12px;
  margin-bottom: 16px;
  border-radius: 8px;
  background: var(--identity-soft);
  border: 1px solid rgba(168, 135, 74, 0.35);
  font-size: 12px;
  color: var(--text);
}
.tc-summary-section {
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--accent-border);
}
.tc-summary-section h3 {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--text-dim);
  margin-bottom: 10px;
}
.tc-summary-section p { font-size: 13px; line-height: 1.5; margin-bottom: 6px; color: var(--text); }
.tc-terms-text-copy,
.terms-hub-terms-copy {
  font-size: 13px;
  line-height: 1.55;
  color: var(--text);
  white-space: pre-wrap;
  word-break: break-word;
}
.tc-submitted-meta { font-size: 13px; color: var(--text-dim); margin-bottom: 16px; line-height: 1.45; }
.tc-locked-note { font-size: 12px; color: var(--text-dim); margin-top: 16px; line-height: 1.45; }
.tc-locked-note a { color: var(--accent); }
.tc-empty { font-size: 13px; color: var(--text-dim); padding: 24px 0; }
.tc-admin-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--accent-border);
}
.tc-admin-estimate { display: flex; flex-direction: column; gap: 4px; }
.tc-admin-est-label { font-size: 10px; text-transform: uppercase; letter-spacing: 0.08em; color: var(--text-dim); }
.tc-admin-est-value {
  font-family: var(--font-display);
  font-size: 1.75rem;
  font-weight: 300;
  color: var(--identity);
}
.tc-admin-status-wrap { display: flex; flex-direction: column; gap: 5px; font-size: 11px; color: var(--text-dim); }
.tc-admin-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 16px; }
.tc-admin-unlocked { font-size: 12px; color: var(--text-dim); }
.tc-admin-empty { padding: 32px 0; font-size: 13px; color: var(--text-dim); }
.ws-terms-panel {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
  background: var(--background);
}
.ws-terms-head {
  padding: 12px 16px;
  border-bottom: 1px solid var(--accent-border);
  flex-shrink: 0;
}
.ws-terms-scroll {
  flex: 1;
  overflow-y: auto;
  padding: 20px 24px 40px;
  -webkit-overflow-scrolling: touch;
}
.ws-body .ws-terms-panel:not([hidden]) {
  flex: 1;
  min-width: 0;
}

.modal-title,
.admin-cal-month,
.dash-title,
.cdb-detail-name {
  font-family: var(--font-display) !important;
  font-weight: 300 !important;
  color: var(--accent) !important;
}

/* Admin — hardcoded legacy gold rgba in index.html inline styles */
.signout {
  color: var(--accent-dim) !important;
}

.bproj {
  color: var(--identity) !important;
}

.top-client {
  color: var(--identity) !important;
}

.fp-orphan-warn {
  border-color: var(--accent-border) !important;
}

.vid-play-btn:hover {
  background: var(--accent) !important;
  filter: brightness(1.08);
}

.dash-hub-row:hover td {
  background: var(--accent-soft-hover) !important;
}

.dash-filter.active {
  border-color: var(--accent-border-hover) !important;
}

.cp-tab.active,
.cp-tab:hover {
  border-color: var(--accent-border-hover) !important;
}

.mobile-menu-row.active {
  border-color: var(--accent-border-hover) !important;
}

.hub-search:focus,
.hub-inp:focus {
  border-color: var(--accent-border-hover) !important;
}

.cdb-search:focus {
  border-color: var(--accent-border-hover) !important;
}

.cdb-genre-clear:hover:not(:disabled) {
  border-color: var(--accent-border-hover) !important;
  color: var(--accent) !important;
}

.cdb-genre-btn.active {
  background: var(--accent-soft) !important;
  border-color: var(--accent) !important;
  color: var(--accent) !important;
  box-shadow: 0 0 0 1px var(--accent-border) !important;
}

.cdb-vbtn.active {
  background: var(--accent-soft) !important;
  border-color: var(--accent-border-hover) !important;
  color: var(--accent) !important;
}

.cdb-card:hover {
  border-color: var(--accent-border-hover) !important;
}

.cdb-card-initials,
.cdb-detail-initials {
  color: var(--accent) !important;
  background: var(--accent-soft) !important;
  border-color: var(--accent-border) !important;
}

.cdb-badge-status-ateam {
  background: var(--accent-soft) !important;
  color: var(--accent) !important;
  border-color: var(--accent-border) !important;
}

.admin-cal-btn:hover {
  border-color: var(--accent-border-hover) !important;
}

.admin-cal-chip--admin-due {
  border-color: var(--accent-border) !important;
  color: var(--accent) !important;
}

.admin-cal-event--admin-due {
  border-color: var(--accent-border) !important;
}

.admin-cal-legend-swatch--admin {
  background: var(--accent-soft) !important;
  border-color: var(--accent-border) !important;
}

.track-picker-search-btn:hover {
  background: rgba(91, 127, 166, 0.18) !important;
}

.track-picker-row.selected .track-picker-check {
  background: var(--accent-soft) !important;
  border-color: var(--accent-border) !important;
}

.webhook-retry-btn:hover {
  background: rgba(91, 127, 166, 0.18) !important;
}

.cp-brief-dropzone--over {
  box-shadow: inset 0 0 0 1px var(--accent-border) !important;
}

.ps-dl:hover {
  border-color: var(--accent-border-hover) !important;
}

.fp-drag:hover {
  box-shadow: 0 0 0 1px var(--accent-border), 0 0 10px rgba(91, 127, 166, 0.35) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════
   Presentation theater + client review hub — blue interactive chrome
   Gold reserved for brand/identity and semantic status (awaiting, maybe, due)
   ═══════════════════════════════════════════════════════════════════════════ */

.play-overlay button {
  background: var(--accent) !important;
  color: var(--background) !important;
}

.rank-pill {
  background: var(--accent-soft) !important;
  color: var(--accent) !important;
  border-color: var(--accent-border) !important;
}

.fs-exit-btn,
.stage-fs-btn {
  border-color: var(--accent-border-hover) !important;
}

.fs-exit-btn:hover,
.stage-fs-btn:hover {
  background: var(--accent-soft) !important;
}

.present-immersive-nav .ctrl-immersive {
  border-color: var(--accent-border) !important;
  color: var(--accent) !important;
}

.play-overlay button:hover {
  filter: brightness(1.08);
  background: var(--accent) !important;
}

.ctrl:hover,
.ctrl-btn:hover,
.present-immersive-nav .ctrl-immersive:hover {
  color: var(--accent) !important;
}

.present-immersive-nav .ctrl-immersive:hover {
  border-color: var(--accent-border-hover) !important;
}

.stage-fs-btn {
  border-color: var(--accent-border-hover) !important;
  color: var(--accent) !important;
}

.stage-fs-btn:hover {
  background: var(--accent-soft) !important;
}

.tile-rank,
.rankings-hint {
  color: var(--accent) !important;
}

.note-item.admin-note {
  border-color: var(--accent-border) !important;
}

.mobile-view-btn.active,
.mobile-menu-signout:hover {
  border-color: var(--accent) !important;
  color: var(--accent) !important;
  background: var(--accent-soft) !important;
}

.auth-hint a,
#authReviewLink {
  color: var(--accent) !important;
}

.fb-card-num.yes {
  color: var(--accent) !important;
}

.upload-progress-fill {
  background: var(--accent) !important;
}

.batch-status.uploading {
  color: var(--accent) !important;
}

.terms-leave-btn {
  background: var(--accent) !important;
  color: var(--background) !important;
  border: none !important;
}

.terms-topbar-btn {
  color: var(--accent) !important;
}

.terms-topbar-btn:hover {
  border-color: var(--accent) !important;
}

.terms-hub-access-val--pass {
  color: var(--accent) !important;
}

.ct-card-title,
.ct-track-terms-summary {
  color: var(--accent) !important;
}

/* Client review hub */
.dashboard-card::before {
  background: var(--accent) !important;
}

.dashboard-card-date,
.dashboard-card-arrow,
.dashboard-row-date,
.dashboard-row-arrow,
.dashboard-view-btn.active,
.client-hub-nav-link.active,
.mobile-menu-btn-row.client-hub-nav-mobile.active,
.posting-context-back,
.review-view-pill.active,
.rv-cal-day--today .rv-cal-day-num,
.rv-cal-chip--note {
  color: var(--accent) !important;
}

.dashboard-card-badge,
.dashboard-row-tag,
.client-hub-nav-link.active,
.mobile-menu-btn-row.client-hub-nav-mobile.active {
  background: var(--accent-soft) !important;
  border-color: var(--accent-border-hover) !important;
}

.dashboard-row--latest {
  border-left-color: var(--accent) !important;
}

.dashboard-identity-brand,
.ct-client-page-project {
  color: var(--identity) !important;
}

.rv-cal-nav:hover,
.rv-cal-today:hover,
.rv-cal-day--has:hover {
  border-color: var(--accent-border-hover) !important;
}

.rv-cal-day--selected {
  background: var(--accent-soft) !important;
  border-color: var(--accent) !important;
}

.rv-cal-day--today {
  border-color: var(--accent) !important;
}

.rv-cal-event-card--link:hover {
  border-color: var(--accent-border) !important;
}

.review-view-pill.active {
  box-shadow: 0 0 0 1px var(--accent-border) !important;
}

.fp-drag:hover,
.fp-order:hover,
.fp-add:hover,
.fp-posting-select:focus {
  color: var(--accent) !important;
  border-color: var(--accent-border-hover) !important;
  background: var(--accent-soft-hover) !important;
}

.fp-posting-select:focus {
  outline: none !important;
}
