/* Card */
#fp-efficiency-v3 .fp-card{ background:#fff; padding:20px; border-radius:10px; box-shadow:0 2px 8px rgba(0,0,0,.06); font-size:16px; line-height:1.45; }
#fp-efficiency-v3 h3, #fp-efficiency-v3 h4{ margin:10px 0; }

/* Top bar */
#fp-efficiency-v3 .fp-bar{ display:grid; grid-template-columns: 1fr 1fr auto; gap:10px; align-items:end; }
#fp-efficiency-v3 .fp-field{ display:flex; flex-direction:column; }
#fp-efficiency-v3 input[type="email"],#fp-efficiency-v3 input[type="number"],#fp-efficiency-v3 input[type="text"]{ border:1px solid #e2e2e2; border-radius:10px; padding:10px; width:100%; height:42px; color:#111; }
#fp-efficiency-v3 input::placeholder{ color:#9aa4b2; opacity:1; }
#fp-efficiency-v3 .fp-actions{ display:flex; gap:10px; flex-wrap:wrap; }
#fp-efficiency-v3 .button{ border-radius:10px; }
#fp-efficiency-v3 .button:hover,#fp-efficiency-v3 .button:focus{ background:#0057ff !important; border-color:#0057ff !important; color:#fff !important; box-shadow: 0 0 0 2px rgba(0,87,255,0.18); outline:none; }

/* Subtitles */
#fp-efficiency-v3 .fp-sub{ font-size:13px; color:#666; margin:2px 0 2px; line-height:1.35; }

/* Labels */
#fp-efficiency-v3 .fp-row label{ font-weight:700; margin-bottom:4px; color:#0b1220; padding:0; background:transparent; border:0; }

/* Input adorners */
#fp-efficiency-v3 .fp-input-wrap{ position:relative; }
#fp-efficiency-v3 .fp-input-wrap.has-prefix-dollar input{ padding-left:26px; }
#fp-efficiency-v3 .fp-input-wrap.has-prefix-dollar::before{ content:'$'; position:absolute; left:10px; top:50%; transform:translateY(-50%); font-weight:600; font-size:14px; color:#0b1220; opacity:.85; }
#fp-efficiency-v3 .fp-input-wrap.has-suffix-percent input{ padding-right:26px; }
#fp-efficiency-v3 .fp-input-wrap.has-suffix-percent::after{ content:'%'; position:absolute; right:10px; top:50%; transform:translateY(-50%); font-weight:600; font-size:14px; color:#0b1220; opacity:.85; }

/* Accordions */
#fp-efficiency-v3 .fp-acc{ border:1px solid #eee; border-radius:10px; padding:8px 12px; background:#fff; }
#fp-efficiency-v3 .fp-acc > summary{ cursor:pointer; font-weight:700; list-style:none; padding:8px 12px; background:#f6f8fb; border-radius:8px; border:1px solid #e9edf5; }
#fp-efficiency-v3 .fp-acc > summary:hover{ background:#eef3ff; }
#fp-efficiency-v3 .fp-acc > summary::-webkit-details-marker{ display:none; }
#fp-efficiency-v3 .fp-acc > summary::after{ content:'+'; float:right; font-weight:900; color:#0b1220; }
#fp-efficiency-v3 .fp-acc[open] > summary::after{ content:'−'; }
#fp-efficiency-v3 .fp-acc[open] > summary{ margin-bottom:8px; }

/* Sections & grids */
#fp-efficiency-v3 .fp-sect{ margin-top:16px; }
#fp-efficiency-v3 .fp-grid{ display:grid; grid-template-columns:repeat(1, 1fr); gap:10px; }
#fp-efficiency-v3 .fp-row{ display:flex; flex-direction:column; }

@media (min-width: 900px){
  #fp-efficiency-v3 .fp-grid{ grid-template-columns:repeat(3, 1fr); }
  #fp-efficiency-v3 .fp-grid .fp-row{ min-height:158px; }
  #fp-efficiency-v3 .fp-grid .fp-sub{ min-height:60px; }
  #fp-efficiency-v3 .fp-grid .fp-row.fp-long-sub .fp-sub{ min-height:96px; }
}

/* Truck list */
#fp-efficiency-v3 #fp-truck-list .fp-truck {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr 1fr auto;
  gap: 12px;
  border: 1px dashed #ddd;
  padding: 12px;
  border-radius: 10px;
  background: #fafafa;
  margin-bottom: 12px;
  align-items: end; /* aliniere jos */
}

#fp-efficiency-v3 #fp-truck-list .fp-truck .fp-row {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

#fp-efficiency-v3 #fp-truck-list .fp-truck .fp-row input {
  margin-top: 4px; /* spațiu mic sub label */
}

#fp-efficiency-v3 #fp-truck-list .fp-truck .fp-row:first-child input {
  margin-top: 45px; /* coborâm Truck Name ca să fie pe linie cu celelalte */
}

#fp-efficiency-v3 .fp-truck .button {
  justify-self: start;
  height: 42px;
  align-self: end;
}


/* Results */
#fp-efficiency-v3 #fp-results{ display:grid; grid-template-columns: repeat(1, minmax(0, 1fr)); gap:10px; }
#fp-efficiency-v3 .fp-res{ border:1px solid #eee; border-radius:10px; padding:12px; background:#fff; }
#fp-efficiency-v3 .fp-res-title{ font-weight:700; margin-bottom:8px; }
#fp-efficiency-v3 .fp-res-row{ display:flex; justify-content:space-between; padding:6px 0; border-top:1px dashed #f0f0f0; }
#fp-efficiency-v3 .fp-res-row:first-of-type{ border-top:none; }
#fp-efficiency-v3 .gain-pos{ color:#0a8f20; font-weight:700; }
#fp-efficiency-v3 .gain-neg{ color:#c52a2a; font-weight:700; }

#fp-efficiency-v3 .fp-hint{ color:#666; display:block; margin-top:6px; }

/* Mobile */
@media (max-width: 640px){
  #fp-efficiency-v3 .fp-bar{ grid-template-columns: 1fr; }
  #fp-efficiency-v3 .fp-actions{ display:grid; grid-template-columns: 1fr; }
  #fp-efficiency-v3 #fp-truck-list .fp-truck{ display:grid; grid-template-columns: 1.2fr 1fr 1fr 1fr auto; gap:10px; border:1px dashed #ddd; padding:12px; border-radius:10px; background:#fafafa; margin-bottom:12px; align-items:end; }
}

#fp-efficiency-v3 #fp-truck-list .fp-truck .fp-row{ min-height: 110px; }
#fp-efficiency-v3 #fp-truck-list .fp-truck .fp-sub{ min-height: 40px; }
#fp-efficiency-v3 #fp-truck-list .fp-truck .button{ height:42px; align-self:end; }
@media (max-width: 900px){
  #fp-efficiency-v3 #fp-truck-list .fp-truck{ grid-template-columns: 1fr; }
}
