.planning-entry{max-width:1128px;margin:0 auto 28px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:24px 28px;border:1px solid #bcd3ea;border-radius:16px;background:#eef5fc}
.planning-entry h2{font-size:1.35rem;margin-bottom:7px}.planning-entry p{margin:0;max-width:720px;color:#4f6174}.planning-entry .button{flex:none}
.family-builder-heading{max-width:1200px;margin:0 auto 18px;padding:0 36px;font-size:1.25rem}
.planning-flow{position:absolute;inset:0;overflow:auto;background:#f5f7fa;z-index:15;overscroll-behavior:contain}
.planning-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:18px max(24px,calc((100% - 1000px)/2));background:white;border-bottom:1px solid #e0e6ed}
.planning-header strong{font-size:.85rem;letter-spacing:.04em}.planning-header>span{color:#54708e;font-size:.88rem}
.planning-content{max-width:900px;margin:auto;padding:24px 24px 40px}.planning-steps{display:flex;justify-content:space-between;gap:8px;margin-bottom:20px;color:#657384;font-size:.85rem}.planning-steps span{padding:10px 12px;border-radius:8px}.planning-steps [aria-current]{color:#075ebe;background:#e3eefd;font-weight:650}
.planning-card{background:white;border:1px solid #e0e6ed;border-radius:18px;padding:32px}.planning-card h1{font-size:clamp(1.8rem,3vw,2.4rem);margin-bottom:15px}.planning-card>p{color:#536275}.planning-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 20px;margin-top:24px}.planning-fields label{display:flex;flex-direction:column;gap:9px;font-weight:600;font-size:.9rem;min-width:0}.planning-wide{grid-column:1/-1}
.planning-flow input:not([type=checkbox]),.planning-flow select,.planning-flow textarea{width:100%;min-width:0;padding:12px;border:1px solid #cdd7e1;border-radius:9px;background:#fff;font-weight:400;font-size:16px}.planning-flow textarea{resize:vertical}.planning-flow input[type=checkbox]{width:20px;height:20px;flex:none;accent-color:#0866f0}
.planning-equipment{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:18px 0;border:0}.planning-equipment legend{font-size:.85rem;color:#536275}.planning-equipment label,.planning-check{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #dce4ee;border-radius:9px;font-size:.9rem}.planning-equipment label:has(:checked){background:#eaf3ff;border-color:#83ace0}.planning-check{background:#f3f6fa}
.planning-review,.planning-artwork{margin-top:25px;padding:20px;border:1px solid #dce4ee;border-radius:12px}.planning-flow summary{font-weight:600;cursor:pointer}.planning-review dl{margin-bottom:18px}.planning-review dl>div{display:grid;grid-template-columns:155px 1fr;gap:14px;border-bottom:1px solid #e6ebf1;padding:10px 0;font-size:.88rem}.planning-review dt{color:#536275}.planning-review dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.planning-artwork .branding-packet{border:0;padding:20px 0 0;margin:0}.planning-actions{display:flex;justify-content:space-between;gap:15px;margin-top:20px}.planning-actions .primary{min-width:190px}#planningStatus{font-size:.85rem;color:#617083;margin:16px 0 0}.planning-error{color:#ae2430!important}.planning-received{color:#18754e;margin:18px 0 0}.planning-flow .field-error{color:#ae2430;font-weight:400}
.sheet-equipment-map{display:block;width:100%;height:auto;stroke:none}.sheet-map-key{display:grid;grid-template-columns:1fr 1fr;gap:20px;list-style:none;padding:0}.sheet-map-key li{break-inside:avoid}.sheet-map-key strong,.sheet-map-key span{display:block;overflow-wrap:anywhere}.sheet-map-key span{font-size:9pt;color:#4c5869;margin-top:5px}.sheet-map-page{break-before:page;break-after:page}.sheet-equipment-map text{stroke:none}
.fallback-equipment.wall-shelf{background:rgba(209,227,248,.24);border-style:dashed;border-color:#587999}.fallback-equipment.wall-shelf .plan-number{background:#f4f8fd;border-radius:3px;padding:2px;color:#344e6b}.fallback-equipment.wall-shelf.selected{background:rgba(163,205,249,.45)}
.fallback-equipment span.plan-number b{display:inline}
@media(max-width:700px){.planning-entry{margin:0 20px 24px;padding:22px;display:block}.planning-entry .button{margin-top:18px;width:100%}.family-builder-heading{padding:0 22px;font-size:1.1rem}.planning-header{padding:12px 16px;gap:12px}.planning-header>span{display:none}.planning-content{padding:16px 14px 28px}.planning-card{padding:22px 18px}.planning-fields{grid-template-columns:1fr;gap:20px}.planning-equipment{grid-template-columns:1fr 1fr}.planning-steps{gap:3px;font-size:.73rem}.planning-steps span{padding:8px 5px}.planning-review dl>div{grid-template-columns:1fr;gap:4px}.planning-actions .primary{min-width:0}.planning-artwork,.planning-review{padding:15px}}
@media print{.sheet-equipment-map{height:3.4in}.sheet-map-page h2{margin-top:0}.sheet-map-key{gap:20px 24px}.sheet-map-key strong{font-size:10pt}}
/* Questionnaire first, with navigation outside the scrolling answers. */
.planning-entry{border-color:#c4b2e0;background:#f2ecfb}
.planning-entry-label{display:block;font-size:.875rem;font-weight:650;letter-spacing:.035em;color:#67418e;margin-bottom:10px}
.planning-entry p{font-size:1rem;color:#564d64}
.family-builder-heading span{display:block;font-size:1rem;font-weight:400;letter-spacing:0;color:#62586e;margin-top:8px}
.planning-flow{display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}
.planning-header{position:static;min-width:0;padding:12px max(16px,calc((100% - 900px)/2));gap:16px}
.planning-header strong{min-width:0;font-size:.875rem;letter-spacing:.01em}
.planning-content{width:100%;height:100%;max-width:none;min-height:0;margin:0;overflow:auto;overscroll-behavior:contain;padding:20px max(16px,calc((100% - 900px)/2)) 28px;scroll-padding-block:20px}
.planning-steps{font-size:.875rem;gap:8px}
.planning-steps button{min-height:48px;padding:10px 12px;border-radius:8px;text-align:left;line-height:1.35;flex:1;color:#635a70}
.planning-steps button[aria-current]{color:#58317e;background:#eee5fa;font-weight:650}
.planning-steps button:disabled{opacity:1;color:#776d84}
.planning-actions{margin:0;background:white;border-top:1px solid #e0d8ea;align-items:center;min-width:0;padding:12px max(16px,calc((100% - 900px)/2)) max(12px,env(safe-area-inset-bottom));gap:12px;box-shadow:0 -4px 20px #36204a08}
.planning-actions>span{font-size:.875rem;color:#64586f;white-space:nowrap}
.planning-actions .button{min-height:48px;white-space:normal;line-height:1.35}
.planning-actions .primary{min-width:0;max-width:240px}
.planning-equipment label{min-height:48px;cursor:pointer}
.planning-flow .estimate-acknowledgment{cursor:pointer}
@media(max-width:700px){
 .family-hero{margin-block:18px 22px}
 .family-hero h1{font-size:1.85rem}
 .start-new-note{font-size:.875rem!important;margin-bottom:0}
 .planning-entry{margin-inline:16px;padding:20px}
 .planning-header{padding:10px 14px;gap:10px}
 .planning-header strong{font-size:.875rem}
 .planning-header .button{padding:10px;min-width:0}
 .planning-content{padding:16px 14px 24px}
 .planning-card{padding:22px 18px}
 .planning-card h1{font-size:1.7rem;line-height:1.22}
 .planning-steps{font-size:.875rem;display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:16px}
 .planning-steps button{padding:8px;min-height:44px}
 .planning-fields label,.planning-check,.planning-equipment label{font-size:1rem}
 .planning-actions{padding-inline:14px;gap:8px}
 .planning-actions>span{display:none}
 .planning-actions>.button{flex:1 1 38%;padding-inline:10px}
 .planning-actions>.primary{flex-basis:62%}
 .planning-equipment{grid-template-columns:1fr}
}
@media(max-width:360px){.planning-header strong{max-width:100px;font-size:.8125rem;line-height:1.3}.planning-card{padding:20px 14px}.planning-content{padding-inline:12px}.planning-entry-label{font-size:.8125rem}}
@media(max-height:560px){.planning-header{padding-block:6px}.planning-actions{padding-block:8px}.planning-steps{display:flex}.planning-steps button{padding:8px;min-height:44px}.planning-card h1{font-size:1.65rem}}
