
.llp-calculator {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--llp-text);
  width: 100%;
  max-width: var(--llp-max-width);
  margin-inline: auto;
  box-sizing: border-box;
  background:
    radial-gradient(circle at top left, color-mix(in srgb, var(--llp-primary) 20%, transparent), transparent 36%),
    linear-gradient(135deg, var(--llp-bg), #fff);
  border-radius: 28px;
  padding: var(--llp-pad);
  box-shadow: 0 24px 80px rgba(15,23,42,.12);
  border: 1px solid rgba(15,23,42,.08);
  overflow: hidden;
  container-type: inline-size;
}
.llp-calculator.llp-width-full{max-width:none}
.llp-calculator.llp-width-boxed{max-width:var(--llp-max-width)}
.llp-calculator *{box-sizing:border-box}
.llp-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px);gap:24px;align-items:start;margin-bottom:26px}
.llp-badge{display:inline-flex;padding:7px 12px;border-radius:999px;background:rgba(6,182,212,.12);color:var(--llp-primary);font-weight:800;font-size:13px}
.llp-top h2{font-size:clamp(26px,4cqi,52px);line-height:1.03;margin:14px 0 10px;color:var(--llp-dark);letter-spacing:-.04em}
.llp-top p{font-size:clamp(15px,1.5cqi,18px);max-width:860px;color:#475569;margin:0}
.llp-trust{background:rgba(255,255,255,.72);backdrop-filter:blur(12px);border:1px solid rgba(15,23,42,.08);border-radius:20px;padding:16px;box-shadow:0 10px 35px rgba(15,23,42,.08)}
.llp-trust strong,.llp-trust span{display:block}
.llp-trust span{color:#64748b;font-size:13px;margin-top:4px}

.llp-shell{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:22px;align-items:start}
.llp-layout-wide_results .llp-shell{grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr)}
.llp-layout-single_column .llp-shell{grid-template-columns:1fr}
.llp-layout-single_column .llp-results{max-width:920px;width:100%;margin-inline:auto}
.llp-form,.llp-results{background:var(--llp-card);border-radius:24px;padding:clamp(18px,2cqi,26px);border:1px solid rgba(15,23,42,.08);box-shadow:0 14px 40px rgba(15,23,42,.08);min-width:0}
.llp-results{position:sticky;top:24px}
.llp-layout-single_column .llp-results{position:static}
.llp-section{margin-bottom:22px}
.llp-section h3{margin:0 0 14px;color:var(--llp-dark);font-size:18px}
.llp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.llp-layout-single_column .llp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.llp-form label{font-weight:800;font-size:13px;color:#334155;min-width:0}
.llp-form input,.llp-form select{width:100%;margin-top:7px;border:1px solid #cbd5e1;border-radius:14px;padding:13px 14px;background:#fff;font-size:15px;outline:none;transition:.2s;min-width:0}
.llp-density-compact .llp-form input,.llp-density-compact .llp-form select{padding:10px 12px;border-radius:12px;font-size:14px}
.llp-density-large .llp-form input,.llp-density-large .llp-form select{padding:16px 16px;border-radius:16px;font-size:17px}
.llp-form input:focus,.llp-form select:focus{border-color:var(--llp-primary);box-shadow:0 0 0 4px color-mix(in srgb, var(--llp-primary) 17%, transparent)}
.llp-lead{background:linear-gradient(135deg, rgba(6,182,212,.08), rgba(34,197,94,.08));padding:18px;border-radius:20px;border:1px solid rgba(6,182,212,.15)}
.llp-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.llp-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:0;border-radius:15px;padding:13px 17px;font-weight:900;cursor:pointer;transition:.2s;line-height:1.2}
.llp-btn-primary{background:linear-gradient(135deg,var(--llp-primary),var(--llp-accent));color:#fff;box-shadow:0 12px 28px color-mix(in srgb, var(--llp-primary) 28%, transparent)}
.llp-btn-primary:hover{transform:translateY(-1px);filter:brightness(1.03);color:#fff}
.llp-btn-light{background:#f1f5f9;color:#0f172a}
.llp-disclaimer{font-size:12px;color:#64748b;margin:14px 0 0}
.llp-message{padding:12px 14px;border-radius:14px;margin-top:12px;background:#e0f2fe;color:#075985;font-weight:700}.llp-message[data-type='error']{background:#fee2e2;color:#991b1b}.llp-message[data-type='success']{background:#dcfce7;color:#166534}.llp-message[data-type='info']{background:#e0f2fe;color:#075985}
.llp-empty{min-height:360px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#64748b;border:2px dashed #cbd5e1;border-radius:20px;padding:24px}
.llp-empty strong{font-size:22px;color:var(--llp-dark)}
.llp-total{background:linear-gradient(135deg,var(--llp-dark),#1e293b);color:#fff;border-radius:24px;padding:22px;margin-bottom:18px}
.llp-total span,.llp-total small{display:block;color:#cbd5e1}
.llp-total strong{font-size:clamp(28px,4cqi,48px);line-height:1.1;display:block;margin:8px 0;word-break:break-word}
.llp-chart{display:block;margin:8px auto 20px;max-width:min(280px,100%);width:100%;height:auto}
.llp-breakdown{display:grid;gap:10px}
.llp-layout-wide_results .llp-breakdown,.llp-layout-single_column .llp-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}
.llp-breakdown div{display:flex;justify-content:space-between;gap:12px;padding:13px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;min-width:0}
.llp-breakdown span{color:#475569}
.llp-breakdown strong{color:var(--llp-dark);text-align:right;word-break:break-word}
.llp-cta{margin-top:18px;padding:18px;border-radius:20px;background:linear-gradient(135deg,rgba(6,182,212,.10),rgba(34,197,94,.10));border:1px solid rgba(6,182,212,.15)}
.llp-cta h3{margin:0 0 8px;color:var(--llp-dark)}
.llp-cta p{margin:0 0 14px;color:#475569}

/* Container-based responsiveness: works even inside narrow WordPress columns */
@container (max-width: 980px){
  .llp-top{grid-template-columns:1fr}
  .llp-shell,.llp-layout-wide_results .llp-shell{grid-template-columns:1fr}
  .llp-results{position:static}
  .llp-layout-single_column .llp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container (max-width: 680px){
  .llp-calculator{border-radius:20px;padding:max(14px, calc(var(--llp-pad) * .7))}
  .llp-grid,.llp-layout-single_column .llp-grid{grid-template-columns:1fr}
  .llp-layout-wide_results .llp-breakdown,.llp-layout-single_column .llp-breakdown{grid-template-columns:1fr}
  .llp-top h2{font-size:30px}
  .llp-actions .llp-btn{width:100%}
  .llp-empty{min-height:220px}
  .llp-mobile-results_first .llp-results{order:-1}
  .llp-shell{display:flex;flex-direction:column}
}
@media(max-width: 680px){
  .llp-grid{grid-template-columns:1fr}
  .llp-top{grid-template-columns:1fr}
  .llp-shell{display:flex;flex-direction:column}
  .llp-results{position:static}
}
@media print{
  body *{visibility:hidden}
  .llp-calculator,.llp-calculator *{visibility:visible}
  .llp-calculator{position:absolute;left:0;top:0;width:100%;box-shadow:none;max-width:none}
  .llp-form,.llp-actions .llp-btn:not([data-print]){display:none!important}
}

.llp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 22px}
.llp-steps div{display:flex;align-items:center;gap:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:13px}
.llp-steps strong{display:flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--llp-primary),var(--llp-accent));color:#fff}
.llp-steps span{font-size:13px;font-weight:800;color:#334155;line-height:1.25}
.llp-legal-note{margin-top:18px;padding:18px;border-radius:20px;background:#fffbeb;border:1px solid #fde68a;color:#78350f}
.llp-legal-note h3{margin:0 0 8px;color:#78350f}
.llp-legal-note p{margin:0;font-size:14px;line-height:1.5}
@container (max-width: 760px){.llp-steps{grid-template-columns:1fr}.llp-steps div{align-items:flex-start}}
@media(max-width:760px){.llp-steps{grid-template-columns:1fr}}



@media print{
 .llp-powered,
}

.llp-fixed-months-field{transition:.2s}
