.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 22px;border-radius:var(--r-pill);border:1px solid transparent;background:var(--c-action);color:var(--c-ink);font-weight:600;text-decoration:none}.btn:hover{background:var(--c-action-hover)}.btn-secondary{background:var(--c-surface);border-color:var(--c-line)}.btn-ghost{background:transparent;color:var(--c-brand)}.btn-danger{background:var(--c-danger);color:var(--c-surface)}.btn-whatsapp{background:var(--c-whatsapp);color:var(--c-ink)}.btn-danger:hover{background:var(--c-danger);filter:brightness(.9)}.icon-btn{padding:10px;min-width:44px;min-height:44px;border:1px solid var(--c-line);border-radius:50%;background:var(--c-surface);display:inline-grid;place-items:center;color:var(--c-ink)}.spinner{display:inline-block;width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.field{display:grid;gap:6px;min-width:0}.field label,.field legend{font-size:var(--t-sm);font-weight:600}.field input,.field select,.field textarea{width:100%;min-width:0;min-height:48px;border:1px solid var(--c-muted-readable);border-radius:var(--r-md);background:var(--c-surface-2);padding:12px;color:var(--c-ink)}.field input::placeholder,.field textarea::placeholder{color:var(--c-muted-readable)}.field textarea{resize:vertical;max-height:24em}.field [aria-invalid=true]{border-color:var(--c-danger)}.error{color:var(--c-danger);font-size:var(--t-sm)}.hint,.counter{font-size:var(--t-xs);color:var(--c-ink-2)}fieldset{border:0;padding:0;margin:0;min-width:0}legend{margin-bottom:8px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{position:relative}.chip input{position:absolute;opacity:0;width:100%;height:100%;margin:0}.chip span{display:flex;align-items:center;min-height:48px;border:1.5px solid var(--c-muted-readable);border-radius:var(--r-md);padding:10px 16px;background:var(--c-surface)}.chip input:checked+span{background:var(--c-brand-soft);border-color:var(--c-brand);color:var(--c-brand)}.chip input:checked+span:before{content:'✓';margin-right:8px}.chip input:focus-visible+span{outline:2px solid var(--c-brand);outline-offset:3px}.card{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-xl);padding:24px;min-width:0}.property-card{padding:10px;position:relative}.property-card:hover{box-shadow:var(--sh-2)}.property-photo{aspect-ratio:4/3;border-radius:var(--r-lg);background:var(--c-brand-soft);position:relative;overflow:hidden}.property-photo img{width:100%;height:100%;object-fit:cover}.property-photo>.badge{position:absolute;top:12px;left:12px}.property-body{padding:16px 8px 8px}.property-body h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.price{font-size:var(--t-2xl);font-weight:750;letter-spacing:-.04em}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--r-pill);font-size:var(--t-xs);font-weight:650;background:var(--c-brand-soft);color:var(--c-brand)}.badge-pro{background:var(--c-badge-pro);color:var(--c-action);border:0;min-height:44px;padding-inline:14px}.badge-danger{background:var(--c-danger-soft);color:var(--c-danger)}.badge-warn{background:var(--c-warn-soft);color:var(--c-warn-text)}.kpi-value{font-size:var(--t-3xl);font-weight:700;letter-spacing:-.04em}.positive{color:var(--c-brand)}.negative{color:var(--c-danger)}.banner{padding:16px 20px;border-radius:var(--r-md);background:var(--c-brand-soft);color:var(--c-brand);display:flex;gap:12px;align-items:center}.banner-warning{background:var(--c-warn-soft);color:var(--c-warn-text)}.banner-error{background:var(--c-danger-soft);color:var(--c-danger)}.banner-info{color:var(--c-info);background:var(--c-surface)}.tabs{display:flex;gap:8px;overflow:auto;border-bottom:1px solid var(--c-line)}.tabs button{white-space:nowrap;border:0;background:transparent;padding:14px 12px;min-height:48px;color:var(--c-ink-2)}.tabs [aria-selected=true]{color:var(--c-brand);border-bottom:3px solid var(--c-brand);font-weight:650}.empty{text-align:center;padding:32px 20px}.empty svg{width:56px;height:56px;color:var(--c-muted-readable);margin:0 auto 16px}.skeleton{background:linear-gradient(90deg,var(--c-line),var(--c-surface-2),var(--c-line));background-size:200% 100%;animation:shimmer 1.6s infinite;border-radius:var(--r-sm);height:20px;margin-bottom:12px}.skeleton-photo{height:auto;aspect-ratio:4/3}@keyframes shimmer{to{background-position:-200% 0}}dialog{border:0;border-radius:var(--r-xl);padding:28px;width:min(480px,calc(100% - 32px));max-height:85dvh;overflow:auto;background:var(--c-surface);color:var(--c-ink);box-shadow:var(--sh-modal)}dialog::backdrop{background:var(--c-overlay)}.sheet-handle{display:block;border:0;background:var(--c-line);width:48px;height:6px;border-radius:var(--r-pill);margin:0 auto 24px;touch-action:none}.toast-region{position:fixed;bottom:calc(var(--bottomnav-h) + env(safe-area-inset-bottom) + 16px);left:16px;right:16px;z-index:50;display:grid;gap:8px;pointer-events:none}.toast{background:var(--c-ink);color:var(--c-surface);padding:16px 20px;border-radius:var(--r-md);box-shadow:var(--sh-2)}.step-rail ol{list-style:none;padding:0;margin:0;display:grid;gap:8px}.step-rail a,.step-rail span{display:flex;gap:12px;padding:10px;border-radius:var(--r-md);align-items:center;text-decoration:none}.step-rail [aria-current=step]{background:var(--c-brand-soft);color:var(--c-brand);font-weight:650}.step-number{border:1px solid var(--c-line);border-radius:50%;width:32px;height:32px;display:grid;place-items:center}.step-mobile{display:block}.step-rail ol{display:none}progress{accent-color:var(--c-brand);width:100%;height:8px}.upload-zone{border:1.5px dashed var(--c-muted-readable);border-radius:var(--r-lg);padding:24px;text-align:center}.upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.upload-item{position:relative;border:1px solid var(--c-line);border-radius:var(--r-md);overflow:hidden;min-width:0;padding:8px}.upload-item img{aspect-ratio:1;object-fit:cover;width:100%}.upload-item .badge{padding:3px;font-size:10px}.action-menu{position:relative}.action-menu summary{list-style:none}.action-menu>div{position:absolute;right:0;top:48px;z-index:5;background:var(--c-surface);padding:8px;box-shadow:var(--sh-2);border:1px solid var(--c-line);border-radius:var(--r-md);min-width:210px}.action-menu button,.action-menu a{display:block;width:100%;text-align:left;border:0;background:none;color:var(--c-ink);min-height:44px;padding:10px;text-decoration:none}.action-menu button:hover{background:var(--c-brand-soft)}.guide summary{cursor:pointer;min-height:44px;font-weight:650}.guide ol{padding-left:20px}.guide li{padding:8px}.guide .done{text-decoration:line-through;color:var(--c-ink-2)}.device-toggle{display:none}.phone-input{display:flex;align-items:center;gap:8px}.phone-input>span{white-space:nowrap}.swatches{display:flex;gap:12px;flex-wrap:wrap}.swatch{width:52px;height:52px;border-radius:16px;border:1px solid var(--c-line)}@media(max-width:767px){dialog.sheet{margin:auto 0 0;width:100%;max-width:none;border-radius:28px 28px 0 0;padding-bottom:calc(28px + env(safe-area-inset-bottom))}}@media(min-width:768px){.btn{min-height:44px}.step-rail ol{display:grid}.step-mobile{display:none}.upload-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.device-toggle{display:flex}.toast-region{left:auto;width:360px;bottom:24px}}.upload-item .btn{padding:8px 4px;font-size:var(--t-xs);max-width:100%;white-space:normal}.upload-zone:focus-within{outline:2px solid var(--c-brand);outline-offset:3px}.guide-floating{position:fixed;bottom:calc(var(--bottomnav-h) + env(safe-area-inset-bottom) + 12px);left:16px;right:16px;z-index:15}@media(min-width:1024px){.guide-floating{left:auto;right:24px;bottom:24px;width:320px}}

/* PC-034: fila de mídia, com ações acessíveis também pelo teclado. */
.media-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}
.media-file{min-width:0;border:1px solid var(--c-line);border-radius:var(--r-md);padding:12px;display:flex;flex-direction:column;gap:8px;overflow-wrap:anywhere}
.media-file img{width:100%;height:110px;object-fit:cover;border-radius:var(--r-sm)}
.media-file progress{width:100%}.media-file .btn{font-size:var(--t-xs);padding:8px;min-height:44px}

/* PC-033: resultados de busca e mapas de edição/prévia. */
.address-results{border:1px solid var(--c-line);border-radius:var(--r-sm);max-height:240px;overflow:auto;background:var(--c-surface)}
.address-results [role=option]{padding:12px;cursor:pointer}.address-results [aria-selected=true],.address-results [role=option]:hover{background:var(--c-brand-soft)}
.address-map{width:100%;height:260px;border-radius:var(--r-md);background:var(--c-ground)}
.address-map[hidden]{display:none}.address-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.address-fields .wide{grid-column:1/-1}.address-fields input{min-width:0;width:100%}

/* PC-062: gráfico diário próprio, escala comum para as duas séries. */
.daily-chart{display:block;width:100%;height:auto;overflow:hidden}.chart-grid{stroke:var(--c-line);stroke-width:1}.chart-label{fill:var(--c-ink-2);font-size:13px}.chart-area{fill:var(--c-brand-soft)}.chart-visits{fill:none;stroke:var(--c-brand);stroke-width:2}.chart-contacts{fill:none;stroke:var(--c-info);stroke-width:3;stroke-dasharray:6 3}.chart-contact-dot{fill:var(--c-info)}.chart-cursor{stroke:var(--c-ink-2);stroke-dasharray:3 3}.daily-chart [role=button]:focus{outline:none;stroke:var(--c-brand);stroke-width:2}.chart-tooltip{min-height:48px;font-size:var(--t-sm);background:var(--c-surface-2);border-radius:var(--r-sm);padding:12px}.chart-legend{display:flex;flex-wrap:wrap;gap:20px;font-size:var(--t-sm)}.chart-legend-visits{color:var(--c-brand)}.chart-legend-contacts{color:var(--c-info)}
.period-custom{display:flex;flex-wrap:wrap;gap:12px}.period-custom[hidden]{display:none}.period-custom input{max-width:100%}
.media-video-frame { display: block; width: 100%; min-height: 200px; aspect-ratio: 16 / 9; border: 0; border-radius: var(--r-card, 12px); }
.simulador-results { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap: 1rem; margin: 0; }
.simulador-results dt { font-size: .875rem; color: var(--c-ink); }
.simulador-results dd { margin: .25rem 0 0; font-size: 1.25rem; font-weight: 700; }
[data-simulador] { grid-template-columns: minmax(0, 1fr); }
[data-simulador] .demo-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; }
@media (min-width: 768px) { [data-simulador] .demo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Caixinha de marcar em cartão (go-live 06/11/2026): borda, caixinha de 22px à esquerda, verde quando marcada. Usar em toda opção sim/não do v2. */
.check-card{display:flex;align-items:center;gap:12px;min-height:56px;padding:12px 16px;border:1.5px solid var(--c-muted-readable);border-radius:var(--r-md);background:var(--c-surface);color:var(--c-ink);cursor:pointer;font-size:var(--t-md,1rem);font-weight:600;line-height:1.3}.check-card input[type=checkbox]{width:22px;height:22px;min-width:22px;min-height:0;flex:none;margin:0;padding:0;border-radius:4px;accent-color:var(--c-brand);cursor:pointer}.check-card:has(input:checked){border-color:var(--c-brand);background:var(--c-brand-soft);color:var(--c-brand)}.check-card:focus-within{outline:2px solid var(--c-brand);outline-offset:3px}.check-card:has(input:disabled){opacity:.6;cursor:not-allowed}.check-card .small,.check-card .hint{font-weight:400}
