/* MAXO Casas — simulador, escopo isolado; não altera o CSS da plataforma. */
.mxs-page{padding:54px 24px 84px;background:#fff}.mxs-wrap{max-width:1200px}.mxs-head{margin:0 0 30px}.mxs-head h1{font-size:clamp(32px,4.2vw,54px);max-width:800px}.mxs-head .lead{margin:14px 0 0;font-size:18px;max-width:760px}.mxs-back{display:inline-block;font-size:14px;margin-bottom:22px;text-decoration:underline;text-underline-offset:4px}.mxs-eyebrow{font-size:12px;font-weight:750;letter-spacing:.1em;margin:0 0 9px}.mxs-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.mxs-panel,.mxs-side-card{border:1px solid #dadada;border-radius:18px;padding:clamp(20px,3vw,34px);background:#fff;min-width:0}.mxs-side-card{background:#f6f6f6;position:sticky;top:85px}.mxs-side-card img{display:block;max-width:134px;height:auto;margin-bottom:30px}.mxs-side-card h2{font-size:25px;line-height:1.14;margin:0 0 12px}.mxs-side-card p{font-size:13px;line-height:1.6}.mxs-side-card hr{border:0;border-top:1px solid #d4d4d4;margin:20px 0}.mxs-step{display:flex;gap:14px;align-items:center;border-top:1px solid #e2e2e2;padding-top:26px;margin:30px 0 14px}.mxs-step:first-of-type{border:0;padding-top:0;margin-top:0}.mxs-step span{display:inline-flex;align-items:center;justify-content:center;width:39px;height:39px;border-radius:11px;background:#1d1d1d;color:#fff;font-size:13px;font-weight:700;flex-shrink:0}.mxs-step h2{font-size:23px;line-height:1.15;margin:0}.mxs-hint{font-size:13px!important;color:#686868;line-height:1.5}.mxs-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:17px 0}.mxs-service{border:1px solid #ddd;border-radius:12px;display:flex;align-items:center;gap:10px;padding:15px;cursor:pointer;font-size:14px;font-weight:600;line-height:1.3}.mxs-service:has(input:checked){border-color:#171717;background:#f4f4f4}.mxs-service input{accent-color:#202020;width:18px;height:18px;flex-shrink:0}.mxs-quantities{display:grid;gap:10px;margin:12px 0 8px}.mxs-quantity{border:1px solid #e7e7e7;border-radius:12px;padding:16px;background:#fbfbfb;display:grid;grid-template-columns:1fr 1fr;gap:12px}.mxs-quantity>strong{grid-column:1/-1;font-size:15px}.mxs-quantity label,.mxs-fields label{display:grid;gap:5px;font-size:13px;font-weight:600}.mxs-page input:not([type=checkbox]):not([type=hidden]):not([type=file]),.mxs-page select,.mxs-page textarea{width:100%;min-width:0;padding:12px 13px;border:1px solid #ccc;border-radius:9px;background:white;color:#202020;font:inherit;font-size:15px}.mxs-page textarea{resize:vertical;min-height:110px}.mxs-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:10px 0}.mxs-fields .mxs-full{grid-column:1/-1}.mxs-check{display:flex!important;gap:9px;align-items:flex-start!important;font-size:13px!important;font-weight:400!important;line-height:1.5}.mxs-check input{flex-shrink:0;width:18px;height:18px;margin-top:2px;accent-color:#171717}.mxs-consent{margin:16px 0}.mxs-upload{display:grid;gap:8px;border:1px dashed #aaa;border-radius:12px;padding:16px;font-size:13px;margin-top:14px}.mxs-upload input{max-width:100%}.mxs-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0}.mxs-btn{cursor:pointer;border:1.5px solid #1d1d1d;background:#1d1d1d;color:#fff;border-radius:100px;padding:12px 19px;font:600 14px/1.3 system-ui,sans-serif;min-height:45px}.mxs-btn-light{background:#f2f2f2;color:#171717;border-color:#bbb}.mxs-btn-outline{background:#fff;color:#171717}.mxs-btn:disabled{opacity:.5;cursor:not-allowed}.mxs-result,.mxs-suggestions{border:1px solid #dedede;background:#fafafa;border-radius:13px;padding:18px;margin-top:18px;overflow:auto}.mxs-result h3,.mxs-suggestions h3{font-size:18px;margin:0 0 15px}.mxs-result p{margin:8px 0}.mxs-result table{font-size:13px}.mxs-result td,.mxs-result th{padding:8px 5px}.mxs-total{font-size:20px;font-weight:750}.mxs-message{font-size:14px;font-weight:600;min-height:1.8em}.mxs-suggestions ul{padding-left:24px}.mxs-admin{max-width:1180px}.mxs-admin h1{font-size:clamp(30px,4vw,45px)}.mxs-admin h2{font-size:25px}.mxs-admin .mxs-panel{margin:25px 0}.mxs-table-wrap{overflow-x:auto}.mxs-admin-table{font-size:13px}.mxs-admin-table input{min-width:125px}.mxs-request{padding:18px 0;border-top:1px solid #ddd}.mxs-request h3{font-size:18px}.mxs-request pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.mxs-request .mxs-toolbar select{width:auto}
@media(max-width:950px){.mxs-layout{grid-template-columns:1fr}.mxs-side-card{position:static;max-width:none}.mxs-side-card img{margin-bottom:14px}}@media(max-width:600px){.mxs-page{padding:34px 16px 64px}.mxs-panel,.mxs-side-card{padding:18px}.mxs-services,.mxs-quantity,.mxs-fields{grid-template-columns:1fr}.mxs-service{padding:13px}.mxs-step h2{font-size:20px}.mxs-btn{width:100%}.mxs-toolbar{align-items:stretch}.mxs-toolbar .mxs-hint{width:100%}}
/* Bloco de contacto público: preserva contacto à esquerda e aproveita a zona decorativa à direita. */
.ct .pn.mxsc-contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:center;gap:35px;border-radius:28px}.ct .pn.mxsc-contact .in{max-width:600px}.ct .pn.mxsc-contact .key{display:none}.mxsc-widget{background:#fff;border:1px solid #dedede;border-radius:19px;padding:26px;position:relative;min-width:0}.mxsc-widget h3{font-size:25px;line-height:1.12;margin-bottom:12px}.mxsc-widget p{font-size:15px;color:#555;margin:0 0 20px}.mxsc-widget ul{font-size:14px;padding:0;list-style:none;margin:0 0 20px}.mxsc-widget li{padding:6px 0}.mxsc-widget li::before{content:'✓';margin-right:9px}.mxsc-widget .btn{width:100%;text-align:center}.mxsc-widget .mxs-hint{margin:12px 0 0;font-size:12px}.ct .pn.mxsc-contact .in h2{font-size:clamp(31px,3.8vw,47px)}
@media(max-width:820px){.ct .pn.mxsc-contact{grid-template-columns:1fr;gap:20px;padding:clamp(24px,5vw,45px)}.mxsc-widget{max-width:none}}

/* 31/10/2026 — entrada por voz/texto primeiro, detalhes avançados recolhidos. */
.mxs-step-main{border-top:0;margin-top:0;padding-top:0}.mxs-first{margin-top:16px}.mxs-voice-toolbar{margin:10px 0 18px}.mxs-voice-toolbar .mxs-btn{font-size:16px;min-height:55px}.mxs-more{border:1px solid #ddd;border-radius:16px;padding:16px 20px;margin:28px 0}.mxs-more>summary{font-size:15px;font-weight:700;cursor:pointer;list-style-position:inside;padding:8px 0}.mxs-more[open]>summary{margin-bottom:18px}.mxs-review-line{display:grid;gap:8px;max-width:340px;font-size:13px;font-weight:700;margin:16px 0}.mxs-review-line input{font:inherit;border:1px solid #ccc;border-radius:9px;padding:10px}.mxs-review-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,180px) auto;align-items:center;gap:12px;margin:12px 0;padding:12px;border:1px solid #e3e3e3;border-radius:12px;background:#fff}.mxs-review-item span:first-child{font-weight:700}.mxs-review-item input{width:100%;min-width:0}.mxs-review-item small{grid-column:1/-1;color:#656565}.mxs-suggestions[hidden],.mxs-more:not([open]) .mxs-quantity{display:none}@media(max-width:600px){.mxs-review-item{grid-template-columns:1fr auto}.mxs-review-item span:first-child{grid-column:1/-1}.mxs-more{padding:14px}}

/* 31/10/2026 — resumo de IA revisto no próprio simulador e aviso dos trabalhos sem preço. */
.mxs-ai-summary-label{display:grid;gap:9px;margin:15px 0;font-size:14px;font-weight:700}.mxs-ai-summary-label textarea{width:100%;min-height:125px}.mxs-pending{padding:13px 15px;border:1px solid #b0ada3;background:#fffdf7;border-radius:10px;margin:13px 0}.mxs-pending p{font-size:13px;margin:6px 0}.mxs-result .mxs-pending strong{font-size:13px}

/* Mapa de quantidades público: separação de obras e etapas, com preços legíveis. */
.mxs-budget-service{background:#fff;border:1px solid #dbdbdb;border-radius:13px;padding:18px;margin:16px 0}
.mxs-budget-service h4{font-size:18px;margin:0 0 8px}.mxs-budget-service h5{font-size:15px;margin:18px 0 8px}
.mxs-budget-quantity{font-size:14px;font-weight:600;margin:8px 0}.mxs-budget-table{width:100%;border-collapse:collapse;min-width:550px;font-size:13px}
.mxs-budget-table th{text-align:left;background:#f4f4f4;border-bottom:1px solid #ddd}.mxs-budget-table td{border-bottom:1px solid #e4e4e4;vertical-align:top}
.mxs-budget-table td:first-child{min-width:165px}.mxs-budget-table td:nth-child(n+2){white-space:nowrap;font-variant-numeric:tabular-nums}
.mxs-budget-subtotal{text-align:right;font-size:13px;font-weight:600;margin:9px 0}.mxs-budget-service-total{border-top:1px solid #ddd;padding-top:12px;font-size:15px;font-weight:700;margin:14px 0 0}
.mxs-budget-summary{border-top:2px solid #202020;padding-top:16px;margin-top:26px}.mxs-budget-summary .mxs-total{font-size:22px;margin-top:14px}
.mxs-admin-table td input,.mxs-admin-table td select{min-width:110px;max-width:260px}
@media(max-width:600px){.mxs-budget-service{padding:12px}.mxs-budget-table{font-size:12px}.mxs-budget-summary .mxs-total{font-size:19px}}

/* Três documentos: secção de estudo com a mesma linguagem do simulador. */
.mxs-concept{margin:20px 0;padding:20px;border:1px solid #d9d9d9;border-radius:14px;background:#fff}
.mxs-concept-header h3{font-size:19px;margin:0 0 6px}
.mxs-concept-header p{margin:0 0 15px}
.mxs-concept-preview{padding:18px;background:#f8f8f8;border-radius:11px;border:1px solid #e1e1e1;line-height:1.6}
.mxs-concept-preview h4{font-size:18px;margin:0 0 12px}
.mxs-concept-preview h5{font-size:14px;margin:18px 0 5px}
.mxs-concept-preview p,.mxs-concept-preview li{font-size:14px}
@media(max-width:600px){.mxs-concept{padding:15px}}

/* Pré-visualização conceptual com imagem, sem alterar o estilo geral MAXO. */
.mxs-image-actions{margin:14px 0}
.mxs-image-preview{margin:12px 0 20px;padding:10px;background:#f5f5f5;border:1px solid #dedede;border-radius:10px}
.mxs-image-preview img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;border-radius:7px}
.mxs-image-preview p{margin:8px 4px 2px;color:#555;font-size:12px;line-height:1.5}

.mxs-price-warning{font-size:14px;padding:12px 14px;border:1px solid #b8b8b8;border-radius:9px;background:#f8f8f8;color:#252525;line-height:1.45}

/* MAXO Quality: cards compactos, mesmos botões/design MAXO. */
.mxs-wall{border:1px solid #dadada;border-radius:12px;padding:20px;margin:20px 0;background:#fafafa}
.mxs-wall-head h2{font-size:1.25rem;margin:0 0 8px}.mxs-wall-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-top:12px}
.mxs-wall-card{background:white;border:1px solid #ddd;border-radius:10px;padding:15px;display:flex;flex-direction:column;gap:9px}
.mxs-wall-card h3{font-size:1rem;margin:0}.mxs-wall-card p{font-size:.88rem;line-height:1.45;margin:0;flex:1}
.mxs-wall-card small{color:#666;line-height:1.4}.mxs-wall-card button{font-size:.86rem;padding:10px;margin-top:3px}.mxs-wall .mxs-toolbar label{font-size:.9rem}
.mxs-wall .mxs-toolbar input{max-width:145px;padding:10px;margin:0 8px;border-radius:7px;border:1px solid #ccc}
.mxs-wall-time{font-size:.87rem;color:#333;font-weight:600}@media(max-width:550px){.mxs-wall{padding:12px}.mxs-wall-options{grid-template-columns:1fr}}
