/* Planificador de despedida */
.dp-form { display: grid; gap: var(--space-3); }
.dp-bloque > p { text-align: center; font-weight: 700; color: var(--tiza); margin-bottom: 10px !important; }
.dp-slider { max-width: 520px; margin: 0 auto; text-align: center; }
.dp-slider output { display: block; font: 700 2rem var(--font-mono); color: var(--tiza); margin-bottom: 4px; }
.dp-plan { margin-top: var(--space-4); }
.dp-dia { margin-bottom: var(--space-3); }
.dp-dia__t { font-family: var(--font-mono); font-size: .75rem; letter-spacing: .2em; text-transform: uppercase; color: var(--luz); margin-bottom: 10px !important; }
.dp-linea { position: relative; display: grid; gap: 12px; padding-left: 26px; }
.dp-linea::before { content: ''; position: absolute; left: 8px; top: 6px; bottom: 6px; width: 2px; background: linear-gradient(var(--luz), var(--rojo-vivo)); border-radius: 2px; }
.dp-item { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 6px 14px; align-items: center; padding: 14px 16px; border-radius: 14px; background: var(--surface); border: 1px solid var(--line-soft); }
.dp-item::before { content: ''; position: absolute; left: -24px; top: 20px; width: 12px; height: 12px; border-radius: 50%; background: var(--bg); border: 2px solid var(--luz); }
.dp-item.is-escape { border-color: rgba(255,46,59,.5); background: linear-gradient(140deg, rgba(210,31,43,.18), var(--surface)); }
.dp-item__m { grid-column: 1 / -1; font-family: var(--font-mono); font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
.dp-item__t { color: var(--tiza); font-weight: 700; }
.dp-item__d { grid-column: 1 / 2; color: var(--tiza-2); font-size: .92rem; }
.dp-coste { display: flex; align-items: center; gap: 6px; font-family: var(--font-mono); color: var(--tiza-2); font-size: .85rem; }
.dp-coste input { width: 84px; min-height: 42px !important; text-align: right; }
.dp-item .dp-cambiar { grid-column: 1 / -1; justify-self: start; }
.dp-total { margin-top: var(--space-3); padding: 20px; border-radius: 16px; text-align: center; background: linear-gradient(160deg, rgba(210,31,43,.2), rgba(11,11,13,.6) 60%); border: 1px solid rgba(255,46,59,.35); }
.dp-total__n { font: 800 clamp(2.4rem, 1.6rem + 4vw, 3.6rem) var(--font-body); color: var(--tiza); line-height: 1; }
.dp-barra { height: 10px; border-radius: 10px; background: var(--line); overflow: hidden; max-width: 460px; margin: 14px auto 6px; }
.dp-barra i { display: block; height: 100%; width: 0; background: linear-gradient(90deg, #4ade80, var(--luz)); transition: width .5s var(--ease-out), background .3s ease; }
.dp-barra.is-pasa i { background: linear-gradient(90deg, var(--luz), var(--rojo-vivo)); }
.dp-msg { width: 100%; min-height: 150px; margin-top: 12px; padding: 14px; border-radius: 12px; border: 1px solid var(--line); background: var(--bg); color: var(--tiza-2); font: .9rem/1.5 var(--font-mono); resize: vertical; }
