:root {
    --scrollbar-track: rgba(8, 47, 73, 0.24);
    --scrollbar-thumb: #06b6d4;
    --scrollbar-thumb-hover: #67e8f9;
    --scrollbar-thumb-active: #22d3ee;
}

html,
body {
    scrollbar-width: thin;
    scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-track);
    scrollbar-gutter: stable both-edges;
    scroll-behavior: smooth;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar,
*::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track,
*::-webkit-scrollbar-track {
    background: var(--scrollbar-track);
    border-radius: 999px;
    border: 1px solid rgba(103, 232, 249, 0.14);
}

html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb,
*::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #67e8f9 0%, var(--scrollbar-thumb) 58%, #0891b2 100%);
    border-radius: 999px;
    border: 2px solid rgba(8, 47, 73, 0.38);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.18);
}

html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover,
*::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, #a5f3fc 0%, var(--scrollbar-thumb-hover) 52%, var(--scrollbar-thumb) 100%);
    box-shadow: 0 0 0 1px rgba(103, 232, 249, 0.35);
}

html::-webkit-scrollbar-thumb:active,
body::-webkit-scrollbar-thumb:active,
*::-webkit-scrollbar-thumb:active {
    background: linear-gradient(180deg, var(--scrollbar-thumb-hover), var(--scrollbar-thumb-active));
}

html::-webkit-scrollbar-corner,
body::-webkit-scrollbar-corner,
*::-webkit-scrollbar-corner {
    background: transparent;
}

.rank-number {
    font-family: 'Orbitron', sans-serif;
    letter-spacing: 0.04em;
}

html[data-theme="soft"] body { background-color: rgb(30 41 59) !important; color: rgb(226 232 240) !important; }
html[data-theme="soft"] .dark\:bg-slate-950 { background-color: rgb(30 41 59) !important; }
html[data-theme="soft"] .dark\:bg-slate-900\/95,
html[data-theme="soft"] .dark\:bg-slate-800,
html[data-theme="soft"] .dark\:bg-slate-800\/50,
html[data-theme="soft"] .dark\:bg-slate-800\/40 { background-color: rgb(51 65 85) !important; }
html[data-theme="soft"] .dark\:border-slate-800,
html[data-theme="soft"] .dark\:border-slate-700 { border-color: rgb(100 116 139) !important; }
html[data-theme="soft"] .dark\:text-slate-300,
html[data-theme="soft"] .dark\:text-slate-400 { color: rgb(203 213 225) !important; }
html[data-theme="soft"] .shadow,
html[data-theme="soft"] .shadow-sm,
html[data-theme="soft"] .shadow-lg,
html[data-theme="soft"] .shadow-xl,
html[data-theme="soft"] .shadow-2xl { box-shadow: 0 14px 34px rgba(30, 41, 59, 0.42) !important; }

html[data-theme="dim"] body { background-color: #131d32 !important; color: rgb(226 232 240) !important; }
html[data-theme="dim"] .dark\:bg-slate-950 { background-color: #111a2e !important; }
html[data-theme="dim"] .dark\:bg-slate-900\/95,
html[data-theme="dim"] .dark\:bg-slate-800,
html[data-theme="dim"] .dark\:bg-slate-800\/50,
html[data-theme="dim"] .dark\:bg-slate-800\/40 { background-color: #162138 !important; }
html[data-theme="dim"] .dark\:border-slate-800,
html[data-theme="dim"] .dark\:border-slate-700 { border-color: #162138 !important; }
html[data-theme="dim"] .dark\:text-slate-300,
html[data-theme="dim"] .dark\:text-slate-400 { color: rgb(203 213 225) !important; }
html[data-theme="dim"] .shadow,
html[data-theme="dim"] .shadow-sm,
html[data-theme="dim"] .shadow-lg,
html[data-theme="dim"] .shadow-xl,
html[data-theme="dim"] .shadow-2xl { box-shadow: 0 16px 38px rgba(17, 26, 46, 0.46) !important; }
