/* Quiet, wrapping controls and readable records across the three planning tools. */
.planning-page{--plan-green:#344d40;--plan-line:#d8d4ca;--plan-soft:#eeeae1;color:#2c2a29;font-size:1rem;line-height:1.75;min-width:0}
.planning-page [hidden]{display:none!important}
.planning-page .plan-hero{padding:20px 0 28px;max-width:760px;border-bottom:1px solid var(--plan-line)}
.planning-page .plan-hero h1{font-size:clamp(2rem,3.6vw,2.8rem);line-height:1.4;letter-spacing:.01em;margin:14px 0 18px;filter:none;animation:none}
.planning-page .plan-hero .plan-hero-hook{font-size:clamp(1.35rem,2.8vw,2.15rem);line-height:1.5;font-weight:500;margin:12px 0 16px}
.planning-page .plan-hero .plan-hero-hook strong{font-weight:650;color:#344d40}
.planning-page .plan-hero>p:not(.plan-kicker){max-width:39em;margin:12px 0 20px}
body.guide-sidebar .planning-page .plan-hero>p{font-size:1rem;line-height:1.8}
body.guide-sidebar .planning-page .plan-hero>.plan-kicker{font-size:.875rem;margin:0 0 10px}
.planning-page .plan-kicker{font-size:.875rem;letter-spacing:.06em;color:#626759;margin:0 0 10px}
.planning-page .plan-section{padding:34px 0;border-bottom:1px solid var(--plan-line);min-width:0;scroll-margin-top:var(--sticky-offset,130px)}
.planning-page h2{font-size:clamp(1.4rem,2.2vw,1.8rem);line-height:1.5;letter-spacing:.01em;margin:0 0 16px;overflow-wrap:anywhere}
.planning-page h3{font-size:1.125rem;line-height:1.6;margin:0 0 9px;overflow-wrap:anywhere}
.planning-page p{margin:12px 0;max-width:100%;overflow-wrap:anywhere}
.planning-page .plan-lead,.planning-page .plan-fine{color:#64645d}
.planning-page .plan-fine{font-size:.875rem;line-height:1.7}
.planning-page .plan-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:20px 0 4px}
.planning-page .plan-primary,.planning-page .plan-secondary{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:11px 20px;line-height:1.5;text-align:center;white-space:normal;border-radius:28px;text-decoration:none;font-size:1rem;font-weight:600;max-width:100%;cursor:pointer;border:1px solid var(--plan-green);box-sizing:border-box}
.planning-page .plan-primary{color:#fff;background:var(--plan-green)}
.planning-page .plan-secondary{color:var(--plan-green);background:transparent}
.planning-page button:disabled{opacity:.45;cursor:default}
.planning-page :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #987a43;outline-offset:4px}
.planning-page .plan-notice{padding:16px 20px;background:var(--plan-soft);font-size:.875rem;line-height:1.75;border-left:3px solid #8e927e;margin:24px 0}
.planning-page .plan-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 24px}
.planning-page .plan-picker button,.planning-page .plan-symptoms button{min-width:0;min-height:52px;border:1px solid var(--plan-line);border-radius:8px;background:#faf9f6;color:#343b31;padding:14px;text-align:left;white-space:normal;font-size:1rem;line-height:1.5;cursor:pointer}
.planning-page .plan-picker button strong{display:block;font-size:1rem}
.planning-page .plan-picker button span{display:block;font-size:.875rem;color:#646b60;margin-top:5px;font-weight:400}
.planning-page .old-stage-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:20px 0}
.planning-page .old-stage-picker button{display:flex;align-items:center;gap:12px;min-width:0;min-height:54px;text-align:left;padding:10px 14px;border:1px solid var(--plan-line);border-radius:6px;background:rgba(252,250,246,.85);color:#292824;font:inherit;cursor:pointer}
.planning-page .old-stage-picker button span{color:#687565;font-variant-numeric:tabular-nums}
.planning-page .old-stage-picker button strong{font-size:.96rem;line-height:1.45;font-weight:600}
.planning-page .old-stage-picker button[aria-pressed=true]{background:#e2e9df;border-color:var(--plan-green);box-shadow:inset 3px 0 0 var(--plan-green)}
.planning-page .old-stage-panel{max-width:780px;padding:clamp(18px,3vw,30px);border:1px solid var(--plan-line);background:rgba(252,250,246,.9)}
.planning-page .old-stage-panel h3{font-size:clamp(1.25rem,2vw,1.55rem)}
.planning-page .old-stage-panel dl{margin:18px 0;border-top:1px solid var(--plan-line)}
.planning-page .old-stage-panel dt{font-weight:650;color:var(--plan-green);margin-top:15px}
.planning-page .old-stage-panel dd{margin:3px 0 0;line-height:1.7}
.planning-page .old-stage-question{margin:22px 0 18px;padding:15px 18px;border-left:3px solid #7b8b74;background:#edf0e8}
.planning-page .old-stage-question p{margin:7px 0 14px}
.planning-page .old-stage-question [role=status]{display:block;margin-top:8px;color:var(--plan-green)}
.planning-page .old-stage-panel>a{color:var(--plan-green);font-weight:600}
.planning-page .old100-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0}
.planning-page .old100-groups button{min-width:0;min-height:48px;text-align:left;padding:10px 14px;border:1px solid var(--plan-line);border-radius:6px;background:rgba(252,250,246,.86);color:#292824;font:inherit;line-height:1.5;cursor:pointer;overflow-wrap:anywhere}
.planning-page .old100-groups button[aria-pressed=true]{background:#e2e9df;border-color:var(--plan-green);box-shadow:inset 3px 0 0 var(--plan-green)}
.planning-page .old100-results{max-width:800px;border-top:1px solid var(--plan-line)}
.planning-page .old100-item{border-bottom:1px solid var(--plan-line);min-width:0}
.planning-page .old100-item summary{display:flex;align-items:baseline;gap:16px;min-height:52px;padding:12px 4px;cursor:pointer;line-height:1.5;list-style:none}
.planning-page .old100-item summary::-webkit-details-marker{display:none}
.planning-page .old100-item summary:after{content:'＋';margin-left:auto;color:var(--plan-green)}
.planning-page .old100-item[open] summary:after{content:'−'}
.planning-page .old100-item summary small{color:#70806b;font-variant-numeric:tabular-nums;flex:none}
.planning-page .old100-item summary strong{font-weight:600;overflow-wrap:anywhere}
.planning-page .old100-body{padding:0 16px 18px 42px;background:rgba(252,250,246,.72)}
.planning-page .old100-body p{margin:0;padding:12px 0;border-top:1px solid var(--plan-line)}
.planning-page .old100-body button{margin-top:14px}
.planning-page :is(.plan-picker,.plan-symptoms) button[aria-pressed=true]{background:#e2e9df;border-color:var(--plan-green);box-shadow:inset 0 -3px 0 var(--plan-green)}
.planning-page .plan-field{display:block;margin:18px 0;font-size:1rem;font-weight:600}
.planning-page :is(input:not([type=checkbox]):not([type=hidden]),select,textarea){width:100%;max-width:100%;min-width:0;box-sizing:border-box;border:1px solid #aaa998;border-radius:6px;background:#fffefa;color:#2c2a29;font:inherit;padding:11px 12px;min-height:46px;margin-top:7px}
.planning-page textarea{resize:vertical}
.planning-page input[type=checkbox]{appearance:auto!important;width:20px;height:20px;min-width:20px;min-height:20px;accent-color:var(--plan-green);margin:3px 10px 0 0;flex-shrink:0}
.planning-page :is(.device-card,.plan-callout){border:1px solid var(--plan-line);border-radius:8px;padding:24px;background:#fffefa}
.planning-page .plan-card-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.planning-page .plan-card-heading h3{font-size:1.45rem;margin:0}
.planning-page :is(#device-facts,.plan-facts){display:grid;grid-template-columns:115px minmax(0,1fr);margin:18px 0 0;gap:0}
.planning-page :is(#device-facts,.plan-facts) dt,.planning-page :is(#device-facts,.plan-facts) dd{padding:13px 0;border-top:1px solid var(--plan-line);margin:0;min-width:0;overflow-wrap:anywhere}
.planning-page :is(#device-facts,.plan-facts) dt{font-weight:600;color:#565e51;padding-right:15px}
.planning-page #device-facts dd:first-of-type{font-size:1.3rem;font-weight:700;color:var(--plan-green)}
.planning-page .plan-checks{border:0;padding:0;margin:20px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.planning-page .plan-checks legend{margin-bottom:12px;font-weight:600}
.planning-page .plan-checks label{display:flex;align-items:flex-start;min-width:0;min-height:48px;padding:12px;background:#eeeae1;border-radius:5px;box-sizing:border-box}
.planning-page .plan-output{display:block;padding:20px;background:#e2e9df;border-left:3px solid var(--plan-green);font-size:1.05rem;line-height:1.75;white-space:pre-line;margin:18px 0}
.planning-page .plan-emphasis{font-size:1.35rem;color:var(--plan-green);font-weight:600;padding:14px 0}
.planning-page .plan-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.planning-page .plan-pair article{border-top:3px solid #82917b;background:#eeeae1;padding:20px}
.planning-page .plan-details{margin:16px 0;border:1px solid var(--plan-line);border-radius:6px;background:transparent;min-width:0}
.planning-page .plan-details summary{padding:15px 18px;min-height:48px;box-sizing:border-box;font-weight:600;font-size:1rem;cursor:pointer;line-height:1.5;list-style:revert}
.planning-page .plan-details>div{padding:0 18px 16px;min-width:0}
.planning-page .plan-details li{margin:12px 0}
.planning-page .plan-details ul{padding-left:22px}
.planning-page .plan-details[open] summary{border-bottom:1px solid var(--plan-line);margin-bottom:14px}
.planning-page .plan-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.planning-page .socket-lookup{padding:20px;border:1px solid var(--plan-line);border-radius:6px;min-width:0}
.planning-page .socket-lookup>strong{font-size:1.5rem;color:var(--plan-green);font-variant-numeric:tabular-nums}
.planning-page .plan-quote{margin:32px 0;padding:12px 0 12px 22px;border-left:3px solid #84917c;max-width:43em}
.planning-page .plan-quote strong{font-size:1.35rem;line-height:1.7;color:var(--plan-green)}
.planning-page .plan-closing{padding:28px;background:#e6ebdf;border-radius:8px;margin:32px 0}
.planning-page .plan-form,.planning-page .equipment-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px}
.planning-page .plan-form label{display:block;font-weight:500;min-width:0}
.planning-page .plan-form>:is(.plan-actions,p){grid-column:1/-1}
.planning-page .equipment-record{padding:20px;border:1px solid var(--plan-line);border-radius:8px;margin:16px 0;background:#fffefa}
.planning-page .equipment-record summary{font-size:1.05rem;font-weight:600;cursor:pointer;min-height:44px;line-height:1.6;overflow-wrap:anywhere}
.planning-page .equipment-fields{padding-top:14px}
.planning-page .plan-inline-check{display:flex!important;align-items:flex-start;font-weight:400!important;min-height:44px;margin:12px 0}
.planning-page .plan-file{display:block;margin:22px 0;font-size:.875rem}
.planning-page .plan-file input{max-width:420px;font-size:.875rem}
.planning-page .plan-popular{display:grid;gap:0;border-top:1px solid var(--plan-line)}
.planning-page .plan-popular a{display:flex;align-items:center;gap:16px;padding:15px 8px;color:#344d40;border-bottom:1px solid var(--plan-line);text-decoration:none;min-height:48px;box-sizing:border-box}
.planning-page .plan-popular a span{font-variant-numeric:tabular-nums;color:#7d7e6d;font-size:.875rem}
.planning-page .faq-state-picker{grid-template-columns:repeat(2,minmax(0,1fr))}
.planning-page .plan-question{padding:22px 0;border-top:1px solid var(--plan-line);scroll-margin-top:var(--sticky-offset,130px)}
.planning-page .plan-question .plan-answer{color:#344d40;font-weight:500;margin:8px 0 14px}
.planning-page .plan-question>.plan-details{margin-bottom:0}
.planning-page .plan-fees{display:grid;gap:7px;padding:24px;border:1px solid #83917c;border-radius:8px;text-decoration:none;color:#344d40;margin:32px 0}
.planning-page .plan-fees strong{font-size:1.35rem}
.planning-page .faq-result{display:block;padding:16px 0;border-bottom:1px solid var(--plan-line);color:inherit;text-decoration:none}
.planning-page .faq-result strong,.planning-page .faq-result span{display:block}
.planning-page .faq-result small{color:#63705e;font-size:.875rem}
.planning-page .plan-priority{list-style:none;padding:0;margin:0}
.planning-page .plan-priority li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;padding:18px 0;border-bottom:1px solid var(--plan-line)}
.planning-page .plan-priority li>span{font-size:1.5rem;color:#7a866f}
.planning-page .plan-priority small{font-size:.875rem;color:#626b5a}
.planning-page .plan-priority p{margin-bottom:0}
.planning-page .plan-symptoms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0}
.planning-page .plan-steps{padding-left:24px}
.planning-page .plan-steps li{padding:9px 0}
.planning-page .plan-math{padding:16px;background:#e4e9de;font-variant-numeric:tabular-nums}
.planning-page .old-record{padding:22px 0;border-bottom:1px solid var(--plan-line)}
.planning-page .old-record p{white-space:pre-wrap}
.planning-page .old-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
.planning-page .old-photos img{max-width:100%;width:100%;height:150px;object-fit:contain;background:#e9e7df;border-radius:6px}
.planning-page .plan-progress{display:flex;gap:18px;align-items:center;margin:20px 0}
.planning-page .plan-progress progress{accent-color:var(--plan-green);width:160px;max-width:50%}
.planning-page [data-old-step]{padding:0;border:0;min-width:0}
.planning-page [data-old-step] legend{font-size:1.2rem;font-weight:600;line-height:1.6;margin-bottom:14px}
.planning-page #old-priority-output{margin-top:22px}
.planning-page #power-current{padding:8px 0;border:0}
.planning-page .voltage-form{width:100%;max-width:100%;box-sizing:border-box;padding:20px}
@media(max-width:700px){
 .planning-page .old-stage-picker{grid-template-columns:minmax(0,1fr)}
 .planning-page .old-stage-picker button{min-height:50px}
 .planning-page .old100-groups{grid-template-columns:minmax(0,1fr)}
 .planning-page .old100-body{padding-left:16px}
 .planning-page .plan-section{padding:28px 0}
 .planning-page .plan-hero h1{font-size:2rem}
 .planning-page .plan-picker{grid-template-columns:repeat(2,minmax(0,1fr))}
 .planning-page .plan-picker button{padding:13px 11px}
 .planning-page .plan-card-grid,.planning-page .plan-form,.planning-page .plan-pair{grid-template-columns:minmax(0,1fr)}
 .planning-page :is(.device-card,.plan-callout){padding:18px}
 .planning-page :is(#device-facts,.plan-facts){grid-template-columns:94px minmax(0,1fr)}
 .planning-page .equipment-fields{grid-template-columns:minmax(0,1fr)}
 .planning-page .equipment-record{padding:16px}
 .planning-page .plan-closing{padding:22px 18px}
 .planning-page #electrical-final .plan-checks{grid-template-columns:minmax(0,1fr)}
 .planning-page .plan-card-heading .plan-primary{width:100%}
}
@media(max-width:360px){.planning-page .plan-picker,.planning-page .plan-symptoms,.planning-page .plan-checks{grid-template-columns:minmax(0,1fr)}.planning-page :is(#device-facts,.plan-facts){grid-template-columns:minmax(0,1fr)}.planning-page :is(#device-facts,.plan-facts) dd{border-top:0;padding-top:0}}
@media print{.planning-page button,.planning-page .plan-actions,.planning-page .plan-picker{display:none!important}}
