/* Independent appearance pack. All existing site colors are untouched in day mode. */
#zvcb-mode-toolbar { position:fixed; right:16px; bottom:16px; z-index:60; width:max-content; max-width:calc(100vw - 24px); background:transparent; color:#31445e; font:12px/1.4 Arial,sans-serif; }
#zvcb-mode-toolbar .zvcb-mode-inner { display:flex; margin:0; padding:0; }
#zvcb-mode-toolbar .zvcb-mode-label { display:none; }
#zvcb-mode-toolbar .zvcb-mode-buttons { display:flex; gap:2px; padding:3px; box-shadow:0 3px 12px #0002; border:1px solid #bac6d4; border-radius:28px; background:#e4eaf1; }
#zvcb-mode-toolbar button { min-width:55px; min-height:32px; padding:6px 10px; margin:0; border:0; border-radius:24px; background:transparent; color:#31445e; box-shadow:none; text-shadow:none; font:600 12px/1.3 Arial,sans-serif; text-transform:none; letter-spacing:normal; cursor:pointer; }
#zvcb-mode-toolbar button[aria-pressed=true] { background:#d1ba68; color:#20262e; }
#zvcb-mode-toolbar button:hover { box-shadow:inset 0 0 0 1px #8d7a39; }
#zvcb-mode-toolbar button:focus-visible { outline:3px solid #497bb5; outline-offset:2px; }
@media(max-width:600px) {
  #zvcb-mode-toolbar { right:12px; bottom:calc(12px + env(safe-area-inset-bottom, 0px)); }
  #zvcb-mode-toolbar button { min-height:44px; }
}
@media print { #zvcb-mode-toolbar { display:none!important; } }
html[data-zvc-mode=night] {
  color-scheme:dark;
  --zn-bg:#20262e; --zn-panel:#2a323d; --zn-raised:#344252; --zn-input:#303b48;
  --zn-text:#e3e9ef; --zn-muted:#b5c1ce; --zn-link:#b5d4f4; --zn-line:#4e5c6d; --zn-gold:#d1ba68;
}
html[data-zvc-mode=night] body { background:var(--zn-bg)!important; color:var(--zn-text)!important; }
html[data-zvc-mode=night] #zvcb-mode-toolbar { background:transparent; color:var(--zn-muted); }
html[data-zvc-mode=night] #zvcb-mode-toolbar .zvcb-mode-buttons { background:var(--zn-panel); border-color:var(--zn-line); }
html[data-zvc-mode=night] #zvcb-mode-toolbar button { color:var(--zn-text); }
html[data-zvc-mode=night] #zvcb-mode-toolbar button[aria-pressed=true] { background:var(--zn-gold); color:#20262e; }
/* Page surfaces and typography. */
html[data-zvc-mode=night] :is(#page,#content,#primary,#secondary,.content-wrapper,#masthead,.site-branding,.entry-content) { background:transparent!important; color:var(--zn-text)!important; box-shadow:none!important; border-color:var(--zn-line)!important; }
html[data-zvc-mode=night] :is(#main,.hentry,.widget,.entry-header,.sp-template,.sp-table-wrapper,.sp-list-wrapper,.sp-template-details,.sp-player-details,.sp-team-details,.mc-event-list-container,.no-events-fallback,.no-events-fallback li,.dataTables_paginate,.cafeteria-contact,.single-entry-title,.posted-on) { background:var(--zn-panel)!important; color:var(--zn-text)!important; border-color:var(--zn-line)!important; box-shadow:none!important; }
html[data-zvc-mode=night] :is(.entry-content,.entry-header,.widget,.site-footer,.site-info) :is(h1,h2,h3,h4,h5,h6,p,dt,dd,li,label) { color:var(--zn-text)!important; }
html[data-zvc-mode=night] :is(.entry-meta,.entry-meta a,.entry-meta span,.wp-caption-text,.sp-player-position,.sp-event-venue-address-row) { color:var(--zn-muted)!important; }
html[data-zvc-mode=night] :is(#page,.sp-league-menu,.site-footer,.site-info) a { color:var(--zn-link)!important; }
html[data-zvc-mode=night] :is(#page,.site-footer,.site-info) a:hover { color:#f0d98b!important; }
html[data-zvc-mode=night] :is(#page,#zvcb-mode-toolbar) :focus-visible { outline:2px solid #edcf72!important; outline-offset:3px; }
html[data-zvc-mode=night] :is(hr,blockquote,.sp-section-content,.entry-footer) { border-color:var(--zn-line)!important; }
html[data-zvc-mode=night] :is(pre,code,blockquote) { background:var(--zn-input)!important; color:var(--zn-text)!important; }
html[data-zvc-mode=night] #masthead .site-title a { background:none!important; -webkit-text-fill-color:var(--zn-text)!important; color:var(--zn-text)!important; }
html[data-zvc-mode=night] #masthead .site-description { color:var(--zn-text)!important; }
html[data-zvc-mode=night] :is(.site-footer,.site-info,.footer-wrapper,.info-wrapper,.sp-league-menu,.sp-league-menu .sp-inner) { background:#2c3848!important; color:var(--zn-muted)!important; border-color:var(--zn-gold)!important; }
/* Navigation keeps the original gold accent and full mobile behavior. */
html[data-zvc-mode=night] #site-navigation { background:#303c4c!important; border-color:var(--zn-gold)!important; box-shadow:0 5px 15px #0002!important; }
html[data-zvc-mode=night] #site-navigation :is(a,.menu-toggle) { color:#edf1f5!important; }
html[data-zvc-mode=night] #site-navigation :is(.sub-menu,.children,.nav-menu,.menu-toggle) { background:#303c4c!important; border-color:var(--zn-line)!important; }
html[data-zvc-mode=night] #site-navigation li:hover>a { background:#425268!important; color:#f0d98b!important; }
html[data-zvc-mode=night] #site-navigation :is(.current-menu-item,.current_page_item)>a { background:#3b4d61!important; color:#f0d98b!important; }
/* Tables, results, rankings, player and team profiles. */
html[data-zvc-mode=night] #page .sp-template-player-photo { background:#9aaabd!important; }
html[data-zvc-mode=night] #page .sp-tournament-bracket .sp-team-name { background:#344252!important; color:#e3e9ef!important; border-color:#718095!important; }
html[data-zvc-mode=night] #page .sp-tournament-bracket .sp-highlight { border-left-color:#d1ba68!important; }
html[data-zvc-mode=night] #page .sp-tournament-bracket .sp-team::after { border-color:#718095!important; }
html[data-zvc-mode=night] #page :is(table,tbody,tr,td,.sp-event-blocks .sp-row) { background:var(--zn-panel)!important; color:var(--zn-text)!important; border-color:var(--zn-line)!important; }
html[data-zvc-mode=night] #page :is(tr:nth-child(even) td,tr.even td,.sp-row.alternate) { background:#303a46!important; }
html[data-zvc-mode=night] #page :is(thead,th,.sp-table-caption,table caption) { background:#354456!important; color:#eff3f7!important; border-color:var(--zn-line)!important; }
html[data-zvc-mode=night] #page :is(.sp-table-caption,table caption) { border-top-color:var(--zn-gold)!important; }
html[data-zvc-mode=night] #page tbody tr:hover td { background:#3b495b!important; }
html[data-zvc-mode=night] #page :is(.sp-result,.sp-event-title,.sp-event-date,.sp-team-name,.sp-statistic-value,.sp-statistic-label,.sp-statistic-ratio) { color:var(--zn-text)!important; }
html[data-zvc-mode=night] #page .sp-statistic-bar { background:#435166!important; }
html[data-zvc-mode=night] #page .sp-statistic-bar-fill { background:#7ca9cf!important; }
html[data-zvc-mode=night] #page :is(.dataTables_info,.dataTables_length,.dataTables_filter,.dataTables_paginate,.sp-player-selector) { color:var(--zn-muted)!important; }
html[data-zvc-mode=night] #page :is(.paginate_button,.page-numbers,.sp-view-all-link,.sp-tabs a) { background:var(--zn-input)!important; color:var(--zn-link)!important; border-color:var(--zn-line)!important; }
html[data-zvc-mode=night] #page :is(.paginate_button.current,.page-numbers.current,.sp-tabs .active a) { background:var(--zn-gold)!important; color:#20262e!important; }
/* News cards and article metadata. */
html[data-zvc-mode=night] #page :is(.ultp-block-wrapper,.ultp-block-content,.ultp-block-content-wrap,.ultp-block-item):not(.ultp-block-content-overlay, .ultp-block-content-overlay *) { background:var(--zn-panel)!important; border-color:var(--zn-line)!important; color:var(--zn-text)!important; }
html[data-zvc-mode=night] #page :is(.ultp-block-title a,.entry-title a) { color:var(--zn-text)!important; }
html[data-zvc-mode=night] #page :is(.ultp-block-excerpt p,.ultp-block-meta,.ultp-block-meta *,small) { color:var(--zn-muted)!important; }
html[data-zvc-mode=night] #page :is(.ultp-block-readmore a,.ultp-block-readmore span) { color:#ecd382!important; }
html[data-zvc-mode=night] #page .ultp-category-in a { background:#5e542f!important; color:#fff1c2!important; }
/* Overlay cards retain the original photo and colored gradient in both modes. */
html[data-zvc-mode=night] #page .ultp-block-content-overlay :is(.ultp-block-title a,.ultp-block-meta,.ultp-block-meta *) { color:#fff!important; }
html[data-zvc-mode=night] #page .ultp-block-content-overlay .ultp-category-in a { background:#111!important; color:#fff!important; }
/* Native controls, WPForms and TinyMCE's outer toolbar. */
html[data-zvc-mode=night] #page :is(input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]),select,textarea,.wpforms-field-richtext,.wp-editor-container,.mce-panel,.mce-toolbar-grp,.mce-edit-area,.mce-btn,.wp-editor-tabs button,.wpforms-uploader,.wpforms-datepicker-wrap,.choices__inner,.choices__list--dropdown) { background:var(--zn-input)!important; color:var(--zn-text)!important; border-color:#718095!important; box-shadow:none!important; }
html[data-zvc-mode=night] #page :is(input,textarea)::placeholder { color:#b5c1ce!important; opacity:1; }
html[data-zvc-mode=night] #page :is(input[type=checkbox],input[type=radio]) { accent-color:var(--zn-gold); }
html[data-zvc-mode=night] #page :is(button,input[type=submit],input[type=button],.button,.wp-block-button__link) { background:#3d526b!important; color:#f0f4f8!important; border-color:#7d95b2!important; text-shadow:none!important; }
html[data-zvc-mode=night] #page :is(button,input[type=submit],.button,.wp-block-button__link):hover { background:#4b6480!important; }
html[data-zvc-mode=night] #page :is(.wpforms-field-label,.wpforms-field-sublabel,.wpforms-field-description,.wpforms-captcha-equation,.mce-ico,.mce-btn button,.mce-txt) { color:var(--zn-text)!important; }
html[data-zvc-mode=night] #page :is(.wpforms-required-label,.wpforms-error) { color:#ffb4ae!important; }
html[data-zvc-mode=night] #page .wpforms-confirmation-container-full { background:#28463d!important; color:#e0f4e9!important; border-color:#83bba0!important; }
html[data-zvc-mode=night] #page .wpforms-container { --wpforms-label-color:#e3e9ef; --wpforms-label-sublabel-color:#b5c1ce; --wpforms-field-background-color:#303b48; --wpforms-field-text-color:#e3e9ef; --wpforms-field-border-color:#718095; --wpforms-label-error-color:#ffb4ae; }
html[data-zvc-mode=night] :is(.flatpickr-calendar,.flatpickr-months,.flatpickr-weekdays,.flatpickr-month,.flatpickr-weekday,.flatpickr-day,.mce-menu,.mce-menu-item) { background:#303b48!important; color:#e3e9ef!important; border-color:#718095!important; }
html[data-zvc-mode=night] :is(.flatpickr-day.selected,.flatpickr-day:hover,.mce-menu-item:hover) { background:#596c85!important; color:#fff!important; }
html[data-zvc-mode=night] #page :is(.wpforms-uploader .dz-message,.wpforms-uploader .modern-title,.wpforms-uploader .dz-message span) { color:#b5c1ce!important; }
/* Transfer cards preserve the meaning of their status badges. */
html[data-zvc-mode=night] #page :is(.zvc-transfer-header,.zvc-transfer-stat,.zvc-transfer-toolbar,.zvc-transfer-card,.zvc-team-dropdown-menu,.zvc-team-dropdown summary,.zvc-filter,.zvc-transfer-more) { background:var(--zn-panel)!important; color:var(--zn-text)!important; border-color:var(--zn-line)!important; box-shadow:none!important; }
html[data-zvc-mode=night] #page :is(.zvc-player-info strong,.zvc-transfer-stat strong,.zvc-transfer-club span,.zvc-team-option,.zvc-player-profile-link) { color:var(--zn-text)!important; }
html[data-zvc-mode=night] #page :is(.zvc-player-info span,.zvc-player-info small,.zvc-transfer-stat span,.zvc-transfer-meta time,.zvc-transfer-header p) { color:var(--zn-muted)!important; }
html[data-zvc-mode=night] #page :is(.zvc-transfer-notice,.zvc-transfer-notice-icon,.zvc-stat-icon,.zvc-transfer-symbol) { background:#3d3a2c!important; color:#f0dc9b!important; border-color:#8c7b42!important; }
html[data-zvc-mode=night] #page .zvc-transfer-notice :is(p,strong) { color:#f0dc9b!important; }
html[data-zvc-mode=night] #page :is(.status-officieel,.status-bevestigd) { background:#284b3d!important; color:#b8f0d0!important; border-color:#608b75!important; }
html[data-zvc-mode=night] #page :is(.status-onderhandeling,.status-wachten) { background:#53452b!important; color:#ffe0a0!important; border-color:#9b8450!important; }
html[data-zvc-mode=night] #page .zvc-team-option:hover { background:#435269!important; }
html[data-zvc-mode=night] #page .zvc-filter-input:checked ~ .zvc-transfer-toolbar label { border-color:var(--zn-line)!important; }
/* Embedded services retain their provider-owned contents; only their frame is themed. */
html[data-zvc-mode=night] #page :is(#cff,.cff-wrapper,.cff-likebox,.cff-likebox-wrap) { background:var(--zn-panel)!important; border-color:var(--zn-line)!important; }
/* Optional Halloween compatibility: no dependency on that plugin. */
html[data-zvc-mode=night] #zvcb-halloween-decor .zhw-bubble { background:#354151!important; color:#f3dfab!important; border-color:#c8b168!important; box-shadow:0 3px 12px #0004; }
html[data-zvc-mode=night] #zvcb-halloween-decor .zhw-bubble::after { background:#354151!important; border-color:#c8b168!important; }

html[data-zvc-mode=night] #page #zvc-pos-all:checked ~ .zvc-transfer-toolbar .zvc-pos-all,
html[data-zvc-mode=night] #page #zvc-pos-keeper:checked ~ .zvc-transfer-toolbar .zvc-pos-keeper,
html[data-zvc-mode=night] #page #zvc-pos-verdediger:checked ~ .zvc-transfer-toolbar .zvc-pos-verdediger,
html[data-zvc-mode=night] #page #zvc-pos-middenvelder:checked ~ .zvc-transfer-toolbar .zvc-pos-middenvelder,
html[data-zvc-mode=night] #page #zvc-pos-aanvaller:checked ~ .zvc-transfer-toolbar .zvc-pos-aanvaller { background:#d1ba68!important; color:#20262e!important; border-color:#d1ba68!important; }
