@font-face {
    font-family: 'Atkinson Hyperlegible Next';
    font-style: normal;
    font-display: swap;
    font-weight: 400;
    src: url(https://cdn.jsdelivr.net/fontsource/fonts/atkinson-hyperlegible-next@latest/latin-400-normal.woff2) format('woff2');
}

/* ==========================================================================
   PALETA BASE (VINTAGE JOIA) — TOKENS CSS (SEM SCSS)
   ========================================================================== */
:root {
    /* Base / Neutros */
    --v-bg: #f4f7f9;
    --v-surface: #ffffff;
    --v-border: #dee2e6;
    --v-text: #212529;
    --v-title: #6385ab;
    --v-shadow-15: rgba(0, 0, 0, 0.15);
    --v-shadow-05: rgba(0, 0, 0, 0.05);
    --v-shadow-02: rgba(0, 0, 0, 0.02);
    --v-shadow-08: rgba(0, 0, 0, 0.08);

    /* Institucional / Ações */
    --v-brand: #c96161;
    --v-link: #337cbb;
    --v-link-hover: #337cbbd9;

    /* Cores Vintage Joia (hex + rgb para rgba()) */
    --v-blue: #2c5364;      --v-blue-2: #4b79a1;      --v-blue-rgb: 44, 83, 100;
    --v-green: #3a5335;     --v-green-2: #5d7a56;     --v-green-rgb: 58, 83, 53;
    --v-red: #a0441e;       --v-red-2: #c66b3d;       --v-red-rgb: 160, 68, 30;
    --v-yellow: #b89635;    --v-yellow-2: #c4a956;    --v-yellow-rgb: 184, 150, 53;
    --v-purple: #7a4161;    --v-purple-2: #4e2a3e;    --v-purple-rgb: 122, 65, 97;
    --v-teal: #1f4d4f;      --v-teal-2: #2f7a7d;      --v-teal-rgb: 31, 77, 79;

    /* Alpha padrão (fundos leves) */
    --v-tint-alpha: 0.15;
}

body {
    font-family: 'Atkinson Hyperlegible Next', sans-serif !important;
}

/* ==========================================================================
   LAYOUT GLOBAL (NÃO ESPECÍFICO DE CURSO)
   ========================================================================== */
.drawer-toggles .drawer-toggler .btn {
    background-color: var(--v-brand) !important;
    color: #fff;
}

.navbar.fixed-top {
    border-bottom: var(--v-brand) 2px solid !important;
    box-shadow: var(--v-shadow-15) 0px 2px 8px;
}

/* ======================================================================
   MEDIA QUERIES (GERAIS)
   ====================================================================== */
@media (min-width: 768px) {
    .header-maxwidth {
        margin: 0 !important;
    }
}

@media (min-width: 768px){
    .pagelayout-standard #page.drawers .main-inner,
    body.limitedwidth #page.drawers .main-inner {
        max-width: 90% !important;
    }
}

@media (min-width: 768px){
    .login-container {
        max-width: 90% !important;
    }
}

/* ==========================================================================
   LOGIN
   ========================================================================== */
button#loginbtn {
    width: 100%;
    margin-top: 30px;
}

.login-container .login-divider {
    display: none;
}

div.loginform>div.d-flex{
    display: none !important;
}

.login-form-forgotpassword{
    display: none;
}

.login-container {
    background-color: #ffffffab;
}

a[href*="/?redirect=0"]{
    display: none !important;
}

/*______________________________________Slideshow______________________________________*/
.slick-prev:before, .slick-next:before {
    color: #0042ae !important;
}

.slick-dots li button {
    border-radius: 100%;
}

.slick-prev, .slick-next {
    z-index: 3 !important;
    width: 35px;
    height: 100%;
}

.slick-prev { left:0px !important; }
.slick-next { right:0px !important; }

/*---------------------------Caixa de seleção Cohort-------------------------------------*/
select#id_config_cohorts { height: 300px; }

/*---------------------------Botões do Ava-------------------------------------*/
a { color: var(--v-link); }

.drawer-toggles .drawer-toggler .btn {
    background-color: var(--v-brand);
    color:#fff;
}

.btn-primary {
    color: #fff;
    background-color: var(--v-link);
    border-color: var(--v-link);
}

.btn-primary:hover {
    color: #fff;
    background-color: var(--v-link-hover);
    border-color: var(--v-link-hover);
}

/*---------------------------Fullscreen Atto-----------------------------*/
.editor_atto_wrap { position: relative; z-index: 1029; }

/*---------------------------Time do Quiz-------------------------------------*/
#quiz-timer-wrapper { top: 0px ; }

/*-----------------------------Rodapé ------------------------------*/
a[href^="https://docs.moodle.org/400/pt_br/admin/user"]{
    display: none !important;
}

/*jandeir*/
/*---------------------------------Esconde menu de atividade e recursos-------------------------------*/
div.sitetopic>ul.topics>li#section-1>div#coursecontentcollapse1>ul.section {
    display:none!important;
    visibility:hidden;
}

/*---------------------------Vlibras Lado Esquerdo---------------------------*/
[vw] [vw-plugin-wrapper].active { right: revert !important; }
div[vw] { right: revert !important; }

/*______________________________________Bloco de Políticas______________________________________*/
.card.cardpolitica { display: none; }

/*___________________________Bloco de Progressão do Aluno___________________________*/
.block_completion_progress .progressBarCell.futureNotCompleted {
    background-color: #ced4da !important;
    border: solid 1.5px white;
}

.block_completion_progress .progressBarCell.completed {
    background-color: #73A839;
    border: solid 1.5px white;
}

/*------------------------calendario-----------------------jandeir*/
.maincalendar .calendarmonth td.today .day-number-circle {
    background-color: var(--v-brand)  !important;
}

a.arrow_link.previous, a.arrow_link.next { color: var(--v-brand)  !important; }

section:not(#region-main) .block.block_calendar_month .maincalendar .calendartable.calendarmonth td.hasevent .day-number:before {
    color: var(--v-brand) !important;
}

.maincalendar .calendarmonth ul li .calendar-circle.calendar_event_course {
    background-color: var(--v-brand) !important;
    border: 0px solid #d34600 !important;
}

@media (max-width: 768px) {
    .maincalendar .calendartable.calendarmonth td.hasevent .day-number:before {
        color: var(--v-brand) !important;
    }
}

/*___________________________Botão do Menu___________________________*/
.navbar.fixed-top { border-bottom: var(--v-brand) 2px solid !important; }

.moremenu .nav-link.active { border-bottom-color: var(--v-link); }
.moremenu .nav-link.active:hover { border-bottom-color: var(--v-brand); }

/*___________________________Supporter___________________________*/
.row-fluid {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

.btn-group>.btn:not(:last-child):not(.dropdown-toggle),
.btn-group>.btn-group:not(:last-child)>.btn {
    background-color: #d9dbe4;
}

/*---------------------------Botoes nav vintage---------------------------*/
.vintage-nav-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px 18px;
}

.vintage-nav-row .btn-v-final {
    flex: 1 1 200px;
    max-width: 25%;
    min-width: 160px;
    text-align: center;
}

.vintage-nav-row .btn-v-final span { white-space: nowrap; }

@media (max-width: 768px) {
    .vintage-nav-row {
        flex-direction: column;
        align-items: stretch;
    }

    .vintage-nav-row .btn-v-final {
        flex: 1 1 auto;
        width: 100%;
    }
}

/*---------------------------Reset compacto Moodle + botoes vintage---------------------------*/
li.activity:has([data-ui-reset="true"]),
.activity-item:has([data-ui-reset="true"]) {
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    display: block !important;
    min-height: 0 !important;
}

.activity-item:has([data-ui-reset="true"]) .activity-basis,
.activity-item:has([data-ui-reset="true"]) .activity-info,
.activity-item:has([data-ui-reset="true"]) .activity-information,
.activity-item:has([data-ui-reset="true"]) .availabilityinfo {
    display: none !important;
}

.activity-item:has([data-ui-reset="true"]) .description,
.activity-item:has([data-ui-reset="true"]) .activity-altcontent,
.activity-item:has([data-ui-reset="true"]) .no-overflow,
.activity-item:has([data-ui-reset="true"]) .description-inner {
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
}

.fametro-force-compact p {
    display: contents !important;
    margin: 0 !important;
    padding: 0 !important;
}

.fametro-force-compact .vintage-nav-row {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    gap: 10px;
    padding: 5px 0 !important;
    width: 100%;
}

.fametro-force-compact .btn-v-final {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 8px 14px;
    min-width: 0;
    text-decoration: none !important;
    font-weight: 600;
    font-size: 0.9rem;
    border-radius: 50px;
    border: 2px solid;
    transition: all 0.3s ease;
    flex: 1 1 0;
    max-width: 220px;
}

.fametro-force-compact .v-blue {
    color: var(--v-blue) !important;
    border-color: var(--v-blue);
    background-color: rgba(var(--v-blue-rgb), var(--v-tint-alpha));
}

.fametro-force-compact .v-green {
    color: var(--v-green) !important;
    border-color: var(--v-green);
    background-color: rgba(var(--v-green-rgb), var(--v-tint-alpha));
}

.fametro-force-compact .v-red {
    color: var(--v-red) !important;
    border-color: var(--v-red);
    background-color: rgba(var(--v-red-rgb), var(--v-tint-alpha));
}

.fametro-force-compact .v-yellow {
    color: var(--v-yellow) !important;
    border-color: var(--v-yellow);
    background-color: rgba(var(--v-yellow-rgb), var(--v-tint-alpha));
}

.fametro-force-compact .v-purple {
    color: var(--v-purple) !important;
    border-color: var(--v-purple);
    background-color: rgba(var(--v-purple-rgb), var(--v-tint-alpha));
}

.fametro-force-compact .v-teal {
    color: var(--v-teal) !important;
    border-color: var(--v-teal);
    background-color: rgba(var(--v-teal-rgb), var(--v-tint-alpha));
}

.fametro-force-compact .btn-v-final:hover {
    color: #fff !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px var(--v-shadow-15);
}

.fametro-force-compact .v-blue:hover { background-color: var(--v-blue) !important; }
.fametro-force-compact .v-green:hover { background-color: var(--v-green) !important; }
.fametro-force-compact .v-red:hover { background-color: var(--v-red) !important; }
.fametro-force-compact .v-yellow:hover { background-color: var(--v-yellow) !important; }
.fametro-force-compact .v-purple:hover { background-color: var(--v-purple) !important; }
.fametro-force-compact .v-teal:hover { background-color: var(--v-teal) !important; }

@media (max-width: 768px) {
    .fametro-force-compact .vintage-nav-row {
        flex-wrap: wrap;
    }

    .fametro-force-compact .btn-v-final {
        flex: 1 1 100%;
        max-width: 100%;
    }
}

.drawer.drawer-left.show {
    left: 0;
    visibility: visible;
    background-color: var(--v-brand) !important;
    color: #fff !important;
}

@media (min-width: 576px) {
    #page.drawers .main-inner {
        margin-top: 0px!important;
    }
}

/*Botões do painel */
li.activity:has([data-ui-reset="true"]),
.activity-item:has([data-ui-reset="true"]) {
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    display: block !important;
    min-height: 0 !important;
}

.activity-item:has([data-ui-reset="true"]) .activity-basis,
.activity-item:has([data-ui-reset="true"]) .activity-info,
.activity-item:has([data-ui-reset="true"]) .activity-information {
    display: none !important;
}

.activity-item:has([data-ui-reset="true"]) .description,
.activity-item:has([data-ui-reset="true"]) .activity-altcontent,
.activity-item:has([data-ui-reset="true"]) .no-overflow {
    padding: 0 !important;
    margin: 0 !important;
}

.fametro-tiles-wrapper p {
    display: contents !important;
    margin: 0 !important;
}

.tiles-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    padding: 10px 0 !important;
    width: 100%;
}

.action-tile {
    position: relative;
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 20px 24px;
    border-radius: 12px;
    color: #fdfcf8 !important;
    text-decoration: none !important;
    min-width: 280px;
    flex: 1 1 0px;
    max-width: 350px;
    box-shadow: 0 4px 10px var(--v-shadow-15);
    border: 1px solid rgba(255, 248, 220, 0.1);
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.action-tile:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 20px var(--v-shadow-15);
    filter: brightness(1.1);
}

.t-v-blue   { background: linear-gradient(135deg, var(--v-blue) 0%,   var(--v-blue-2) 100%); }
.t-v-green  { background: linear-gradient(135deg, var(--v-green) 0%,  var(--v-green-2) 100%); }
.t-v-red    { background: linear-gradient(135deg, var(--v-red) 0%,    var(--v-red-2) 100%); }
.t-v-yellow { background: linear-gradient(135deg, #a88b32 0%,         var(--v-yellow-2) 100%); }
.t-v-purple { background: linear-gradient(135deg, var(--v-purple-2) 0%, var(--v-purple) 100%); }
.t-v-teal   { background: linear-gradient(135deg, var(--v-teal) 0%,   var(--v-teal-2) 100%); }

.tile-icon {
    display: grid;
    place-items: center;
    width: 45px;
    height: 45px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.15);
    font-size: 22px;
    flex-shrink: 0;
    backdrop-filter: blur(2px);
}

.tile-label {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-shadow: 0 1px 3px rgba(0,0,0,0.3);
}
