
/* ====== Importação de fontes do Google ====== */
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

/* ====== Reset básico e box-sizing ====== */
* {
    margin: 0;                /* Remove margens padrão */
    padding: 0;               /* Remove padding padrão */
    box-sizing: border-box;   /* Inclui padding e border no tamanho total do elemento */
}

/* ====== Fontes e scroll behavior ====== */
html, body, * {
    scroll-behavior: smooth;         /* Rolagem suave */
    font-family: "Inter", sans-serif; /* Fonte padrão */
    font-size: 16px;                 /* Tamanho base da fonte */
}

/* ====== HTML e Body ====== */
html, body {
    margin: 0;
    padding: 0;
    height: 100%;                     /* Ocupa 100% da altura da tela */
    width: 100%;                      /* Ocupa 100% da largura da tela */
    background: var(--background-color); /* Cor de fundo usando variável */
}

/* ====== Seções ====== */
section {
    height: 100vh;     /* Cada section ocupa toda a altura da tela */
    display: flex;     /* Flexbox para layout interno */
}

/* ====== Containers, cards e popovers ====== */
.container,
.card-wrapper,
.card-list,
.card-item,
dialog.popover {
    max-width: 100%;   /* Garante que nada ultrapasse a largura da tela */
    box-sizing: border-box;
}

img {
    max-width: 100%;   /* Imagens não ultrapassam o container */
    height: auto;
    display: block;
}


/* ====== Variáveis CSS ====== */
:root {
    --primary-color: #ffffff;  /* LETRAS */
    --secondary-color: #35dfc5;  /* HR DA PAGINA */

    --tertiary-color: #005a4b;   /* LETRA DA SKIL */
    --quaternary-color: #ffffff;  /* LETRA DO CARD */
    --background-color: #010a08;  /* FUNDO PAG */

    --highlight-color: #00c0a0;   /* P DA TITULO */
    --tone-color: #b85b1e;   /* BT SOBRE */
    
    --letra-color: #010a08;   /* letra Tec */
    --html-color: #fd7a00;
    --css-color: #0097fc;
    --js-color: #d1b91c;
    --bs-color: #6223c2;
}

/* ====== Tipografia e títulos ====== */
.display {

    font-family: "Poppins", sans-serif; /* Fonte para títulos */
    font-weight: 700;                    /* Negrito */
    font-style: normal;                  /* Normal (não itálico) */
    font-size: 4rem;                   /* Tamanho grande para títulos */
}

/* ====== Linhas divisórias ====== */
.divider {

    border: 1px solid var(--secondary-color);
}

/* ====== Classe bold ====== */
.bold {

    margin: 2rem 0;
    border: 1rem solid var(--primary-color);
}

/* ====== Badges de tecnologia ====== */
.html-badge {

    background: var(--html-color) !important;
    color: var(--letra-color) !important;
}

.css-badge {

    background: var(--css-color) !important;
    color: var(--letra-color) !important;
}

.js-badge {

    background: var(--js-color) !important;
    color: var(--letra-color) !important;
}

.bs-badge {

    background: var(--bs-color) !important;
    color: var(--primary-color) !important;
}

/* ====== Classe para impedir seleção de texto ====== */
.no-select {
    
    pointer-events: none;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}
