.ai-page { background: #faf8ff; }
.ai-page .ai-main { padding-top: 80px; overflow: visible; }
.ai-container { width: min(1280px, calc(100% - 64px)); margin-inline: auto; }
.ai-page .lang-toggle { min-width: 100px; }
.ai-context { margin-top: 16px; padding: 24px; border-radius: 12px; background: #f2f3ff; box-shadow: 0 2px 9px rgba(19,27,46,.04); }
.ai-context::after { content: ""; position: absolute; pointer-events: none; }
.ai-context-top { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.ai-context-copy { min-width: 0; max-width: 790px; }
.ai-version { margin: 0; display: flex; align-items: center; gap: 6px; color: #005c55; font: 600 14px/21px "Plus Jakarta Sans", sans-serif; text-transform: uppercase; }
.ai-version .material-symbols-outlined { width: 20px; height: 20px; border-radius: 50%; display: grid; place-items: center; color: #fff; background: #0f766e; font-size: 14px; }
.ai-context h1 { margin: 5px 0 0; overflow-wrap: anywhere; color: #131b2e; font: 600 22px/30px "Plus Jakarta Sans", sans-serif; letter-spacing: 0; }
.ai-context-copy > p:last-child { margin: 3px 0 0; color: #3e4947; font-size: 14px; line-height: 21px; }
.ai-market-ticker { flex: 0 0 auto; padding: 10px 14px; border-radius: 12px; display: flex; align-items: center; gap: 14px; background: #fff; box-shadow: 0 2px 9px rgba(19,27,46,.06); }
.ai-market-ticker p { margin: 0; }
.ai-market-ticker p > span, .ai-market-ticker strong { display: block; }
.ai-market-ticker p > span { color: #3e4947; font-size: 14px; line-height: 21px; }
.ai-market-ticker strong { color: #131b2e; font-size: 14px; line-height: 21px; }
.ai-market-ticker strong small { color: #3e4947; font-size: 14px; font-weight: 400; }
.ai-market-ticker p:last-child strong { color: #005c55; }
.ai-market-ticker strong b { font-size: 14px; vertical-align: middle; }
.ai-market-ticker > i { width: 1px; height: 32px; background: #e2e7ff; }
.ai-prompts { margin-top: 16px; padding-top: 8px; display: flex; flex-wrap: wrap; align-items: center; gap: 5px; }
.ai-prompts > span { color: #3e4947; font-size: 14px; line-height: 21px; font-weight: 600; }
.ai-prompts button { min-height: 27px; padding: 4px 8px; border: 0; border-radius: 999px; color: #131b2e; background: #fff; box-shadow: 0 1px 5px rgba(19,27,46,.05); font-size: 14px; line-height: 21px; cursor: pointer; }
.ai-prompts button:hover { color: #005c55; background: #eaedff; }
.ai-prompts--composer { margin: 0 0 10px; padding: 0; gap: 6px; }
.ai-prompts--composer > span { width: 100%; color: #61716d; font-size: 14px; text-transform: uppercase; }
.ai-prompts--composer button { border: 1px solid #dce5e2; background: #f7faf9; box-shadow: none; }

.ai-workspace { display: grid; grid-template-columns: minmax(0,2fr) minmax(320px,1fr); align-items: start; gap: 24px; padding-block: 24px 40px; }
.ai-page.is-design-mode .ai-workspace { grid-template-columns: minmax(0,1fr); }
.ai-page.is-design-mode .ai-intelligence-drawer { display: none; }
.ai-page.is-design-mode .ai-chat-shell { width: 100%; max-width: 1180px; margin-inline: auto; }
.ai-page:has(#ai-design-studio:not([hidden])) .ai-workspace { grid-template-columns: minmax(0,1fr); }
.ai-page:has(#ai-design-studio:not([hidden])) .ai-intelligence-drawer { display: none; }
.ai-page:has(#ai-design-studio:not([hidden])) .ai-chat-shell { width: 100%; max-width: 1180px; margin-inline: auto; }
.ai-chat-shell { min-width: 0; overflow: hidden; border-radius: 12px; display: flex; flex-direction: column; background: #fff; box-shadow: 0 2px 10px rgba(19,27,46,.055); }
.ai-session-header { min-height: 76px; padding: 16px 24px; display: flex; align-items: center; justify-content: space-between; gap: 16px; background: #fff; }
.ai-session-header > div:first-child { min-width: 0; display: flex; align-items: center; gap: 9px; }
.ai-bot-avatar { position: relative; flex: 0 0 auto; width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; color: #fff; background: #0f766e; }
.ai-bot-avatar::after { content: ""; position: absolute; right: 0; bottom: 0; width: 10px; height: 10px; border: 2px solid #fff; border-radius: 50%; background: #6df5e1; }
.ai-bot-avatar i { font-size: 20px; }
.ai-session-header > div:first-child > div { min-width: 0; }
.ai-session-header p { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 5px; }
.ai-session-header p strong { font: 700 18px/24px "Plus Jakarta Sans", sans-serif; }
.ai-session-header p span { padding: 3px 6px; border-radius: 4px; color: #005c55; background: #f2f3ff; font-size: 14px; line-height: 21px; font-weight: 600; }
.ai-session-header small { display: block; margin-top: 1px; overflow-wrap: anywhere; color: #3e4947; font-size: 14px; line-height: 21px; }
.ai-session-actions { flex: 0 0 auto; display: flex; gap: 3px; }
.ai-session-actions button { width: 32px; height: 32px; padding: 0; border: 0; border-radius: 8px; display: grid; place-items: center; color: #3e4947; background: transparent; cursor: pointer; }
.ai-session-actions button:hover, .ai-session-actions button.active { color: #005c55; background: #f2f3ff; }
.ai-session-actions .material-symbols-outlined { font-size: 19px; }
.ai-voice-panel { margin: 0 24px 14px; padding: 12px; border: 1px solid #dce5e2; border-radius: 10px; display: grid; grid-template-columns: minmax(180px,1.3fr) minmax(140px,1fr) minmax(140px,1fr) minmax(170px,1.1fr) auto; align-items: end; gap: 10px; background: #f7faf9; }
.ai-voice-panel > div:first-child { min-width: 0; display: flex; align-items: center; gap: 8px; }
.ai-voice-panel > div:first-child > .material-symbols-outlined { width: 34px; height: 34px; flex: 0 0 auto; border-radius: 8px; display: grid; place-items: center; color: #fff; background: #0f766e; font-size: 18px; }
.ai-voice-panel > div:first-child strong, .ai-voice-panel > div:first-child small { display: block; }
.ai-voice-panel > div:first-child strong { color: #17241f; font-size: 14px; line-height: 21px; }
.ai-voice-panel > div:first-child small { margin-top: 1px; color: #66736f; font-size: 14px; line-height: 21px; }
.ai-voice-panel label { min-width: 0; display: grid; gap: 4px; color: #44524e; font-size: 14px; line-height: 21px; font-weight: 700; }
.ai-voice-panel select { width: 100%; height: 32px; padding: 0 8px; border: 1px solid #cdd9d5; border-radius: 7px; color: #17241f; background: #fff; font-size: 14px; }
.ai-voice-rate { grid-template-columns: minmax(0,1fr) auto; align-items: center; }
.ai-voice-rate span { grid-column: 1 / -1; }
.ai-voice-rate input { min-width: 0; accent-color: #0f766e; }
.ai-voice-rate b { min-width: 34px; color: #005c55; font-size: 14px; text-align: right; }
#ai-test-voice { height: 32px; padding: 0 10px; border: 0; border-radius: 7px; display: flex; align-items: center; gap: 4px; color: #fff; background: #005c55; font-size: 14px; font-weight: 700; cursor: pointer; }
#ai-test-voice .material-symbols-outlined { font-size: 16px; }
.ai-chat-stream { min-height: 660px; max-height: 720px; padding: 24px; overflow-y: auto; display: flex; flex-direction: column; gap: 24px; background: #faf8ff; scrollbar-width: thin; }
.ai-message { min-width: 0; display: flex; align-items: flex-start; gap: 8px; }
.ai-message > div { min-width: 0; }
.message-avatar { flex: 0 0 auto; width: 32px; height: 32px; margin-top: 3px; border-radius: 50%; display: grid; place-items: center; color: #fff; background: #0f766e; }
.message-avatar.user { color: #131b2e; background: #eaedff; }
.message-avatar i { font-size: 16px; }
.assistant-message { max-width: 760px; }
.ai-message article { padding: 16px; border-radius: 16px; background: #fff; box-shadow: 0 2px 8px rgba(19,27,46,.05); }
.assistant-message > div > article { border-top-left-radius: 2px; }
.ai-replay-message { width: max-content; margin-top: 10px; padding: 5px 9px; border: 1px solid #d5e2df; border-radius: 6px; display: inline-flex; align-items: center; gap: 5px; color: #275f59; background: #f5faf8; font: inherit; font-size: 14px; line-height: 21px; font-weight: 700; cursor: pointer; }
.ai-replay-message:hover { border-color: #8ebbb4; background: #edf7f4; }
.ai-replay-message:focus-visible { outline: 2px solid #0f766e; outline-offset: 2px; }
.ai-replay-message .material-symbols-outlined { font-size: 15px; }
.ai-message article p { margin: 0; color: #131b2e; font-size: 14px; line-height: 21px; white-space: pre-line; }
.ai-suggestion-list { margin-top: 14px; padding-top: 12px; border-top: 1px solid #e1e8e6; display: grid; gap: 7px; }
.ai-suggestion-link { min-width: 0; padding: 11px 12px; border: 1px solid #dce5e2; border-radius: 7px; display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 2px 14px; color: #263531; background: #f8fbfa; transition: border-color .2s ease, background .2s ease, transform .2s ease; }
.ai-suggestion-link:hover { border-color: #0f766e; color: #005c55; background: #edf7f4; transform: translateY(-1px); }
.ai-suggestion-link > span:first-child { min-width: 0; display: flex; align-items: center; gap: 7px; }
.ai-suggestion-link > span:first-child small { flex: 0 0 auto; margin: 0; padding: 2px 5px; border-radius: 4px; color: #005c55; background: #dff2ed; font-size: 14px; line-height: 21px; font-weight: 800; text-transform: uppercase; }
.ai-suggestion-link strong { min-width: 0; overflow: hidden; color: #131b2e; font-size: 14px; line-height: 21px; text-overflow: ellipsis; white-space: nowrap; }
.ai-suggestion-link > span:nth-child(2) { color: #005c55; font-size: 14px; line-height: 21px; font-weight: 800; text-align: right; }
.ai-suggestion-link > span:nth-child(3) { overflow: hidden; color: #60706c; font-size: 14px; line-height: 21px; text-overflow: ellipsis; white-space: nowrap; }
.ai-suggestion-link > span:last-child { display: flex; align-items: center; justify-content: flex-end; gap: 3px; color: #005c55; font-size: 14px; line-height: 21px; font-weight: 800; }
.ai-suggestion-link > span:last-child .material-symbols-outlined { font-size: 14px; }
.ai-suggestion-link.has-media { padding: 0; overflow: hidden; grid-template-columns: 118px minmax(0,1fr); align-items: stretch; gap: 0; background: #fff; }
.ai-suggestion-link.has-media > .ai-suggestion-media { display: block; }
.ai-suggestion-link.has-media > .ai-suggestion-body { text-align: left; }
.ai-suggestion-media { position: relative; min-height: 122px; overflow: hidden; background: #e8efed; }
.ai-suggestion-media img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .3s ease; }
.ai-suggestion-link.has-media:hover .ai-suggestion-media img { transform: scale(1.04); }
.ai-suggestion-media b { position: absolute; left: 7px; bottom: 7px; max-width: calc(100% - 14px); padding: 3px 6px; overflow: hidden; border-radius: 999px; color: #fff; background: rgba(0,69,64,.88); font-size: 14px; line-height: 21px; text-overflow: ellipsis; white-space: nowrap; }
.ai-suggestion-body { min-width: 0; padding: 10px 11px; display: grid; grid-template-columns: minmax(0,1fr) auto; align-content: center; gap: 2px 10px; }
.ai-suggestion-body > span:first-child { min-width: 0; display: flex; align-items: center; gap: 6px; }
.ai-suggestion-body > span:first-child small { flex: 0 0 auto; margin: 0; padding: 2px 5px; border-radius: 4px; color: #005c55; background: #dff2ed; font-size: 14px; line-height: 21px; font-weight: 800; text-transform: uppercase; }
.ai-suggestion-body > span:nth-child(2) { color: #005c55; font-size: 14px; line-height: 21px; font-weight: 800; text-align: right; }
.ai-suggestion-body > span:nth-child(3) { grid-column: 1 / -1; overflow: hidden; color: #60706c; font-size: 14px; line-height: 21px; text-overflow: ellipsis; white-space: nowrap; }
.ai-suggestion-facts { grid-column: 1 / -1; color: #3e514c; font-size: 14px; line-height: 21px; }
.ai-suggestion-body > span:last-child { grid-column: 1 / -1; margin-top: 3px; display: flex; align-items: center; justify-content: flex-end; gap: 3px; color: #005c55; font-size: 14px; line-height: 21px; font-weight: 800; }
.ai-whatsapp-contact { margin-top: 14px; padding: 11px 12px; border: 1px solid #a7d9c4; border-radius: 9px; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 10px; color: #075e54; background: #effaf5; transition: border-color .2s ease, background .2s ease, transform .2s ease; }
.ai-whatsapp-contact:hover { border-color: #128c7e; color: #075e54; background: #e2f7ed; transform: translateY(-1px); }
.ai-whatsapp-contact > .material-symbols-outlined:first-child { width: 31px; height: 31px; border-radius: 50%; display: grid; place-items: center; color: #fff; background: #128c7e; font-size: 17px; }
.ai-whatsapp-contact > span { min-width: 0; display: grid; gap: 1px; }
.ai-whatsapp-contact strong { font-size: 14px; line-height: 21px; }
.ai-message .ai-whatsapp-contact small { margin: 0; padding: 0; color: #4c665f; font-size: 14px; line-height: 21px; }
.ai-whatsapp-contact > .material-symbols-outlined:last-child { font-size: 17px; }
.ai-message small { display: block; margin-top: 4px; padding-inline: 4px; color: #3e4947; font-size: 14px; line-height: 21px; }
.user-message { align-self: flex-end; justify-content: flex-end; max-width: 690px; }
.user-message > div { text-align: right; }
.user-message article { border-top-right-radius: 2px; background: #005c55; text-align: left; }
.user-message article p { color: #fff; }
.ai-results-message { width: 100%; max-width: none; }
.ai-results-content { flex: 1; display: grid; gap: 16px; }
.ai-result-summary { border-top-left-radius: 2px !important; }
.ai-result-summary h2 { margin: 0; display: flex; align-items: center; gap: 5px; color: #005c55; font: 600 14px/21px "Plus Jakarta Sans", sans-serif; }
.ai-result-summary h2 .material-symbols-outlined { font-size: 15px; }
.ai-result-summary p { margin-top: 7px !important; }
.ai-property-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.ai-property-card { min-width: 0; overflow: hidden; border-radius: 12px; display: flex; flex-direction: column; background: #fff; box-shadow: 0 2px 9px rgba(19,27,46,.06); transition: box-shadow .3s ease, transform .3s ease; }
.ai-property-card:hover { transform: translateY(-2px); box-shadow: 0 11px 25px rgba(19,27,46,.1); }
.ai-property-media { position: relative; aspect-ratio: 16/10; overflow: hidden; background: #eaedff; }
.ai-property-image { display: block; width: 100%; height: 100%; }
.ai-property-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.ai-property-card:hover img { transform: scale(1.04); }
.ai-property-badge, .ai-property-feature { position: absolute; top: 8px; z-index: 1; min-height: 22px; padding: 3px 6px; border-radius: 999px; display: flex; align-items: center; gap: 3px; font-size: 14px; line-height: 21px; }
.ai-property-badge { left: 8px; color: #005c55; background: rgba(255,255,255,.92); box-shadow: 0 1px 4px rgba(19,27,46,.08); }
.ai-property-badge i { font-size: 14px; }
.ai-property-feature { left: 122px; max-width: calc(100% - 162px); overflow-wrap: anywhere; color: #fff; background: rgba(19,27,46,.78); }
.ai-property-save { position: absolute; z-index: 2; top: 8px; right: 8px; width: 28px; height: 28px; padding: 0; border: 0; border-radius: 50%; display: grid; place-items: center; color: #131b2e; background: rgba(255,255,255,.92); cursor: pointer; }
.ai-property-save.active { color: #ba1a1a; font-variation-settings: "FILL" 1; }
.ai-property-save .material-symbols-outlined { font-size: 16px; }
.ai-property-body { flex: 1; padding: 16px; display: flex; flex-direction: column; gap: 8px; }
.ai-property-price { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.ai-property-price strong { color: #005c55; font: 700 20px/26px "Plus Jakarta Sans", sans-serif; }
.ai-property-price span { color: #3e4947; font-size: 14px; line-height: 21px; }
.ai-property-card h3 { margin: 0; overflow-wrap: anywhere; font: 600 16px/22px "Plus Jakarta Sans", sans-serif; }
.ai-property-card h3 a:hover { color: #005c55; }
.ai-property-address { margin: -3px 0 0; display: flex; align-items: flex-start; gap: 4px; color: #3e4947; font-size: 14px; line-height: 21px; }
.ai-property-address i { flex: 0 0 auto; color: #6e7977; font-size: 14px; }
.ai-property-specs { min-height: 34px; padding: 6px 8px; border-radius: 7px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: center; gap: 5px; background: #f2f3ff; }
.ai-property-specs span { min-width: 0; display: flex; align-items: center; justify-content: center; gap: 3px; font-size: 14px; line-height: 21px; }
.ai-property-specs i { flex: 0 0 auto; color: #005c55; font-size: 14px; }
.ai-property-specs b { min-width: 0; overflow-wrap: anywhere; font-weight: 600; }
.ai-property-action { margin-top: auto; display: flex; align-items: center; justify-content: space-between; gap: 7px; }
.ai-property-action > span { min-width: 0; display: flex; align-items: center; gap: 3px; color: #3e4947; font-size: 14px; line-height: 21px; }
.ai-property-action > span i { flex: 0 0 auto; color: #006b5f; font-size: 14px; }
.ai-property-action > span b { min-width: 0; overflow-wrap: anywhere; font-weight: 500; }
.ai-property-action > a { flex: 0 0 auto; min-height: 30px; padding: 6px 9px; border-radius: 7px; color: #fff; background: #0f766e; font-size: 14px; line-height: 21px; font-weight: 600; }
.ai-property-action > a:hover { background: #005c55; }
.ai-followups { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; }
.ai-followups > span { color: #3e4947; font-size: 14px; }
.ai-followups button { min-height: 26px; padding: 4px 7px; border: 0; border-radius: 7px; color: #005c55; background: #fff; box-shadow: 0 1px 5px rgba(19,27,46,.05); font-size: 14px; line-height: 21px; cursor: pointer; }
.ai-chat-dock { padding: 16px; background: #fff; }
.ai-input-row { height: 48px; padding: 0 7px 0 14px; border-radius: 12px; display: grid; grid-template-columns: auto minmax(0,1fr) auto auto auto; align-items: center; gap: 5px; background: #f2f3ff; }
.ai-input-row:focus-within { background: #fff; box-shadow: 0 0 0 2px rgba(15,118,110,.18); }
.ai-input-row > .material-symbols-outlined { color: #005c55; font-size: 21px; }
.ai-input-row input { min-width: 0; height: 100%; border: 0; outline: 0; color: #131b2e; background: transparent; font-size: 14px; }
.ai-attach, .ai-voice { width: 30px; height: 30px; padding: 0; border: 0; border-radius: 7px; display: grid; place-items: center; color: #3e4947; background: transparent; cursor: pointer; }
.ai-attach .material-symbols-outlined, .ai-voice .material-symbols-outlined { font-size: 19px; }
.ai-voice.listening { color: white; background: #ba1a1a; animation: voice-pulse 1.1s ease-in-out infinite; }
.ai-voice:disabled { opacity: .4; cursor: not-allowed; }
@keyframes voice-pulse { 50% { box-shadow: 0 0 0 5px rgba(186,26,26,.15); } }
.ai-send { min-height: 36px; padding: 7px 10px; border: 0; border-radius: 8px; display: flex; align-items: center; gap: 4px; color: #fff; background: #005c55; font-size: 14px; font-weight: 700; cursor: pointer; }
.ai-send:hover { background: #0f766e; }
.ai-send i { font-size: 15px; }
.ai-input-meta { padding: 6px 4px 0; display: flex; align-items: center; justify-content: space-between; gap: 8px; color: #3e4947; font-size: 14px; line-height: 21px; }
.ai-input-meta p { margin: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.ai-input-meta p span { display: flex; align-items: center; gap: 3px; }
.ai-input-meta i { color: #005c55; font-size: 14px; }
.ai-input-meta b { font-weight: 500; }

.ai-intelligence-drawer { min-width: 0; display: grid; gap: 16px; }
.ai-side-card, .ai-nrb { min-width: 0; padding: 18px; border: 1px solid #e4ebe9; border-radius: 14px; background: #fff; box-shadow: 0 8px 24px rgba(19,27,46,.055); }
.ai-side-heading { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.ai-side-heading h2, .ai-audit h2 { min-width: 0; margin: 0; overflow-wrap: anywhere; font: 600 18px/24px "Plus Jakarta Sans", sans-serif; }
.ai-side-heading h2 { display: flex; align-items: center; gap: 5px; }
.ai-side-heading h2 .material-symbols-outlined, .ai-side-heading > .material-symbols-outlined, .ai-audit h2 .material-symbols-outlined { color: #005c55; font-size: 19px; }
.ai-side-heading > b { flex: 0 0 auto; padding: 3px 7px; border-radius: 999px; color: #005c55; background: #f2f3ff; font-size: 14px; line-height: 21px; }
.parameter-list { display: grid; gap: 4px; margin-top: 16px; }
.parameter-list p { min-width: 0; margin: 0; padding: 5px 7px; border-radius: 7px; display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; background: #f2f3ff; font-size: 14px; line-height: 21px; }
.parameter-list span { flex: 0 0 auto; color: #3e4947; }
.parameter-list strong { min-width: 0; overflow-wrap: anywhere; text-align: right; font-weight: 600; }
.parameter-list p:nth-child(2) strong { color: #005c55; }
.unit-switch { margin-top: 12px; padding: 5px 7px; border-radius: 7px; display: flex; align-items: center; justify-content: space-between; gap: 8px; background: #faf8ff; }
.unit-switch > span { color: #3e4947; font-size: 14px; line-height: 21px; }
.unit-switch > div { flex: 0 0 auto; padding: 2px; border-radius: 5px; display: flex; background: #fff; box-shadow: 0 1px 4px rgba(19,27,46,.06); }
.unit-switch button { min-height: 24px; padding: 4px 7px; border: 0; border-radius: 4px; color: #3e4947; background: transparent; font-size: 14px; cursor: pointer; }
.unit-switch button.active { color: #fff; background: #005c55; }
.parameter-form { margin-top: 14px; display: grid; gap: 10px; }
.property-mode { padding: 4px; border-radius: 10px; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 4px; background: #f2f6f5; }
.property-mode button { min-width: 0; min-height: 40px; padding: 6px; border: 1px solid transparent; border-radius: 8px; display: flex; align-items: center; justify-content: center; gap: 5px; color: #52615d; background: transparent; font: 700 14px/21px "Plus Jakarta Sans",sans-serif; cursor: pointer; }
.property-mode button .material-symbols-outlined { font-size: 17px; }
.property-mode button.active { border-color: #006b62; color: #fff; background: #006b62; box-shadow: 0 4px 10px rgba(0,92,85,.18); }
[data-types][hidden] { display: none !important; }
.parameter-field { position: relative; min-width: 0; display: grid; gap: 6px; color: #34433f; font-size: 14px; line-height: 21px; font-weight: 700; }
.parameter-field > span:first-child { display: block; color: #34433f; font-size: 14px; line-height: 21px; font-weight: 800; opacity: 1; }
[data-lang="bn"] .parameter-field > span:first-child { color: #263531; font-size: 14px; line-height: 21px; }
.parameter-budget > span:first-child { display: flex; }
.parameter-field > div { min-width: 0; height: 38px; padding: 0 8px; border: 1px solid #d8e1df; border-radius: 8px; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 5px; background: #fff; }
.parameter-field > div > i { color: #0f766e; font-size: 16px; }
.parameter-field input[type="search"], .parameter-field select { min-width: 0; width: 100%; border: 0; outline: 0; color: #17241f; background: transparent; font: 600 14px/21px "Plus Jakarta Sans", sans-serif; }
.parameter-field select, .parameter-number { height: 40px; padding: 0 10px; border: 1px solid #cfdad7; border-radius: 9px; outline: 0; color: #17241f; background: #fff; box-shadow: 0 1px 2px rgba(19,27,46,.03); }
.parameter-field select { padding-right: 42px; appearance: none; -webkit-appearance: none; cursor: pointer; }
.parameter-field:has(> select)::after { content: "expand_more"; position: absolute; right: 12px; bottom: 10px; width: 20px; height: 20px; display: grid; place-items: center; color: #263531; font: 400 20px/21px "Material Symbols Outlined"; pointer-events: none; }
.parameter-field select:focus, .parameter-number:focus, .parameter-field > div:focus-within { border-color: #0f766e; box-shadow: 0 0 0 3px rgba(15,118,110,.1); }
.parameter-field input[type="search"]::-webkit-search-cancel-button { display: none; }
.parameter-field > div button { width: 25px; height: 25px; padding: 0; border: 0; border-radius: 5px; display: grid; place-items: center; color: #61706c; background: transparent; cursor: pointer; }
.parameter-field > div button:hover { color: #005c55; background: #edf5f3; }
.parameter-field > div button .material-symbols-outlined { font-size: 15px; }
.parameter-budget { padding: 11px 12px; border: 1px solid #e2e8f5; border-radius: 10px; background: #f7f8ff; }
.parameter-budget > span, .parameter-budget small { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.parameter-budget > span b { font-weight: 700; }
.parameter-budget > span strong { color: #005c55; font-size: 14px; }
.parameter-budget input { width: 100%; accent-color: #0f766e; }
.parameter-budget small { color: #6b7774; font-size: 14px; font-weight: 500; }
.parameter-grid { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(80px,.75fr); gap: 8px; }
.parameter-grid.location-grid { grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); }
.parameter-actions { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 7px; }
.parameter-actions button { min-height: 38px; padding: 7px 10px; border: 1px solid #cfdad7; border-radius: 8px; display: flex; align-items: center; justify-content: center; gap: 4px; color: #41504c; background: #fff; font-size: 14px; font-weight: 800; cursor: pointer; }
.parameter-actions button.primary { border-color: #005c55; color: #fff; background: #005c55; }
.parameter-actions button:hover { border-color: #0f766e; }
.parameter-actions .material-symbols-outlined { font-size: 16px; }
.ai-parameters.is-searching #parameter-state { color: #fff; background: #0f766e; }
.ai-benchmark .ai-side-heading > div p { margin: 1px 0 0; color: #3e4947; font-size: 14px; line-height: 21px; }
.benchmark-list { display: grid; gap: 9px; margin-top: 16px; }
.benchmark-list article p { margin: 0 0 3px; display: flex; align-items: flex-start; justify-content: space-between; gap: 7px; font-size: 14px; line-height: 21px; }
.benchmark-list article p strong { min-width: 0; overflow-wrap: anywhere; }
.benchmark-list article p span { flex: 0 0 auto; max-width: 52%; color: #3e4947; text-align: right; }
.benchmark-list article { padding: 5px 7px; margin: -5px -7px; border: 1px solid transparent; border-radius: 8px; transition: background .2s ease, border-color .2s ease, transform .2s ease; }
.benchmark-list article.active { border-color: #a9d7d0; background: #effaf7; transform: translateX(2px); }
.benchmark-list article.active p span { color: #005c55; font-weight: 700; }
.benchmark-list article > div { height: 7px; overflow: hidden; border-radius: 999px; background: #f2f3ff; }
.benchmark-list article > div i { width: var(--benchmark-width); height: 100%; display: block; border-radius: inherit; background: #606c6a; }
.benchmark-list article > div i.primary { background: #0f766e; }
.benchmark-list article > div i.secondary { background: #14b8a6; }
.benchmark-list article > div i.dark { background: #485452; }
.appreciation { margin-top: 14px; padding: 10px; border-radius: 10px; display: flex; align-items: center; justify-content: space-between; gap: 8px; background: #f2f3ff; }
.appreciation p { margin: 0; }
.appreciation span, .appreciation strong { display: block; }
.appreciation span { color: #3e4947; font-size: 14px; line-height: 21px; text-transform: uppercase; }
.appreciation strong { margin-top: 2px; font-size: 14px; line-height: 21px; }
.appreciation svg { flex: 0 0 auto; width: 112px; height: 32px; }
.appreciation path { fill: none; stroke: #005c55; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.appreciation path.fill { fill: rgba(0,92,85,.12); stroke: none; }
.ai-audit h2 { display: flex; align-items: center; gap: 5px; }
.ai-audit > p { margin: 8px 0 0; color: #3e4947; font-size: 14px; line-height: 21px; }
.ai-audit ul { margin: 11px 0 0; padding: 0; display: grid; gap: 5px; list-style: none; }
.ai-audit li { display: flex; align-items: flex-start; gap: 5px; font-size: 14px; line-height: 21px; }
.ai-audit li .material-symbols-outlined { flex: 0 0 auto; color: #005c55; font-size: 15px; }
.ai-audit > a { min-height: 35px; margin-top: 13px; padding: 7px 9px; border-radius: 9px; display: flex; align-items: center; justify-content: center; gap: 4px; color: #005c55; background: #f2f3ff; text-align: center; font-size: 14px; line-height: 21px; font-weight: 600; }
.ai-audit > a i { font-size: 14px; }
.ai-nrb { color: #fff; background: #005c55; }
.ai-nrb > div { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: #a3faef; font-size: 14px; line-height: 21px; font-weight: 700; text-transform: uppercase; }
.ai-nrb > div i { font-size: 17px; }
.ai-nrb h2 { margin: 5px 0 0; overflow-wrap: anywhere; font: 700 18px/24px "Plus Jakarta Sans", sans-serif; }
.ai-nrb p { margin: 5px 0 0; color: rgba(255,255,255,.83); font-size: 14px; line-height: 21px; }
.ai-nrb a { width: fit-content; min-height: 31px; margin-top: 10px; padding: 6px 10px; border-radius: 7px; display: inline-flex; align-items: center; color: #005c55; background: #fff; font-size: 14px; line-height: 21px; font-weight: 600; }
.ai-page [hidden] { display: none !important; }
.ai-mode-switch { margin: 0 24px 16px; padding: 4px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; border: 1px solid #dce4e2; border-radius: 8px; background: #f2f6f5; }
.ai-mode-switch button { min-height: 42px; padding: 8px 14px; border: 0; border-radius: 6px; display: flex; align-items: center; justify-content: center; gap: 7px; color: #50605d; background: transparent; font: 700 14px/21px "Plus Jakarta Sans", sans-serif; cursor: pointer; }
.ai-mode-switch button:hover { color: #005c55; }
.ai-mode-switch button.active { color: #fff; background: #005c55; box-shadow: 0 3px 10px rgba(0,92,85,.18); }
.ai-mode-switch .material-symbols-outlined { font-size: 19px; }
.ai-design-studio { min-height: 660px; padding: 24px; background: #f6f8f7; }
.ai-page.is-design-mode .ai-design-grid { grid-template-columns: minmax(0,1.2fr) minmax(340px,.8fr); }
.ai-page:has(#ai-design-studio:not([hidden])) .ai-design-grid { grid-template-columns: minmax(0,1.2fr) minmax(340px,.8fr); }
.ai-design-grid { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(280px,.92fr); gap: 22px; }
.ai-upload-zone { position: relative; min-height: 390px; padding: 28px; overflow: hidden; border: 1px dashed #8fa7a2; border-radius: 8px; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 8px; color: #44534f; background: #fff; text-align: center; cursor: pointer; }
.ai-upload-zone:hover, .ai-upload-zone:focus-within { border-color: #005c55; background: #f0f7f5; }
.ai-upload-zone input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.ai-upload-zone > .material-symbols-outlined { width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; color: #005c55; background: #e1f1ed; font-size: 27px; }
.ai-upload-zone strong { color: #131b2e; font-size: 17px; line-height: 24px; }
.ai-upload-zone small { max-width: 340px; color: #66736f; font-size: 14px; line-height: 21px; }
.ai-upload-zone.has-image > span, .ai-upload-zone.has-image > strong, .ai-upload-zone.has-image > small { display: none; }
.ai-upload-zone img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; background: #e8edeb; }
.ai-upload-zone.has-image::after { content: "Change image"; position: absolute; right: 12px; bottom: 12px; z-index: 1; padding: 7px 10px; border-radius: 6px; color: #fff; background: rgba(0,49,46,.82); font: 700 14px/21px "Plus Jakarta Sans", sans-serif; }
.ai-design-controls { min-width: 0; padding: 22px; border: 1px solid #e1e8e6; border-radius: 8px; display: flex; flex-direction: column; gap: 17px; background: #fff; }
.ai-design-heading { padding-bottom: 14px; border-bottom: 1px solid #e5ecea; display: flex; align-items: center; gap: 10px; }
.ai-design-heading > .material-symbols-outlined { width: 38px; height: 38px; border-radius: 7px; display: grid; place-items: center; color: #fff; background: #0f766e; font-size: 21px; }
.ai-design-heading strong, .ai-design-heading small { display: block; }
.ai-design-heading strong { color: #17241f; font-size: 14px; line-height: 21px; }
.ai-design-heading small { margin-top: 1px; color: #66736f; font-size: 14px; line-height: 21px; }
.ai-design-options { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ai-design-controls label { display: grid; gap: 7px; color: #263531; font-size: 14px; line-height: 21px; font-weight: 700; }
.ai-design-controls select, .ai-design-controls textarea { width: 100%; border: 1px solid #cdd8d5; border-radius: 7px; color: #131b2e; background: #fff; font: 500 14px/21px "Plus Jakarta Sans", sans-serif; outline: 0; }
.ai-design-controls select { height: 44px; padding: 0 12px; }
.ai-design-controls textarea { min-height: 150px; padding: 12px; resize: vertical; }
.ai-design-controls select:focus, .ai-design-controls textarea:focus { border-color: #0f766e; box-shadow: 0 0 0 3px rgba(15,118,110,.12); }
.ai-design-submit { min-height: 45px; padding: 10px 16px; border: 0; border-radius: 7px; display: flex; align-items: center; justify-content: center; gap: 7px; color: #fff; background: #005c55; font: 700 14px/21px "Plus Jakarta Sans", sans-serif; cursor: pointer; }
.ai-design-submit:hover { background: #004b46; }
.ai-design-submit:disabled { opacity: .62; cursor: wait; }
.ai-design-submit .material-symbols-outlined { font-size: 19px; }
.ai-design-status { min-height: 34px; margin: 0; color: #52635f; font-size: 14px; line-height: 21px; }
.ai-design-status.error { color: #a62d2d; }
.ai-design-result { margin: 24px 0 0; overflow: hidden; border: 1px solid #dce4e2; border-radius: 8px; background: #fff; }
.ai-design-result > img { width: 100%; max-height: 700px; aspect-ratio: 16/10; display: block; object-fit: contain; background: #e9eeec; }
.ai-design-result figcaption { padding: 16px; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.ai-design-result figcaption > div:first-child { min-width: 190px; }
.ai-design-result figcaption strong, .ai-design-result figcaption span { display: block; }
.ai-design-result figcaption strong { color: #131b2e; font-size: 14px; line-height: 21px; }
.ai-design-result figcaption > div:first-child span { margin-top: 2px; color: #60706c; font-size: 14px; line-height: 21px; }
.ai-design-actions { display: flex; align-items: center; justify-content: flex-end; gap: 6px; }
.ai-design-actions button, .ai-design-actions select { height: 38px; border: 1px solid #cbd7d4; border-radius: 6px; color: #263531; background: #fff; font: 700 14px/21px "Plus Jakarta Sans", sans-serif; }
.ai-design-actions button { padding: 0 10px; display: flex; align-items: center; gap: 5px; cursor: pointer; }
.ai-design-actions button:hover { border-color: #0f766e; color: #005c55; }
.ai-design-actions button.primary { border-color: #005c55; color: #fff; background: #005c55; }
.ai-design-actions select { min-width: 72px; padding: 0 8px; }
.ai-design-actions .material-symbols-outlined { font-size: 17px; }
#ai-design-form.is-generating .ai-upload-zone, #ai-design-form.is-generating .ai-design-controls label { pointer-events: none; opacity: .68; }
.ai-footer { margin-top: 0; padding: 58px 0 0; color: #eef5f3; background: #111a2a; }
.ai-footer .footer-grid { display: grid; grid-template-columns: minmax(280px,1.45fr) minmax(150px,.8fr) minmax(160px,.9fr) minmax(250px,1.2fr); gap: clamp(28px,4vw,64px); align-items: start; }
.ai-footer .footer-grid section { min-width: 0; }
.ai-footer .results-brand { width: fit-content; display: inline-flex; align-items: center; gap: 9px; color: #fff; text-decoration: none; }
.ai-footer .results-brand .brand-mark { width: 34px; height: 34px; }
.ai-footer .results-brand strong { font-size: 20px; line-height: 26px; }
.ai-footer h2 { margin: 4px 0 18px; color: #fff; font: 700 14px/21px "Plus Jakarta Sans",sans-serif; }
.ai-footer .footer-intro > p { max-width: 440px; margin: 17px 0 20px; color: #b9c6c3; font-size: 14px; line-height: 21px; }
.ai-footer address { margin: 0 0 10px; display: flex; align-items: flex-start; gap: 8px; color: #cbd5d2; font-size: 14px; line-height: 21px; font-style: normal; }
.ai-footer address > .material-symbols-outlined { margin-top: 1px; color: #7fe3d2; font-size: 18px; }
.ai-footer address div { display: grid; gap: 1px; }
.ai-footer address b { color: #fff; font-size: 14px; }
.ai-footer .footer-contact { width: fit-content; display: inline-flex; align-items: center; gap: 7px; color: #7fe3d2; font-size: 14px; line-height: 21px; font-weight: 700; text-decoration: none; overflow-wrap: anywhere; }
.ai-footer .footer-contact .material-symbols-outlined { font-size: 17px; }
.ai-footer .footer-links { display: grid; align-content: start; justify-items: start; }
.ai-footer .footer-links a { margin-bottom: 10px; color: #c8d3d0; font-size: 14px; line-height: 21px; text-decoration: none; }
.ai-footer .footer-links a:hover, .ai-footer .footer-bottom a:hover { color: #7fe3d2; }
.ai-footer .footer-support > p { margin: 0 0 13px; color: #b9c6c3; font-size: 14px; line-height: 21px; }
.ai-footer .footer-support ul { margin: 0 0 17px; padding: 0; display: grid; gap: 8px; list-style: none; }
.ai-footer .footer-support li { display: flex; align-items: center; gap: 7px; color: #e6eeec; font-size: 14px; line-height: 21px; }
.ai-footer .footer-support li .material-symbols-outlined { flex: 0 0 auto; color: #7fe3d2; font-size: 16px; }
.ai-footer .footer-help { min-height: 36px; width: fit-content; padding: 0 12px; border: 1px solid rgba(127,227,210,.42); border-radius: 7px; display: inline-flex; align-items: center; gap: 7px; color: #fff; font-size: 14px; font-weight: 700; text-decoration: none; }
.ai-footer .footer-help:hover { border-color: #7fe3d2; background: rgba(127,227,210,.08); }
.ai-footer .footer-help .material-symbols-outlined { font-size: 15px; }
.ai-footer .footer-bottom { margin-top: 46px; padding: 22px 0 26px; border-top: 1px solid rgba(255,255,255,.12); display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.ai-footer .footer-bottom p { margin: 0; color: #96a7a3; font-size: 14px; line-height: 21px; }
.ai-footer .footer-bottom nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 20px; }
.ai-footer .footer-bottom a { color: #cbd5d2; font-size: 14px; line-height: 21px; font-weight: 600; text-decoration: none; }
.ai-runtime-message { animation: ai-message-in .24s ease both; }
@keyframes ai-message-in { from { opacity: 0; transform: translateY(8px); } }

[data-lang="bn"] .ai-page h1, [data-lang="bn"] .ai-page h2, [data-lang="bn"] .ai-page h3, [data-lang="bn"] .ai-page strong, [data-lang="bn"] .ai-page b, [data-lang="bn"] .ai-page button { font-family: "Noto Sans Bengali", Inter, sans-serif; }
[data-lang="bn"] .ai-context h1 { line-height: 35px; }
[data-lang="bn"] .ai-session-header p strong, [data-lang="bn"] .ai-side-heading h2, [data-lang="bn"] .ai-audit h2, [data-lang="bn"] .ai-nrb h2 { line-height: 29px; }

@media (max-width: 1100px) {
    .ai-context-top { align-items: flex-start; flex-direction: column; }
    .ai-workspace { grid-template-columns: minmax(0,1.65fr) minmax(300px,1fr); }
    .ai-property-grid { grid-template-columns: 1fr; }
    .ai-voice-panel { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .ai-voice-panel > div:first-child { grid-column: 1 / -1; }
    .ai-footer .footer-grid { grid-template-columns: minmax(260px,1.25fr) repeat(2,minmax(150px,.75fr)); }
    .ai-footer .footer-support { grid-column: 1 / -1; max-width: 720px; }
}

@media (max-width: 900px) {
    .ai-container { width: min(100% - 48px,1280px); }
    .ai-workspace { grid-template-columns: 1fr; }
    .ai-property-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .ai-intelligence-drawer { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .ai-nrb { align-self: stretch; }
    .ai-design-grid { grid-template-columns: 1fr; }
    .ai-upload-zone { min-height: 360px; }
    .ai-design-result figcaption { align-items: flex-start; flex-direction: column; }
    .ai-design-actions { width: 100%; justify-content: flex-start; flex-wrap: wrap; }
}

@media (max-width: 700px) {
    .ai-replay-message { min-height: 32px; padding: 6px 10px; font-size: 14px; }
    .ai-page .ai-main { padding-top: 72px; }
    .ai-container { width: min(100% - 32px,1280px); }
    .ai-context { width: calc(100% - 24px); margin-top: 12px; padding: 18px; }
    .ai-context h1 { font-size: 20px; line-height: 28px; }
    [data-lang="bn"] .ai-context h1 { line-height: 33px; }
    .ai-context-copy > p:last-child { font-size: 14px; line-height: 21px; }
    .ai-market-ticker { width: 100%; justify-content: space-between; }
    .ai-prompts { align-items: flex-start; flex-direction: column; }
    .ai-prompts button { max-width: 100%; text-align: left; }
    .ai-prompts--composer { width: 100%; padding-bottom: 2px; overflow-x: auto; flex-flow: row nowrap; scrollbar-width: none; }
    .ai-prompts--composer::-webkit-scrollbar { display: none; }
    .ai-prompts--composer > span { display: none; }
    .ai-prompts--composer button { flex: 0 0 auto; white-space: nowrap; }
    .ai-workspace { width: 100%; gap: 16px; padding: 16px 12px 32px; }
    .ai-session-header { min-height: 72px; padding: 14px; }
    .ai-session-header p strong { font-size: 15px; line-height: 22px; }
    .ai-session-header p span { display: none; }
    .ai-session-header small { max-width: 230px; }
    .ai-voice-panel { margin: 0 12px 12px; grid-template-columns: 1fr; }
    .ai-voice-panel > div:first-child { grid-column: auto; }
    #ai-test-voice { justify-content: center; }
    .ai-mode-switch { margin: 0 12px 12px; }
    .ai-mode-switch button { min-height: 40px; padding: 7px 9px; font-size: 14px; }
    .ai-chat-stream { min-height: 0; max-height: none; padding: 16px 12px; gap: 18px; overflow-y: visible; }
    .ai-message { gap: 6px; }
    .message-avatar { width: 28px; height: 28px; }
    .ai-message article { padding: 13px; }
    .ai-message article p { font-size: 14px; line-height: 21px; }
    .ai-suggestion-link { grid-template-columns: 1fr; gap: 3px; }
    .ai-suggestion-link.has-media { grid-template-columns: 104px minmax(0,1fr); }
    .ai-suggestion-media { min-height: 132px; }
    .ai-suggestion-link > span:first-child { align-items: flex-start; flex-direction: column; gap: 3px; }
    .ai-suggestion-link strong { width: 100%; white-space: normal; }
    .ai-suggestion-link > span:nth-child(2), .ai-suggestion-link > span:last-child { justify-content: flex-start; text-align: left; }
    .ai-suggestion-link > span:nth-child(3) { white-space: normal; }
    .ai-property-grid { grid-template-columns: 1fr; }
    .ai-chat-dock { padding: 12px; }
    .ai-design-studio { min-height: 0; padding: 12px; }
    .ai-design-grid { gap: 12px; }
    .ai-upload-zone { min-height: 300px; padding: 18px; }
    .ai-design-controls { padding: 16px; }
    .ai-design-options { grid-template-columns: 1fr; }
    .ai-design-result { margin-top: 12px; }
    .ai-design-result figcaption { padding: 13px; }
    .ai-design-actions { display: grid; grid-template-columns: 1fr 1fr; }
    .ai-design-actions button { justify-content: center; }
    .ai-design-actions label, .ai-design-actions select { width: 100%; }
    .ai-input-row { height: auto; min-height: 48px; grid-template-columns: auto minmax(0,1fr) auto auto; }
    .ai-input-row input { min-height: 46px; }
    .ai-attach { display: none; }
    .ai-send span { display: none; }
    .ai-send { width: 36px; padding: 0; justify-content: center; }
    .ai-input-meta { align-items: flex-start; }
    .ai-input-meta > span { display: none; }
    .ai-intelligence-drawer { grid-template-columns: 1fr; gap: 12px; }
    .ai-side-card, .ai-nrb { padding: 16px; }
    .ai-footer { padding-top: 40px; }
    .ai-footer .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 34px 24px; }
    .ai-footer .footer-intro, .ai-footer .footer-support { grid-column: 1 / -1; }
    .ai-footer .footer-intro > p { font-size: 14px; line-height: 21px; }
    .ai-footer .footer-links a, .ai-footer .footer-support > p, .ai-footer .footer-support li { font-size: 14px; line-height: 21px; }
    .ai-footer .footer-bottom { margin-top: 34px; align-items: flex-start; flex-direction: column; }
    .ai-footer .footer-bottom nav { justify-content: flex-start; gap: 12px 18px; }
}

@media (max-width: 390px) {
    .ai-container { width: min(100% - 24px,1280px); }
    .ai-context { width: calc(100% - 16px); padding: 15px; }
    .ai-market-ticker { align-items: flex-start; }
    .ai-market-ticker strong { font-size: 14px; }
    .ai-session-actions button:last-child { display: none; }
    .ai-session-header small { max-width: 190px; }
    .ai-property-price { align-items: flex-start; flex-direction: column; gap: 0; }
    .ai-property-action { align-items: stretch; flex-direction: column; }
    .ai-property-action > a { text-align: center; }
    .parameter-list p { flex-direction: column; gap: 2px; }
    .parameter-list strong { text-align: left; }
    .unit-switch { align-items: flex-start; flex-direction: column; }
    .parameter-grid { grid-template-columns: 1fr; }
    .ai-footer .footer-grid { grid-template-columns: 1fr; }
    .ai-footer .footer-intro, .ai-footer .footer-support { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
    .ai-property-card, .ai-property-media img, .ai-runtime-message { transition: none; animation: none; }
}

.ai-message article { font-size: 16px; line-height: 1.75; }
.ai-message article p, .ai-message article li { font-size: inherit; line-height: inherit; }
.ai-context h1 { font-size: clamp(26px, 3vw, 36px); line-height: 1.3; }
.ai-chat-stream { min-height: 320px; max-height: min(600px, 65svh); }
.ai-page .ai-prompts button, .ai-page .parameter-actions button { min-height: 42px; }
.ai-page #ai-user-input, .ai-page .parameter-field select, .ai-page .parameter-number { font-size: 16px; }
.ai-page .ai-input-row { flex-wrap: wrap; }
.ai-page #ai-user-input { min-width: 120px; flex: 1; }
.ai-page .ai-voice-panel { grid-template-columns: repeat(2,minmax(0,1fr)); }
.ai-page .ai-market-ticker { flex-wrap: wrap; }
@media(max-width:720px) { .ai-page .ai-voice-panel { grid-template-columns: minmax(0,1fr); } .ai-page .ai-container { width: calc(100% - 32px); } .ai-page .ai-input-row { gap: 8px; } }
