.KarmaMeter-btn { gap: 6px; }
.KarmaMeter-track {
    position: relative;
    display: inline-block;
    width: 26px;
    height: 14px;
    flex-shrink: 0;
}
.KarmaMeter-track::before {
    content: '';
    position: absolute;
    left: 4px;
    right: 4px;
    top: 50%;
    height: 2px;
    border-radius: 1px;
    background: currentColor;
    opacity: 0.3;
    transform: translateY(-50%);
}
.KarmaMeter-fill {
    position: absolute;
    left: 4px;
    top: 50%;
    height: 2px;
    border-radius: 1px;
    background: currentColor;
    opacity: 0.9;
    transform: translateY(-50%);
    transition: width 0.15s ease;
}
.KarmaMeter-knob {
    position: absolute;
    top: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 0 2px var(--karma-meter-knob-ring, rgba(255, 255, 255, 0.6));
    transform: translate(-50%, -50%);
    transition: left 0.15s ease;
}
html.les-karma-dark .KarmaMeter-knob { --karma-meter-knob-ring: rgba(0, 0, 0, 0.5); }
@media (prefers-color-scheme: dark) {
    html:not(.les-karma-explicit-light) .KarmaMeter-knob { --karma-meter-knob-ring: rgba(0, 0, 0, 0.5); }
}
.KarmaMeter-btn--mobile .KarmaMeter-track { width: 30px; height: 16px; }
.KarmaMeter-label { font-size: inherit; }

.karma-widget {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    margin-left: 8px;
    vertical-align: middle;
    font-size: inherit;
}
.karma-btn {
    background: none;
    border: 1px solid #ccc;
    border-radius: 3px;
    padding: 1px 5px;
    cursor: pointer;
    color: #888;
    line-height: 1;
    font-size: 0.9em;
    transition: background 0.15s, color 0.15s;
}
.karma-btn:hover  { background: #f0f0f0; color: #333; }
.karma-btn.karma-active.karma-up   { background: #e8f5e9; border-color: #4caf50; color: #2e7d32; }
.karma-btn.karma-active.karma-down { background: #fce4ec; border-color: #e91e63; color: #880e4f; }
.karma-score {
    min-width: 24px;
    text-align: center;
    font-weight: 600;
    color: #555;
}
.karma-gift-wrap { display: inline-flex; align-items: center; gap: 3px; margin-left: 4px; }
.karma-gift-input { width: 54px; padding: 1px 4px; font-size: 0.85em; border: 1px solid #ccc; border-radius: 3px; -moz-appearance: textfield; }
.karma-gift-input::-webkit-inner-spin-button,
.karma-gift-input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.karma-gift-send  { padding: 2px 6px; font-size: 0.78em; cursor: pointer; background: #fff8e1; border: 1px solid #f9a825; border-radius: 3px; color: #6d4c00; }
.karma-gift-send:hover { background: #fff3cd; }

.les-karma-glow-1,.les-karma-glow-2,.les-karma-glow-3,.les-karma-glow-4,.les-karma-glow-5,
.les-karma-glow-6,.les-karma-glow-7,.les-karma-glow-8,.les-karma-glow-9,
.les-karma-glow-10,.les-karma-glow-11 {
    position: relative !important;
    z-index: 0;
    background: transparent !important;
    box-shadow: none !important;
}

@keyframes les-s1  { 0%,74%{background-position:-110% 0,0 0} 100%{background-position:230% 0,0 0} }
@keyframes les-s2  { 0%,71%{background-position:-110% 0,0 0} 100%{background-position:230% 0,0 0} }
@keyframes les-s3  { 0%,68%{background-position:-110% 0,0 0} 100%{background-position:230% 0,0 0} }
@keyframes les-s4  { 0%,65%{background-position:-110% 0,0 0} 100%{background-position:230% 0,0 0} }
@keyframes les-s5  { 0%,62%{background-position:-110% 0,0 0} 100%{background-position:230% 0,0 0} }
@keyframes les-s6  { 0%,58%{background-position:-110% 0,0 0} 100%{background-position:230% 0,0 0} }
@keyframes les-s7  { 0%,54%{background-position:-110% 0,0 0} 100%{background-position:230% 0,0 0} }
@keyframes les-s8  { 0%,50%{background-position:-110% 0,0 0} 100%{background-position:230% 0,0 0} }
@keyframes les-s9  { 0%,45%{background-position:-110% 0,0 0} 100%{background-position:230% 0,0 0} }
@keyframes les-s10 { 0%,40%{background-position:-110% 0,0 0} 100%{background-position:230% 0,0 0} }
@keyframes les-s11 { 0%{background-position:0% 0} 100%{background-position:100% 0} }

.les-karma-glow-1 {
    background:
        linear-gradient(90deg, transparent 20%, rgba(255,255,255,.45) 50%, transparent 80%) no-repeat,
        linear-gradient(90deg, rgba(0,80,220,.58) 0%, rgba(0,80,220,.52) 7%, rgba(0,80,220,.12) 10%, transparent 13%) !important;
    background-size: 40% 100%, 100% 100% !important;
    animation: les-s1 5s ease-out infinite !important;
}
.les-karma-glow-2 {
    background:
        linear-gradient(90deg, transparent 20%, rgba(255,255,255,.46) 50%, transparent 80%) no-repeat,
        linear-gradient(90deg, rgba(0,150,255,.60) 0%, rgba(0,150,255,.54) 16%, rgba(0,150,255,.12) 19%, transparent 22%) !important;
    background-size: 40% 100%, 100% 100% !important;
    animation: les-s2 4.5s ease-out infinite !important;
}
.les-karma-glow-3 {
    background:
        linear-gradient(90deg, transparent 20%, rgba(255,255,255,.47) 50%, transparent 80%) no-repeat,
        linear-gradient(90deg, rgba(0,210,255,.60) 0%, rgba(0,210,255,.54) 25%, rgba(0,210,255,.12) 28%, transparent 32%) !important;
    background-size: 40% 100%, 100% 100% !important;
    animation: les-s3 4s ease-out infinite !important;
}
.les-karma-glow-4 {
    background:
        linear-gradient(90deg, transparent 20%, rgba(255,255,255,.48) 50%, transparent 80%) no-repeat,
        linear-gradient(90deg, rgba(0,200,80,.61) 0%, rgba(0,200,80,.55) 34%, rgba(0,200,80,.12) 37%, transparent 41%) !important;
    background-size: 40% 100%, 100% 100% !important;
    animation: les-s4 3.5s ease-out infinite !important;
}
.les-karma-glow-5 {
    background:
        linear-gradient(90deg, transparent 20%, rgba(255,255,255,.49) 50%, transparent 80%) no-repeat,
        linear-gradient(90deg, rgba(80,220,0,.62) 0%, rgba(80,220,0,.56) 43%, rgba(80,220,0,.12) 46%, transparent 50%) !important;
    background-size: 40% 100%, 100% 100% !important;
    animation: les-s5 3s ease-out infinite !important;
}
.les-karma-glow-6 {
    background:
        linear-gradient(90deg, transparent 20%, rgba(255,255,255,.50) 50%, transparent 80%) no-repeat,
        linear-gradient(90deg, rgba(220,200,0,.63) 0%, rgba(220,200,0,.57) 52%, rgba(220,200,0,.12) 55%, transparent 59%) !important;
    background-size: 40% 100%, 100% 100% !important;
    animation: les-s6 2.5s ease-out infinite !important;
}
.les-karma-glow-7 {
    background:
        linear-gradient(90deg, transparent 20%, rgba(255,255,255,.52) 50%, transparent 80%) no-repeat,
        linear-gradient(90deg, rgba(255,140,0,.65) 0%, rgba(255,140,0,.58) 61%, rgba(255,140,0,.13) 64%, transparent 68%) !important;
    background-size: 40% 100%, 100% 100% !important;
    animation: les-s7 2s ease-out infinite !important;
}
.les-karma-glow-8 {
    background:
        linear-gradient(90deg, transparent 20%, rgba(255,255,255,.54) 50%, transparent 80%) no-repeat,
        linear-gradient(90deg, rgba(255,60,0,.66) 0%, rgba(255,60,0,.60) 70%, rgba(255,60,0,.13) 73%, transparent 77%) !important;
    background-size: 40% 100%, 100% 100% !important;
    animation: les-s8 1.7s ease-out infinite !important;
}
.les-karma-glow-9 {
    background:
        linear-gradient(90deg, transparent 20%, rgba(255,255,255,.56) 50%, transparent 80%) no-repeat,
        linear-gradient(90deg, rgba(255,10,10,.68) 0%, rgba(255,10,10,.62) 79%, rgba(255,10,10,.14) 82%, transparent 86%) !important;
    background-size: 40% 100%, 100% 100% !important;
    animation: les-s9 1.4s ease-out infinite !important;
}
.les-karma-glow-10 {
    background:
        linear-gradient(90deg, transparent 20%, rgba(255,255,255,.58) 50%, transparent 80%) no-repeat,
        linear-gradient(90deg, rgba(200,0,80,.70) 0%, rgba(255,0,0,.68) 5%, rgba(255,0,0,.62) 88%, rgba(255,0,0,.14) 92%, transparent 96%) !important;
    background-size: 40% 100%, 100% 100% !important;
    animation: les-s10 1.1s ease-out infinite !important;
}
.les-karma-glow-11 {
    background: linear-gradient(90deg,
        rgba(255,0,0,.62),
        rgba(255,120,0,.58) 14%,
        rgba(255,230,0,.58) 28%,
        rgba(0,255,100,.58) 42%,
        rgba(0,200,255,.58) 57%,
        rgba(140,0,255,.58) 71%,
        rgba(255,0,150,.58) 86%,
        rgba(255,0,0,.62) 100%) !important;
    background-size: 200% 100% !important;
    animation: les-s11 2s linear infinite !important;
}

@keyframes les-trex-run {
    0%, 100% { box-shadow:
        0px 3px 0 3px #535353,  2px 2px 0 3px #535353,   9px 3px 0 2px #535353,
        8px 0px 0 2px #535353, -2px 9px 0 2px #535353,   0px 15px 0 2px #535353,
        -1px 10px 0 2px #535353, -6px 17px 0 5px #535353, -5px 9px 0 0 #535353,
        -6px 12px 0 2px #535353, 8px 8px 0 0 #535353,    6px 8px 0 0 #535353,
        5px 8px 0 0 #535353,    3px 8px 0 0 #535353,     3px 12px 0 0 #535353,
        5px 12px 0 0 #535353,   5px 14px 0 0 #535353,   -1px 19px 0 1px #535353,
        -4px 23px 0 1px #535353, -3px 26px 0 0 #535353,  -9px 23px 0 2px #535353,
        -6px 23px 0 0 #535353,  -9px 26px 0 0 #535353,  -11px 26px 0 0 #535353,
        -11px 17px 0 3px #535353, -12px 21px 0 0 #535353, -15px 18px 0 0 #535353,
        -15px 15px 0 2px #535353, -18px 14px 0 0 #535353, -15px 12px 0 0 #535353,
        -17px 12px 0 0 #535353,  -17px 11px 0 0 #535353, -18px 12px 0 0 #535353,
        -18px 11px 0 0 #535353,  -18px 9px 0 0 #535353,  -18px 8px 0 0 #535353,
        2px -2px 0 0 #535353,    3px 0px 0 0 #535353,    5px -2px 0 0 #535353,
        -8px 0px 0 0 #535353,   -8px -3px 0 0 #535353,   -9px -2px 0 0 #535353,
        -12px -2px 0 0 #6e6e6e, -15px 0px 0 0 #6e6e6e,  -17px -3px 0 0 #6e6e6e;
        margin-top: 2px; }
    50% { box-shadow:
        0px 3px 0 3px #535353,  2px 2px 0 3px #535353,   9px 3px 0 2px #535353,
        8px 0px 0 2px #535353, -2px 9px 0 2px #535353,   0px 15px 0 2px #535353,
        -1px 10px 0 2px #535353, -6px 17px 0 5px #535353, -5px 9px 0 0 #535353,
        -6px 12px 0 2px #535353, 8px 8px 0 0 #535353,    6px 8px 0 0 #535353,
        5px 8px 0 0 #535353,    3px 8px 0 0 #535353,     3px 12px 0 0 #535353,
        5px 12px 0 0 #535353,   5px 14px 0 0 #535353,   -1px 19px 0 1px #535353,
        -4px 23px 0 1px #535353, -3px 26px 0 0 #535353,  -9px 23px 0 2px #535353,
        -6px 23px 0 0 #535353,  -9px 26px 0 0 #535353,  -11px 26px 0 0 #535353,
        -11px 17px 0 3px #535353, -12px 21px 0 0 #535353, -15px 18px 0 0 #535353,
        -15px 15px 0 2px #535353, -18px 14px 0 0 #535353, -15px 12px 0 0 #535353,
        -17px 12px 0 0 #535353,  -17px 11px 0 0 #535353, -18px 12px 0 0 #535353,
        -18px 11px 0 0 #535353,  -18px 9px 0 0 #535353,  -18px 8px 0 0 #535353,
        0px -2px 0 0 #535353,    2px 0px 0 0 #535353,
        -3px 0px 0 0 #535353,   -5px 0px 0 0 #535353,   -5px -2px 0 0 #535353;
        margin-top: 0px; }
}

[class*="les-karma-glow-"]::after {
    content: '';
    position: absolute;
    top: calc(50% - 13px);
    width: 2px;
    height: 2px;
    background: transparent;
    pointer-events: none;
    opacity: 0.35;
    z-index: -1;
    animation: les-trex-run 400ms steps(2) infinite;
}
.les-karma-glow-1::after  { left:  9%; }
.les-karma-glow-2::after  { left: 18%; }
.les-karma-glow-3::after  { left: 27%; }
.les-karma-glow-4::after  { left: 36%; }
.les-karma-glow-5::after  { left: 45%; }
.les-karma-glow-6::after  { left: 54%; }
.les-karma-glow-7::after  { left: 63%; }
.les-karma-glow-8::after  { left: 72%; }
.les-karma-glow-9::after  { left: 81%; }
.les-karma-glow-10::after { left: 90%; }
.les-karma-glow-11::after { left: calc(100% - 22px); }

[class*="les-karma-glow-"]::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.les-karma-glow-1::before {
    background:
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 0    / 4px 4px no-repeat,
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 100% / 4px 4px no-repeat,
        linear-gradient(90deg,rgba(0,80,220,.82)   9%,transparent  9%) 0 0    / 100% 2px no-repeat,
        linear-gradient(90deg,rgba(0,80,220,.82)   9%,transparent  9%) 0 100% / 100% 2px no-repeat,
        linear-gradient(rgba(0,80,220,.82),rgba(0,80,220,.82)) 0 0 / 2px 100% no-repeat;
}
.les-karma-glow-2::before {
    background:
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 0    / 4px 4px no-repeat,
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 100% / 4px 4px no-repeat,
        linear-gradient(90deg,rgba(0,150,255,.82)  18%,transparent 18%) 0 0    / 100% 2px no-repeat,
        linear-gradient(90deg,rgba(0,150,255,.82)  18%,transparent 18%) 0 100% / 100% 2px no-repeat,
        linear-gradient(rgba(0,150,255,.82),rgba(0,150,255,.82)) 0 0 / 2px 100% no-repeat;
}
.les-karma-glow-3::before {
    background:
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 0    / 4px 4px no-repeat,
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 100% / 4px 4px no-repeat,
        linear-gradient(90deg,rgba(0,210,255,.82)  27%,transparent 27%) 0 0    / 100% 2px no-repeat,
        linear-gradient(90deg,rgba(0,210,255,.82)  27%,transparent 27%) 0 100% / 100% 2px no-repeat,
        linear-gradient(rgba(0,210,255,.82),rgba(0,210,255,.82)) 0 0 / 2px 100% no-repeat;
}
.les-karma-glow-4::before {
    background:
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 0    / 4px 4px no-repeat,
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 100% / 4px 4px no-repeat,
        linear-gradient(90deg,rgba(0,200,80,.82)   36%,transparent 36%) 0 0    / 100% 2px no-repeat,
        linear-gradient(90deg,rgba(0,200,80,.82)   36%,transparent 36%) 0 100% / 100% 2px no-repeat,
        linear-gradient(rgba(0,200,80,.82),rgba(0,200,80,.82)) 0 0 / 2px 100% no-repeat;
}
.les-karma-glow-5::before {
    background:
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 0    / 4px 4px no-repeat,
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 100% / 4px 4px no-repeat,
        linear-gradient(90deg,rgba(80,220,0,.82)   45%,transparent 45%) 0 0    / 100% 2px no-repeat,
        linear-gradient(90deg,rgba(80,220,0,.82)   45%,transparent 45%) 0 100% / 100% 2px no-repeat,
        linear-gradient(rgba(80,220,0,.82),rgba(80,220,0,.82)) 0 0 / 2px 100% no-repeat;
}
.les-karma-glow-6::before {
    background:
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 0    / 4px 4px no-repeat,
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 100% / 4px 4px no-repeat,
        linear-gradient(90deg,rgba(220,200,0,.82)  54%,transparent 54%) 0 0    / 100% 2px no-repeat,
        linear-gradient(90deg,rgba(220,200,0,.82)  54%,transparent 54%) 0 100% / 100% 2px no-repeat,
        linear-gradient(rgba(220,200,0,.82),rgba(220,200,0,.82)) 0 0 / 2px 100% no-repeat;
}
.les-karma-glow-7::before {
    background:
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 0    / 4px 4px no-repeat,
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 100% / 4px 4px no-repeat,
        linear-gradient(90deg,rgba(255,140,0,.82)  63%,transparent 63%) 0 0    / 100% 2px no-repeat,
        linear-gradient(90deg,rgba(255,140,0,.82)  63%,transparent 63%) 0 100% / 100% 2px no-repeat,
        linear-gradient(rgba(255,140,0,.82),rgba(255,140,0,.82)) 0 0 / 2px 100% no-repeat;
}
.les-karma-glow-8::before {
    background:
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 0    / 4px 4px no-repeat,
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 100% / 4px 4px no-repeat,
        linear-gradient(90deg,rgba(255,60,0,.82)   72%,transparent 72%) 0 0    / 100% 2px no-repeat,
        linear-gradient(90deg,rgba(255,60,0,.82)   72%,transparent 72%) 0 100% / 100% 2px no-repeat,
        linear-gradient(rgba(255,60,0,.82),rgba(255,60,0,.82)) 0 0 / 2px 100% no-repeat;
}
.les-karma-glow-9::before {
    background:
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 0    / 4px 4px no-repeat,
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 100% / 4px 4px no-repeat,
        linear-gradient(90deg,rgba(255,10,10,.82)  81%,transparent 81%) 0 0    / 100% 2px no-repeat,
        linear-gradient(90deg,rgba(255,10,10,.82)  81%,transparent 81%) 0 100% / 100% 2px no-repeat,
        linear-gradient(rgba(255,10,10,.82),rgba(255,10,10,.82)) 0 0 / 2px 100% no-repeat;
}
.les-karma-glow-10::before {
    background:
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 0    / 4px 4px no-repeat,
        linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)) 0 100% / 4px 4px no-repeat,
        linear-gradient(90deg,rgba(255,0,0,.84)    90%,transparent 90%) 0 0    / 100% 2px no-repeat,
        linear-gradient(90deg,rgba(255,0,0,.84)    90%,transparent 90%) 0 100% / 100% 2px no-repeat,
        linear-gradient(rgba(180,0,60,.82),rgba(255,0,0,.82)) 0 0 / 2px 100% no-repeat;
}
.les-karma-glow-11::before {
    background:
        linear-gradient(rgba(255,255,255,.95),rgba(255,255,255,.95)) 0 0    / 4px 4px no-repeat,
        linear-gradient(rgba(255,255,255,.95),rgba(255,255,255,.95)) 0 100% / 4px 4px no-repeat,
        linear-gradient(90deg,#f00,#f70 18%,#fd0 36%,#0f8 54%,#08f 72%,#c0f 100%) 0 0    / 100% 2px no-repeat,
        linear-gradient(90deg,#f00,#f70 18%,#fd0 36%,#0f8 54%,#08f 72%,#c0f 100%) 0 100% / 100% 2px no-repeat,
        linear-gradient(#f00,#c0f) 0 0 / 2px 100% no-repeat;
}

.les-karma-grey-1,.les-karma-grey-2,.les-karma-grey-3,
.les-karma-grey-4,.les-karma-grey-5 { position: relative !important; z-index: 0; }

.les-karma-grey-1 > * { filter: grayscale(60%) brightness(0.88); opacity: 0.78; }
.les-karma-grey-2 > * { filter: grayscale(88%) brightness(0.65) saturate(0.15); opacity: 0.55; }
.les-karma-grey-3 > * { filter: grayscale(100%) brightness(0.40); opacity: 0.32; }
.les-karma-grey-4 > * { filter: grayscale(100%) brightness(0.28) saturate(0); opacity: 0.22; }
.les-karma-grey-5 > * { filter: grayscale(100%) brightness(0.15) saturate(0); opacity: 0.14; }

.les-karma-grey-2 { background: rgba(0,0,0,.07) !important; }
.les-karma-grey-3 { background: rgba(0,0,0,.15) !important; }
.les-karma-grey-4 { background: rgba(0,0,0,.22) !important; }
.les-karma-grey-5 { background: rgba(0,0,0,.30) !important; }

.les-karma-grey-1::after,.les-karma-grey-2::after,.les-karma-grey-3::after,
.les-karma-grey-4::after,.les-karma-grey-5::after {
    position: absolute;
    right: 80px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.7em;
    pointer-events: none;
    z-index: 1;
    animation: les-skull-float 2s ease-in-out infinite;
}

@keyframes les-skull-float {
    0%, 100% { transform: translateY(-50%); }
    50%       { transform: translateY(calc(-50% - 4px)); }
}

.les-karma-grey-1::after { content: "\2620"; color: #888; opacity: 0.35; }
.les-karma-grey-2::after { content: "\2620\2620"; color: #8b4513; opacity: 0.45; }
.les-karma-grey-3::after { content: "\2620\2620\2620"; color: #8b0000; opacity: 0.55; }
.les-karma-grey-4::after { content: "\2620\2620\2620\2620"; color: #cc0000; font-size: 2.2em; opacity: 0.70; }
.les-karma-grey-5::after { content: "\2620\2620\2620\2620\2620"; color: #ff0000; font-size: 2.4em; opacity: 0.85; }

body.theme-dark .les-karma-grey-1::after { color: #ffffff; opacity: 0.5; }
body.theme-dark .les-karma-grey-2::after { color: #ffffff; opacity: 0.65; }
body.theme-dark .les-karma-grey-3::after { color: #ffffff; opacity: 0.75; }
body.theme-dark .les-karma-grey-4::after { color: #ffffff; opacity: 0.88; }
body.theme-dark .les-karma-grey-5::after { color: #ffffff; opacity: 1; }

.karma-tier-badge {
    display: inline-block;
    font-size: 12px;
    line-height: 1.5;
    padding: 0 3px;
    border-radius: 3px;
    margin-left: 4px;
    vertical-align: middle;
    font-weight: 600;
    white-space: nowrap;
    cursor: default;
}
.karma-tier-badge img { height: 14px; width: auto; vertical-align: middle; }
.karma-tier-badge.karma-tier-pleb     { background: #eceff1; color: #607d8b; }
.karma-tier-badge.karma-tier-user     { background: #e3f2fd; color: #1565c0; }
.karma-tier-badge.karma-tier-lesbian  { background: #fce4ec; color: #ad1457; }
.karma-tier-badge.karma-tier-winner   { background: #fff8e1; color: #f57f17; border: 1px solid #ffd54f; }
.karma-tier-badge.karma-tier-platinum { background: linear-gradient(135deg, #e0e0e0, #f5f5f5, #bdbdbd); color: #37474f; border: 1px solid #90a4ae; }

.karma-thanked-by { font-size: 0.82em; color: #777; margin: 4px 0 0 0; padding: 0; }
.karma-thanked-label { font-weight: 600; margin-right: 3px; }
.karma-thanked-name  { color: #555; }

.karma-tier-pleb .PhotoWrap { filter: grayscale(100%) brightness(0.52) contrast(0.82); opacity: 0.65; }
.karma-tier-pleb .Username  { color: #999 !important; text-decoration: line-through; text-decoration-color: #bbb; }

@keyframes karma-aura-lesbian {
    0%, 100% { box-shadow: 0 0 0 2px #ff1493, 0 0 5px 2px rgba(255,20,147,.38), 0 0 12px 5px rgba(255,20,147,.19); }
    50%       { box-shadow: 0 0 0 3px #ff69b4, 0 0 9px 4px rgba(255,105,180,.48), 0 0 21px 9px rgba(255,20,147,.28); }
}
.karma-tier-lesbian .PhotoWrap { animation: karma-aura-lesbian 1.9s ease-in-out infinite; }
.karma-tier-lesbian .Username  { color: #e0006a !important; font-weight: 700; text-shadow: 0 0 8px rgba(255,20,147,.55); }

@keyframes karma-aura-winner {
    0%, 100% { box-shadow: 0 0 0 2px #ffd700, 0 0 6px  3px rgba(255,215,0,.43),  0 0 15px 6px  rgba(255,165,0,.28),  0 0 30px 12px rgba(255,140,0,.14); }
    20%       { box-shadow: 0 0 0 4px #ffec00, 0 0 11px 5px rgba(255,236,0,.50),  0 0 28px 11px rgba(255,200,0,.36),  0 0 50px 20px rgba(255,165,0,.19); }
    50%       { box-shadow: 0 0 0 2px #ffa500, 0 0 5px  2px rgba(255,165,0,.38),  0 0 11px 5px  rgba(255,140,0,.24),  0 0 24px 10px rgba(255,100,0,.11); }
    75%       { box-shadow: 0 0 0 5px #ffe000, 0 0 13px 5px rgba(255,224,0,.50),  0 0 30px 12px rgba(255,200,0,.34),  0 0 55px 22px rgba(255,165,0,.16); }
}
@keyframes karma-username-winner {
    0%, 100% { text-shadow: 0 0 8px  rgba(255,215,0,.8),  0 0 22px rgba(255,165,0,.5); }
    50%       { text-shadow: 0 0 16px rgba(255,215,0,1.0), 0 0 40px rgba(255,165,0,.8); }
}
.karma-tier-winner .PhotoWrap { animation: karma-aura-winner 1.35s ease-in-out infinite; filter: brightness(1.06); }
.karma-tier-winner .Username  { color: #b8860b !important; font-weight: 700; animation: karma-username-winner 1.35s ease-in-out infinite; }

@keyframes karma-aura-platinum {
    0%    { box-shadow: 0 0 0 3px rgba(255,255,255,.95), 0 0 0 6px rgba(0,191,255,.85),   0 0 9px  4px  rgba(0,191,255,.38),   0 0 21px 9px  rgba(100,200,255,.28),  0 0 43px 17px rgba(173,216,230,.19); }
    25%   { box-shadow: 0 0 0 3px rgba(200,240,255,.98), 0 0 0 7px rgba(135,206,250,.92), 0 0 15px 6px  rgba(135,206,250,.43), 0 0 35px 14px rgba(100,180,255,.30),  0 0 65px 26px rgba(173,216,230,.23); }
    50%   { box-shadow: 0 0 0 4px rgba(255,255,255,1.0), 0 0 0 8px rgba(30,144,255,.98),  0 0 19px 8px  rgba(30,144,255,.45),  0 0 43px 17px rgba(0,191,255,.33),    0 0 80px 32px rgba(135,206,235,.25); }
    75%   { box-shadow: 0 0 0 3px rgba(220,240,255,.96), 0 0 0 6px rgba(100,200,255,.88), 0 0 12px 5px  rgba(100,200,255,.40), 0 0 28px 11px rgba(173,216,230,.28),  0 0 55px 22px rgba(135,206,250,.21); }
    100%  { box-shadow: 0 0 0 3px rgba(255,255,255,.95), 0 0 0 6px rgba(0,191,255,.85),   0 0 9px  4px  rgba(0,191,255,.38),   0 0 21px 9px  rgba(100,200,255,.28),  0 0 43px 17px rgba(173,216,230,.19); }
}
@keyframes karma-shimmer-platinum {
    0%   { background-position: -200% center; }
    100% { background-position:  200% center; }
}
.karma-tier-platinum .PhotoWrap { animation: karma-aura-platinum 1.2s ease-in-out infinite; filter: brightness(1.12) saturate(1.25); }
.karma-tier-platinum .Username  {
    font-weight: 700;
    background: linear-gradient(90deg, #87ceeb 0%, #ffffff 18%, #00bfff 36%, #ffffff 54%, #4169e1 72%, #87ceeb 100%);
    background-size: 200% auto;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: karma-shimmer-platinum 1.8s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
    .les-karma-glow-1,  .les-karma-glow-2,  .les-karma-glow-3,
    .les-karma-glow-4,  .les-karma-glow-5,  .les-karma-glow-6,
    .les-karma-glow-7,  .les-karma-glow-8,  .les-karma-glow-9,
    .les-karma-glow-10, .les-karma-glow-11,
    .karma-tier-lesbian .PhotoWrap,
    .karma-tier-winner .PhotoWrap,
    .karma-tier-winner .Username,
    .karma-tier-platinum .PhotoWrap,
    .karma-tier-platinum .Username { animation: none !important; }
    [class*="les-karma-glow-"]::after,
    [class*="les-karma-glow-"]::before,
    [class*="les-karma-grey-"]::after { animation: none !important; }
}

:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .les-karma-glow-1,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .les-karma-glow-2,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .les-karma-glow-3,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .les-karma-glow-4,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .les-karma-glow-5,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .les-karma-glow-6,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .les-karma-glow-7,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .les-karma-glow-8,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .les-karma-glow-9,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .les-karma-glow-10,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .les-karma-glow-11,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .karma-tier-lesbian .PhotoWrap,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .karma-tier-winner .PhotoWrap,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .karma-tier-winner .Username,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .karma-tier-platinum .PhotoWrap,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) .karma-tier-platinum .Username { animation: none !important; }
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) [class*="les-karma-glow-"]::after,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) [class*="les-karma-glow-"]::before,
:is(body.les-karma-reduced, body.les-karma-negative-only, body.les-karma-off) [class*="les-karma-grey-"]::after { animation: none !important; }


.karma-error { color: #c62828; font-size: 0.8em; margin-left: 4px; }

html.les-karma-dark .karma-btn           { border-color: #555; color: #aaa; }
html.les-karma-dark .karma-btn:hover     { background: #2a2a2a; color: #ddd; }
html.les-karma-dark .karma-btn.karma-active.karma-up   { background: #1a3520; border-color: #4caf50; color: #69f04a; }
html.les-karma-dark .karma-btn.karma-active.karma-down { background: #3a0e1e; border-color: #e91e63; color: #f48fb1; }
html.les-karma-dark .karma-score         { color: #ccc; }
html.les-karma-dark .karma-gift-input    { background: #1a1a1a; border-color: #555; color: #eee; }
html.les-karma-dark .karma-gift-send     { background: #2a2000; border-color: #f9a825; color: #ffe082; }
html.les-karma-dark .karma-gift-send:hover { background: #3a2e00; }
html.les-karma-dark .karma-gift-wrap.karma-gift-given { color: #aaa; }
html.les-karma-dark .karma-thanked-by   { color: #999; }
html.les-karma-dark .karma-thanked-name { color: #ccc; }
html.les-karma-dark .karma-error        { color: #ff8a80; }
html.les-karma-dark .karma-tier-badge.karma-tier-pleb     { background: #2a2a2a; color: #90a4ae; }
html.les-karma-dark .karma-tier-badge.karma-tier-user     { background: #0d2137; color: #64b5f6; }
html.les-karma-dark .karma-tier-badge.karma-tier-lesbian  { background: #3b0d1e; color: #f48fb1; }
html.les-karma-dark .karma-tier-badge.karma-tier-winner   { background: #2a2000; color: #ffd54f; border-color: #f9a825; }
html.les-karma-dark .karma-tier-badge.karma-tier-platinum { background: linear-gradient(135deg, #1a1a2e, #2a2a3e, #111122); color: #b0bec5; border-color: #546e7a; }
html.les-karma-dark .karma-tier-pleb .Username { color: #666 !important; text-decoration-color: #444; }
html.les-karma-dark .les-karma-grey-2 { background: rgba(255,255,255,.05) !important; }
html.les-karma-dark .les-karma-grey-3 { background: rgba(255,255,255,.03) !important; }
html.les-karma-dark [class*="les-karma-glow-"]::after { filter: invert(1); opacity: 0.55; }

@media (prefers-color-scheme: dark) {
    html:not(.les-karma-explicit-light) .karma-btn           { border-color: #555; color: #aaa; }
    html:not(.les-karma-explicit-light) .karma-btn:hover     { background: #2a2a2a; color: #ddd; }
    html:not(.les-karma-explicit-light) .karma-btn.karma-active.karma-up   { background: #1a3520; border-color: #4caf50; color: #69f04a; }
    html:not(.les-karma-explicit-light) .karma-btn.karma-active.karma-down { background: #3a0e1e; border-color: #e91e63; color: #f48fb1; }
    html:not(.les-karma-explicit-light) .karma-score         { color: #ccc; }
    html:not(.les-karma-explicit-light) .karma-gift-input    { background: #1a1a1a; border-color: #555; color: #eee; }
    html:not(.les-karma-explicit-light) .karma-gift-send     { background: #2a2000; border-color: #f9a825; color: #ffe082; }
    html:not(.les-karma-explicit-light) .karma-gift-send:hover { background: #3a2e00; }
    html:not(.les-karma-explicit-light) .karma-gift-wrap.karma-gift-given { color: #aaa; }
    html:not(.les-karma-explicit-light) .karma-thanked-by   { color: #999; }
    html:not(.les-karma-explicit-light) .karma-thanked-name { color: #ccc; }
    html:not(.les-karma-explicit-light) .karma-error        { color: #ff8a80; }
    html:not(.les-karma-explicit-light) .karma-tier-badge.karma-tier-pleb     { background: #2a2a2a; color: #90a4ae; }
    html:not(.les-karma-explicit-light) .karma-tier-badge.karma-tier-user     { background: #0d2137; color: #64b5f6; }
    html:not(.les-karma-explicit-light) .karma-tier-badge.karma-tier-lesbian  { background: #3b0d1e; color: #f48fb1; }
    html:not(.les-karma-explicit-light) .karma-tier-badge.karma-tier-winner   { background: #2a2000; color: #ffd54f; border-color: #f9a825; }
    html:not(.les-karma-explicit-light) .karma-tier-badge.karma-tier-platinum { background: linear-gradient(135deg, #1a1a2e, #2a2a3e, #111122); color: #b0bec5; border-color: #546e7a; }
    html:not(.les-karma-explicit-light) .karma-tier-pleb .Username { color: #666 !important; text-decoration-color: #444; }
    html:not(.les-karma-explicit-light) .les-karma-grey-2 { background: rgba(255,255,255,.05) !important; }
    html:not(.les-karma-explicit-light) .les-karma-grey-3 { background: rgba(255,255,255,.03) !important; }
    html:not(.les-karma-explicit-light) [class*="les-karma-glow-"]::after { filter: invert(1); opacity: 0.55; }
}

:is(body.les-karma-negative-only, body.les-karma-off) [class*="les-karma-glow-"] { background: transparent !important; }
:is(body.les-karma-negative-only, body.les-karma-off) [class*="les-karma-glow-"]::before { background: none !important; }
:is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-lesbian .Username {
    color: inherit !important;
    font-weight: inherit !important;
    text-shadow: none !important;
}
:is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-winner .Username {
    color: inherit !important;
    font-weight: inherit !important;
}
:is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-winner .PhotoWrap,
:is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-platinum .PhotoWrap {
    filter: none !important;
}
:is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-platinum .Username {
    background: none !important;
    -webkit-background-clip: initial !important;
    background-clip: initial !important;
    -webkit-text-fill-color: inherit !important;
    font-weight: inherit !important;
}
:is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-badge.karma-tier-lesbian,
:is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-badge.karma-tier-winner,
:is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-badge.karma-tier-platinum {
    background: #e3f2fd !important;
    color: #1565c0 !important;
    border: none !important;
}
html.les-karma-dark :is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-badge.karma-tier-lesbian,
html.les-karma-dark :is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-badge.karma-tier-winner,
html.les-karma-dark :is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-badge.karma-tier-platinum {
    background: #0d2137 !important;
    color: #64b5f6 !important;
}
@media (prefers-color-scheme: dark) {
    html:not(.les-karma-explicit-light) :is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-badge.karma-tier-lesbian,
    html:not(.les-karma-explicit-light) :is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-badge.karma-tier-winner,
    html:not(.les-karma-explicit-light) :is(body.les-karma-negative-only, body.les-karma-off) .karma-tier-badge.karma-tier-platinum {
        background: #0d2137 !important;
        color: #64b5f6 !important;
    }
}

body.les-karma-off .karma-tier-badge { display: none !important; }
body.les-karma-off .les-karma-grey-1 > *,
body.les-karma-off .les-karma-grey-2 > *,
body.les-karma-off .les-karma-grey-3 > *,
body.les-karma-off .les-karma-grey-4 > *,
body.les-karma-off .les-karma-grey-5 > * {
    filter: none !important;
    opacity: 1 !important;
}
body.les-karma-off .les-karma-grey-2,
body.les-karma-off .les-karma-grey-3,
body.les-karma-off .les-karma-grey-4,
body.les-karma-off .les-karma-grey-5 {
    background: transparent !important;
}
body.les-karma-off [class*="les-karma-grey-"]::after { content: none !important; }
body.les-karma-off .karma-tier-pleb .PhotoWrap {
    filter: none !important;
    opacity: 1 !important;
}
body.les-karma-off .karma-tier-pleb .Username {
    color: inherit !important;
    text-decoration: none !important;
}
