/* ===== EuroTop Red · añadidos sobre css/styles.css y css/plantear-proyecto.css ===== */

.pp-stepper-6{grid-template-columns:repeat(6,1fr)}
.pp-stepper-6 li{font-size:12px}
.pp-stepper-6 li:not(:last-child)::after{left:calc(50% + 20px);width:calc(100% - 40px)}

.pp-needs-2{grid-template-columns:repeat(2,1fr)}
.pp-need-label small{display:block;margin-top:5px;font-size:12px;font-weight:400;color:var(--text-note);transition:color .25s ease}
.pp-need-box:hover .pp-need-label small,.pp-need input:checked+.pp-need-box .pp-need-label small{color:var(--text-body)}

.pp-lead{margin:-6px 0 18px;max-width:640px;font-size:14.5px;line-height:1.6;color:var(--text-note)}
.pp-row-spaced{margin-top:clamp(14px,2.4vh,22px)}

/* ---------- Desplegable de selección múltiple ---------- */
.ms{position:relative}
.ms-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1.5px solid var(--border);border-radius:10px;background:var(--navy-night);color:var(--text-main);font-size:15px;text-align:left;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
.ms-btn:hover{border-color:rgba(98,226,223,.55);background:#0E2742}
.ms-btn:focus-visible,.ms.is-open .ms-btn{outline:none;border-color:var(--turquoise);box-shadow:0 0 0 4px rgba(53,194,190,.2)}
.ms-text{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ms.has-value .ms-text{color:var(--text-main);font-weight:600}
.ms-chev{flex:0 0 14px;width:14px;height:14px;color:var(--turquoise-light);transition:transform .25s ease}
.ms.is-open .ms-chev{transform:rotate(180deg)}
.ms.is-invalid .ms-btn{border-color:#FF8A80;background:rgba(255,138,128,.07)}

.ms-panel{margin-top:6px;max-height:min(320px,48vh);overflow:auto;padding:8px;border:1px solid var(--turquoise);border-radius:12px;background:var(--card-bg);
  box-shadow:0 24px 50px rgba(2,10,22,.6);animation:ppIn .18s ease}
.ms-panel[hidden]{display:none}
.ms-group{border:0;padding:4px 0 6px;min-width:0}
.ms-group+.ms-group{border-top:1px solid var(--border);margin-top:4px;padding-top:8px}
.ms-group legend{padding:6px 10px 4px;font-size:11.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--turquoise-light)}
.ms-opt{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:8px;cursor:pointer;font-size:14.5px;color:var(--text-body);transition:background .15s ease,color .15s ease}
.ms-opt:hover{background:rgba(53,194,190,.14);color:#fff}
.ms-opt input{width:18px;height:18px;flex:0 0 18px;accent-color:var(--turquoise);cursor:pointer}
.ms-opt input:disabled{cursor:not-allowed}
.ms-opt:has(input:disabled){opacity:.45;cursor:not-allowed}
.ms-opt:has(input:checked){color:var(--text-main);font-weight:600}
.ms-all{margin-bottom:4px;border-bottom:1px solid var(--border);border-radius:8px 8px 0 0;font-weight:700;color:var(--text-main)}

.ms-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.ms-chips:empty{display:none}
.ms-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 6px 5px 12px;border-radius:999px;background:rgba(53,194,190,.14);border:1px solid rgba(98,226,223,.4);color:var(--turquoise-light);font-size:13px;font-weight:600;transition:background .2s ease,color .2s ease}
.ms-chip:hover{background:rgba(53,194,190,.25);color:#fff}
.ms-chip button{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;color:inherit;font-size:15px;line-height:1;transition:background .2s ease,color .2s ease}
.ms-chip button:hover{background:var(--turquoise);color:var(--turquoise-text)}

.pp-field select optgroup{background:var(--navy-night);color:var(--turquoise-light);font-style:normal}

@media (max-width:640px){
  .pp-stepper-6 li{font-size:11px}
  .pp-stepper-6 .pp-dot{width:28px;height:28px;font-size:12.5px}
  .pp-stepper-6 li:not(:last-child)::after{top:13px;left:calc(50% + 17px);width:calc(100% - 34px)}
  .pp-needs-2{grid-template-columns:1fr}
  .ms-panel{max-height:min(300px,50vh)}
}
