:root{--ink:#111827;--muted:#66758a;--line:#d8dee7;--soft:#edf0f4;--accent:#f7c948;--teal:#0f766e;color:var(--ink);background:#dfe3e8;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;overflow:hidden}button,input,select{font:inherit}button{color:inherit;cursor:pointer}.hidden{display:none}.app{grid-template-rows:66px minmax(0,1fr) 30px;min-width:320px;height:100dvh;display:grid}.header{color:#fff;z-index:30;background:#111820;border-bottom:1px solid #080d12;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:20px;padding:0 15px;display:grid}.brand{align-items:center;gap:10px;min-width:250px;display:flex}.brand-mark{background:var(--accent);color:#111827;border-radius:7px;justify-content:center;align-items:center;width:36px;height:36px;font-size:21px;display:flex}.brand div{display:grid}.brand small{color:#93a0ae;letter-spacing:.15em;text-transform:uppercase;margin-bottom:3px;font-size:8px;font-weight:800}.brand strong{font-size:16px;line-height:1}.brand em{color:#b4bec9;letter-spacing:.06em;background:#2c3642;border-radius:3px;margin-left:6px;padding:3px 5px;font-size:8px;font-style:normal}.project-name{justify-self:center;align-items:center;gap:10px;width:100%;max-width:500px;display:flex}.project-name span{color:#8996a5;text-transform:uppercase;font-size:9px;font-weight:800}.project-name input{color:#eef2f7;background:#1b2430;border:1px solid #344253;border-radius:6px;width:100%;min-width:0;height:35px;padding:0 11px;font-size:12px;font-weight:700}.header-actions{gap:6px;display:flex}.header-actions button,.mobile-menu{color:#d0d8e1;background:0 0;border:1px solid #364352;border-radius:6px;justify-content:center;align-items:center;gap:6px;height:34px;padding:0 9px;font-size:10px;font-weight:800;display:flex}.header-actions .save{background:var(--accent);border-color:var(--accent);color:#17202a}.mobile-menu{display:none}.workspace{grid-template-columns:0 minmax(0,1fr) 0;min-height:0;display:grid;overflow:hidden}.workspace.left-open{grid-template-columns:244px minmax(0,1fr) 0}.workspace.right-open{grid-template-columns:0 minmax(0,1fr) 310px}.workspace.left-open.right-open{grid-template-columns:244px minmax(0,1fr) 310px}.left-panel,.right-panel{z-index:20;background:#fff;min-width:0;overflow:auto}.left-panel{border-right:1px solid #cbd3dd;transform:translate(-100%)}.right-panel{border-left:1px solid #cbd3dd;transform:translate(100%)}.left-open .left-panel,.right-open .right-panel{transform:none}.panel-section,.right-section{border-bottom:1px solid var(--soft);padding:14px 13px}.panel-section h3,.right-section h3{color:#5e6c7f;letter-spacing:.09em;text-transform:uppercase;margin:0 0 10px;font-size:9px;font-weight:900}.tool-grid{grid-template-columns:1fr 1fr;gap:5px;display:grid}.tool-button{color:#475569;text-align:left;background:#f8fafc;border:1px solid #dbe1e8;border-radius:7px;grid-template-columns:23px 1fr auto;align-items:center;gap:5px;height:38px;padding:0 7px;font-size:10px;font-weight:800;display:grid}.tool-button:last-child{grid-column:1/-1}.tool-button.active{color:#1f2937;background:#fff8e3;border-color:#e4bd3d;box-shadow:inset 3px 0 #dca80b}.tool-glyph{text-align:center;font-size:15px}.tool-button kbd{color:#7f8a98;background:#e8ecf0;border-radius:3px;padding:2px 3px;font:8px Arial}.section-title{justify-content:space-between;align-items:center;display:flex}.section-title>button{color:#1d5ba7;background:0 0;border:0;font-size:9px;font-weight:900}.symbol-list{gap:4px;display:grid}.symbol-row{text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:31px 1fr 27px;align-items:center;gap:8px;min-height:44px;padding:5px;display:grid}.symbol-row:hover{background:#f7f9fb;border-color:#e1e6ec}.symbol-row.active{background:#fff8e3;border-color:#e5cd75}.symbol-swatch{border:1px solid #0f172a80;justify-content:center;align-items:center;width:27px;height:27px;font-size:9px;font-weight:900;display:flex}.symbol-swatch.circle{border-radius:50%}.symbol-swatch.square{border-radius:2px}.symbol-swatch.diamond{border-radius:2px;transform:rotate(45deg)scale(.78)}.symbol-swatch.tag{border-radius:5px;width:31px}.symbol-copy{min-width:0;display:grid}.symbol-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.symbol-copy small{color:#8a96a5;margin-top:3px;font-size:8px}.symbol-row>b{color:#475569;background:#e9edf2;border-radius:5px;justify-content:center;align-items:center;height:25px;font-size:10px;display:flex}.layer-row{color:#536175;text-align:left;background:0 0;border:0;grid-template-columns:16px 1fr auto;align-items:center;gap:8px;width:100%;padding:6px 2px;font-size:10px;display:grid}.drawing-area{grid-template-rows:44px minmax(0,1fr) 64px;min-width:0;display:grid;overflow:hidden}.canvas-toolbar{z-index:10;background:#f8fafb;border-bottom:1px solid #c8d0da;justify-content:space-between;align-items:center;padding:0 9px;display:flex}.canvas-toolbar>div{gap:5px;display:flex}.icon-button,.zoom,.toolbar-button{color:#475569;background:#fff;border:1px solid #d3dae3;border-radius:5px;height:29px}.icon-button{width:29px;font-size:16px}.zoom{min-width:46px;font-size:9px;font-weight:800}.toolbar-button{padding:0 8px;font-size:9px;font-weight:800}.scale-chip{color:#a33d30;background:#fff1ef;border:1px solid #efc6bf;border-radius:999px;padding:7px 9px;font-size:8px;font-weight:900}.scale-chip.ready{color:#14715a;background:#eaf7f1;border-color:#b8ddcd}.canvas-shell{touch-action:none;background:#e8ebef;min-height:0;position:relative;overflow:hidden}.canvas-shell canvas{width:100%;height:100%;display:block}.tool-pan canvas{cursor:grab}.tool-count canvas,.tool-measure canvas,.tool-calibrate canvas{cursor:crosshair}.empty-state{text-align:center;max-width:390px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.upload-mark{color:#765500;background:#fff3c7;border:1px solid #ead17b;border-radius:12px;justify-content:center;align-items:center;width:54px;height:54px;margin:0 auto 14px;font-size:25px;display:flex}.empty-state>small{color:#8b97a6;letter-spacing:.15em;font-size:8px;font-weight:900}.empty-state h1{letter-spacing:-.03em;margin:5px 0 9px;font-size:24px}.empty-state p{color:#68768a;max-width:330px;margin:0 auto 15px;font-size:11px;line-height:1.6}.empty-state button{color:#fff;background:#1f2937;border:0;border-radius:7px;height:38px;padding:0 16px;font-size:10px;font-weight:900}.empty-state em{color:#8b97a6;margin-top:9px;font-size:8px;font-style:normal;display:block}.importing{color:#fff;background:#111827de;border-radius:8px;align-items:center;gap:9px;padding:12px 15px;font-size:10px;font-weight:800;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.importing span{border:2px solid #566170;border-top-color:var(--accent);border-radius:50%;width:17px;height:17px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.page-strip{background:#f6f8fa;border-top:1px solid #cad2dc;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:7px 9px;display:grid}.drawing-count{color:#7b8796;text-transform:uppercase;font-size:8px;font-weight:900;display:grid}.drawing-count b{color:#263345;font-size:14px}.page-tabs{gap:6px;min-width:0;display:flex;overflow-x:auto}.page-tabs button{background:#fff;border:1px solid #d6dde5;border-radius:6px;flex:none;align-items:center;height:48px;display:flex}.page-tabs>button:not(.add-page){text-align:left;gap:7px;max-width:190px;padding:5px 9px 5px 6px}.page-tabs>button>b{color:#536174;background:#e8ecf1;border-radius:4px;justify-content:center;align-items:center;width:25px;height:31px;font-size:9px;display:flex}.page-tabs>button.active{background:#fff8e3;border-color:#e4c65f}.page-tabs>button.active>b{background:var(--accent)}.page-tabs button>span{min-width:0;display:grid}.page-tabs button strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.page-tabs button small{color:#8a96a5;margin-top:3px;font-size:7px}.add-page{padding:0 11px;font-size:9px;font-weight:900}.summary-header{border-bottom:1px solid var(--line);background:#f8fafb;justify-content:space-between;align-items:flex-start;padding:15px;display:flex}.summary-header small{color:#8995a5;letter-spacing:.14em;font-size:8px;font-weight:900}.summary-header h2{letter-spacing:-.02em;margin:3px 0 0;font-size:16px}.summary-header button{background:#fff;border:1px solid #d5dce5;border-radius:5px;width:29px;height:29px;font-size:18px}.stats{color:#fff;background:#1f2937;grid-template-columns:1fr 1fr;display:grid}.stats>div{border-bottom:1px solid #384453;border-right:1px solid #384453;gap:3px;padding:12px 14px;display:grid}.stats b{font-size:16px}.stats span{color:#a2adba;letter-spacing:.09em;text-transform:uppercase;font-size:7px;font-weight:900}.right-section>label,.two-fields label{gap:4px;margin-bottom:8px;display:grid}.right-section label span{color:#66758a;font-size:8px;font-weight:800}.right-section input,.right-section select{color:#344154;background:#fff;border:1px solid #d5dce5;border-radius:5px;width:100%;min-width:0;height:31px;padding:0 7px;font-size:9px}.two-fields{grid-template-columns:1fr 1fr;gap:8px;display:grid}.conductor-table{border:1px solid #dfe4ea;border-radius:6px;overflow:hidden}.conductor-head,.conductor-row{grid-template-columns:1fr 46px 91px;align-items:center;gap:5px;padding:5px 7px;display:grid}.conductor-head{color:#7b8796;letter-spacing:.08em;text-transform:uppercase;background:#f0f3f6;font-size:7px;font-weight:900}.conductor-row{color:#6a7789;border-top:1px solid #edf0f3;font-size:8px}.conductor-row input,.conductor-row select{height:27px;padding:0 5px}.finish{background:var(--teal);color:#fff;border:0;border-radius:6px;width:100%;height:34px;margin-top:9px;font-size:9px;font-weight:900}.current-drawing>.section-title>b{background:#e9edf2;border-radius:999px;padding:4px 8px;font-size:8px}.current-drawing p{color:#8995a5;font-size:9px;line-height:1.5}.live-row{color:#526074;grid-template-columns:10px 1fr auto;align-items:center;gap:7px;padding:6px 4px;font-size:9px;display:grid}.live-row i{border-radius:50%;width:8px;height:8px}.live-row i.line{border-radius:2px;width:10px;height:3px}.live-row b{color:#2c394b;font-size:8px}.report-actions{grid-template-columns:1fr 1fr;gap:7px;padding:13px;display:grid;position:sticky;bottom:0}.report-actions button{color:#465468;background:#fff;border:1px solid #cfd7e0;border-radius:6px;height:36px;font-size:9px;font-weight:900}.report-actions button:first-child{color:#fff;background:#1f2937;border-color:#1f2937}.status{color:#b9c3ce;background:#17202a;justify-content:space-between;align-items:center;padding:0 12px;font-size:8px;display:flex}.status span{align-items:center;gap:7px;display:flex}.status span>i{background:#54b58f;border-radius:50%;width:6px;height:6px}.status span>b{border-left:1px solid #3a4654;margin-left:4px;padding-left:10px;font-weight:400}.modal{z-index:100;background:#0c121ab3;justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.report{background:#fff;border-radius:11px;grid-template-rows:auto minmax(0,1fr) auto;width:min(1000px,100%);height:min(810px,100dvh - 44px);display:grid;overflow:hidden;box-shadow:0 25px 80px #00000052}.report>header,.report>footer{justify-content:space-between;align-items:center;padding:18px 23px;display:flex}.report>header{border-bottom:1px solid var(--line)}.report>header small{color:#8793a1;letter-spacing:.14em;font-size:8px;font-weight:900}.report>header h2{margin:3px 0;font-size:19px}.report>header span{color:#7c8898;font-size:8px}.report>header button{background:#fff;border:1px solid #d4dbe3;border-radius:5px;width:31px;height:31px;font-size:20px}.report-body{padding:20px 23px;overflow:auto}.report-totals{color:#fff;background:#1f2937;border-radius:8px;grid-template-columns:repeat(4,1fr);margin-bottom:23px;display:grid;overflow:hidden}.report-totals div{border-right:1px solid #3b4655;gap:5px;padding:14px;display:grid}.report-totals span{color:#aab4c0;letter-spacing:.08em;text-transform:uppercase;font-size:7px;font-weight:900}.report-totals b{font-size:17px}.report-body h3{margin:23px 0 9px;font-size:12px}.report-body p{color:#8995a5;font-size:9px}.report table{border-collapse:collapse;width:100%;font-size:9px}.report th{color:#657286;letter-spacing:.05em;text-align:left;text-transform:uppercase;background:#eff2f5;padding:8px;font-size:7px}.report td{color:#435166;border-bottom:1px solid #e5e9ee;padding:9px}.report>footer{border-top:1px solid var(--line);color:#7a8797;background:#f7f9fb;font-size:8px}.report>footer>div{gap:7px;display:flex}.report>footer button{background:#fff;border:1px solid #cfd7e0;border-radius:6px;height:32px;padding:0 10px;font-size:8px;font-weight:900}.report>footer button:last-child{color:#fff;background:#1f2937}@media (width<=1250px){.workspace.left-open.right-open{grid-template-columns:220px minmax(0,1fr) 290px}.workspace.left-open{grid-template-columns:220px minmax(0,1fr) 0}.workspace.right-open{grid-template-columns:0 minmax(0,1fr) 290px}.brand{min-width:205px}.brand small,.header-actions button:not(.save) span{display:none}}@media (width<=960px){.header{grid-template-columns:auto minmax(140px,1fr) auto;gap:9px}.brand{min-width:0}.brand div{display:none}.mobile-menu{display:flex}.workspace,.workspace.left-open,.workspace.right-open,.workspace.left-open.right-open{grid-template-columns:minmax(0,1fr)}.left-panel,.right-panel{z-index:50;width:88vw;max-width:310px;position:fixed;top:66px;bottom:30px}.left-panel{left:0}.right-panel{right:0}.drawing-area{grid-column:1}.status span:last-child b{display:none}}@media (width<=620px){.app{grid-template-rows:58px minmax(0,1fr) 28px}.header{padding:0 7px}.brand-mark{width:34px;height:34px}.project-name>span,.header-actions button:not(.save){display:none}.header-actions .save{width:34px;padding:0;font-size:0}.header-actions .save span{display:none}.left-panel,.right-panel{top:58px}.drawing-area{grid-template-rows:42px minmax(0,1fr) 58px}.scale-chip{display:none}.empty-state{width:calc(100% - 45px)}.empty-state h1{font-size:20px}.drawing-count{display:none}.page-strip{grid-template-columns:1fr}.page-tabs>button:not(.add-page){max-width:145px}.status>span:last-child{display:none}.report-totals{grid-template-columns:1fr 1fr}.report-body{overflow:auto}.report table{min-width:650px}}@media print{body{overflow:visible}.app>:not(.modal){display:none!important}.modal{background:#fff;padding:0;display:block;position:absolute}.report{box-shadow:none;border:0;width:100%;height:auto;overflow:visible}.report-body{overflow:visible}.report>header button,.report>footer button{display:none}}.mode-readout{text-align:right;align-items:flex-end!important;gap:2px!important;display:grid!important}.mode-readout strong{font-size:9px}.mode-readout span{color:#536175;font-size:9px;font-weight:800}.roof-controls label,.selected-panel label{gap:6px;margin-bottom:12px;display:grid}.roof-controls label span,.selected-panel label span{color:#66758a;font-size:9px;font-weight:800}.roof-controls input[type=number]{border:1px solid #d5dce5;border-radius:5px;width:100%;height:34px;padding:0 8px}.roof-controls input[type=range],.selected-panel input[type=range]{width:100%}.turn-panel,.delete-panel{border:0;border-radius:6px;width:100%;height:34px;margin-top:5px;font-size:9px;font-weight:900}.turn-panel{color:#334155;background:#e8eef5}.delete-panel{color:#991b1b;background:#fee2e2}.tool-add-panels canvas{cursor:crosshair}.add-plan-wrap{position:relative}.add-plan-menu{z-index:40;background:#fff;border:1px solid #cfd7e0;border-radius:7px;min-width:190px;display:grid;position:absolute;bottom:52px;right:0;overflow:hidden;box-shadow:0 10px 30px #0f172a33}.add-plan-menu button{text-align:left;border:0;border-bottom:1px solid #edf0f4;align-items:flex-start;height:auto;padding:11px;font-size:10px;font-weight:900;display:grid}.add-plan-menu small{color:#718096;white-space:normal;margin-top:4px;font-size:8px;font-weight:400;line-height:1.4}.select-row{color:#075985;background:#e0f2fe;border:0;border-radius:6px;width:100%;height:34px;margin:0 0 12px;font-size:9px;font-weight:900}.plan-choice-backdrop{z-index:120;background:#0f172a8f;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.plan-choice{background:#fff;border-radius:10px;gap:8px;width:min(390px,100%);padding:16px;display:grid;box-shadow:0 24px 70px #0000004d}.plan-choice header{justify-content:space-between;align-items:center;display:flex}.plan-choice h2{margin:0;font-size:18px}.plan-choice header button{background:#fff;border:1px solid #d5dce5;border-radius:5px;width:32px;height:32px;font-size:20px}.plan-choice>button{text-align:left;background:#f8fafc;border:1px solid #d8dee7;border-radius:8px;gap:5px;padding:14px;display:grid}.plan-choice>button:hover{background:#fff8e3;border-color:#e4c65f}.plan-choice strong{font-size:12px}.plan-choice span{color:#66758a;font-size:10px;line-height:1.45}.managed-symbol-row{cursor:pointer;grid-template-columns:31px minmax(0,1fr) 52px 24px;position:relative}.symbol-find-help{color:#748195;margin:-2px 0 9px;font-size:8px;line-height:1.45}.symbol-find-help strong{color:#725700}.default-symbol-size{color:#66758a;justify-content:space-between;align-items:center;margin:0 0 7px;font-size:8px;font-weight:800;display:flex}.default-symbol-size input{border:1px solid #d5dce5;border-radius:5px;width:50px;height:28px;padding:0 4px;font-size:9px}.page-tabs .plan-tab-wrap{background:#fff;border:1px solid #d6dde5;border-radius:6px;flex:none;align-items:stretch;max-width:210px;height:48px;display:flex;overflow:hidden}.page-tabs .plan-tab-wrap.active{background:#fff8e3;border-color:#e4c65f}.page-tabs .plan-tab-select{text-align:left;background:0 0;border:0;border-radius:0;flex:auto;gap:7px;min-width:0;height:46px;padding:5px 6px;overflow:hidden}.page-tabs .plan-tab-select>span{overflow:hidden}.page-tabs .plan-tab-select strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.page-tabs .plan-tab-select>b{color:#536174;background:#e8ecf1;border-radius:4px;flex:none;justify-content:center;align-items:center;width:25px;height:31px;font-size:9px;display:flex}.page-tabs .plan-tab-wrap.active .plan-tab-select>b{background:var(--accent)}.page-tabs .plan-tab-actions{color:#536174;background:0 0;border:0;border-left:1px solid #1118271a;border-radius:0;flex:0 0 34px;width:34px;min-width:34px;height:46px;padding:0;font-size:15px}.page-tabs .plan-tab-actions:hover{color:#17202a;background:#f2e7b8}.page-tabs .plan-tab-actions:focus-visible{color:#17202a;background:#fff;outline:0;box-shadow:inset 0 0 0 2px #1d5ba7}.delete-plan-dialog p{color:#526074;margin:3px 0 8px;font-size:10px;line-height:1.6}.delete-plan-dialog footer{justify-content:flex-end;gap:8px;display:flex}.delete-plan-dialog footer button{border:1px solid #cfd7e0;border-radius:6px;min-height:35px;padding:0 12px;font-size:9px;font-weight:900}.delete-plan-dialog .confirm-delete-plan{color:#fff;background:#b42318;border-color:#b42318}.symbol-add-bottom{color:#1d5ba7;background:#f8fafc;border:1px solid #cfd7e0;border-radius:6px;width:100%;height:32px;margin-top:7px;font-size:9px;font-weight:900}.symbol-add-bottom:hover,.symbol-add-bottom:focus-visible{background:#eef4fb;border-color:#9fb5d0;outline:none}@media (width>=961px){.symbol-list{gap:2px}.managed-symbol-row{grid-template-columns:24px minmax(0,1fr) 48px 24px;gap:5px;min-height:36px;padding:3px}.managed-symbol-row .symbol-swatch{width:23px;height:23px;font-size:8px}.managed-symbol-row .symbol-swatch.tag{width:24px}.managed-symbol-row .symbol-copy strong{font-size:10px}.managed-symbol-row .symbol-count{width:48px;height:24px;font-size:9px}.managed-symbol-row .symbol-count b{font-size:9px}}.symbol-count{color:#475569;background:#e9edf2;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;gap:3px;width:52px;height:25px;padding:0;font-size:10px;display:flex}.symbol-count b{color:#263345;font-size:10px}.symbol-count:hover:not(:disabled),.symbol-count:focus-visible{background:#fff3c7;border-color:#d8b83d;outline:none}.symbol-count:disabled{cursor:default;opacity:.6}.instance-locator{cursor:default;background:#f8fafc;border:1px solid #cfd7e0;border-radius:6px;grid-column:1/-1;gap:7px;margin-top:3px;padding:8px;display:grid}.instance-locator>div{justify-content:space-between;align-items:center;display:flex}.instance-locator>div strong{color:#536174;letter-spacing:.06em;text-transform:uppercase;font-size:8px}.instance-locator>div button{color:#6b7788;background:0 0;border:0;width:19px;height:19px;padding:0;font-size:15px}.instance-locator>span{color:#1f2937;text-align:center;font-size:11px;font-weight:900}.instance-locator nav{grid-template-columns:1fr 1fr;gap:6px;display:grid}.instance-locator nav button{color:#445267;background:#fff;border:1px solid #cbd3dd;border-radius:5px;height:29px;font-size:8px;font-weight:900}.instance-locator nav button:hover:not(:disabled),.instance-locator nav button:focus-visible{background:#fff8e3;border-color:#d8b83d;outline:none}.instance-highlight{pointer-events:none;z-index:70;border:4px solid #ff8a00;border-radius:50%;width:54px;height:54px;animation:1.5s ease-out forwards instance-pulse;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 5px #ffc40059,0 0 22px #ff8a00e6}@keyframes instance-pulse{0%{opacity:0;transform:translate(-50%,-50%)scale(.55)}18%{opacity:1;transform:translate(-50%,-50%)scale(1.18)}42%{transform:translate(-50%,-50%)scale(.96)}70%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}to{opacity:0;transform:translate(-50%,-50%)scale(1.35)}}.symbol-options{color:#657286;background:0 0;border:0;border-radius:4px;width:24px;height:28px;padding:0;font-size:17px;line-height:1}.symbol-options:hover,.symbol-options:focus-visible{background:#e9edf2;outline:none}.symbol-library-menu{z-index:90;background:#fff;border:1px solid #cbd3dd;border-radius:6px;min-width:142px;padding:4px;display:grid;position:absolute;top:38px;right:3px;box-shadow:0 8px 24px #0f172a33}.symbol-library-menu button{color:#344154;text-align:left;background:0 0;border:0;border-radius:4px;padding:8px 9px;font-size:9px;font-weight:900}.symbol-library-menu button:hover,.symbol-library-menu button:focus-visible{background:#f1f4f7;outline:none}.symbol-library-menu button.delete{color:#b42318}.symbol-library-menu button.used{color:#8a5a16}.symbol-editor-backdrop{z-index:120;background:#0c121ab3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.symbol-editor{background:#fff;border-radius:10px;width:min(470px,100%);overflow:hidden;box-shadow:0 24px 70px #0000004d}.symbol-editor>header,.symbol-editor>footer{justify-content:space-between;align-items:center;padding:15px 18px;display:flex}.symbol-editor>header{border-bottom:1px solid #d8dee7}.symbol-editor>header small{color:#8793a1;letter-spacing:.12em;font-size:8px;font-weight:900}.symbol-editor>header h2{margin:3px 0 0;font-size:17px}.symbol-editor>header button{background:#fff;border:1px solid #d4dbe3;border-radius:5px;width:30px;height:30px;font-size:18px}.symbol-editor-body{gap:11px;padding:18px;display:grid}.symbol-editor label{gap:5px;display:grid}.symbol-editor label span{color:#5f6d80;text-transform:uppercase;font-size:8px;font-weight:900}.symbol-editor input,.symbol-editor select{color:#263345;background:#fff;border:1px solid #cfd7e0;border-radius:5px;width:100%;height:34px;padding:0 8px;font-size:10px}.symbol-editor input[type=color]{padding:3px}.symbol-editor-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.symbol-editor>footer{background:#f7f9fb;border-top:1px solid #d8dee7;justify-content:flex-end;gap:8px}.symbol-editor>footer button{background:#fff;border:1px solid #cfd7e0;border-radius:6px;height:34px;padding:0 12px;font-size:9px;font-weight:900}.symbol-editor>footer button:last-child{color:#fff;background:#1f2937;border-color:#1f2937}.symbol-context-menu{z-index:80;background:#fff;border:1px solid #cbd3dd;border-radius:6px;min-width:108px;padding:4px;position:absolute;box-shadow:0 8px 24px #0f172a38}.symbol-context-menu button{color:#b42318;text-align:left;background:0 0;border:0;border-radius:4px;width:100%;padding:8px 10px;font-size:10px;font-weight:900;display:block}.symbol-context-menu button:hover,.symbol-context-menu button:focus-visible{background:#fff1f0;outline:none}.roof-panel-context-menu{min-width:138px}.roof-panel-context-menu button{color:#263345}.roof-panel-context-menu button:hover,.roof-panel-context-menu button:focus-visible{background:#f1f5f9}.roof-panel-context-menu button.delete{color:#b42318}.roof-row-help-button{color:#536174;background:#fff;border:1px solid #cbd3dd;border-radius:50%;justify-content:center;place-self:center end;align-items:center;width:24px;height:24px;font-size:11px;font-weight:900;display:inline-flex}.selected-roof-heading{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.selected-roof-heading h3{margin:0}.selected-roof-heading b{color:#0f766e;background:#e7f6f3;border:1px solid #a7ddd4;border-radius:999px;padding:4px 7px;font-size:8px}.selected-panel.selected-row{box-shadow:inset 3px 0 #0f766e}.create-row-action{color:#684f00;background:#fff8e3;border:1px solid #d6b747;border-radius:6px;width:100%;height:34px;margin-bottom:12px;font-size:9px;font-weight:900}.create-row-action.active{color:#9f2f21;background:#fff1ef;border-color:#dc8b7d}.create-row-active-card{z-index:76;background:#fff8e3;border:1px solid #d6b747;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;width:max-content;max-width:min(430px,100% - 28px);padding:10px 12px;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%);box-shadow:0 10px 28px #0f172a33}.create-row-active-card div{gap:3px;display:grid}.create-row-active-card strong{color:#4d3b00;font-size:10px}.create-row-active-card span{color:#655b3c;font-size:9px;line-height:1.35}.create-row-active-card button{color:#584500;background:#fff;border:1px solid #b99a31;border-radius:5px;flex:none;height:30px;padding:0 10px;font-size:9px;font-weight:900}.create-row-help-card{z-index:75;background:#fffdf5;border:1px solid #d8b83d;border-radius:8px;gap:7px;max-width:240px;padding:13px 14px;display:grid;position:absolute;top:14px;right:14px;box-shadow:0 10px 28px #0f172a33}.create-row-help-card>button{color:#6b7788;background:0 0;border:0;font-size:17px;position:absolute;top:4px;right:6px}.create-row-help-card strong{color:#263345;padding-right:18px;font-size:12px}.create-row-help-card p,.create-row-help-card label{color:#536174;margin:0;font-size:10px;line-height:1.45}.create-row-help-card label{align-items:center;gap:6px;display:flex}.drawing-export-bar{z-index:10;background:#fff8e3;border-bottom:1px solid #dfc96f;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:6px 9px;display:grid}.drawing-export-bar>strong{color:#725700;letter-spacing:.07em;white-space:nowrap;font-size:8px}.drawing-export-bar>div{gap:5px;min-width:0;display:flex;overflow-x:auto}.drawing-export-bar button{color:#3f4652;background:#fff;border:1px solid #c9b454;border-radius:5px;flex:none;height:32px;padding:0 9px;font-size:8px;font-weight:900}.drawing-export-bar button:first-child,.drawing-export-bar button:nth-child(2){color:#fff;background:#1f2937;border-color:#1f2937}.drawing-export-bar button:disabled{cursor:not-allowed;opacity:.45}@media (width<=760px){.drawing-area{grid-template-rows:42px 46px minmax(0,1fr) 58px}.drawing-export-bar{grid-template-columns:minmax(0,1fr);gap:2px;padding:3px 7px}.drawing-export-bar>strong{display:none}}.drawing-export p{color:#748195;margin:-2px 0 10px;font-size:9px;line-height:1.5}.drawing-export>small{color:#8793a2;margin-top:8px;font-size:7px;line-height:1.5;display:block}.export-actions{gap:6px;display:grid}.export-actions button{color:#445267;text-align:left;background:#fff;border:1px solid #cdd5df;border-radius:6px;min-height:34px;padding:7px 8px;font-size:8px;font-weight:900}.export-actions button:first-child,.export-actions button:nth-child(2){color:#fff;background:#1f2937;border-color:#1f2937}.export-actions button:hover:not(:disabled){border-color:#9ba8b7}.export-actions button:disabled{cursor:not-allowed;opacity:.42}.drawing-area{grid-template-rows:44px minmax(0,1fr) 64px}.export-menu-wrap{position:relative}.export-menu{z-index:110;background:#fff;border:1px solid #cbd3dd;border-radius:8px;gap:3px;width:238px;padding:6px;display:grid;position:absolute;top:40px;right:0;box-shadow:0 14px 36px #0f172a47}.header-actions .export-menu button{color:#344154;text-align:left;background:0 0;border:0;width:100%;height:auto;padding:9px;font-size:9px;display:block}.header-actions .export-menu button:hover:not(:disabled),.header-actions .export-menu button:focus-visible{background:#f1f4f7;outline:none}.header-actions .export-menu button:disabled{cursor:not-allowed;opacity:.45}.export-menu small{color:#748195;border-top:1px solid #e5e9ee;margin-top:3px;padding:8px 9px 4px;font-size:7px;line-height:1.45}.legend-option{color:#445267;border-top:1px solid #e5e9ee;border-bottom:1px solid #e5e9ee;align-items:center;gap:8px;margin:2px 0;padding:9px;font-size:9px;font-weight:800;display:flex}.legend-option input{width:14px;height:14px;margin:0}.switching-context-menu{z-index:85;background:#fff;border:1px solid #cbd3dd;border-radius:6px;min-width:118px;padding:4px;display:grid;position:absolute;box-shadow:0 8px 24px #0f172a38}.switching-context-menu button{color:#344154;text-align:left;background:0 0;border:0;border-radius:4px;padding:8px 10px;font-size:9px;font-weight:900}.switching-context-menu button:hover,.switching-context-menu button:focus-visible{background:#f1f4f7;outline:none}.switching-context-menu button.delete{color:#b42318}.tool-switching canvas{cursor:crosshair}.stats,.report-actions,.report-totals{grid-template-columns:1fr}.symbol-editor-body>h3{color:#657286;letter-spacing:.08em;text-transform:uppercase;margin:4px 0 9px;font-size:8px}.summary-disclaimer{background:#f7f9fb;border-left:3px solid #d8b83d;margin-top:18px;padding:10px;line-height:1.55}.project-notes textarea{color:#344154;resize:vertical;background:#fff;border:1px solid #d5dce5;border-radius:6px;width:100%;min-height:130px;padding:9px;font:10px/1.5 Arial,Helvetica,sans-serif}.project-notes textarea:focus{border-color:#9aa8ba;outline:2px solid #2563eb1f}.project-notes .section-title button{color:#1d5ba7;background:#f8fafc;border:1px solid #d5dce5;border-radius:5px;margin-bottom:8px;padding:6px 8px;font-size:8px;font-weight:900}.project-notes .section-title button:disabled{color:#94a3b8;cursor:not-allowed}.live-row .energy-dot{background:#0f766e}.manual-copy{background:#fff;border-radius:10px;width:min(560px,100%);padding:20px;box-shadow:0 25px 80px #00000052}.manual-copy header{justify-content:space-between;align-items:center;display:flex}.manual-copy h2{margin:0;font-size:17px}.manual-copy header button{background:#fff;border:1px solid #d4dbe3;border-radius:5px;width:31px;height:31px;font-size:20px}.manual-copy p{color:#66758a;font-size:10px;line-height:1.5}.manual-copy textarea{resize:vertical;border:1px solid #9aa8ba;border-radius:6px;width:100%;min-height:150px;padding:10px;font:11px/1.5 Arial,Helvetica,sans-serif}.manual-copy>button{color:#fff;float:right;background:#1f2937;border:0;border-radius:6px;margin-top:10px;padding:9px 16px;font-size:9px;font-weight:900}.shared-view-banner{color:#443600;background:#fff7d6;border-bottom:2px solid #d69e00;justify-content:space-between;align-items:center;gap:20px;min-height:58px;padding:9px 18px;display:flex}.app.shared-view-active{grid-template-rows:66px auto minmax(0,1fr) 30px}.shared-view-banner div{gap:3px;display:grid}.shared-view-banner strong{font-size:13px}.shared-view-banner span{font-size:10px}.shared-view-banner button{color:#fff;background:#1f2937;border:0;border-radius:6px;padding:10px 14px;font-size:10px;font-weight:900}.shared-view-banner.loading{color:#173d63;background:#eaf4ff;border-bottom-color:#2b6cb0}.cloud-feedback{color:#173d63;background:#eef6ff;border-bottom:2px solid #2b6cb0;justify-content:space-between;align-items:center;min-height:48px;padding:8px 18px;display:flex}.cloud-feedback div{gap:3px;display:grid}.cloud-feedback strong{font-size:11px}.cloud-feedback span{font-size:9px}.cloud-feedback.success{color:#105a43;background:#eaf7f1;border-bottom-color:#16805d}.cloud-feedback.error{color:#7d271d;background:#fff0ee;border-bottom-color:#c24132}.cloud-feedback.info{color:#443600;background:#fff7d6;border-bottom-color:#d69e00}.cloud-feedback>button{color:inherit;background:0 0;border:0;font-size:20px}.recovery-warning{color:#7d271d;background:#fff0ee;border-bottom:2px solid #c24132;align-items:center;min-height:48px;padding:8px 18px;display:flex}.recovery-warning div{gap:3px;display:grid}.recovery-warning strong{font-size:11px}.recovery-warning span{font-size:9px}.app:not(.shared-view-active):has(.cloud-feedback){grid-template-rows:66px auto minmax(0,1fr) 30px}.app:not(.shared-view-active):has(.recovery-warning){grid-template-rows:66px auto minmax(0,1fr) 30px}.app:not(.shared-view-active):has(.cloud-feedback):has(.recovery-warning){grid-template-rows:66px auto auto minmax(0,1fr) 30px}.editable-copy-confirm{background:#fff;border-radius:10px;width:min(460px,100%);padding:24px;box-shadow:0 25px 80px #00000052}.editable-copy-confirm h2{margin:0 0 15px;font-size:18px}.editable-copy-confirm p{color:#526074;margin:7px 0;font-size:11px;line-height:1.5}.editable-copy-confirm footer{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.editable-copy-confirm button{border:1px solid #cfd7e0;border-radius:6px;padding:10px 14px;font-size:10px;font-weight:900}.editable-copy-confirm button:last-child{color:#fff;background:#1f2937;border-color:#1f2937}.energy-object-editor,.energy-environment{background:#f3f7fb;border:1px solid #d7e0e9;border-radius:8px;gap:9px;margin-top:10px;padding:10px;display:grid}.energy-object-editor label,.energy-environment label{color:#334155;gap:5px;font-size:10px;font-weight:800;display:grid}.energy-object-editor label>span{color:#0f5fbd;justify-self:end;margin-top:-16px}.energy-object-editor h4{color:#0f172a;margin:0;font-size:11px}.energy-object-editor.persistent{border-left:3px solid #2780ff;box-shadow:0 4px 12px #2780ff14}.energy-object-editor select,.energy-object-editor input[type=number],.energy-environment select{text-transform:capitalize;background:#fff;border:1px solid #cbd5e1;border-radius:5px;min-height:30px;padding:4px 6px}.energy-environment h4{color:#0f172a;margin:0;font-size:11px}.energy-environment input[type=range],.energy-object-editor input[type=range]{accent-color:#2780ff;width:100%}.environment-value{color:#0f5fbd;text-transform:capitalize;justify-self:end;margin-top:-16px}.timeline-labels{color:#64748b;text-transform:capitalize;justify-content:space-between;margin-top:-2px;display:flex}.timeline-labels small{text-align:center;font-size:7px}.energy-tile-field{border:0;min-width:0;margin:0;padding:0}.energy-tile-field legend{color:#334155;margin-bottom:5px;font-size:10px;font-weight:800}.energy-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.energy-tiles button{color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:6px;flex-direction:column;align-items:center;gap:3px;min-height:44px;padding:6px 3px;font-size:8px;font-weight:800;display:flex}.energy-tiles button span{font-size:15px}.energy-tiles button.active{color:#0f5fbd;background:#eaf4ff;border-color:#2780ff;box-shadow:inset 0 0 0 1px #2780ff}.energy-guided-steps{gap:6px;margin:8px 0 12px;padding:0;list-style:none;display:grid}.energy-guided-steps li{color:#64748b;align-items:center;gap:7px;font-size:8px;font-weight:800;display:flex}.energy-guided-steps li span{color:#475569;background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:19px;height:19px;display:flex}.energy-guided-steps li.complete{color:#176b4f}.energy-guided-steps li.complete span{color:#176b4f;background:#daf4e9}.energy-guided-steps li.current{color:#0f5fbd}.energy-guided-steps li.current span{color:#fff;background:#2780ff}.live-energy-dashboard{color:#f8fafc;background:#07111f;border-radius:10px;margin:10px;padding:14px;overflow:hidden}.live-energy-dashboard header{border-bottom:1px solid #263448;gap:4px;padding-bottom:10px;display:grid}.live-energy-dashboard header div{justify-content:space-between;align-items:center;display:flex}.live-energy-dashboard header small{letter-spacing:.04em;font-size:10px;font-weight:900}.live-energy-dashboard header strong{color:#cbd5e1;font-size:9px}.live-energy-dashboard header strong i{background:#77d646;border-radius:50%;width:7px;height:7px;margin-right:4px;display:inline-block}.live-energy-dashboard header>span{color:#7f91a8;font-size:8px}.live-energy-dashboard header>em{color:#7f91a8;font-size:7px;font-style:normal}.energy-metric{border-bottom:1px solid #263448;gap:7px;padding:12px 0;display:grid}.energy-metric-title{color:#dbe5ef;align-items:center;gap:8px;font-size:9px;display:flex}.energy-metric-title>span{color:#facc15;width:18px;font-size:15px}.energy-metric>b{padding-left:26px;font-size:15px}.energy-progress{background:#263448;border-radius:10px;height:7px;margin-left:26px;overflow:hidden}.energy-progress i{border-radius:inherit;height:100%;transition:width .18s;display:block}.energy-value-updated{animation:.26s ease-out energy-number-pulse}@keyframes energy-number-pulse{0%{opacity:.45;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.independence-card,.roof-capacity-card,.battery-duration-card{color:#152238;background:#f7fafc;border-radius:8px;margin-top:10px;padding:12px}.independence-card>strong,.roof-capacity-card>strong,.battery-duration-card>strong{font-size:9px}.independence-card .stars{color:#65b927;margin:8px 0 4px;font-size:18px}.independence-card .stars span{color:#9aa7b7}.independence-card p{color:#31435b;margin:0;font-size:9px;line-height:1.4}.roof-capacity-card dl,.battery-duration-card dl{gap:6px;margin:10px 0 0;display:grid}.roof-capacity-card dl div,.battery-duration-card dl div{justify-content:space-between;align-items:center;font-size:9px;display:flex}.roof-capacity-card dt,.battery-duration-card dt{color:#526278}.roof-capacity-card dd,.battery-duration-card dd{margin:0;font-weight:900}@media (width<=760px){.drawing-area{grid-template-rows:42px minmax(0,1fr) 58px}}@media (width<=620px){.app.shared-view-active{grid-template-rows:58px auto minmax(0,1fr) 28px}.project-name{display:none}.header{grid-template-columns:auto auto minmax(0,1fr)}.header-actions{justify-content:flex-end}.header-actions button,.header-actions button:not(.save){width:32px;padding:0;font-size:12px;display:flex}.header-actions button span{display:none}}.header,.header-actions{min-width:0;max-width:100%}.header-primary-save{white-space:nowrap;flex:none}.header-primary-save span,.header-more-trigger span{display:inline!important}.header-more{display:none;position:relative}.header-more-menu{z-index:120;background:#fff;border:1px solid #cbd3dd;border-radius:8px;gap:3px;width:238px;padding:6px;display:grid;position:absolute;top:40px;right:0;box-shadow:0 14px 36px #0f172a47}.header-actions .header-more-menu>button,.header-actions .more-export>button{color:#344154;text-align:left;background:0 0;border:0;justify-content:flex-start;width:100%;height:auto;padding:9px;font-size:9px;display:none}.header-actions .header-more-menu button:hover:not(:disabled),.header-actions .header-more-menu button:focus-visible{background:#f1f4f7;outline:none}.header-actions .header-more-menu button:disabled{cursor:not-allowed;opacity:.45}.more-export{border-top:1px solid #e5e9ee;padding-top:4px;display:none}.more-export>strong{color:#748195;letter-spacing:.08em;text-transform:uppercase;padding:5px 9px 3px;font-size:7px;display:block}.more-export .legend-option{color:#526074;margin:1px 9px 4px}@media (width<=1279px){.brand{min-width:0}.brand>div{display:none}.header-copy-link{display:none!important}.app:not(.shared-view-active) .header-more,.header-actions .header-more-menu>.more-copy{display:flex}}@media (width<=1023px){.header{grid-template-columns:auto minmax(120px,1fr) auto;gap:8px;padding-inline:9px}.header-more,.header-actions .header-more-menu>.more-new,.header-actions .header-more-menu>.more-open,.header-actions .more-export,.header-actions .more-export>button{display:flex}.header-actions .more-export{display:block}.header-new,.header-open,.header-export{display:none!important}}@media (width<=960px){.header{grid-template-columns:auto auto minmax(120px,1fr) auto}}@media (width<=767px){.header{grid-template-columns:auto auto minmax(0,1fr);overflow-x:clip}.project-name{display:none}.header-actions{justify-content:flex-end;gap:5px}.header-actions .header-primary-save,.header-actions .header-primary-save:not(.save),.header-actions .header-more-trigger,.header-actions .header-more-trigger:not(.save){width:auto;padding:0 8px;font-size:10px;display:flex}.header-items,.header-summary{display:none!important}.header-actions .header-more-menu>.more-items,.header-actions .header-more-menu>.more-summary{display:flex}}.workspace.welcome-workspace,.workspace.welcome-workspace.left-open,.workspace.welcome-workspace.right-open,.workspace.welcome-workspace.left-open.right-open{grid-template-columns:minmax(0,1fr)}.welcome-drawing-area{grid-template-rows:minmax(0,1fr) 64px}.welcome-drawing-area .canvas-shell{background:radial-gradient(circle at 50% 0,#fffffff2,#f8fafcf0 46%,#eef3f7f5),#f5f7f9;overflow:auto}.welcome-screen{width:100%;max-width:1320px;min-height:100%;margin:0 auto;padding:20px 26px 24px}.welcome-heading{text-align:center}.welcome-heading h1{color:#111827;letter-spacing:-.035em;margin:0 0 6px;font-size:clamp(25px,3vw,40px)}.welcome-heading p{color:#435166;margin:0;font-size:clamp(12px,1.4vw,17px)}.welcome-heading h2{color:#0f766e;margin:14px 0 8px;font-size:clamp(17px,1.8vw,22px)}.recovery-draft-card{background:#eef9f6;border:2px solid #0f766e;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;max-width:920px;margin:4px auto 18px;padding:16px 18px;display:flex}.recovery-draft-card.invalid{background:#fff5f2;border-color:#c24132}.recovery-draft-card small{color:#0f766e;letter-spacing:.12em;font-size:8px;font-weight:900}.recovery-draft-card.invalid small{color:#a33226}.recovery-draft-card h2{color:#193c37;margin:3px 0 5px;font-size:17px}.recovery-draft-card p{color:#465d59;margin:0;font-size:10px;line-height:1.5}.recovery-draft-card footer{flex:none;gap:7px;display:flex}.recovery-draft-card button{color:#294944;background:#fff;border:1px solid #9fbdb7;border-radius:6px;min-height:35px;padding:0 12px;font-size:9px;font-weight:900}.recovery-draft-card button.recover{color:#fff;background:#0f766e;border-color:#0f766e}.welcome-plan-cards{grid-template-columns:1.12fr .88fr;align-items:stretch;gap:20px;margin:0 auto 16px;display:grid}.welcome-sample-project{background:#f3f8f7;border:1px solid #a9c9c3;border-radius:11px;justify-content:space-between;align-items:center;gap:20px;margin:0 auto 18px;padding:14px 17px;display:flex}.welcome-sample-project small{color:#0f766e;letter-spacing:.11em;font-size:8px;font-weight:900}.welcome-sample-project h3{color:#183d37;margin:3px 0 4px;font-size:15px}.welcome-sample-project p{color:#536b67;margin:0;font-size:10px;line-height:1.5}.welcome-sample-project button{color:#0f766e;background:#fff;border:1px solid #0f766e;border-radius:7px;flex:none;min-height:37px;padding:0 15px;font-size:9px;font-weight:900}.welcome-sample-project button:hover{color:#fff;background:#0f766e}.welcome-sample-project button:focus-visible{outline-offset:2px;outline:2px solid #0f766e;box-shadow:0 0 0 3px #0f766e38}.welcome-sample-project button:disabled{cursor:wait;opacity:.65}.welcome-plan-card{background:#ffffffed;border:1px solid #ccd8e1;border-radius:15px;min-height:330px;padding:25px 26px 21px;position:relative;overflow:hidden;box-shadow:0 8px 28px #1f29370d}.roof-plan-card{background:linear-gradient(135deg,#fffdf7,#fff 64%);border-color:#f0bd27;grid-template-columns:minmax(270px,.9fr) minmax(260px,1.1fr);display:grid}.house-plan-card{grid-template-columns:minmax(260px,1.08fr) minmax(180px,.92fr);min-height:306px;margin-block:12px;display:grid}.welcome-plan-copy{z-index:2;position:relative}.plan-card-icon{color:#efa900;font-size:33px;line-height:1;position:absolute;top:1px;left:0}.house-plan-card .plan-card-icon{color:#0f8b83}.welcome-plan-card h3{letter-spacing:-.025em;margin:2px 0 16px 49px;font-size:clamp(22px,2vw,30px)}.welcome-plan-card p{color:#344154;max-width:390px;margin:0;font-size:13px;line-height:1.65}.welcome-plan-card ul{gap:10px;margin:22px 0 20px;padding:0;list-style:none;display:grid}.welcome-plan-card li{align-items:center;gap:10px;font-size:13px;display:flex}.welcome-plan-card li:before{color:#fff;content:"✓";background:#ffbd17;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:9px;font-weight:900;display:inline-flex}.house-plan-card li:before{background:#0f8b83}.welcome-plan-card button{color:#111827;background:linear-gradient(#ffca2e,#ffb90d);border:0;border-radius:8px;min-height:46px;padding:0 23px;font-size:13px;font-weight:900}.house-plan-card button{color:#fff;background:linear-gradient(#149a91,#087a74)}.welcome-roof-illustration{min-height:260px;position:relative}.welcome-sun{color:#ffc01f;font-size:48px;position:absolute;top:22%;left:10%}.welcome-house{width:100%;height:180px;position:absolute;bottom:22px;right:0;transform:perspective(600px)rotateY(-7deg)}.roof-plane{z-index:2;background:#303d4b;border:7px solid #424e59;grid-template-columns:repeat(4,1fr);gap:3px;width:84%;height:135px;padding:20px 28px;display:grid;position:absolute;top:0;left:7%;transform:skewY(-11deg);box-shadow:0 20px 28px #1f293740}.roof-plane b{background:linear-gradient(135deg,#20364f,#47647e);border:1px solid #8fa4b6}.house-wall{background:#f2eee5;width:72%;height:80px;position:absolute;bottom:0;left:15%;transform:skewY(-5deg)}.house-door{z-index:3;background:#7e6049;width:27px;height:57px;position:absolute;bottom:0;left:52%}.welcome-floor-plan{opacity:.8;background:#fff;border:5px double #717b85;grid-template-rows:1fr .85fr;grid-template-columns:1fr .65fr;align-self:center;height:190px;display:grid;position:relative;transform:rotate(1deg)}.welcome-floor-plan i{border:1px solid #8d959d}.welcome-floor-plan span{color:#7b8796;font-size:44px;position:absolute;top:34%;left:42%}.welcome-floor-plan b{color:#0672ff;position:absolute}.welcome-floor-plan b:first-of-type{top:26%;left:18%}.welcome-floor-plan b:nth-of-type(2){top:18%;right:20%}.welcome-floor-plan b:nth-of-type(3){bottom:18%;right:28%}.roof-image-help{background:#ffffffe0;border:1px solid #ced8e2;border-radius:15px;grid-template-columns:minmax(0,1fr) 270px;padding:18px;display:grid}.roof-help-main{border-right:1px solid #dfe5eb;padding-right:22px}.roof-image-help h3{margin:0 0 7px;font-size:19px}.roof-help-main>p{color:#435166;margin:0 0 18px;font-size:12px}.roof-help-main ol{grid-template-columns:repeat(5,1fr);gap:16px;margin:0;padding:0;list-style:none;display:grid}.roof-help-main li header{align-items:center;gap:7px;display:flex}.roof-help-main li header b{color:#fff;background:#0f766e;border-radius:50%;justify-content:center;align-items:center;width:17px;height:17px;font-size:9px;display:flex}.roof-help-main li header strong{font-size:11px}.roof-help-main li>p{color:#455468;min-height:27px;font-size:9px;line-height:1.45}.roof-help-visual{border-radius:7px;height:104px;position:relative;overflow:hidden}.roof-help-visual.map{background:linear-gradient(30deg,#0000 46%,#edd9a6a6 48% 52%,#0000 54%),repeating-linear-gradient(115deg,#48633c 0 15px,#5e7448 16px 30px,#354c35 31px 48px)}.roof-help-visual.map:before,.roof-help-visual.map:after{content:"";background:#78634f;width:52px;height:30px;position:absolute;transform:rotate(18deg)}.roof-help-visual.map:before{top:48%;left:17%}.roof-help-visual.map:after{top:24%;right:10%}.roof-help-visual.search span{color:#1f2937;z-index:2;background:#fff;border-radius:5px;padding:7px;font-size:7px;line-height:1.5;position:absolute;top:9px;left:7px;right:7px}.roof-help-visual>i{color:#fff;z-index:2;font-size:30px;font-style:normal;position:absolute;top:35%;left:42%}.roof-help-visual>b{z-index:3;background:#fff;border-radius:7px;justify-content:center;align-items:center;width:31px;height:31px;font-size:16px;display:flex;position:absolute;bottom:7px;right:7px}.roof-help-visual.camera>b{border:4px solid #ffbe00;border-radius:50%;width:40px;height:40px;bottom:4px;left:7px;right:auto}.roof-help-visual.upload{color:#536175;text-align:center;border:2px dashed #aab5c2;flex-direction:column;justify-content:center;align-items:center;display:flex}.roof-help-visual.upload b{background:0 0;width:auto;height:auto;font-size:28px;position:static}.roof-help-visual.upload span{margin-top:7px;font-size:9px;line-height:1.35}.roof-help-actions{gap:22px;padding-left:26px;display:grid}.roof-help-actions>a{color:#075ee7;border:1px solid #136cff;border-radius:8px;justify-content:center;align-self:start;align-items:center;min-height:47px;font-size:12px;font-weight:900;text-decoration:none;display:flex}.roof-help-actions>div{background:#eef8f2;border:1px solid #cfe2d6;border-radius:9px;align-self:end;padding:18px}.roof-help-actions h4{color:#155b3f;margin:0 0 10px;font-size:15px}.roof-help-actions p{color:#334155;margin:0;font-size:11px;line-height:1.65}@media (width<=1080px){.welcome-plan-cards{grid-template-columns:1fr}.house-plan-card{margin-block:0}.roof-image-help{grid-template-columns:1fr}.roof-help-main{border-bottom:1px solid #dfe5eb;border-right:0;padding:0 0 20px}.roof-help-actions{grid-template-columns:1fr 1fr;padding:20px 0 0}}@media (width<=720px){.welcome-screen{padding:16px 14px 22px}.roof-plan-card,.house-plan-card{min-height:0;padding:22px;display:block}.welcome-roof-illustration,.welcome-floor-plan{display:none}.welcome-plan-copy{padding-right:55px}.welcome-plan-card p{max-width:none}.roof-help-main ol{grid-template-columns:repeat(2,1fr)}.roof-help-actions{grid-template-columns:1fr}.recovery-draft-card{align-items:stretch;display:grid}.recovery-draft-card footer{flex-wrap:wrap}.welcome-sample-project{align-items:stretch;display:grid}.welcome-sample-project button{justify-self:start}}@media (width<=440px){.welcome-heading h1{font-size:25px}.welcome-plan-copy{padding-right:0}.roof-help-main ol{grid-template-columns:1fr}}.app-loading{color:#344154;background:#f5f7f9;justify-content:center;align-items:center;min-height:100dvh;font-weight:800;display:flex}html.mobile-handoff-mode,html.mobile-handoff-mode body,html.mobile-handoff-mode #root{height:auto;min-height:100%;overflow:hidden auto}.mobile-handoff{color:#152232;min-height:100dvh;padding:22px 16px max(56px,calc(28px + env(safe-area-inset-bottom)));background:radial-gradient(circle at 50% 8%,#fff8df 0,#f6f8f7 40%,#e8f1ef 100%)}.mobile-handoff-card{text-align:center;background:#fffffff2;border:1px solid #d6e0df;border-radius:22px;width:100%;max-width:540px;margin:0 auto;padding:22px 22px 28px;box-shadow:0 22px 60px #0f233021}.mobile-brand{text-align:left;align-items:center;gap:11px;display:flex}.mobile-brand>span{background:#ffc42a;border-radius:10px;justify-content:center;align-items:center;width:43px;height:43px;font-size:22px;font-weight:900;display:flex}.mobile-brand div{gap:2px;display:grid}.mobile-brand small{color:#617083;letter-spacing:.16em;font-size:9px;font-weight:900}.mobile-brand strong{font-size:17px}.mobile-energy-visual{justify-content:center;align-items:center;height:115px;margin:14px 0 2px;display:flex;position:relative}.mobile-energy-visual div{clip-path:polygon(50% 0,100% 42%,88% 42%,88% 100%,12% 100%,12% 42%,0 42%);color:#fff;background:#163346;border-bottom:13px solid #0f8b83;justify-content:center;align-items:center;width:132px;height:100px;font-size:42px;display:flex}.mobile-energy-visual span{color:#f6b900;z-index:2;margin-top:-64px;margin-right:-12px;font-size:37px}.mobile-energy-visual i{color:#176b55;z-index:2;background:#5fd18c;border:3px solid #176b55;border-radius:4px;margin-left:-7px;padding:7px 5px;font-style:normal}.mobile-kicker{letter-spacing:.07em;text-transform:uppercase;font-weight:900;color:#0f8b83!important;margin:14px 0 8px!important;font-size:12px!important}.mobile-handoff h1{letter-spacing:-.035em;margin:0 0 15px;font-size:clamp(27px,8vw,38px);line-height:1.08}.mobile-handoff-card>p{color:#4a596b;margin:0;font-size:15px;line-height:1.55}.mobile-capabilities{grid-template-columns:1fr 1fr;gap:8px;margin:20px 0;display:grid}.mobile-capabilities span{color:#1c554f;background:#eef7f5;border:1px solid #d3e7e3;border-radius:9px;padding:10px 5px;font-size:12px;font-weight:800}.mobile-email-handoff{text-align:left;background:#fff7dc;border:1px solid #f0c952;border-radius:12px;padding:18px 16px}.mobile-handoff h2{margin:0 0 7px;font-size:18px}.mobile-handoff h3{margin:18px 0 8px;font-size:14px}.mobile-email-handoff>p,.mobile-share>p{color:#4b5563;margin:0;font-size:13px;line-height:1.5}.mobile-email-handoff form{gap:8px;display:grid}.mobile-email-handoff label{color:#455468;font-size:12px;font-weight:800}.mobile-email-handoff input{background:#fff;border:1px solid #c7d0da;border-radius:8px;width:100%;min-height:46px;padding:10px 12px;font-size:16px}.mobile-email-handoff input:focus{border-color:#0f8b83;outline:0;box-shadow:0 0 0 3px #0f8b8329}.mobile-email-handoff button,.mobile-share-actions button{border:0;border-radius:8px;min-height:46px;padding:10px 14px;font-size:14px;font-weight:900}.mobile-email-handoff button{color:#17202a;background:#ffc42a}.mobile-email-handoff button:disabled{cursor:default;opacity:.7}.mobile-share{text-align:left;border-top:1px solid #e3e8eb;margin-top:22px;padding-top:20px}.mobile-share-actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:13px;display:grid}.mobile-share-actions .share-button{color:#fff;background:#0f8b83}.mobile-share-actions .copy-button{color:#334155;background:#fff;border:1px solid #bac5cf}.mobile-feedback{color:#385064;margin:11px 0 0;font-size:12px;font-weight:700;line-height:1.45}.mobile-feedback.success{color:#116149}.mobile-feedback.error{color:#a33d30}.mobile-handoff .mobile-url{color:#64748b;margin-top:18px;font-size:12px;font-weight:800}@media (height<=700px){.mobile-energy-visual{height:82px;margin-top:8px;transform:scale(.75)}}@media (width<=360px){.mobile-handoff{padding-left:10px;padding-right:10px}.mobile-handoff-card{padding-left:16px;padding-right:16px}.mobile-share-actions{grid-template-columns:1fr}}
