@charset "UTF-8";

:root{
  --club-primary:#15803d;
  --club-secondary:#166534;
  --club-primary-rgb:21,128,61;

  --color-white:#ffffff;
  --color-black:#000000;
  --color-bg:#eef1ef;
  --color-bg-strong:#eef2ef;
  --color-bg-elevated:#f5f7f5;
  --color-bg-canvas:#f7faf8;
  --color-surface:#ffffff;
  --color-surface-strong:#fcfdfc;
  --color-surface-overlay:rgba(255,255,255,.96);
  --color-surface-overlay-strong:rgba(255,255,255,.94);
  --color-surface-overlay-soft:rgba(255,255,255,.90);
  --color-surface-overlay-muted:rgba(255,255,255,.88);
  --color-surface-overlay-subtle:rgba(255,255,255,.82);
  --color-surface-overlay-tint:rgba(255,255,255,.72);
  --color-surface-overlay-ghost:rgba(255,255,255,.55);
  --color-border:#dbe3df;
  --color-border-strong:#c2d0c8;
  --color-border-subtle:rgba(0,0,0,.08);
  --color-border-subtle-strong:rgba(0,0,0,.10);
  --color-border-on-brand:rgba(255,255,255,.16);
  --color-border-on-brand-strong:rgba(255,255,255,.38);
  --color-text:#17211d;
  --color-muted:#66756f;
  --color-text-inverse:#ffffff;
  --color-text-inverse-muted:rgba(255,255,255,.84);
  --color-text-inverse-soft:rgba(255,255,255,.78);
  --color-text-disabled:#6b7280;
  --color-text-placeholder:#344054;
  --color-neutral-soft:#eef2f6;
  --color-neutral-ghost:rgba(107,114,128,.08);
  --color-neutral-ghost-soft:rgba(107,114,128,.06);
  --color-primary:var(--club-primary);
  --color-primary-dark:var(--club-secondary);
  --color-primary-ghost:rgba(var(--club-primary-rgb), .10);
  --color-primary-ghost-strong:rgba(var(--club-primary-rgb), .16);
  --color-primary-border-soft:rgba(var(--club-primary-rgb), .22);
  --color-primary-border-mid:rgba(var(--club-primary-rgb), .34);
  --color-primary-shadow-soft:rgba(var(--club-primary-rgb), .22);
  --color-primary-shadow-strong:rgba(var(--club-primary-rgb), .28);

  --card-primary-bg:var(--color-surface);
  --card-secondary-bg:rgba(var(--club-primary-rgb), .08);
  --color-overlay-dark:rgba(15,23,42,.54);
  --color-overlay-dark-soft:rgba(0,0,0,.03);
  --color-overlay-dark-subtle:rgba(0,0,0,.015);
  --color-overlay-dark-strong:rgba(0,0,0,.34);
  --color-overlay-dark-softest:rgba(0,0,0,.12);
  --color-overlay-dark-mid:rgba(0,0,0,.28);

  --color-success:#147d45;
  --color-success-soft:#e6f6ec;
  --color-success-border:rgba(20,125,69,.18);
  --color-success-border-strong:rgba(20,125,69,.25);
  --color-success-border-emphasis:rgba(20,125,69,.55);
  --color-success-shadow-inset:rgba(20,125,69,.10);
  --color-danger:#b42318;
  --color-danger-soft:#fde8e8;
  --color-danger-border:rgba(180,35,24,.18);
  --color-danger-border-strong:rgba(180,35,24,.25);
  --color-danger-border-emphasis:rgba(180,35,24,.55);
  --color-danger-shadow-inset:rgba(180,35,24,.10);
  --color-warning:#a15c00;
  --color-warning-soft:#fff2d8;
  --color-warning-border:rgba(161,92,0,.18);
  --color-info:#175cd3;
  --color-info-soft:#e7f0ff;
  --color-info-border:rgba(23,92,211,.4);
  --color-whatsapp:#25D366;

  --bg:var(--color-bg);
  --card:var(--color-surface);
  --border:var(--color-border);
  --text:var(--color-text);
  --muted:var(--color-muted);
  --club-green:var(--club-primary);
  --club-green-2:var(--club-secondary);
  --win:var(--color-success);
  --win-bg:var(--color-success-soft);
  --lose:var(--color-danger);
  --lose-bg:var(--color-danger-soft);

  --font-sans:"Segoe UI","Trebuchet MS",Tahoma,sans-serif;
  --font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;

  --text-xs:.75rem;
  --text-sm:.875rem;
  --text-md:1rem;
  --text-lg:1.125rem;
  --text-xl:1.375rem;
  --text-2xl:1.875rem;

  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:20px;
  --space-6:24px;
  --space-7:32px;
  --space-8:40px;

  --radius-sm:12px;
  --radius-md:18px;
  --radius-lg:24px;
  --radius-xl:28px;
  --radius-pill:999px;

  --shadow-xs:0 1px 2px rgba(17, 24, 39, .05);
  --shadow-sm:0 10px 30px rgba(17, 24, 39, .08);
  --shadow-soft:0 16px 40px rgba(17, 24, 39, .08);
  --shadow-float:0 18px 40px rgba(17, 24, 39, .10);
  --shadow-float-hover:0 24px 48px rgba(17, 24, 39, .14);
  --motion-fast:160ms;
  --motion-base:200ms;
  --motion-slow:240ms;
  --ease-standard:cubic-bezier(.22,.8,.22,1);
  --ease-emphasized:cubic-bezier(.2,.9,.2,1);
  --focus-ring:0 0 0 4px rgba(var(--club-primary-rgb), .16);
  --density-comfortable-card-padding:18px;
  --density-comfortable-card-padding-mobile:16px 14px;
  --density-compact-card-padding:.85rem;
  --density-compact-card-padding-mobile:.78rem;
  --density-compact-gap:10px;
  --density-comfortable-gap:18px;

  --page-max:1180px;
  --content-max:1040px;
  --app-max:560px;
  --mobile-nav-height:88px;
  --mobile-page-padding-x:16px;
  --mobile-header-gap:12px;
  --control-height:48px;

  --data-page-title-size:1.3rem;
  --data-page-title-size-mobile:1.16rem;
  --data-filter-label-size:.82rem;
  --data-filter-select-size:.82rem;
  --data-filter-select-size-mobile:.78rem;
  --data-table-head-size:.76rem;
  --data-table-head-size-mobile:.64rem;
  --data-table-cell-size:.78rem;
  --data-table-name-size:.84rem;
  --data-table-number-size:.74rem;
  --data-sort-ind-size:.72rem;
  --data-sort-ind-size-mobile:.62rem;

  --clas-col-pos:32px;
  --clas-col-pts:44px;
  --clas-col-num:32px;
}

html,body{min-height:100%}

html{
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
}

body{
  margin:0;
  background:
    radial-gradient(1200px 500px at 0% -10%, rgba(var(--club-primary-rgb), .16), transparent 55%),
    radial-gradient(900px 420px at 100% 0%, rgba(var(--club-primary-rgb), .10), transparent 52%),
    linear-gradient(180deg, var(--color-bg-canvas) 0%, var(--color-bg) 28%, var(--color-bg-strong) 100%);
  color:var(--color-text);
  font-family:var(--font-sans);
  line-height:1.45;
  text-rendering:optimizeLegibility;
}

img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3,h4,h5,h6{
  color:var(--color-text);
  font-weight:800;
  letter-spacing:-.02em;
}

h1,.h1{font-size:clamp(1.75rem, 3.8vw, 2.4rem)}
h2,.h2{font-size:clamp(1.4rem, 3vw, 1.9rem)}
h3,.h3{font-size:clamp(1.2rem, 2.5vw, 1.45rem)}
h4,.h4{font-size:clamp(1.08rem, 2.2vw, 1.25rem)}
h5,.h5{font-size:1rem}

p,li,label,input,select,textarea,button,td,th{
  font-size:var(--text-md);
}

.text-muted,
.form-text{
  color:var(--color-muted) !important;
}

.nowrap{white-space:nowrap}

.brand-title{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.brand-user{
  font-weight:600;
  opacity:.82;
  font-size:var(--text-sm);
}

.only-desktop{display:inline-flex}

.form-control,
.form-select,
.login-input{
  min-height:var(--control-height);
  border-radius:16px;
  border:1px solid var(--color-border);
  background:var(--color-surface-overlay-strong);
  color:var(--color-text);
  box-shadow:none;
}

.form-control:focus,
.form-select:focus,
.login-input:focus{
  border-color:var(--color-primary-border-mid);
  box-shadow:var(--focus-ring);
}

button,
.btn,
[role="button"],
.app-action-link,
.home-action-link{
  -webkit-tap-highlight-color:transparent;
}

a:focus-visible,
button:focus-visible,
[role="button"]:focus-visible,
.btn:focus-visible,
.app-nav-link:focus-visible,
.site-nav a:focus-visible,
.app-action-link:focus-visible,
.home-action-link:focus-visible,
.form-control:focus-visible,
.form-select:focus-visible,
.login-input:focus-visible{
  outline:none;
  box-shadow:var(--focus-ring);
}

@media (prefers-reduced-motion: reduce){
  html{
    scroll-behavior:auto;
  }

  *,
  *::before,
  *::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
}

.form-label,
.login-label{
  margin-bottom:6px;
  font-size:var(--text-sm);
  font-weight:800;
  color:var(--color-muted);
}

.alert{
  border-radius:16px;
  border:none;
  box-shadow:var(--shadow-xs);
}
