/* Color theme 1 */

body {
    background-color: white;
}

button {
    background: linear-gradient(to bottom, #eef, #dde, #dde, #cce);
    box-shadow: 1px 3px #99f;
}

button:active {
    background: linear-gradient(to bottom, #ddf, #ccf);
    box-shadow: 1px 1px #99b;
}

.drawer-toggle {
    background: linear-gradient(to bottom, #eef, #dde, #dde, #cce);
    box-shadow: 1px 3px #99f;
    color: black;
}

.drawer-toggle:active {
    background: linear-gradient(to bottom, #ddf, #ccf);
    box-shadow: 1px 1px #99b;
}

input {
    border: 1px solid #ccc;
    background-color: white;
    color: black;
}

input:focus {
    border-color: #007bff;
    box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.25);
}

table {
    border: 1px solid #ccc;
}

tr {
    background-color: white;
}

td, th {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

.dt-empty-cell {
    color: #888;
}

.form-bc {
    background-color: whitesmoke;
}

nav {
    color: black;
}

.wb {
    background-color: white;
}

.sb {
    background-color: whitesmoke;
}

.ha {
    color: white;
    text-decoration: none;
}

.hb {
    color: black;
    text-decoration: none;
}

.hl {
    color: white;
    text-decoration: none;
}

.hl:hover {
    color: lightblue;
}

.top-bar {
    background-color: #007bff;
    color: white;
}

.rounded-img {
    border-radius: 20px;
    overflow: hidden;
}

.drop-shadow {
    box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.7);
}

.border-3d {
    border: 1px outset #ccc;
    border-radius: 10px;
    padding: 10px;
}

.border-nav {
    border: 1px outset #ccc;
    border-radius: 6px;
    padding: 2px;
}

.border-solid {
    border: 1px solid #000;
}

.outlined {
    color: black;
    text-shadow: 
        1px 1px 1px whitesmoke,
        -1px 1px 1px whitesmoke,
        -1px -1px 1px whitesmoke,
        1px -1px 1px whitesmoke;
}

.error {
    background-color: rgb(255, 220, 220);
    border-color: red;
}


/* ── from style.css ──────────────────────────────────────────────────── */

.mbox-container {
    background-color: rgba(0, 0, 0, 0.5);
}
.mbox-container .mbox[tabindex="0"] {
    outline: none;
}
.icon-btn {
    border: 0;
}
.search-field > .search-clear {
    background: transparent;
    border: none;
    opacity: 0.4;
}
.search-field > .search-clear:hover {
    opacity: 1;
}
.tree-node:not(.highlighted):hover {
    background: rgba(0,0,0,0.04);
}
.tree-g-vert::before, .tree-g-tee::before, .tree-g-tee::after,
.tree-g-elbow::before, .tree-g-elbow::after {
    border-color: #bbb;
}
.uploads-info-row {
    border-bottom: 1px solid rgba(0,0,0,0.05);
}
.uploads-info-key {
    opacity: 0.55;
}
.upload-dest {
    opacity: 0.6;
}
.info-section-header {
    opacity: 0.6;
}
.proj-orc-container {
    border-top: 1px solid #ddd;
}
.proj-orc-title {
    color: #999;
}
.proj-orc-expand-all {
    color: #777;
}
.proj-orc-expand-all:hover {
    color: #333;
}
.proj-orc-loading {
    color: #888;
}
.proj-orc-empty {
    color: #888;
}
.proj-orc-row {
    border-bottom: 1px solid #eee;
}
.proj-orc-row:last-child {
    border-bottom: none;
}
.proj-orc-row.proj-orc-head {
    background: #f6f8fa;
    color: #888;
    border-bottom: 2px solid #ccc !important;
}
.proj-orc-row:not(.proj-orc-head):hover {
    background: #f0f4ff;
}
.proj-orc-row.selected {
    background: #e0eaff;
}
.proj-orc-mes {
    color: #888;
}
.proj-orc-atd {
    color: #888;
}
.proj-orc-apr {
    color: #555;
}
.proj-orc-notas-box {
    background: #f9f9f9;
    border: 1px solid #e0e0e0;
}
.proj-nota-row {
    border-bottom: 1px solid #eee;
}
.proj-nota-row:last-child {
    border-bottom: none;
}
.proj-nota-row.proj-nota-head {
    background: #f6f8fa;
    color: #888;
    border-bottom: 2px solid #ccc !important;
}
.proj-nota-orc {
    color: #555;
}
.proj-nota-date {
    color: #666;
}
.proj-nota-mes {
    color: #888;
}
.proj-nota-mat {
    color: #555;
}
.nav-period {
    border: 1px solid #bbb;
    background: #fff;
}
.nota-obs-wrap label {
    color: #555;
}
#nota-obs, #orc-obs {
    border: 1px solid #ccc;
}
.nf-dup-tip {
    background: rgb(255, 220, 220);
    border: 1px solid red;
    color: #cc2222;
}
.nf-dup-tip::before {
    border: 7px solid transparent;
    border-right: 8px solid red;
}
.nf-dup-tip::after {
    border: 6px solid transparent;
    border-right: 7px solid rgb(255, 220, 220);
}
.nf-dup-tip.tip-left::before {
    border: 7px solid transparent;
    border-left: 8px solid red;
}
.nf-dup-tip.tip-left::after {
    border: 6px solid transparent;
    border-left: 7px solid rgb(255, 220, 220);
}
.ac-drop {
    background: #fff;
    border: 1px solid #bbb;
    box-shadow: 0 2px 6px rgba(0,0,0,.15);
}
.ac-drop li:hover, .ac-drop li.ac-hi {
    background: #e8f0fe;
}
.log-line:hover {
    background: rgba(0,0,0,0.04);
}
.log-ts {
    color: #999;
}
.log-sep {
    color: #ccc;
}
.log-info {
    color: #2a8a2a;
}
.log-warn {
    color: #c07800;
}
.log-error {
    color: #cc2222;
}
.log-unknown {
    color: #7744aa;
}
.log-traceback {
    background: rgba(0,0,0,0.04);
    color: #555;
    border-left: 3px solid #cc2222;
}
mark.log-mark {
    background: #ffe066;
    color: inherit;
}
mark.log-mark-current {
    background: #ff8c00;
    color: white;
}
.log-changed {
    background: #fff0a0;
}
.log-undo-btn {
    opacity: 0.5;
}
.log-undo-btn:hover {
    opacity: 1;
}
#log-match-count {
    color: #888;
}
.nota-saldo-box {
    border: 1px solid #d0d0d0;
    background: #f6f8fa;
}
.nsb-lbl {
    color: #888;
}
.nsb-neg {
    color: #cc2222;
}
.nsb-badge-open {
    background: #d4edda;
    color: #155724;
}
.nsb-badge-cancel {
    background: #f8d7da;
    color: #721c24;
}
.nsb-badge-fechou {
    background: #fff3cd;
    color: #856404;
}
.nsb-badge-acima {
    background: #f8d7da;
    color: #721c24;
}
.nsb-warn {
    color: #856404;
}
.onb-empty {
    color: #888;
}
.onb-row {
    border-bottom: 1px solid #e8e8e8;
}
.onb-row:last-child {
    border-bottom: none;
}
.onb-head {
    background: #f6f8fa;
    color: #888;
    border-bottom: 2px solid #ccc !important;
}
.onb-date {
    color: #666;
}
.onb-proj {
    color: #555;
}
.onb-uni {
    color: #555;
}
.overlay {
    background-color: rgba(0, 0, 0, 0.5);
}
#bg-index .img {
    opacity: 0.5;
}
#drop-panel {
    border: 4px dashed #ccc;
    background-color: #f4f4ff;
}
#drop-panel.dragover {
    border: 4px dashed #45f;
    background-color: #f0f0ff;
}
button {
    border: none;
    outline: none;
}
button:disabled {
    opacity: 0.35;
}
input {
    outline: none;
}
.disabled {
    opacity: 0.3;
}
.phone-input {
    outline: none;
}
.dt-pagination {
    background-color: whitesmoke;
    border-top: 1px solid rgba(0,0,0,0.1);
}
.dt-page-info {
    opacity: 0.7;
}
.dt-pagination-sep {
    background: rgba(0,0,0,0.2);
}
.dt-page-size {
    border: 1px solid rgba(0,0,0,0.2);
}

/* ── schema highlight ────────────────────────────────────────────────────── */

.schema-section-header {
    color: #555;
    border-bottom: 1px solid #ddd;
}

.schema-item-name {
    color: #333;
}

.schema-sql {
    background: #f6f8fa;
    border: 1px solid #e0e0e0;
    color: #222;
}

.sql-kw     { color: #0055cc; font-weight: bold; }
.sql-str    { color: #2a7a2a; }
.sql-comment{ color: #999; font-style: italic; }
.sql-num    { color: #b06000; }

/* ── storage bar ─────────────────────────────────────────────────────────── */

#uploads-storage,
#cache-storage {
    border: 1px outset #ccc;
    border-radius: 6px;
}
.storage-bar-label {
    color: #555;
}
.storage-bar-track {
    background: #e0e0e0;
}
.storage-bar-fill {
    background: linear-gradient(to right, #4a90d9, #007bff);
}
.storage-bar-fill.storage-bar-warn {
    background: linear-gradient(to right, #e07c00, #ff9500);
}
.storage-bar-fill.storage-bar-danger {
    background: linear-gradient(to right, #c0392b, #e74c3c);
}
.storage-bar-detail span {
    color: #666;
}
.storage-bar-detail .storage-app {
    color: #007bff;
    font-weight: bold;
}

/* ── from datatable.css ──────────────────────────────────────────────────── */

.fixed-header {
    background-color: #dbe1f6;
}
.data-container button {
    background: linear-gradient(to bottom, transparent, transparent);
    box-shadow: none;
}
.th-inner {
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
    background-color: #c8d0ee;
}
th.highlighted .th-inner {
    background-color: #007bff;
    color: white;
    box-shadow: 1px 2px rgba(0, 0, 180, 0.3);
}
.data-container .filter-btn {
    border: 0px;
}
.filter-container {
    background: #c8d0ee;
}
.filter-container .filter-input {
    background: white;
}
.filter-icon {
    fill: currentColor;
    opacity: 0.25;
}
.dt-sort-menu {
    background: #fff;
    border: 1px solid #ccc;
    box-shadow: 0 -2px 8px rgba(0,0,0,.18);
}
.dt-sort-opt {
    background: none;
    border: none;
    box-shadow: none;
}
.dt-sort-opt:hover {
    background: #f0f0f0;
}
.dt-ac-drop {
    background: #fff;
    border: 1px solid #b0b8d8;
    box-shadow: 0 2px 8px rgba(0,0,0,.15);
}
.dt-ac-item:hover,
.dt-ac-item.dt-ac-sel {
    background: #007bff;
    color: white;
}
.dt-ac-item mark {
    background: transparent;
    font-weight: bold;
    color: inherit;
}
.dt-page-btn:not(.dt-page-disabled):hover {
    background-color: rgba(0, 0, 0, 0.08);
}
.dt-page-btn:not(.dt-page-disabled):active {
    background-color: rgba(0, 0, 0, 0.16);
}
.dt-page-size {
    border: 1px solid #ccc;
    background: white;
}
td, th {
    border-left: 0px;
    border-right: 0px;
}
.highlighted {
    color: white;
    background-color: #007bff;
}
.highlighted *:not(div):not(input) {
    color: white;
    background-color: transparent;
}
button.highlighted,
button.highlighted:active {
    background: #007bff;
    box-shadow: 1px 2px rgba(0, 0, 180, 0.3);
    color: white;
}

/* ── from sql_panel.css ──────────────────────────────────────────────────── */

.et-pk {
    color: #888;
    background: #fafafa;
}
.et-cell.et-saving {
    opacity: 0.5;
}
.et-cell.et-saved {
    background: #d4edda !important;
}
.et-editing-row {
    outline: 2px solid #4a90d9;
}
.et-input {
    border: none;
    outline: none;
    background: #fff;
    color: #222;
}
.et-new-row {
    background: #fffbe6;
}
.et-locked {
    background: #f8f0f0 !important;
}
.et-locked td.et-cell {
    color: #999;
}
.integrity-ok {
    color: #2a7a2a;
}
.integrity-header {
    background: #fff3cd;
    border-bottom: 1px solid #ffc107;
}
.integrity-print-btn:hover {
    opacity: 0.7;
}
.integrity-header-fix {
    background: #d4edda;
    border-bottom: 1px solid #a3d9a5;
}
.integrity-table-name {
    background: #f6f8fa;
    color: #555;
    border-top: 1px solid #e0e0e0;
}
.integrity-ref,
.integrity-field,
.integrity-msg {
    border-bottom: 1px solid #f0f0f0;
}
.integrity-fix .integrity-msg {
    color: #2a7a2a;
}
.integrity-ref {
    color: #333;
}
.integrity-field {
    color: #666;
}
.integrity-msg {
    color: #c00;
}

/* ── Relatórios: calendário de mês ──────────────────────────────────────── */
.rpt-cal-drop {
    background: whitesmoke;
    border: 1px outset #ccc;
    box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.45);
}

/* ── Gantt stale-status banner ─────────────────────────────────────────────── */
.plan-risk-matrix-wrap { display: inline-block; }
.plan-risk-matrix { display: table; border-collapse: collapse; font-size: 12px; }
.plan-risk-matrix th { padding: 4px 8px; font-size: 11px; font-weight: 600; text-align: center; }
.plan-risk-matrix td { padding: 4px 6px; text-align: center; }
.plan-risk-matrix-cell { min-width: 52px; min-height: 40px; cursor: default; border-radius: 3px; position: relative; }
.plan-risk-cell-score { font-size: 11px; font-weight: 700; opacity: 0.55; display: block; }
.plan-risk-cell-count { display: inline-block; background: rgba(0,0,0,0.18); color: #fff; border-radius: 10px;
    font-size: 12px; font-weight: 700; padding: 1px 7px; min-width: 20px; }

.plan-stale-bar {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 5px 10px;
    margin-bottom: 4px;
    border-radius: 4px;
    background: #fff4e0;
    border: 1px solid #e6b84a;
    color: #7a4a00;
    font-size: 0.88em;
}

/* ── Gantt context menu ───────────────────────────────────────────────────── */
#plan-gantt-ctx {
    background: #fff;
    border: 1px solid #ccc;
    box-shadow: 2px 4px 14px rgba(0, 0, 0, 0.18);
}

.gantt-ctx-item:hover {
    background: #eef2ff;
    color: #1a3da0;
}

/* ── Toolbar drawer appearance ────────────────────────────────────────────── */
@media (max-width: 939px) {
    .form-container .div2.has-drawer .toolbar.drawer-open,
    .form-container .div2.has-drawer .toolbar-wrap.drawer-open {
        background-color: white;
        border-right: 1px outset #ccc;
        box-shadow: 3px 0 8px rgba(0, 0, 0, 0.25);
    }

    .drawer-backdrop.active {
        background-color: rgba(0, 0, 0, 0.15);
    }
}
