/* Anticipos de cliente (2026-10-15): bloque de la ficha del cliente y del pedido, aviso en
   Facturas y vencimientos y diálogo propio con el aspecto de los de Tesorería. */
.customer-advances{display:grid;gap:8px}
.customer-advances>header span{color:var(--blue-dark);font-size:11px;font-weight:900;letter-spacing:.1em}
.customer-advances>header h3{margin:2px 0 0}
.customer-advance,.customer-advance-proposal{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.customer-advance[data-tone="warn"]{border-left:4px solid var(--amber-strong)}
.customer-advance[data-tone="ok"]{border-left:4px solid var(--green)}
.customer-advance[data-tone="muted"]{opacity:.7}
.customer-advance small,.customer-advance-proposal small{display:block;color:var(--muted);overflow-wrap:anywhere}
.customer-advance>b{text-align:right;font-variant-numeric:tabular-nums}
.customer-advance>b small{font-weight:600}
.customer-advance-proposal small b{color:var(--amber)}
.customer-advance-proposals{display:grid;gap:8px;padding:10px 12px;border-radius:var(--radius);background:var(--amber-soft)}
.customer-advance-proposals>p,.customer-advance-hint{margin:0;font-size:13px}
.customer-advance-hint{color:var(--muted)}
.treasury-advance-chip{color:var(--amber)}
.customer-advance-warning{margin:6px 0 0;padding:6px 10px;border-left:3px solid var(--amber-strong);background:var(--amber-soft);color:var(--amber);font-size:13px;line-height:1.4}
.customer-advance-warning small{display:block;color:inherit}
.customer-advance-warning.late{border-left-color:var(--red);background:var(--red-soft);color:var(--red)}
.customer-advance-reversal{color:var(--red)!important}
#customer-advance-dialog{width:min(600px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;overflow:auto;border:1px solid var(--line-control);border-radius:6px;color:var(--text);background:var(--surface)}
#customer-advance-dialog::backdrop{background:var(--navy);opacity:.45}
#customer-advance-dialog .dialog-card{width:100%;max-width:none;box-sizing:border-box;padding:24px;display:grid;gap:12px}
#customer-advance-dialog h2{margin:0;font-size:20px}
#customer-advance-dialog p{margin:0;line-height:1.5}
#customer-advance-dialog .customer-advance-body{display:grid;gap:10px}
#customer-advance-dialog label{display:grid;gap:6px;font-size:13px;font-weight:700}
#customer-advance-dialog label>span{font-weight:500;color:var(--muted)}
#customer-advance-dialog input:not([type=radio]),#customer-advance-dialog select,#customer-advance-dialog textarea{font:inherit;min-height:44px;padding:8px 12px;border:1px solid var(--line-control);border-radius:4px;background:var(--surface);color:var(--text);box-sizing:border-box;width:100%}
#customer-advance-dialog fieldset{margin:0;padding:0;border:0;min-width:0}
#customer-advance-dialog legend{font-size:13px;font-weight:700;margin-bottom:6px}
#customer-advance-dialog .match-choice{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;margin:0 0 6px;border:1px solid var(--line);border-radius:8px;background:var(--soft);font-weight:500;cursor:pointer}
#customer-advance-dialog .match-choice input{width:22px;height:22px;flex-shrink:0;margin:2px 0 0}
#customer-advance-dialog .match-choice span{flex:1;min-width:0;overflow-wrap:anywhere}
#customer-advance-dialog [data-error]{color:var(--red);font-weight:700}
#customer-advance-dialog [data-error]:empty{display:none}
#customer-advance-dialog footer{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}
@media (max-width:640px){
  .customer-advance,.customer-advance-proposal{grid-template-columns:minmax(0,1fr) auto}
  .customer-advance .button,.customer-advance-proposal .button{grid-column:1/-1}
  #customer-advance-dialog .dialog-card{padding:16px}
  #customer-advance-dialog footer .button{flex:1}
}

/* Anticipos por hitos en el pedido (Carlos, 2026-10-19, 0168). */
.advance-schedule { border: 1px solid var(--line); padding: 10px 12px; margin: 10px 0 0; display: grid; gap: 8px; }
.advance-schedule legend { font-weight: 600; padding: 0 4px; }
.advance-schedule-row { display: grid; grid-template-columns: minmax(120px, 2fr) 70px 110px minmax(140px, 1.4fr) minmax(160px, 1.5fr) 140px 44px; gap: 8px; align-items: end; }
.advance-schedule-row .icon-button { min-height: 44px; min-width: 44px; font-size: 20px; }
.advance-schedule legend .hint { display: block; font-weight: 400; color: var(--muted); }
.advance-account-warning { margin: 0; color: var(--amber-strong); font-size: .86rem; }
#customer-advance-dialog [hidden] { display: none !important; }
#customer-advance-dialog.sales-order-advance-dialog { width: min(760px, calc(100vw - 24px)); }
#customer-advance-dialog .advance-schedule-row { grid-template-columns: 1fr 1fr 1fr; }
#customer-advance-dialog .advance-schedule-row label:first-child { grid-column: 1 / -1; }
#customer-advance-dialog .customer-advance-choices { display: flex; flex-wrap: wrap; gap: 8px; }
.sales-order-advances header { display: flex; flex-wrap: wrap; gap: 8px; align-items: baseline; }
.sales-order-advances .customer-advance { grid-template-columns: minmax(0, 1fr); }
.sales-order-advances .customer-advance-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.advance-final-lines { margin-top: 8px; }
.advance-final-lines ul { margin: 6px 0; padding-left: 18px; font-variant-numeric: tabular-nums; }
.advance-summary-line { font-size: .86rem; font-variant-numeric: tabular-nums; }
.advance-tag { font-size: .75rem; font-weight: 600; padding: 2px 6px; border: 1px solid currentColor; white-space: nowrap; }
.advance-tag[data-tone="warn"] { color: var(--amber-strong); }
.advance-tag[data-tone="ok"] { color: var(--green); }
@media (max-width: 720px) {
  .advance-schedule-row, #customer-advance-dialog .advance-schedule-row { grid-template-columns: 1fr 1fr; padding-bottom: 10px; border-bottom: 1px solid var(--line); }
  .advance-schedule-row label:first-child, .advance-schedule-row label:nth-child(4), .advance-schedule-row label:nth-child(5) { grid-column: 1 / -1; }
}
