body {
    text-align: justify;
}

body.dark-theme .markdown-section tr:nth-child(2n) {
    background-color: #262626 !important;
}

body.dark-theme .markdown-section tr {
    background-color: #2e2e2e !important;
}

body.dark-theme .markdown-section table th,
body.dark-theme .markdown-section table td {
    border-color: #444 !important;
    color: #eee !important;
}

body.dark-theme .markdown-section table th {
    background-color: #333 !important;
    color: #fff !important;
    border-color: #555 !important;
}

body .markdown-section hr {
    border-bottom: 2px solid #eee !important;
}

body.dark-theme .markdown-section code {
    color: #e96900 !important;
}

body.dark-theme .cover-main {
    color: #34495e !important;
}

body.dark-theme .cover-main .anchor span {
    color: #34495e !important;
}

/* --- Estilos do botão de tema --- */
#theme-toggle {
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    z-index: 9999;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.5rem;
    border-radius: 50%;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.3s ease;
    color: #34495e;
}

body.dark-theme #theme-toggle #theme-icon {
    color: #c8c8c8;
}

body:not(.dark-theme) #theme-toggle #theme-icon {
    color: #34495e;
}

details {
    margin-bottom: 1em;
    padding: 1em;
    border: 2px solid #42b983;
    border-radius: 4px;
}

summary {
    display: flex;
    align-items: center;
    cursor: pointer;
    outline: none;
    font-weight: bold;
}

details[open] summary {
    border-bottom: 2px solid #42b983;
    margin-bottom: 1em;
    padding-bottom: 1em;
}

summary::-webkit-details-marker {
    display: none;
}

summary::marker {
    display: none;
}

.arrow-icon {
    margin-left: 0.5em;
    transition: transform 0.3s ease;
    fill: #42b983;
}

body.dark-theme .arrow-icon {
    fill: #ea6f5a;
}

body.dark-theme details,
body.dark-theme details[open] summary {
    border-color: #ea6f5a;
    border-bottom-color: #ea6f5a;
}

details[open] .arrow-icon {
    transform: rotate(90deg);
}