/* Caixa Premium v175.1 — camada visual. Sem alterações de regras financeiras. */
body.cash034-body{--cash-bg:#f3f6fc;--cash-ink:#142a4b;--cash-line:#dfe7f2;--cash-blue:#075be7;background:var(--cash-bg)}
.cash034-main{max-width:1530px;padding:32px clamp(18px,3vw,42px) 64px}
.cash034-title{background:#112e56;color:#fff;border-radius:22px;padding:36px 38px;margin-bottom:22px;box-shadow:0 14px 34px #0c2c5415;align-items:center}
.cash034-title h1{color:#fff;font-size:clamp(28px,3vw,38px);font-weight:800;letter-spacing:-.035em;margin:12px 0 8px}
.cash034-title p{color:#dce8f7;line-height:1.5}
.cash034-eyebrow{color:#b8d6ff;letter-spacing:.14em}
.cash034-status{background:#e8f0ff;color:#183f74;border:1px solid #ffffff50}
.cash034-status.open{background:#e0f6e9;color:#0b704a}
.cash034-card{border:1px solid #e0e8f3;border-radius:17px;box-shadow:0 8px 22px #1c396109;padding:24px}
.cash034-card h2{font-size:17px;letter-spacing:-.015em}
.cash034-layout{grid-template-columns:minmax(0,1fr) 325px;gap:20px}
.cash034-primary,.cash034-aside{gap:18px}
.cash034-metrics{gap:10px}
.cash034-metric{background:#f6f8fc;border:1px solid #e3eaf4;padding:15px 16px;border-radius:12px}
.cash034-metric .caption{font-size:12px;color:#617694}
.cash034-metric strong{font-size:clamp(18px,1.8vw,24px);color:#143b67;margin-top:8px}
.cash034-totals{gap:12px}
.cash034-total{border-radius:15px;padding:21px;background:#eaf2ff;border-color:#dce9fb}
.cash034-total.green{background:#e7f7f0;border-color:#d4eddf}
.cash034-total strong{font-size:clamp(24px,2.8vw,34px)}
.cash034-table{min-width:570px}
.cash034-table th{background:#eff4fa;color:#516986;font-size:11px}
.cash034-table td{font-size:12px}
.cash034-action{border-radius:12px;padding:12px 13px;margin-top:8px;transition:background .16s ease,box-shadow .16s ease}
.cash034-action:focus-visible,.cash034-form input:focus-visible,.cash034-form textarea:focus-visible,.cash034-form select:focus-visible{outline:3px solid #7faafa;outline-offset:2px}
.cash034-form input,.cash034-form textarea,.cash034-form select{min-height:43px;border-radius:10px;border-color:#d3dfed}
.cash035-reconcile{background:#f6f8fc;border-radius:12px}
.cash034-note{border:1px solid #f0dfb5}
.cash034-modal-backdrop{z-index:1100;backdrop-filter:blur(3px)}
.cash034-modal{width:min(100%,540px);padding:0;max-height:min(90vh,800px);border-radius:18px;overflow:auto}
.cash034-modal h2{margin:0;padding:23px 26px 10px;font-size:21px;color:#142c4f}
.cash034-modal>p{padding:0 26px 15px;margin:0;color:#5d718c;border-bottom:1px solid #e4ebf4}
.cash034-modal>.cash034-form{padding:22px 26px 26px}
.cash034-modal-actions{border-top:1px solid #e4ebf4;padding-top:16px}
.cash034-open{max-width:680px;margin:0 auto}
.ops041-pendentes{margin-top:20px}
@media(max-width:1150px){.cash034-layout{grid-template-columns:1fr}.cash034-aside{grid-template-columns:repeat(2,minmax(0,1fr))}.cash034-aside .cash034-card:last-child{grid-column:auto}}
@media(max-width:740px){.cash034-title{padding:26px 22px;border-radius:16px}.cash034-aside{grid-template-columns:1fr}.cash034-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.cash034-totals{grid-template-columns:1fr}.cash034-card{padding:17px}.cash034-main{padding:18px 12px 40px}.cash034-title h1{font-size:28px}}
@media print{.cash034-title{background:#fff!important;color:#111!important;box-shadow:none;border:1px solid #ddd}.cash034-title h1,.cash034-title p{color:#111!important}.cash034-sidebar,.cash034-topbar,.cash034-action,.cash034-tablehead button{display:none!important}.cash034-main{padding:0}.cash034-card{box-shadow:none}}

/* v175.2 — abertura compacta e conferência obrigatória */
.cash034-main{padding-top:22px}
.cash1752-open{max-width:790px;padding:28px 30px}
.cash1752-open-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}
.cash1752-open-heading h2{font-size:22px;margin:4px 0 7px;color:#14345b}
.cash1752-open-heading p{margin:0;color:#647892;line-height:1.5}
.cash1752-kicker{font-size:11px;font-weight:800;letter-spacing:.12em;color:#2563eb}
.cash1752-open-icon{font-size:26px;background:#eef4ff;color:#1c5ed5;padding:14px;border-radius:15px}
.cash1752-open-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch}
.cash1752-expected{border:1px solid #dce6f3;border-radius:12px;background:#f4f7fc;padding:16px;display:flex;flex-direction:column;gap:8px}
.cash1752-expected>span,.cash1752-count-label{font-size:12px;font-weight:700;color:#425a79}
.cash1752-expected strong{font-size:25px;color:#143c6a}
.cash1752-expected small,.cash1752-count-label small{font-size:11px;color:#71839a;line-height:1.4}
.cash1752-count-label{display:flex;flex-direction:column;gap:9px}
.cash1752-count-label input{width:100%;min-height:48px;font-size:18px;font-weight:700}
.cash1752-diff{margin:16px 0;border:1px solid #dbe5f1;background:#f6f8fc;color:#526b89;padding:13px 15px;border-radius:11px;font-size:13px}
.cash1752-diff.ok{background:#e9f8ef;border-color:#cbead8;color:#146c45}
.cash1752-diff.warn{background:#fff4e4;border-color:#f1d6aa;color:#905b15}
.cash1752-warning{font-size:12px;color:#95521e;margin:8px 0 14px}
.cash1752-open button[type=submit]{width:100%;margin-top:4px}
.cash1752-open button[type=submit]:disabled{opacity:.55;cursor:not-allowed}
.cash1752-history{margin-top:16px}
@media(max-width:650px){.cash1752-open{padding:18px}.cash1752-open-grid{grid-template-columns:1fr}.cash1752-open-icon{display:none}}

/* v175.5 — ordem correta dos componentes do caixa aberto. Somente CSS. */
@media screen {
  #cash .cash034-layout {display:flex;flex-direction:column;gap:16px;align-items:stretch;}
  #cash .cash034-primary, #cash .cash034-aside {display:contents;}
  /* Essencial: elementos sem ordem explicita nao podem subir para o topo. */
  #cash .cash034-layout > .cash034-primary > *,
  #cash .cash034-layout > .cash034-aside > * {order:20;width:100%;min-width:0;}
  #cash .cash034-primary > .cash034-card:has(.cash034-metrics) {order:1;}
  #cash .cash034-primary > .cash034-totals {order:2;}
  #cash .cash034-aside > .cash034-card:has(.cash034-action) {order:3;}
  #cash .cash034-aside > .cash034-card:has(#cash034-close) {order:4;}
  #cash .cash034-primary > .cash034-card:has(.cash034-tablehead) {order:5;}
  #cash .cash034-primary > #gg171-cancelamentos {order:6;}
  /* Acoes: cinco botoes lado a lado em desktop */
  #cash .cash034-aside > .cash034-card:has(.cash034-action) {
    display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:stretch;
  }
  #cash .cash034-aside > .cash034-card:has(.cash034-action) > h2 {grid-column:1/-1;margin:0 0 3px;}
  #cash .cash034-aside > .cash034-card:has(.cash034-action) .cash034-action {min-width:0;min-height:76px;margin:0;padding:11px 9px;gap:8px;}
  #cash .cash034-aside > .cash034-card:has(.cash034-action) .cash034-action .sym {width:30px;height:30px;flex:0 0 30px;font-size:17px;}
  #cash .cash034-aside > .cash034-card:has(.cash034-action) .cash034-action span:last-child {min-width:0;}
  #cash .cash034-aside > .cash034-card:has(.cash034-action) .cash034-action strong {font-size:12px;line-height:1.25;}
  #cash .cash034-aside > .cash034-card:has(.cash034-action) .cash034-action small {font-size:10px;line-height:1.3;}
  /* Fechamento imediatamente depois das acoes */
  #cash .cash034-aside > .cash034-card:has(#cash034-close) > .cash034-note {margin-bottom:14px;}
  #cash #cash034-close {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start;}
  #cash #cash034-close > * {min-width:0;}
  #cash #cash034-close > .cash035-reconcile {grid-column:2/-1;grid-row:1/span 2;margin:0;}
  #cash #cash034-close > #cash034-difference {grid-column:1;}
  #cash #cash034-close > #cash035-retirada {grid-column:1/-1;}
  #cash #cash034-close > label:has(textarea) {grid-column:1/-1;}
  #cash #cash034-close > button[type=submit] {grid-column:1/-1;justify-self:end;width:min(100%,340px);}
  #cash .cash034-primary > .cash034-card:has(.cash034-metrics) .cash034-metrics {grid-template-columns:repeat(3,minmax(0,1fr));}
  #cash .cash034-totals {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media screen and (max-width:1050px) {
  #cash .cash034-aside > .cash034-card:has(.cash034-action) {grid-template-columns:repeat(3,minmax(0,1fr));}
  #cash #cash034-close {grid-template-columns:repeat(2,minmax(0,1fr));}
  #cash #cash034-close > .cash035-reconcile {grid-column:1/-1;grid-row:auto;}
  #cash #cash034-close > #cash034-difference {grid-column:auto;}
}
@media screen and (max-width:700px) {
  #cash .cash034-aside > .cash034-card:has(.cash034-action) {grid-template-columns:repeat(2,minmax(0,1fr));}
  #cash #cash034-close {grid-template-columns:1fr;}
  #cash #cash034-close > .cash035-reconcile,
  #cash #cash034-close > #cash034-difference,
  #cash #cash034-close > #cash035-retirada,
  #cash #cash034-close > label:has(textarea),
  #cash #cash034-close > button[type=submit] {grid-column:1;grid-row:auto;}
  #cash .cash034-primary > .cash034-card:has(.cash034-metrics) .cash034-metrics {grid-template-columns:repeat(2,minmax(0,1fr));}
  #cash .cash034-totals {grid-template-columns:1fr;}
}
@media screen and (max-width:420px) {
  #cash .cash034-aside > .cash034-card:has(.cash034-action) {grid-template-columns:1fr;}
}

/* v175.6 — Fechamento premium e calculadora de numerário. */
@media screen {
 #cash .cash1756-closing{padding:24px 26px}
 #cash .cash1756-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}
 #cash .cash1756-kicker{font-size:11px;font-weight:800;letter-spacing:.1em;color:#2563eb}
 #cash .cash1756-heading h2{font-size:21px;margin:4px 0}
 #cash .cash1756-heading p{font-size:13px;color:#657895;margin:0}
 #cash .cash1756-heading-icon{font-size:25px;color:#1b5aab;background:#edf4ff;padding:12px;border-radius:12px}
 #cash .cash1756-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px;background:#112e56;border-radius:14px;padding:17px 20px;color:#fff}
 #cash .cash1756-highlights>div{display:flex;flex-direction:column;gap:7px}
 #cash .cash1756-highlights span{font-size:12px;color:#d5e4f7}
 #cash .cash1756-highlights strong{font-size:clamp(19px,2.3vw,27px);color:white}
 #cash #cash034-close.cash1756-form{display:grid;grid-template-columns:1fr;gap:13px;margin-top:15px}
 #cash #cash034-close.cash1756-form>.cash1756-section{grid-column:1;grid-row:auto;margin:0;min-width:0;padding:17px 18px;border:1px solid #e1e8f3;border-radius:13px;background:#fff}
 #cash .cash1756-section h3{font-size:15px;color:#18385e;margin:0 0 15px;display:flex;align-items:center;gap:9px}
 #cash .cash1756-section h3 span{font-size:11px;background:#e8f1ff;color:#1457bd;border-radius:8px;padding:6px 8px}
 #cash .cash1756-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 #cash .cash1756-counted-field{display:flex;gap:8px;align-items:stretch}
 #cash .cash1756-counted-field input{min-width:0;flex:1;width:100%}
 #cash #cash1756-count-button{white-space:nowrap;font-size:12px;padding:8px 12px;min-height:43px}
 #cash .cash1756-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
 #cash .cash1756-results>.cash034-difference{margin:0;min-width:0;padding:12px}
 #cash .cash1756-receipts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
 #cash .cash1756-section.cash035-reconcile{background:#f7f9fd}
 #cash .cash1756-section.cash035-reconcile p{font-size:12px;line-height:1.5}
 #cash .cash1756-section .cash035-summary{margin-top:13px}
 #cash .cash1756-final textarea{width:100%;resize:vertical}
 #cash .cash1756-submit{display:flex;justify-content:flex-end;margin-top:14px}
 #cash #cash034-close.cash1756-form .cash1756-submit>button{width:min(100%,330px);margin:0}
}
.cash1756-counter-backdrop{position:fixed;inset:0;z-index:3000;background:rgba(10,25,47,.62);display:flex;align-items:center;justify-content:center;padding:16px}
.cash1756-counter{background:#fff;color:#18314e;width:min(100%,830px);max-height:92vh;overflow:auto;border-radius:19px;padding:22px;box-shadow:0 24px 70px #0004}
.cash1756-counter-head{display:flex;justify-content:space-between;align-items:start;gap:15px;margin-bottom:18px}
.cash1756-counter-head h2{font-size:22px;margin:0 0 5px}
.cash1756-counter-head p{margin:0;font-size:13px;color:#687c95}
.cash1756-x{font-size:24px!important;line-height:1!important;background:#f0f4fa!important;color:#173456!important;border:0!important;border-radius:9px!important;width:36px;height:36px;padding:0!important}
.cash1756-counter-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
.cash1756-denom-card{border:1px solid #dfe7f2;border-radius:13px;padding:14px;min-width:0}
.cash1756-denom-card h3{font-size:17px;margin:0 0 13px;color:#17385f}
.cash1756-denom-head,.cash1756-denom-row{display:grid;grid-template-columns:minmax(80px,1fr) 65px minmax(92px,1fr);gap:7px;align-items:center}
.cash1756-denom-head{color:#75869d;font-size:12px;border-bottom:1px solid #e8edf5;padding-bottom:8px}
.cash1756-denom-head span:last-child{text-align:right}
.cash1756-denom-row{padding:5px 0;border-bottom:1px solid #f0f3f8}
.cash1756-denom-row strong{font-size:14px;white-space:nowrap}
.cash1756-denom-row input{box-sizing:border-box;width:65px!important;height:35px!important;min-height:35px!important;border:1px solid #cbd8e9;border-radius:8px;text-align:center;font-size:16px!important;font-weight:700;padding:3px!important}
.cash1756-denom-row output{text-align:right;font-size:14px;font-weight:700;white-space:nowrap}
.cash1756-denom-subtotal{background:#f0f5fb;border-radius:9px;margin-top:12px;padding:11px;display:flex;justify-content:space-between;gap:8px;align-items:center}
.cash1756-denom-subtotal span{font-size:12px;color:#657b94}
.cash1756-denom-subtotal strong{font-size:17px;white-space:nowrap}
.cash1756-counter-total{background:#112e56;color:#fff;border-radius:13px;margin-top:14px;padding:15px 20px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.cash1756-counter-total span{font-size:12px;color:#d5e4f7;font-weight:700}
.cash1756-counter-total strong{font-size:28px;color:#fff;white-space:nowrap}
.cash1756-counter-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}
.cash1756-counter-actions button{min-height:42px;padding:10px 16px}
@media(max-width:980px){#cash .cash1756-receipts{grid-template-columns:repeat(2,minmax(0,1fr))}#cash .cash1756-two{grid-template-columns:1fr}}
@media(max-width:650px){.cash1756-counter{padding:15px}.cash1756-counter-columns{grid-template-columns:1fr}.cash1756-denom-card{padding:12px}#cash .cash1756-highlights,#cash .cash1756-results{grid-template-columns:1fr}#cash .cash1756-receipts{grid-template-columns:1fr 1fr}#cash .cash1756-counted-field{flex-direction:column}#cash #cash1756-count-button{width:100%}.cash1756-counter-total strong{font-size:22px}}
@media print{.cash1756-counter-backdrop{display:none!important}}

/* v175.7 — acabamento e hierarquia dos indicadores */
@media screen and (min-width:1050px){
 #cash .cash034-primary>.cash034-card:has(.cash034-cashhead) .cash034-metrics{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
 #cash .cash034-primary>.cash034-card:has(.cash034-metrics):not(:has(.cash034-cashhead)) .cash034-metrics{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
 #cash .cash1756-receipts{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
#cash .cash034-metric{position:relative;overflow:hidden;border:1px solid #e2eaf5;border-radius:13px!important;background:linear-gradient(155deg,#fff 20%,#f1f6ff 100%)!important;box-shadow:0 5px 16px #1a3e6e0b;min-width:0;transition:transform .2s,box-shadow .2s}
#cash .cash034-metric:before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:#316dc1}
#cash .cash034-metric:nth-child(4n+2):before{background:#239b72}
#cash .cash034-metric:nth-child(4n+3):before{background:#d69a30}
#cash .cash034-metric:nth-child(4n+4):before{background:#8b70cb}
#cash .cash034-metric:hover{transform:translateY(-2px);box-shadow:0 9px 22px #1a3e6e19}
#cash .cash1756-receipts input[readonly]{background:#eef3fa!important;border-color:#dce5f1!important;color:#17385f!important;cursor:default;font-weight:700}
#cash #cash034-counted[readonly]{background:#eef3fa!important;color:#17385f!important;cursor:default;font-weight:700}
#cash [data-cash1757-sale]{cursor:pointer}
#cash [data-cash1757-sale]:hover{background:#edf4ff}
@media(max-width:1049px) and (min-width:650px){#cash .cash1756-receipts{grid-template-columns:repeat(2,minmax(0,1fr))}}
