/* =====================================================================
   FPB Design System - Tokens
   Fonte única de cores, tipografia, espaçamentos e raios.
   Carregado na MasterPage_Boot logo a seguir ao bootstrap.min.css.
   ===================================================================== */
:root {
    /* ---------- Paleta base ---------- */
    --fpb-green-950: #07281E;
    --fpb-green-900: #0B3D2E;
    --fpb-green-700: #146C43;
    --fpb-green-600: #1B7F50;
    --fpb-green-100: #E7F3EC;
    --fpb-green-50:  #F2F8F4;

    --fpb-brass-600: #B08A1E;
    --fpb-brass-500: #C9A227;
    --fpb-brass-300: #E4C567;
    --fpb-brass-100: #FBF3DA;

    --fpb-red-700: #A81F26;
    --fpb-red-600: #C1272D;
    --fpb-red-100: #FBE9EA;

    --fpb-chalk-600: #2F638F;
    --fpb-chalk-500: #3E7CB1;
    --fpb-chalk-100: #E6EFF7;

    --fpb-cream-50:  #FAF8F3;
    --fpb-cream-100: #F3F0E7;
    --fpb-ink-900: #1B1F1C;
    --fpb-ink-600: #565F59;
    --fpb-ink-400: #8A918C;
    --fpb-line:        #E4E1D8;
    --fpb-line-strong: #CFCABD;
    --fpb-white: #FFFFFF;

    /* ---------- Papéis semânticos ---------- */
    --fpb-bg:        var(--fpb-cream-50);
    --fpb-surface:   var(--fpb-white);
    --fpb-surface-2: var(--fpb-cream-100);
    --fpb-text:      var(--fpb-ink-900);
    --fpb-muted:     var(--fpb-ink-600);
    --fpb-primary:       var(--fpb-green-700);
    --fpb-primary-hover: var(--fpb-green-900);
    --fpb-accent:        var(--fpb-brass-500);
    --fpb-accent-hover:  var(--fpb-brass-600);
    --fpb-danger:        var(--fpb-red-600);
    --fpb-danger-hover:  var(--fpb-red-700);
    --fpb-info:          var(--fpb-chalk-500);
    --fpb-info-hover:    var(--fpb-chalk-600);
    --fpb-link:          var(--fpb-chalk-600);
    --fpb-link-hover:    var(--fpb-green-700);

    /* ---------- Tipografia ---------- */
    --font-display: 'Bricolage Grotesque', 'Segoe UI', sans-serif;
    --font-body: 'Work Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
    --font-mono: 'JetBrains Mono', 'Consolas', monospace;

    --fpb-fs-xs:   clamp(.72rem, .69rem + .15vw, .8rem);
    --fpb-fs-sm:   clamp(.8rem,  .76rem + .2vw,  .9rem);
    --fpb-fs-base: clamp(.9rem,  .86rem + .2vw,  1rem);
    --fpb-fs-lg:   clamp(1rem,   .94rem + .3vw,  1.15rem);
    --fpb-fs-h3:   clamp(1.05rem, .96rem + .45vw, 1.3rem);
    --fpb-fs-h2:   clamp(1.2rem,  1.02rem + .9vw, 1.65rem);
    --fpb-fs-h1:   clamp(1.4rem,  1.1rem + 1.5vw, 2.15rem);

    /* ---------- Espaçamento, raios, sombras ---------- */
    --fpb-space-1: clamp(.25rem, .2rem + .25vw, .4rem);
    --fpb-space-2: clamp(.5rem,  .4rem + .5vw,  .75rem);
    --fpb-space-3: clamp(.75rem, .6rem + .75vw, 1.1rem);
    --fpb-space-4: clamp(1rem,   .8rem + 1vw,   1.5rem);
    --fpb-space-5: clamp(1.25rem, .9rem + 1.75vw, 2.25rem);

    --fpb-radius-lg: clamp(12px, 10px + .6vw, 18px);
    --fpb-radius-md: clamp(8px, 7px + .4vw, 12px);
    --fpb-radius-sm: 8px;
    --fpb-shadow-sm: 0 2px 10px rgba(11, 61, 46, .08);
    --fpb-shadow-md: 0 10px 28px rgba(11, 61, 46, .16);

    --fpb-touch: 2.5rem;

    /* Fotografias de atletas e símbolos de clubes */
    --fpb-foto-sm: clamp(28px, 24px + .8vw, 34px);
    --fpb-foto-md: clamp(34px, 28px + 1.2vw, 44px);
    --fpb-foto-lg: clamp(56px, 44px + 2.5vw, 80px);
    --fpb-foto-xl: clamp(88px, 70px + 4vw, 140px);

    /* ---------- Bootstrap 5.3 alinhado com a FPB ---------- */
    --bs-body-font-family: var(--font-body);
    --bs-body-font-size: var(--fpb-fs-base);
    --bs-body-color: var(--fpb-ink-900);
    --bs-body-color-rgb: 27, 31, 28;
    --bs-body-bg: var(--fpb-cream-50);
    --bs-secondary-color: var(--fpb-ink-600);
    --bs-emphasis-color: var(--fpb-ink-900);
    --bs-border-color: var(--fpb-line);
    --bs-border-radius: var(--fpb-radius-sm);
    --bs-border-radius-lg: var(--fpb-radius-md);
    --bs-link-color: var(--fpb-chalk-600);
    --bs-link-color-rgb: 47, 99, 143;
    --bs-link-hover-color: var(--fpb-green-700);
    --bs-link-hover-color-rgb: 20, 108, 67;
    --bs-focus-ring-color: rgba(201, 162, 39, .45);

    --bs-primary: #146C43;   --bs-primary-rgb: 20, 108, 67;
    --bs-success: #146C43;   --bs-success-rgb: 20, 108, 67;
    --bs-secondary: #565F59; --bs-secondary-rgb: 86, 95, 89;
    --bs-danger: #C1272D;    --bs-danger-rgb: 193, 39, 45;
    --bs-warning: #C9A227;   --bs-warning-rgb: 201, 162, 39;
    --bs-info: #3E7CB1;      --bs-info-rgb: 62, 124, 177;
    --bs-dark: #07281E;      --bs-dark-rgb: 7, 40, 30;
    --bs-light: #F3F0E7;     --bs-light-rgb: 243, 240, 231;

    --bs-primary-text-emphasis: #0B3D2E; --bs-primary-bg-subtle: #E7F3EC; --bs-primary-border-subtle: #B7DCC6;
    --bs-success-text-emphasis: #0B3D2E; --bs-success-bg-subtle: #E7F3EC; --bs-success-border-subtle: #B7DCC6;
    --bs-danger-text-emphasis:  #7E161C; --bs-danger-bg-subtle:  #FBE9EA; --bs-danger-border-subtle:  #F0BCBF;
    --bs-warning-text-emphasis: #5E4A0E; --bs-warning-bg-subtle: #FBF3DA; --bs-warning-border-subtle: #EBD48E;
    --bs-info-text-emphasis:    #234B6D; --bs-info-bg-subtle:    #E6EFF7; --bs-info-border-subtle:    #B4CDE3;
    --bs-secondary-text-emphasis: #3A403C; --bs-secondary-bg-subtle: #F3F0E7; --bs-secondary-border-subtle: #E4E1D8;

}

/* SweetAlert2 injeta as suas variáveis em :root depois deste ficheiro; html:root ganha por especificidade */
html:root {
    --swal2-confirm-button-background-color: var(--fpb-primary);
    --swal2-cancel-button-background-color: var(--fpb-ink-600);
    --swal2-deny-button-background-color: var(--fpb-danger);
    --swal2-border-radius: var(--fpb-radius-lg);
    --swal2-timer-progress-bar-background: var(--fpb-brass-500);
}
