:root {
    --bg-color: #EDEDED;
    --text-color: #171717;
    --border-color: #171717;
    --accent-color: #D4D4D4;
}
.dark-mode {
    --bg-color: #111111;
    --text-color: #EDEDED;
    --border-color: #333333;
    --accent-color: #222222;
}
body, html { height: 100%; overflow: hidden; background-color: var(--bg-color); color: var(--text-color); transition: background-color 0.3s; }
.border-all-theme { border: 1px solid var(--border-color); }
.border-b-theme { border-bottom: 1px solid var(--border-color); }
.border-t-theme { border-top: 1px solid var(--border-color); }
h1, h2, h3 { letter-spacing: -0.04em; line-height: 1; }
.mono-tag { font-family: monospace; font-size: 0.65rem; text-transform: uppercase; letter-spacing: 0.05em; }
.view-section { display: none; height: 100%; flex-direction: column; }
.view-section.active { display: flex; animation: slideUp 0.3s; }
.row-selected { background-color: var(--text-color) !important; color: var(--bg-color) !important; }
.custom-check { width: 14px; height: 14px; border: 1px solid currentColor; display: inline-flex; align-items: center; justify-content: center; margin-right: 10px; }
.row-selected .custom-check::after { content: ''; width: 8px; height: 8px; background: var(--bg-color); display: block; }
.scroll-area { overflow-y: auto; -webkit-overflow-scrolling: touch; scroll-behavior: smooth; }
.scroll-area::-webkit-scrollbar { width: 4px; }
.scroll-area::-webkit-scrollbar-thumb { background: var(--border-color); border-radius: 4px; }
.dropdown-menu { display: none; position: absolute; top: 100%; left: -1px; width: calc(100% + 2px); max-height: 300px; overflow-y: auto; background-color: var(--bg-color); border: 1px solid var(--border-color); z-index: 100; box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.2); }
.dropdown-menu.show { display: block; animation: slideDown 0.2s cubic-bezier(0.16, 1, 0.3, 1); }
.dropdown-btn::after { content: '▼'; font-size: 8px; position: absolute; right: 8px; top: 50%; transform: translateY(-50%); opacity: 0.5; }
#login-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: var(--bg-color); z-index: 9999; display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 20px; }
#toast { position: fixed; top: 20px; left: 50%; transform: translateX(-50%) translateY(-100px); background: var(--text-color); color: var(--bg-color); padding: 10px 20px; font-weight: bold; border-radius: 4px; z-index: 10000; transition: transform 0.3s; opacity: 0; font-size: 12px; }
#toast.show { transform: translateX(-50%) translateY(0); opacity: 1; }
.hidden { display: none !important; }
.input-brutal { background: transparent; border-bottom: 1px solid var(--border-color); color: var(--text-color); border-radius: 0; }
.input-brutal:focus { outline: none; border-bottom-width: 2px; }
.markdown p { margin-bottom: 0.8rem; line-height: 1.6; }

/* Correção de Clicabilidade */
button { cursor: pointer; }