/* JLT Program Pricing — quote builder UI */
.jltpp-root{--jltpp-primary:#0f6f6c;--jltpp-accent:#e07b39;--jltpp-line:#e3e8e8;--jltpp-muted:#6b7a7a;--jltpp-bg:#fff;--jltpp-soft:#f4f8f8;font-family:inherit;color:#1d2b2b;background:var(--jltpp-bg);border:1px solid var(--jltpp-line);border-radius:10px;padding:14px;margin:12px 0;font-size:13px;line-height:1.5;box-sizing:border-box}
.jltpp-root *{box-sizing:border-box}
.jltpp-head h3{margin:0 0 2px;font-size:16px;letter-spacing:.3px;color:var(--jltpp-primary)}
.jltpp-head p{margin:0 0 12px;color:var(--jltpp-muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.6px}
.jltpp-step{padding:10px 0;border-top:1px solid var(--jltpp-line)}
.jltpp-step-head{display:flex;align-items:center;gap:8px;font-weight:700;margin-bottom:8px;font-size:12.5px}
.jltpp-step-head span{display:inline-flex;width:20px;height:20px;border-radius:50%;background:var(--jltpp-primary);color:#fff;align-items:center;justify-content:center;font-size:11px}
.jltpp-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.jltpp-date{padding:8px 10px;border:1px solid var(--jltpp-line);border-radius:6px;font-size:13px;flex:1;min-width:150px}
.jltpp-season{font-size:11px;font-weight:700;padding:5px 9px;border-radius:20px;background:#eef3f3;color:var(--jltpp-muted)}
.jltpp-season.is-high{background:#fff2e5;color:#b35c14}
.jltpp-season.is-peak{background:#fdeaea;color:#b3261e}
.jltpp-season.is-low{background:#e7f6ee;color:#176b45}
.jltpp-classes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.jltpp-classes li{border:1px solid var(--jltpp-line);border-radius:6px;padding:8px;cursor:pointer;display:flex;flex-direction:column;gap:3px;transition:.15s}
.jltpp-classes li:hover{border-color:var(--jltpp-primary)}
.jltpp-classes li.is-active{border-color:var(--jltpp-primary);background:var(--jltpp-soft);box-shadow:inset 0 0 0 1px var(--jltpp-primary)}
.jltpp-classes li b{font-size:12px}
.jltpp-classes li span{font-size:11px;color:var(--jltpp-muted)}
.jltpp-pax{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.jltpp-pax button{width:30px;height:30px;border:1px solid var(--jltpp-line);background:var(--jltpp-soft);border-radius:6px;font-size:18px;cursor:pointer;line-height:1}
.jltpp-pax input{width:64px;padding:7px;text-align:center;border:1px solid var(--jltpp-line);border-radius:6px}
.jltpp-band{font-size:11px;color:var(--jltpp-muted);background:var(--jltpp-soft);padding:5px 9px;border-radius:20px}
.jltpp-fams{display:flex;flex-direction:column;gap:5px;margin-bottom:8px}
.jltpp-radio{display:flex;gap:7px;align-items:center;font-size:12px;cursor:pointer}
.jltpp-radio input{accent-color:var(--jltpp-primary)}
.jltpp-single{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;margin-bottom:8px;flex-wrap:wrap}
.jltpp-single input{width:58px;padding:5px;border:1px solid var(--jltpp-line);border-radius:5px}
.jltpp-single span{color:var(--jltpp-muted);font-size:11px}
.jltpp-guides{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}
.jltpp-guides label{font-size:11.5px;display:flex;gap:6px;align-items:center;cursor:pointer}
.jltpp-guides b{margin-left:auto;color:var(--jltpp-primary)}
.jltpp-extras{display:flex;flex-direction:column;gap:4px}
.jltpp-extra{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11.5px;border-bottom:1px dashed var(--jltpp-line);padding-bottom:3px}
.jltpp-extra label{display:flex;gap:6px;align-items:center;cursor:pointer}
.jltpp-extra input{width:48px;padding:4px;border:1px solid var(--jltpp-line);border-radius:5px}
.jltpp-extra b{white-space:nowrap;font-size:11px}
.jltpp-extra small{color:var(--jltpp-muted);font-weight:400}
.jltpp-summary{background:var(--jltpp-soft);border-radius:8px;padding:10px;margin-top:10px}
.jltpp-summary-head{font-weight:700;font-size:12px;margin-bottom:6px;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.jltpp-summary-head span{font-weight:400;color:var(--jltpp-muted);font-size:11px}
.jltpp-line{display:grid;grid-template-columns:1fr auto auto;gap:8px;padding:3px 0;font-size:11.5px;border-bottom:1px solid rgba(0,0,0,.04)}
.jltpp-line small{color:var(--jltpp-muted)}
.jltpp-line b{text-align:right;min-width:72px}
.jltpp-total{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding-top:8px;border-top:2px solid var(--jltpp-primary);font-size:13px;font-weight:700}
.jltpp-total b{font-size:20px;color:var(--jltpp-primary)}
.jltpp-deposit{font-size:11px;color:var(--jltpp-muted);margin-top:3px}
.jltpp-nudge{font-size:11px;color:#b35c14;margin-top:6px}
.jltpp-compare{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}
.jltpp-compare span{font-size:10.5px;border:1px solid var(--jltpp-line);border-radius:20px;padding:3px 8px;background:#fff}
.jltpp-compare span.is-active{border-color:var(--jltpp-primary);color:var(--jltpp-primary);font-weight:700}
.jltpp-msg{font-size:11.5px;margin-top:6px;min-height:14px}
.jltpp-msg.is-error{color:#b3261e}
.jltpp-msg.is-ok{color:#176b45}
.jltpp-details{margin-top:10px;font-size:11.5px;border-top:1px solid var(--jltpp-line);padding-top:8px}
.jltpp-details summary{cursor:pointer;font-weight:700;color:var(--jltpp-primary)}
.jltpp-details h4{margin:10px 0 4px;font-size:12px}
.jltpp-days{padding-left:18px;margin:0}
.jltpp-days li{margin-bottom:6px}
.jltpp-days span{color:var(--jltpp-muted)}
.jltpp-hotels{width:100%;border-collapse:collapse;font-size:10.5px}
.jltpp-hotels th,.jltpp-hotels td{border:1px solid var(--jltpp-line);padding:4px 6px;text-align:left}
.jltpp-hotels th{background:#fff}
.jltpp-inc{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.jltpp-inc h5{margin:4px 0;font-size:11px}
.jltpp-inc ul{margin:0;padding-left:16px}
.jltpp-cta{width:100%;margin-top:10px;padding:12px;border:0;border-radius:7px;background:var(--jltpp-primary);color:#fff;font-weight:700;font-size:14px;cursor:pointer}
.jltpp-cta:hover{filter:brightness(1.1)}
.jltpp-demo-result{margin-top:10px}
.jltpp-demo-result h4{font-size:12px;margin:6px 0}
.jltpp-demo-result pre{max-height:260px;overflow:auto;background:#0d1b1b;color:#c8f5e9;padding:10px;border-radius:6px;font-size:10.5px;white-space:pre-wrap;word-break:break-word}
.jltpp-hidden{display:none}
.jltpp-native .jltpp-head{display:none}
@media(max-width:640px){.jltpp-classes{grid-template-columns:1fr}.jltpp-inc{grid-template-columns:1fr}.jltpp-line{grid-template-columns:1fr auto}.jltpp-line small{display:none}}
.jltpp-paymode{border:1px solid var(--jltpp-line);border-radius:6px;padding:8px;margin-bottom:8px;background:var(--jltpp-soft)}
.jltpp-paymode-title{font-weight:700;font-size:11.5px;margin-bottom:4px}
.jltpp-paymode label{display:flex;gap:7px;align-items:center;font-size:11.5px;cursor:pointer;padding:2px 0}
.jltpp-paymode input{accent-color:var(--jltpp-primary)}
.jltpp-deposit b{color:var(--jltpp-primary)}

/* v1.0.3 — no children, single-room note, uncovered-date warning */
.jltpp-nochild{font-size:11px;color:#6b7a7a;margin:0 0 6px}
.jltpp-singlenote{font-size:11px;color:#6b7a7a;margin:4px 0 0}
.jltpp-seasonwarn{display:none;background:#fff6e0;border:1px solid #e8a33d;color:#8a4b00;padding:8px 10px;border-radius:6px;font-size:11.5px;margin:0 0 8px;line-height:1.45}
