/* Natal: decoration stays outside business fields and printed documents. */
.theme-christmas-icon { display: none; width: 25px; height: 29px; flex: 0 0 auto; }
.theme-preview--christmas { --preview-accent: #185a46; --preview-soft: #f4f5ef; --preview-border: #dbe4d9; background: radial-gradient(ellipse at 90% 0%,#eee3c9,transparent 55%),#eff4ef; }
.theme-preview--christmas .theme-preview-sidebar { background: linear-gradient(160deg,#194e3d,#103a30); border-color: #365d4a; }
.theme-preview--christmas .theme-preview-logo { color: #f5e4b4; }
.theme-preview--christmas .theme-preview-sidebar b { background: #46715c; }
.theme-preview--christmas .theme-preview-sidebar b:first-of-type { background: #e1c68b; }
.theme-preview--christmas .theme-preview-top { background: #fffdf6; }
.theme-preview--christmas .theme-christmas-icon { display: inline-block; height: 26px; }
.theme-preview--christmas .theme-preview-kpis b:nth-child(2) { border-left-color: #a84048; }
.theme-preview--christmas .theme-preview-caption { color: #536e5a; }
.christmas-preview-lights { position:absolute; left:20px; right:20px; top:2px; height:21px; display:flex; }
@media screen {
    html[data-system-theme="christmas"] {
        --brand-50:#f1f7f1; --brand-100:#e1eee3; --brand-200:#bed5c5; --brand-300:#9ebfa9;
        --brand-400:#6a9b7f; --brand-500:#397c5d; --brand-600:#185a46; --brand-700:#174a39;
        --ink-900:#273b31; --ink-700:#4b5e52; --ink-500:#748378; --ink-300:#9ba89c;
        --surface-0:#fff; --surface-1:#fdfdf8; --surface-2:#f1f5ed; --border:#dce5d9;
        --card-border:#d8e4d7; --card-border-strong:#c8d9ca; --card-field-border:#d1dfd2;
        --card-bg:linear-gradient(180deg,#fff,#fcfdf8); --card-head-bg:linear-gradient(120deg,#f9fcf7,#f5f3e8);
        --card-field-bg:linear-gradient(180deg,#fff,#f7faf4); --card-shadow:0 10px 25px rgb(24 71 49 / 5%);
        --shadow-soft:0 10px 28px rgb(24 71 49 / 7%); --shadow-strong:0 18px 45px rgb(24 71 49 / 12%);
        --bs-primary:#185a46; --bs-primary-rgb:24,90,70; --bs-link-color:#276346; --bs-link-hover-color:#163e2d;
        --bs-primary-bg-subtle:#e1eee3; --bs-primary-border-subtle:#bed5c5; --bs-primary-text-emphasis:#174a39;
    }
    html[data-system-theme="christmas"] body { background: radial-gradient(ellipse at 95% 0%,#f5efe0 0%,transparent 45%),linear-gradient(145deg,#f5f8f0,#edf2ea); }
    html[data-system-theme="christmas"] body.auth-body { background: radial-gradient(ellipse at 20% 5%,#2a624e 0%,#123e32 48%,#0c2d27 100%); }
    html[data-system-theme="christmas"] .module-page { --card-border:#d8e4d7; --card-border-strong:#c8d9ca; --card-field-border:#d1dfd2; --card-head-bg:linear-gradient(120deg,#f9fcf7,#f5f3e8); --card-field-bg:linear-gradient(180deg,#fff,#f7faf4); }
    html[data-system-theme="christmas"] .app-sidebar { background: radial-gradient(ellipse at 0 0,#225e49 0%,transparent 40%),linear-gradient(175deg,#153f33,#10382f); border-color:#315843; scrollbar-color:#527460 #10382f; }
    html[data-system-theme="christmas"] .app-sidebar .brand-box { background: linear-gradient(120deg,#fffef7,#f6f1df); border-color:#c7b582; box-shadow:0 10px 28px #05291c26; }
    html[data-system-theme="christmas"] .app-sidebar .brand-subtitle { color:#657760; }
    html[data-system-theme="christmas"] .app-sidebar .menu-group-title { color:#b1cbb9; letter-spacing:.085em; }
    html[data-system-theme="christmas"] .app-sidebar .menu-link { color:#e4eee5; border-color:transparent; }
    html[data-system-theme="christmas"] .app-sidebar .menu-icon { color:#d7c28b; }
    html[data-system-theme="christmas"] .app-sidebar .menu-link:hover { background:#ffffff0d; color:#fffdf1; border-color:#64806a; }
    html[data-system-theme="christmas"] .app-sidebar .menu-link.active { background:linear-gradient(100deg,#f5e9c5,#e8dbb6); color:#183d2d; border-color:#d9c38e; box-shadow:0 3px 10px #09291e20; }
    html[data-system-theme="christmas"] .app-sidebar .menu-link.active .menu-icon { color:#8b682c; }
    html[data-system-theme="christmas"] .app-sidebar .menu-link.is-billing-locked { color:#b4c4b7; background:#ffffff07; border-color:#3c5c49; }
    html[data-system-theme="christmas"] .app-sidebar .user-card { color:#f1f5e9; background:#ffffff09; border-color:#41624e; box-shadow:none; }
    html[data-system-theme="christmas"] .app-sidebar .user-card :is(.meta,.developer-credit) { color:#b7cdbd; }
    html[data-system-theme="christmas"] .app-sidebar .btn-outline-secondary { color:#e5ebd9; border-color:#6f846c; background:transparent; }
    html[data-system-theme="christmas"] .app-sidebar .btn-outline-secondary:is(:hover,:focus-visible) { background:#ffffff12; color:#fffbe9; border-color:#c2b783; }
    html[data-system-theme="christmas"] :is(.topbar,.mobile-app-header) { background:linear-gradient(110deg,#fffdf7,#f6f5e9); border-color:#dddcc7; box-shadow:0 2px 12px #234d3010; }
    html[data-system-theme="christmas"] .theme-season-mark { display:inline-flex; align-items:center; gap:7px; color:#406345; font-size:.75rem; line-height:1.3; }
    html[data-system-theme="christmas"] .theme-season-mark .theme-ribbon { display:none; }
    html[data-system-theme="christmas"] .theme-season-mark .theme-christmas-icon { display:block; }
    html[data-system-theme="christmas"] .theme-season-mark--header { border-left:1px solid #dfdac4; padding-left:12px; margin-left:3px; }
    html[data-system-theme="christmas"] .theme-season-mark--mobile { margin-left:auto; }
    html[data-system-theme="christmas"] .theme-season-mark--login { justify-content:center; width:100%; margin-bottom:15px; color:#ede4c8; }
    html[data-system-theme="christmas"] .theme-season-mark--login .theme-christmas-icon { --christmas-tree:#d5e8d5; }
    html[data-system-theme="christmas"] .auth-card { background:#fffef9; border-color:#d5c594; box-shadow:0 24px 65px #061f2266; }
    html[data-system-theme="christmas"] .auth-brand { border-color:#dedfc9; }
    html[data-system-theme="christmas"] .btn-primary { background:linear-gradient(115deg,#185a46,#287256); border-color:#185a46; color:#fff; --bs-btn-disabled-bg:#397c5d; --bs-btn-disabled-border-color:#397c5d; --bs-btn-focus-shadow-rgb:24,90,70; }
    html[data-system-theme="christmas"] .btn-primary:is(:hover,:focus-visible,:active) { background:#174a39; border-color:#174a39; color:#fff; }
    html[data-system-theme="christmas"] .btn-outline-primary { --bs-btn-color:#185a46; --bs-btn-border-color:#8aae91; --bs-btn-hover-bg:#185a46; --bs-btn-hover-border-color:#185a46; --bs-btn-active-bg:#174a39; --bs-btn-active-border-color:#174a39; --bs-btn-disabled-color:#56785f; --bs-btn-disabled-border-color:#b7cbb7; --bs-btn-focus-shadow-rgb:24,90,70; }
    html[data-system-theme="christmas"] .btn-outline-secondary { color:#4a6650; border-color:#cbd8c6; }
    html[data-system-theme="christmas"] .btn-outline-secondary:is(:hover,:focus-visible) { color:#174a39; border-color:#9ebfa9; background:#f0f6ed; }
    html[data-system-theme="christmas"] :is(.form-control,.form-select,.system-listbox-trigger,.company-switch-trigger):not(.is-invalid):not(.is-valid) { border-color:var(--card-field-border); color:var(--ink-900); }
    html[data-system-theme="christmas"] :is(.form-control,.form-select,.system-listbox-trigger,.company-switch-trigger):focus { border-color:#6a9b7f; box-shadow:0 0 0 .18rem #185a461b; }
    html[data-system-theme="christmas"] :is(.input-group-text,.auth-input .input-group-text) { background:#f1f6ed; color:#456b4d; border-color:#d1dfd2; }
    html[data-system-theme="christmas"] .form-check-input:checked { background-color:#185a46; border-color:#185a46; }
    html[data-system-theme="christmas"] .table { --bs-table-striped-bg:#f7faf3; --bs-table-border-color:#e0e8dc; }
    html[data-system-theme="christmas"] .module-table-card .table thead th { background:var(--card-head-bg); color:#647b66; border-color:#dce5d9; }
    html[data-system-theme="christmas"] .module-table-card > .table-responsive { border-color:#dce5d9; }
    html[data-system-theme="christmas"] :is(.system-listbox-menu,.company-switch-menu,.sales-operation-kind-menu) { border-color:#c4d7c4; box-shadow:var(--shadow-strong); }
    html[data-system-theme="christmas"] :is(.nav-pills .nav-link.active,.page-item.active .page-link) { background:#185a46; border-color:#185a46; color:#fff; }
    html[data-system-theme="christmas"] .nav-tabs .nav-link.active { background:#f1f7ed; color:#185a46; border-color:#dce5d9; }
    html[data-system-theme="christmas"] .app-body .modal-content { border-color:#d4dfca; color:var(--ink-900); }
    html[data-system-theme="christmas"] .app-body .modal-content::before { background:linear-gradient(90deg,#1d654c,#d6be7b); }
    html[data-system-theme="christmas"] :is(.app-body .modal-header,.app-dialog-head) { background:var(--card-head-bg); border-color:#dce5d9; }
    html[data-system-theme="christmas"] :is(.app-body .modal-footer,.app-dialog-actions,.app-dialog-footer) { background:#fcfdf6; border-color:#dce5d9; }
    html[data-system-theme="christmas"] :is(.dc-notification-bell,.pwa-install-icon) { color:#185a46; border-color:#c6d8bf; background:#f1f7ec; }
    html[data-system-theme="christmas"] .dc-notification-count { background:#a13b47; }
    .christmas-ambience { position:fixed; inset:0 0 auto; height:280px; overflow:hidden; pointer-events:none; user-select:none; z-index:30; mask-image:linear-gradient(#000 0%,#000 50%,transparent 100%); }
    .christmas-ambience * { pointer-events:none; }
    .christmas-light-strand { display:flex; position:absolute; top:-1px; inset-inline:0; height:30px; }
    .christmas-light-section { display:block; position:relative; flex:1 1 0; min-width:0; height:30px; }
    .christmas-cord-svg { display:block; position:absolute; inset:0 0 auto; width:100%; height:24px; overflow:visible; fill:none; stroke:#365840; stroke-width:1.15; vector-effect:non-scaling-stroke; opacity:.8; }
    .christmas-cord-svg path { vector-effect:non-scaling-stroke; }
    .christmas-bulb { --hang:6.8125px; --bulb:#ed5148; display:block; position:absolute; left:12.5%; top:calc(var(--hang) + 3px); width:6px; height:10px; margin-left:-3px; border-radius:40% 40% 50% 50%; background:radial-gradient(ellipse at 38% 28%,#fff9 0%,#fff0 47%),var(--bulb); box-shadow:0 1px 5px var(--bulb); opacity:.76; animation:christmas-glow 4.7s ease-in-out infinite alternate; animation-delay:var(--delay,0s); }
    .christmas-bulb:nth-of-type(2) { --hang:12.3125px; --bulb:#f0c34b; left:37.5%; }
    .christmas-bulb:nth-of-type(3) { --hang:12.3125px; --bulb:#4fbb70; left:62.5%; }
    .christmas-bulb:nth-of-type(4) { --bulb:#6599ec; left:87.5%; }
    .christmas-bulb::before { content:''; position:absolute; width:1px; height:3px; left:calc(50% - .5px); top:-5px; background:#365840; }
    .christmas-bulb::after { content:''; position:absolute; width:5px; height:3px; left:.5px; top:-2px; border-radius:1px 1px 0 0; background:#31503b; box-shadow:inset 0 1px #638066; }
    .christmas-preview-lights .christmas-light-section { height:21px; }
    .christmas-preview-lights .christmas-cord-svg { height:14.4px; stroke-width:1; }
    .christmas-preview-lights .christmas-bulb { top:calc(var(--hang) * .6 + 2px); width:4px; height:6px; margin-left:-2px; animation:none; opacity:.9; box-shadow:0 1px 3px var(--bulb); }
    .christmas-preview-lights .christmas-bulb::before { top:-3px; height:2px; }
    .christmas-preview-lights .christmas-bulb::after { width:3px; height:2px; top:-1px; }
    .christmas-flake { position:absolute; top:-15px; left:var(--left); width:var(--size); height:var(--size); color:#fff; filter:drop-shadow(0 0 1px #386f5a80); opacity:0; animation:christmas-snowfall var(--duration) linear infinite; animation-delay:var(--delay); }
    .christmas-flake svg { display:block; width:100%; height:100%; }
    .christmas-ambience.is-paused * { animation-play-state:paused !important; }
    .modal-open .christmas-ambience { opacity:.16; }
    html[data-system-theme="christmas"] .has-christmas-snowcap { position:relative; }
    .christmas-snowcap { position:absolute; top:-1px; left:0; right:0; height:18px; pointer-events:none; user-select:none; z-index:2; filter:drop-shadow(0 1px 1px #aac5cd66); mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent); }
    .christmas-snowcap svg { display:block; width:100%; height:100%; overflow:visible; }
    .christmas-snowcap--1 { left:8%; height:16px; }
    .christmas-snowcap--2 { right:12%; height:17px; transform:scaleX(-1); }
    @keyframes christmas-glow { 0%,35% { opacity:.55; filter:saturate(.8); } 75%,100% { opacity:1; filter:saturate(1.05); } }
    @keyframes christmas-snowfall { 0% { transform:translate3d(0,-5px,0) rotate(0); opacity:0; } 12% { opacity:.5; } 75% { opacity:.3; } 100% { transform:translate3d(var(--drift),285px,0) rotate(100deg); opacity:0; } }
    @media (min-width:768px) and (max-width:1599.98px) { .themes-grid:has([data-theme-choice="christmas"]) { grid-template-columns:repeat(2,minmax(0,1fr)); } }
    @media (max-width:991.98px) {
        html[data-system-theme="christmas"] .theme-season-mark--header { display:none; }
        html[data-system-theme="christmas"] .mobile-app-header { background:#173f32; color:#f3eedb; }
        html[data-system-theme="christmas"] .mobile-menu-toggle { background:#ffffff0a; border-color:#688167; color:#fff5d6; }
        html[data-system-theme="christmas"] .theme-season-mark--mobile { color:#f0e8ce; }
        html[data-system-theme="christmas"] .theme-season-mark--mobile .theme-christmas-icon { width:20px; height:24px; --christmas-tree:#d7e8d8; }
        html[data-system-theme="christmas"] .mobile-sidebar-close { color:#f3ead1; border-color:#688167; background:#153f33; }
        .christmas-ambience { height:220px; }
    }
    @media (prefers-reduced-motion:reduce) { .christmas-flake { display:none; } .christmas-bulb { animation:none; opacity:.8; } }
}
@media print { .christmas-ambience,.christmas-snowcap,.theme-christmas-icon,.christmas-preview-lights { display:none !important; } }
