/*
 Theme Name: ama-a11y-theme child
 Template: www-a11y-theme
 Description: AMA A11Y Theme for WordPress.
 Author: Ricardo Pauleta
 Version: 1.0.0001
*/
@import url("./assets/css/componentes.css");

.table-border-black td,
.table-border-black th {
	border: 1px solid black;
	padding: 8px;	
}

.table-border-black th {
	border-bottom: none;
}

.table-border-black {
	width:100%;
}


.sixty-width {
    max-width: 60%;
}

.remove-dots {
    list-style-type: none;
}

/* Base grid styles */
.grid {
    display: grid;
    gap: 1rem;
}

/* Grid columns for different breakpoints */
.grid-1 {
    grid-template-columns: repeat(1, 1fr);
}

.grid-2 {
    grid-template-columns: repeat(2, 1fr);
}

.grid-3 {
    grid-template-columns: repeat(3, 1fr);
}

.grid-4 {
    grid-template-columns: repeat(4, 1fr);
}

.grid-5 {
    grid-template-columns: repeat(5, 1fr);
}

.grid-6 {
    grid-template-columns: repeat(6, 1fr);
}

/* Breakpoints for responsive design */
@media (max-width: 576px) {
    .grid-sm-1 {
        grid-template-columns: repeat(1, 1fr);
    }

    .grid-sm-2 {
        grid-template-columns: repeat(2, 1fr);
    }

    .grid-sm-3 {
        grid-template-columns: repeat(3, 1fr);
    }

    .grid-sm-4 {
        grid-template-columns: repeat(4, 1fr);
    }

    .grid-sm-5 {
        grid-template-columns: repeat(5, 1fr);
    }

    .grid-sm-6 {
        grid-template-columns: repeat(6, 1fr);
    }
}

@media (max-width: 768px) {
    .grid-md-1 {
        grid-template-columns: repeat(1, 1fr);
    }

    .grid-md-2 {
        grid-template-columns: repeat(2, 1fr);
    }

    .grid-md-3 {
        grid-template-columns: repeat(3, 1fr);
    }

    .grid-md-4 {
        grid-template-columns: repeat(4, 1fr);
    }

    .grid-md-5 {
        grid-template-columns: repeat(5, 1fr);
    }

    .grid-md-6 {
        grid-template-columns: repeat(6, 1fr);
    }
}

@media (max-width: 992px) {
    .grid-lg-1 {
        grid-template-columns: repeat(1, 1fr);
    }

    .grid-lg-2 {
        grid-template-columns: repeat(2, 1fr);
    }

    .grid-lg-3 {
        grid-template-columns: repeat(3, 1fr);
    }

    .grid-lg-4 {
        grid-template-columns: repeat(4, 1fr);
    }

    .grid-lg-5 {
        grid-template-columns: repeat(5, 1fr);
    }

    .grid-lg-6 {
        grid-template-columns: repeat(6, 1fr);
    }
}

@media (max-width: 1200px) {
    .grid-xl-1 {
        grid-template-columns: repeat(1, 1fr);
    }

    .grid-xl-2 {
        grid-template-columns: repeat(2, 1fr);
    }

    .grid-xl-3 {
        grid-template-columns: repeat(3, 1fr);
    }

    .grid-xl-4 {
        grid-template-columns: repeat(4, 1fr);
    }

    .grid-xl-5 {
        grid-template-columns: repeat(5, 1fr);
    }

    .grid-xl-6 {
        grid-template-columns: repeat(6, 1fr);
    }
}

/* Helper classes for grid gaps */
.gap-0 {
    gap: 0;
}

.gap-1 {
    gap: 0.25rem;
}

.gap-2 {
    gap: 0.5rem;
}

.gap-3 {
    gap: 0.75rem;
}

.gap-4 {
    gap: 1rem;
}

.gap-5 {
    gap: 1.25rem;
}

.gap-6 {
    gap: 1.5rem;
}

.gap-7 {
    gap: 1.75rem;
}

.gap-8 {
    gap: 2rem;
}

.gap-9 {
    gap: 2.25rem;
}

.gap-10 {
    gap: 2.5rem;
}


.banner {
    background-image: url("../../uploads/2025/02/banner-principal.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

@media (max-width: 576px) {
    .banner {
        background-image: none;
        background-color: var(--primary);
    }
}

.banner .container {
    padding-top: 5rem;
    padding-bottom: 5rem;
}

.banner .welcome {
    display: flex;
    justify-content: center;
    flex-direction: column;
	margin-top: 7rem;
}

.banner .welcome h2 {
    color: #ffffff;
    font-size: 2.5rem;
    font-weight: 700;
}

.banner .welcome p {
    color: #ffffff;
    font-size: 1rem;
    line-height: 1.5rem;
	margin-top: 1rem;
}

.banner .login {
    min-height: 450px;
    background-color: #fff;
    padding: 3rem 3rem;
    max-width: fit-content;
}

.banner .login h3 {
    color: var(--primary);
    text-align: center;
    font-weight: bold;
    margin-bottom: 20px;
}

.banner .login p {
    display: flex;
    flex-direction: column;
}

.banner .login .login-username label,
.banner .login .login-password label {
    font-size: 1.125rem;
    margin-bottom: 0.5rem;
    font-weight: 700;
}

.banner .login .login-username input,
.banner .login .login-password input {
    width: 100%;
    padding: 10px;
}

.banner .login form p.login-submit {
    justify-self: center;
}

.banner .login form input#wp-submit,
.banner .logged-in .wp-submit {
    color: #fff;
    background-color: var(--primary);
    border: 2px solid var(--primary);
    transition: all 200ms;
    height: 58px;
    width: fit-content;
    border-radius: 9999px;
    padding: calc(.667em + 2px) calc(1.333em + 2px);
    text-decoration: none;
}

.banner .login form input#wp-submit:hover,
.banner .logged-in .wp-submit:hover {
    color: var(--primary);
    background-color: #fff;
}

.banner .logged-in {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.banner .logged-in img {
    width: 64px;
    border-radius: 50%;
}

body.dark-theme .banner .logged-in img,
body.dark-theme .filter-color {
    filter: brightness(0) saturate(100%) invert(83%) sepia(20%) saturate(378%) hue-rotate(164deg) brightness(97%) contrast(98%);
}

.banner .logged-in p {
    font-size: 1.125rem;
    margin-top: 1rem;
    margin-bottom: 2rem;
    text-align: center;
}

.banner .logged-in a.logout {
    color: var(--primary);
    font-size: 0.875rem;
    margin-top: 1rem;
}

.banner .logged-in a.logout::after {
    content: "";
    display: block;
    width: 0;
    height: 2px;
    background: var(--primary);
    transition: width 200ms;
}

.banner .logged-in a.logout:hover::after {
    width: 100%;
}

body.dark-theme .banner .login {
    background-color: #2d3241;
}

body.dark-theme .banner .login h3 {
    color: var(--quinary);
    text-align: center;
    font-weight: bold;
    margin-bottom: 20px;
}

body.dark-theme .banner .login p {
    display: flex;
    flex-direction: column;
    color: var(--quinary);
}

body.dark-theme .banner .login p {
    display: flex;
    flex-direction: column;
    color: var(--quinary);
}

body.dark-theme .banner .login form input {
    background-color: #2d3241;
    border: 2px solid var(--quinary);
    color: var(--quinary);
    box-shadow: none;
}

body.dark-theme .banner .login form input#wp-submit,
body.dark-theme .banner .logged-in .wp-submit {
    background-color: var(--quinary);
    border: 2px solid var(--quinary);
    color: #2d3241;
}

body.dark-theme .banner .login form input#wp-submit:hover,
body.dark-theme .banner .logged-in .wp-submit:hover {
    background-color: #2d3241;
    border: 2px solid var(--quinary);
    color: var(--quinary);
}

body.dark-theme .banner .logged-in a.logout {
    color: var(--quinary);
}

body.dark-theme .banner .logged-in a.logout::after {
    background: var(--quinary);
}

.home .wrapper {
    padding-top: 0px;
}

.login h1 a {
    background-image: url(../../uploads/2025/01/ADC-logo-4.svg) !important;
    background-size: 255px;
    width: 320px;
}

a.post-card-wrapper {
    text-decoration: unset;
}
 
.post-card {
    height: 100%;
    background-color: var(--tertiary);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.dark-theme .post-card {
    background-color: var(--body-lighter-dark);
}
 
a.post-card-wrapper:hover .post-card {
    background-color: var(--primary);
}
 
.post-card > .post-thumbnail {
    aspect-ratio: 16/9;
    width: 100%;
}
 
.post-card > .post-thumbnail img {
    aspect-ratio: 16/9;
    width: 100%;
    object-fit: cover;
    object-position: center;
}
 
.post-card > .post-body {
    padding: 1.5rem;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
 
.post-card > .post-body > .post-title {
    color: var(--primary);
    font-family: inherit;
    font-size: 28px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5;
}
 
body.dark-theme .post-card > .post-body > .post-title {
    color: var(--quinary);
}
 
a.post-card-wrapper:hover  .post-card > .post-body > .post-title {
    text-decoration: underline;
    color: #fff;
}
 
.post-card > .post-body:hover .post-title{
    color: #fff;
}
 
.post-card > .post-body > .post-date {
    color: #333;
    font-family: inherit;
    font-size: 12pt;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    margin-top: auto;
}
 
body.dark-theme .post-card > .post-body > .post-date {
    color: var(--quinary);
}
 
.post-card-wrapper:hover .post-card > .post-body .post-date {
    color: #fff;
}

.user-loggedin button {
    border: none;
    color: var(--primary);
    background-color: transparent;
    transition: all 200ms;
    height: 58px;
    width: fit-content;
    box-shadow: none;
}

body.dark-theme .user-loggedin button {
    color: var(--quinary);
    background-color: #20242c;
}

.user-loggedin .dropdown-menu,
.user-loggedin .accordion-collapse {
    width: fit-content;
    white-space: nowrap;
    border: 2px solid var(--primary);
    background-color: #fff;
}

.user-loggedin .dropdown-menu ul li,
.user-loggedin .accordion-collapse ul li {
    list-style-type: none;
}

.user-loggedin .dropdown-menu ul li a,
.user-loggedin .accordion-collapse ul li a {
    text-decoration: none;
}

.user-loggedin .dropdown-menu ul li a:hover,
.user-loggedin .accordion-collapse ul li a:hover {
    text-decoration: underline;
}

body.dark-theme .user-loggedin .dropdown-menu,
body.dark-theme .user-loggedin .accordion-collapse {
    border: 2px solid var(--quinary);
    background-color: #20242c;
}

.page .featured-image img {
    height: auto !important;
}

.text_content blockquote {
    padding-top: 35px;
    padding-bottom: 35px;
    margin: 0px 0px 20px 0px !important;
    padding-left: 32px;
    border-left: 10px solid #333333;
}

body.dark-theme .normal-color {
    color: #333;
}

/** Learndash **/
a.ld-primary-color.ld-course-step-back {
    padding-top: 1rem;
}

p.wpProQuiz_points {
    background-color: #fff !important;
}

p.wpProQuiz_points,
.wpProQuiz_quiz_time {
    color: #000 !important;
}

span.ld-icon.ld-icon-arrow-left {
    width: 44px;
    height: 44px;
    display: flex;
    justify-content: center;
    align-items: center;
}


/** Tabela **/
.table.obter-selo tbody > tr:first-child,
.table.obter-selo tbody > tr:last-child {
    border-bottom-color: transparent;
}
.svg_background {
    position: relative;
    text-align: center;
    padding: 15px 30px;
}

.svg_background::after {
    content: "";
    background: #000;
    position: absolute;
    bottom: 25px;
    left: 50%;
    right: auto;
    height: 2px;
    width: 80%;
    transform: translateX(-50%);
}

.dark-theme .svg_background::after {
    background: var(--quinary);
}

.table_responsive_container {
    background-color: white;
    padding: 50px;
}

.dark-theme .table_responsive_container {
    background-color: var(--body-dark);
    color: var(--quinary);
}

.dark-theme .table_responsive_container th {
    color: var(--quinary);
}

 .table .tr_lines {
    border-bottom: 2px solid #000;
}

.dark-theme  .table .tr_lines {
    border-bottom: 2px solid var(--quinary);
}

 .table .first_header {
    text-align: center;
    padding: 15px 30px;
    padding-bottom: 30px;
    width: 30px;
}

 .table .selo_images {
    width: 100px;
    height: 100px;
    padding-bottom: 15px;
}

.table .td_left {
    padding-left: .5rem;
    padding-bottom: 2rem;
}

.table .td_right {
    padding-right: 15px;
    padding-bottom: 20px;
}

.table .extra {
    padding-top: 20px;
}

 .table .th_selo {
    text-align: center;
    vertical-align: middle;
}

 .table .circle {
    width: 180px;
    height: 180px;
    border-radius: 50%;
    text-align: center;
    margin: 10px;
    font-size: 15px;
    justify-content: center;
    align-items: center;
    display: flex;
    flex-direction: column;
    padding: 2rem;
}

.blue {
    background-color: var(--primary);
    color: #fff;
}

.white {
    border: 2px solid #000;
    color: #000;
}

.dark-theme .white {
    border: 2px solid var(--quinary);
    color: var(--quinary);
}

.grey {
    background-color: #D9D9D9;
    color: #000;
}

.dark-theme .grey {
    background-color: var(--body-lighter-dark);
    color: var(--quinary);
}

.text_bold {
    padding-top: 5px;
}

.dark-theme .dark_view figure tbody, td, tfoot, th, thead, tr {
	background-color: transparent !important;
}

.dark-theme .chat_bot_iframe {
	color: #fff !important;
}

.dark-theme .chat_bot_iframe {
  filter: invert(1) hue-rotate(180deg);
}

/*Tabela*/

/* Evita scroll horizontal */
.table-responsive {
  overflow-x: hidden;
  width: 100%;
}

/* Tabela se ajusta naturalmente */
.table.obter-selo {
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}

/* Largura mínima da 1ª coluna (título do selo) */
.table.obter-selo .first_header {
  min-width: 220px;
  max-width: 240px;
  white-space: normal;
  vertical-align: top;
}

/* Celulas em geral */
.table.obter-selo th,
.table.obter-selo td {
  padding: 12px;
  text-align: center;
  vertical-align: top;
  word-break: break-word;
  white-space: normal;
}

/* Estilo das imagens dos selos */
.selo_images {
  width: 48px;
  height: auto;
  object-fit: contain;
  display: block;
  margin: 0 auto 8px auto;
}

/* Esfera dos requisitos */
.circle {
  border-radius: 50%;
  padding: 12px 16px; /* menos padding = menor diâmetro */
  font-size: 0.85rem;
  line-height: 1.3;
}

/* Cores circulares */
.circle.blue {
  background-color: #252C7C;
  color: #fff;
}

.circle.white {
  background-color: #fff;
  border: 2px solid #000;
}

.circle.grey {
  background-color: #ddd;
}

.form-select {
	border-color: var(--primary);
}

.form-select:focus {
	border-color: var(--primary);
	box-shadow: 0 0 0 3px var(--warning) !important;
}

