@font-face{font-family:BuilderNoto;src:url('./runtime/app/assets/NotoSans-Regular.ttf') format('truetype');font-display:swap}
:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#24322e;background:#f5f5f0;font-synthesis:none;--ink:#24322e;--muted:#6c7971;--line:#e3e7df;--accent:#245347;--pale:#edf3ed;--radius:15px}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.42;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #8db9a4;outline-offset:3px}button{color:inherit}a{color:var(--accent)}[hidden]{display:none!important}.app-header{height:88px;padding:0 34px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);background:#fff}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--ink);font-size:15px;font-weight:750;letter-spacing:1.8px;white-space:nowrap}.brand small{font-size:11px;font-weight:450;letter-spacing:.2px;display:block;color:var(--muted);margin-top:5px}.brand-mark{position:relative;display:flex;align-items:center;justify-content:center;width:41px;height:41px;background:var(--accent);color:#fff;font-family:Georgia,serif;font-size:31px;font-weight:400;letter-spacing:-3px;border-radius:11px}.brand-mark span{font:500 13px Segoe UI,sans-serif;letter-spacing:0;margin:11px 0 0 3px}.release-badge{font-size:12px;color:#58675d}.release-badge span{display:block;font-size:11px;margin-top:5px;color:#8a948c}.header-actions{display:flex;gap:8px;align-items:center}.button{border:1px solid var(--line);border-radius:9px;padding:11px 15px;background:white;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;font-size:12px;font-weight:600;line-height:1.35;min-height:40px}.button:hover{filter:brightness(.975)}.primary{background:var(--accent);border-color:var(--accent);color:#fff}.quiet{background:transparent}.full{width:100%}.icon-button{border:1px solid var(--line);border-radius:8px;background:#fff;width:35px;height:35px;display:inline-flex;align-items:center;justify-content:center;font-size:23px;line-height:1}.text-button{font-size:11px;color:var(--accent);background:none;border:0;padding:5px 0;font-weight:600}.project-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:27px 34px 22px}.eyebrow{font-size:9px;letter-spacing:1.8px;font-weight:750;color:#788379;margin:0 0 7px}.project-bar h1{font-size:24px;font-weight:600;letter-spacing:-.6px;margin:0}.project-tools{display:flex;align-items:center;gap:18px}.example-label{font-size:10px;color:var(--muted);display:flex;gap:10px;align-items:center}.example-label select{font-size:12px;min-width:190px;background:#fff}.history-buttons{display:flex;gap:5px}.workspace{margin:0 24px;display:grid;grid-template-columns:250px minmax(260px,1fr) 292px;height:calc(100dvh - 244px);min-height:380px;max-height:1000px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:white;box-shadow:0 10px 40px #173d2c05}.panel{min-width:0;min-height:0;background:#fff}.composition-panel{overflow:hidden;display:flex;flex-direction:column;border-right:1px solid var(--line)}.panel-heading{padding:22px 19px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-heading h2{font-size:16px;letter-spacing:-.25px;font-weight:650;margin:0}.count{display:inline-block;font-size:10px;padding:4px 6px;border-radius:6px;background:var(--pale);color:var(--accent);margin-left:4px;vertical-align:2px}.add-button{width:31px;height:31px;border-radius:8px;border:1px solid var(--line);background:#f8faf6;font-size:21px;color:var(--accent)}.block-list{overflow:auto;flex:1;padding:0 10px 10px}.run-heading{display:flex;justify-content:space-between;gap:6px;padding:17px 8px 9px;align-items:center}.run-name{font-size:10px;color:#788379;font-weight:650;letter-spacing:.15px}.run-heading .run-meta{font-size:9px;color:#8c958f}.block-item{display:flex;gap:10px;align-items:center;text-align:left;border:1px solid transparent;border-radius:10px;background:transparent;width:100%;padding:11px 8px;margin-bottom:3px}.block-item:hover{background:#f7f8f4}.block-item.selected{background:#edf3ed;border-color:#b8cbbb}.block-symbol{width:34px;height:37px;color:#778b79;flex-shrink:0}.block-symbol svg{width:100%;height:100%}.block-item strong{font-size:11px;font-weight:600;display:block;line-height:1.5}.block-item small{font-size:10px;color:#879087;display:block;margin-top:3px}.block-number{margin-left:auto;align-self:flex-start;color:#9aa59a;font-size:9px;padding-top:4px}.new-run{margin:9px 18px 0;font-size:11px}.panel-footnote{font-size:10px;line-height:1.65;color:#8a938b;margin:14px 19px 19px}.preview-panel{position:relative;min-height:0;overflow:hidden;min-width:0;background:#e7eae9}.viewer{position:absolute;inset:0}.loading{height:100%;display:grid;place-items:center;font-size:13px;color:var(--muted)}.preview-toolbar{position:absolute;z-index:2;left:18px;right:18px;top:16px;display:flex;justify-content:space-between;pointer-events:none}.preview-toolbar>*{pointer-events:auto}.segmented{display:flex;background:#fffffff0;border:1px solid #dce3d9;border-radius:9px;padding:4px;box-shadow:0 2px 10px #19342505}.segmented button{font-size:10px;padding:7px 11px;border:0;border-radius:6px;background:none;font-weight:600;color:#728074}.segmented button.active{background:#335a4e;color:#fff}.preview-toolbar .icon-button{height:38px;width:38px;background:#fffffff0;border-color:#dce3d9}.preview-footer{position:absolute;bottom:20px;left:20px;right:20px;display:flex;justify-content:space-between;align-items:center;gap:10px;pointer-events:none}.preview-footer>span{font-size:9px;color:#738176;max-width:190px;line-height:1.5}.preview-footer button{pointer-events:auto;font-size:10px;min-height:34px}.glass{background:#ffffffeb;border-color:#d8e1d5;box-shadow:0 2px 5px #263c2b05}.glass[aria-pressed=true]{color:white;background:#355b4e;border-color:#355b4e}.preview-badge{position:absolute;left:20px;top:72px;font-size:9px;color:#738176;display:flex;align-items:center;gap:6px;pointer-events:none}.status-dot{width:5px;height:5px;background:#6c987c;border-radius:50%}.settings-panel{border-left:1px solid var(--line);overflow:auto}.settings-tabs{display:flex;border-bottom:1px solid var(--line);position:sticky;top:0;background:white;z-index:2;padding:0 15px}.settings-tabs button{flex:1;min-height:54px;border:0;border-bottom:2px solid transparent;background:none;font-size:11px;color:#7b877c}.settings-tabs button.active{border-bottom-color:var(--accent);color:var(--accent);font-weight:650}.editor{padding:21px 19px}.editor h2{font-size:18px;font-weight:600;letter-spacing:-.3px;margin:0 0 7px}.editor .description{font-size:11px;color:#819080;line-height:1.6;margin:0 0 22px}.field{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:550;margin:0 0 17px}.field input,.field select,.field textarea,select,input,textarea{border:1px solid #dce3d9;background:#fff;padding:10px 10px;border-radius:7px;min-width:0;width:100%;color:#3b493e;font-size:12px;line-height:1.35}.field input:focus,.field select:focus,.field textarea:focus{border-color:#739682}.dimension-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.dimension-grid .field{font-size:10px;font-weight:500}.dimension-grid input{padding:10px 6px}.field-hint{font-size:9px;line-height:1.5;color:#95a08f;font-weight:400}.section-label{font-size:10px;font-weight:700;letter-spacing:.5px;color:#7c897c;margin:23px 0 14px}.editor hr{border:0;border-top:1px solid #edf0e9;margin:21px 0}.toggle-field{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;margin:15px 0;font-weight:500}.toggle-field input{width:17px;height:17px;accent-color:var(--accent);margin:0}.move-buttons{display:flex;gap:8px;margin-top:11px}.move-buttons .button{flex:1;font-size:11px;padding:8px;min-height:34px}.delete-button{width:100%;color:#9e695d;background:none;border:0;font-size:10px;padding:17px 4px 0}.editor-empty{padding:38px 25px;text-align:center;color:var(--muted);font-size:12px;line-height:1.7}.editor-empty .empty-icon{font-size:28px;color:#a4b8a2;margin-bottom:12px}.workspace-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 30px;font-size:10px;color:#879082}.price-note{font-size:10px}.notice{margin:0 25px 15px;border:1px solid #ceddce;background:#eef5ec;border-radius:9px;padding:12px 16px;color:#44623c;font-size:12px;line-height:1.6}.notice.error{color:#8e483c;background:#fff2ec;border-color:#efd0c1}.notice.warning{color:#805e2c;background:#fff8e8;border-color:#e7d9b9}.validation-panel{margin:0 25px 22px;padding:10px 16px;border:1px solid var(--line);border-radius:9px;font-size:11px;color:#75816f;background:#fafbf7}.validation-panel summary{cursor:pointer}.diagnostic{line-height:1.6;margin:8px 0;color:#66715f}.diagnostic.error{color:#9f5442}.diagnostic.warning{color:#8d713f}.muted{color:#8c9787;font-size:11px;line-height:1.6}.swatches{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:16px}.swatch{width:31px;height:31px;border-radius:50%;border:3px solid white;outline:1px solid #d9dfd2;position:relative}.swatch.selected{outline:2px solid var(--accent)}.swatch.selected:after{content:'✓';color:white;text-shadow:0 1px 3px #273a23;position:absolute;inset:0;display:grid;place-items:center;font-size:12px}.style-preview{height:5px;border-radius:10px;margin:-5px 0 18px;background:#e5dfd0}dialog{border:1px solid #e0e6d9;border-radius:18px;padding:28px;box-shadow:0 30px 100px #13292133;max-height:90dvh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#172e2461;backdrop-filter:blur(5px)}.catalog-dialog{width:min(850px,94vw)}.small-dialog{width:min(440px,94vw)}.ai-dialog{width:min(900px,94vw)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-heading h2{font-size:23px;font-weight:600;letter-spacing:-.4px;margin:0}.dialog-heading .icon-button{border:0;background:#f0f4ed;font-size:25px;flex-shrink:0}.dialog-description{font-size:12px;line-height:1.7;color:#7b8973;margin:17px 0 23px;max-width:710px}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.catalog-card{border:1px solid var(--line);border-radius:12px;background:#fbfcf8;text-align:left;padding:16px;display:flex;gap:12px;align-items:center;min-height:100px}.catalog-card:hover{border-color:#8baa86;background:#f1f5eb}.catalog-card strong{display:block;font-size:12px;line-height:1.5}.catalog-card small{display:block;font-size:10px;color:#8b9682;margin-top:7px;line-height:1.4}.catalog-card .block-symbol{width:40px;height:48px}.ai-steps{display:grid;grid-template-columns:1fr 1fr;gap:27px}.ai-steps>section{padding:21px;background:#f7f9f2;border-radius:13px}.step-number{width:24px;height:24px;display:grid;place-items:center;font-size:11px;font-weight:700;border-radius:50%;background:#e4eddf;color:#476440}.ai-steps h3{font-size:15px;font-weight:600;margin:13px 0 20px}.ai-steps textarea{font-size:12px;resize:vertical;line-height:1.6}.dialog-actions{display:flex;gap:7px;flex-wrap:wrap}.dialog-actions .button{font-size:10px}.ai-result{font-size:12px;line-height:1.6;white-space:pre-wrap;margin-top:15px}.ai-result.error{color:#995640}.small-dialog form{margin-top:24px}.room-note{padding:10px 12px;border-radius:8px;background:#f5f7ef;color:#8a937f;font-size:10px;line-height:1.6}.editor details{margin-top:20px}.editor details summary{font-size:11px;color:#6d7a65;cursor:pointer;margin-bottom:16px}
@media(min-width:1600px){.workspace{grid-template-columns:285px minmax(260px,1fr) 320px}.block-item strong{font-size:12px}.field{font-size:12px}.preview-footer>span{font-size:11px;max-width:none}.editor{padding:25px}.project-bar{padding-top:30px;padding-bottom:25px}.app-header{padding:0 38px}}
@media(max-width:1100px){.app-header{padding:0 20px;height:77px}.release-badge{display:none}.workspace{grid-template-columns:210px minmax(230px,1fr) 260px;margin:0 15px;min-height:380px}.project-bar{padding:22px 20px}.project-bar h1{font-size:21px}.example-label{flex-direction:column;align-items:flex-start;gap:5px}.project-tools{gap:10px}.workspace-footer{padding:14px 20px;gap:10px}.price-note{max-width:230px;line-height:1.5}.editor{padding:18px 14px}.panel-heading{padding:20px 14px}.preview-footer{left:13px;right:13px}.preview-footer>span{max-width:140px;font-size:8px}.preview-footer .button{font-size:9px;padding:8px}.block-item{gap:7px}.block-symbol{width:29px}.block-item strong{font-size:10px}.block-item small{font-size:9px}.new-run{margin-left:12px;margin-right:12px}}
@media(max-width:820px){.app-header{height:auto;min-height:77px;flex-wrap:wrap;padding:16px 18px;gap:14px}.brand{font-size:13px}.brand-mark{width:34px;height:34px}.header-actions{gap:5px}.header-actions .button{padding:9px;font-size:10px;min-height:35px}.project-bar{align-items:flex-start;padding:20px 18px;gap:12px}.project-bar h1{font-size:20px}.example-label{font-size:9px}.example-label select{min-width:150px;font-size:10px}.history-buttons .icon-button{height:30px;width:30px;font-size:20px}.workspace{display:grid;grid-template-columns:1fr 1fr;height:auto;min-height:0;overflow:visible;background:none;border:0;box-shadow:none;gap:12px}.preview-panel{grid-column:1/-1;grid-row:1;height:58vw;min-height:360px;max-height:540px;border:1px solid var(--line);border-radius:14px}.composition-panel,.settings-panel{border:1px solid var(--line);border-radius:14px;max-height:550px;overflow:auto}.block-list{max-height:380px}.block-item strong{font-size:11px}.panel-heading h2{font-size:15px}.preview-footer>span{max-width:none;font-size:10px}.preview-footer .button{font-size:10px}.workspace-footer{flex-wrap:wrap;font-size:9px}.price-note{max-width:none}.validation-panel{margin:0 15px 20px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-steps{gap:14px}.ai-steps>section{padding:17px}}
@media(max-width:540px){.brand small{display:none}.header-actions .button{font-size:9px;padding:8px}.header-actions{flex:1;justify-content:flex-end}.brand{letter-spacing:.7px;font-size:12px}.brand-mark{display:none}.app-header{gap:8px;padding:14px}.project-bar{flex-direction:column;padding:20px 16px 15px;gap:15px}.project-tools{width:100%;justify-content:space-between}.example-label{flex-direction:row;align-items:center}.workspace{margin:0 10px;gap:10px}.preview-panel{height:410px;min-height:0}.composition-panel{grid-column:1/-1;max-height:320px}.settings-panel{grid-column:1/-1;max-height:none}.panel-footnote{margin-bottom:15px}.block-list{display:grid;grid-template-columns:1fr 1fr;gap:4px;max-height:175px}.run-section{grid-column:1/-1;display:contents}.run-heading{grid-column:1/-1;padding:12px 8px 3px}.block-item{margin-bottom:0}.new-run{margin-top:12px}.panel-heading{padding:17px}.preview-footer>span{font-size:9px;max-width:150px}.preview-toolbar{left:13px;right:13px}.preview-badge{left:16px}.editor{padding:21px}.dimension-grid{gap:14px}.workspace-footer{padding:16px;gap:9px}.workspace-footer>span:first-child{width:100%}.notice{margin:0 10px 12px;font-size:11px}dialog{padding:20px;border-radius:14px;max-height:92dvh}.dialog-heading h2{font-size:20px}.catalog-grid{gap:8px}.catalog-card{padding:13px 10px;gap:8px;min-height:98px}.catalog-card .block-symbol{width:29px;height:40px}.catalog-card strong{font-size:10px}.catalog-card small{font-size:9px}.ai-steps{grid-template-columns:1fr}.dialog-description{font-size:11px}.ai-dialog{width:96vw}}
/* Customer relationships, indicative sale price and asynchronous AI conversation. */
.link-note{padding:10px 12px;border-radius:9px;background:#edf5ef;color:#315345;font-size:12px;line-height:1.5}
.price-note{display:flex;flex-direction:column;gap:3px;max-width:560px;line-height:1.4}
.price-note strong{font-size:14px;color:#244e42}.price-note span{font-size:11px}
.chat-messages{max-height:260px;overflow:auto;display:flex;flex-direction:column;gap:10px;margin-bottom:16px}
.chat-messages:empty{display:none}.chat-message{padding:12px 14px;border-radius:12px;background:#eff4ef;max-width:90%;font-size:14px;line-height:1.5}
.chat-message.user{align-self:flex-end;background:#e4ede7}.chat-message strong{font-size:11px;color:#456253}.chat-message p{margin:4px 0 0;white-space:pre-wrap}
.ai-file-exchange{margin-top:24px;padding-top:15px;border-top:1px solid #dfe4dd}.ai-file-exchange>summary{cursor:pointer;font-size:13px;color:#456253}.ai-file-exchange .ai-steps{margin-top:16px}
/* Customer choices: fit a row, choose surfaces and browse by use. */
.finish-choice .field{margin-bottom:10px}.finish-choice .swatches{gap:8px;margin-bottom:19px}.finish-choice .swatch{background:var(--finish-color);height:25px;width:25px;border-width:2px}
.finish-choice .finish-oak,.finish-choice .finish-walnut{background:repeating-linear-gradient(92deg,transparent 0 3px,#ffffff28 4px 5px,transparent 7px 10px,#44301a20 11px 12px),var(--finish-color)}
.finish-choice .finish-stone{background:linear-gradient(145deg,transparent 35%,#ffffff70 36% 39%,transparent 40% 70%,#aaa69c55 71% 73%,transparent 74%),var(--finish-color)}
.decor-note{font-size:10px;color:#6e7c70;line-height:1.65;padding:10px 11px;border:1px solid #e3e9de;border-radius:8px;background:#f8faf5;margin:0 0 20px}
.fit-section>.section-label{margin-top:0}.fit-form{padding:14px 12px;border:1px solid #d8e4d7;background:#f5f8f1;border-radius:10px;margin:14px 0}.fit-form h3{font-size:12px;line-height:1.5;margin:0 0 13px;font-weight:650}.fit-form .field{margin-bottom:12px}.fit-form .fit-locks{margin:5px 0 14px}.fit-locks summary{font-size:10px;line-height:1.6;margin-bottom:8px}.fit-lock{font-size:10px;line-height:1.5;padding:7px 0;margin:0;border-top:1px solid #e4e9df}.fit-lock small{display:block;color:#788674;font-size:9px}.fit-lock input{flex-shrink:0}.fit-feedback{font-size:10px;line-height:1.6;color:#61745a;margin:10px 0 0}.fit-feedback:empty{display:none}.fit-feedback.error{color:#a64f40}.fit-form .text-button{margin-top:10px;text-align:left;line-height:1.6}
.catalog-filters{display:grid;grid-template-columns:1fr 1fr;gap:14px}.catalog-empty{grid-column:1/-1;padding:20px;border-radius:9px;background:#f5f8f1;font-size:12px;color:#71816b}
.rear-action{margin-top:10px}
.upper-alignment>.section-label{margin-top:0}.alignment-form{padding:14px 12px;border:1px solid #d6e3d9;background:#f2f7f4;border-radius:10px;margin:14px 0}.alignment-form h3{font-size:12px;line-height:1.5;margin:0 0 10px;font-weight:650}.alignment-form .field{margin-bottom:12px}.alignment-form .field-hint{display:block;margin-top:4px}.alignment-status{font-size:10px;color:#476a52;margin:0 0 12px}.unlink-top{text-align:left;line-height:1.5}
@media(max-width:540px){.catalog-filters{grid-template-columns:1fr;gap:0}.finish-choice .swatch{width:29px;height:29px}}
.media-settings>.section-label,.media-settings form>.section-label{margin-top:0}.media-settings .field{margin-bottom:13px}.media-settings .toggle-field{line-height:1.5}.media-settings .button{margin-top:8px}.media-note{font-size:10px;line-height:1.65;color:#657c70;padding:10px 11px;background:#f1f6f1;border-radius:8px}.mounting-status{padding:12px;border:1px solid #e4dac1;background:#faf7ed;border-radius:9px;margin:15px 0;font-size:10px;line-height:1.6;color:#77643d}.mounting-status strong{font-size:11px}.mounting-status p{margin:7px 0 0}.relative-placement{padding:13px 11px;border:1px solid var(--line);border-radius:9px}.relative-form .field{margin-bottom:12px}.relative-form .text-button{text-align:left;margin-top:12px;line-height:1.5}.tv-reference-item{border-top:1px solid var(--line);margin-top:12px}.media-disclosure .media-settings{margin-top:20px}.media-settings{scroll-margin-top:60px}
