/* SIMPLAN UI v1.6 — scoped refinements on top of the actually deployed v1.5.
   DO NOT change hamburger visual, Worker/API connection or original plan datasets. */
:root{--ui16-blue:#2563eb;--ui16-green:#059669;--ui16-red:#dc2626}

/* Wordmark/tagline: leave the existing three-line hamburger as-is. */
body.ui15 #brandBtn.brand{display:inline-flex!important;align-items:center!important;gap:11px!important;max-width:calc(100% - 54px)!important;text-align:left!important;white-space:normal!important}
body.ui15 #brandBtn .ui15-wordmark{flex:none;white-space:nowrap}
body.ui15 #brandBtn .ui16-tagline{display:inline-block!important;font-size:12px;font-weight:650;line-height:1.35;letter-spacing:-.4px;color:#64748b;white-space:nowrap}
body.ui15 #root>.top{min-height:70px!important;max-height:none!important;height:70px!important}
body.ui15 #mainNav{top:62px!important}

/* The admin/testing count banner has been removed from the DOM, not merely hidden. */
body.ui15 .ui16-footer{display:flex!important;gap:10px 18px;flex-wrap:wrap;align-items:center;justify-content:center;font-size:12px;line-height:1.55;padding:23px 18px calc(95px + env(safe-area-inset-bottom));border-top:1px solid #edf0f6;color:#64748b;margin:18px 0 0;background:#fff}
body.ui15 .ui16-footer a{color:#64748b;text-decoration:none;font-weight:650;padding:6px 0}
body.ui15 .ui16-footer a:hover,body.ui15 .ui16-footer a:focus-visible{color:#2563eb;text-decoration:underline}
body.ui15.simplan-landing .ui16-footer{display:flex!important}
body.ui15.simplan-onboarding .ui16-footer{display:none!important}
body.ui15 .source-credit,body.ui15 .simplan-business-details{display:none!important}

/* Larger, readable copy without making the mobile questions taller than necessary. */
body.ui15.simplan-onboarding .main{width:min(calc(100% - 36px),520px)}
body.ui15.simplan-onboarding .step{padding-top:12px;padding-bottom:20px}
body.ui15.simplan-onboarding .step-head{height:24px}
body.ui15.simplan-onboarding .count,body.ui15.simplan-onboarding .back{font-size:14px}
body.ui15.simplan-onboarding .track{margin:8px 0 19px}
body.ui15.simplan-onboarding .kicker{font-size:13px;margin:0 0 8px}
body.ui15.simplan-onboarding .step h1{font-size:clamp(25px,6.7vw,32px);line-height:1.27;letter-spacing:-1.15px}
body.ui15.simplan-onboarding .step .desc{font-size:14px;line-height:1.55;margin:9px 0 15px;color:#66758b}
body.ui15.simplan-onboarding .options{gap:8px}
body.ui15.simplan-onboarding .option{min-height:62px;padding:10px 14px;border-radius:12px}
body.ui15.simplan-onboarding .option-name{font-size:16px;line-height:1.32}
body.ui15.simplan-onboarding .option-sub{font-size:13px;line-height:1.4;margin-top:3px;color:#66758b}
body.ui15.simplan-onboarding .note{font-size:13px;line-height:1.45;margin-top:10px}
body.ui15.simplan-onboarding .budget-choice{min-height:67px;font-size:16px;padding:12px 14px}
body.ui15.simplan-onboarding .budget-any{min-height:56px}
body.ui15.simplan-onboarding .profile-usage-banner{margin-top:12px!important}
body.ui15.simplan-onboarding .quiz-data-banner{min-height:60px!important;padding:8px 10px!important}
body.ui15.simplan-onboarding .quiz-data-banner strong{font-size:14px!important}
body.ui15.simplan-onboarding .quiz-data-banner small{font-size:12px!important}
body.ui15.simplan-onboarding .precise-box{margin-top:10px!important}
body.ui15.simplan-onboarding .precise-box summary{font-size:14px!important}
body.ui15.simplan-onboarding .step button:active{background-color:#f0f5ff}

/* Cards, filters, guides and MY: bring secondary copy above tiny 10–11px legacy text. */
body.ui15 .results-head h1{font-size:clamp(26px,6.5vw,38px)}
body.ui15 .recommendation-greeting,body.ui15 .results-snapshot,body.ui15 .results-heading small{font-size:14px;line-height:1.55}
body.ui15 .results .plan{padding:22px 18px}
body.ui15 .plan-title{font-size:20px;line-height:1.4}
body.ui15 .plan-desc,body.ui15 .plan-reason,body.ui15 .plan-summary{font-size:14px;line-height:1.6}
body.ui15 .plan-eyebrow,body.ui15 .plan-highlights span,body.ui15 .plan-detail summary,body.ui15 .join-note,body.ui15 .plan-source-note,body.ui15 .plan-detail .detail-rows{font-size:13px;line-height:1.5}
body.ui15 .plan-tag,body.ui15 .top-pick-label,body.ui15 .benefit-badge{font-size:12px}
body.ui15 .mini-price small{font-size:12px}
body.ui15 .mini-price strong{font-size:14px}
body.ui15 .category-buttons button,body.ui15 .filter-toggle,body.ui15 .picker-trigger,body.ui15 .compare-btn{font-size:13px}
body.ui15 .signup-action{font-size:14px!important}
body.ui15 .my-row-copy small,body.ui15 .my-subtitle,body.ui15 .my-help{font-size:14px}
body.ui15 .mobile-tabs .tab-link{font-size:12px;letter-spacing:-.3px}

/* Clear pricing: 'regular' means rate AFTER a promotion, NOT a verified original list price. */
body.ui15 .plan .ui16-price-line{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;justify-content:space-between}
body.ui15 .plan .price-now{display:flex;align-items:flex-start;flex-direction:column;min-width:0;gap:6px}
body.ui15 .plan .price-reference{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 8px}
body.ui15 .plan .price-compare-label{color:#64748b;font-size:12px;line-height:1.45}
body.ui15 .plan .price-before{font-size:16px;font-weight:750;color:var(--ui16-red);text-decoration-color:var(--ui16-red);text-decoration-thickness:1.8px;white-space:nowrap}
body.ui15 .plan .discount-detail{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:10px 0 2px}
body.ui15 .plan .discount-detail strong{font-size:14px;color:#047857;background:#e8f8ef;border-radius:7px;padding:6px 10px}
body.ui15 .plan .discount-detail span{font-size:13px;color:#64748b}
body.ui15 .plan .later{font-size:13px;line-height:1.5;max-width:45%;text-align:right}

/* Friendly home kept as-is on phones; desktop no longer artificially locked to 430px. */
body.ui15 .ui15-home .hero p{font-size:15px;line-height:1.65}
body.ui15 .ui15-home .primary{font-size:16px}
body.ui15 .ui15-home .cat-tile{font-size:15px}
body.ui15 .ui15-home .category-note{font-size:13px}
body.ui15 .ui15-home .feature-heading{font-size:17px}
body.ui15 .ui15-home .feature p{font-size:14px;line-height:1.6}
body.ui15 .ui15-home .feature-action{font-size:15px}
body.ui15 .ui15-home .faq-item{font-size:15px}
body.ui15 .ui15-home .faq-answer{font-size:14px;line-height:1.6}

@media(min-width:761px){
 body.ui15{padding-bottom:0}
 body.ui15 #root,body.ui15.simplan-landing #root{width:100%!important;max-width:1120px!important;border-radius:0!important;margin:0 auto!important}
 body.ui15.simplan-landing #root{margin-top:0!important}
 body.ui15 #root>.top,body.ui15.simplan-landing #root>.top{max-width:1120px!important;padding:0 42px!important}
 body.ui15 .ui15-home,body.ui15.simplan-landing .ui15-home{max-width:1000px!important;padding:30px 44px 75px!important}
 body.ui15 .ui15-home .hero{padding:46px 48px 44px;min-height:295px}
 body.ui15 .ui15-home .hero h1{font-size:clamp(34px,4vw,46px)!important;line-height:1.31}
 body.ui15 .ui15-home .hero p{max-width:650px;font-size:17px;line-height:1.65}
 body.ui15 .ui15-home .hero .primary{max-width:460px;min-height:58px}
 body.ui15 .ui15-home .cat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
 body.ui15 .ui15-home .cat-tile{min-height:83px;justify-content:center;font-size:16px}
 body.ui15 .ui15-home .section{margin-top:44px}
 body.ui15 .ui15-home .feature{padding:27px 28px}
 body.ui15 .ui15-home .feature-heading{font-size:21px}
 body.ui15 .ui15-home .feature p{font-size:16px;margin-left:56px}
 body.ui15 .ui15-home .faq-box{grid-template-columns:1fr 1fr;align-items:start}
 body.ui15 .ui15-home .faq-box>div+div{border-top:1px solid #d8dee9}
 body.ui15 .mobile-tabs{display:none!important}
 body.ui15 .ui16-footer{padding-bottom:30px}
}
@media(max-width:760px){
 body.ui15 #root>.top{height:68px!important;min-height:68px!important;max-height:none!important}
 body.ui15 #brandBtn .ui15-wordmark{font-size:25px!important}
 body.ui15 #brandBtn .ui16-tagline{font-size:11px}
 body.ui15 #mainNav{top:62px!important}
 body.ui15 .ui15-home{max-width:430px!important;padding:8px 18px 34px!important}
 body.ui15 .ui15-home .hero h1{font-size:clamp(26px,7vw,31px)!important}
 body.ui15 .ui15-home .cat-tile{padding:12px 10px;gap:8px;min-height:66px}
 body.ui15 .ui15-home .cat-tile .cat-icon{width:26px;flex:none}
 body.ui15 .mobile-tabs .tab-link{font-size:11.5px}
 body.ui15 .ui16-footer{padding-bottom:calc(93px + env(safe-area-inset-bottom))}
 body.ui15 .plan .later{max-width:100%;text-align:left}
 body.ui15 .plan .ui16-price-line{flex-direction:column;gap:7px}
}
@media(max-width:380px){
 body.ui15 #brandBtn.brand{gap:7px!important}
 body.ui15 #brandBtn .ui15-wordmark{font-size:24px!important}
 body.ui15 #brandBtn .ui16-tagline{font-size:10px;letter-spacing:-.45px}
 body.ui15.simplan-onboarding .step h1{font-size:25px}
 body.ui15 .ui15-home .cat-tile{font-size:14px;padding:10px 8px;gap:7px}
 body.ui15 .ui15-home .feature-heading{font-size:16px}
}
@media(max-height:700px) and (max-width:760px){
 body.ui15.simplan-onboarding .step{padding-top:7px}
 body.ui15.simplan-onboarding .track{margin:5px 0 12px}
 body.ui15.simplan-onboarding .step .desc{margin:7px 0 12px}
 body.ui15.simplan-onboarding .option{min-height:56px;padding:8px 12px}
 body.ui15.simplan-onboarding .options{gap:6px}
 body.ui15.simplan-onboarding .budget-choice{min-height:60px}
}
/* Desktop only: don't keep the mobile bottom navigation floating in the content. */
@media(min-width:761px){body.ui15 .mobile-tabs,body.ui15.simplan-landing .mobile-tabs{display:none!important}}

body.ui15.simplan-onboarding .option.is-selected,body.ui15.simplan-onboarding .budget-choice.is-selected{background:#edf4ff;border-color:#2563eb;color:#1d4ed8}

/* v31 integration: the five destinations remain available on desktop too. */
@media(min-width:761px){body.ui15 .mobile-tabs,body.ui15.simplan-landing .mobile-tabs{display:grid!important;position:static!important;transform:none!important;width:100%!important;max-width:1120px!important;margin:0 auto!important;height:76px!important}}
body.ui15 .ui15-price-block .later{max-width:100%;text-align:left}
body.ui15 .ui15-discount-badge{font-size:14px}
body.ui15 .ui15-reference-price>span{font-size:12px}
body.ui15 .original-price{font-size:16px}
body.ui15 .review-conditions{font-size:13px;line-height:1.75}
