.planner-layout{
  display:grid;
  grid-template-columns:390px minmax(0,1fr);
  gap:16px;
  align-items:start;
}
.planner-panel{overflow:hidden}
.planner-body{padding:15px}
.form-section{
  margin-bottom:16px;
  padding-bottom:14px;
  border-bottom:1px solid #1e3a55;
}
.form-section:last-child{border-bottom:0;margin-bottom:0}
.section-label{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#a8bfd4;
  font-weight:800;
  margin-bottom:11px;
}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.field{margin-bottom:10px}
.field label{
  display:block;
  font-size:11px;
  color:#cbd9e7;
  font-weight:700;
  margin-bottom:5px;
}
.field input,.field select{
  width:100%;
  background:#081726;
  color:#eef6ff;
  border:1px solid #2a4968;
  border-radius:9px;
  padding:9px 10px;
  outline:none;
}
.field input:focus,.field select:focus{
  border-color:#38bdf8;
  box-shadow:0 0 0 3px rgba(56,189,248,.1);
}
.field-hint{font-size:10px;color:#849bb0;line-height:1.35;margin-top:4px}
.wind-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0 6px;
}
.wind-table th{
  text-align:left;
  font-size:10px;
  color:#8fa7bd;
  text-transform:uppercase;
  padding:0 5px;
}
.wind-table td{padding:0 4px}
.wind-table td:first-child{
  font-size:11px;
  color:#cbd9e7;
  white-space:nowrap;
}
.wind-table input{
  width:100%;
  min-width:0;
  background:#081726;
  color:#fff;
  border:1px solid #294867;
  border-radius:8px;
  padding:8px;
}
.calc-summary{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:8px;
}
.calc-item{
  background:#091827;
  border:1px solid #203c58;
  border-radius:9px;
  padding:9px;
}
.calc-k{font-size:9px;color:#8197ab;text-transform:uppercase;letter-spacing:.05em}
.calc-v{font-size:14px;font-weight:800;margin-top:4px}
.btn{
  width:100%;
  padding:11px 12px;
  border-radius:9px;
  border:1px solid #2b5273;
  cursor:pointer;
  font-weight:800;
  color:#fff;
  background:#102b45;
}
.btn-primary{
  border:0;
  background:linear-gradient(135deg,#158fd7,#3bc1f4);
}
.btn + .btn{margin-top:8px}
.planner-map-card{overflow:hidden}
#plannerMap{height:590px}
.map-toolbar{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}
.map-chip{
  font-size:10px;
  color:#c9d9e7;
  border:1px solid #31506d;
  border-radius:999px;
  padding:5px 8px;
  background:#0d2033;
}
.result-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(145px,1fr));
  gap:9px;
  padding:13px;
  border-top:1px solid #223f5d;
}
.result-box{
  padding:10px;
  border:1px solid #203d59;
  background:#081726;
  border-radius:10px;
}
.result-k{font-size:9px;color:#8197ab;text-transform:uppercase}
.result-v{font-size:14px;font-weight:800;margin-top:5px;word-break:break-word}
.legend{
  display:flex;
  gap:13px;
  flex-wrap:wrap;
  padding:10px 14px;
  border-top:1px solid #223f5d;
  color:#b8cada;
  font-size:11px;
}
.legend-dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:5px}
.info-note{
  margin-top:10px;
  padding:10px 11px;
  border-radius:9px;
  background:#251b0c;
  border:1px solid #6f5520;
  color:#f5d795;
  font-size:11px;
  line-height:1.45;
}
@media(max-width:1180px){
  .planner-layout{grid-template-columns:1fr}
  #plannerMap{height:520px}
}
@media(max-width:700px){
  .result-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:460px){
  .form-grid,.calc-summary,.result-grid{grid-template-columns:1fr}
}

.btn:disabled{opacity:.6;cursor:wait}

.field input[readonly]{
  opacity:.82;
  background:#0b1c2d;
  cursor:not-allowed;
}


/* CX4AE Planner modular v0.6.0 */
.descent-profile-card{
  margin:12px 0 14px;padding:13px;border-radius:12px;
  border:1px solid #285374;background:linear-gradient(180deg,#0b2033,#091827)
}
.dpc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.dpc-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.09em;color:#86a5bd;font-weight:800}
.dpc-title{font-size:14px;font-weight:800;margin-top:4px;color:#eef8ff}
.dpc-badge{font-size:9px;font-weight:900;letter-spacing:.06em;padding:5px 8px;border-radius:999px;border:1px solid #50606f;color:#c6d1dc;background:#17212a}
.dpc-badge.active{color:#a8f0cd;background:#0d251d;border-color:#2b6a4d}
.dpc-badge.physical{color:#f8d99b;background:#281e0e;border-color:#725621}
.dpc-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:11px}
.dpc-item{background:#071522;border:1px solid #1e3b55;border-radius:8px;padding:8px}
.dpc-item span{display:block;font-size:9px;color:#8197ab;text-transform:uppercase}
.dpc-item strong{display:block;font-size:13px;margin-top:4px}
.dpc-note{margin-top:9px;font-size:10px;color:#9fb5c8;line-height:1.45}
#profileStatus strong{color:#8ee6ff}
@media(max-width:460px){.dpc-grid{grid-template-columns:1fr}}
