/* Website planner: independent of the contact form and site-wide theme. */
.build-planner {background:#0b202e;border-block:1px solid #456275;}
.planner-layout {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;align-items:start;}
#buildForm {min-width:0;margin:0;padding:30px;border:1px solid #456275;border-radius:8px;background:#112b3c;}
#buildForm fieldset {border:0;padding:0;margin:0 0 28px;min-width:0;}
#buildForm legend {font-size:20px;font-weight:600;letter-spacing:-.4px;margin-bottom:20px;color:#f2f7fb;}
#buildForm legend span {font-size:11px;color:#8edcff;display:block;letter-spacing:1.4px;margin-bottom:5px;}
#buildForm label {font-size:14px;display:block;margin:16px 0 8px;}
#buildForm select,#buildForm input[type=text],#buildForm textarea {width:100%;color:#f2f7fb;background:#081b29;border:1px solid #688291;border-radius:4px;padding:12px;font:inherit;font-size:16px;min-height:48px;}
#buildForm textarea {min-height:95px;resize:vertical;}
#buildForm .choice {display:flex;align-items:start;gap:12px;margin:0;padding:11px 0;cursor:pointer;min-height:44px;line-height:1.5;}
#buildForm .choice input {appearance:auto;flex:0 0 20px;width:20px;height:20px;min-height:0;margin:1px 0 0;padding:0;accent-color:#8edcff;}
.planner-help {color:#b9cedb;font-size:12px;line-height:1.7;margin:8px 0 14px;}
#buildForm #automationFields {margin-top:24px;border-left:2px solid #90c6b8;padding-left:18px;}
#automationFields legend {font-size:15px;}
.planner-actions {display:flex;align-items:center;flex-wrap:wrap;gap:18px;}
.planner-reset {border:0;background:none;color:#c3dbe9;text-decoration:underline;text-underline-offset:4px;min-height:44px;padding:10px;cursor:pointer;font:inherit;font-size:13px;}
.build-result {border:1px solid #6a948d;border-radius:8px;background:linear-gradient(135deg,#183c3d,#102935);padding:30px;min-width:0;}
.build-result h3 {font-size:25px;letter-spacing:-.6px;margin:0 0 24px;}
.build-result h4 {font-size:16px;margin:24px 0 10px;}
.build-result dl {margin:0;}.build-result dt {font-size:12px;color:#c5e2da;margin:20px 0 8px;}
.build-result dd {margin:0;}.build-result dd strong,.build-result dd span {display:block;}
.build-result dd strong {font-size:18px;font-weight:500;}
.build-result dd span {font-size:30px;line-height:1.3;letter-spacing:-.6px;margin-top:8px;color:#e0f6ef;}
.build-result ul {padding-left:18px;font-size:13px;color:#d1e1e6;line-height:1.75;}
.build-result li {margin-bottom:10px;}
.build-result .estimate-note {border-top:1px solid #779a9766;margin-top:24px;padding-top:18px;font-size:12px;color:#c5dce3;}
#buildHandoff {padding:14px;border:1px solid #759ba8;background:#0d303b;color:#e4f5fb;font-size:13px;}
.sr-only {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
#buildForm[hidden],#buildResult[hidden],#automationFields[hidden],#buildFallback[hidden],#buildHandoff[hidden] {display:none;}
select:focus-visible {outline:3px solid #43baff;outline-offset:4px;}
@media(max-width:800px) {.planner-layout {grid-template-columns:1fr;}#buildForm,.build-result {padding:24px;}}
@media(max-width:380px) {#buildForm,.build-result {padding:18px;}.planner-actions .button {width:100%;justify-content:center;}}
