:root{--tinta: #161b22;--tinta2: #232a35;--oro: #9a7b4a;--oro-claro: #c2a26d;--papel: #f5f4ef;--blanco: #ffffff;--linea: #e3dfd6;--suave: #7a756a;--rojo: #a6292e;--ok: #1f7a4d;--sombra: 0 2px 14px rgba(22, 27, 34, .07)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;background:var(--papel);color:var(--tinta);font-size:16px;padding-bottom:130px}.top{background:var(--tinta);color:var(--blanco);padding:calc(14px + env(safe-area-inset-top)) 18px 14px}.top .marca{font-size:21px;font-weight:700;letter-spacing:.34em;color:var(--blanco)}.top .marca span{color:var(--oro-claro)}.top .sub{margin-top:3px;font-size:11.5px;color:#b8b3a8;letter-spacing:.06em;display:flex;justify-content:space-between;gap:8px}.top .numero{color:var(--oro-claro);font-weight:600;white-space:nowrap}main{padding:14px 12px 0;max-width:640px;margin:0 auto}.panel{background:var(--blanco);border:1px solid var(--linea);border-radius:12px;box-shadow:var(--sombra);padding:14px;margin-bottom:12px}.panel h2{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--oro);margin-bottom:10px}.campo{margin-bottom:10px}.campo label{display:block;font-size:12.5px;color:var(--suave);margin-bottom:4px}input,textarea,select{width:100%;font:inherit;font-size:16px;color:var(--tinta);background:var(--blanco);border:1px solid var(--linea);border-radius:9px;padding:11px 12px;outline:none}input:focus,textarea:focus{border-color:var(--oro)}textarea{resize:vertical;min-height:64px}.fila2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.linea{border:1px solid var(--linea);border-radius:10px;padding:10px;margin-bottom:10px;background:#fcfbf9}.linea .cab{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.tag{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border-radius:99px;border:1px solid var(--oro);color:var(--oro);background:#faf6ef}.tag.fijo{border-color:var(--tinta2);color:var(--tinta2);background:#f1f1ee}.btn-borrar{border:none;background:none;color:var(--suave);font-size:20px;line-height:1;padding:4px 8px}.linea .nums{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;margin-top:8px}.linea .nums .por{text-align:center;color:var(--suave);font-size:13px;white-space:nowrap}.linea .importe{margin-top:8px;text-align:right;font-weight:600;font-size:15px}.botones-linea{display:grid;grid-template-columns:1fr 1fr;gap:10px}.btn-add{font:inherit;font-size:14.5px;font-weight:600;padding:12px;border-radius:10px;border:1.5px dashed var(--oro);color:var(--oro);background:none}.btn-add.fijo{border-color:var(--tinta2);color:var(--tinta2)}.totales{font-size:15px}.totales .fila{display:flex;justify-content:space-between;padding:5px 0;color:var(--suave)}.totales .fila b{color:var(--tinta);font-weight:600}.totales .fila.gran{border-top:2px solid var(--oro);margin-top:6px;padding-top:10px;color:var(--tinta);font-size:18px;font-weight:700}.barra{position:fixed;left:0;right:0;bottom:0;background:var(--blanco);border-top:1px solid var(--linea);box-shadow:0 -4px 18px #161b2214;padding:10px 12px calc(10px + env(safe-area-inset-bottom))}.barra .resumen{display:flex;justify-content:space-between;align-items:baseline;max-width:640px;margin:0 auto 8px}.barra .resumen .lbl{font-size:12px;color:var(--suave);letter-spacing:.08em;text-transform:uppercase}.barra .resumen .val{font-size:20px;font-weight:700}.barra .acciones{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px;max-width:640px;margin:0 auto}.btn{font:inherit;font-size:15px;font-weight:700;padding:13px 8px;border-radius:10px;border:none}.btn-primario{background:var(--tinta);color:var(--oro-claro);letter-spacing:.04em}.btn-primario:active{background:var(--tinta2)}.btn-sec{background:var(--papel);color:var(--tinta);border:1px solid var(--linea);font-weight:600}.toast{position:fixed;left:50%;bottom:150px;transform:translate(-50%);background:var(--tinta);color:var(--blanco);font-size:14px;padding:11px 18px;border-radius:99px;box-shadow:var(--sombra);opacity:0;pointer-events:none;transition:opacity .25s;max-width:90vw;text-align:center;z-index:50}.toast.error{background:var(--rojo)}.toast.visible{opacity:1}
