*{box-sizing:border-box}body{color:#172033;background:#f4f6fb;margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}.loading-screen{color:#64748b;place-items:center;min-height:100vh;display:grid}.login-page{background:radial-gradient(circle at 0 0,#dbeafe,#0000 30%),linear-gradient(135deg,#0f172a,#1e293b);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border-radius:24px;width:100%;max-width:420px;padding:32px;box-shadow:0 24px 80px #0f172a59}.login-logo,.brand-mark{color:#fff;background:#2563eb;border-radius:16px;place-items:center;width:48px;height:48px;font-weight:800;display:grid}.login-card h1{margin:18px 0 8px;font-size:28px}.login-card p{color:#64748b;margin-bottom:24px}.login-card label{margin:14px 0 6px;font-size:14px;font-weight:700;display:block}.login-card input{border:1px solid #dbe3ef;border-radius:14px;outline:none;width:100%;padding:13px 14px}.login-card input:focus{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1f}.primary-button,.secondary-button,.logout-button,.filter{cursor:pointer;border:0;border-radius:14px;transition:all .2s}.primary-button{color:#fff;background:#2563eb;width:100%;margin-top:20px;padding:14px;font-weight:800}.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}.secondary-button{color:#fff;background:#172033;padding:11px 16px;font-weight:700}.login-help{color:#64748b;margin-top:16px;line-height:1.4;display:block}.error-box{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:14px;margin:16px 0;padding:12px 14px}.app-shell{min-height:100vh;display:flex}.sidebar{color:#fff;background:#0f172a;flex-direction:column;width:280px;padding:22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;margin-bottom:32px;display:flex}.brand span{color:#94a3b8;margin-top:2px;font-size:13px;display:block}.menu{gap:8px;display:grid}.menu-item,.logout-button{color:#cbd5e1;text-align:left;background:0 0;border-radius:14px;align-items:center;gap:11px;width:100%;padding:12px;display:flex}.menu-item:hover,.menu-item.active{color:#fff;background:#ffffff1a}.logout-button{color:#fecaca;background:#ef44441f;margin-top:auto}.main-content{width:calc(100% - 280px);margin-left:280px;padding:30px}.page-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.page-header h1{margin:0;font-size:30px}.page-header p{color:#64748b;margin:6px 0 0}.stats-grid{grid-template-columns:repeat(4,minmax(160px,1fr));gap:16px;display:grid}.stat-card,.quadra-card,.empty-card,.table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:22px;box-shadow:0 12px 40px #0f172a0f}.stat-card{padding:22px}.stat-card span{color:#64748b;font-size:14px;font-weight:700;display:block}.stat-card strong{margin-top:10px;font-size:30px;display:block}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:820px}th,td{text-align:left;border-bottom:1px solid #e2e8f0;padding:14px 16px;font-size:14px}th{color:#475569;text-transform:uppercase;letter-spacing:.04em;background:#f8fafc;font-size:12px}.empty-cell{text-align:center;color:#64748b;padding:28px}.pill{text-transform:capitalize;color:#334155;background:#e2e8f0;border-radius:999px;align-items:center;padding:5px 9px;font-size:12px;font-weight:800;display:inline-flex}.pill.ativo,.pill.ativo,.pill.paga,.pill.quitado{color:#166534;background:#dcfce7}.pill.aberta,.pill.reserva,.pill.reservado{color:#92400e;background:#fef3c7}.pill.ativo,.pill.vendido{color:#991b1b;background:#fee2e2}.pill.inativo,.pill.cancelado,.pill.distratado{color:#475569;background:#f1f5f9}.legend,.filters{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.legend span{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.dot{border-radius:99px;width:10px;height:10px;display:inline-block}.dot.disponivel,.lote-card.disponivel{--lote-color:#16a34a}.dot.reservado,.lote-card.reservado{--lote-color:#d97706}.dot.vendido,.lote-card.vendido{--lote-color:#dc2626}.dot.bloqueado,.lote-card.bloqueado{--lote-color:#64748b}.dot.quitado,.lote-card.quitado{--lote-color:#7c3aed}.dot.distratado,.lote-card.distratado{--lote-color:#f97316}.dot{background:var(--lote-color)}.mirror{gap:18px;display:grid}.quadra-card{padding:20px}.quadra-card h2{margin:0 0 16px}.lotes-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;display:grid}.lote-card{border:1px solid #e2e8f0;border-left:7px solid var(--lote-color);background:#fff;border-radius:18px;padding:16px}.lote-top{justify-content:space-between;align-items:start;gap:10px;display:flex}.lote-top span{color:var(--lote-color);font-size:12px;font-weight:800}.lote-card p{color:#64748b;margin:12px 0 6px}.lote-card b{font-size:18px}.empty-card{color:#64748b;text-align:center;padding:28px}.filter{color:#475569;background:#fff;border:1px solid #e2e8f0;padding:9px 13px;font-weight:800}.filter.active{color:#fff;background:#2563eb;border-color:#2563eb}@media (width<=900px){.sidebar{width:100%;position:static}.app-shell{display:block}.main-content{width:100%;margin-left:0;padding:18px}.stats-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}.page-header{flex-direction:column;align-items:flex-start}}@media (width<=560px){.stats-grid{grid-template-columns:1fr}}.header-actions{flex-wrap:wrap;gap:10px;display:flex}.primary-small-button,.secondary-light-button,.mini-button{cursor:pointer;border:0;border-radius:12px;font-weight:800;transition:all .2s}.primary-small-button{color:#fff;background:#2563eb;padding:11px 16px}.secondary-light-button{color:#172033;background:#e2e8f0;padding:11px 16px}.mini-button{color:#fff;background:#2563eb;padding:7px 10px;font-size:12px}.mini-button.muted{color:#334155;background:#e2e8f0}.table-actions{flex-wrap:wrap;gap:8px;display:flex}.success-box{color:#166534;background:#ecfdf5;border:1px solid #bbf7d0;border-radius:14px;margin:16px 0;padding:12px 14px}.form-card,.toolbar-card{background:#fff;border:1px solid #e2e8f0;border-radius:22px;box-shadow:0 12px 40px #0f172a0f}.form-card{margin-bottom:18px;padding:22px}.form-title{justify-content:space-between;align-items:start;gap:14px;margin-bottom:18px;display:flex}.form-title h2{margin:0 0 6px}.form-title p{color:#64748b;margin:0}.form-grid{grid-template-columns:repeat(3,minmax(170px,1fr));gap:14px;display:grid}.form-grid label{color:#334155;gap:6px;font-size:13px;font-weight:800;display:grid}.form-grid input,.form-grid select,.form-grid textarea,.toolbar-card input{background:#fff;border:1px solid #dbe3ef;border-radius:12px;outline:none;width:100%;padding:11px 12px}.form-grid textarea{resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.toolbar-card input:focus{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1f}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.form-section-title{margin:22px 0 12px;font-size:16px}.form-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.toolbar-card{align-items:center;gap:14px;margin-bottom:16px;padding:14px;display:flex}.toolbar-card input{flex:1}.toolbar-card span{color:#64748b;white-space:nowrap;font-weight:800}@media (width<=900px){.form-grid{grid-template-columns:1fr}.span-2,.span-3{grid-column:span 1}.toolbar-card{flex-direction:column;align-items:stretch}}.tabs-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;gap:8px;margin-bottom:16px;padding:8px;display:flex;box-shadow:0 12px 40px #0f172a0a}.tab{color:#475569;cursor:pointer;background:0 0;border:0;border-radius:12px;padding:10px 14px;font-weight:800}.tab.active{color:#fff;background:#2563eb}.toolbar-card select{background:#fff;border:1px solid #dbe3ef;border-radius:12px;outline:none;min-width:190px;padding:11px 12px}.mirror-summary{grid-template-columns:repeat(5,minmax(120px,1fr));gap:12px;margin-bottom:16px;display:grid}.mirror-summary div{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:16px;box-shadow:0 12px 40px #0f172a0a}.mirror-summary strong{font-size:24px;display:block}.mirror-summary span{color:#64748b;margin-top:4px;font-weight:800;display:block}.lote-card small{color:#64748b;margin-top:8px;line-height:1.35;display:block}@media (width<=900px){.tabs-card{flex-wrap:wrap}.mirror-summary{grid-template-columns:repeat(2,minmax(120px,1fr))}}.contract-summary{grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px;margin-top:18px;display:grid}.contract-summary div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:14px}.contract-summary span{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:800;display:block}.contract-summary strong{margin-top:6px;font-size:18px;display:block}@media (width<=900px){.contract-summary{grid-template-columns:repeat(2,minmax(140px,1fr))}}@media (width<=560px){.contract-summary{grid-template-columns:1fr}}.mini-button.success{color:#fff;background:#16a34a}.mini-button.warn{color:#fff;background:#d97706}.document-card{background:#fff;border:1px solid #e2e8f0;border-radius:22px;margin-bottom:18px;padding:22px;box-shadow:0 12px 40px #0f172a0f}.document-header{justify-content:space-between;align-items:start;gap:16px;margin-bottom:14px;display:flex}.document-header h2{margin:0 0 6px}.document-header p{color:#64748b;margin:0}.document-text{white-space:pre-wrap;color:#111827;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;margin:0;padding:22px;font-family:Times New Roman,serif;font-size:16px;line-height:1.55}@media print{body{background:#fff}.sidebar,.page-header,.no-print,.mirror-summary,.filters,.toolbar-card,.table-wrap,.form-card,.error-box,.success-box:not(.print-area .success-box){display:none!important}.main-content{width:100%!important;margin:0!important;padding:0!important}.document-card{box-shadow:none!important;border:0!important;margin:0!important;padding:0!important}.document-text{font-size:18px;background:#fff!important;border:0!important;padding:0!important}}.config-grid{grid-template-columns:repeat(3,minmax(180px,1fr));gap:14px;display:grid}.config-grid div,.info-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:16px}.config-grid span{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:800;display:block}.config-grid strong{color:#172033;margin-top:6px;display:block}.info-box{margin-top:18px}.info-box p{color:#64748b;margin:8px 0 0;line-height:1.5}.form-grid input:disabled{color:#64748b;cursor:not-allowed;background:#f1f5f9}@media (width<=900px){.config-grid{grid-template-columns:1fr}}.variables-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;margin:16px 0;padding:14px}.variables-card strong{margin-bottom:10px;display:block}.variables-card div{flex-wrap:wrap;gap:8px;display:flex}.variable-pill{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.variable-pill:hover{color:#fff;background:#2563eb;border-color:#2563eb}.document-editor-label{color:#334155;gap:8px;font-size:13px;font-weight:800;display:grid}.document-editor{resize:vertical;border:1px solid #dbe3ef;border-radius:16px;outline:none;width:100%;min-height:520px;padding:16px;font-family:Times New Roman,serif;font-size:16px;line-height:1.5}.document-editor:focus{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1f}.grouped-menu{gap:10px;padding-right:4px;overflow-y:auto}.grouped-menu::-webkit-scrollbar{width:6px}.grouped-menu::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:999px}.menu-group{gap:6px;display:grid}.menu-group-button{color:#cbd5e1;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;justify-content:space-between;align-items:center;gap:11px;width:100%;padding:11px 12px;font-weight:800;transition:all .2s;display:flex}.menu-group-button span{align-items:center;gap:11px;display:flex}.menu-group-button:hover,.menu-group-button.active{color:#fff;background:#ffffff1a}.submenu{border-left:1px solid #ffffff1f;gap:5px;margin-left:18px;padding-left:14px;display:grid}.submenu-item{color:#94a3b8;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-size:14px;transition:all .2s;display:flex}.submenu-item:hover,.submenu-item.active{color:#fff;background:#2563eb40}@media (width<=900px){.grouped-menu{overflow-y:visible}}.permissions-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;margin-top:16px;padding:16px}.permissions-card strong{margin-bottom:8px;display:block}.permissions-card p{color:#475569;margin:5px 0;line-height:1.45}.pill.admin{color:#991b1b;background:#fee2e2}.pill.gerente{color:#3730a3;background:#e0e7ff}.pill.vendas{color:#166534;background:#dcfce7}.pill.financeiro{color:#92400e;background:#fef3c7}.pill.consulta{color:#334155;background:#e2e8f0}.simulation-table{border:1px solid #e2e8f0;border-radius:16px;margin-top:12px;overflow-x:auto}.simulation-table table{border-collapse:collapse;width:100%;min-width:760px}.simulation-table th,.simulation-table td{text-align:left;border-bottom:1px solid #e2e8f0;padding:12px;font-size:13px}.simulation-table th{color:#334155;background:#f8fafc;font-weight:900}.simulation-table tr:last-child td{border-bottom:0}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.dashboard-alerts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.dashboard-alert{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;gap:6px;padding:14px;display:flex}.dashboard-alert strong{color:#0f172a;font-size:14px}.dashboard-alert span{color:#64748b;font-size:13px}.dashboard-alert.grave{background:#fff7f7;border-color:#fecaca}.dashboard-alert.aviso{background:#fffdf2;border-color:#fde68a}.dashboard-alert.ok{background:#f6fff9;border-color:#bbf7d0}.status-bars{gap:12px;display:grid}.status-bars div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;justify-content:space-between;padding:12px;display:flex}.status-bars span{color:#64748b;font-weight:700}.status-bars strong{color:#0f172a}.compact-list{gap:10px;display:grid}.compact-list div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:4px;padding:12px;display:flex}.compact-list strong{color:#0f172a;font-size:14px}.compact-list span{color:#64748b;font-size:13px}@media (width<=1100px){.dashboard-grid,.dashboard-alerts{grid-template-columns:1fr}}.mirror.mirror-compact{gap:12px}.mirror.mirror-compact .quadra-card{border-radius:18px;padding:14px}.mirror.mirror-compact .quadra-card h2{margin:0 0 10px;font-size:16px}.mirror.mirror-compact .lotes-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:9px}.mirror.mirror-compact .lote-card{border-left-width:5px;border-radius:13px;min-height:92px;padding:9px 10px}.mirror.mirror-compact .lote-top{gap:6px}.mirror.mirror-compact .lote-top strong{font-size:13px}.mirror.mirror-compact .lote-top span{font-size:10px;line-height:1.1}.mirror.mirror-compact .lote-card p{margin:7px 0 3px;font-size:12px}.mirror.mirror-compact .lote-card b{font-size:13px}.mirror.mirror-compact .lote-card small{color:#64748b;margin-top:4px;font-size:10px;display:block}.mapa-preview-box{background:#f8fafc;border:1px solid #dbe3ef;border-radius:16px;gap:10px;padding:14px;display:grid}.mapa-preview-box strong{color:#0f172a}.mapa-preview-box img{object-fit:contain;background:#fff;border:1px solid #cbd5e1;border-radius:12px;max-width:100%;max-height:320px}.mapa-preview-box a{color:#2563eb;font-weight:800;text-decoration:none}.inner-card{background:#fbfdff;border-color:#dbeafe;margin-top:16px}.brand{gap:12px}.brand-logo{object-fit:contain;background:#f8fafc;border-radius:12px;width:46px;height:46px;padding:4px;box-shadow:inset 0 0 0 1px #94a3b840}.brand strong{line-height:1.15}.login-session-message{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;margin:12px 0;padding:12px 14px;font-size:14px;font-weight:700;line-height:1.4}.badge{white-space:nowrap;border-radius:999px;align-items:center;padding:4px 9px;font-size:12px;font-weight:700;display:inline-flex}.badge-green{color:#166534;background:#dcfce7}.badge-yellow{color:#92400e;background:#fef3c7}.badge-red{color:#991b1b;background:#fee2e2}.badge-soft{color:#374151;background:#e5e7eb}.code-box{color:#e5e7eb;white-space:pre-wrap;background:#0f172a;border-radius:12px;max-height:280px;padding:14px;font-size:12px;overflow:auto}.simob-upload-card{gap:18px;display:grid}.simob-upload-form{grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:14px;display:grid}.simob-file-box{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:16px;padding:14px}.simob-file-box span{margin-bottom:8px;font-weight:800;display:block}.simob-file-box small{color:#64748b;margin-top:8px;display:block}.simob-read-button{min-height:48px}.simob-rules{color:#334155;background:#f1f5f9;border-radius:14px;flex-wrap:wrap;gap:10px;padding:12px 14px;display:flex}.simob-rules span{background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:4px 10px;font-weight:700}.simob-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.simob-toolbar h2{margin:0}.simob-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.badge-blue{color:#1d4ed8;background:#dbeafe}.simob-diff-plus{color:#1d4ed8;font-weight:800}.simob-diff-minus{color:#b91c1c;font-weight:800}@media (width<=900px){.simob-upload-form,.simob-toolbar{grid-template-columns:1fr;display:grid}.simob-actions{justify-content:stretch}.simob-actions button{width:100%}}
