.bee-winter {
    --bee-ice: #aee5ff;
    --bee-ice-ink: #153c62;
    --bee-ice-border: #72a6c44d;
    --bee-frost: linear-gradient(150deg, #7bc9fa14, transparent 54%);
}

.bee-winter.theme-dark {
    color-scheme: dark;
    --bg-body: #080f1b;
    --bg-card: #102031;
    --bg-card-alt: #172c41;
    --bg-input: #112235;
    --bg-secondary: #16283b;
    --text-heading: #eff9ff;
    --text-body: #c9dcea;
    --text-muted: #9eb9cf;
    --border-main: #29455d;
    --border-light: #233d54;
    --border-color: #29455d;
}

.bee-winter.theme-light {
    --bg-body: #eaf4fa;
    --bg-card: #f8fcff;
    --bg-card-alt: #e4f2fa;
    --bg-input: #f5fbff;
    --border-main: #b7d2e3;
    --text-muted: #49677b;
}

.bee-winter .bee-ambient-layer::before {
    background: linear-gradient(150deg, #203e5d 0%, transparent 44%, #0a1628 100%);
}

.bee-winter .bee-ambient-layer::after {
    background: radial-gradient(ellipse at 12% 14%, #4fa5d849, transparent 38%),
        radial-gradient(ellipse at 96% 64%, #3576bd40, transparent 41%);
}

.bee-snow-ground {
    position: absolute;
    inset: auto 0 0;
    height: clamp(14rem, 34vh, 25rem);
    background:
        linear-gradient(90deg, #08132010, #081320a6 44%, #081320a6 56%, #08132010),
        url("img/bee-snow-ground.jpg") center bottom / cover no-repeat;
    mask-image: linear-gradient(to bottom, transparent, #000 60%);
}

.theme-light .bee-snow-ground { opacity: .65; }

@media (max-width: 700px) {
    .bee-snow-ground {
        height: 12rem;
        background-size: auto, auto 24rem;
        background-position: center, 31% bottom;
        opacity: .72;
    }
}

.bee-winter .bee-snowflake:nth-child(7n) {
    background: transparent;
    box-shadow: none;
}

.bee-winter .bee-snowflake:nth-child(7n)::before {
    content: "❄";
    color: #daf3ff;
    font: .7rem/1 system-ui, sans-serif;
    text-shadow: 0 0 8px #88caff;
}

.bee-winter.theme-light .bee-snowflake:nth-child(7n)::before { color: #447aa6; }

.bee-winter .main-navbar,
.bee-winter.bee-offline header {
    background: var(--bee-frost), var(--bg-card) !important;
    border-bottom: 1px solid var(--bee-ice-border) !important;
    box-shadow: 0 4px 24px #07182b32;
}

.bee-winter .bee-navbar-mark,
.bee-winter .brand-mark {
    background: linear-gradient(145deg, #f3fbff, #8dcaf4 50%, #4a7eb8);
}

.bee-winter.theme-dark :is(.text-xez-primary, .bee-browse-heading a, .bee-item-bottom strong, .home-stat-value, .main-navbar .nav-link i) {
    color: var(--bee-ice) !important;
}

.bee-winter .bee-home,
.bee-winter.bee-offline .hero {
    border-color: #88c2e765;
    box-shadow: inset 0 1px #d9f4ff45, 0 18px 55px #030c1e65;
}

.bee-winter .bee-home h1 {
    background: linear-gradient(180deg, #fff 15%, #bfe7ff 75%, #89b7db);
    color: transparent;
    background-clip: text;
}

.bee-winter .bee-home-actions .bee-home-primary,
.bee-winter .btn-navbar-register,
.bee-winter.bee-offline .hero-action {
    background: linear-gradient(135deg, #e6f7ff, #9bd3ff) !important;
    color: var(--bee-ice-ink) !important;
    border-color: #b5e4ff;
}

.bee-winter .bee-home-actions .bee-home-primary:hover,
.bee-winter .btn-navbar-register:hover,
.bee-winter.bee-offline .hero-action:hover {
    background: #eefaff !important;
    box-shadow: 0 0 24px #80cbff53;
}

.bee-winter .xez-card,
.bee-winter .bee-item,
.bee-winter .bee-filters,
.bee-winter .home-stats-bar,
.bee-winter .bee-shortcuts a,
.bee-winter.bee-offline .toolbar,
.bee-winter.bee-offline li {
    background: var(--bee-frost), var(--bg-card);
    border-color: var(--bee-ice-border);
}

.bee-winter.theme-dark :is(.form-control, .form-select, .dropdown-menu, .modal-content) {
    background-color: var(--bg-input);
    border-color: var(--border-main);
    color: var(--text-heading);
}

.bee-winter.theme-dark .table > thead > tr > th {
    background-color: var(--bg-card-alt);
    color: var(--text-body) !important;
}

.bee-winter.bee-offline { background: var(--bg-body); color: var(--text-heading); }
.bee-winter.bee-offline :is(input, select) { background: var(--bg-input); border-color: var(--border-main); }
.bee-winter.bee-offline :is(li .price, h1 span) { color: var(--bee-ice); }

.bee-winter {
    --bee-winter-link: #245b85;
    --bee-control-ring: #3f86bb75;
}

.bee-winter.theme-dark {
    --bee-winter-link: #a8ddff;
    --bee-control-ring: #9edcff70;
}

.bee-winter :is(.btn-primary, .xez-btn-cyan, .xdvz-btn-cyan, .btn-topup-confirm, .bee-quick-link, .swal2-confirm) {
    background: linear-gradient(135deg, #effaff, #a5d7f6) !important;
    border-color: #a3cde7;
    color: #123652 !important;
    box-shadow: 0 4px 14px #4384b126;
}

.bee-winter :is(.btn-primary, .xez-btn-cyan, .xdvz-btn-cyan, .btn-topup-confirm, .bee-quick-link, .swal2-confirm):hover {
    background: #d9f2ff !important;
    color: #0b2b48 !important;
}

.bee-winter :is(.btn-outline-primary, .xez-btn-outline, .xdvz-btn-outline, .bee-item-actions button, .bee-more) {
    border-color: var(--bee-ice-border);
    color: var(--bee-winter-link);
}

.bee-winter :is(.btn-outline-primary, .xez-btn-outline, .xdvz-btn-outline, .bee-item-actions button, .bee-more):hover {
    background: var(--bg-card-alt);
    color: var(--bee-winter-link);
    border-color: currentColor;
}

.bee-winter :is(.form-control, .form-select, .bee-filters input, .bee-filters select):focus {
    border-color: var(--bee-winter-link) !important;
    box-shadow: 0 0 0 .2rem var(--bee-control-ring);
}

.bee-winter.theme-dark :is(.form-control, .form-select) {
    background-color: var(--bg-input) !important;
    border-color: var(--border-main);
}

.bee-winter :is(.form-check-input, input[type="checkbox"]) { accent-color: #8dc7ec; }
.bee-winter .form-check-input:checked { background-color: #29658f; border-color: #74afd5; }
.bee-winter .form-control::placeholder { color: var(--text-muted); }

.bee-winter .list-group-item {
    background-color: transparent;
    border-color: var(--border-main);
    color: var(--text-body);
}

.bee-winter .list-group-item-action:hover,
.bee-winter .dropdown-item:hover {
    background: var(--bg-card-alt);
    color: var(--text-heading);
}

.bee-winter .admin-sidebar .list-group-item.active,
.bee-winter .list-group-item.active {
    background: linear-gradient(105deg, #ccecff, #8fc2e8);
    border-color: #a3cde7;
    color: var(--bee-ice-ink) !important;
}

.bee-winter .admin-sidebar .list-group-item.active i { color: inherit !important; }
.bee-winter .dropdown-item:not(.text-danger):not(.text-primary) { color: var(--text-body); }

.bee-winter.theme-dark .table {
    --bs-table-color: var(--text-body);
    --bs-table-hover-color: var(--text-heading);
    --bs-table-hover-bg: #17324a;
    --bs-table-striped-color: var(--text-body);
    --bs-table-striped-bg: #12263a;
    border-color: var(--border-main);
}

.bee-winter.theme-dark :is(.table .text-dark, .admin-sidebar .text-dark, .modal-content .text-dark) {
    color: var(--text-heading) !important;
}

.bee-winter .dataTables_wrapper :is(.dataTables_filter input, .dataTables_length select) {
    background: var(--bg-input);
    border-color: var(--border-main);
    color: var(--text-heading);
}

.bee-winter .dataTables_wrapper .dataTables_paginate .paginate_button.current {
    background: #d5efff !important;
    border-color: #9bc9e7;
    color: #123652 !important;
}

.bee-winter :is(.modal-content, .swal2-popup, #bee-quick) {
    background: var(--bee-frost), var(--bg-card);
    border: 1px solid var(--bee-ice-border);
    color: var(--text-heading);
    box-shadow: 0 20px 64px #020b1c60;
}

.bee-winter :is(.modal-header, .modal-footer) { border-color: var(--border-main); }
.bee-winter.theme-dark .modal .btn-close { filter: invert(1) grayscale(1); }
.bee-winter .swal2-title { color: var(--text-heading); }
.bee-winter .swal2-html-container { color: var(--text-body); }
.bee-winter.bee-offline #refresh { background: var(--bg-card-alt); color: var(--bee-ice); }

.bee-winter :is(.bee-browse-heading h2, .catalog-heading h2, .bee-auth-heading, .bee-admin-content h3, .container.py-5 h1, .admin-sidebar h5) {
    color: var(--text-heading);
}

.bee-winter :is(.bee-browse-heading h2, .catalog-heading h2, .bee-auth-heading, .bee-admin-content h3, .container.py-5 h1)::before {
    content: "❄" / "";
    display: inline-block;
    margin-inline-end: .42em;
    color: var(--bee-winter-link);
    font: .65em/1 system-ui, sans-serif;
    vertical-align: .14em;
}

.bee-winter :is(.bee-browse-heading, .catalog-heading, .admin-sidebar .list-group) {
    padding-bottom: .65rem;
    border-bottom: 1px solid var(--bee-ice-border);
}

.bee-winter :is(.bee-home-primary, .btn-navbar-register, .bee-auth-form button[type="submit"], .bee-quick-link, .hero-action) {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    box-shadow: inset 0 1px #fff9, 0 4px 16px #7dbce338;
}

.bee-winter :is(.bee-home-primary, .btn-navbar-register, .bee-auth-form button[type="submit"], .bee-quick-link, .hero-action)::after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(112deg, transparent 26%, #ffffffa3 49%, transparent 69%);
    opacity: 0;
    transform: translateX(-100%);
}

@media (prefers-reduced-motion: no-preference) {
    .bee-winter :is(.bee-home-primary, .btn-navbar-register, .bee-auth-form button[type="submit"], .bee-quick-link, .hero-action):is(:hover, :focus-visible)::after {
        animation: bee-ice-reflection .7s ease-out;
    }
}

@keyframes bee-ice-reflection {
    40% { opacity: .85; }
    to { opacity: 0; transform: translateX(100%); }
}

.bee-winter :is(.bee-browse-heading h2, .catalog-heading h2)::before {
    display: inline-grid;
    place-items: center;
    width: 1.8em;
    height: 1.8em;
    margin-inline-end: .55em;
    border: 1px solid #88c6e7;
    border-radius: .45em;
    background: linear-gradient(145deg, #effaff, #9ad5f7);
    color: #194d70;
    box-shadow: 0 0 16px #70c2f052;
    vertical-align: .15em;
}

.bee-winter .bee-item {
    box-shadow: inset 0 1px #d6f5ff50, 0 10px 28px #030c1b55;
}

.bee-winter .bee-item-media {
    border-bottom: 1px solid #9ddbf477;
}

.bee-winter .bee-item-actions [data-quick] {
    background: linear-gradient(145deg, #eefaff, #a6dbfa);
    border-color: #c0ecff;
    color: #123b5c;
    font-weight: 700;
    box-shadow: 0 3px 14px #7bc7ee40;
}

.bee-winter .bee-item-actions [data-quick]:hover {
    background: #f0fbff;
    color: #0a304e;
}

.bee-winter .bee-item-actions [data-quick] span { margin-inline-end: .15em; }
.bee-winter .bee-item-actions [data-save] { border-color: #80b5d480; }

.bee-winter :is(.bee-featured-categories, .bee-home-shortcuts) a {
    display: block;
    border-radius: 1rem;
}

.bee-winter :is(.bee-featured-categories, .bee-home-shortcuts, .site-footer) a:focus-visible {
    outline: 2px solid var(--bee-winter-link);
    outline-offset: 4px;
}

.bee-winter :is(.bee-featured-categories .cat-card-horizontal, .bee-home-shortcuts .home-nav-card) {
    position: relative;
    overflow: hidden;
    border-color: #83b8d780;
    background: radial-gradient(ellipse at 85% 0%, #8ed6ff38, transparent 70%), var(--bg-card);
    box-shadow: inset 0 2px #e2f7ff9e, 0 8px 22px #06112033;
    color: var(--text-heading);
}

.bee-winter .bee-home-shortcuts .home-nav-card {
    background:
        radial-gradient(circle at 14% 27%, #d5f4ffbb 1px, transparent 2px),
        radial-gradient(circle at 82% 40%, #c0e9ff99 1px, transparent 2px),
        radial-gradient(circle at 88% 18%, #c0e9ff77 1px, transparent 2px),
        radial-gradient(ellipse at 50% 0%, #87d6ff4f, transparent 75%),
        var(--bg-card);
}

.bee-winter .bee-home-shortcuts .home-nav-card::before {
    content: "❄";
    position: absolute;
    inset: .35rem .65rem auto auto;
    color: var(--bee-winter-link);
    opacity: .65;
    pointer-events: none;
}

.bee-winter .bee-home-shortcuts .home-nav-icon {
    color: #164365;
    border: 1px solid #e1f6ff;
    border-radius: 1.05rem;
    background: linear-gradient(145deg, #f1fcff, #9ed8f5 65%, #65a8d4);
    box-shadow: inset 0 1px 2px #fff, 0 0 1.15rem #8edbff55;
}

.bee-winter .bee-featured-categories .cat-card-img {
    border: 1px solid #a4dcff99;
    box-shadow: 0 0 .75rem #86d3ff33;
}

.bee-winter .bee-featured-categories .cat-card-action i { color: var(--bee-winter-link) !important; }

.bee-winter :is(.bee-featured-categories, .bee-home-shortcuts) a:is(:hover, :focus-visible) .xez-card {
    border-color: var(--bee-winter-link);
    box-shadow: inset 0 2px #e9faffcc, 0 0 1.25rem #75c9fb55;
}

@media (prefers-reduced-motion: reduce) {
    .bee-winter .bee-home-shortcuts .home-nav-card {
        transition: none;
        transform: none;
    }
}

.bee-winter .site-footer {
    --footer-ink: #eaf7ff;
    --footer-muted: #c3dcec;
    background:
        linear-gradient(110deg, #101f30 18%, #101f30ed 45%, #0d21368c),
        url("img/bee-snow-ground.jpg") right bottom / cover no-repeat,
        #101f30;
    border-top: 1px solid #b3def5;
    box-shadow: 0 -4px 25px #95d7ff4d, inset 0 2px #dbf5ff80;
    color: var(--footer-ink);
}

.bee-winter .site-footer a:focus-visible { outline-color: #b6e7ff; }

.bee-winter .site-footer .footer-logo {
    background: linear-gradient(145deg, #dff6ff38, #77bce71a);
    border: 1px solid #b8e4ff80;
    padding: .45rem;
    box-shadow: inset 0 1px #e3f7ffb3, 0 0 1.2rem #78c8f348;
}

.bee-winter .site-footer :is(.footer-title, .footer-heading) { color: var(--footer-ink); }
.bee-winter .site-footer :is(.footer-desc, .footer-links a, .footer-bottom) { color: var(--footer-muted); }
.bee-winter .site-footer :is(.footer-heading, .footer-links a i) { color: #b3e6ff; }
.bee-winter .site-footer .footer-links a:is(:hover, :focus-visible) { color: #fff; }

.bee-winter .site-footer .footer-bottom {
    border-color: #b1e0ff55;
    background: #0814247a;
    margin-bottom: -30px;
    padding-bottom: 30px;
}
