@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,200..800&family=Rubik:ital,wght@0,300..900;1,300..900&display=swap');

*{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: "Rubik", sans-serif;
    font-size: 1rem;
}

:root{
    --border:#D9D9D9;
    --bg-light: #fff;
    --bg-tributo: #fafafa;
    --text-blue: #022C90;
    --text-dark: #212529;
    --text-gray:#636363;
    --clr-yellow:#FEBB01;
    --clr-blue-primary:#022C90;
    --clr-blue-secondary: #2765d9;
    --btn-blue: #022C90;
}

.dark-mode:root{
    --border: #ababab;
    --btn-blue: #febb01;
    --text-dark: #febb01;
    --text-blue: #febb01;
    --text-gray: #febb01;
    --bg-light: #121212;
    --bg-tributo: #555;
}

body{background-color: var(--bg-light)}

header{background-color: var(--clr-blue-primary)}

p{margin-bottom: 0}

.column{
    display: flex;
    justify-content: space-between;
}

.description, .footer-text, .msg{color: var(--text-gray)}

.ag-logo, .footer-logo{width: 40px}

.gov-logo--container{width: 50%}
.gov-logo{
    width: 75%;
    background-color: #fff;
}

.user-text{
    color: var(--text-dark);
    line-height: 1rem;
}

.user-name{font-size: 1rem;}

.user-btn{
    background-color: var(--btn-blue);
    padding: .25em .5em;
    border-radius: 50%;
    border: none;
}

.user-popover{
    --bs-popover-bg: var(--btn-blue);
    --bs-popover-body-color: #fff;
}

.popover-list{
    color: #fff;
    list-style: none;
    padding: 0;
    margin: 0;
}

.popover-list li:hover{opacity: .8}
.popover-list li + li{margin-top: .5em}

.popover-list--a{
    text-decoration: none;
    color: #fff;
}

.bi-person-fill{color: #fff}

.bi-person-fill:hover{
    opacity: .8;
    cursor: pointer;
}

.modal-btn{
    background-color: transparent;
    color: #fff;
    border-radius: 8px;
    border: 2px solid var(--clr-yellow);
    padding: .3em .6em;
}

.modal-btn:hover{
    background-color: var(--clr-yellow);
    transition: .5s;
}

.a11y-button, .filter-btn, .pay-btn{
    color: #fff;
    border: none;
    border-radius: 4px;
    padding: .3em .6em;
    background-color: var(--clr-yellow);
    box-shadow: 0 2px 2px rgba(0, 0, 0, .5);
}

.filter-btn, .pay-btn{background-color: var(--btn-blue)}

.a11y-button:hover, .filter-btn:hover, .pay-btn:hover{opacity: .8}

.bi-search{
    position: absolute;
    top: 55%;
    right: 4%;
    transform: translateY(-50%);
    color: #ccc;
}

.search-box{margin: 1em 0}

#input-tributos{
    color: var(--text-dark);
    background-color: var(--bg-light);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: .75em 1em;
}

#input-tributos option{color: var(--text-dark)}

#input-busca{
    background-color: var(--bg-light);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: .75em 1em;
    width: 100%
}

input::placeholder, input:focus{color: var(--text-gray)}

#input-busca:focus, #input-busca:hover, #input-tributos:focus, #input-tributos:hover{
    outline: none;
    border: 1px solid var(--btn-blue);
}

.search-box{position: relative}

.grid-title{
    font-size: 1.35rem;
    color: var(--text-blue);
}

.grid__section{
    display: grid;
    grid-template-columns: 1fr;
    gap: .5em;
}

.app-name{
    font-weight: 500;
    margin: 0;
}

.grid-item{
    padding: 1em;
    text-align: center;
    border: 1px solid var(--border);
    border-radius: 16px;
    background-color: var(--bg-light);
    box-shadow: 0 2px 4px rgba(0, 0, 0, .25);
    color: var(--text-dark);
}

.grid-item:hover{
    border: 1px solid var(--btn-blue);
    cursor: pointer;
}

.footer-text, .msg{font-size: .9rem}

@media (min-width: 768px) and (min-height: 600px){
    .gov-logo{width: 120px}
    .gov-logo--container{width: 35%}
    
    #input-busca{padding: .5em 1em}

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

    .search-box, .grid-title{
        width: 50%;
        margin: 0;
    }
}

@media (min-width: 1200px) and (min-height: 800px){
    .gov-logo--container{width: 50%}
    .gov-logo{width: 150px}
    .grid__section{grid-template-columns: repeat(2, 1fr)}
}

@media (min-height: 1200px) {
    .grid__section{grid-template-columns: repeat(2, 1fr)}    
}