.tp-estimator-v3{
  --tp-bg:#1f252d;
  --tp-panel:#11161c;
  --tp-panel-2:#2a313a;
  --tp-text:#ffffff;
  --tp-muted:rgba(255,255,255,.72);
  --tp-line:rgba(255,255,255,.12);
  --tp-accent:#f59b24;
  --tp-accent-2:#ffb347;
  --tp-choice-title:#ffffff;
  --tp-choice-desc:rgba(255,255,255,.72);
  --tp-choice-hover-bg:#343d48;
  --tp-choice-hover-border:rgba(245,155,36,.45);
  --tp-choice-active-bg:rgba(245,155,36,.10);
  --tp-choice-active-border:#f59b24;
  --tp-btn-primary-bg:#ffffff;
  --tp-btn-primary-text:#1f252d;
  --tp-btn-secondary-bg:transparent;
  --tp-btn-secondary-text:#ffffff;
  --tp-btn-border:rgba(255,255,255,.12);
  --tp-btn-primary-hover-bg:#f1f1f1;
  --tp-btn-primary-hover-text:#1f252d;
  --tp-btn-secondary-hover-bg:rgba(255,255,255,.06);
  --tp-btn-secondary-hover-text:#ffffff;
  --tp-mobile-sticky-bg:#11161c;
  --tp-mobile-sticky-text:#ffffff;
  --tp-radius:24px;
  --tp-btn-radius:999px;
  --tp-padding:28px;
  --tp-gap:28px;
  --tp-col-left:1.05fr;
  --tp-col-right:.95fr;
  color:var(--tp-text);
  position:relative;
}
.tp-estimator-v3 *{box-sizing:border-box}
.tp-estimator-v3 *::before,.tp-estimator-v3 *::after{box-sizing:border-box}
.tp-estimator-v3 .tp-wrap{display:grid;grid-template-columns:var(--tp-col-left) var(--tp-col-right);gap:var(--tp-gap);align-items:start;background:var(--tp-bg)}
.tp-estimator-v3 .tp-panel{background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01)), var(--tp-panel);border:1px solid var(--tp-line);border-radius:var(--tp-radius);overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.28)}
.tp-estimator-v3 .tp-panel-inner,.tp-estimator-v3 .tp-total,.tp-estimator-v3 .tp-list{padding:var(--tp-padding)}
.tp-estimator-v3 .tp-kicker{display:inline-block;font-size:12px;line-height:1;letter-spacing:.2em;text-transform:uppercase;color:var(--tp-accent);margin-bottom:14px}
.tp-estimator-v3 h3{margin:0 0 10px;font-size:32px;line-height:1.1;color:#fff;font-weight:600;overflow-wrap:anywhere;word-break:break-word}
.tp-estimator-v3 p{margin:0 0 16px;color:var(--tp-muted);font-size:15px;line-height:1.7;overflow-wrap:anywhere;word-break:break-word}
.tp-estimator-v3 .tp-mobile-intro{display:grid;gap:6px;margin:0 0 18px;padding:14px 16px;border-radius:16px;border:1px solid rgba(245,155,36,.18);background:linear-gradient(180deg, rgba(245,155,36,.08), rgba(245,155,36,.02))}
.tp-estimator-v3 .tp-mobile-intro strong{font-size:15px;line-height:1.2;color:#fff}
.tp-estimator-v3 .tp-mobile-intro span{font-size:13px;line-height:1.5;color:var(--tp-muted)}
.tp-estimator-v3 .tp-progress{display:flex;gap:10px;margin:22px 0 6px}
.tp-estimator-v3 .tp-progress span{height:6px;flex:1;border-radius:var(--tp-btn-radius);background:rgba(255,255,255,.1);overflow:hidden;position:relative}
.tp-estimator-v3 .tp-progress span.active:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--tp-accent),var(--tp-accent-2))}
.tp-estimator-v3 .tp-step-label{display:flex;justify-content:space-between;gap:10px;color:var(--tp-muted);font-size:13px;margin-bottom:18px}
.tp-estimator-v3 .tp-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tp-estimator-v3 .tp-choice{position:relative;background:var(--tp-panel-2);border:1px solid transparent;border-radius:18px;padding:18px 16px;cursor:pointer;transition:.25s ease;min-height:100px;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;-webkit-appearance:none;appearance:none;background-image:none;min-width:0;max-width:100%;white-space:normal !important}
.tp-estimator-v3 .tp-choice:hover{transform:translateY(-3px);border-color:var(--tp-choice-hover-border);background:var(--tp-choice-hover-bg);box-shadow:0 16px 30px rgba(0,0,0,.18)}
.tp-estimator-v3 .tp-choice.active{border-color:var(--tp-choice-active-border);background:linear-gradient(180deg, var(--tp-choice-active-bg), rgba(255,255,255,.01)), var(--tp-panel-2);box-shadow:0 0 0 1px rgba(245,155,36,.15),0 16px 30px rgba(0,0,0,.22)}
.tp-estimator-v3 .tp-choice.active::after{content:"Selected";position:absolute;top:10px;right:10px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--tp-accent)}
.tp-estimator-v3 .tp-choice b{display:block;width:100%;max-width:100%;font-size:17px;line-height:1.2;color:var(--tp-choice-title);margin-bottom:6px;overflow-wrap:anywhere;word-break:break-word;white-space:normal !important}
.tp-estimator-v3 .tp-choice small{display:block;width:100%;max-width:100%;color:var(--tp-choice-desc);font-size:13px;line-height:1.5;overflow-wrap:anywhere;word-break:break-word;white-space:normal !important}
.tp-estimator-v3 .tp-choices,.tp-estimator-v3 .tp-choice,.tp-estimator-v3 .tp-choice > *{min-width:0}
.tp-estimator-v3 .tp-choice b,.tp-estimator-v3 .tp-choice small{overflow:hidden;text-overflow:clip}
.tp-estimator-v3 .tp-checks{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tp-estimator-v3 .tp-check{display:flex;gap:12px;align-items:flex-start;padding:14px;background:var(--tp-panel-2);border-radius:16px;border:1px solid transparent;transition:.25s ease;-webkit-appearance:none;appearance:none;background-image:none}
.tp-estimator-v3 .tp-check:hover{border-color:rgba(245,155,36,.35)}
.tp-estimator-v3 .tp-check input{margin-top:4px;accent-color:var(--tp-accent);transform:scale(1.1)}
.tp-estimator-v3 .tp-check span{display:block;color:#fff;font-size:15px}
.tp-estimator-v3 .tp-check em{display:block;color:var(--tp-muted);font-style:normal;font-size:12px;margin-top:2px}
.tp-estimator-v3 .tp-quantity{margin-top:18px;padding:14px 16px;background:var(--tp-panel-2);border-radius:16px;border:1px solid var(--tp-line)}
.tp-estimator-v3 .tp-quantity label{display:block;font-size:14px;color:#fff;margin-bottom:8px}
.tp-estimator-v3 .tp-quantity .tp-qty-wrap{display:flex;gap:10px;align-items:center}
.tp-estimator-v3 .tp-quantity input{width:100%;min-height:48px;border-radius:12px;border:1px solid var(--tp-line);background:#0c1015;color:#fff;padding:0 14px}
.tp-estimator-v3 .tp-quantity .tp-unit{font-size:13px;color:var(--tp-muted);white-space:nowrap}
.tp-estimator-v3 .tp-nav{display:flex;justify-content:space-between;gap:12px;margin-top:22px;align-items:center}
.tp-estimator-v3 .tp-nav-meta{display:none}
.tp-estimator-v3 .tp-nav-actions{display:flex;justify-content:space-between;gap:12px;flex:1}
.tp-estimator-v3 .tp-btn,
.tp-estimator-v3 button.tp-btn,
.tp-estimator-v3 a.tp-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border-radius:var(--tp-btn-radius) !important;border:1px solid var(--tp-btn-border) !important;background:var(--tp-btn-primary-bg) !important;color:var(--tp-btn-primary-text) !important;font-weight:600;cursor:pointer;text-decoration:none;transition:.25s ease;text-align:center;white-space:normal;overflow-wrap:anywhere;word-break:break-word;-webkit-appearance:none;appearance:none;background-image:none !important;box-shadow:none !important}
.tp-estimator-v3 .tp-btn:hover,
.tp-estimator-v3 button.tp-btn:hover,
.tp-estimator-v3 a.tp-btn:hover{transform:translateY(-2px);background:var(--tp-btn-primary-hover-bg) !important;color:var(--tp-btn-primary-hover-text) !important;border-color:var(--tp-btn-border) !important}
.tp-estimator-v3 .tp-btn.secondary,
.tp-estimator-v3 button.tp-btn.secondary,
.tp-estimator-v3 a.tp-btn.secondary{background:var(--tp-btn-secondary-bg) !important;color:var(--tp-btn-secondary-text) !important}
.tp-estimator-v3 .tp-btn.secondary:hover,
.tp-estimator-v3 button.tp-btn.secondary:hover,
.tp-estimator-v3 a.tp-btn.secondary:hover{background:var(--tp-btn-secondary-hover-bg) !important;color:var(--tp-btn-secondary-hover-text) !important;border-color:var(--tp-btn-border) !important}
.tp-estimator-v3 .tp-btn:focus,.tp-estimator-v3 .tp-btn:active,.tp-estimator-v3 .tp-choice:focus,.tp-estimator-v3 .tp-check:focus{outline:none;box-shadow:none}
.tp-estimator-v3 .tp-btn[disabled]{opacity:.45;cursor:not-allowed;pointer-events:none;transform:none !important}
.tp-estimator-v3 button{font:inherit}
.tp-estimator-v3 .tp-summary{position:sticky;top:24px}
.tp-estimator-v3 .tp-total{border-bottom:1px solid var(--tp-line);background:radial-gradient(circle at top right, rgba(245,155,36,.22), transparent 35%),linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01))}
.tp-estimator-v3 .tp-range{font-size:42px;line-height:1;font-weight:700;color:#fff;margin:16px 0 10px}
.tp-estimator-v3 .tp-range.tp-updated{animation:tpPulse .45s ease}
@keyframes tpPulse{0%{transform:scale(.985);opacity:.82}60%{transform:scale(1.015);opacity:1}100%{transform:scale(1);opacity:1}}
.tp-estimator-v3 .tp-note{color:var(--tp-muted);font-size:14px;line-height:1.6}
.tp-estimator-v3 .tp-list h4{margin:0 0 14px;font-size:17px;color:#fff}
.tp-estimator-v3 .tp-row{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--tp-line);font-size:14px}
.tp-estimator-v3 .tp-row:last-child{border-bottom:0}
.tp-estimator-v3 .tp-row span:first-child{color:var(--tp-muted)}
.tp-estimator-v3 .tp-row span:last-child{color:#fff;text-align:right;overflow-wrap:anywhere;word-break:break-word}
.tp-estimator-v3 .tp-callout{margin:0 var(--tp-padding) var(--tp-padding);padding:18px;border-radius:18px;border:1px solid rgba(245,155,36,.2);background:linear-gradient(180deg, rgba(245,155,36,.08), rgba(245,155,36,.03))}
.tp-estimator-v3 .tp-callout b{display:block;color:#fff;margin-bottom:8px}
.tp-estimator-v3 .tp-callout p{margin:0 0 14px}
.tp-estimator-v3 .tp-actions{display:flex;flex-wrap:wrap;gap:10px}.tp-estimator-v3 .tp-actions > *{flex:1 1 220px}
.tp-estimator-v3 .tp-disclaimer{margin-top:16px;font-size:12px;color:var(--tp-muted)}
.tp-estimator-v3 .tp-hidden,.tp-estimator-v3 .tp-hidden-force{display:none !important}
@media (max-width:1024px){
  .tp-estimator-v3 .tp-wrap{grid-template-columns:1fr}
  .tp-estimator-v3 .tp-summary{position:relative;top:0}
}
@media (min-width:768px){
  .tp-estimator-v3 .tp-mobile-intro{display:none}
}
@media (max-width:767px){
  .tp-estimator-v3{padding-bottom:94px}
  .tp-estimator-v3 .tp-wrap{gap:16px}
  .tp-estimator-v3 .tp-summary{order:-1}
  .tp-estimator-v3:not(.tp-final-step) .tp-summary .tp-list,
  .tp-estimator-v3:not(.tp-final-step) .tp-summary .tp-callout{display:none}
  .tp-estimator-v3 h3{font-size:26px}
  .tp-estimator-v3 .tp-panel-inner,.tp-estimator-v3 .tp-total,.tp-estimator-v3 .tp-list{padding:18px}
  .tp-estimator-v3 .tp-callout{margin:0 18px 18px}
  .tp-estimator-v3 .tp-choices,.tp-estimator-v3 .tp-checks{grid-template-columns:1fr}
  .tp-estimator-v3 .tp-choice{padding:15px 14px;min-height:auto;border-radius:16px;align-items:flex-start;text-align:left}
  .tp-estimator-v3 .tp-choice b{font-size:16px;margin-bottom:4px;padding-right:84px}
  .tp-estimator-v3 .tp-choice small{font-size:12px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal !important;max-width:100%}
  .tp-estimator-v3 .tp-choice.active::after{top:12px;right:12px}
  .tp-estimator-v3 .tp-step-label{align-items:flex-start;flex-direction:column;gap:4px;margin-bottom:12px}
  .tp-estimator-v3 .tp-range{font-size:32px}
  .tp-estimator-v3 .tp-row{font-size:13px;padding:9px 0}
  .tp-estimator-v3 .tp-nav{display:none}
  .tp-estimator-v3.tp-mobile-active .tp-nav{display:grid;position:fixed;left:10px;right:10px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:9999;padding:10px 12px;border-radius:16px;border:1px solid rgba(255,255,255,.1);background:rgba(17,22,28,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 14px 34px rgba(0,0,0,.32);gap:8px}
  .tp-estimator-v3.tp-mobile-active .tp-nav-meta{display:grid;gap:2px}
  .tp-estimator-v3.tp-mobile-active .tp-nav-kicker{font-size:9px;line-height:1;letter-spacing:.14em;text-transform:uppercase;color:var(--tp-accent);opacity:.92}
  .tp-estimator-v3.tp-mobile-active .tp-nav-range{font-size:16px;line-height:1.05;font-weight:700;color:var(--tp-mobile-sticky-text)}
  .tp-estimator-v3.tp-mobile-active .tp-nav-actions{display:grid;grid-template-columns:minmax(82px,.78fr) minmax(0,1fr);gap:8px}
  .tp-estimator-v3.tp-mobile-active .tp-nav .tp-btn{width:100%;min-height:42px;padding:10px 14px;font-size:15px}
  .tp-estimator-v3 .tp-step[data-title="Pick a finish level"] .tp-choices{grid-template-columns:1fr !important}
  .tp-estimator-v3 .tp-step[data-title="Pick a finish level"] .tp-choice{min-height:82px}
}
.tp-estimator-v3 .tp-step-label span,.tp-estimator-v3 .tp-check span,.tp-estimator-v3 .tp-note,.tp-estimator-v3 .tp-disclaimer,.tp-estimator-v3 .tp-kicker,.tp-estimator-v3 .tp-row span{overflow-wrap:anywhere;word-break:break-word}

@media (max-width:767px){
  .tp-estimator-v3 .tp-summary .tp-panel{margin-bottom:0}
  .tp-estimator-v3 .tp-total{border-radius:20px}
}
