/* Tema único do Obra Clara: painel escuro em tons de verde em todas as telas.
   Complementa dashboard-dark.css (que já cobre menu, topo, cartões, tabelas e selos). */

/* ---------- Tokens ---------- */
body.dashboard-mode{
  --bg:#0d1e20; --paper:#1a3032; --paper-2:#152a2c; --paper-3:#203a3a;
  --ink:#e7f2ee; --ink-strong:#f1faf5; --muted:#9aafaa; --muted-2:#7f968f;
  --line:#2d4444; --line-soft:#263d3d;
  --green:#27c49b; --green-strong:#5fe4b4; --green-bg:#1d4a3f;
  --amber:#f0c678; --amber-bg:#52412b; --red:#ffb5a5; --red-bg:#56342f; --blue:#9bc9e6; --blue-bg:#2b4651;
  --input:#132729; --input-line:#35504d;
  --shadow:0 10px 25px rgba(0,0,0,.12);
  color-scheme:dark;
}

/* ---------- Leitura: letras um pouco maiores ---------- */
.dashboard-mode .page-head p{font-size:14px}
.dashboard-mode .section-head h2{font-size:17px}
.dashboard-mode .section-head p,.dashboard-mode .dashboard-card-head p{font-size:12.5px}
.dashboard-mode .data-table td,.dashboard-mode .data-table .name{font-size:13px}
.dashboard-mode .data-table th{font-size:10.5px}
.dashboard-mode .subtext{font-size:11.5px}
.dashboard-mode .nav-item{font-size:14px}
.dashboard-mode .button{font-size:13px}
.dashboard-mode .button.small{font-size:12px}
.dashboard-mode .field label{font-size:12.5px}
.dashboard-mode .field input,.dashboard-mode .field select,.dashboard-mode .field textarea,.dashboard-mode .search,.dashboard-mode .filter-select{font-size:13.5px}
.dashboard-mode .field-help,.dashboard-mode .file-note{font-size:12px;line-height:1.5}
.dashboard-mode .stage-title strong{font-size:14px}
.dashboard-mode .stage-title small,.dashboard-mode .criterion small{font-size:12px}
.dashboard-mode .criterion strong{font-size:13px}
.dashboard-mode .info-strip small{font-size:11.5px}
.dashboard-mode .info-strip strong{font-size:14px}
.dashboard-mode .tab{font-size:13.5px}
.dashboard-mode .timeline-item strong{font-size:12.5px}
.dashboard-mode .timeline-item small{font-size:11.5px}
.dashboard-mode .side-card h3{font-size:14px}
.dashboard-mode .side-card p,.dashboard-mode .legend{font-size:12.5px}
.dashboard-mode .callout{font-size:12.5px}
.dashboard-mode .report-item{font-size:13px}
.dashboard-mode .report-block h3{font-size:15px}
.dashboard-mode .milestone strong{font-size:13.5px}
.dashboard-mode .milestone small{font-size:11.5px}
.dashboard-mode .modal-head h2{font-size:20px}
.dashboard-mode .modal-head p{font-size:12.5px}
.dashboard-mode .sidebar-bottom strong{font-size:13px}
.dashboard-mode .sidebar-bottom small{font-size:11.5px}
.dashboard-mode .reset-link{font-size:12px}
.dashboard-mode .breadcrumb{font-size:13px}

/* ---------- Botões ---------- */
.dashboard-mode .button.secondary{background:var(--paper-3);border-color:var(--input-line);color:var(--ink)}
.dashboard-mode .button.secondary:hover{background:#27494a;border-color:#43625e}
.dashboard-mode .button.ghost{color:var(--green-strong)}
.dashboard-mode .button.ghost:hover{color:#8ff0cb}
.dashboard-mode .button:focus-visible,.dashboard-mode a:focus-visible,.dashboard-mode input:focus-visible,.dashboard-mode select:focus-visible,.dashboard-mode textarea:focus-visible{outline-color:#3fd8a8}

/* ---------- Formulários ---------- */
.dashboard-mode .field input,.dashboard-mode .field select,.dashboard-mode .field textarea,.dashboard-mode .search,.dashboard-mode .filter-select{background:var(--input);border-color:var(--input-line);color:var(--ink)}
.dashboard-mode .field input::placeholder,.dashboard-mode .field textarea::placeholder,.dashboard-mode .search::placeholder{color:#6f8781}
.dashboard-mode .field input:focus,.dashboard-mode .field select:focus,.dashboard-mode .field textarea:focus,.dashboard-mode .search:focus{border-color:var(--green)}
.dashboard-mode input[type=file]{color:var(--muted)}
.dashboard-mode input[type=file]::file-selector-button{background:var(--paper-3);color:var(--ink);border:1px solid var(--input-line);border-radius:7px;padding:7px 11px;margin-right:10px;cursor:pointer}
.dashboard-mode .stage-choice input,.dashboard-mode .review-confirm input{accent-color:var(--green)}
.dashboard-mode code{background:var(--paper-3);padding:1px 5px;border-radius:4px}

/* ---------- Detalhe da obra ---------- */
.dashboard-mode .detail-top,.dashboard-mode .info-strip small{color:var(--muted)}
.dashboard-mode .detail-top button{color:var(--green-strong)}
.dashboard-mode .info-strip div{border-color:var(--line)}
.dashboard-mode .info-strip strong{color:var(--ink-strong)}
.dashboard-mode .tabs{border-color:var(--line)}
.dashboard-mode .tab{color:var(--muted)}
.dashboard-mode .tab:hover{color:var(--ink)}
.dashboard-mode .tab.active{color:var(--green-strong);border-color:var(--green-strong)}
.dashboard-mode .stage-header{background:transparent;color:var(--ink)}
.dashboard-mode .stage-header:hover{background:var(--paper-3)}
.dashboard-mode .stage-num{border-color:var(--input-line);color:var(--green-strong);background:var(--paper-2)}
.dashboard-mode .stage-title strong{color:var(--ink-strong)}
.dashboard-mode .stage-title small{color:var(--muted)}
.dashboard-mode .stage-body{border-color:var(--line);background:var(--paper-2)}
.dashboard-mode .criterion{border-color:var(--line-soft)}
.dashboard-mode .criterion strong{color:var(--ink-strong)}
.dashboard-mode .criterion small{color:var(--muted)}
.dashboard-mode .side-card h3{color:var(--ink-strong)}
.dashboard-mode .side-card p{color:var(--muted)}
.dashboard-mode .progress-ring{background:conic-gradient(var(--green) var(--progress),#2c4745 0)}
.dashboard-mode .progress-ring span{background:var(--paper);color:var(--ink-strong)}
.dashboard-mode .legend{color:var(--muted)}
.dashboard-mode .legend b{color:var(--ink-strong)}
.dashboard-mode .timeline-dot{background:var(--green)}
.dashboard-mode .timeline-item strong{color:var(--ink)}
.dashboard-mode .timeline-item small{color:var(--muted)}
.dashboard-mode .pill{background:var(--paper-2);border-color:var(--line);color:#b5c9c1}
.dashboard-mode .callout{background:#16342f;border-color:#24524a;color:#bfe3d4}
.dashboard-mode .callout strong{color:#e3f7ee}
.dashboard-mode .empty{color:var(--muted)}

/* Linha do tempo da obra */
.dashboard-mode .milestone{border-top-color:#35504d;color:var(--ink)}
.dashboard-mode .milestone:before{background:#4a6461;box-shadow:0 0 0 3px var(--paper)}
.dashboard-mode .milestone.done:before{background:var(--green)}
.dashboard-mode .milestone.issue:before{background:#e0776b}
.dashboard-mode .milestone.active:before{background:#e0ae5d}
.dashboard-mode .milestone.overdue:before{background:#ef6a5d;box-shadow:0 0 0 3px var(--paper),0 0 0 7px rgba(239,106,93,.25)}
.dashboard-mode .milestone:hover strong{color:var(--green-strong)}
.dashboard-mode .milestone-index,.dashboard-mode .milestone-progress{color:var(--muted-2)}
.dashboard-mode .milestone small{color:var(--muted)}
.dashboard-mode .milestone-state{background:#2c4442;color:#c6d4c9}
.dashboard-mode .milestone.done .milestone-state{background:#205042;color:#7de8ae}
.dashboard-mode .milestone.issue .milestone-state,.dashboard-mode .milestone.overdue .milestone-state{background:var(--red-bg);color:var(--red)}
.dashboard-mode .milestone.active .milestone-state{background:var(--amber-bg);color:var(--amber)}

/* ---------- Relatórios ---------- */
.dashboard-mode .report-item{border-color:var(--line-soft);color:var(--ink)}
.dashboard-mode .report-item em,.dashboard-mode .report-item span{color:inherit}
.dashboard-mode .report-block h3{color:var(--ink-strong)}

/* ---------- Janelas (modais) ---------- */
.dashboard-mode .modal-backdrop{background:rgba(3,10,10,.66);backdrop-filter:blur(2px)}
.dashboard-mode .modal{background:var(--paper);border:1px solid var(--line);box-shadow:0 30px 80px rgba(0,0,0,.5);color:var(--ink)}
.dashboard-mode .modal-head,.dashboard-mode .modal-footer{border-color:var(--line)}
.dashboard-mode .modal-head h2{color:var(--ink-strong)}
.dashboard-mode .modal-head p{color:var(--muted)}
.dashboard-mode .modal-close{background:var(--paper-3);color:var(--ink)}
.dashboard-mode .modal-close:hover{background:#2a4a4a}
.dashboard-mode .modal-footer{flex-wrap:wrap}
.dashboard-mode .modal-footer .button[data-action^="delete"]{margin-right:auto;color:#ffb5a5;border-color:#6b3c35;background:transparent}
.dashboard-mode .modal-footer .button[data-action^="delete"]:hover{background:#3b2522}
.dashboard-mode .upload-box{background:var(--paper-2);border-color:#3d5c56}

/* Cadastro assistido */
.dashboard-mode .intake-box{background:var(--paper-2);border-color:var(--line)}
.dashboard-mode .intake-title strong,.dashboard-mode .stage-review>strong{color:var(--ink-strong);font-size:13.5px}
.dashboard-mode .intake-title span{background:var(--green-bg);color:#83e4b5;font-size:10px}
.dashboard-mode .intake-box>p,.dashboard-mode .stage-review p,.dashboard-mode .intake-actions small,.dashboard-mode .proposal-result small{color:var(--muted);font-size:12px}
.dashboard-mode .proposal-result{background:var(--paper);border-color:#2f5a4f}
.dashboard-mode .proposal-result>strong{color:var(--green-strong);font-size:13px}
.dashboard-mode .proposal-result p{color:var(--muted);font-size:12px}
.dashboard-mode .proposal-source{border-color:var(--line-soft);font-size:12px}
.dashboard-mode .proposal-source b{color:#b7ddcf}
.dashboard-mode .proposal-source span{color:var(--ink)}
.dashboard-mode .stage-review{border-color:var(--line)}
.dashboard-mode .stage-choice{border-color:var(--line);background:var(--paper-2)}
.dashboard-mode .stage-choice:hover{border-color:#43625e}
.dashboard-mode .stage-choice b{color:var(--ink-strong);font-size:13px}
.dashboard-mode .stage-choice small{color:var(--muted);font-size:11.5px}
.dashboard-mode .review-confirm{font-size:12.5px;color:var(--ink)}

/* ---------- Aviso (toast) e menu móvel ---------- */
.dashboard-mode .toast{background:#27c99c;color:#062520;font-weight:700;font-size:13px}
.dashboard-mode .icon-button{color:var(--ink)}

/* ---------- Login ---------- */
.dashboard-mode .auth-root{background:radial-gradient(1200px 600px at 20% -10%,#1b4a40 0,transparent 60%),#0d1e20}
.dashboard-mode .auth-card{background:var(--paper);border:1px solid var(--line);color:var(--ink);box-shadow:0 30px 80px rgba(0,0,0,.45)}
.dashboard-mode .auth-card h1{color:var(--ink-strong)}
.dashboard-mode .auth-card>p{color:var(--muted)}
.dashboard-mode .password-eye{filter:grayscale(1) invert(1)}
.dashboard-mode .password-eye:hover,.dashboard-mode .password-eye:focus-visible{background:rgba(255,255,255,.08)}
.dashboard-mode .password-eye.on{filter:none}

/* Cores do gráfico e das legendas combinando com o tema */
.dashboard-mode .legend-dot.good{background:#27c49b}
.dashboard-mode .legend-dot.caution,.dashboard-mode .priority-marker.caution{background:#e0ae5d}
.dashboard-mode .legend-dot.bad,.dashboard-mode .priority-marker.bad{background:#e0776b}
.dashboard-mode .legend-dot.neutral{background:#35504d}

/* ---------- Planos ---------- */
.dashboard-mode .upsell{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:14px 16px;border:1px dashed #3d6b5f;border-radius:10px;background:#15302b;color:#bfe3d4;font-size:13px}
.dashboard-mode .plan-current{display:grid;grid-template-columns:minmax(220px,1fr) 2fr;gap:24px;align-items:center}
.dashboard-mode .plan-current small{color:var(--muted);font-size:12px}
.dashboard-mode .plan-current h2{margin:4px 0 6px;font-size:26px;color:var(--ink-strong)}
.dashboard-mode .plan-usage{display:grid;grid-template-columns:1fr 1fr;gap:14px 22px}
.dashboard-mode .usage-top{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;color:var(--muted);margin-bottom:6px}
.dashboard-mode .usage-top strong{color:var(--ink-strong)}
.dashboard-mode .usage-top small{color:var(--muted);font-weight:500}
.dashboard-mode .usage-track{height:8px;background:#2c4745;border-radius:99px;overflow:hidden}
.dashboard-mode .usage-track span{display:block;height:100%;background:var(--green);border-radius:99px}
.dashboard-mode .usage-track span.warn{background:#e0ae5d}
.dashboard-mode .usage-track span.full{background:#ef6a5d}
.dashboard-mode .cycle-toggle{display:flex;justify-content:center;gap:4px;margin:26px auto 18px;padding:4px;border:1px solid var(--line);border-radius:12px;width:max-content;background:var(--paper-2)}
.dashboard-mode .cycle-toggle button{border:0;background:transparent;color:var(--muted);padding:9px 18px;border-radius:9px;font-weight:700;font-size:13px}
.dashboard-mode .cycle-toggle button.active{background:var(--green);color:#062520}
.dashboard-mode .cycle-toggle span{font-size:10px;margin-left:6px;padding:2px 6px;border-radius:99px;background:rgba(0,0,0,.18)}
.dashboard-mode .plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch;margin-bottom:16px}
.dashboard-mode .plan-card{position:relative;padding:24px 22px;display:flex;flex-direction:column;gap:10px}
.dashboard-mode .plan-card.featured{border-color:var(--green);box-shadow:0 0 0 1px var(--green),0 18px 40px rgba(0,0,0,.25)}
.dashboard-mode .plan-card.current{background:var(--paper-3)}
.dashboard-mode .plan-badge{position:absolute;top:-11px;left:22px;background:var(--green);color:#062520;font-size:10.5px;font-weight:800;padding:4px 10px;border-radius:99px;letter-spacing:.03em}
.dashboard-mode .plan-card h3{margin:0;font-size:18px;color:var(--ink-strong)}
.dashboard-mode .plan-price strong{font-size:32px;letter-spacing:-.04em;color:var(--ink-strong)}
.dashboard-mode .plan-price span{color:var(--muted);font-size:13px;margin-left:4px}
.dashboard-mode .plan-card ul{list-style:none;padding:0;margin:6px 0 10px;display:grid;gap:9px;flex:1}
.dashboard-mode .plan-card li{font-size:13px;color:var(--ink);padding-left:22px;position:relative}
.dashboard-mode .plan-card li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:800}
.dashboard-mode .plan-card .button{width:100%}
.dashboard-mode .plan-pill{display:inline-block!important;margin-top:6px!important;padding:3px 8px;border-radius:99px;background:var(--green-bg);color:#83e4b5!important;font-weight:700}
.dashboard-mode .auth-switch{margin:16px 0 0;text-align:center;font-size:13px;color:var(--muted)}
.dashboard-mode .auth-switch button{border:0;background:transparent;color:var(--green-strong);font-weight:700;padding:0 2px}
.dashboard-mode .review-confirm a{color:var(--green-strong)}
@media(max-width:1000px){.dashboard-mode .plan-grid{grid-template-columns:1fr}.dashboard-mode .plan-current{grid-template-columns:1fr}}
@media(max-width:600px){.dashboard-mode .plan-usage{grid-template-columns:1fr}}

/* ---------- Estrutura em telas médias ---------- */
.dashboard-mode .criterion-actions{flex-wrap:wrap}
@media(max-width:1280px){
  .dashboard-mode .criterion{grid-template-columns:minmax(0,1fr) auto;row-gap:10px}
  .dashboard-mode .criterion-actions{grid-column:1/-1}
  .dashboard-mode .page{padding:30px 28px 60px}
}
@media(max-width:900px){.dashboard-mode .app-shell{grid-template-columns:210px minmax(0,1fr)}.dashboard-mode .sidebar{padding:22px 12px}}
@media(max-width:720px){.dashboard-mode .sidebar{background:#102326}.dashboard-mode .page{padding:22px 16px 50px}}

/* ---------- Impressão: relatório em papel branco ---------- */
@media print{
  body.dashboard-mode{--bg:#fff;--paper:#fff;--paper-2:#fff;--paper-3:#fff;--ink:#1d2927;--ink-strong:#111;--muted:#555;--line:#ccc;--line-soft:#ddd;background:#fff;color:#1d2927;color-scheme:light}
  .dashboard-mode .card,.dashboard-mode .page-head h1,.dashboard-mode .report-block h3,.dashboard-mode .report-item{background:#fff!important;color:#111!important;border-color:#ccc!important;box-shadow:none!important}
  .dashboard-mode .callout{background:#f3f3f3;color:#333;border-color:#ccc}
  .dashboard-mode .status{border:1px solid currentColor;background:#fff!important}
  .dashboard-mode .status.green{color:#157657!important}.dashboard-mode .status.amber{color:#9a641a!important}.dashboard-mode .status.red{color:#aa443d!important}.dashboard-mode .status.gray,.dashboard-mode .status.blue{color:#555!important}
}
