/* DarkShift changes colors only. Every public repaint requires the dark root. */
html[data-darkshift="dark"] { color-scheme:dark; }
html[data-darkshift="dark"] body.darkshift-public { background-color:var(--darkshift-background); color:var(--darkshift-text); scrollbar-color:var(--darkshift-scrollbar-thumb) var(--darkshift-scrollbar-track); }
html[data-darkshift="dark"] .darkshift-public :where(h1,h2,h3,h4,h5,h6):not(.darkshift-exclude,.darkshift-exclude *) { color:var(--darkshift-heading); }
html[data-darkshift="dark"] .darkshift-public :where(a):not(.wp-element-button,.wp-block-button__link,.darkshift-exclude,.darkshift-exclude *) { color:var(--darkshift-link); }
html[data-darkshift="dark"] .darkshift-public a:hover:not(.darkshift-exclude,.darkshift-exclude *) { color:var(--darkshift-link-hover); }
html[data-darkshift="dark"] .darkshift-public :where(p,dd,td,.entry-content li) a:not(.wp-element-button,.wp-block-button__link,.darkshift-exclude,.darkshift-exclude *) { text-decoration:underline; text-underline-offset:.15em; }
html[data-darkshift="dark"] .darkshift-public :where(.wp-site-blocks,.site,.site-content,main,article,.entry-content,.wp-block-group,.wp-block-columns,.wp-block-column):not(.darkshift-exclude,.darkshift-exclude *) { color:var(--darkshift-text); }
html[data-darkshift="dark"] .darkshift-public :where(.wp-block-group.has-background,.wp-block-cover,.darkshift-fallback):not(.darkshift-exclude,.darkshift-exclude *) { background-color:var(--darkshift-surface); color:var(--darkshift-text); }
html[data-darkshift="dark"] .darkshift-public :where(.wp-block-navigation,.site-header,.site-footer,header.site-header,footer.site-footer):not(.darkshift-exclude,.darkshift-exclude *) { background-color:var(--darkshift-navigation); color:var(--darkshift-navigation-text); }
html[data-darkshift="dark"] .darkshift-public :where(.wp-element-button,.wp-block-button__link,button:not(.darkshift-toggle),input[type="submit"],input[type="button"]):not(.darkshift-exclude,.darkshift-exclude *) { background-color:var(--darkshift-button); color:var(--darkshift-button-text); border-color:var(--darkshift-border); }
html[data-darkshift="dark"] .darkshift-public :where(.wp-element-button,.wp-block-button__link,button,input[type="submit"]):hover:not(.darkshift-exclude,.darkshift-exclude *) { background-color:var(--darkshift-button-hover); color:var(--darkshift-button-hover-text); }
html[data-darkshift="dark"] .darkshift-public :where(input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),textarea,select):not(.darkshift-exclude,.darkshift-exclude *) { background-color:var(--darkshift-input); color:var(--darkshift-input-text); border-color:var(--darkshift-input-border); }
html[data-darkshift="dark"] .darkshift-public :where(input,textarea):not(.darkshift-exclude,.darkshift-exclude *)::placeholder { color:var(--darkshift-placeholder); opacity:1; }
html[data-darkshift="dark"] .darkshift-public :where(input[type="checkbox"],input[type="radio"]) { accent-color:var(--darkshift-button); }
html[data-darkshift="dark"] .darkshift-public :where(label,legend,.wp-block-post-excerpt):not(.darkshift-exclude,.darkshift-exclude *) { color:var(--darkshift-text-secondary); }
html[data-darkshift="dark"] .darkshift-public :where(table,th,td):not(.darkshift-exclude,.darkshift-exclude *) { background-color:var(--darkshift-table); color:var(--darkshift-text); border-color:var(--darkshift-border); }
html[data-darkshift="dark"] .darkshift-public tbody tr:nth-child(even) td:not(.darkshift-exclude,.darkshift-exclude *) { background-color:var(--darkshift-table-stripe); }
html[data-darkshift="dark"] .darkshift-public :where(.wp-block-quote,.wp-block-code,pre,.card):not(.darkshift-exclude,.darkshift-exclude *) { background-color:var(--darkshift-card); color:var(--darkshift-text); border-color:var(--darkshift-border); }
html[data-darkshift="dark"] .darkshift-public :where(dialog,[role="dialog"]):not(.darkshift-exclude,.darkshift-exclude *) { background-color:var(--darkshift-modal); color:var(--darkshift-text); }
html[data-darkshift="dark"] .darkshift-public :where(.notice,[role="status"]):not(.darkshift-exclude,.darkshift-exclude *) { background-color:var(--darkshift-notice); color:var(--darkshift-notice-text); }
html[data-darkshift="dark"] .darkshift-public :where(.error,.wpcf7-not-valid-tip,.wpforms-error,.ff-el-is-error .text-danger):not(.darkshift-exclude,.darkshift-exclude *) { color:var(--darkshift-error); }
html[data-darkshift="dark"] .darkshift-public :where(button,a,input,select,textarea):focus-visible { outline:3px solid var(--darkshift-focus); outline-offset:3px; }
html[data-darkshift="dark"] .darkshift-public .darkshift-image-effect:not(.darkshift-protect,.darkshift-protect *,.darkshift-exclude,.darkshift-exclude *,.darkshift-qr,.darkshift-qr *,.woocommerce-product-gallery,.woocommerce-product-gallery *,.wc-block-components-product-image,.wc-block-components-product-image *) { filter:brightness(var(--darkshift-image-brightness,1)) contrast(var(--darkshift-image-contrast,1)); }
.darkshift-toggle { box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; gap:8px; min-width:var(--darkshift-control-size,44px); min-height:var(--darkshift-control-size,44px); max-width:100%; padding:8px 14px; border:2px solid var(--darkshift-control-border,#64748b); border-radius:var(--darkshift-control-radius,24px); background:var(--darkshift-control-background,#162131); color:var(--darkshift-control-text,#f8fafc); font:600 .875rem/1.3 system-ui,sans-serif; cursor:pointer; vertical-align:middle; white-space:normal; overflow-wrap:anywhere; }
.darkshift-label { min-width:0; }
.darkshift-toggle[hidden],[data-darkshift-preference][hidden] { display:none!important; }
.darkshift-toggle:hover { background:#293d55; color:#fff; }
.darkshift-toggle:focus-visible,[data-darkshift-preference]:focus-visible { outline:3px solid #b45309; outline-offset:4px; }
html[data-darkshift="dark"] .darkshift-toggle { background:var(--darkshift-control-background,#162131); color:var(--darkshift-control-text,#f8fafc); }
.darkshift-symbol { font:1.5rem/1 system-ui,sans-serif; flex-shrink:0; }
.darkshift-style-icon .darkshift-label,.darkshift-style-compact .darkshift-label,.darkshift-style-sunmoon .darkshift-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.darkshift-style-slide .darkshift-symbol { border-radius:50%; background:#edf2fa; color:#172537; padding:3px; }
html[data-darkshift="dark"] .darkshift-style-slide .darkshift-symbol { background:#172537; color:#edf2fa; }
.darkshift-style-text .darkshift-symbol { display:none; }
.darkshift-style-sunmoon .darkshift-symbol { font-size:30px; }
.darkshift-style-sunmoon .darkshift-symbol { font-size:0; }
.darkshift-style-sunmoon .darkshift-symbol::before { content:'☾'; font:30px/1 system-ui,sans-serif; }
html[data-darkshift="dark"] .darkshift-style-sunmoon .darkshift-symbol::before { content:'☀'; }
.darkshift-shadow { box-shadow:0 4px 20px #0004; }
.darkshift-motion .darkshift-toggle { transition:background-color .15s,color .15s; }
.darkshift-floating { position:fixed; z-index:99990; display:flex; flex-direction:column; align-items:center; gap:5px; max-width:calc(100vw - 24px); }
.darkshift-floating select { box-sizing:border-box; max-width:min(18.75rem,100%); min-height:32px; border:1px solid #64748b; border-radius:5px; padding:3px; background:#fff; color:#172537; font:.75rem system-ui,sans-serif; }
.darkshift-bottom-right,.darkshift-center-right,.darkshift-top-right { right:max(var(--darkshift-control-offset,20px),env(safe-area-inset-right)); }
.darkshift-bottom-left,.darkshift-center-left,.darkshift-top-left { left:max(var(--darkshift-control-offset,20px),env(safe-area-inset-left)); }
.darkshift-bottom-left,.darkshift-bottom-right { bottom:max(var(--darkshift-control-offset,20px),env(safe-area-inset-bottom)); }
.darkshift-top-left,.darkshift-top-right { top:calc(var(--darkshift-control-offset,20px) + 35px); }
.darkshift-center-left,.darkshift-center-right { top:50%; transform:translateY(-50%); }
.darkshift-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.darkshift-preview-notice { position:relative; z-index:99991; padding:12px 20px; border:2px solid #64748b; background:#fff; color:#172537; font:1rem/1.5 system-ui,sans-serif; }
.darkshift-preview-notice a { color:#174a78!important; text-decoration:underline; }
.darkshift-preview-notice a:focus-visible { outline:3px solid #b45309; outline-offset:3px; }
@media(max-width:782px) { .darkshift-hide-mobile { display:none; } }
@media(min-width:783px) { .darkshift-hide-desktop { display:none; } }
@media(prefers-reduced-motion:reduce) { .darkshift-toggle { transition:none!important; animation:none!important; } }
@media(forced-colors:active) { .darkshift-toggle,.darkshift-floating select { background:ButtonFace; color:ButtonText; border:2px solid ButtonText; box-shadow:none; } .darkshift-toggle:focus-visible { outline:3px solid Highlight; } }
