/* /var/www/alessio-site/public/assets/css/leaderboards.css */

:root{
  --gt-brand: #0C7489;
  --gt-brand-contrast: #ffffff;

  --gt-bg: #D7D9CE;
  --gt-card: #ffffff;
  --gt-text: #040404;
  --gt-muted: rgba(4,4,4,.65);
  --gt-border: rgba(19,80,91,.22);
  --gt-shadow: 0 10px 30px rgba(4,4,4,.08);

  --bs-body-bg: var(--gt-bg);
  --bs-body-color: var(--gt-text);
  --bs-secondary-color: rgba(4,4,4,.65);
  --bs-border-color: var(--gt-border);
}

[data-bs-theme="dark"]{
  --gt-brand: #FEE715;
  --gt-brand-contrast: #101820;

  --gt-bg: #101820;
  --gt-card: color-mix(in srgb, #121C26 92%, var(--gt-brand));
  --gt-text: #e9eef5;
  --gt-muted: rgba(233,238,245,.70);
  --gt-border: rgba(255,255,255,.12);
  --gt-shadow: 0 10px 30px rgba(0,0,0,.35);

  --bs-body-bg: var(--gt-bg);
  --bs-body-color: var(--gt-text);
  --bs-secondary-color: var(--gt-muted);
  --bs-border-color: var(--gt-border);
}

body{
  background: var(--gt-bg);
  color: var(--gt-text);
}

#gt-navbar-logo{
  filter: drop-shadow(0 0 6px rgba(255,255,255,.35)) drop-shadow(0 2px 6px rgba(0,0,0,.35));
}

.shiny-text{
  display: inline-block;
  background: linear-gradient(
    110deg,
    var(--gt-text) 0%,
    color-mix(in srgb, var(--gt-text) 45%, var(--gt-brand)) 35%,
    var(--gt-text) 70%
  );
  background-size: 200% 100%;
  color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  animation: gtShine 8s linear infinite;
}

@keyframes gtShine{
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

@media (prefers-reduced-motion: reduce){
  .shiny-text{ animation: none; }
}

@media (max-width: 768px){
  .shiny-text{ animation: none; }
}

/* Galaxy background canvas */
#gt-galaxy-bg{
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  z-index: 0;
  pointer-events: none;
  opacity: 0.9;
}

[data-bs-theme="light"] #gt-galaxy-bg{
  opacity: 0.55;
}

nav.navbar,
main{
  position: relative;
  z-index: 1;
}

/* Nav game modes container */
.gt-nav-modes {
  background: color-mix(in srgb, var(--gt-bg) 85%, #ffffff);
  border-color: color-mix(in srgb, var(--gt-border) 70%, transparent) !important;
}

.gt-card{
  background: var(--gt-card);
  border: 1px solid var(--gt-border);
  border-radius: 16px;
  box-shadow: var(--gt-shadow);
}

.gt-intro h1{ letter-spacing: .2px; }

.gt-tabs .nav-link{
  border-top-left-radius: 14px;
  border-top-right-radius: 14px;
}

.gt-mod{
  position: relative;
  transition: transform .12s ease, box-shadow .12s ease, filter .12s ease;
}

.gt-mod:hover{
  transform: translateY(-1px);
  filter: brightness(1.02);
}

.gt-mod-head{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.gt-mod-title{
  font-weight: 800;
  letter-spacing: .2px;
}

.gt-mod-sub{
  font-size: 12px;
  color: var(--gt-muted) !important;
}

.gt-mod-actions{
  display: none;
  align-items: center;
  gap: 6px;
}

.gt-big-sm{
  font-size: 24px;
  font-weight: 900;
  line-height: 1.15;
}

.gt-lb-modules.gt-lb-editing .gt-mod-actions{
  display: flex;
}

.gt-lb-modules.gt-lb-editing .gt-mod-col{
  cursor: grab;
}

.gt-lb-modules .gt-mod-col.gt-drop-target .gt-mod{
  outline: 2px dashed color-mix(in srgb, var(--gt-brand) 55%, transparent);
  outline-offset: 4px;
}

.gt-lb-table{
  color: var(--gt-text);
}

.gt-lb-table thead th{
  border-bottom-color: var(--gt-border);
}

.gt-lb-table tbody td{
  border-top-color: var(--gt-border);
}

.gt-lb-row-me{
  background: color-mix(in srgb, var(--gt-brand) 12%, transparent);
}

.gt-flag{
  display: inline-block;
  width: 1.2em;
  text-align: center;
  font-size: 1.05em;
  line-height: 1;
  font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Twemoji Mozilla", sans-serif;
}

.gt-lb-country{
  white-space: nowrap;
}

.gt-lb-country-wrap{
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.gt-country-label{
  display: inline-block;
}
