:root{--theme-paper:#eef8fb;--theme-card:#ffffff;--theme-cardBorder:#b7d7e5;--theme-ink:#12303d;--theme-muted:#526b76;--theme-link:#0a6d91;--theme-header:#09293a;--theme-hero:#103548;--theme-heroText:#ffffff;--theme-accent:#2b98c7;--theme-accentText:#ffffff;--theme-buttonSecondary:#ffffff;--theme-fieldBg:#ffffff;--theme-fieldText:#12303d;}
html{color-scheme:light dark;}@media (prefers-color-scheme: dark){:root{--theme-paper:#0b1c26;--theme-card:#122b37;--theme-cardBorder:#2f6279;--theme-ink:#e9f8fc;--theme-muted:#aac8d3;--theme-link:#70c9e8;--theme-header:#061821;--theme-hero:#103548;--theme-heroText:#ffffff;--theme-accent:#39a9d6;--theme-accentText:#061821;--theme-buttonSecondary:#061821;--theme-fieldBg:#ffffff;--theme-fieldText:#12303d;}}
body:not(.admin-page){background:var(--theme-paper)!important;color:var(--theme-ink)!important;}
body:not(.admin-page)::before{background:var(--theme-hero)!important;background-image:linear-gradient(180deg,var(--theme-header) 0%,var(--theme-hero) 100%)!important;}
body:not(.admin-page) .site-header,body:not(.admin-page) footer{background:var(--theme-header)!important;color:var(--theme-heroText)!important;}
body:not(.admin-page) .hero,body:not(.admin-page) .page-hero{background:var(--theme-hero)!important;background-image:linear-gradient(180deg,var(--theme-header) 0%,var(--theme-hero) 100%)!important;color:var(--theme-heroText)!important;}
body:not(.admin-page) .hero *,body:not(.admin-page) .page-hero *{color:var(--theme-heroText)!important;}
body:not(.admin-page) .card,body:not(.admin-page) .notice,body:not(.admin-page) .audio-placeholder,body:not(.admin-page) .status,body:not(.admin-page) .admin-note{background:var(--theme-card)!important;color:var(--theme-ink)!important;border-color:var(--theme-cardBorder)!important;}
body:not(.admin-page) .section,body:not(.admin-page) main{color:var(--theme-ink)!important;}
body:not(.admin-page) .section h1,body:not(.admin-page) .section h2,body:not(.admin-page) .section h3,body:not(.admin-page) .card h1,body:not(.admin-page) .card h2,body:not(.admin-page) .card h3{color:var(--theme-ink)!important;}
body:not(.admin-page) a:not(.button){color:var(--theme-link)!important;}
body:not(.admin-page) .button,body:not(.admin-page) .album-listen-button{background:var(--theme-accent)!important;color:var(--theme-accentText)!important;border-color:var(--theme-accent)!important;}
body:not(.admin-page) .button.secondary{background:var(--theme-buttonSecondary)!important;color:var(--theme-ink)!important;}
body:not(.admin-page) input,body:not(.admin-page) textarea,body:not(.admin-page) select{background:var(--theme-fieldBg)!important;color:var(--theme-fieldText)!important;border-color:var(--theme-cardBorder)!important;}
body:not(.admin-page) input::placeholder,body:not(.admin-page) textarea::placeholder{color:#8a7d70!important;opacity:1!important;}

/* MCMS v1.0.7 unified theme engine: Admin follows the active saved theme too. */
body.admin-page{
  background:var(--theme-paper)!important;
  color:var(--theme-ink)!important;
  -webkit-text-fill-color:initial!important;
}
body.admin-page::before{
  background:var(--theme-paper)!important;
  background-image:none!important;
}
body.admin-page .site-header,
body.admin-page footer{
  background:var(--theme-header)!important;
  color:var(--theme-heroText)!important;
  border-color:var(--theme-cardBorder)!important;
}
body.admin-page .site-header a,
body.admin-page .brand,
body.admin-page .brand:visited,
body.admin-page nav a,
body.admin-page nav a:visited{
  color:var(--theme-heroText)!important;
  -webkit-text-fill-color:var(--theme-heroText)!important;
}
body.admin-page .brand small,
body.admin-page .eyebrow{
  color:var(--theme-accent)!important;
  -webkit-text-fill-color:var(--theme-accent)!important;
}
body.admin-page .admin-shell,
body.admin-page .section,
body.admin-page main{
  background:var(--theme-paper)!important;
  color:var(--theme-ink)!important;
  -webkit-text-fill-color:initial!important;
}
body.admin-page .page-hero{
  background:var(--theme-hero)!important;
  background-image:linear-gradient(135deg,var(--theme-header),var(--theme-hero))!important;
  color:var(--theme-heroText)!important;
  border-color:var(--theme-cardBorder)!important;
}
body.admin-page .page-hero,
body.admin-page .page-hero *{
  color:var(--theme-heroText)!important;
  -webkit-text-fill-color:var(--theme-heroText)!important;
}
body.admin-page .card,
body.admin-page .admin-item,
body.admin-page .status,
body.admin-page .notice,
body.admin-page .admin-note,
body.admin-page .audio-placeholder,
body.admin-page .dashboard-card,
body.admin-page .dashboard-panel,
body.admin-page .theme-sidebar,
body.admin-page .theme-detail,
body.admin-page .media-picker-modal,
body.admin-page .media-picker-dialog,
body.admin-page .admin-help-dialog,
body.admin-page .help-card,
body.admin-page .help-topic,
body.admin-page .photo-album-card,
body.admin-page .user-card,
body.admin-page .backup-card{
  background:var(--theme-card)!important;
  color:var(--theme-ink)!important;
  border-color:var(--theme-cardBorder)!important;
  -webkit-text-fill-color:initial!important;
}
body.admin-page h1,
body.admin-page h2,
body.admin-page h3,
body.admin-page h4,
body.admin-page h5,
body.admin-page h6,
body.admin-page p,
body.admin-page li,
body.admin-page label,
body.admin-page strong,
body.admin-page small,
body.admin-page span,
body.admin-page div{
  color:inherit;
}
body.admin-page .muted,
body.admin-page .legacy-note,
body.admin-page .help-muted,
body.admin-page .card-preview p,
body.admin-page .theme-preview-body p{
  color:var(--theme-muted)!important;
  -webkit-text-fill-color:var(--theme-muted)!important;
}
body.admin-page a:not(.button):not(.admin-action){
  color:var(--theme-link)!important;
  -webkit-text-fill-color:var(--theme-link)!important;
}
body.admin-page .button,
body.admin-page .admin-action,
body.admin-page .admin-tabs button,
body.admin-page .toolbar button,
body.admin-page .file-action,
body.admin-page .theme-preset,
body.admin-page .media-select-btn,
body.admin-page .album-listen-button{
  background:var(--theme-buttonSecondary)!important;
  color:var(--theme-ink)!important;
  -webkit-text-fill-color:var(--theme-ink)!important;
  border:1px solid var(--theme-cardBorder)!important;
}
body.admin-page .button.primary,
body.admin-page .admin-action.primary,
body.admin-page .admin-tabs button.active,
body.admin-page .theme-preset.active,
body.admin-page .toolbar button.primary,
body.admin-page .media-select-btn.primary{
  background:var(--theme-accent)!important;
  color:var(--theme-accentText)!important;
  -webkit-text-fill-color:var(--theme-accentText)!important;
  border-color:var(--theme-accent)!important;
}
body.admin-page .danger,
body.admin-page .admin-action.danger,
body.admin-page .delete-button,
body.admin-page button.danger{
  background:#b3261e!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:#b3261e!important;
}
body.admin-page input,
body.admin-page textarea,
body.admin-page select,
body.admin-page .admin-editor,
body.admin-page [contenteditable="true"]{
  background:var(--theme-fieldBg)!important;
  color:var(--theme-fieldText)!important;
  -webkit-text-fill-color:var(--theme-fieldText)!important;
  border-color:var(--theme-cardBorder)!important;
  caret-color:var(--theme-fieldText)!important;
}
body.admin-page input::placeholder,
body.admin-page textarea::placeholder{
  color:color-mix(in srgb,var(--theme-fieldText) 62%, transparent)!important;
  -webkit-text-fill-color:color-mix(in srgb,var(--theme-fieldText) 62%, transparent)!important;
  opacity:1!important;
}
body.admin-page code,
body.admin-page pre,
body.admin-page .smtp-log,
body.admin-page .mail-log,
body.admin-page .log-output{
  background:color-mix(in srgb,var(--theme-card) 82%, #000 18%)!important;
  color:var(--theme-ink)!important;
  -webkit-text-fill-color:var(--theme-ink)!important;
  border-color:var(--theme-cardBorder)!important;
}
body.admin-page .theme-preview-card{
  background:var(--theme-card)!important;
  color:var(--theme-ink)!important;
  border-color:var(--theme-cardBorder)!important;
}
body.admin-page .theme-preview-hero{
  background:var(--theme-hero)!important;
  color:var(--theme-heroText)!important;
  -webkit-text-fill-color:var(--theme-heroText)!important;
}
body.admin-page .theme-preview-body button{
  background:var(--theme-accent)!important;
  color:var(--theme-accentText)!important;
  -webkit-text-fill-color:var(--theme-accentText)!important;
}
body.admin-page .mcms-smart-tooltip,
body.admin-page .mcms-tooltip-v106{
  background:var(--theme-card)!important;
  color:var(--theme-ink)!important;
  -webkit-text-fill-color:var(--theme-ink)!important;
  border-color:var(--theme-accent)!important;
}

/* MCMS v1.0.8 final admin theme bridge: every Admin workspace component uses active theme variables. */
body.admin-page,
html:has(body.admin-page){
  background:var(--theme-paper)!important;
  color:var(--theme-ink)!important;
}
body.admin-page main,
body.admin-page .admin-shell,
body.admin-page .section,
body.admin-page .admin-panel,
body.admin-page .toolbar,
body.admin-page .admin-grid,
body.admin-page .workspace-main{
  background:var(--theme-paper)!important;
  color:var(--theme-ink)!important;
}
body.admin-page .admin-shell :where(h1,h2,h3,h4,h5,h6,p,li,label,span,div,strong,small,em,code):not(.admin-action):not(.button):not(.danger):not(.delete-button){
  color:inherit;
  text-shadow:none!important;
}
body.admin-page :where(.admin-item,.card,.status,.notice,.admin-note,.dashboard-card,.dashboard-panel,.music-album-sidebar,.music-album-detail,.music-detail,.music-track-row,.calendar-show-sidebar,.calendar-show-detail,.links-sidebar,.link-detail,.theme-sidebar,.theme-detail,.photo-album-sidebar,.photo-album-detail,.photo-admin-table,.media-album,.selectable-media-row,.picker-item-wrap,.picker-item,.media-picker-panel,.admin-help-dialog,.help-card,.backup-card,.user-card,.system-card,.music-workspace.empty,.calendar-workspace.empty,.links-workspace.empty){
  background:var(--theme-card)!important;
  color:var(--theme-ink)!important;
  border-color:var(--theme-cardBorder)!important;
  -webkit-text-fill-color:initial!important;
}
body.admin-page :where(.music-album-sidebar,.calendar-show-sidebar,.links-sidebar,.theme-sidebar,.workspace-sidebar) :where(button,.album-nav-item,.show-nav-item,.link-nav-item,.theme-preset){
  background:var(--theme-buttonSecondary)!important;
  color:var(--theme-ink)!important;
  -webkit-text-fill-color:var(--theme-ink)!important;
  border-color:var(--theme-cardBorder)!important;
}
body.admin-page :where(.album-nav-item,.show-nav-item,.link-nav-item,.theme-preset) :where(span,small,strong,div){
  color:var(--theme-ink)!important;
  -webkit-text-fill-color:var(--theme-ink)!important;
}
body.admin-page :where(.album-nav-item.active,.show-nav-item.active,.link-nav-item.active,.theme-preset.active,.music-album-nav.active,.admin-tabs button.active,.admin-action.primary,.button.primary){
  background:var(--theme-accent)!important;
  color:var(--theme-accentText)!important;
  -webkit-text-fill-color:var(--theme-accentText)!important;
  border-color:var(--theme-accent)!important;
}
body.admin-page :where(.album-nav-item.active,.show-nav-item.active,.link-nav-item.active,.theme-preset.active,.music-album-nav.active) :where(span,small,strong,div){
  color:var(--theme-accentText)!important;
  -webkit-text-fill-color:var(--theme-accentText)!important;
}
body.admin-page :where(.legacy-note,.muted,.picker-file-meta,.show-nav-date,.show-nav-title,.show-nav-venue,.link-nav-item small,.album-nav-item small,.music-album-nav small,.theme-help,.field-help){
  color:var(--theme-muted)!important;
  -webkit-text-fill-color:var(--theme-muted)!important;
}
body.admin-page :where(input,textarea,select,option,.admin-editor,[contenteditable="true"]){
  background:var(--theme-fieldBg)!important;
  color:var(--theme-fieldText)!important;
  -webkit-text-fill-color:var(--theme-fieldText)!important;
  border-color:var(--theme-cardBorder)!important;
  caret-color:var(--theme-fieldText)!important;
}
body.admin-page :where(input,textarea)::placeholder{
  color:color-mix(in srgb,var(--theme-fieldText) 60%, transparent)!important;
  -webkit-text-fill-color:color-mix(in srgb,var(--theme-fieldText) 60%, transparent)!important;
  opacity:1!important;
}
body.admin-page :where(.admin-tabs button,.admin-action,.button,.toolbar button,.file-action,.media-select-btn,.picker-choose-btn){
  background:var(--theme-buttonSecondary)!important;
  color:var(--theme-ink)!important;
  -webkit-text-fill-color:var(--theme-ink)!important;
  border-color:var(--theme-cardBorder)!important;
}
body.admin-page :where(.admin-tabs button.active,.admin-action.primary,.button.primary,.toolbar button.primary,.media-select-btn.primary,.picker-choose-btn.primary){
  background:var(--theme-accent)!important;
  color:var(--theme-accentText)!important;
  -webkit-text-fill-color:var(--theme-accentText)!important;
  border-color:var(--theme-accent)!important;
}
body.admin-page :where(.admin-action.danger,.danger,.delete-button,button.danger){
  background:#b3261e!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:#b3261e!important;
}
body.admin-page a:not(.button):not(.admin-action){
  color:var(--theme-link)!important;
  -webkit-text-fill-color:var(--theme-link)!important;
}
body.admin-page :where(.page-hero,.theme-preview-hero){
  background:var(--theme-hero)!important;
  background-image:linear-gradient(135deg,var(--theme-header),var(--theme-hero))!important;
  color:var(--theme-heroText)!important;
  border-color:var(--theme-cardBorder)!important;
}
body.admin-page :where(.page-hero,.page-hero *,.theme-preview-hero,.theme-preview-hero *){
  color:var(--theme-heroText)!important;
  -webkit-text-fill-color:var(--theme-heroText)!important;
}
body.admin-page :where(.cover-preview-box,.theme-preview-card,.card-preview,.media-picker-head){
  background:var(--theme-card)!important;
  color:var(--theme-ink)!important;
  border-color:var(--theme-cardBorder)!important;
}
body.admin-page :where(.smtp-log,.mail-log,.log-output,pre,code){
  background:color-mix(in srgb,var(--theme-card) 82%, #000 18%)!important;
  color:var(--theme-ink)!important;
  -webkit-text-fill-color:var(--theme-ink)!important;
  border-color:var(--theme-cardBorder)!important;
}
body.admin-page :where(.mcms-smart-tooltip,.mcms-tooltip-v106){
  background:var(--theme-card)!important;
  color:var(--theme-ink)!important;
  -webkit-text-fill-color:var(--theme-ink)!important;
  border-color:var(--theme-accent)!important;
}


/* MCMS v1.0.13 dashboard theme polish: dashboard fully follows active theme variables. */
body.admin-page .dashboard-hero{background:linear-gradient(135deg,var(--theme-hero),color-mix(in srgb,var(--theme-hero) 80%,var(--theme-card) 20%))!important;color:var(--theme-heroText)!important;border-color:var(--theme-cardBorder)!important;}
body.admin-page .dashboard-hero,body.admin-page .dashboard-hero *{color:var(--theme-heroText)!important;-webkit-text-fill-color:var(--theme-heroText)!important;}
body.admin-page .dashboard-card,body.admin-page .dashboard-panel{background:var(--theme-card)!important;color:var(--theme-ink)!important;border-color:var(--theme-cardBorder)!important;-webkit-text-fill-color:initial!important;}
body.admin-page .dashboard-card span,body.admin-page .dashboard-card strong,body.admin-page .dashboard-card small,body.admin-page .dashboard-panel h3{color:var(--theme-ink)!important;-webkit-text-fill-color:var(--theme-ink)!important;}
body.admin-page .dashboard-card small,body.admin-page .dashboard-list li span,body.admin-page .dashboard-status-list li span{color:var(--theme-muted)!important;-webkit-text-fill-color:var(--theme-muted)!important;}
body.admin-page .dashboard-list li,body.admin-page .dashboard-status-list li{background:color-mix(in srgb,var(--theme-card) 84%,var(--theme-paper) 16%)!important;color:var(--theme-ink)!important;border:1px solid color-mix(in srgb,var(--theme-cardBorder) 82%,transparent)!important;-webkit-text-fill-color:initial!important;}
body.admin-page .dashboard-list li *,body.admin-page .dashboard-status-list li *{color:var(--theme-ink)!important;-webkit-text-fill-color:var(--theme-ink)!important;}
body.admin-page .dashboard-status-list strong.ok{color:#3fc46f!important;-webkit-text-fill-color:#3fc46f!important;}
body.admin-page .dashboard-status-list strong.warn{color:#f0b43f!important;-webkit-text-fill-color:#f0b43f!important;}
body.admin-page .dashboard-status-list strong.bad,body.admin-page .dashboard-status-list strong.error{color:#ff6961!important;-webkit-text-fill-color:#ff6961!important;}
body.admin-page .dashboard-version{background:color-mix(in srgb,var(--theme-card) 18%, transparent)!important;border:1px solid color-mix(in srgb,var(--theme-cardBorder) 70%, transparent)!important;border-radius:16px!important;padding:.85rem 1rem!important;}

/* Rich editor color controls need their own text color because they are labels, not fields. */
body.admin-page .editor-toolbar.rich-toolbar .color-tool{
  background:var(--theme-buttonSecondary)!important;
  color:var(--theme-ink)!important;
  -webkit-text-fill-color:var(--theme-ink)!important;
  border:1px solid var(--theme-cardBorder)!important;
}
body.admin-page .editor-toolbar.rich-toolbar .color-tool input[type="color"]{
  -webkit-text-fill-color:initial!important;
  border:1px solid var(--theme-cardBorder)!important;
}
