:root{--bg:#050505;--card:#141414;--text:#fff;--muted:#aeb6c2;--orange:#ff6a00;--line:#2b2b2b;--ok:#19b75b;--warn:#ffc247;--bad:#ff5555}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Outfit,Arial,sans-serif}.hero{max-width:1120px;margin:auto;padding:48px 20px 24px;text-align:center}.tag{display:inline-block;color:var(--orange);border:1px solid rgba(255,106,0,.45);padding:6px 14px;border-radius:999px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.hero h1{font-size:clamp(30px,5vw,56px);margin:18px 0 10px}.hero p{color:var(--muted);font-size:1.1rem;max-width:900px;margin:auto}.wrap{max-width:1120px;margin:auto;padding:20px}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px;margin:18px 0;box-shadow:0 20px 60px rgba(0,0,0,.25)}h2{margin:0 0 16px}.muted{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}label{display:flex;flex-direction:column;gap:8px;font-weight:700}input,select{width:100%;background:#090909;border:1px solid #333;color:#fff;border-radius:10px;padding:12px;font:inherit}button{background:var(--orange);color:#fff;border:0;border-radius:10px;padding:12px 18px;font-weight:900;cursor:pointer}button.secondary{background:#333}.add-row{display:grid;grid-template-columns:1fr 90px auto;gap:10px;align-items:end}.manual .add-row{grid-template-columns:1fr 160px 90px auto}.table-wrap{overflow:auto;margin-top:18px}table{width:100%;border-collapse:collapse}th,td{border-bottom:1px solid #2b2b2b;padding:10px;text-align:left}th{color:#ffb56f}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.kpis div{border:1px solid #333;border-radius:14px;padding:18px;background:#0a0a0a}.kpis span{color:var(--muted);display:block;font-size:.9rem}.kpis strong{font-size:1.25rem}.recommend{display:grid;gap:12px;margin-top:20px}.rec{border-left:6px solid var(--orange);background:#0a0a0a;border-radius:10px;padding:14px}.rec.ok{border-color:var(--ok)}.rec.warn{border-color:var(--warn)}.rec.bad{border-color:var(--bad)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.msg{margin-top:12px;color:var(--muted)}@media(max-width:760px){.grid,.kpis{grid-template-columns:1fr}.add-row,.manual .add-row{grid-template-columns:1fr}body{font-size:15px}}@media print{body{background:#fff;color:#000}.hero,.card{background:#fff;color:#000;box-shadow:none}.actions,.add-row,.manual{display:none}.muted{color:#333}input,select{border:0;color:#000}.card{break-inside:avoid}.rec{background:#fff}}.hidden{display:none!important}.span2{grid-column:1/-1}.vap-block{display:grid;grid-template-columns:1fr 1fr;gap:16px;border:1px dashed #3a3a3a;border-radius:14px;padding:14px;background:#0b0b0b}.vap-block p{grid-column:1/-1;margin:0}.print-photos{margin-top:22px}.photo-print-grid{display:grid;grid-template-columns:1fr;gap:18px}.photo-print-card{border:1px solid #333;border-radius:14px;overflow:hidden;background:#0a0a0a;margin:0}.photo-print-card img{display:block;width:100%;max-height:720px;object-fit:contain;background:#fff}.photo-print-card embed{display:block;width:100%;height:520px;background:#fff}.photo-print-card figcaption{padding:12px 14px;font-weight:800;color:#fff;background:#111}.pdf-card{border-color:#ffb56f}
@media print{body{background:#fff!important;color:#000!important}.hero{display:block!important;padding:10px 20px!important}.hero p,.tag{display:none!important}.wrap{padding:0!important}.card:not(.result){display:none!important}.result{display:block!important;border:0!important;padding:18px!important;margin:0!important}.result *{color:#000!important}.result .actions,.result #saveMsg{display:none!important}.kpis{grid-template-columns:repeat(2,1fr)!important}.kpis div,.rec,.photo-print-card{border:1px solid #222!important;background:#fff!important;color:#000!important}.rec{break-inside:avoid}.photo-print-card{break-inside:avoid;page-break-inside:avoid;margin:0 0 18px 0!important}.photo-print-card img{max-height:820px!important;width:100%!important;object-fit:contain!important}.photo-print-card embed{height:780px!important}.photo-print-card figcaption{background:#fff!important;color:#000!important;border-top:1px solid #222!important}.photo-print-grid{grid-template-columns:1fr!important;gap:24px!important}}
@media(max-width:760px){.vap-block{grid-template-columns:1fr}}

/* v4 ajustes calculadora */
.add-row.artefacto-add{grid-template-columns:1fr 170px auto;align-items:end}
.search-label,.qty-label{margin:0}.qty-label input{text-align:center;font-weight:800}
.manual-add{grid-template-columns:1fr 150px 170px auto!important;align-items:end}
.conn-status{margin-top:12px;padding:10px 12px;border-radius:10px;font-weight:700;font-size:.92rem;border:1px solid #333;background:#0a0a0a;color:#b8c7d9}.conn-status.ok{border-color:rgba(25,183,91,.45);color:#23d36b}.conn-status.bad{border-color:rgba(255,85,85,.55);color:#ff7474}
#pdfBtn{background:#2e7dff}
@media(max-width:760px){.add-row.artefacto-add,.manual-add{grid-template-columns:1fr!important}}
@media print{.conn-status{display:none!important}}
/* v5 adjuntos dinámicos */
.attachments-list{display:grid;gap:14px;margin:14px 0}.attachment-row{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;border:1px solid #2b2b2b;border-radius:14px;padding:14px;background:#0a0a0a}.file-help{grid-column:1/-1;color:var(--muted);font-size:.9rem}.pdf-placeholder{min-height:220px;display:flex;flex-direction:column;justify-content:center}.pdf-placeholder div{font-size:4rem;font-weight:900;color:#ffb56f;text-align:center;padding:45px 0;background:#111}.photo-print-card.pdf-card img{background:#fff;max-height:720px;object-fit:contain}@media(max-width:760px){.attachment-row{grid-template-columns:1fr}}
@media print{.attachments-list,#addAttachment{display:none!important}.pdf-placeholder div{color:#000!important;background:#fff!important}}
.info-box{border:1px solid #333;border-radius:14px;background:#0a0a0a;padding:14px;color:#dfe7ef}.info-box b{color:#ffb56f}.info-box p{margin:.4rem 0 0;color:#c9d3df;line-height:1.45}

/* v14 ajustes de flujo y semáforo */
#tankSection{transition:background .25s,border-color .25s,color .25s}
#tankSection.tank-ok{background:rgba(25,183,91,.14);border-color:rgba(25,183,91,.85)}
#tankSection.tank-warn{background:rgba(255,194,71,.16);border-color:rgba(255,194,71,.9)}
#tankSection.tank-bad{background:rgba(255,85,85,.16);border-color:rgba(255,85,85,.9)}
#tankSection.tank-ok input,#tankSection.tank-ok select,#tankSection.tank-warn input,#tankSection.tank-warn select,#tankSection.tank-bad input,#tankSection.tank-bad select{background:#070707;color:#fff;border-color:#555}
.mini-input{max-width:90px;text-align:center;font-weight:900;padding:8px}
.kcal-input{max-width:135px;text-align:right;font-weight:900;padding:8px}
#tabla td input{margin:0}

/* v16 contraste visual en pantalla */
.card h2{color:var(--orange)}
.card label{color:#ffb56f}.card label small,.card label .muted{color:var(--muted);font-weight:600}.legal-note{color:var(--muted);font-size:.92rem;max-width:900px;margin:12px auto 0}.number-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.number-grid button{background:#090909;border:1px solid #333;color:#fff;padding:10px;border-radius:10px}.number-grid button.active{background:var(--orange);border-color:var(--orange);color:#fff}.native-select-fallback{display:none}.reg-note{color:var(--muted);font-size:.9rem;margin-top:6px}
.result h2{color:var(--orange)}
.rec b{color:#ffb56f}
.info-box b{color:#ffb56f}
#tankSection.tank-ok h2,#tankSection.tank-warn h2,#tankSection.tank-bad h2{color:#ffb56f}
#tankSection.tank-ok label,#tankSection.tank-warn label,#tankSection.tank-bad label{color:#ffb56f}#tankSection.tank-ok label small,#tankSection.tank-warn label small,#tankSection.tank-bad label small{color:#d7dde7}
#tankSection.tank-warn{background:rgba(255,194,71,.22); color:#fff}
#tankSection.tank-bad{background:rgba(255,85,85,.22); color:#fff}
#tankSection.tank-ok{background:rgba(25,183,91,.18); color:#fff}

/* v18 ajustes UI */
.card label{color:#ffb56f}.card label small,.muted,.legal-note{color:#b9c1cc!important}.dropdown-grid{display:none;position:absolute;z-index:50;background:#080808;border:1px solid #444;border-radius:12px;padding:10px;box-shadow:0 12px 30px rgba(0,0,0,.55);max-width:360px}.dropdown-grid.open{display:grid}.number-picker-input{font-weight:900}.custom-gas{display:grid;grid-template-columns:1fr 1fr;gap:16px;border:1px dashed #3a3a3a;border-radius:14px;padding:14px;background:#0b0b0b}.custom-gas small{grid-column:1/-1;color:#b9c1cc}.actions #whatsappBtn{background:#25d366;color:#061b0d}@media(max-width:760px){.custom-gas{grid-template-columns:1fr}.dropdown-grid{left:20px;right:20px;max-width:none}}

/* v19 dropdowns debajo del campo */
.grid label{position:relative}
.dropdown-grid{top:auto}

/* v20 ajustes PDF/UI */
.footer-note{color:#b9c1cc;font-size:.86rem;padding:0 20px 32px;margin:auto;max-width:1120px}.footer-note p{border-top:1px solid #222;padding-top:12px}.table-wrap td:nth-child(5){white-space:nowrap}.dropdown-grid{min-width:252px}
