#quote-dialog{margin:auto;width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;border:1px solid var(--line);border-radius:22px;background:var(--bg);color:var(--ink);box-shadow:0 24px 80px #0003;text-align:left}
#quote-dialog::backdrop{background:rgba(30,27,22,.65)}
.q-shell{padding:28px}.q-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.q-eyebrow{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;color:var(--accent-dark);font-weight:600}
#quote-dialog button,#quote-dialog input,#quote-dialog select,#quote-dialog textarea{font:inherit}
#quote-dialog button{cursor:pointer}.q-close{width:44px;height:44px;background:transparent;border:1px solid var(--line);border-radius:50%;font-size:1.4rem!important;color:var(--ink)}
#quote-dialog h2{font:500 1.8rem/1.15 'Fraunces',serif;margin:22px 0 12px;outline:none}
#quote-dialog p{font-size:.88rem;line-height:1.6;color:var(--ink-soft)}
.q-progress{display:flex;gap:6px;margin:18px 0 10px}.q-progress span{height:3px;flex:1;background:var(--line)}.q-progress span.done{background:var(--accent-dark)}
.q-step-label{font-size:.73rem!important}.q-fields{display:grid;gap:18px;margin:22px 0}.q-label{display:grid;gap:8px;font-size:.88rem;font-weight:600}
#quote-dialog input:not([type=checkbox]):not([type=radio]),#quote-dialog select,#quote-dialog textarea{width:100%;min-height:48px;background:white;border:1px solid #b6ad9e;border-radius:10px;padding:12px;color:var(--ink);font-size:1rem}
#quote-dialog textarea{resize:vertical;min-height:85px}.q-help{font-size:.78rem;line-height:1.5;color:var(--ink-soft);font-weight:400}
.q-actions{display:flex;gap:10px;margin-top:24px}.q-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 18px;border:1px solid var(--ink);border-radius:10px;background:var(--ink);color:white;text-decoration:none;font-size:.88rem;text-align:center;flex:1}.q-back{background:transparent;color:var(--ink);flex:0 0 auto;border-color:#b6ad9e}
#quote-dialog :focus-visible{outline:3px solid var(--accent-dark);outline-offset:3px}
.q-price{background:white;border:1px solid var(--line);border-radius:14px;padding:20px;margin:22px 0}.q-price strong{display:block;font:500 1.8rem/1.3 'Fraunces',serif;margin:8px 0;overflow-wrap:anywhere}.q-discount{display:inline-block;border-radius:5px;padding:5px 8px;background:#e8eddf;color:#344629;font-size:.75rem;font-weight:600;margin:8px 0}
.q-check{display:flex;align-items:flex-start;gap:10px;font-size:.85rem;line-height:1.5}.q-check input{width:20px;height:20px;flex-shrink:0;margin-top:2px;accent-color:var(--ink)}
.q-note{border-top:1px solid var(--line);padding-top:16px;margin-top:20px;font-size:.75rem!important}.q-research{background:none;border:0;text-decoration:underline;color:var(--ink-soft);min-height:44px;width:100%;margin-top:12px;font-size:.8rem!important}
@media(max-width:380px){.q-shell{padding:20px}#quote-dialog h2{font-size:1.55rem}.q-price strong{font-size:1.55rem}.q-actions{flex-wrap:wrap}}
.q-options{border:0;min-width:0}.q-options legend{font-size:.88rem;font-weight:600;margin-bottom:10px}.q-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.q-choice{display:flex;align-items:center;gap:9px;padding:14px 12px;min-height:52px;border:1px solid #b6ad9e;border-radius:10px;background:white;font-size:.85rem;line-height:1.4;cursor:pointer}
.q-choice:has(:checked){background:#eee8dc;border-color:var(--accent-dark)}.q-choice input{width:18px;height:18px;flex-shrink:0;accent-color:var(--ink)}
#quote-dialog .q-room-total{font-weight:600;color:var(--ink)}#quote-dialog .q-error{color:#9a281d;font-weight:600}.q-summary{margin-bottom:16px;font-size:.8rem!important}.q-close{flex-shrink:0}
.q-review{background:white;border:1px solid var(--line);border-radius:14px;padding:18px}.q-review-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.88rem}.q-review-head:not(:first-child){border-top:1px solid var(--line);padding-top:12px;margin-top:14px}.q-review-head button{color:var(--accent-dark);border:0;background:none;min-height:44px;text-decoration:underline;font-size:.78rem!important}.q-review ul{padding-left:20px;margin:8px 0;font-size:.88rem;line-height:1.8}
.q-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.q-breakdown{margin:0 0 22px}.q-breakdown h3{font-size:.88rem;margin-bottom:10px}.q-breakdown>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:.8rem;line-height:1.5}.q-breakdown b{font-weight:500;flex-shrink:0}.q-breakdown p{font-size:.75rem!important;margin-top:10px}
@media(max-width:400px){.q-breakdown>div{display:grid;gap:3px}}
.q-scope{margin-top:18px;color:var(--ink)!important}.q-offer{border-top:1px solid var(--line);padding-top:20px}.q-offer h3{font-size:.95rem;margin-bottom:12px}.q-offer ul{padding-left:20px;margin-bottom:18px;font-size:.85rem;line-height:1.65}.q-offer li+li{margin-top:8px}.q-offer p{margin-bottom:14px}.q-offer h3:not(:first-child){margin-top:22px}.q-conditions{border-top:1px solid var(--line);padding-top:16px;font-size:.78rem!important}
.q-room-group+.q-room-group{border-top:1px solid var(--line);padding-top:18px}.q-room-group legend{padding-right:8px}.q-choice-wide{grid-column:1 / -1}.q-choice small{display:block;margin-top:5px;font-size:.72rem;line-height:1.5;color:var(--ink-soft)}.q-rooms .q-choice{align-items:flex-start}.q-rooms input{margin-top:2px}.q-group-help{font-size:.78rem!important;margin:0 0 12px}.q-advisory{background:#eee8dc;border-left:3px solid var(--accent-dark);padding:12px;font-size:.78rem!important;margin-top:10px}.q-advisory[hidden]{display:none}.q-discount-condition{font-size:.76rem!important;margin-top:12px}
@media(max-width:380px){.q-choice{padding:12px 9px;font-size:.8rem;gap:7px}.q-choice input{width:17px;height:17px}}
/* ===== Simulador v2: ambientes + níveis ===== */
.q-body{margin:20px 0 0}
.q-rooms-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.q-room{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 14px;border:1px solid #b6ad9e;border-radius:12px;background:white}
.q-room.on{background:#eee8dc;border-color:var(--accent-dark)}
.q-room-name{display:grid;gap:2px;min-width:0}.q-room-name b{font-size:.9rem;font-weight:600;line-height:1.3}.q-room-name small{font-size:.74rem;color:var(--ink-soft)}
.q-stepper{display:flex;align-items:center;gap:4px;flex-shrink:0}
.q-stepper button{width:44px;height:44px;border-radius:50%;border:1px solid #b6ad9e;background:white;color:var(--ink);font-size:1.25rem!important;line-height:1}
.q-stepper button[data-inc]{background:var(--ink);border-color:var(--ink);color:white}
.q-stepper button:disabled{opacity:.35;cursor:default}
.q-stepper output{min-width:22px;text-align:center;font-weight:600;font-variant-numeric:tabular-nums}
.q-hint{font-size:.78rem!important;margin-top:12px}
#quote-dialog .q-total{position:sticky;bottom:0;margin:16px -28px 0;padding:14px 28px;background:var(--bg);border-top:1px solid var(--line);font-weight:600;color:var(--ink);font-size:.86rem}
.q-all{background:#e8eddf;border-radius:12px;padding:14px 16px;margin:14px 0 16px;font-size:.84rem;color:#2c3b22}
.q-all ul{margin:6px 0 0;padding-left:18px;line-height:1.6}
.q-levels{display:grid;gap:10px}
.q-level{position:relative;display:grid;gap:6px;padding:16px;border:1px solid #b6ad9e;border-radius:14px;background:white;cursor:pointer}
.q-level.on{border:2px solid var(--accent-dark);padding:15px;background:#fbf8f2}
.q-level input{position:absolute;opacity:0;pointer-events:none}
.q-level:has(input:focus-visible){outline:3px solid var(--accent-dark);outline-offset:3px}
.q-level-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.q-level-head b{font:500 1.15rem/1.2 'Fraunces',serif}
.q-level-head em{font-style:normal;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600;background:var(--ink);color:white;padding:4px 8px;border-radius:5px}
.q-level-desc{font-size:.8rem;color:var(--ink-soft);line-height:1.5}
.q-level ul{margin:2px 0 0;padding-left:18px;font-size:.82rem;line-height:1.6}
.q-level-note{font-size:.74rem;color:#8a4b14;font-weight:600}
.q-level-price{display:flex;align-items:baseline;gap:10px;margin-top:4px}.q-level-price strong{font:500 1.6rem/1.2 'Fraunces',serif}.q-level-price s{font-size:.82rem;color:var(--ink-soft)}
.q-terms{margin-top:16px;border-top:1px solid var(--line);padding-top:12px;font-size:.8rem}
.q-terms summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}
.q-terms p{font-size:.78rem!important;margin-top:8px}
@media(max-width:380px){#quote-dialog .q-total{margin:16px -20px 0;padding:12px 20px}.q-stepper button{width:40px;height:40px}.q-room{padding-left:10px}}

/* Exemplos de entrega */
.q-ex{display:flex;align-items:center;gap:10px;margin:6px 0 2px;padding:8px;border:1px dashed #b6ad9e;border-radius:10px;background:#fbf9f4;color:var(--ink);text-align:left;width:100%}
.q-ex-thumbs{display:flex;gap:4px;flex:none}.q-ex-thumbs img{width:48px;height:36px;object-fit:cover;border-radius:5px;border:1px solid var(--line);background:white}
.q-ex-text{white-space:nowrap;font-size:.8rem;font-weight:600;color:var(--accent-dark)}
.q-ex-all{margin:14px 0 0}.q-link{background:none;border:0;padding:0;color:var(--accent-dark);font-weight:600;font-size:.88rem;text-decoration:underline;text-underline-offset:3px}
.q-viewer{position:fixed;inset:0;z-index:10;display:flex;flex-direction:column;gap:12px;padding:16px;background:#18160f;color:#fbf9f4;isolation:isolate}
.q-viewer[hidden]{display:none}
.q-v-top{display:flex;justify-content:space-between;align-items:center}.q-v-count{font-size:.8rem;opacity:.8}
.q-v-close{width:44px;height:44px;border-radius:50%;border:1px solid #fff5;background:transparent;color:#fbf9f4;font-size:1.4rem!important}
.q-viewer figure{flex:1;min-height:0;margin:0;display:flex;flex-direction:column;gap:10px;justify-content:center}
.q-viewer img{max-width:100%;max-height:calc(100dvh - 220px);object-fit:contain;margin:0 auto;border-radius:8px;background:white}
.q-viewer figcaption{display:grid;gap:2px;text-align:center}.q-viewer figcaption b{font-size:1rem}.q-viewer figcaption span{font-size:.78rem;opacity:.75}
.q-v-nav{display:flex;gap:10px}.q-v-nav button{flex:1;min-height:48px;border-radius:10px;border:1px solid #fff5;background:transparent;color:#fbf9f4}.q-v-nav button:disabled{opacity:.3}

/* Botão "Ver valores" sempre visível na etapa 1 (antes ficava abaixo da lista) */
#quote-dialog .q-sticky{position:sticky;bottom:0;z-index:2;margin:16px -28px 0;padding:12px 28px 14px;background:var(--bg);border-top:1px solid var(--line);box-shadow:0 -8px 20px #0000000d}
#quote-dialog .q-sticky .q-total{position:static;margin:0;padding:0;border:0;background:none}
#quote-dialog .q-sticky .q-actions{margin-top:10px}
@media(max-width:380px){#quote-dialog .q-sticky{margin:16px -20px 0;padding:10px 20px 12px}}

#quote-dialog .q-level-price{flex-wrap:wrap}#quote-dialog .q-installment{display:block;flex-basis:100%;font-size:.78rem;font-weight:500;color:#6b5a52;margin-top:2px}
#quote-dialog .q-how ol{margin:6px 0 0;padding-left:20px}#quote-dialog .q-how li{margin:3px 0}
#quote-dialog .q-delivered{margin:4px 0 18px}#quote-dialog .q-delivered-title{font-size:.72rem!important;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:#6b5a52;margin:0 0 8px}
#quote-dialog .q-delivered-row{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
#quote-dialog .q-delivered-row a{flex:0 0 84px;scroll-snap-align:start;text-decoration:none;color:var(--ink)}
#quote-dialog .q-delivered-row img{display:block;width:84px;height:126px;object-fit:cover;border-radius:10px;border:1px solid #e3dbd0;background:#eee}
#quote-dialog .q-delivered-row span{display:block;font-size:.72rem;line-height:1.25;margin-top:5px}
#quote-dialog .q-reel{position:fixed;inset:0;z-index:20;background:rgba(20,14,10,.82);display:flex;align-items:center;justify-content:center;padding:14px}
#quote-dialog .q-reel[hidden]{display:none}
#quote-dialog .q-reel-box{width:min(380px,100%);max-height:100%;display:flex;flex-direction:column;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 24px 60px -20px rgba(0,0,0,.5)}
#quote-dialog .q-reel-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px 10px 16px;border-bottom:1px solid #eee5dc}
#quote-dialog .q-reel-top b{font-size:.92rem}
#quote-dialog .q-reel-close{width:38px;height:38px;border-radius:50%;border:1px solid #e3dbd0;background:#fff;font-size:1.3rem;line-height:1;cursor:pointer;color:var(--ink)}
#quote-dialog .q-reel iframe{display:block;width:100%;height:min(660px,calc(100dvh - 140px));border:0;background:#fafafa}
#quote-dialog .q-reel-ig{display:block;text-align:center;padding:10px;font-size:.8rem;color:#6b5a52;text-decoration:none;border-top:1px solid #eee5dc}
