/* Obra 360 · weekly payment desk. Dense enough for site work, calm enough for cash decisions. */
.op-summary,.op-board,.op-panel{--op-ink:var(--ink,#172b3a);--op-muted:var(--muted,#6f8190);--op-line:var(--line,#e4ded7);--op-paper:var(--paper,#fff);--op-wash:#f7f4ef;--op-accent:var(--acid,#f56322);box-sizing:border-box;color:var(--op-ink)}
.op-summary{margin:14px 0 18px;border:1px solid var(--op-line);border-left:4px solid var(--op-accent);border-radius:12px;background:var(--op-paper);overflow:hidden}
.op-summary>header,.op-heading,.op-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.op-summary>header{padding:16px 18px 10px}.op-summary p,.op-heading p,.op-panel header p{margin:0;color:var(--op-accent);font-size:10px;font-weight:800;letter-spacing:.14em}
.op-summary h2,.op-heading h2,.op-panel h3{margin:4px 0 0;color:var(--op-ink);line-height:1.2}.op-summary h2{font-size:20px}.op-heading h2{font-size:24px}.op-panel h3{font-size:17px}
.op-summary-main{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(300px,1.2fr);align-items:center;gap:18px;padding:8px 18px 16px}
.op-summary-main>article span,.op-kpis span,.op-labor-totals span{display:block;color:var(--op-muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.op-summary-main>article>b{display:block;margin:4px 0 2px;font-size:29px;font-variant-numeric:tabular-nums}.op-summary-main small{color:var(--op-muted);font-size:11px}
.op-split{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--op-line);border-radius:9px;overflow:hidden}.op-split>span{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;padding:12px 14px;color:var(--op-muted);font-size:12px}.op-split>span+span{border-left:1px solid var(--op-line)}.op-split i{grid-row:1/3;width:6px;border-radius:6px;background:#365f76}.op-split i.labor{background:var(--op-accent)}.op-split b{display:block;color:var(--op-ink);font-size:17px;font-variant-numeric:tabular-nums}
.op-summary-strip{display:grid;grid-template-columns:repeat(3,1fr);background:var(--op-wash);border-top:1px solid var(--op-line);border-bottom:1px solid var(--op-line)}.op-summary-strip>span{padding:10px 18px;color:var(--op-muted);font-size:11px}.op-summary-strip>span+span{border-left:1px solid var(--op-line)}.op-summary-strip b{display:block;margin-top:2px;color:var(--op-ink);font-size:14px}.op-summary-strip .warning{box-shadow:inset 0 2px #d88a26}
.op-summary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding:7px 18px 12px;list-style:none}.op-summary-list li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid color-mix(in srgb,var(--op-line) 65%,transparent)}.op-summary-list li:nth-child(odd){padding-right:16px}.op-summary-list li:nth-child(even){padding-left:16px;border-left:1px solid var(--op-line)}.op-summary-list b,.op-summary-list small{display:block}.op-summary-list b{font-size:12px}.op-summary-list small{margin-top:2px;color:var(--op-muted);font-size:10px}.op-summary-list strong{font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}
.op-empty{margin:0;padding:18px;color:var(--op-muted);font-size:12px}
.op-tabs{display:flex;gap:0;margin:0 0 14px;border-bottom:1px solid var(--op-line,var(--line,#ddd))}.op-tabs button{min-width:120px;padding:11px 15px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);font-weight:700}.op-tabs button[aria-selected="true"]{border-bottom-color:var(--acid,#f56322);color:var(--ink)}
.op-board{padding:18px;border:1px solid var(--op-line);border-radius:12px;background:var(--op-paper)}.op-heading{margin-bottom:14px}.op-heading>div>span{color:var(--op-muted);font-size:12px}.op-heading label{min-width:230px;color:var(--op-muted);font-size:11px;font-weight:700}.op-heading select{display:block;width:100%;margin-top:5px}
.op-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 16px;border:1px solid var(--op-line);border-radius:10px;overflow:hidden}.op-kpis article{min-width:0;padding:13px 14px}.op-kpis article+article{border-left:1px solid var(--op-line)}.op-kpis article.warning{box-shadow:inset 0 3px #d88a26}.op-kpis b{display:block;margin:5px 0 2px;font-size:19px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.op-kpis small{display:block;color:var(--op-muted);font-size:10px;line-height:1.35}
.op-grid{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(600px,1.8fr);gap:14px;align-items:start}.op-panel{border:1px solid var(--op-line);border-radius:10px;background:var(--op-paper);overflow:hidden}.op-panel>header{padding:14px 16px;background:var(--op-wash);border-bottom:1px solid var(--op-line)}.op-panel>header>strong{font-size:20px;font-variant-numeric:tabular-nums}.op-panel>header>div:last-child{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.op-list article{display:flex;justify-content:space-between;gap:12px;padding:11px 16px;border-bottom:1px solid var(--op-line)}.op-list span,.op-list b,.op-list small{display:block}.op-list b{font-size:12px}.op-list small{margin-top:3px;color:var(--op-muted);font-size:10px}.op-list strong{font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.op-alert{margin:10px;padding:9px 11px;border-left:3px solid #d88a26;background:#d88a2614;color:var(--op-ink);font-size:11px}
.op-status{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border:1px solid var(--op-line);border-radius:999px;background:var(--op-paper);color:var(--op-muted);font-size:10px;font-weight:800}.op-status.aprobada{border-color:#23865a55;color:#23865a;background:#23865a12}.op-status.pagada{border-color:#2f789655;color:#2f7896;background:#2f789612}
.op-labor-totals{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--op-line)}.op-labor-totals>span{padding:10px 14px}.op-labor-totals>span+span{border-left:1px solid var(--op-line)}.op-labor-totals b{display:block;margin-top:3px;color:var(--op-ink);font-size:15px;font-variant-numeric:tabular-nums}
.op-workers{display:grid}.op-worker{display:grid;grid-template-columns:minmax(145px,.58fr) minmax(440px,1.8fr) minmax(120px,.55fr);gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--op-line)}.op-worker-person b,.op-worker-person span,.op-worker-person small{display:block}.op-worker-person b{font-size:13px}.op-worker-person span,.op-worker-person small{margin-top:3px;color:var(--op-muted);font-size:10px}
.op-days{display:grid;grid-template-columns:repeat(6,minmax(48px,1fr));gap:5px}.op-days label{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:3px;padding:5px;border:1px solid var(--op-line);border-radius:6px;background:var(--op-wash)}.op-days span{grid-column:1/3;color:var(--op-muted);font-size:9px;font-weight:800;text-align:center}.op-days input{width:14px;height:14px;margin:0}.op-days select{min-width:0!important;width:100%;min-height:26px!important;height:26px;padding:1px 3px;font-size:11px}
.op-adjustments{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px}.op-adjustments label{display:grid;grid-template-columns:105px 1fr;gap:4px}.op-adjustments span{grid-column:1/3;color:var(--op-muted);font-size:9px;font-weight:700}.op-adjustments input{min-width:0;height:29px;padding:4px 6px;font-size:11px}.op-adjustments input[type="number"]{width:105px}
.op-worker-total{display:grid;gap:7px}.op-worker-total span{color:var(--op-muted);font-size:9px;text-transform:uppercase}.op-worker-total b{display:block;margin-top:2px;color:var(--op-ink);font-size:12px;font-variant-numeric:tabular-nums}
.op-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 14px;background:var(--op-wash)}.op-help{margin:0;padding:0 14px 12px;background:var(--op-wash);color:var(--op-muted);font-size:10px}
html[data-theme="dark"] .op-summary,html[data-theme="dark"] .op-board,html[data-theme="dark"] .op-panel{--op-wash:#1b252b;--op-paper:#202b31;--op-line:#3a464d;--op-ink:#f1f4f5;--op-muted:#a9b5bb}.op-board :is(input,select){background:color-mix(in srgb,var(--op-paper) 82%,#000);color:var(--op-ink);border-color:var(--op-line)}
@media(max-width:1250px){.op-grid{grid-template-columns:1fr}.op-kpis{grid-template-columns:repeat(2,1fr)}.op-kpis article:nth-child(3){border-left:0;border-top:1px solid var(--op-line)}.op-kpis article:nth-child(4){border-top:1px solid var(--op-line)}}
@media(max-width:760px){.op-summary>header,.op-heading{align-items:stretch;flex-direction:column}.op-heading label{min-width:0;width:100%}.op-summary-main{grid-template-columns:1fr}.op-summary-strip,.op-summary-list{grid-template-columns:1fr}.op-summary-strip>span+span,.op-summary-list li:nth-child(even){border-left:0}.op-summary-list li:nth-child(n){padding-left:0;padding-right:0}.op-kpis{grid-template-columns:1fr}.op-kpis article+article{border-left:0;border-top:1px solid var(--op-line)}.op-worker{grid-template-columns:1fr;padding:14px}.op-days{grid-template-columns:repeat(3,1fr)}.op-adjustments{grid-template-columns:1fr}.op-actions{flex-wrap:wrap}.op-actions button{flex:1 1 140px}.op-labor-totals{grid-template-columns:1fr}.op-labor-totals>span+span{border-left:0;border-top:1px solid var(--op-line)}}
@media(max-width:420px){.op-summary,.op-board{border-radius:8px}.op-summary-main,.op-summary>header{padding-left:13px;padding-right:13px}.op-split{grid-template-columns:1fr}.op-split>span+span{border-left:0;border-top:1px solid var(--op-line)}.op-board{padding:11px}.op-tabs button{min-width:0;flex:1}.op-days{grid-template-columns:repeat(2,1fr)}.op-adjustments label{grid-template-columns:88px 1fr}.op-adjustments input[type="number"]{width:88px}}
@media print{.op-summary button,.op-tabs,.op-heading select,.op-panel button,.op-actions{display:none!important}.op-summary,.op-board,.op-panel{break-inside:avoid;box-shadow:none}.op-grid{grid-template-columns:1fr}.op-worker{grid-template-columns:150px 1fr 120px}.op-board :is(input,select){border:0;background:transparent}.op-help{padding-top:8px}}
