/* Room Studio: scoped, lightweight plan drawing with native form controls. */
.room-measure-page{--rm-forest:#12241e;--rm-ink:#28291f;--rm-gold:#e4c58d;--rm-line:#c4bcae;color:var(--rm-ink)}
.room-measure-page [hidden]{display:none!important}.room-measure-page .rm-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.room-measure-page .rm-intro{display:grid;grid-template-columns:1.4fr 1fr;gap:8%;align-items:end;padding-top:30px;padding-bottom:30px}.room-measure-page .rm-intro .eyebrow{margin-bottom:18px}.room-measure-page h1{font-size:clamp(38px,4.4vw,61px);line-height:1.07;letter-spacing:-.055em;margin:0}.room-measure-page h1 em{color:#8b6834}.room-measure-page .rm-intro p{font-size:15px;line-height:1.8;margin:0 0 16px;max-width:400px}.room-measure-page .rm-intro a{font-size:13px;font-weight:600;display:flex;justify-content:space-between;max-width:180px;border-bottom:1px solid #8b6834;padding:7px 0}
.room-measure-page .rm-flow{display:flex;justify-content:space-between;border-top:1px solid var(--rm-line);padding:18px 0 25px;font-size:12px}.room-measure-page .rm-flow b{font:10px var(--mono);color:#8b6834;margin-right:15px}#room-studio{scroll-margin-top:120px}
.room-measure-page .measure-workbench{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);border:1px solid #bdb29f;border-radius:14px;overflow:hidden;box-shadow:0 18px 50px #2c332012}.room-measure-page .rm-editor{padding:28px;background:#eee9df;min-width:0}.room-measure-page .rm-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:22px}.room-measure-page .rm-kicker{font:9px/1.7 var(--mono);text-transform:uppercase;letter-spacing:1px;color:#8b6834}.room-measure-page .rm-editor h2{font-size:28px;line-height:1.2;letter-spacing:-1px;margin:6px 0 0}.room-measure-page button,.room-measure-page input,.room-measure-page select{font:inherit}.room-measure-page button{cursor:pointer}.room-measure-page button:disabled{cursor:default;opacity:.5}.room-measure-page #rm-example{border:0;border-bottom:1px solid #b3a284;padding:10px 0;background:none;font-size:11px;white-space:nowrap}.room-measure-page .rm-name{display:block;font-size:12px;font-weight:600}.room-measure-page input:not([type=radio]),.room-measure-page select{width:100%;min-width:0;min-height:46px;border:1px solid #baaf9e;border-radius:5px;background:#fffdf7;padding:11px 12px;color:#292a22;font-size:15px}.room-measure-page .rm-name input{margin-top:7px}.room-measure-page fieldset{border:0;padding:0;min-width:0;margin:0}.room-measure-page .rm-shapes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.room-measure-page .rm-shapes legend{font-size:12px;font-weight:600;margin-bottom:8px}.room-measure-page .rm-shapes label{border:1px solid #b8ad9b;min-height:60px;display:flex;align-items:center;gap:8px;border-radius:6px;padding:8px 12px;cursor:pointer;font-size:13px;background:#f8f4ec}.room-measure-page .rm-shapes label:has(input:checked){border-color:#445948;background:#dfe5d7;box-shadow:inset 0 0 0 1px #445948}.room-measure-page input[type=radio]{accent-color:#3c5645}.room-measure-page .rm-shapes svg{width:34px;height:27px;stroke:#6a764e;stroke-width:1.2;fill:#b7c3a750}.room-measure-page .rm-unit-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:22px 0 16px}.room-measure-page .rm-unit-row>strong{font-size:13px}.room-measure-page .rm-units{display:flex;border:1px solid #baaf9e;border-radius:5px;overflow:hidden}.room-measure-page .rm-units label{position:relative;cursor:pointer}.room-measure-page .rm-units input{position:absolute;width:1px;height:1px;opacity:0}.room-measure-page .rm-units span{display:block;padding:10px;font-size:11px}.room-measure-page .rm-units input:checked+span{background:#223c2e;color:#fff7e9}.room-measure-page .rm-units label:has(input:focus-visible){outline:2px solid #8b6834;outline-offset:-3px}.room-measure-page .rm-rectangle{padding-top:12px;border-top:1px solid #c6bcaa;margin-top:14px}.room-measure-page .rm-rectangle legend{font-size:12px;font-weight:600;padding-right:9px}.room-measure-page .rm-rectangle legend span{display:inline-grid;place-items:center;width:22px;height:22px;background:#dcd5c4;color:#4a5f43;border-radius:4px;margin-right:5px}.room-measure-page .rm-rectangle p{font-size:11px;line-height:1.6;margin:4px 0 13px;color:#606252}.room-measure-page .rm-dimensions{display:grid;grid-template-columns:1fr 1fr;gap:15px}.room-measure-page .rm-dimension>span{display:block;font-size:11px;margin-bottom:6px}.room-measure-page .rm-imperial{display:grid;grid-template-columns:1fr 1fr;gap:6px}.room-measure-page .rm-dimension label{position:relative;display:block}.room-measure-page .rm-dimension label>span{position:absolute;right:8px;top:16px;font-size:10px;color:#6d6e5e;pointer-events:none}.room-measure-page .rm-dimension input{padding-right:25px;padding-left:9px}.room-measure-page .rm-field-help{font-size:11px;line-height:1.7;color:#616453;margin:13px 0 19px}.room-measure-page #rm-error{font-size:13px;color:#942f25;background:#fbe8dc;border-left:2px solid #942f25;padding:10px}.room-measure-page .rm-save-row{display:flex;gap:14px;align-items:center}.room-measure-page #rm-save{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#213c2e;color:#fff6e3;border:0;border-radius:5px;min-height:48px;flex:1;padding:13px 17px;font-size:13px;font-weight:600}.room-measure-page #rm-save span{font-size:22px}.room-measure-page #rm-cancel{background:none;border:0;border-bottom:1px solid;padding:9px 0;font-size:12px}
.room-measure-page .rm-preview{background:radial-gradient(ellipse at 50% 20%,#294034 0,#10241e 73%);color:#eee9d8;display:flex;flex-direction:column;min-width:0}.room-measure-page .rm-preview-top{display:flex;justify-content:space-between;gap:10px;padding:22px 24px;font:10px/1.6 var(--mono);border-bottom:1px solid #c7d2a822}.room-measure-page .rm-preview-top i{display:inline-block;width:5px;height:5px;background:#cbd49c;border-radius:50%;margin-right:8px;box-shadow:0 0 10px #d6db8a66}.room-measure-page #rm-preview-status{font-size:9px;color:#b0c1ad}.room-measure-page #rm-plan{display:block;width:100%;max-height:360px;min-height:260px;flex:1;margin:auto;overflow:visible}.room-measure-page .rm-svg-dimension{fill:#e4dfc7;font:12px var(--mono)}.room-measure-page .rm-svg-letter{fill:#fff1cf;font:600 19px var(--sans)}.room-measure-page .rm-live-result{border-top:1px solid #c7d2a833;display:flex;align-items:end;gap:20px;justify-content:space-between;padding:20px 26px}.room-measure-page .rm-live-result>div>span{font-size:11px;color:#c8cfbc;overflow-wrap:anywhere}.room-measure-page .rm-live-result strong{display:flex;align-items:baseline;gap:12px;font:500 52px/1.2 var(--sans);letter-spacing:-2px}.room-measure-page .rm-live-result strong small{font-size:14px;letter-spacing:0;font-weight:400;color:#d1c5a6}.room-measure-page #rm-live-equation{font-size:11px;line-height:1.8;max-width:165px;color:#c0cbb4;margin:0 0 6px}.room-measure-page .rm-preview-foot{display:flex;justify-content:space-between;gap:12px;padding:12px 24px;border-top:1px solid #c7d2a822;font-size:9px;line-height:1.7;color:#a7b8a1}.room-measure-page .rm-preview-foot span:last-child{max-width:180px;text-align:right}
.room-measure-page .rm-project{display:grid;grid-template-columns:1.15fr 1fr;gap:40px;padding-top:40px}.room-measure-page .rm-section-label{display:flex;justify-content:space-between;align-items:end;gap:25px}.room-measure-page .rm-section-label h2{font-size:32px;line-height:1.15;letter-spacing:-1px;margin:10px 0 0}.room-measure-page .rm-section-label .eyebrow{margin:0;font-size:9px}.room-measure-page #rm-room-count{font:11px var(--mono);white-space:nowrap;color:#6e725f}.room-measure-page #rm-empty{border:1px dashed #b4b6a3;border-radius:8px;display:flex;gap:20px;align-items:center;padding:28px;margin-top:25px;background:#eaece140}.room-measure-page #rm-empty>span{font-size:40px;color:#8a937c}.room-measure-page #rm-empty p{font-size:15px;line-height:1.7;margin:0}.room-measure-page #rm-empty small{font-size:12px;color:#737964}.room-measure-page #rm-rooms{padding:0;margin:24px 0 0;list-style:none}.room-measure-page #rm-rooms li{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:15px;border-block-start:1px solid #bbb8a8;padding:17px 0}.room-measure-page .rm-room-number{font:10px var(--mono);color:#8b6834;padding-top:5px}.room-measure-page #rm-rooms strong{font-size:16px;overflow-wrap:anywhere}.room-measure-page #rm-rooms small{display:block;font-size:11px;color:#6f7263;line-height:1.8;margin-top:4px}.room-measure-page #rm-rooms b{font-size:15px;font-weight:600;padding-top:3px}.room-measure-page .rm-room-actions{display:flex;gap:18px;grid-column:2/-1}.room-measure-page .rm-room-actions button,.room-measure-page #rm-undo{font-size:11px;border:0;border-bottom:1px solid #a8ac98;background:none;min-height:32px;padding:4px 0}.room-measure-page .rm-list-feedback{display:flex;gap:12px;align-items:center;min-height:45px}.room-measure-page #rm-status{font-size:12px;line-height:1.7;color:#4c654e;flex:1}.room-measure-page .rm-session-note{font-size:11px;line-height:1.7;color:#727464;max-width:380px}.room-measure-page .rm-total-card{background:#e8e5d8;border:1px solid #b9b39f;border-radius:10px;padding:27px}.room-measure-page .rm-total-card h2{font-size:24px;letter-spacing:-.6px;margin:7px 0 20px}.room-measure-page .rm-total{display:flex;align-items:center;gap:16px}.room-measure-page .rm-total output{font:500 60px/1 var(--sans);letter-spacing:-2px;color:#344832;overflow-wrap:anywhere}.room-measure-page .rm-total>span{font-size:14px;line-height:1.5}.room-measure-page .rm-total small{font-size:10px;color:#6d715f}.room-measure-page #rm-total-conversions{font-size:12px;color:#747662;margin:10px 0 20px}.room-measure-page .rm-allowance{border-block:1px solid #bcb9a5;padding:17px 0;margin-bottom:18px}.room-measure-page .rm-allowance label{font-size:12px;font-weight:600;display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}.room-measure-page .rm-allowance label small{font-size:10px;font-weight:400;color:#717461}.room-measure-page #rm-allowance-result{font-size:11px;line-height:1.7;margin:8px 0 0;color:#636954}.room-measure-page .rm-service{font-size:12px;font-weight:600;display:block}.room-measure-page .rm-service select{margin-top:8px}.room-measure-page #rm-estimate{width:100%;display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:51px;padding:14px 16px;border:0;background:#243d2e;color:#fff4df;border-radius:5px;font-size:13px;font-weight:600;margin-top:20px}.room-measure-page #rm-download{background:none;border:0;border-bottom:1px solid #a9aa94;font-size:12px;min-height:42px;padding:8px 0;margin-top:8px}.room-measure-page .rm-total-note,.room-measure-page #rm-unsaved{font-size:11px;line-height:1.8;color:#666d57;margin:12px 0 0}.room-measure-page #rm-unsaved{border-left:2px solid #ac803b;padding-left:12px;color:#775324}
.room-measure-page .rm-how{padding-top:70px;padding-bottom:60px}.room-measure-page .rm-how .rm-section-label>p{max-width:350px;font-size:14px;line-height:1.8;margin:0}.room-measure-page .rm-how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:30px}.room-measure-page .rm-how-grid article{border-top:1px solid #bfb59e;padding-top:20px}.room-measure-page .rm-how-grid article>span{font:9px var(--mono);color:#8b6834}.room-measure-page .rm-how-grid h3{font-size:22px;line-height:1.3;letter-spacing:-.6px;margin:18px 0 14px}.room-measure-page .rm-how-grid p{font-size:13px;line-height:1.9;color:#5e6552}.room-measure-page .rm-formula{margin-top:22px;font:11px/1.8 var(--mono);padding:14px;background:#e8eadf;border:1px solid #c9cfb9}.room-measure-page .rm-how-grid a{font-size:12px;display:inline-block;border-bottom:1px solid #898f76;padding:10px 0}.room-measure-page .rm-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;padding-block:45px 50px;border-top:1px solid #bfb59e}.room-measure-page .rm-faq h2{font-size:36px;line-height:1.13;letter-spacing:-1.3px;margin:16px 0}.room-measure-page .rm-faq>div>p{font-size:14px;line-height:1.85;color:#686e5b}.room-measure-page .rm-faq a{font-size:12px;display:inline-block;border-bottom:1px solid #a4a88f;padding:9px 0}.room-measure-page .rm-faq details{border-bottom:1px solid #c1beac}.room-measure-page .rm-faq summary{display:flex;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;padding:18px 0;font-size:14px;font-weight:600;line-height:1.6}.room-measure-page .rm-faq summary::-webkit-details-marker{display:none}.room-measure-page .rm-faq details p{font-size:13px;line-height:1.9;color:#616852;margin:0 0 20px}.room-measure-page .rm-faq details[open] summary>span{transform:rotate(45deg)}.room-measure-page .rm-related{display:flex;flex-wrap:wrap;gap:15px 30px;padding-bottom:50px}.room-measure-page .rm-related a{font-size:12px;border-bottom:1px solid #b8b59d;padding:10px 0}.room-measure-page :focus-visible{outline:2px solid #a9803c;outline-offset:4px}.room-measure-page .rm-no-script{padding:30px;background:#e5e9d9;margin-bottom:35px}
@media(max-width:950px){.room-measure-page .rm-intro{grid-template-columns:1.2fr 1fr;gap:5%}.room-measure-page .rm-intro h1{font-size:44px}.room-measure-page .measure-workbench{grid-template-columns:1fr 1fr}.room-measure-page .rm-editor{padding:22px}.room-measure-page .rm-editor-heading{display:block}.room-measure-page #rm-example{margin-top:6px}.room-measure-page .rm-unit-row{display:block}.room-measure-page .rm-units{width:max-content;margin-top:10px}.room-measure-page .rm-project{gap:25px}.room-measure-page .rm-total-card{padding:22px}.room-measure-page .rm-live-result{display:block}.room-measure-page #rm-live-equation{max-width:none;margin-top:8px}.room-measure-page .rm-preview-top{display:block}.room-measure-page #rm-preview-status{display:block;margin-top:5px}.room-measure-page .rm-preview-foot span:first-child{display:none}.room-measure-page .rm-preview-foot span:last-child{max-width:none;text-align:left}}
@media(max-width:680px){.room-measure-page .rm-intro{display:block;padding-top:20px;padding-bottom:24px}.room-measure-page .rm-intro h1{font-size:39px}.room-measure-page .rm-intro p{font-size:14px;margin:20px 0 10px}.room-measure-page .rm-flow{gap:15px;font-size:10px;line-height:1.6;padding:16px 0}.room-measure-page .rm-flow b{display:block;margin:0 0 4px}.room-measure-page .measure-workbench{display:flex;flex-direction:column}.room-measure-page .rm-editor{padding:24px 20px}.room-measure-page .rm-editor-heading{display:flex}.room-measure-page .rm-editor h2{font-size:26px}.room-measure-page #rm-example{font-size:10px;margin:0}.room-measure-page .rm-shapes label{padding:10px 8px;gap:6px}.room-measure-page .rm-unit-row{display:flex}.room-measure-page .rm-units{margin:0}.room-measure-page .rm-units span{padding:10px 8px}.room-measure-page input:not([type=radio]),.room-measure-page select{font-size:16px}.room-measure-page .rm-dimensions{gap:12px}.room-measure-page .rm-preview-top{display:flex;padding:17px 20px}.room-measure-page #rm-preview-status{margin:0}.room-measure-page #rm-plan{min-height:210px;max-height:280px}.room-measure-page .rm-live-result{display:flex;padding:18px 20px}.room-measure-page .rm-live-result strong{font-size:43px}.room-measure-page #rm-live-equation{max-width:140px;font-size:10px}.room-measure-page .rm-preview-foot{padding:10px 20px}.room-measure-page .rm-project{grid-template-columns:1fr;padding-top:30px;gap:24px}.room-measure-page .rm-section-label h2{font-size:28px}.room-measure-page .rm-total-card{padding:24px 20px}.room-measure-page #rm-rooms li{gap:10px}.room-measure-page .rm-how{padding-top:48px;padding-bottom:35px}.room-measure-page .rm-how .rm-section-label{display:block}.room-measure-page .rm-how .rm-section-label>p{margin-top:20px}.room-measure-page .rm-how-grid{grid-template-columns:1fr;gap:25px}.room-measure-page .rm-how-grid h3{margin-top:12px}.room-measure-page .rm-how-grid .rm-formula{margin-top:16px}.room-measure-page .rm-faq{grid-template-columns:1fr;gap:25px;padding-top:35px}.room-measure-page .rm-faq h2{font-size:31px}.room-measure-page .rm-related{gap:8px 20px;padding-bottom:35px}#room-studio{scroll-margin-top:105px}}
@media(max-width:680px){.room-measure-page .rm-shapes label>span{white-space:nowrap;font-size:12px}.room-measure-page .rm-shapes svg{width:28px;flex-shrink:0}.room-measure-page .rm-shapes label{gap:5px}.room-measure-page .rm-total output{font-size:38px;min-width:0}}
