/* Componentes interativos recriados (painéis, janelas, detalhe da casa) */
.cmc-dialog{border:1px solid #373027;border-radius:10px;background:#11110e;color:#f3f1ea;padding:0;max-width:min(92vw,440px);width:100%}
.cmc-dialog::backdrop{background:rgba(0,0,0,.72)}
.cmc-dialog-inner{padding:26px 24px 22px}
.cmc-dialog h2{margin:0 0 6px;font-size:1.35rem;color:#fff}
.cmc-dialog p{margin:0 0 16px;color:#babdb3;line-height:1.55;font-size:.95rem}
.cmc-dialog-close{position:absolute;top:10px;right:10px;background:none;border:0;color:#babdb3;font-size:22px;cursor:pointer;padding:6px 10px}
.cmc-copy{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#1a1914;border:1px solid #373027;border-radius:6px;padding:10px 12px;margin:0 0 10px}
.cmc-copy span{display:flex;flex-direction:column;gap:2px;min-width:0}
.cmc-copy small{color:#babdb3;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}
.cmc-copy code{font-family:ui-monospace,Menlo,Consolas,monospace;color:#ffd4ad;font-size:.95rem;overflow-wrap:anywhere}
.cmc-copy button{flex:none;background:none;border:1px solid #885432;color:#ff9a55;border-radius:5px;padding:6px 10px;font-weight:600;cursor:pointer}
.cmc-copy button:hover{background:#241b15}
.city-filters{display:none;gap:10px;padding:0 24px 14px;grid-template-columns:1fr 1fr}
.city-filters.open{display:grid}
.city-filters label{display:flex;flex-direction:column;gap:5px;font-size:.8rem;color:var(--city-muted,#babdb3)}
.city-filters select{background:var(--cmc-raised,#1a1914);color:inherit;border:1px solid var(--city-border,#373027);border-radius:3px;padding:8px}
.city-filters .clear{grid-column:1/-1;background:none;border:0;color:#ff9a55;text-align:left;padding:2px 0;cursor:pointer}
.city-controls button[aria-pressed=true],.city-controls button[aria-expanded=true]{border-color:#ff9a55;color:#ff9a55}
.city-house-row{cursor:pointer}
.city-house-row[aria-current=true]{background:var(--cmc-raised,#1a1914);box-shadow:inset 3px 0 0 #ff9a55}
.city-empty{padding:28px 24px;color:var(--city-muted,#babdb3);line-height:1.6}
.city-map-stage{position:relative;flex:1;min-height:420px;display:flex}
.city-map-stage iframe{flex:1;border:0;width:100%;min-height:420px}
.city-map-placeholder{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:10px;padding:48px 28px;background:radial-gradient(circle at 50% 40%,#1c1712,#080908 70%)}
.city-map-placeholder .kicker{color:#ff9a55;font-size:.75rem;letter-spacing:.18em;font-weight:700}
.city-map-placeholder h2{margin:0;font-size:clamp(1.6rem,3vw,2.3rem);color:#fff}
.city-map-placeholder p{margin:0;color:#babdb3;max-width:46ch;line-height:1.6}
.city-map-placeholder small{color:#6f7169;letter-spacing:.14em;font-size:.7rem;margin-top:14px}
.city-detail{position:absolute;right:18px;top:18px;width:min(380px,calc(100% - 36px));background:rgba(17,17,14,.97);border:1px solid #373027;border-radius:10px;padding:18px 18px 12px;box-shadow:0 18px 40px rgba(0,0,0,.45)}
.city-detail[hidden]{display:none}
.city-detail .kicker{color:#ff9a55;font-size:.72rem;letter-spacing:.16em;font-weight:700}
.city-detail h2{margin:4px 0 2px;font-size:1.35rem;color:#fff;overflow-wrap:anywhere}
.city-detail .addr{color:#babdb3;margin:0 0 12px;font-size:.92rem}
.city-detail .facts{display:flex;gap:14px;flex-wrap:wrap;color:#babdb3;font-size:.82rem;margin:0 0 12px}
.city-detail .facts b{color:#f3f1ea}
.city-detail .close{position:absolute;top:8px;right:8px;background:none;border:0;color:#babdb3;font-size:20px;cursor:pointer;padding:4px 8px}
.city-detail .ig{display:inline-flex;gap:6px;color:#ff9a55;font-weight:600;font-size:.88rem;margin:2px 0 6px}
@media (max-width:860px){.city-detail{position:static;width:auto;margin:14px;box-shadow:none}.city-map-stage{min-height:320px}.city-map-stage iframe{min-height:320px}}
.cmc-dialog{margin:auto;position:fixed;inset:0;height:fit-content}
@media (max-width:860px){.city-detail{position:relative;right:auto;top:auto}}
/* Base de Criadores: páginas de texto, formulários e destaque */
.creator-base .bd-hero{padding:42px 0 30px;border-bottom:1px solid var(--line)}
.creator-base .bd-hero h1{font-size:clamp(2rem,4.6vw,3.4rem);letter-spacing:-.045em;line-height:1.05;margin:14px 0 14px;font-weight:650;max-width:18ch}
.creator-base .bd-hero p{color:var(--secondary);font-size:1.08rem;line-height:1.6;max-width:58ch;margin:0}
.creator-base .bd-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:24px}
.creator-base .bd-actions .note{color:var(--secondary);font-size:.9rem}
.creator-base .prose{max-width:760px;padding:10px 0 40px}
.creator-base .prose section{border-top:1px solid var(--line);padding:26px 0 8px}
.creator-base .prose h2{margin-bottom:10px}
.creator-base .prose p{color:var(--secondary);line-height:1.7;font-size:1rem;margin:0 0 14px}
.creator-base .prose p b{color:var(--text)}
.creator-base .bd-form{max-width:820px;padding:8px 0 40px}
.creator-base .bd-form iframe{width:100%;border:0;min-height:900px;background:transparent}
.creator-base .bd-selected{display:flex;gap:16px;align-items:center;border:1px solid var(--line);background:var(--surface);padding:16px;margin:0 0 24px;max-width:820px}
.creator-base .bd-selected img{width:64px;height:64px;object-fit:cover;background:#0b0c0b}
.creator-base .bd-selected h2{margin:0 0 4px;font-size:1.35rem}
.creator-base .bd-selected small{color:var(--secondary)}
.creator-base .bd-teaser{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin:18px 0 28px}
.creator-base .bd-empty{color:var(--secondary);padding:30px 0}
.creator-base .bd-search{display:flex;gap:0;max-width:560px;margin-top:22px}
.creator-base .bd-search input{flex:1;background:var(--surface);border:1px solid var(--line);color:var(--text);padding:12px 14px;font:inherit;min-width:0}
.creator-base .bd-search button{border-left:0}
/* Página de privacidade */
.legal-page{background:#080908;color:#f3f1ea;min-height:100vh;font-family:FigtreeVF,Figtree,Arial,Helvetica,sans-serif}
.legal-page header{border-bottom:1px solid #373027;padding:18px 24px}
.legal-page header .in{max-width:760px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:16px}
.legal-page header img{width:110px;height:auto}
.legal-page a{color:#ff9a55}
.legal-page main{max-width:760px;margin:auto;padding:40px 24px 60px}
.legal-page .kicker{color:#ff9a55;font-size:.78rem;letter-spacing:.16em;font-weight:700;text-transform:uppercase}
.legal-page h1{font-size:clamp(2rem,5vw,2.8rem);letter-spacing:-.03em;margin:10px 0 6px;line-height:1.1}
.legal-page .updated{color:#8f928a;font-size:.9rem;margin:0 0 26px}
.legal-page section{border-top:1px solid #373027;padding:22px 0 6px}
.legal-page h2{font-size:1.15rem;margin:0 0 10px}
.legal-page p,.legal-page li{color:#babdb3;line-height:1.7}
.legal-page ul{padding-left:20px;margin:0 0 14px}
.legal-page footer{border-top:1px solid #373027;padding:24px;text-align:center;color:#8f928a;font-size:.85rem}
