/*
 * TÁ NO JOGO — CSS MESTRE 2026
 * Identidade visual central para todo o sistema.
 * Carregado por último: preserva funcionalidades e padroniza componentes.
 */
:root{
  --tt-navy:#0b1d3a;--tt-navy-strong:#07172f;--tt-navy-soft:#12305d;
  --tt-green:#22c55e;--tt-green-dark:#16a34a;--tt-green-soft:#eafbf0;
  --tt-blue-soft:#eef5ff;--tt-bg:#f4f7fb;--tt-surface:#fff;--tt-surface-soft:#f8fafc;
  --tt-text:#0f172a;--tt-muted:#64748b;--tt-border:rgba(15,23,42,.10);
  --tt-border-strong:rgba(15,23,42,.16);--tt-danger:#dc2626;--tt-warning:#f59e0b;
  --tt-info:#0284c7;--tt-radius-xs:9px;--tt-radius-sm:12px;--tt-radius-md:16px;
  --tt-radius-lg:20px;--tt-radius-xl:24px;--tt-shadow-xs:0 4px 14px rgba(15,23,42,.045);
  --tt-shadow-sm:0 9px 24px rgba(15,23,42,.065);--tt-shadow-md:0 16px 38px rgba(15,23,42,.085);
  --tt-speed:160ms ease;--tt-font:"Inter","Segoe UI",Arial,Helvetica,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--tt-bg);color:var(--tt-text);font-family:var(--tt-font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{text-decoration:none}img{max-width:100%}
:is(h1,h2,h3,h4,h5,h6,.page-title,.tt-page-title,.tt-section-title,.card-title,.modal-title){color:var(--tt-navy);letter-spacing:-.022em;font-weight:800}
:is(.text-muted,.tt-muted,.form-text,.card-subtitle,.small-muted,small){color:var(--tt-muted)!important}

/* Estrutura principal */
body.materialize-system,body.tt-mobile-app,body.tt-dashboard-body{background:var(--tt-bg)!important;color:var(--tt-text)!important}
body.materialize-system :is(.layout-page,.content-wrapper,.tt-content-container,.container-fluid,.container-xxl){background:transparent!important}
body.materialize-system #layout-menu,body.materialize-system .layout-menu{background:#fff!important;border-right:1px solid var(--tt-border)!important;box-shadow:6px 0 26px rgba(15,23,42,.04)!important}
body.materialize-system :is(.app-brand,.app-brand-link){color:var(--tt-navy)!important}
body.materialize-system .menu-header-text{color:#94a3b8!important;font-size:.68rem!important;font-weight:850!important;letter-spacing:.105em!important}
body.materialize-system .menu-link{min-height:42px;margin:.12rem .72rem!important;border:1px solid transparent!important;border-radius:12px!important;color:#334155!important;font-weight:700!important;transition:background-color var(--tt-speed),border-color var(--tt-speed),color var(--tt-speed),transform var(--tt-speed)!important}
body.materialize-system .menu-link :is(i,.menu-icon){color:var(--tt-green)!important}
body.materialize-system .menu-item:not(.active)>.menu-link:hover{background:rgba(34,197,94,.08)!important;border-color:rgba(34,197,94,.15)!important;color:var(--tt-navy)!important;transform:translateX(2px)}
body.materialize-system .menu-item.active>.menu-link:not(.menu-toggle){background:var(--tt-navy)!important;border-color:var(--tt-navy)!important;border-right:4px solid var(--tt-green)!important;color:#fff!important;box-shadow:0 12px 22px rgba(11,29,58,.16)!important}
body.materialize-system #layout-navbar,body.materialize-system .layout-navbar{background:#fff!important;border:1px solid var(--tt-border)!important;border-radius:18px!important;box-shadow:var(--tt-shadow-xs)!important}

/* Cards, caixas e blocos */
:is(.card,.tt-card,.tt-panel,.tt-box,.tt-config-card,.tt-dashboard-card,.top-card,.resumo-card,.empty-card,.form-container,.login-container,.team-card,.table-container,.dropdown-menu,.modal-content,.offcanvas){background:var(--tt-surface);border:1px solid var(--tt-border)!important;border-radius:var(--tt-radius-lg)!important;box-shadow:var(--tt-shadow-sm)!important}
body.materialize-system :is(.card,.tt-card,.tt-panel,.tt-box,.tt-config-card,.tt-dashboard-card){transition:transform var(--tt-speed),box-shadow var(--tt-speed),border-color var(--tt-speed)}
body.materialize-system :is(.card,.tt-card,.tt-panel,.tt-box,.tt-config-card,.tt-dashboard-card):hover{border-color:rgba(34,197,94,.20)!important;box-shadow:var(--tt-shadow-md)!important}
body.materialize-system .card{position:relative;overflow:hidden}
body.materialize-system .card::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--tt-green);opacity:1}
:is(.card-header,.tt-card-header){background:transparent!important;border-bottom:1px solid rgba(15,23,42,.075)!important}
:is(.card-body,.tt-card-body){padding:1.15rem}
:is(.card-footer,.tt-card-footer){background:transparent!important;border-top:1px solid rgba(15,23,42,.075)!important}

/* Botões */
.btn,button,input[type=submit],input[type=button]{border-radius:var(--tt-radius-sm)!important;font-weight:780!important;letter-spacing:-.01em;transition:transform var(--tt-speed),box-shadow var(--tt-speed),background-color var(--tt-speed),border-color var(--tt-speed),filter var(--tt-speed)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.42rem;min-height:40px}
.btn:hover,button:hover,input[type=submit]:hover{transform:translateY(-1px)}.btn:active,button:active{transform:translateY(0)}
.btn-sm{min-height:34px!important;border-radius:10px!important}.btn-lg{min-height:46px!important;border-radius:14px!important}
:is(.btn-primary,.btn-success,.btn-primary-custom,.btn-report){background:var(--tt-green)!important;border-color:var(--tt-green)!important;color:#fff!important}
:is(.btn-primary,.btn-success,.btn-primary-custom,.btn-report):hover{background:var(--tt-green-dark)!important;border-color:var(--tt-green-dark)!important;box-shadow:0 10px 18px rgba(34,197,94,.18)!important}
.btn-dark{background:var(--tt-navy)!important;border-color:var(--tt-navy)!important;color:#fff!important}.btn-dark:hover{background:var(--tt-navy-strong)!important;border-color:var(--tt-navy-strong)!important}
.btn-outline-primary{border-color:var(--tt-green)!important;color:var(--tt-green-dark)!important}.btn-outline-primary:hover{background:var(--tt-green)!important;color:#fff!important}
.btn-outline-dark{border-color:var(--tt-navy)!important;color:var(--tt-navy)!important}.btn-outline-dark:hover{background:var(--tt-navy)!important;color:#fff!important}

/* Formulários */
:is(.form-control,.form-select,.input-group-text,input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],input[type=tel],select,textarea){min-height:42px;border:1px solid rgba(15,23,42,.14)!important;border-radius:var(--tt-radius-sm)!important;background:#fff!important;color:var(--tt-text)!important;box-shadow:none!important}
textarea{min-height:96px}:is(.form-control,.form-select,input,select,textarea):focus{border-color:rgba(34,197,94,.78)!important;outline:0!important;box-shadow:0 0 0 .22rem rgba(34,197,94,.13)!important}
:is(.form-label,label){color:#334155;font-weight:760}.input-group>:not(:first-child){margin-left:-1px}.input-group>:not(:first-child),.input-group>:not(:last-child){border-radius:var(--tt-radius-sm)!important}

/* Abas, indicadores e ícones */
:is(.badge,.tt-chip,.tt-pill,.info-pill,.chip-atleta,.name-pill,.team-count){border-radius:999px!important;font-weight:780!important}
:is(.nav-pills,.tt-tabs) .nav-link{border-radius:12px!important;font-weight:760!important}.nav-pills .nav-link.active{background:var(--tt-navy)!important;color:#fff!important}
:is(.tt-icon,.tt-stat-icon,.tt-kpi-icon,.avatar-initial,.icon-box,.icone-box){display:inline-grid;place-items:center;border-radius:14px!important}
:is(.tt-icon,.tt-stat-icon,.tt-kpi-icon,.icon-box,.icone-box) i{color:var(--tt-green)}

/* Tabelas */
.table-responsive{overflow:auto;border:1px solid var(--tt-border);border-radius:var(--tt-radius-md);background:#fff;box-shadow:var(--tt-shadow-xs)}
.table{margin-bottom:0!important;background:#fff}.table thead th,table thead th{background:#f8fafc!important;color:#475569!important;border-bottom:1px solid var(--tt-border)!important;font-size:.72rem!important;font-weight:850!important;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.table td,.table th,table td,table th{border-color:#eef2f7!important;vertical-align:middle!important}.table tbody tr:hover{background:#f8fafc}

/* Alertas, progresso e modais */
.alert{border:1px solid transparent!important;border-radius:14px!important;font-weight:650}.alert-success{background:#ecfdf3!important;border-color:#bbf7d0!important;color:#166534!important}.alert-warning{background:#fffbeb!important;border-color:#fde68a!important;color:#92400e!important}.alert-danger{background:#fef2f2!important;border-color:#fecaca!important;color:#991b1b!important}.alert-info{background:#f0f9ff!important;border-color:#bae6fd!important;color:#075985!important}
.progress{height:8px;border-radius:999px;background:#e8eef5!important}.progress-bar{border-radius:999px;background:var(--tt-green)!important}.modal-content{overflow:hidden}.modal-header,.modal-footer{border-color:rgba(15,23,42,.075)!important}

/* Cards de atalho */
:is(.menu-card,.card-menu,.box-menu,.opcao-menu,.tt-shortcut-card){border:1px solid var(--tt-border)!important;border-radius:var(--tt-radius-lg)!important;background:#fff!important;box-shadow:var(--tt-shadow-sm)!important;color:var(--tt-navy)!important;transition:transform var(--tt-speed),box-shadow var(--tt-speed),border-color var(--tt-speed)}
:is(.menu-card,.card-menu,.box-menu,.opcao-menu,.tt-shortcut-card):hover{transform:translateY(-3px);border-color:rgba(34,197,94,.28)!important;box-shadow:var(--tt-shadow-md)!important}

/* Login e páginas públicas simples */
body:not(.materialize-system) :is(.login-card,.login-container,.auth-card,.form-container){border:1px solid var(--tt-border)!important;border-radius:var(--tt-radius-xl)!important;background:#fff!important;box-shadow:var(--tt-shadow-md)!important}

/* Mobile */
@media(max-width:767.98px){
  :is(.card-body,.tt-card-body){padding:.95rem}
  :is(.card,.tt-card,.tt-panel,.tt-box,.tt-config-card,.tt-dashboard-card,.dropdown-menu,.modal-content){border-radius:16px!important}
  .btn{min-height:39px}.table thead th,table thead th{font-size:.67rem!important}
  :is(h1,.h1){font-size:1.55rem!important}:is(h2,.h2){font-size:1.32rem!important}:is(h3,.h3){font-size:1.12rem!important}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* === CORRECAO 2026-06-06: rolagem vertical visivel e conteudo completo ===
 * Algumas telas longas, como Configuracoes > Usuarios, pareciam cortadas porque
 * estilos legados escondiam a barra visual de rolagem. Mantem o menu lateral
 * independente e garante que todo o conteudo central continue acessivel.
 */
html {
  overflow-y: auto !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(100,116,139,.58) rgba(226,232,240,.72) !important;
}
body.materialize-system {
  min-height: 100vh !important;
  height: auto !important;
  max-height: none !important;
  overflow-y: auto !important;
}
html::-webkit-scrollbar,
body.materialize-system::-webkit-scrollbar {
  display: block !important;
  width: 10px !important;
  height: 10px !important;
}
html::-webkit-scrollbar-track,
body.materialize-system::-webkit-scrollbar-track {
  background: rgba(226,232,240,.72) !important;
}
html::-webkit-scrollbar-thumb,
body.materialize-system::-webkit-scrollbar-thumb {
  background: rgba(100,116,139,.58) !important;
  border: 2px solid rgba(226,232,240,.72) !important;
  border-radius: 999px !important;
}
html::-webkit-scrollbar-thumb:hover,
body.materialize-system::-webkit-scrollbar-thumb:hover {
  background: rgba(71,85,105,.78) !important;
}
@media (min-width: 1200px) {
  body.materialize-system .layout-wrapper,
  body.materialize-system .layout-container,
  body.materialize-system .layout-page,
  body.materialize-system .content-wrapper {
    height: auto !important;
    max-height: none !important;
    overflow-y: visible !important;
  }
}
body.materialize-system .tt-users-page {
  padding-bottom: 1.25rem !important;
}

/* === AJUSTE 2026-06-06: card Próximo jogo unificado em Atleta e Administração ===
 * Usa o mesmo acabamento nas duas abas e reserva espaço real para o anel no mobile.
 * A data permanece em uma linha, com tipografia menor para não ficar sob o ícone.
 */
body.materialize-system .tt-next-panel-top,
body.materialize-system.tt-dashboard-body .tt-next-panel-top,
body.materialize-system .tt-athlete-next-card {
  background:#061b3a !important;
  background-color:#061b3a !important;
  background-image:radial-gradient(circle at top right,rgba(34,197,94,.16),transparent 34%),linear-gradient(135deg,#061b3a 0%,#0b1d3a 100%) !important;
  color:#fff !important;
  border:1px solid rgba(6,27,58,.42) !important;
  border-radius:24px !important;
  box-shadow:0 18px 38px rgba(6,27,58,.20) !important;
}
body.materialize-system .tt-next-panel-top .pa-next-top {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:start !important;
  gap:12px !important;
  min-width:0 !important;
}
body.materialize-system .tt-next-panel-top .pa-next-content {
  min-width:0 !important;
  width:100% !important;
}
body.materialize-system .tt-next-panel-top .pa-next-date-title {
  display:block !important;
  max-width:100% !important;
  overflow:visible !important;
  white-space:nowrap !important;
  text-overflow:clip !important;
  color:#fff !important;
}
@media (max-width:767.98px) {
  body.materialize-system .tt-next-panel-top,
  body.materialize-system.tt-dashboard-body .tt-next-panel-top,
  body.materialize-system .tt-athlete-next-card {
    padding:16px !important;
    border-radius:18px !important;
  }
  body.materialize-system .tt-next-panel-top .pa-next-top {
    gap:8px !important;
  }
  body.materialize-system .tt-next-panel-top .pa-next-content {
    gap:9px !important;
  }
  body.materialize-system .tt-next-panel-top .pa-next-label {
    font-size:.78rem !important;
    gap:6px !important;
  }
  body.materialize-system .tt-next-panel-top .pa-next-label i {
    font-size:.86rem !important;
  }
  body.materialize-system .tt-next-panel-top .pa-next-date-title {
    font-size:clamp(.66rem,3vw,.78rem) !important;
    line-height:1.25 !important;
    letter-spacing:-.045em !important;
    font-weight:900 !important;
  }
  body.materialize-system .tt-next-panel-top .pa-next-countdown {
    font-size:.79rem !important;
    line-height:1.2 !important;
    letter-spacing:-.025em !important;
    white-space:nowrap !important;
  }
  body.materialize-system .tt-next-panel-top .pa-next-icon,
  body.materialize-system .tt-next-panel-top .tt-next-ring {
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    flex:0 0 48px !important;
  }
  body.materialize-system .tt-next-panel-top .tt-next-ring::before {
    inset:5px !important;
  }
  body.materialize-system .tt-next-panel-top .tt-next-ring::after {
    inset:10px !important;
  }
  body.materialize-system .tt-next-panel-top .tt-next-ring i {
    font-size:1.62rem !important;
  }
  body.materialize-system .tt-next-panel-top .pa-progress {
    height:7px !important;
    margin-top:13px !important;
  }
  body.materialize-system .tt-next-panel-top .pa-next-foot {
    margin-top:10px !important;
    gap:8px !important;
    font-size:.61rem !important;
    line-height:1.15 !important;
  }
}
@media (max-width:374.98px) {
  body.materialize-system .tt-next-panel-top .pa-next-date-title {
    font-size:.62rem !important;
    letter-spacing:-.052em !important;
  }
  body.materialize-system .tt-next-panel-top .pa-next-countdown {
    font-size:.73rem !important;
  }
  body.materialize-system .tt-next-panel-top .pa-next-icon,
  body.materialize-system .tt-next-panel-top .tt-next-ring {
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    flex-basis:44px !important;
  }
}


/* === PRODUTO 2026-06-06: mobile nav, PWA e feedback de carregamento === */
.tt-mobile-bottom-nav{display:none}
.tt-page-loading-bar{position:fixed;z-index:99999;top:0;left:0;width:0;height:3px;background:linear-gradient(90deg,#22c55e,#16a34a,#38bdf8);box-shadow:0 2px 9px rgba(34,197,94,.32);opacity:0;pointer-events:none;transition:width .6s ease,opacity .2s ease}
body.tt-is-navigating .tt-page-loading-bar{width:76%;opacity:1;animation:tt-loading-progress 2.4s ease-in-out infinite}
@keyframes tt-loading-progress{0%{width:12%}55%{width:78%}100%{width:94%}}
.tt-submit-loading{position:relative;opacity:.9}.tt-submit-loading::before{content:"";width:14px;height:14px;border:2px solid rgba(255,255,255,.54);border-top-color:#fff;border-radius:50%;animation:tt-spin .7s linear infinite}.tt-submit-loading i{display:none!important}@keyframes tt-spin{to{transform:rotate(360deg)}}
.tt-install-app-card{position:fixed;right:18px;bottom:18px;z-index:2400;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:min(430px,calc(100vw - 24px));padding:13px;border:1px solid rgba(34,197,94,.23);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 18px 42px rgba(15,23,42,.18);opacity:0;transform:translateY(18px);transition:.24s ease;backdrop-filter:blur(14px)}
.tt-install-app-card.is-visible{opacity:1;transform:translateY(0)}.tt-install-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#eafbf0;color:#16a34a;font-size:1.2rem}.tt-install-copy{display:grid;gap:3px;min-width:0}.tt-install-copy strong{color:#0b1d3a;font-size:.86rem;font-weight:900}.tt-install-copy small{color:#64748b!important;font-size:.72rem;line-height:1.35;font-weight:650}.tt-install-actions{display:flex;align-items:center;gap:6px}.tt-install-primary,.tt-install-close{border:0!important;cursor:pointer}.tt-install-primary{min-height:36px;padding:0 12px;border-radius:11px!important;background:#22c55e;color:#fff;font-size:.75rem;font-weight:850}.tt-install-close{display:grid;place-items:center;width:34px;height:34px;border-radius:11px!important;background:#f1f5f9;color:#64748b}
.tt-onboarding-reminder{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;padding:14px 16px;border:1px solid rgba(34,197,94,.22);border-radius:18px;background:linear-gradient(135deg,#fff,#effdf4);box-shadow:0 10px 25px rgba(15,23,42,.05)}.tt-onboarding-reminder-copy{display:flex;align-items:center;gap:12px;min-width:0}.tt-onboarding-reminder-icon{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border-radius:14px;background:#dcfce7;color:#16a34a;font-size:1.15rem}.tt-onboarding-reminder strong{display:block;color:#0b1d3a;font-size:.9rem;font-weight:900}.tt-onboarding-reminder small{display:block;color:#64748b!important;font-size:.74rem;font-weight:650;line-height:1.3}.tt-onboarding-reminder .btn{white-space:nowrap}
@media(max-width:1199.98px){body.materialize-system .content-wrapper{padding-bottom:76px!important}.tt-modern-footer{padding-bottom:74px!important}.tt-mobile-bottom-nav{position:fixed;z-index:2050;right:10px;bottom:max(9px,env(safe-area-inset-bottom));left:10px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:6px;border:1px solid rgba(15,23,42,.10);border-radius:18px;background:rgba(255,255,255,.97);box-shadow:0 14px 36px rgba(15,23,42,.16);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.tt-mobile-bottom-nav a,.tt-mobile-bottom-nav button{display:flex;min-width:0;min-height:50px;align-items:center;justify-content:center;flex-direction:column;gap:3px;border:0!important;border-radius:13px!important;background:transparent;color:#64748b!important;font-family:inherit;font-size:.61rem;font-weight:800;line-height:1;text-decoration:none;transition:.16s ease}.tt-mobile-bottom-nav i{font-size:1rem}.tt-mobile-bottom-nav :is(a,button).is-active,.tt-mobile-bottom-nav :is(a,button):hover{background:#eafbf0;color:#15803d!important}.tt-mobile-bottom-nav .is-locked{opacity:.48}.tt-install-app-card{right:12px;bottom:88px}.tt-onboarding-reminder{align-items:flex-start;flex-direction:column}.tt-onboarding-reminder .btn{width:100%}}
@media(max-width:420px){.tt-mobile-bottom-nav{right:7px;left:7px;bottom:max(7px,env(safe-area-inset-bottom));border-radius:16px}.tt-mobile-bottom-nav a,.tt-mobile-bottom-nav button{font-size:.57rem}.tt-install-app-card{right:8px;bottom:82px;width:calc(100vw - 16px);gap:9px;padding:11px}.tt-install-icon{width:38px;height:38px}.tt-install-primary{padding:0 9px}.tt-install-copy small{font-size:.66rem}}


/* TT_ADVANCED_MODULES_V3 — permissions, rankings and WhatsApp cards */
.tt-role-badge.administrador_geral{background:#e8eefc!important;color:#173e86!important}.tt-role-badge.organizador{background:#eafbf0!important;color:#15803d!important}.tt-role-badge.financeiro{background:#fff7e6!important;color:#b45309!important}.tt-role-badge.atleta{background:#f1f5f9!important;color:#475569!important}
.tt-ranking-page,.tt-share-page{display:grid;gap:20px}.tt-ranking-hero{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:26px 28px;border:1px solid #e3eaf1;border-radius:24px;background:radial-gradient(circle at 92% 15%,rgba(34,197,94,.16),transparent 28%),linear-gradient(135deg,#fff,#f8fbff);box-shadow:0 16px 38px rgba(15,23,42,.06)}.tt-ranking-hero h1{margin:7px 0 8px;color:#0b1d3a;font-weight:950;font-size:clamp(1.7rem,3vw,2.45rem)}.tt-ranking-hero p{margin:0;color:#64748b;font-weight:650}.tt-ranking-personal{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(240px,320px) 1fr auto;align-items:center;gap:18px;padding:20px 22px;border-radius:24px;border:1px solid #0f3a73;background:linear-gradient(135deg,#0b1d3a 0%,#12305f 100%);color:#fff;box-shadow:0 18px 40px rgba(11,29,58,.18)}.tt-ranking-personal:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:linear-gradient(180deg,#22c55e,#67e8a5)}.tt-ranking-personal-head{display:flex;align-items:center;gap:14px;position:relative;z-index:1}.tt-ranking-personal-badge{display:grid;place-items:center;width:72px;height:72px;border-radius:20px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-size:1.8rem;font-weight:900;box-shadow:0 12px 26px rgba(34,197,94,.24)}.tt-ranking-personal-copy{display:grid;gap:4px}.tt-ranking-personal-copy span{color:#9bc5b0;font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.tt-ranking-personal-copy strong{font-size:1.2rem;line-height:1.15;color:#fff;font-weight:900}.tt-ranking-personal-copy small{color:#d3deed;font-weight:700}.tt-ranking-personal-stats{display:grid;grid-template-columns:repeat(4,minmax(80px,1fr));gap:10px;position:relative;z-index:1}.tt-ranking-personal-stats span{display:grid;gap:4px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);text-align:center;backdrop-filter:blur(2px)}.tt-ranking-personal-stats small{order:1;color:#a9bfd8;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.tt-ranking-personal-stats b{order:2;color:#fff;font-size:1.35rem;line-height:1;font-weight:900}.tt-ranking-personal .btn{position:relative;z-index:1;align-self:center;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#fff!important;color:#0b1d3a!important;font-weight:800;box-shadow:0 10px 24px rgba(0,0,0,.14)}.tt-ranking-card{border-radius:22px!important;border:1px solid #e5eaf0!important;box-shadow:0 14px 34px rgba(15,23,42,.06)!important}.tt-card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.tt-card-title-row h2,.tt-ranking-card h2,.tt-share-actions-card h2{color:#0b1d3a;font-size:1.25rem;font-weight:950;margin:5px 0}.tt-ranking-list{display:grid;gap:8px}.tt-ranking-row{display:flex;align-items:center;gap:11px;padding:11px 10px;border:1px solid #edf1f5;border-radius:16px;background:#fff;transition:.2s ease}.tt-ranking-row:hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(15,23,42,.05)}.tt-ranking-row.is-podium{border-width:1px}.tt-ranking-row.podium-1{background:linear-gradient(135deg,#fff9e6,#ffffff);border-color:#f5d77a}.tt-ranking-row.podium-2{background:linear-gradient(135deg,#f8fafc,#ffffff);border-color:#d4dbe5}.tt-ranking-row.podium-3{background:linear-gradient(135deg,#fff4ec,#ffffff);border-color:#efc4a5}.tt-ranking-position{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#eef3f8;color:#0b1d3a;font-weight:950}.tt-ranking-row.podium-1 .tt-ranking-position{background:linear-gradient(135deg,#ffe8a3,#f5c542);color:#7a4b00;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}.tt-ranking-row.podium-2 .tt-ranking-position{background:linear-gradient(135deg,#f2f5f8,#cbd5e1);color:#475569;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.tt-ranking-row.podium-3 .tt-ranking-position{background:linear-gradient(135deg,#f9dcc4,#e6a16b);color:#7c2d12;box-shadow:inset 0 1px 0 rgba(255,255,255,.5)}.tt-ranking-avatar{display:grid;place-items:center;width:39px;height:39px;border-radius:50%;background:#0b1d3a;color:#fff;font-weight:950}.tt-ranking-row.podium-1 .tt-ranking-avatar{background:#b7791f}.tt-ranking-row.podium-2 .tt-ranking-avatar{background:#64748b}.tt-ranking-row.podium-3 .tt-ranking-avatar{background:#b45309}.tt-ranking-name{display:grid;min-width:0;flex:1}.tt-ranking-name strong{color:#0b1d3a}.tt-ranking-name small,.tt-ranking-mini small{color:#94a3b8;font-size:.67rem;font-weight:700}.tt-ranking-mini{display:flex;gap:15px}.tt-ranking-mini span{display:grid;text-align:center}.tt-ranking-mini b{color:#0b1d3a}.tt-ranking-points{color:#15803d;min-width:58px;text-align:right}.tt-ranking-row.podium-1 .tt-ranking-points{color:#b7791f}.tt-ranking-row.podium-2 .tt-ranking-points{color:#64748b}.tt-ranking-row.podium-3 .tt-ranking-points{color:#b45309}.tt-ranking-points small{font-size:.64rem}.tt-share-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#edf9f1;color:#15803d;text-decoration:none}.tt-achievement-grid{display:grid;gap:10px}.tt-achievement-grid article{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid #e9f0ec;border-radius:16px;background:linear-gradient(135deg,#ffffff,#fbfffd);box-shadow:0 8px 16px rgba(15,23,42,.03)}.tt-achievement-grid i{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#22c55e;color:#fff;border:1px solid #1ca54b;box-shadow:0 10px 18px rgba(34,197,94,.22);font-size:1.15rem}.tt-achievement-grid div{display:grid}.tt-achievement-grid strong{color:#0b1d3a}.tt-achievement-grid small{color:#94a3b8;font-size:.72rem}.tt-share-tabs{display:flex;gap:9px;overflow:auto}.tt-share-tabs a{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border:1px solid #e5eaf0;border-radius:13px;background:#fff;color:#64748b;text-decoration:none;font-weight:850;white-space:nowrap}.tt-share-tabs a.is-active{background:#0b1d3a;color:#fff;border-color:#0b1d3a}.tt-share-preview-card,.tt-share-actions-card{border-radius:22px!important;border:1px solid #e5eaf0!important;box-shadow:0 14px 34px rgba(15,23,42,.06)!important}.tt-share-preview{display:grid;place-items:center;padding:12px;border-radius:18px;background:#eef3f8}.tt-share-preview img{width:min(100%,430px);height:auto;border-radius:14px;box-shadow:0 12px 28px rgba(15,23,42,.18)}
@media(max-width:767.98px){.tt-ranking-hero{align-items:flex-start;flex-direction:column;padding:19px}.tt-ranking-personal{grid-template-columns:1fr;gap:14px;padding:18px}.tt-ranking-personal-head{width:100%}.tt-ranking-personal-badge{width:60px;height:60px;border-radius:18px;font-size:1.45rem}.tt-ranking-personal-stats{width:100%;grid-template-columns:repeat(2,1fr);gap:8px}.tt-ranking-personal-stats span{padding:10px 8px;border-radius:12px}.tt-ranking-personal .btn{width:100%;justify-content:center}.tt-ranking-row{gap:8px;padding:9px 7px}.tt-ranking-avatar{display:none}.tt-ranking-mini{gap:7px}.tt-ranking-mini span:nth-child(3){display:none}.tt-ranking-position{width:30px;height:30px}.tt-ranking-points{min-width:48px}.tt-share-icon{width:30px;height:30px}}


/* === AJUSTE 2026-06-06: largura e alinhamento dos módulos de ranking e artes ===
 * O shell principal já fornece o contêiner da área útil. As páginas avançadas
 * não devem abrir um segundo .container-xxl, pois isso estreita e desloca o conteúdo.
 */
body.materialize-system .tt-advanced-content {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.materialize-system .tt-ranking-page,
body.materialize-system .tt-share-page {
  align-content: start !important;
  width: 100% !important;
  min-width: 0 !important;
}
body.materialize-system .tt-ranking-page > *,
body.materialize-system .tt-share-page > * {
  min-width: 0 !important;
}
body.materialize-system .tt-ranking-columns,
body.materialize-system .tt-share-columns {
  display: grid !important;
  width: 100% !important;
  min-width: 0 !important;
  gap: 18px !important;
  align-items: start !important;
}
body.materialize-system .tt-ranking-columns {
  grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr) !important;
}
body.materialize-system .tt-share-columns {
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, .75fr) !important;
}
body.materialize-system .tt-ranking-main-column,
body.materialize-system .tt-ranking-side-column,
body.materialize-system .tt-share-preview-column,
body.materialize-system .tt-share-actions-column {
  min-width: 0 !important;
}
body.materialize-system .tt-share-preview-card,
body.materialize-system .tt-share-actions-card {
  height: 100% !important;
}
body.materialize-system .tt-share-preview {
  min-height: 420px !important;
  padding: 18px !important;
}
body.materialize-system .tt-share-preview img {
  display: block !important;
  width: min(100%, 460px) !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 auto !important;
}
@media (max-width: 991.98px) {
  body.materialize-system .tt-ranking-columns,
  body.materialize-system .tt-share-columns {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body.materialize-system .tt-share-preview {
    min-height: 0 !important;
  }
}
@media (max-width: 767.98px) {
  body.materialize-system .tt-ranking-page,
  body.materialize-system .tt-share-page {
    gap: 14px !important;
  }
  body.materialize-system .tt-ranking-hero {
    width: 100% !important;
    padding: 17px !important;
    border-radius: 18px !important;
  }
  body.materialize-system .tt-ranking-hero .btn {
    width: 100% !important;
  }
  body.materialize-system .tt-share-tabs {
    width: 100% !important;
    padding-bottom: 2px !important;
  }
  body.materialize-system .tt-share-tabs a {
    flex: 1 0 auto !important;
    justify-content: center !important;
  }
  body.materialize-system .tt-share-preview {
    padding: 10px !important;
    border-radius: 14px !important;
  }
}
/* TT_SHARE_V7: prévia responsiva e botões sempre clicáveis */
.tt-share-preview img{display:block;max-width:100%;height:auto;margin:0 auto;border-radius:18px;background:#f4f8fb}.tt-share-tabs a,.tt-ranking-hero .btn,.tt-ranking-personal .btn,.tt-share-icon{position:relative;z-index:2;pointer-events:auto}.tt-share-actions-card .btn{min-height:44px;justify-content:center}.tt-share-page .tt-share-columns{align-items:start}

/* === TT_SHARE_INTEGRATED_V10 — central de artes dentro do shell principal === */
body.materialize-system .tt-share-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px;border:1px solid #e3eaf1;border-radius:24px;background:radial-gradient(circle at 92% 15%,rgba(34,197,94,.16),transparent 28%),linear-gradient(135deg,#fff,#f8fbff);box-shadow:0 16px 38px rgba(15,23,42,.06)}
body.materialize-system .tt-share-hero-copy{min-width:0}body.materialize-system .tt-share-hero h1{margin:6px 0 7px;color:#0b1d3a;font-size:clamp(1.65rem,3vw,2.35rem);font-weight:950;letter-spacing:-.045em}body.materialize-system .tt-share-hero p{max-width:780px;margin:0;color:#64748b;font-weight:650;line-height:1.55}body.materialize-system .tt-share-hero-actions{display:flex;align-items:flex-end;flex-direction:column;gap:10px}body.materialize-system .tt-share-auto-badge{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid rgba(34,197,94,.2);border-radius:999px;background:#eafbf0;color:#15803d;font-size:.72rem;font-weight:900;white-space:nowrap}
body.materialize-system .tt-share-title-row{margin-bottom:16px}body.materialize-system .tt-share-title-row p{margin:4px 0 0;color:#64748b;font-size:.84rem;font-weight:650}body.materialize-system .tt-share-preview{min-height:560px;overflow:hidden}body.materialize-system .tt-share-preview img{display:block;width:min(100%,500px);max-height:760px;object-fit:contain}body.materialize-system .tt-share-placeholder{display:grid;place-items:center;max-width:390px;padding:24px;text-align:center;color:#64748b;gap:8px}body.materialize-system .tt-share-placeholder i{color:#dc2626;font-size:2rem}body.materialize-system .tt-share-placeholder strong{color:#0b1d3a;font-size:1rem;font-weight:900}body.materialize-system .tt-share-placeholder small{font-size:.78rem;line-height:1.5}body.materialize-system .tt-share-loader{width:34px;height:34px;border:3px solid #dbe5ef;border-top-color:#22c55e;border-radius:50%;animation:tt-spin .7s linear infinite}
body.materialize-system .tt-share-actions{display:grid;gap:10px;margin-top:16px}body.materialize-system .tt-share-actions .btn{display:flex;justify-content:center;width:100%;min-height:44px}body.materialize-system .tt-share-status{margin-top:15px;padding:12px 13px;border:1px solid #e5eaf0;border-radius:13px;background:#f8fafc;color:#64748b;font-size:.76rem;font-weight:700;line-height:1.45}body.materialize-system .tt-share-status.is-success{border-color:#bbf7d0;background:#f0fdf4;color:#166534}body.materialize-system .tt-share-status.is-error{border-color:#fecaca;background:#fff1f2;color:#b91c1c}body.materialize-system .tt-share-help-card{border-radius:20px!important;border:1px solid #e5eaf0!important;box-shadow:0 12px 30px rgba(15,23,42,.045)!important}body.materialize-system .tt-share-help-card h3{margin:5px 0 6px;color:#0b1d3a;font-size:1rem;font-weight:950}body.materialize-system .tt-share-help-card p{margin:0;color:#64748b;font-size:.8rem;line-height:1.5}body.materialize-system .tt-share-help-links{display:grid;gap:8px;margin-top:13px}body.materialize-system .tt-share-help-links a{display:flex;align-items:center;gap:7px;color:#15803d;font-size:.78rem;font-weight:850;text-decoration:none}
@media(max-width:991.98px){body.materialize-system .tt-share-columns{grid-template-columns:1fr!important}body.materialize-system .tt-share-actions-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}body.materialize-system .tt-share-preview{min-height:430px}}
@media(max-width:767.98px){body.materialize-system .tt-share-hero{padding:18px;border-radius:18px;flex-direction:column}body.materialize-system .tt-share-hero-actions{width:100%;align-items:stretch}body.materialize-system .tt-share-auto-badge{align-self:flex-start}body.materialize-system .tt-share-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}body.materialize-system .tt-share-tabs a{justify-content:center;padding:10px 6px;font-size:.72rem}body.materialize-system .tt-share-actions-column{grid-template-columns:1fr}body.materialize-system .tt-share-preview{min-height:340px;padding:8px}body.materialize-system .tt-share-preview img{max-height:570px}.tt-share-title-row{align-items:flex-start!important;flex-direction:column}.tt-share-title-row .btn{width:100%}}

/* === TT_SHARE_V12 — abas com contraste correto e novos modelos === */
body.materialize-system .tt-share-tabs {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
  overflow: visible !important;
}
body.materialize-system .tt-share-tabs a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  min-height: 42px !important;
  padding: 10px 15px !important;
  border: 1px solid #e3eaf1 !important;
  border-radius: 13px !important;
  background: #fff !important;
  color: #334155 !important;
  box-shadow: 0 6px 18px rgba(15,23,42,.035) !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease !important;
}
body.materialize-system .tt-share-tabs a i {
  color: #16a34a !important;
  font-size: 1rem !important;
}
body.materialize-system .tt-share-tabs a:hover {
  transform: translateY(-1px) !important;
  border-color: #bbf7d0 !important;
  background: #f0fdf4 !important;
  box-shadow: 0 9px 22px rgba(15,23,42,.07) !important;
  color: #0b1d3a !important;
}
body.materialize-system .tt-share-tabs a.is-active,
body.materialize-system .tt-share-tabs a.is-active:hover,
body.materialize-system .tt-share-tabs a.is-active:focus,
body.materialize-system .tt-share-tabs a.is-active:visited {
  border-color: #0b1d3a !important;
  background: #0b1d3a !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(11,29,58,.2) !important;
}
body.materialize-system .tt-share-tabs a.is-active i,
body.materialize-system .tt-share-tabs a.is-active:hover i,
body.materialize-system .tt-share-tabs a.is-active:focus i,
body.materialize-system .tt-share-tabs a.is-active:visited i {
  color: #5ee58f !important;
}
body.materialize-system .tt-share-actions .btn {
  border-radius: 11px !important;
  font-weight: 900 !important;
  letter-spacing: -.01em !important;
}
@media(max-width:767.98px){
  body.materialize-system .tt-share-tabs {
    display:flex !important;
    flex-wrap:nowrap !important;
    width:100% !important;
    overflow-x:auto !important;
    padding-bottom:4px !important;
    scrollbar-width:none !important;
  }
  body.materialize-system .tt-share-tabs::-webkit-scrollbar{display:none !important}
  body.materialize-system .tt-share-tabs a {
    flex:0 0 auto !important;
    min-width:max-content !important;
    padding:10px 12px !important;
    font-size:.75rem !important;
  }
}

/* Ranking V35 modern overrides */
.tt-ranking-personal{
  grid-template-columns:minmax(260px,340px) 1fr auto;
  gap:18px;
  padding:22px;
  border:1px solid #d9e3ef;
  border-radius:28px;
  background:
    radial-gradient(circle at top right, rgba(34,197,94,.10), transparent 24%),
    linear-gradient(135deg,#0b1d3a 0%,#12386a 52%,#0f274d 100%);
  box-shadow:0 20px 40px rgba(15,23,42,.14);
}
.tt-ranking-personal:before{
  width:0;
}
.tt-ranking-personal-main{
  display:flex;
  align-items:center;
  gap:16px;
  min-width:0;
  position:relative;
  z-index:1;
}
.tt-ranking-personal-rank{
  flex:0 0 110px;
  display:grid;
  gap:4px;
  padding:16px 14px;
  border-radius:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.07));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
  text-align:center;
}
.tt-ranking-personal-rank span{
  color:#b5c8dd;
  font-size:.72rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.tt-ranking-personal-rank strong{
  font-size:2.2rem;
  line-height:1;
  color:#fff;
  font-weight:900;
}
.tt-ranking-personal-rank small{
  color:#8ce8aa;
  font-weight:800;
}
.tt-ranking-personal-identity{
  display:grid;
  gap:6px;
  min-width:0;
}
.tt-ranking-personal-identity .tt-kicker{
  color:#8ce8aa;
  margin:0;
}
.tt-ranking-personal-identity h3{
  margin:0;
  color:#fff;
  font-size:clamp(1.3rem,2vw,2rem);
  line-height:1.05;
  font-weight:950;
}
.tt-ranking-personal-identity p{
  margin:0;
  color:#c4d3e3;
  font-weight:600;
}
.tt-ranking-personal-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(90px,1fr));
  gap:12px;
  position:relative;
  z-index:1;
}
.tt-ranking-personal-stats span{
  display:grid;
  grid-template-columns:auto;
  justify-items:start;
  gap:5px;
  padding:14px 14px 13px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.06));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10);
  text-align:left;
}
.tt-ranking-personal-stats i{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:12px;
  background:rgba(34,197,94,.16);
  color:#6ef0a2;
  font-size:1rem;
}
.tt-ranking-personal-stats small{
  color:#9fb6ce;
  font-size:.68rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.tt-ranking-personal-stats b{
  color:#fff;
  font-size:1.45rem;
  line-height:1;
  font-weight:900;
}
.tt-ranking-personal-action{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  position:relative;
  z-index:1;
}
.tt-ranking-personal .btn{
  min-width:150px;
  min-height:48px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.14);
  background:#fff !important;
  color:#0b1d3a !important;
  font-weight:900;
}
.tt-achievement-grid{
  gap:12px;
}
.tt-achievement-grid article{
  align-items:center;
  padding:12px 13px;
  border-radius:18px;
  border:1px solid #e6edf3;
  background:linear-gradient(135deg,#fff,#f8fffb);
}
.tt-achievement-grid article i,
.tt-achievement-grid i{
  width:42px !important;
  height:42px !important;
  min-width:42px;
  border-radius:14px;
  background:#22c55e !important;
  color:#ffffff !important;
  border:1px solid #1faa50 !important;
  box-shadow:0 10px 18px rgba(34,197,94,.24) !important;
}
.tt-achievement-grid strong{
  font-size:.98rem;
  line-height:1.1;
}
.tt-achievement-grid small{
  margin-top:3px;
  font-size:.74rem;
  line-height:1.3;
}
@media (max-width: 1199.98px){
  .tt-ranking-personal{
    grid-template-columns:1fr;
  }
  .tt-ranking-personal-action{
    justify-content:flex-start;
  }
}
@media (max-width: 767.98px){
  .tt-ranking-personal{
    padding:18px;
    border-radius:24px;
    gap:14px;
  }
  .tt-ranking-personal-main{
    align-items:flex-start;
  }
  .tt-ranking-personal-rank{
    flex:0 0 88px;
    padding:14px 10px;
    border-radius:18px;
  }
  .tt-ranking-personal-rank strong{
    font-size:1.75rem;
  }
  .tt-ranking-personal-identity h3{
    font-size:1.45rem;
  }
  .tt-ranking-personal-stats{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .tt-ranking-personal-stats span{
    padding:12px;
    border-radius:16px;
  }
  .tt-ranking-personal-stats b{
    font-size:1.25rem;
  }
  .tt-ranking-personal .btn{
    width:100%;
  }
  .tt-achievement-grid article{
    padding:11px;
  }
}

/* Ranking V36 premium layout */
.tt-ranking-card{
  border-radius:26px !important;
  border:1px solid #dde7f0 !important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%) !important;
  box-shadow:0 18px 38px rgba(15,23,42,.06), inset 0 1px 0 rgba(255,255,255,.9) !important;
}
.tt-card-title-row{
  margin-bottom:18px;
  align-items:center;
}
.tt-card-title-row .badge{
  border-radius:999px;
  padding:8px 12px;
  font-weight:800;
}
.tt-ranking-list{
  gap:12px;
}
.tt-ranking-row{
  display:grid;
  grid-template-columns:42px 48px minmax(180px,1.25fr) minmax(210px,.9fr) minmax(76px,auto) 40px;
  align-items:center;
  gap:12px;
  padding:14px 14px;
  border:1px solid #e7edf4;
  border-radius:20px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.95),rgba(248,251,255,.98));
  box-shadow:0 8px 20px rgba(15,23,42,.04);
}
.tt-ranking-row:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 30px rgba(15,23,42,.08);
}
.tt-ranking-row.is-podium{
  position:relative;
  overflow:hidden;
}
.tt-ranking-row.is-podium::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  border-radius:20px 0 0 20px;
}
.tt-ranking-row.podium-1{
  background:linear-gradient(135deg,#fff8df 0%,#ffffff 65%);
  border-color:#f0d581;
}
.tt-ranking-row.podium-1::before{background:linear-gradient(180deg,#f5cc4c,#d89a1f);}
.tt-ranking-row.podium-2{
  background:linear-gradient(135deg,#f2f6fb 0%,#ffffff 65%);
  border-color:#d8e0ea;
}
.tt-ranking-row.podium-2::before{background:linear-gradient(180deg,#cfd7e3,#7b8aa1);}
.tt-ranking-row.podium-3{
  background:linear-gradient(135deg,#fff0e7 0%,#ffffff 65%);
  border-color:#ecc0a2;
}
.tt-ranking-row.podium-3::before{background:linear-gradient(180deg,#e9a777,#b96b2a);}
.tt-ranking-position{
  width:42px;
  height:42px;
  border-radius:14px;
  font-size:1rem;
  font-weight:950;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.tt-ranking-avatar{
  width:48px;
  height:48px;
  border-radius:16px;
  font-size:1.05rem;
  box-shadow:0 10px 18px rgba(11,29,58,.14);
}
.tt-ranking-name{
  gap:3px;
}
.tt-ranking-name strong{
  font-size:1rem;
  line-height:1.15;
  font-weight:900;
}
.tt-ranking-name small{
  font-size:.72rem;
  color:#6b7b8f;
  font-weight:800;
}
.tt-ranking-mini{
  display:grid;
  grid-template-columns:repeat(3,minmax(52px,1fr));
  gap:8px;
}
.tt-ranking-mini span{
  display:grid;
  justify-items:center;
  gap:2px;
  padding:8px 6px;
  border-radius:14px;
  background:#f6f9fc;
  border:1px solid #ebf1f6;
}
.tt-ranking-mini b{
  font-size:1rem;
  line-height:1;
  font-weight:900;
}
.tt-ranking-mini small{
  font-size:.62rem;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-weight:800;
  color:#7f8ea3;
}
.tt-ranking-points{
  min-width:76px;
  display:grid;
  justify-items:end;
  align-items:center;
  font-size:1.3rem;
  line-height:1;
  font-weight:950;
}
.tt-ranking-points small{
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-weight:800;
}
.tt-share-icon{
  width:40px;
  height:40px;
  border-radius:14px;
  background:linear-gradient(135deg,#e7f8ec,#f4fff7);
  border:1px solid #ccefd6;
  box-shadow:0 8px 18px rgba(34,197,94,.12);
}
.tt-share-icon i{font-size:1rem;}
.tt-achievement-grid{
  gap:14px;
}
.tt-achievement-grid article{
  position:relative;
  gap:14px;
  align-items:center;
  padding:14px 14px;
  border-radius:18px;
  border:1px solid #e3efe7;
  background:linear-gradient(135deg,#ffffff 0%,#f7fff9 100%);
  box-shadow:0 10px 22px rgba(15,23,42,.04);
}
.tt-achievement-grid article::after{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  border-radius:18px 0 0 18px;
  background:linear-gradient(180deg,#22c55e,#6ee7a3);
  opacity:.9;
}
.tt-achievement-grid i{
  width:46px !important;
  height:46px !important;
  min-width:46px;
  border-radius:15px;
  font-size:1.22rem;
}
.tt-achievement-grid div{gap:2px}
.tt-achievement-grid strong{
  font-size:1rem;
  font-weight:900;
}
.tt-achievement-grid small{
  font-size:.74rem;
  line-height:1.35;
  color:#73859a;
}
@media (max-width: 1199.98px){
  .tt-ranking-row{
    grid-template-columns:40px 44px minmax(150px,1fr) minmax(180px,.9fr) auto 38px;
    gap:10px;
  }
}
@media (max-width: 767.98px){
  .tt-ranking-card{border-radius:22px !important;}
  .tt-card-title-row{align-items:flex-start;}
  .tt-ranking-row{
    grid-template-columns:34px 1fr auto;
    grid-template-areas:
      "position name share"
      "position stats points";
    gap:10px;
    padding:12px;
    border-radius:18px;
  }
  .tt-ranking-position{grid-area:position;width:34px;height:34px;border-radius:12px;align-self:flex-start;}
  .tt-ranking-avatar{display:none;}
  .tt-ranking-name{grid-area:name;min-width:0;}
  .tt-ranking-name strong{font-size:.95rem;}
  .tt-ranking-mini{grid-area:stats;grid-template-columns:repeat(3,1fr);gap:6px;}
  .tt-ranking-mini span{padding:7px 4px;border-radius:12px;}
  .tt-ranking-points{grid-area:points;min-width:56px;justify-items:end;align-self:center;font-size:1.12rem;}
  .tt-share-icon{grid-area:share;width:34px;height:34px;border-radius:12px;align-self:flex-start;justify-self:end;}
  .tt-achievement-grid{gap:10px;}
  .tt-achievement-grid article{padding:12px;border-radius:16px;}
  .tt-achievement-grid i{width:40px !important;height:40px !important;min-width:40px;border-radius:13px;}
}

/* Ranking V37 personal card refinement */
body.materialize-system .tt-ranking-personal{
  position:relative !important;
  overflow:hidden !important;
  display:grid !important;
  grid-template-columns:minmax(300px,420px) 1fr auto !important;
  align-items:center !important;
  gap:20px !important;
  padding:22px 24px !important;
  border-radius:28px !important;
  border:1px solid #103a72 !important;
  background:
    radial-gradient(circle at 90% 12%, rgba(79, 239, 150, .14), transparent 20%),
    radial-gradient(circle at 12% 115%, rgba(34, 197, 94, .20), transparent 18%),
    linear-gradient(135deg,#0b1d3a 0%,#103562 52%,#0b2347 100%) !important;
  color:#ffffff !important;
  box-shadow:0 22px 48px rgba(11,29,58,.22) !important;
}
body.materialize-system .tt-ranking-personal::before{
  content:"" !important;
  position:absolute !important;
  inset:0 auto 0 0 !important;
  width:5px !important;
  border-radius:28px 0 0 28px !important;
  background:linear-gradient(180deg,#31d46f,#7ef0ab) !important;
}
body.materialize-system .tt-ranking-personal-main{
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  min-width:0 !important;
  position:relative !important;
  z-index:1 !important;
}
body.materialize-system .tt-ranking-personal-rank{
  flex:0 0 92px !important;
  display:grid !important;
  gap:4px !important;
  padding:14px 10px !important;
  text-align:center !important;
  border-radius:22px !important;
  border:1px solid rgba(255,255,255,.13) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,.06)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 12px 24px rgba(0,0,0,.14) !important;
}
body.materialize-system .tt-ranking-personal-rank span{
  margin:0 !important;
  color:#bcd1e7 !important;
  font-size:.68rem !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  letter-spacing:.07em !important;
}
body.materialize-system .tt-ranking-personal-rank strong{
  color:#ffffff !important;
  font-size:2.1rem !important;
  line-height:1 !important;
  font-weight:950 !important;
}
body.materialize-system .tt-ranking-personal-rank small{
  color:#7ef0ab !important;
  font-size:.8rem !important;
  font-weight:900 !important;
}
body.materialize-system .tt-ranking-personal-identity{
  display:grid !important;
  gap:5px !important;
  min-width:0 !important;
}
body.materialize-system .tt-ranking-personal-identity .tt-kicker{
  margin:0 !important;
  color:#7ef0ab !important;
  font-weight:900 !important;
}
body.materialize-system .tt-ranking-personal-identity h3{
  margin:0 !important;
  color:#ffffff !important;
  font-size:clamp(1.55rem,2.2vw,2.15rem) !important;
  line-height:1.02 !important;
  font-weight:950 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  max-width:100% !important;
}
body.materialize-system .tt-ranking-personal-identity p{
  margin:0 !important;
  color:#d6e4f2 !important;
  font-size:.95rem !important;
  font-weight:650 !important;
}
body.materialize-system .tt-ranking-personal-stats{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(86px,1fr)) !important;
  gap:10px !important;
  position:relative !important;
  z-index:1 !important;
}
body.materialize-system .tt-ranking-personal-stats span{
  display:grid !important;
  justify-items:center !important;
  align-content:center !important;
  gap:6px !important;
  min-height:92px !important;
  padding:12px 10px !important;
  border-radius:18px !important;
  border:1px solid rgba(255,255,255,.11) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.06)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
  text-align:center !important;
}
body.materialize-system .tt-ranking-personal-stats i{
  display:grid !important;
  place-items:center !important;
  width:34px !important;
  height:34px !important;
  border-radius:12px !important;
  background:rgba(126,240,171,.16) !important;
  color:#7ef0ab !important;
  font-size:1rem !important;
}
body.materialize-system .tt-ranking-personal-stats small{
  order:2 !important;
  color:#b9cce0 !important;
  font-size:.68rem !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  letter-spacing:.05em !important;
}
body.materialize-system .tt-ranking-personal-stats b{
  order:3 !important;
  color:#ffffff !important;
  font-size:1.42rem !important;
  line-height:1 !important;
  font-weight:950 !important;
}
body.materialize-system .tt-ranking-personal-action{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  position:relative !important;
  z-index:1 !important;
}
body.materialize-system .tt-ranking-personal .btn{
  min-width:152px !important;
  min-height:48px !important;
  border-radius:16px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:#ffffff !important;
  color:#0b1d3a !important;
  font-weight:900 !important;
  box-shadow:0 14px 26px rgba(0,0,0,.12) !important;
}
@media (max-width: 1199.98px){
  body.materialize-system .tt-ranking-personal{
    grid-template-columns:1fr !important;
  }
  body.materialize-system .tt-ranking-personal-action{
    justify-content:flex-start !important;
  }
}
@media (max-width: 767.98px){
  body.materialize-system .tt-ranking-personal{
    padding:18px !important;
    border-radius:24px !important;
    gap:14px !important;
  }
  body.materialize-system .tt-ranking-personal::before{
    border-radius:24px 0 0 24px !important;
  }
  body.materialize-system .tt-ranking-personal-main{
    align-items:flex-start !important;
    gap:12px !important;
  }
  body.materialize-system .tt-ranking-personal-rank{
    flex:0 0 78px !important;
    padding:12px 8px !important;
    border-radius:18px !important;
  }
  body.materialize-system .tt-ranking-personal-rank strong{
    font-size:1.7rem !important;
  }
  body.materialize-system .tt-ranking-personal-identity h3{
    font-size:1.28rem !important;
    white-space:nowrap !important;
  }
  body.materialize-system .tt-ranking-personal-identity p{
    font-size:.88rem !important;
  }
  body.materialize-system .tt-ranking-personal-stats{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
  }
  body.materialize-system .tt-ranking-personal-stats span{
    min-height:84px !important;
    padding:10px 8px !important;
    border-radius:16px !important;
  }
  body.materialize-system .tt-ranking-personal-stats b{
    font-size:1.25rem !important;
  }
  body.materialize-system .tt-ranking-personal .btn{
    width:100% !important;
  }
}

/* Ranking V38 compact elegant refinement */
body.materialize-system .tt-ranking-personal{
  grid-template-columns:minmax(280px,400px) auto auto !important;
  gap:16px !important;
  padding:18px 20px !important;
  border-radius:24px !important;
  border:1px solid #12396c !important;
  background:
    radial-gradient(circle at 88% 14%, rgba(79,239,150,.10), transparent 18%),
    linear-gradient(135deg,#0a1d3a 0%, #0f2f57 50%, #0b2446 100%) !important;
  box-shadow:0 16px 36px rgba(11,29,58,.18) !important;
}
body.materialize-system .tt-ranking-personal::before{
  width:4px !important;
  border-radius:24px 0 0 24px !important;
}
body.materialize-system .tt-ranking-personal-main{
  gap:14px !important;
}
body.materialize-system .tt-ranking-personal-rank{
  flex:0 0 82px !important;
  gap:3px !important;
  padding:11px 8px !important;
  border-radius:18px !important;
}
body.materialize-system .tt-ranking-personal-rank span{
  font-size:.62rem !important;
}
body.materialize-system .tt-ranking-personal-rank strong{
  font-size:1.9rem !important;
}
body.materialize-system .tt-ranking-personal-rank small{
  font-size:.75rem !important;
}
body.materialize-system .tt-ranking-personal-identity{
  gap:3px !important;
}
body.materialize-system .tt-ranking-personal-identity .tt-kicker{
  font-size:.78rem !important;
}
body.materialize-system .tt-ranking-personal-identity h3{
  font-size:clamp(1.35rem,1.8vw,1.9rem) !important;
  line-height:1 !important;
}
body.materialize-system .tt-ranking-personal-identity p{
  font-size:.86rem !important;
  color:#bfd3e5 !important;
}
body.materialize-system .tt-ranking-personal-stats{
  grid-template-columns:repeat(4,minmax(72px,88px)) !important;
  gap:8px !important;
}
body.materialize-system .tt-ranking-personal-stats span{
  min-height:78px !important;
  padding:10px 8px !important;
  border-radius:16px !important;
  gap:4px !important;
}
body.materialize-system .tt-ranking-personal-stats i{
  width:28px !important;
  height:28px !important;
  border-radius:10px !important;
  font-size:.9rem !important;
}
body.materialize-system .tt-ranking-personal-stats small{
  font-size:.62rem !important;
}
body.materialize-system .tt-ranking-personal-stats b{
  font-size:1.22rem !important;
}
body.materialize-system .tt-ranking-personal .btn{
  min-width:132px !important;
  min-height:42px !important;
  padding:0 16px !important;
  border-radius:14px !important;
  font-size:.92rem !important;
}
@media (max-width: 1399.98px){
  body.materialize-system .tt-ranking-personal{
    grid-template-columns:minmax(260px,1fr) 1fr auto !important;
  }
}
@media (max-width: 1199.98px){
  body.materialize-system .tt-ranking-personal{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  body.materialize-system .tt-ranking-personal-stats{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}
@media (max-width: 767.98px){
  body.materialize-system .tt-ranking-personal{
    padding:16px !important;
    border-radius:22px !important;
    gap:12px !important;
  }
  body.materialize-system .tt-ranking-personal::before{
    border-radius:22px 0 0 22px !important;
  }
  body.materialize-system .tt-ranking-personal-rank{
    flex:0 0 72px !important;
    padding:10px 7px !important;
  }
  body.materialize-system .tt-ranking-personal-rank strong{
    font-size:1.6rem !important;
  }
  body.materialize-system .tt-ranking-personal-identity h3{
    font-size:1.15rem !important;
  }
  body.materialize-system .tt-ranking-personal-identity p{
    font-size:.8rem !important;
  }
  body.materialize-system .tt-ranking-personal-stats{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
  }
  body.materialize-system .tt-ranking-personal-stats span{
    min-height:72px !important;
  }
  body.materialize-system .tt-ranking-personal .btn{
    min-height:40px !important;
  }
}

/* Ranking V39 refined personal highlight card */
body.materialize-system .tt-ranking-personal{
  position:relative !important;
  overflow:hidden !important;
  display:grid !important;
  grid-template-columns:minmax(340px, 1.15fr) minmax(420px, .95fr) auto !important;
  align-items:center !important;
  gap:18px !important;
  padding:20px 22px !important;
  border-radius:26px !important;
  border:1px solid #12386d !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(76, 231, 142, .10), transparent 22%),
    radial-gradient(circle at 0% 100%, rgba(33, 90, 168, .18), transparent 24%),
    linear-gradient(135deg,#0a1d3a 0%, #0d2b52 54%, #0d355d 100%) !important;
  color:#fff !important;
  box-shadow:0 18px 34px rgba(11,29,58,.18) !important;
}
body.materialize-system .tt-ranking-personal::before{
  content:"" !important;
  position:absolute !important;
  inset:0 auto 0 0 !important;
  width:4px !important;
  background:linear-gradient(180deg,#22c55e,#7ef0ab) !important;
  border-radius:26px 0 0 26px !important;
}
body.materialize-system .tt-ranking-personal-main{
  display:grid !important;
  grid-template-columns:84px minmax(0,1fr) !important;
  align-items:center !important;
  gap:14px !important;
  min-width:0 !important;
  position:relative !important;
  z-index:1 !important;
}
body.materialize-system .tt-ranking-personal-rank{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:4px !important;
  min-height:104px !important;
  padding:12px 8px !important;
  border-radius:20px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.05)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10), 0 12px 22px rgba(0,0,0,.10) !important;
}
body.materialize-system .tt-ranking-personal-rank span{
  margin:0 !important;
  color:#bdd5ec !important;
  font-size:.64rem !important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  text-align:center !important;
  line-height:1.2 !important;
}
body.materialize-system .tt-ranking-personal-rank strong{
  margin:0 !important;
  color:#fff !important;
  font-size:2rem !important;
  line-height:1 !important;
  font-weight:900 !important;
}
body.materialize-system .tt-ranking-personal-rank small{
  margin:0 !important;
  color:#7ef0ab !important;
  font-size:.8rem !important;
  font-weight:900 !important;
}
body.materialize-system .tt-ranking-personal-identity{
  display:grid !important;
  gap:5px !important;
  min-width:0 !important;
}
body.materialize-system .tt-ranking-personal-identity .tt-kicker{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  margin:0 !important;
  color:#7ef0ab !important;
  font-size:.78rem !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
}
body.materialize-system .tt-ranking-personal-identity h3{
  margin:0 !important;
  color:#ffffff !important;
  font-size:clamp(1.5rem,1.9vw,2rem) !important;
  line-height:1.05 !important;
  font-weight:900 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body.materialize-system .tt-ranking-personal-identity p{
  margin:0 !important;
  color:#d8e7f4 !important;
  font-size:.9rem !important;
  line-height:1.35 !important;
  max-width:380px !important;
}
body.materialize-system .tt-ranking-personal-stats{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(84px, 1fr)) !important;
  gap:10px !important;
  min-width:0 !important;
  position:relative !important;
  z-index:1 !important;
}
body.materialize-system .tt-ranking-personal-stats span{
  display:grid !important;
  justify-items:center !important;
  align-content:center !important;
  gap:5px !important;
  min-height:80px !important;
  padding:10px 8px !important;
  border-radius:18px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.05)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
  text-align:center !important;
}
body.materialize-system .tt-ranking-personal-stats i{
  display:grid !important;
  place-items:center !important;
  width:30px !important;
  height:30px !important;
  border-radius:10px !important;
  background:rgba(126,240,171,.14) !important;
  color:#7ef0ab !important;
  font-size:.95rem !important;
}
body.materialize-system .tt-ranking-personal-stats small{
  color:#bfd3e5 !important;
  font-size:.62rem !important;
  line-height:1 !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
}
body.materialize-system .tt-ranking-personal-stats b{
  color:#ffffff !important;
  font-size:1.3rem !important;
  line-height:1 !important;
  font-weight:900 !important;
}
body.materialize-system .tt-ranking-personal-action{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  position:relative !important;
  z-index:1 !important;
}
body.materialize-system .tt-ranking-personal .btn{
  min-width:140px !important;
  min-height:44px !important;
  padding:0 16px !important;
  border-radius:15px !important;
  border:1px solid rgba(255,255,255,.15) !important;
  background:#ffffff !important;
  color:#0d2446 !important;
  font-size:.92rem !important;
  font-weight:900 !important;
  box-shadow:0 12px 24px rgba(0,0,0,.10) !important;
}

@media (max-width: 1399.98px){
  body.materialize-system .tt-ranking-personal{
    grid-template-columns:minmax(320px,1fr) 1fr auto !important;
  }
}
@media (max-width: 1199.98px){
  body.materialize-system .tt-ranking-personal{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  body.materialize-system .tt-ranking-personal-stats{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
  body.materialize-system .tt-ranking-personal-action{
    justify-content:flex-start !important;
  }
}
@media (max-width: 767.98px){
  body.materialize-system .tt-ranking-personal{
    padding:16px !important;
    border-radius:22px !important;
    gap:12px !important;
  }
  body.materialize-system .tt-ranking-personal::before{
    border-radius:22px 0 0 22px !important;
  }
  body.materialize-system .tt-ranking-personal-main{
    grid-template-columns:72px minmax(0,1fr) !important;
    gap:12px !important;
    align-items:flex-start !important;
  }
  body.materialize-system .tt-ranking-personal-rank{
    min-height:92px !important;
    padding:10px 6px !important;
    border-radius:18px !important;
  }
  body.materialize-system .tt-ranking-personal-rank strong{
    font-size:1.7rem !important;
  }
  body.materialize-system .tt-ranking-personal-rank small{
    font-size:.75rem !important;
  }
  body.materialize-system .tt-ranking-personal-identity .tt-kicker{
    font-size:.68rem !important;
  }
  body.materialize-system .tt-ranking-personal-identity h3{
    font-size:1.18rem !important;
    white-space:normal !important;
    line-height:1.08 !important;
  }
  body.materialize-system .tt-ranking-personal-identity p{
    font-size:.82rem !important;
    max-width:none !important;
  }
  body.materialize-system .tt-ranking-personal-stats{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
  }
  body.materialize-system .tt-ranking-personal-stats span{
    min-height:72px !important;
    border-radius:16px !important;
  }
  body.materialize-system .tt-ranking-personal-stats i{
    width:28px !important;
    height:28px !important;
  }
  body.materialize-system .tt-ranking-personal-stats b{
    font-size:1.18rem !important;
  }
  body.materialize-system .tt-ranking-personal .btn{
    width:100% !important;
    min-height:42px !important;
  }
}

/* Ranking V40 premium compact refinement */
body.materialize-system .tt-ranking-personal{
  grid-template-columns:minmax(340px,1.35fr) auto auto !important;
  gap:14px !important;
  padding:16px 18px !important;
  border-radius:24px !important;
  border:1px solid rgba(32,92,160,.38) !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(70, 214, 137, .12), transparent 22%),
    radial-gradient(circle at 0% 100%, rgba(32, 92, 160, .20), transparent 24%),
    linear-gradient(135deg,#081b38 0%, #0b2447 55%, #0d3158 100%) !important;
  box-shadow:0 14px 30px rgba(9,27,56,.16) !important;
}
body.materialize-system .tt-ranking-personal::before{
  width:3px !important;
  border-radius:24px 0 0 24px !important;
}
body.materialize-system .tt-ranking-personal-main{
  grid-template-columns:68px minmax(0,1fr) !important;
  gap:12px !important;
}
body.materialize-system .tt-ranking-personal-rank{
  min-height:82px !important;
  padding:10px 6px !important;
  border-radius:18px !important;
  gap:3px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.06)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 8px 18px rgba(0,0,0,.08) !important;
}
body.materialize-system .tt-ranking-personal-rank span{
  font-size:.58rem !important;
  letter-spacing:.09em !important;
}
body.materialize-system .tt-ranking-personal-rank strong{
  font-size:1.65rem !important;
}
body.materialize-system .tt-ranking-personal-rank small{
  font-size:.72rem !important;
}
body.materialize-system .tt-ranking-personal-identity{
  gap:3px !important;
}
body.materialize-system .tt-ranking-personal-identity .tt-kicker{
  font-size:.72rem !important;
  gap:5px !important;
}
body.materialize-system .tt-ranking-personal-identity h3{
  font-size:clamp(1.15rem,1.5vw,1.55rem) !important;
  letter-spacing:-.02em !important;
}
body.materialize-system .tt-ranking-personal-identity p{
  font-size:.82rem !important;
  line-height:1.25 !important;
  max-width:300px !important;
}
body.materialize-system .tt-ranking-personal-stats{
  grid-template-columns:repeat(4, minmax(78px, 86px)) !important;
  gap:8px !important;
  justify-content:end !important;
}
body.materialize-system .tt-ranking-personal-stats span{
  min-height:72px !important;
  gap:4px !important;
  padding:8px 6px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.05)) !important;
  border:1px solid rgba(255,255,255,.11) !important;
}
body.materialize-system .tt-ranking-personal-stats i{
  width:24px !important;
  height:24px !important;
  border-radius:8px !important;
  font-size:.82rem !important;
}
body.materialize-system .tt-ranking-personal-stats small{
  font-size:.56rem !important;
  letter-spacing:.08em !important;
}
body.materialize-system .tt-ranking-personal-stats b{
  font-size:1.06rem !important;
}
body.materialize-system .tt-ranking-personal-action{
  align-self:center !important;
}
body.materialize-system .tt-ranking-personal .btn{
  min-width:126px !important;
  min-height:40px !important;
  padding:0 14px !important;
  border-radius:14px !important;
  font-size:.86rem !important;
  box-shadow:0 10px 20px rgba(0,0,0,.10) !important;
}

@media (max-width: 1299.98px){
  body.materialize-system .tt-ranking-personal{
    grid-template-columns:minmax(300px,1fr) auto !important;
  }
  body.materialize-system .tt-ranking-personal-action{
    grid-column:1 / -1 !important;
    justify-content:flex-end !important;
  }
}
@media (max-width: 991.98px){
  body.materialize-system .tt-ranking-personal{
    grid-template-columns:1fr !important;
    gap:12px !important;
    padding:15px !important;
  }
  body.materialize-system .tt-ranking-personal-main{
    grid-template-columns:64px minmax(0,1fr) !important;
  }
  body.materialize-system .tt-ranking-personal-stats{
    grid-template-columns:repeat(4, minmax(0,1fr)) !important;
    justify-content:stretch !important;
  }
  body.materialize-system .tt-ranking-personal-action{
    grid-column:auto !important;
    justify-content:flex-start !important;
  }
}
@media (max-width: 767.98px){
  body.materialize-system .tt-ranking-personal{
    padding:14px !important;
    border-radius:20px !important;
  }
  body.materialize-system .tt-ranking-personal::before{
    border-radius:20px 0 0 20px !important;
  }
  body.materialize-system .tt-ranking-personal-main{
    grid-template-columns:56px minmax(0,1fr) !important;
    gap:10px !important;
  }
  body.materialize-system .tt-ranking-personal-rank{
    min-height:74px !important;
    border-radius:15px !important;
  }
  body.materialize-system .tt-ranking-personal-rank span{
    font-size:.52rem !important;
  }
  body.materialize-system .tt-ranking-personal-rank strong{
    font-size:1.42rem !important;
  }
  body.materialize-system .tt-ranking-personal-rank small{
    font-size:.66rem !important;
  }
  body.materialize-system .tt-ranking-personal-identity .tt-kicker{
    font-size:.62rem !important;
  }
  body.materialize-system .tt-ranking-personal-identity h3{
    font-size:1.02rem !important;
    white-space:nowrap !important;
  }
  body.materialize-system .tt-ranking-personal-identity p{
    font-size:.75rem !important;
    max-width:none !important;
  }
  body.materialize-system .tt-ranking-personal-stats{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:7px !important;
  }
  body.materialize-system .tt-ranking-personal-stats span{
    min-height:62px !important;
    border-radius:14px !important;
    gap:3px !important;
  }
  body.materialize-system .tt-ranking-personal-stats small{
    font-size:.54rem !important;
  }
  body.materialize-system .tt-ranking-personal-stats b{
    font-size:1rem !important;
  }
  body.materialize-system .tt-ranking-personal .btn{
    width:100% !important;
    min-height:40px !important;
    font-size:.84rem !important;
  }
}

/* Ranking V41 premium compact card */
body.materialize-system .tt-ranking-personal{
  grid-template-columns:minmax(320px,1fr) auto auto !important;
  gap:14px !important;
  padding:15px 18px !important;
  border-radius:22px !important;
  border:1px solid rgba(61,111,174,.30) !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(50,207,123,.10), transparent 20%),
    linear-gradient(135deg,#081a36 0%,#0d2b52 58%,#0c3259 100%) !important;
  box-shadow:0 14px 28px rgba(8,26,54,.16) !important;
}
body.materialize-system .tt-ranking-personal::before{
  width:3px !important;
  border-radius:22px 0 0 22px !important;
}
body.materialize-system .tt-ranking-personal-main{
  grid-template-columns:62px minmax(0,1fr) !important;
  gap:12px !important;
}
body.materialize-system .tt-ranking-personal-rank{
  min-height:74px !important;
  padding:8px 6px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.05)) !important;
  border:1px solid rgba(255,255,255,.11) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
}
body.materialize-system .tt-ranking-personal-rank span{
  font-size:.52rem !important;
  letter-spacing:.08em !important;
}
body.materialize-system .tt-ranking-personal-rank strong{
  font-size:1.48rem !important;
}
body.materialize-system .tt-ranking-personal-rank small{
  font-size:.66rem !important;
}
body.materialize-system .tt-ranking-personal-identity{
  gap:2px !important;
}
body.materialize-system .tt-ranking-personal-identity .tt-kicker{
  font-size:.66rem !important;
  letter-spacing:.06em !important;
}
body.materialize-system .tt-ranking-personal-identity h3{
  font-size:clamp(1.18rem,1.5vw,1.55rem) !important;
  line-height:1 !important;
}
body.materialize-system .tt-ranking-personal-identity p{
  margin-top:2px !important;
  font-size:.78rem !important;
  max-width:290px !important;
  color:#c6d7e8 !important;
}
body.materialize-system .tt-ranking-personal-stats{
  grid-template-columns:repeat(4,minmax(96px,112px)) !important;
  gap:8px !important;
}
body.materialize-system .tt-ranking-personal-stats span{
  display:grid !important;
  grid-template-columns:24px 1fr !important;
  grid-template-rows:auto auto !important;
  align-items:center !important;
  justify-items:start !important;
  gap:1px 8px !important;
  min-height:60px !important;
  padding:8px 10px !important;
  border-radius:15px !important;
  background:rgba(255,255,255,.075) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  text-align:left !important;
}
body.materialize-system .tt-ranking-personal-stats i{
  grid-row:1 / 3 !important;
  width:24px !important;
  height:24px !important;
  border-radius:8px !important;
  background:rgba(102,232,155,.15) !important;
  color:#73eba4 !important;
  font-size:.8rem !important;
}
body.materialize-system .tt-ranking-personal-stats small{
  grid-column:2 !important;
  grid-row:1 !important;
  font-size:.53rem !important;
  letter-spacing:.08em !important;
}
body.materialize-system .tt-ranking-personal-stats b{
  grid-column:2 !important;
  grid-row:2 !important;
  font-size:1.08rem !important;
}
body.materialize-system .tt-ranking-personal .btn{
  min-width:122px !important;
  min-height:38px !important;
  padding:0 13px !important;
  border-radius:13px !important;
  font-size:.82rem !important;
}
@media (max-width:1299.98px){
  body.materialize-system .tt-ranking-personal{
    grid-template-columns:1fr auto !important;
  }
  body.materialize-system .tt-ranking-personal-stats{
    grid-row:2 !important;
    grid-column:1 / -1 !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
  body.materialize-system .tt-ranking-personal-action{
    grid-column:2 !important;
    grid-row:1 !important;
  }
}
@media (max-width:767.98px){
  body.materialize-system .tt-ranking-personal{
    grid-template-columns:1fr !important;
    gap:10px !important;
    padding:13px !important;
    border-radius:19px !important;
  }
  body.materialize-system .tt-ranking-personal::before{
    border-radius:19px 0 0 19px !important;
  }
  body.materialize-system .tt-ranking-personal-main{
    grid-template-columns:54px minmax(0,1fr) !important;
    gap:10px !important;
  }
  body.materialize-system .tt-ranking-personal-rank{
    min-height:68px !important;
    border-radius:14px !important;
  }
  body.materialize-system .tt-ranking-personal-rank strong{
    font-size:1.34rem !important;
  }
  body.materialize-system .tt-ranking-personal-identity .tt-kicker{
    font-size:.58rem !important;
  }
  body.materialize-system .tt-ranking-personal-identity h3{
    font-size:1rem !important;
    white-space:nowrap !important;
  }
  body.materialize-system .tt-ranking-personal-identity p{
    font-size:.72rem !important;
    max-width:none !important;
  }
  body.materialize-system .tt-ranking-personal-stats{
    grid-row:auto !important;
    grid-column:auto !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:7px !important;
  }
  body.materialize-system .tt-ranking-personal-stats span{
    min-height:54px !important;
    padding:7px 8px !important;
    border-radius:13px !important;
  }
  body.materialize-system .tt-ranking-personal-action{
    grid-column:auto !important;
    grid-row:auto !important;
    justify-content:stretch !important;
  }
  body.materialize-system .tt-ranking-personal .btn{
    width:100% !important;
    min-height:38px !important;
  }
}

/* Ranking V42 minimalist premium card */
body.materialize-system .tt-ranking-personal.tt-ranking-personal-v42{
  display:grid !important;
  grid-template-columns:minmax(250px,1fr) auto auto !important;
  align-items:center !important;
  gap:14px !important;
  min-height:0 !important;
  padding:14px 16px !important;
  border-radius:20px !important;
  border:1px solid rgba(68,118,180,.28) !important;
  background:
    radial-gradient(circle at 100% 0%,rgba(34,197,94,.10),transparent 22%),
    linear-gradient(135deg,#081a35 0%,#0d2b50 100%) !important;
  box-shadow:0 12px 24px rgba(8,26,53,.14) !important;
}
body.materialize-system .tt-ranking-personal.tt-ranking-personal-v42::before{
  width:3px !important;
  border-radius:20px 0 0 20px !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-main{
  display:grid !important;
  grid-template-columns:56px minmax(0,1fr) !important;
  align-items:center !important;
  gap:11px !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-rank{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:62px !important;
  padding:7px 5px !important;
  border-radius:14px !important;
  gap:2px !important;
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:none !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-rank span{
  font-size:.5rem !important;
  letter-spacing:.08em !important;
  color:#bdd0e4 !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-rank strong{
  font-size:1.32rem !important;
  color:#fff !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-rank small{
  font-size:.62rem !important;
  color:#7ef0ab !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-identity{
  display:grid !important;
  gap:3px !important;
  min-width:0 !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-identity .tt-kicker{
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  font-size:.64rem !important;
  color:#7ef0ab !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.05em !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-identity h3{
  margin:0 !important;
  color:#fff !important;
  font-size:1.15rem !important;
  line-height:1.05 !important;
  font-weight:900 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-identity p{
  display:none !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-stats{
  display:grid !important;
  grid-template-columns:repeat(4,auto) !important;
  gap:0 !important;
  align-items:center !important;
  padding:0 4px !important;
  border-radius:14px !important;
  border:1px solid rgba(255,255,255,.08) !important;
  background:rgba(255,255,255,.04) !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-stats span{
  display:grid !important;
  grid-template-columns:20px auto !important;
  grid-template-rows:auto auto !important;
  align-items:center !important;
  gap:0 7px !important;
  min-width:82px !important;
  min-height:50px !important;
  padding:7px 10px !important;
  border-radius:0 !important;
  border:0 !important;
  border-right:1px solid rgba(255,255,255,.08) !important;
  background:transparent !important;
  box-shadow:none !important;
  text-align:left !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-stats span:last-child{
  border-right:0 !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-stats i{
  grid-row:1 / 3 !important;
  display:grid !important;
  place-items:center !important;
  width:20px !important;
  height:20px !important;
  border-radius:7px !important;
  background:rgba(126,240,171,.13) !important;
  color:#7ef0ab !important;
  font-size:.72rem !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-stats small{
  grid-column:2 !important;
  font-size:.5rem !important;
  color:#bcd0e4 !important;
  letter-spacing:.06em !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-stats b{
  grid-column:2 !important;
  font-size:.98rem !important;
  color:#fff !important;
}
body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal .btn,
body.materialize-system .tt-ranking-personal-v42 .btn{
  min-width:112px !important;
  min-height:36px !important;
  padding:0 12px !important;
  border-radius:12px !important;
  font-size:.78rem !important;
  font-weight:900 !important;
  background:#fff !important;
  color:#0d2446 !important;
  box-shadow:none !important;
}
@media (max-width:1199.98px){
  body.materialize-system .tt-ranking-personal.tt-ranking-personal-v42{
    grid-template-columns:minmax(230px,1fr) auto !important;
  }
  body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-stats{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
  }
  body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-action{
    grid-column:2 !important;
    grid-row:1 !important;
  }
}
@media (max-width:767.98px){
  body.materialize-system .tt-ranking-personal.tt-ranking-personal-v42{
    grid-template-columns:1fr !important;
    gap:9px !important;
    padding:12px !important;
    border-radius:18px !important;
  }
  body.materialize-system .tt-ranking-personal.tt-ranking-personal-v42::before{
    border-radius:18px 0 0 18px !important;
  }
  body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-main{
    grid-template-columns:50px minmax(0,1fr) !important;
    gap:9px !important;
  }
  body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-rank{
    min-height:56px !important;
    border-radius:13px !important;
  }
  body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-rank strong{
    font-size:1.18rem !important;
  }
  body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-identity .tt-kicker{
    font-size:.56rem !important;
  }
  body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-identity h3{
    font-size:.94rem !important;
  }
  body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-stats{
    grid-column:auto !important;
    grid-row:auto !important;
    grid-template-columns:repeat(2,1fr) !important;
    border-radius:13px !important;
  }
  body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-stats span{
    min-width:0 !important;
    min-height:44px !important;
    padding:6px 8px !important;
    border-right:1px solid rgba(255,255,255,.08) !important;
    border-bottom:1px solid rgba(255,255,255,.08) !important;
  }
  body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-stats span:nth-child(2n){
    border-right:0 !important;
  }
  body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-stats span:nth-child(n+3){
    border-bottom:0 !important;
  }
  body.materialize-system .tt-ranking-personal-v42 .tt-ranking-personal-action{
    grid-column:auto !important;
    grid-row:auto !important;
  }
  body.materialize-system .tt-ranking-personal-v42 .btn{
    width:100% !important;
    min-height:36px !important;
  }
}

/* Ranking V43 - light premium system-aligned card */
body.materialize-system .tt-ranking-personal.tt-ranking-personal-v43{
  position:relative !important;
  overflow:hidden !important;
  display:grid !important;
  grid-template-columns:minmax(250px,1fr) auto auto !important;
  align-items:center !important;
  gap:14px !important;
  min-height:0 !important;
  padding:14px 16px !important;
  border:1px solid #e4ebf1 !important;
  border-radius:20px !important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%) !important;
  box-shadow:0 12px 26px rgba(15,23,42,.06) !important;
  color:#0b1d3a !important;
}
body.materialize-system .tt-ranking-personal.tt-ranking-personal-v43::before{
  content:"" !important;
  position:absolute !important;
  inset:0 auto 0 0 !important;
  width:4px !important;
  border-radius:20px 0 0 20px !important;
  background:linear-gradient(180deg,#22c55e,#6ee7a3) !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-main{
  display:grid !important;
  grid-template-columns:54px minmax(0,1fr) !important;
  align-items:center !important;
  gap:11px !important;
  min-width:0 !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-rank{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:56px !important;
  padding:7px 5px !important;
  border:1px solid #dce8e2 !important;
  border-radius:14px !important;
  background:#f5fbf7 !important;
  box-shadow:none !important;
  gap:2px !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-rank span{
  color:#64748b !important;
  font-size:.48rem !important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-rank strong{
  color:#0b1d3a !important;
  font-size:1.22rem !important;
  line-height:1 !important;
  font-weight:950 !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-rank small{
  color:#16a34a !important;
  font-size:.6rem !important;
  font-weight:900 !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-identity{
  display:grid !important;
  gap:2px !important;
  min-width:0 !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-identity .tt-kicker{
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  color:#16a34a !important;
  font-size:.61rem !important;
  font-weight:900 !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-identity h3{
  margin:0 !important;
  color:#0b1d3a !important;
  font-size:1.03rem !important;
  line-height:1.05 !important;
  font-weight:950 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-identity p{
  display:none !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-stats{
  display:grid !important;
  grid-template-columns:repeat(4,76px) !important;
  gap:7px !important;
  align-items:center !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-stats span{
  display:grid !important;
  grid-template-columns:18px auto !important;
  grid-template-rows:auto auto !important;
  align-items:center !important;
  gap:0 6px !important;
  min-width:0 !important;
  min-height:46px !important;
  padding:6px 7px !important;
  border:1px solid #e6edf3 !important;
  border-radius:13px !important;
  background:#f8fafc !important;
  box-shadow:none !important;
  text-align:left !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-stats i{
  grid-row:1 / 3 !important;
  display:grid !important;
  place-items:center !important;
  width:18px !important;
  height:18px !important;
  border-radius:6px !important;
  background:#e8f8ed !important;
  color:#16a34a !important;
  font-size:.68rem !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-stats small{
  grid-column:2 !important;
  color:#718096 !important;
  font-size:.47rem !important;
  font-weight:800 !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-stats b{
  grid-column:2 !important;
  color:#0b1d3a !important;
  font-size:.92rem !important;
  line-height:1 !important;
  font-weight:950 !important;
}
body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-action{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
}
body.materialize-system .tt-ranking-personal-v43 .btn{
  min-width:106px !important;
  min-height:36px !important;
  padding:0 11px !important;
  border:1px solid #dfe7ee !important;
  border-radius:12px !important;
  background:#ffffff !important;
  color:#0b1d3a !important;
  box-shadow:0 7px 14px rgba(15,23,42,.05) !important;
  font-size:.76rem !important;
  font-weight:900 !important;
}
@media (max-width:1199.98px){
  body.materialize-system .tt-ranking-personal.tt-ranking-personal-v43{
    grid-template-columns:minmax(220px,1fr) auto !important;
  }
  body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-stats{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
  body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-action{
    grid-column:2 !important;
    grid-row:1 !important;
  }
}
@media (max-width:767.98px){
  body.materialize-system .tt-ranking-personal.tt-ranking-personal-v43{
    grid-template-columns:1fr !important;
    gap:8px !important;
    padding:11px !important;
    border-radius:16px !important;
    box-shadow:0 8px 18px rgba(15,23,42,.05) !important;
  }
  body.materialize-system .tt-ranking-personal.tt-ranking-personal-v43::before{
    width:3px !important;
    border-radius:16px 0 0 16px !important;
  }
  body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-main{
    grid-template-columns:46px minmax(0,1fr) !important;
    gap:8px !important;
  }
  body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-rank{
    min-height:48px !important;
    border-radius:12px !important;
  }
  body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-rank strong{
    font-size:1.05rem !important;
  }
  body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-rank small{
    font-size:.56rem !important;
  }
  body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-identity .tt-kicker{
    font-size:.54rem !important;
  }
  body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-identity h3{
    font-size:.9rem !important;
  }
  body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-stats{
    grid-column:auto !important;
    grid-row:auto !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:6px !important;
  }
  body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-stats span{
    min-height:40px !important;
    padding:5px 7px !important;
    border-radius:11px !important;
  }
  body.materialize-system .tt-ranking-personal-v43 .tt-ranking-personal-action{
    grid-column:auto !important;
    grid-row:auto !important;
  }
  body.materialize-system .tt-ranking-personal-v43 .btn{
    width:100% !important;
    min-height:34px !important;
    font-size:.74rem !important;
  }
}

/* Ranking V44 - overview claro, compacto e alinhado ao sistema */
body.materialize-system .tt-player-overview-v44{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(260px,1fr) auto auto;
  align-items:center;
  gap:14px;
  padding:13px 15px 13px 17px;
  border:1px solid #e3eaf1;
  border-radius:18px;
  background:#ffffff;
  box-shadow:0 10px 24px rgba(15,23,42,.055);
}
body.materialize-system .tt-player-overview-v44::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:linear-gradient(180deg,#22c55e,#73e79e);
}
body.materialize-system .tt-player-overview__profile{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
}
body.materialize-system .tt-player-overview__rank{
  flex:0 0 54px;
  display:grid;
  justify-items:center;
  align-content:center;
  gap:1px;
  min-height:54px;
  padding:5px;
  border:1px solid #dce8e2;
  border-radius:13px;
  background:#f5fbf7;
}
body.materialize-system .tt-player-overview__rank span{
  color:#64748b;
  font-size:.48rem;
  font-weight:900;
  letter-spacing:.08em;
  line-height:1;
  text-transform:uppercase;
}
body.materialize-system .tt-player-overview__rank strong{
  color:#0b1d3a;
  font-size:1.18rem;
  font-weight:950;
  line-height:1;
}
body.materialize-system .tt-player-overview__rank small{
  color:#16a34a;
  font-size:.58rem;
  font-weight:900;
  line-height:1;
}
body.materialize-system .tt-player-overview__identity{
  display:grid;
  gap:2px;
  min-width:0;
}
body.materialize-system .tt-player-overview__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:4px;
  color:#16a34a;
  font-size:.6rem;
  font-weight:900;
  letter-spacing:.06em;
  line-height:1;
  text-transform:uppercase;
}
body.materialize-system .tt-player-overview__identity h3{
  overflow:hidden;
  margin:0;
  color:#0b1d3a;
  font-size:1.02rem;
  font-weight:950;
  line-height:1.08;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.materialize-system .tt-player-overview__identity p{
  margin:0;
  color:#7c8da1;
  font-size:.72rem;
  font-weight:650;
  line-height:1.2;
}
body.materialize-system .tt-player-overview__metrics{
  display:grid;
  grid-template-columns:repeat(4,68px);
  overflow:hidden;
  border:1px solid #e6edf3;
  border-radius:13px;
  background:#f8fafc;
}
body.materialize-system .tt-player-overview__metric{
  display:grid;
  justify-items:center;
  align-content:center;
  gap:3px;
  min-height:45px;
  padding:6px 5px;
  border-left:1px solid #e6edf3;
}
body.materialize-system .tt-player-overview__metric:first-child{
  border-left:0;
}
body.materialize-system .tt-player-overview__metric span{
  color:#718096;
  font-size:.49rem;
  font-weight:900;
  letter-spacing:.055em;
  line-height:1;
  text-transform:uppercase;
}
body.materialize-system .tt-player-overview__metric strong{
  color:#0b1d3a;
  font-size:.96rem;
  font-weight:950;
  line-height:1;
}
body.materialize-system .tt-player-overview__action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:36px;
  padding:0 12px;
  border:1px solid #dfe7ee;
  border-radius:11px;
  background:#ffffff;
  color:#0b1d3a;
  box-shadow:0 6px 14px rgba(15,23,42,.045);
  font-size:.74rem;
  font-weight:900;
  text-decoration:none;
  white-space:nowrap;
}
body.materialize-system .tt-player-overview__action:hover{
  border-color:#ccefd7;
  background:#f7fff9;
  color:#15803d;
}
@media (max-width:1199.98px){
  body.materialize-system .tt-player-overview-v44{
    grid-template-columns:minmax(210px,1fr) auto;
    gap:10px 12px;
  }
  body.materialize-system .tt-player-overview__metrics{
    grid-column:1 / -1;
    grid-row:2;
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  body.materialize-system .tt-player-overview__action{
    grid-column:2;
    grid-row:1;
  }
}
@media (max-width:767.98px){
  body.materialize-system .tt-player-overview-v44{
    grid-template-columns:1fr;
    gap:8px;
    padding:10px 10px 10px 12px;
    border-radius:15px;
    box-shadow:0 7px 16px rgba(15,23,42,.045);
  }
  body.materialize-system .tt-player-overview-v44::before{
    width:3px;
  }
  body.materialize-system .tt-player-overview__profile{
    gap:8px;
  }
  body.materialize-system .tt-player-overview__rank{
    flex-basis:45px;
    min-height:45px;
    padding:4px;
    border-radius:11px;
  }
  body.materialize-system .tt-player-overview__rank span{
    font-size:.42rem;
  }
  body.materialize-system .tt-player-overview__rank strong{
    font-size:1rem;
  }
  body.materialize-system .tt-player-overview__rank small{
    font-size:.52rem;
  }
  body.materialize-system .tt-player-overview__eyebrow{
    font-size:.51rem;
  }
  body.materialize-system .tt-player-overview__identity h3{
    font-size:.88rem;
  }
  body.materialize-system .tt-player-overview__identity p{
    display:none;
  }
  body.materialize-system .tt-player-overview__metrics{
    grid-column:auto;
    grid-row:auto;
    grid-template-columns:repeat(4,minmax(0,1fr));
    border-radius:11px;
  }
  body.materialize-system .tt-player-overview__metric{
    min-height:39px;
    padding:5px 3px;
  }
  body.materialize-system .tt-player-overview__metric span{
    font-size:.42rem;
  }
  body.materialize-system .tt-player-overview__metric strong{
    font-size:.86rem;
  }
  body.materialize-system .tt-player-overview__action{
    grid-column:auto;
    grid-row:auto;
    width:100%;
    min-height:32px;
    border-radius:10px;
    font-size:.7rem;
  }
}

/* Ranking V45 - new performance card structure */
body.materialize-system .tt-performance-card-v45{
  position:relative;
  overflow:hidden;
  margin:0;
  border:1px solid #e2eaf1;
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 26px rgba(15,23,42,.055);
}
body.materialize-system .tt-performance-card-v45::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:linear-gradient(180deg,#22c55e,#73e79e);
}
body.materialize-system .tt-performance-card-v45__head{
  display:grid;
  grid-template-columns:44px minmax(180px,1fr) auto auto;
  align-items:center;
  gap:12px;
  padding:13px 15px 12px 17px;
}
body.materialize-system .tt-performance-card-v45__icon{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:13px;
  background:#effbf3;
  border:1px solid #d8efe0;
  color:#16a34a;
  font-size:1rem;
}
body.materialize-system .tt-performance-card-v45__identity{
  display:grid;
  gap:2px;
  min-width:0;
}
body.materialize-system .tt-performance-card-v45__identity span{
  color:#16a34a;
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.08em;
  line-height:1;
  text-transform:uppercase;
}
body.materialize-system .tt-performance-card-v45__identity h3{
  overflow:hidden;
  margin:0;
  color:#0b1d3a;
  font-size:1rem;
  font-weight:950;
  line-height:1.05;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.materialize-system .tt-performance-card-v45__identity p{
  margin:0;
  color:#8a9aac;
  font-size:.7rem;
  font-weight:700;
  line-height:1.1;
}
body.materialize-system .tt-performance-card-v45__rank{
  display:flex;
  align-items:baseline;
  gap:6px;
  padding:7px 10px;
  border:1px solid #e2eaf1;
  border-radius:12px;
  background:#f8fafc;
  white-space:nowrap;
}
body.materialize-system .tt-performance-card-v45__rank small{
  color:#7b8a9c;
  font-size:.58rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
body.materialize-system .tt-performance-card-v45__rank strong{
  color:#0b1d3a;
  font-size:1.05rem;
  font-weight:950;
  line-height:1;
}
body.materialize-system .tt-performance-card-v45__rank em{
  color:#16a34a;
  font-size:.65rem;
  font-style:normal;
  font-weight:900;
}
body.materialize-system .tt-performance-card-v45__action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:34px;
  padding:0 11px;
  border:1px solid #dfe7ee;
  border-radius:11px;
  background:#fff;
  color:#0b1d3a;
  font-size:.72rem;
  font-weight:900;
  text-decoration:none;
  white-space:nowrap;
}
body.materialize-system .tt-performance-card-v45__action:hover{
  border-color:#ccefd7;
  background:#f7fff9;
  color:#15803d;
}
body.materialize-system .tt-performance-card-v45__metrics{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid #edf2f6;
  background:#fbfdff;
}
body.materialize-system .tt-performance-card-v45__metrics div{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:38px;
  padding:7px 10px;
  border-left:1px solid #edf2f6;
}
body.materialize-system .tt-performance-card-v45__metrics div:first-child{
  border-left:0;
}
body.materialize-system .tt-performance-card-v45__metrics span{
  color:#7c8b9d;
  font-size:.6rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
body.materialize-system .tt-performance-card-v45__metrics strong{
  color:#0b1d3a;
  font-size:.94rem;
  font-weight:950;
  line-height:1;
}
@media (max-width:767.98px){
  body.materialize-system .tt-performance-card-v45{
    border-radius:16px;
    box-shadow:0 7px 16px rgba(15,23,42,.045);
  }
  body.materialize-system .tt-performance-card-v45::before{
    width:3px;
  }
  body.materialize-system .tt-performance-card-v45__head{
    grid-template-columns:36px minmax(0,1fr) auto;
    gap:8px;
    padding:10px 10px 9px 12px;
  }
  body.materialize-system .tt-performance-card-v45__icon{
    width:34px;
    height:34px;
    border-radius:11px;
    font-size:.88rem;
  }
  body.materialize-system .tt-performance-card-v45__identity span{
    font-size:.52rem;
  }
  body.materialize-system .tt-performance-card-v45__identity h3{
    font-size:.86rem;
  }
  body.materialize-system .tt-performance-card-v45__identity p{
    display:none;
  }
  body.materialize-system .tt-performance-card-v45__rank{
    gap:3px;
    padding:5px 7px;
    border-radius:10px;
  }
  body.materialize-system .tt-performance-card-v45__rank small{
    display:none;
  }
  body.materialize-system .tt-performance-card-v45__rank strong{
    font-size:.9rem;
  }
  body.materialize-system .tt-performance-card-v45__rank em{
    font-size:.56rem;
  }
  body.materialize-system .tt-performance-card-v45__action{
    grid-column:1 / -1;
    min-height:31px;
    border-radius:9px;
    font-size:.68rem;
  }
  body.materialize-system .tt-performance-card-v45__metrics{
    grid-template-columns:repeat(4,1fr);
  }
  body.materialize-system .tt-performance-card-v45__metrics div{
    display:grid;
    justify-items:center;
    gap:2px;
    min-height:36px;
    padding:5px 2px;
  }
  body.materialize-system .tt-performance-card-v45__metrics span{
    font-size:.47rem;
  }
  body.materialize-system .tt-performance-card-v45__metrics strong{
    font-size:.82rem;
  }
}

/* =========================================================
   Rankings V46 - premium light redesign
   ========================================================= */
body.materialize-system .tt-rank-premium-summary{
  position:relative;
  overflow:hidden;
  display:grid;
  gap:0;
  margin:0;
  border:1px solid #e4ecf2;
  border-radius:24px;
  background:#ffffff;
  box-shadow:0 18px 36px rgba(15,23,42,.07);
}
body.materialize-system .tt-rank-premium-summary::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:linear-gradient(180deg,#22c55e,#67e8a5);
}
body.materialize-system .tt-rank-premium-summary::after{
  content:"";
  position:absolute;
  right:-70px;
  bottom:-90px;
  width:220px;
  height:220px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(34,197,94,.08),transparent 68%);
  pointer-events:none;
}
body.materialize-system .tt-rank-premium-summary__top{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:18px;
  padding:22px 24px 18px 28px;
}
body.materialize-system .tt-rank-premium-summary__profile{
  display:flex;
  align-items:center;
  gap:16px;
  min-width:0;
}
body.materialize-system .tt-rank-premium-summary__trophy{
  display:grid;
  place-items:center;
  flex:0 0 62px;
  width:62px;
  height:62px;
  border-radius:20px;
  background:linear-gradient(135deg,#ecfdf3,#dcfce7);
  color:#16a34a;
  border:1px solid #d4f6df;
  font-size:1.5rem;
}
body.materialize-system .tt-rank-premium-summary__identity{
  display:grid;
  gap:4px;
  min-width:0;
}
body.materialize-system .tt-rank-premium-summary__identity span{
  color:#16a34a;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
body.materialize-system .tt-rank-premium-summary__identity h3{
  margin:0;
  color:#0b1d3a;
  font-size:clamp(1.25rem,1.7vw,1.7rem);
  line-height:1;
  font-weight:950;
  letter-spacing:-.03em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.materialize-system .tt-rank-premium-summary__identity p{
  margin:0;
  color:#7d8ea3;
  font-size:.88rem;
  font-weight:650;
}
body.materialize-system .tt-rank-premium-summary__position{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 16px;
  border-radius:16px;
  border:1px solid #e7edf3;
  background:#fbfcfe;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
body.materialize-system .tt-rank-premium-summary__position strong{
  color:#0b1d3a;
  font-size:1.75rem;
  line-height:1;
  font-weight:950;
}
body.materialize-system .tt-rank-premium-summary__position span{
  color:#16a34a;
  font-size:.9rem;
  font-weight:900;
  white-space:nowrap;
}
body.materialize-system .tt-rank-premium-summary__action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:0 16px;
  border-radius:14px;
  border:1px solid #d7e1ea;
  background:#fff;
  color:#0b1d3a;
  text-decoration:none;
  font-size:.9rem;
  font-weight:900;
  box-shadow:0 8px 18px rgba(15,23,42,.05);
  transition:.2s ease;
}
body.materialize-system .tt-rank-premium-summary__action:hover{
  transform:translateY(-1px);
  border-color:#b9e7c7;
  color:#15803d;
  box-shadow:0 12px 22px rgba(15,23,42,.08);
}
body.materialize-system .tt-rank-premium-summary__action i{
  color:#16a34a;
  font-size:1rem;
}
body.materialize-system .tt-rank-premium-summary__bottom{
  position:relative;
  z-index:1;
  padding:0 24px 20px 28px;
}
body.materialize-system .tt-rank-premium-summary__metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  overflow:hidden;
  border:1px solid #e7edf3;
  border-radius:16px;
  background:#fbfcfe;
}
body.materialize-system .tt-rank-premium-summary__metrics article{
  display:grid;
  grid-template-columns:36px 1fr;
  grid-template-areas:
    "icon label"
    "icon value";
  align-items:center;
  gap:2px 10px;
  min-height:66px;
  padding:11px 14px;
  border-right:1px solid #e7edf3;
}
body.materialize-system .tt-rank-premium-summary__metrics article:last-child{
  border-right:0;
}
body.materialize-system .tt-rank-premium-summary__metrics i{
  grid-area:icon;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:12px;
  background:#effbf3;
  color:#16a34a;
  font-size:1rem;
}
body.materialize-system .tt-rank-premium-summary__metrics span{
  grid-area:label;
  color:#6f8197;
  font-size:.68rem;
  line-height:1;
  font-weight:850;
  letter-spacing:.04em;
  text-transform:uppercase;
}
body.materialize-system .tt-rank-premium-summary__metrics strong{
  grid-area:value;
  color:#0b1d3a;
  font-size:1.25rem;
  line-height:1;
  font-weight:950;
}

/* Refined ranking list */
body.materialize-system .tt-ranking-card{
  overflow:hidden;
  border-radius:24px!important;
  border:1px solid #e3ebf2!important;
  background:#fff!important;
  box-shadow:0 16px 32px rgba(15,23,42,.055)!important;
}
body.materialize-system .tt-ranking-card .card-body{
  padding:18px!important;
}
body.materialize-system .tt-ranking-list{
  display:grid;
  gap:8px;
}
body.materialize-system .tt-ranking-row{
  display:grid;
  grid-template-columns:34px 40px minmax(150px,1fr) minmax(190px,auto) 62px 34px;
  align-items:center;
  gap:10px;
  min-height:58px;
  padding:8px 10px;
  border:1px solid #e7edf3;
  border-radius:16px;
  background:#fff;
  box-shadow:none;
}
body.materialize-system .tt-ranking-row.is-current{
  border-color:#c9efd5;
  background:linear-gradient(135deg,#f1fff5,#fbfffc);
}
body.materialize-system .tt-ranking-position{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border-radius:50%;
  background:#eff3f7;
  color:#0b1d3a;
  font-size:.82rem;
  font-weight:950;
}
body.materialize-system .tt-ranking-row.podium-1 .tt-ranking-position{background:#e5a90a;color:#fff}
body.materialize-system .tt-ranking-row.podium-2 .tt-ranking-position{background:#7b8aa1;color:#fff}
body.materialize-system .tt-ranking-row.podium-3 .tt-ranking-position{background:#b86111;color:#fff}
body.materialize-system .tt-ranking-row.is-current .tt-ranking-position{background:#8de2a6;color:#0f5132}
body.materialize-system .tt-ranking-avatar{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:50%;
  background:#0b1d3a;
  color:#fff;
  font-size:.86rem;
  font-weight:950;
}
body.materialize-system .tt-ranking-row.podium-1 .tt-ranking-avatar{background:#b7791f}
body.materialize-system .tt-ranking-row.podium-2 .tt-ranking-avatar{background:#64748b}
body.materialize-system .tt-ranking-row.podium-3 .tt-ranking-avatar{background:#b45309}
body.materialize-system .tt-ranking-name{
  display:grid;
  gap:2px;
  min-width:0;
}
body.materialize-system .tt-ranking-name strong{
  overflow:hidden;
  color:#0b1d3a;
  font-size:.92rem;
  line-height:1.1;
  font-weight:900;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.materialize-system .tt-ranking-name small{
  color:#7d8ea3;
  font-size:.68rem;
  font-weight:750;
}
body.materialize-system .tt-ranking-mini{
  display:grid;
  grid-template-columns:repeat(3,54px);
  gap:6px;
}
body.materialize-system .tt-ranking-mini span{
  display:grid;
  justify-items:center;
  gap:2px;
  padding:6px 4px;
  border:1px solid #e8eef4;
  border-radius:12px;
  background:#fbfcfe;
}
body.materialize-system .tt-ranking-mini b{
  color:#0b1d3a;
  font-size:.92rem;
  line-height:1;
  font-weight:950;
}
body.materialize-system .tt-ranking-mini small{
  color:#7b8da3;
  font-size:.55rem;
  font-weight:850;
  letter-spacing:.05em;
  text-transform:uppercase;
}
body.materialize-system .tt-ranking-points{
  display:grid;
  justify-items:end;
  color:#15803d;
  font-size:1.08rem;
  line-height:1;
  font-weight:950;
}
body.materialize-system .tt-ranking-points small{
  margin-top:2px;
  color:#7d8ea3;
  font-size:.55rem;
  font-weight:850;
  letter-spacing:.05em;
  text-transform:uppercase;
}
body.materialize-system .tt-share-icon{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border:1px solid #cff0d9;
  border-radius:11px;
  background:#f5fff8;
  color:#16a34a;
  text-decoration:none;
}

/* Achievement cards */
body.materialize-system .tt-achievement-grid{
  display:grid;
  gap:9px;
}
body.materialize-system .tt-achievement-grid article{
  display:flex;
  align-items:center;
  gap:11px;
  min-height:58px;
  padding:10px 11px;
  border:1px solid #e6edf2;
  border-left:3px solid #2ed06d;
  border-radius:14px;
  background:#fff;
  box-shadow:none;
}
body.materialize-system .tt-achievement-grid article::after{display:none}
body.materialize-system .tt-achievement-grid i{
  display:grid!important;
  place-items:center!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border:0!important;
  border-radius:50%!important;
  background:#effbf3!important;
  color:#1abf5a!important;
  box-shadow:none!important;
  font-size:1.05rem!important;
}
body.materialize-system .tt-achievement-grid strong{
  color:#0b1d3a;
  font-size:.9rem;
  font-weight:900;
}
body.materialize-system .tt-achievement-grid small{
  color:#7b8da3;
  font-size:.68rem;
  line-height:1.25;
}

@media (max-width: 991.98px){
  body.materialize-system .tt-rank-premium-summary__top{
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    padding:16px 16px 12px 20px;
  }
  body.materialize-system .tt-rank-premium-summary__profile{
    gap:10px;
  }
  body.materialize-system .tt-rank-premium-summary__trophy{
    flex-basis:42px;
    width:42px;
    height:42px;
    border-radius:14px;
    font-size:1rem;
  }
  body.materialize-system .tt-rank-premium-summary__identity span{font-size:.6rem}
  body.materialize-system .tt-rank-premium-summary__identity h3{font-size:1.02rem}
  body.materialize-system .tt-rank-premium-summary__identity p{font-size:.74rem}
  body.materialize-system .tt-rank-premium-summary__position{
    gap:6px;
    padding:8px 10px;
    border-radius:12px;
  }
  body.materialize-system .tt-rank-premium-summary__position strong{font-size:1.24rem}
  body.materialize-system .tt-rank-premium-summary__position span{font-size:.72rem}
  body.materialize-system .tt-rank-premium-summary__action{
    grid-column:1/-1;
    min-height:36px;
    border-radius:11px;
    font-size:.8rem;
  }
  body.materialize-system .tt-rank-premium-summary__bottom{
    padding:0 12px 12px 16px;
  }
  body.materialize-system .tt-rank-premium-summary__metrics{
    grid-template-columns:repeat(4,minmax(0,1fr));
    border-radius:12px;
  }
  body.materialize-system .tt-rank-premium-summary__metrics article{
    display:grid;
    grid-template-columns:1fr;
    grid-template-areas:"icon" "label" "value";
    justify-items:center;
    gap:3px;
    min-height:58px;
    padding:7px 3px;
    text-align:center;
  }
  body.materialize-system .tt-rank-premium-summary__metrics i{
    width:24px;
    height:24px;
    border-radius:8px;
    font-size:.78rem;
  }
  body.materialize-system .tt-rank-premium-summary__metrics span{font-size:.5rem}
  body.materialize-system .tt-rank-premium-summary__metrics strong{font-size:.95rem}

  body.materialize-system .tt-ranking-card .card-body{padding:14px!important}
  body.materialize-system .tt-card-title-row{align-items:center;margin-bottom:12px}
  body.materialize-system .tt-card-title-row h2{font-size:1rem!important}
  body.materialize-system .tt-card-title-row .badge{font-size:.62rem;padding:7px 9px}
  body.materialize-system .tt-ranking-row{
    grid-template-columns:28px 34px minmax(0,1fr) 50px;
    grid-template-areas:"pos avatar name points";
    gap:8px;
    min-height:50px;
    padding:7px 8px;
    border-radius:14px;
  }
  body.materialize-system .tt-ranking-position{grid-area:pos;width:26px;height:26px;font-size:.72rem}
  body.materialize-system .tt-ranking-avatar{grid-area:avatar;width:32px;height:32px;font-size:.72rem}
  body.materialize-system .tt-ranking-name{grid-area:name}
  body.materialize-system .tt-ranking-name strong{font-size:.82rem}
  body.materialize-system .tt-ranking-name small{font-size:.6rem}
  body.materialize-system .tt-ranking-mini{display:none}
  body.materialize-system .tt-ranking-points{grid-area:points;font-size:.95rem}
  body.materialize-system .tt-share-icon{display:none}
}

/* =========================================================
   Ranking V47 - ícones verdes visíveis + posição/pontos separados
   ========================================================= */
body.materialize-system .tt-rank-premium-summary--v47{
  position:relative;
  overflow:hidden;
  display:grid;
  gap:14px;
  padding:18px 20px;
  border:1px solid #dfe7ef;
  border-left:4px solid #22c55e;
  border-radius:20px;
  background:#ffffff;
  box-shadow:0 12px 28px rgba(15,23,42,.06);
}
body.materialize-system .tt-rank-premium-summary--v47::before,
body.materialize-system .tt-rank-premium-summary--v47::after{
  display:none!important;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__main{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__profile{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__trophy{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:50px;
  height:50px;
  border-radius:15px;
  border:1px solid #bbf7d0;
  background:#f0fdf4;
  color:#22c55e;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__trophy i{
  color:#22c55e!important;
  opacity:1!important;
  font-size:1.35rem;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__identity{
  display:grid;
  gap:2px;
  min-width:0;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__identity span{
  color:#16a34a;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__identity h3{
  margin:0;
  color:#0f2747;
  font-size:1.35rem;
  line-height:1.08;
  font-weight:900;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__identity p{
  margin:0;
  color:#64748b;
  font-size:.82rem;
  font-weight:650;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__side{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__badge{
  min-width:82px;
  padding:9px 12px;
  border:1px solid #dfe7ef;
  border-radius:14px;
  background:#f8fafc;
  text-align:center;
  line-height:1.05;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__badge small{
  display:block;
  margin-bottom:4px;
  color:#64748b;
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__badge strong{
  display:block;
  color:#0f2747;
  font-size:1.28rem;
  font-weight:900;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__badge--points strong{
  color:#16a34a;
  font-size:1.05rem;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:42px;
  padding:0 15px;
  border:1px solid #dfe7ef;
  border-radius:14px;
  background:#fff;
  color:#0f2747;
  font-size:.88rem;
  font-weight:850;
  text-decoration:none;
  transition:.2s ease;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__action:hover{
  border-color:#bbf7d0;
  color:#16a34a;
  box-shadow:0 8px 18px rgba(34,197,94,.10);
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__action i{
  color:#22c55e!important;
  opacity:1!important;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  overflow:hidden;
  border:1px solid #dfe7ef;
  border-radius:14px;
  background:#f8fafc;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__metrics article{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:62px;
  padding:10px 14px;
  border-right:1px solid #dfe7ef;
  background:transparent;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__metrics article:last-child{
  border-right:0;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__metrics i{
  color:#22c55e!important;
  opacity:1!important;
  font-size:1.18rem;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__metrics span{
  color:#64748b;
  font-size:.64rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}
body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__metrics strong{
  color:#0f2747;
  font-size:1.18rem;
  line-height:1;
  font-weight:900;
}

@media (max-width: 991.98px){
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__main{
    grid-template-columns:1fr;
    gap:12px;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__side{
    justify-content:flex-start;
  }
}
@media (max-width: 767.98px){
  body.materialize-system .tt-rank-premium-summary--v47{
    gap:12px;
    padding:14px;
    border-radius:18px;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__trophy{
    width:42px;
    height:42px;
    border-radius:13px;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__identity h3{
    font-size:1.05rem;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__identity p{
    font-size:.74rem;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__side{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__badge{
    min-width:0;
    padding:8px 9px;
    border-radius:12px;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__badge strong{
    font-size:1.1rem;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__badge--points strong{
    font-size:.98rem;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__action{
    grid-column:1 / -1;
    min-height:38px;
    border-radius:12px;
    font-size:.84rem;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
    border-radius:12px;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__metrics article{
    justify-content:flex-start;
    min-height:52px;
    padding:9px 10px;
    border-right:1px solid #dfe7ef;
    border-bottom:1px solid #dfe7ef;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__metrics article:nth-child(2n){
    border-right:0;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__metrics article:nth-last-child(-n+2){
    border-bottom:0;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__metrics i{
    font-size:1rem;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__metrics span{
    font-size:.58rem;
  }
  body.materialize-system .tt-rank-premium-summary--v47 .tt-rank-premium-summary__metrics strong{
    font-size:1rem;
  }
}


/* ===== Ranking summary V48: inline compact ===== */
body.materialize-system .tt-rank-premium-summary--v48{position:relative;margin:0 0 1.1rem;padding:.72rem .95rem;border:1px solid rgba(18,32,61,.09);border-left:4px solid #22c55e;border-radius:20px;background:linear-gradient(180deg,#ffffff 0%,#fbfefd 100%);box-shadow:0 10px 26px rgba(15,23,42,.05);}
body.materialize-system .tt-rank-premium-summary--v48::before,body.materialize-system .tt-rank-premium-summary--v48::after{display:none !important;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__inline{display:flex;align-items:center;gap:.62rem;flex-wrap:nowrap;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__profile{min-width:0;display:flex;align-items:center;gap:.75rem;flex:1 1 320px;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__trophy{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;flex:0 0 42px;background:linear-gradient(180deg,rgba(34,197,94,.12),rgba(34,197,94,.06));border:1px solid rgba(34,197,94,.22);color:#16a34a;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__trophy i{font-size:1.16rem;color:#16a34a;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__identity{min-width:0;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__identity span{display:block;margin:0 0 .14rem;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#16a34a;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__identity h3{margin:0;font-size:clamp(1.02rem,1.18vw,1.42rem);line-height:1.05;color:#0f172a;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__identity p{margin:.12rem 0 0;font-size:.82rem;color:#64748b;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__metric{display:flex;align-items:center;gap:.52rem;min-width:112px;justify-content:center;padding:.58rem .68rem;border:1px solid rgba(18,32,61,.08);border-radius:16px;background:#fff;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__metric i{font-size:1rem;color:#16a34a;opacity:1;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__metric div{display:flex;flex-direction:column;line-height:1.05;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__metric span{font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#64748b;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__metric strong{font-size:1.18rem;font-weight:800;color:#0f172a;margin-top:.08rem;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__badge-group{display:flex;align-items:center;gap:.45rem;flex:0 0 auto;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__badge{padding:.52rem .75rem;border-radius:15px;background:#fff;border:1px solid rgba(18,32,61,.08);text-align:center;min-width:82px;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__badge small{display:block;font-size:.6rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin-bottom:.08rem;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__badge strong{display:block;font-size:1.18rem;font-weight:900;color:#0f172a;line-height:1;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__badge--points strong{color:#16a34a;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__action{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:.42rem;padding:.68rem .92rem;border-radius:15px;min-height:48px;font-size:.92rem;font-weight:800;color:#0f172a;background:#fff;border:1px solid rgba(18,32,61,.08);text-decoration:none;white-space:nowrap;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__action i{color:#16a34a;font-size:1rem;}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__action:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(15,23,42,.08);}
@media (max-width:1399.98px){body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__inline{gap:.5rem;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__metric{min-width:100px;padding:.52rem .55rem;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__badge{min-width:74px;padding:.5rem .62rem;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__action{padding:.64rem .8rem;}}
@media (max-width:1199.98px){body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__inline{flex-wrap:wrap;align-items:stretch;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__profile{flex:1 1 100%;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__metric{flex:1 1 calc(25% - .5rem);min-width:0;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__badge-group{margin-left:auto;}}
@media (max-width:767.98px){body.materialize-system .tt-rank-premium-summary--v48{padding:.7rem;border-radius:18px;margin-bottom:.9rem;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__inline{gap:.48rem;align-items:stretch;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__profile{flex:1 1 100%;gap:.58rem;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__trophy{width:38px;height:38px;border-radius:12px;flex-basis:38px;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__identity h3{font-size:1rem;white-space:normal;line-height:1.06;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__identity p{font-size:.74rem;white-space:normal;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__metric{flex:1 1 calc(50% - .3rem);justify-content:flex-start;padding:.52rem .58rem;border-radius:14px;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__metric strong{font-size:1.02rem;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__badge-group{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:.45rem;order:4;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__badge{min-width:0;padding:.5rem .58rem;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__badge strong{font-size:1.02rem;}body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__action{width:100%;order:5;min-height:44px;font-size:.88rem;padding:.62rem .75rem;}}


/* ===== Ranking V49 icon + points fix ===== */
body.materialize-system .tt-achievement-grid article{
  border-left:4px solid #22c55e !important;
  background:linear-gradient(135deg,#ffffff 0%,#f7fff9 100%) !important;
}
body.materialize-system .tt-achievement-grid i{
  display:grid !important;
  place-items:center !important;
  background:linear-gradient(135deg,#22c55e,#16a34a) !important;
  color:#ffffff !important;
  border:1px solid #17924a !important;
  box-shadow:0 10px 22px rgba(34,197,94,.24) !important;
  opacity:1 !important;
}
body.materialize-system .tt-achievement-grid strong{
  color:#0f172a !important;
}
body.materialize-system .tt-ranking-row{
  gap:12px !important;
}
body.materialize-system .tt-ranking-points{
  min-width:78px !important;
  display:inline-flex !important;
  align-items:baseline !important;
  justify-content:flex-end !important;
  gap:4px !important;
  white-space:nowrap !important;
  padding-right:4px !important;
  line-height:1 !important;
}
body.materialize-system .tt-ranking-points small{
  margin-top:0 !important;
  font-size:.66rem !important;
}
body.materialize-system .tt-share-icon{
  flex:0 0 36px !important;
  width:36px !important;
  height:36px !important;
  margin-left:2px !important;
}
@media (max-width: 767.98px){
  body.materialize-system .tt-ranking-points{
    min-width:64px !important;
    justify-self:end !important;
    font-size:1rem !important;
  }
  body.materialize-system .tt-achievement-grid i{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    border-radius:13px !important;
  }
}


/* ===== Ranking V50 spacing + compact ===== */
body.materialize-system .tt-ranking-page{
  gap:18px !important;
  padding-top:14px !important;
}
body.materialize-system .tt-ranking-hero{
  margin-top:10px !important;
  padding:22px 24px !important;
  border-radius:22px !important;
}
body.materialize-system .tt-ranking-hero h1{
  font-size:clamp(1.55rem,2.6vw,2.1rem) !important;
  margin:4px 0 6px !important;
}
body.materialize-system .tt-ranking-hero p{
  font-size:.95rem !important;
  line-height:1.55 !important;
  max-width:720px !important;
}
body.materialize-system .tt-ranking-hero .btn{
  padding:.78rem 1rem !important;
  font-size:.92rem !important;
}
body.materialize-system .tt-kicker{
  font-size:.74rem !important;
}
body.materialize-system .tt-ranking-card .tt-kicker{
  font-size:.72rem !important;
}
body.materialize-system .tt-ranking-card h2{
  font-size:1.08rem !important;
}
body.materialize-system .tt-ranking-card .text-muted{
  font-size:.92rem !important;
}
body.materialize-system .tt-ranking-row{
  gap:14px !important;
}
body.materialize-system .tt-ranking-name small{
  font-size:.64rem !important;
}
body.materialize-system .tt-ranking-mini span{
  min-width:38px !important;
}
body.materialize-system .tt-ranking-points{
  min-width:74px !important;
  margin-left:auto !important;
  margin-right:14px !important;
  text-align:right !important;
  justify-content:flex-end !important;
}
body.materialize-system .tt-ranking-points small{
  font-size:.62rem !important;
}
body.materialize-system .tt-share-icon{
  margin-left:6px !important;
  flex:0 0 38px !important;
  width:38px !important;
  height:38px !important;
}
@media (max-width: 767.98px){
  body.materialize-system .tt-ranking-page{
    padding-top:10px !important;
    gap:14px !important;
  }
  body.materialize-system .tt-ranking-hero{
    margin-top:12px !important;
    padding:18px 16px !important;
  }
  body.materialize-system .tt-ranking-hero h1{
    font-size:1.5rem !important;
  }
  body.materialize-system .tt-ranking-hero p{
    font-size:.88rem !important;
    line-height:1.45 !important;
  }
  body.materialize-system .tt-ranking-card h2{
    font-size:1rem !important;
  }
  body.materialize-system .tt-ranking-points{
    margin-right:10px !important;
    min-width:68px !important;
  }
  body.materialize-system .tt-share-icon{
    width:34px !important;
    height:34px !important;
    flex-basis:34px !important;
  }
}


/* ===== Ranking V51 spacing clean ===== */
body.materialize-system .tt-rank-premium-summary--v48{
  border-left:1px solid rgba(18,32,61,.09) !important;
}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__inline{
  gap:.78rem !important;
}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__badge-group{
  margin-left:.35rem !important;
}
body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__action{
  margin-left:.55rem !important;
}
body.materialize-system .tt-ranking-row{
  grid-template-columns:34px 40px minmax(150px,1fr) minmax(190px,auto) 86px 42px !important;
  column-gap:12px !important;
}
body.materialize-system .tt-ranking-points{
  min-width:86px !important;
  padding-right:10px !important;
}
body.materialize-system .tt-share-icon{
  width:38px !important;
  height:38px !important;
  margin-left:8px !important;
  justify-self:end !important;
}
body.materialize-system .tt-achievement-grid article{
  border-left:1px solid #e6edf2 !important;
  background:#fff !important;
}
body.materialize-system .tt-achievement-grid i{
  background:linear-gradient(135deg,#22c55e,#16a34a) !important;
  color:#fff !important;
}
@media (max-width: 991.98px){
  body.materialize-system .tt-ranking-row{
    grid-template-columns:28px 34px minmax(0,1fr) 62px !important;
  }
  body.materialize-system .tt-ranking-points{
    min-width:62px !important;
    padding-right:2px !important;
  }
}
@media (max-width: 767.98px){
  body.materialize-system .tt-rank-premium-summary--v48{
    border-left:1px solid rgba(18,32,61,.09) !important;
  }
  body.materialize-system .tt-rank-premium-summary--v48 .tt-rank-premium-summary__action{
    margin-left:0 !important;
  }
  body.materialize-system .tt-achievement-grid article{
    border-left:1px solid #e6edf2 !important;
  }
}

/* TT_PRODUCT_MOBILE_BOTTOM_NAV_V8
   Menu inferior colado na base, responsivo e separado por contexto. */
:root{
  --tt-mobile-bottom-nav-safe: env(safe-area-inset-bottom, 0px);
  --tt-mobile-bottom-nav-height: clamp(60px, 14vw, 70px);
  --tt-mobile-bottom-nav-space: calc(var(--tt-mobile-bottom-nav-height) + var(--tt-mobile-bottom-nav-safe));
}
@media(max-width:1199.98px){
  body.materialize-system .content-wrapper,
  body.tt-mobile-app .content-wrapper{
    padding-bottom:calc(var(--tt-mobile-bottom-nav-space) + 14px)!important;
  }
  body.materialize-system .tt-modern-footer,
  body.tt-mobile-app .tt-modern-footer{
    padding-bottom:calc(var(--tt-mobile-bottom-nav-space) + 8px)!important;
  }
  .tt-mobile-bottom-nav{
    position:fixed!important;
    z-index:2050!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:0!important;
    min-height:var(--tt-mobile-bottom-nav-space)!important;
    height:auto!important;
    margin:0!important;
    padding:5px max(7px,env(safe-area-inset-right,0px)) max(5px,var(--tt-mobile-bottom-nav-safe)) max(7px,env(safe-area-inset-left,0px))!important;
    border:0!important;
    border-top:1px solid rgba(15,23,42,.10)!important;
    border-radius:0!important;
    background:rgba(255,255,255,.985)!important;
    box-shadow:0 -8px 24px rgba(15,23,42,.10)!important;
    backdrop-filter:blur(16px)!important;
    -webkit-backdrop-filter:blur(16px)!important;
    transform:translate3d(0,0,0)!important;
  }
  .tt-mobile-bottom-nav a,
  .tt-mobile-bottom-nav button{
    position:relative!important;
    display:flex!important;
    min-width:0!important;
    min-height:clamp(48px,11vw,58px)!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:3px!important;
    margin:0!important;
    padding:4px 2px!important;
    border:0!important;
    border-radius:12px!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#718096!important;
    font-family:inherit!important;
    font-size:clamp(.56rem,2.15vw,.67rem)!important;
    font-weight:850!important;
    letter-spacing:-.01em!important;
    line-height:1!important;
    text-align:center!important;
    text-decoration:none!important;
    transition:background-color .16s ease,color .16s ease,transform .16s ease!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  .tt-mobile-bottom-nav a:active,
  .tt-mobile-bottom-nav button:active{
    transform:scale(.96)!important;
  }
  .tt-mobile-bottom-nav i{
    display:block!important;
    margin:0!important;
    font-size:clamp(1.08rem,4.5vw,1.32rem)!important;
    line-height:1!important;
  }
  .tt-mobile-bottom-nav span{
    display:block!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .tt-mobile-bottom-nav :is(a,button).is-active{
    background:#eafbf0!important;
    color:#15803d!important;
  }
  .tt-mobile-bottom-nav :is(a,button).is-active::before{
    content:""!important;
    position:absolute!important;
    top:0!important;
    left:50%!important;
    width:22px!important;
    height:3px!important;
    border-radius:0 0 999px 999px!important;
    background:#22c55e!important;
    transform:translateX(-50%)!important;
  }
  .tt-mobile-bottom-nav-admin :is(a,button).is-active{
    background:#eef4fb!important;
    color:#0b1d3a!important;
  }
  .tt-mobile-bottom-nav-admin :is(a,button).is-active::before{
    background:#0b1d3a!important;
  }
  .tt-mobile-bottom-nav-athlete :is(a,button).is-active{
    background:#eafbf0!important;
    color:#15803d!important;
  }
  .tt-install-app-card{
    bottom:calc(var(--tt-mobile-bottom-nav-space) + 12px)!important;
  }
}
@media(max-width:389.98px){
  :root{--tt-mobile-bottom-nav-height:58px}
  .tt-mobile-bottom-nav{padding-top:4px!important}
  .tt-mobile-bottom-nav a,.tt-mobile-bottom-nav button{min-height:46px!important;font-size:.54rem!important;gap:2px!important;padding-inline:1px!important}
  .tt-mobile-bottom-nav i{font-size:1.04rem!important}
}
@media(max-width:350px){
  .tt-mobile-bottom-nav a,.tt-mobile-bottom-nav button{font-size:.5rem!important}
  .tt-mobile-bottom-nav i{font-size:1rem!important}
}
@media(max-height:620px) and (orientation:landscape){
  :root{--tt-mobile-bottom-nav-height:52px}
  .tt-mobile-bottom-nav{padding-top:3px!important;padding-bottom:max(3px,var(--tt-mobile-bottom-nav-safe))!important}
  .tt-mobile-bottom-nav a,.tt-mobile-bottom-nav button{min-height:42px!important;gap:2px!important;padding:2px 1px!important;font-size:.52rem!important}
  .tt-mobile-bottom-nav i{font-size:1rem!important}
}
@media(min-width:768px) and (max-width:1199.98px){
  :root{--tt-mobile-bottom-nav-height:66px}
  .tt-mobile-bottom-nav{padding-right:max(16px,env(safe-area-inset-right,0px))!important;padding-left:max(16px,env(safe-area-inset-left,0px))!important}
  .tt-mobile-bottom-nav a,.tt-mobile-bottom-nav button{font-size:.66rem!important}
}


/* ===== Ranking V52 achievement icons visible in logo green ===== */
body.materialize-system .tt-achievement-grid article > i,
body.materialize-system .tt-achievement-grid article > i.ri,
body.materialize-system .tt-achievement-grid article > i[class*="ri-"]{
  display:grid !important;
  place-items:center !important;
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  border-radius:14px !important;
  background:#ecfff4 !important;
  border:1px solid rgba(32,201,104,.24) !important;
  color:#20c968 !important;
  -webkit-text-fill-color:#20c968 !important;
  box-shadow:0 10px 22px rgba(32,201,104,.14) !important;
  opacity:1 !important;
  font-size:1.18rem !important;
}
body.materialize-system .tt-achievement-grid article > i::before,
body.materialize-system .tt-achievement-grid article > i.ri::before,
body.materialize-system .tt-achievement-grid article > i[class*="ri-"]::before{
  color:#20c968 !important;
  -webkit-text-fill-color:#20c968 !important;
  opacity:1 !important;
}
body.materialize-system .tt-achievement-grid article:hover > i,
body.materialize-system .tt-achievement-grid article:hover > i::before{
  color:#16b45a !important;
  -webkit-text-fill-color:#16b45a !important;
}
@media (max-width: 767.98px){
  body.materialize-system .tt-achievement-grid article > i,
  body.materialize-system .tt-achievement-grid article > i.ri,
  body.materialize-system .tt-achievement-grid article > i[class*="ri-"]{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    border-radius:13px !important;
  }
}


/* ===== Ranking V53 remove faixa lateral do pódio ===== */
body.materialize-system .tt-ranking-row.is-podium::before,
body.materialize-system .tt-ranking-row.podium-1::before,
body.materialize-system .tt-ranking-row.podium-2::before,
body.materialize-system .tt-ranking-row.podium-3::before{
  display:none !important;
  content:none !important;
}
