@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--bg-primary:#f8f9fc;--bg-secondary:#fff;--bg-tertiary:#f1f3f8;--text-primary:#1a1e2b;--text-secondary:#5a6478;--text-inverse:#fff;--primary-color:#0f172a;--primary-hover:#1e293b;--accent-color:#c49a45;--accent-hover:#d4af37;--accent-light:#c49a451a;--border-color:#e2e8f0;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--info:#3b82f6;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-accent:0 4px 14px 0 #c49a4563;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;--font-sans:"Outfit", sans-serif;--transition-normal:.2s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1)}.dark{--bg-primary:#0b0f19;--bg-secondary:#131a2a;--bg-tertiary:#1c263b;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-inverse:#1a1e2b;--primary-color:#fff;--primary-hover:#f1f5f9;--accent-color:#d4af37;--accent-hover:#fcd34d;--accent-light:#d4af3726;--border-color:#27354f}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-normal), color var(--transition-normal);line-height:1.5}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:600;line-height:1.2}h1{font-size:2.25rem}h2{font-size:1.875rem}h3{font-size:1.5rem}h4{font-size:1.25rem}p{color:var(--text-secondary)}a{color:var(--accent-color);transition:color var(--transition-normal);text-decoration:none}a:hover{color:var(--accent-hover)}.app-container{width:100vw;height:100vh;display:flex;position:relative;overflow:hidden}.main-content{background-color:var(--bg-primary);flex-direction:column;flex:1;width:100%;display:flex;overflow:hidden}.page-wrapper{flex-direction:column;flex:1;gap:1.5rem;padding:1.5rem;display:flex;overflow-y:auto}@media (width>=768px){.page-wrapper{gap:2rem;padding:2rem}}.card{background-color:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);transition:box-shadow var(--transition-normal), transform var(--transition-normal);padding:1.5rem}.card:hover{box-shadow:var(--shadow-md)}.btn{border-radius:var(--radius-sm);font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-normal);border:none;outline:none;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.95rem;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background-color:var(--primary-color);color:var(--bg-primary);box-shadow:var(--shadow-sm)}.btn-primary:hover{background-color:var(--primary-hover);box-shadow:var(--shadow-md)}.btn-accent{background-color:var(--accent-color);color:#fff;box-shadow:var(--shadow-accent)}.btn-accent:hover{background-color:var(--accent-hover);transform:translateY(-1px);box-shadow:0 6px 20px #c49a4580}.btn-outline{color:var(--text-primary);border:1px solid var(--border-color);background-color:#0000}.btn-outline:hover{background-color:var(--bg-tertiary);border-color:var(--text-secondary)}.btn-ghost{color:var(--text-secondary);background-color:#0000}.btn-ghost:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.input{border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--bg-secondary);width:100%;color:var(--text-primary);font-family:var(--font-sans);transition:border-color var(--transition-normal), box-shadow var(--transition-normal);padding:.75rem 1rem;font-size:.95rem}.input:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-light);outline:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}.sidebar{background-color:var(--bg-secondary);border-right:1px solid var(--border-color);z-index:50;flex-direction:column;width:280px;height:100%;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.sidebar.collapsed{width:80px}.sidebar-header{border-bottom:1px solid var(--border-color);justify-content:center;align-items:center;height:70px;padding:1rem;display:flex;position:relative}.sidebar.collapsed .sidebar-logo{content:url(/favicon.svg);object-fit:cover;max-width:40px}.sidebar-logo{object-fit:contain;max-width:180px;height:auto;transition:all .3s}.sidebar-nav{flex-direction:column;flex:1;gap:.5rem;padding:1.5rem 1rem;display:flex;overflow-y:auto}.sidebar.collapsed .sidebar-nav{padding:1.5rem .5rem}.nav-item{border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition-normal);cursor:pointer;white-space:nowrap;align-items:center;gap:.875rem;padding:.875rem 1rem;font-weight:500;display:flex;overflow:hidden}.sidebar.collapsed .nav-item{justify-content:center;padding:.875rem}.sidebar.collapsed .nav-item-text{display:none}.nav-item:hover{background-color:var(--bg-tertiary);color:var(--primary-color)}.nav-item.active{background-color:var(--accent-light);color:var(--accent-color)}.nav-item-icon{flex-shrink:0;width:20px;height:20px}.sidebar-toggle-btn{background-color:var(--bg-secondary);border:1px solid var(--border-color);cursor:pointer;width:28px;height:28px;color:var(--text-secondary);z-index:60;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:22px;right:-14px}.sidebar-toggle-btn:hover{color:var(--primary-color);background-color:var(--bg-tertiary)}.sidebar-overlay{z-index:40;background-color:#00000080;display:none;position:fixed;inset:0}.kanban-board{scroll-snap-type:x mandatory;gap:1.5rem;height:100%;padding-bottom:1rem;display:flex;overflow-x:auto}.kanban-column{background-color:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color);scroll-snap-align:start;flex-direction:column;width:320px;min-width:320px;height:100%;max-height:calc(100vh - 12rem);display:flex}.kanban-column-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.25rem;display:flex}.kanban-column-title{color:var(--text-primary);font-size:1rem;font-weight:600}.kanban-badge{background-color:var(--bg-secondary);color:var(--text-secondary);border-radius:var(--radius-full);padding:.125rem .5rem;font-size:.75rem;font-weight:600}.kanban-column-content{flex-direction:column;flex:1;gap:.75rem;padding:1rem;display:flex;overflow-y:auto}.kanban-card{background-color:var(--bg-secondary);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);cursor:grab;transition:all var(--transition-normal);padding:1rem}.kanban-card:hover{box-shadow:var(--shadow-md);border-color:var(--accent-color)}.kanban-card:active{cursor:grabbing}.kanban-card-title{color:var(--text-primary);margin-bottom:.25rem;font-weight:600}.kanban-card-desc{color:var(--text-secondary);margin-bottom:.75rem;font-size:.875rem}.kanban-card-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-top:.75rem;padding-top:.75rem;display:flex}.kanban-card-tag{border-radius:var(--radius-sm);background-color:var(--accent-light);color:var(--accent-color);text-transform:uppercase;letter-spacing:.5px;padding:.2rem .5rem;font-size:.7rem;font-weight:600}.data-table-wrapper{background-color:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);overflow:hidden}.data-table-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.data-table{border-collapse:collapse;text-align:left;width:100%}.data-table th{color:var(--text-secondary);border-bottom:1px solid var(--border-color);background-color:var(--bg-tertiary);text-transform:uppercase;letter-spacing:.5px;padding:1rem 1.5rem;font-size:.875rem;font-weight:600}.data-table td{color:var(--text-primary);border-bottom:1px solid var(--border-color);padding:1rem 1.5rem;font-size:.95rem}.data-table tbody tr{transition:background-color var(--transition-normal)}.data-table tbody tr:hover{background-color:var(--bg-tertiary)}.glass{-webkit-backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #ffffff2e}.dark .glass{background:#131a2ab3;border:1px solid #ffffff0d}.top-header{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);z-index:5;justify-content:space-between;align-items:center;height:70px;padding:0 1.5rem;display:flex}@media (width>=768px){.top-header{padding:0 2rem}}.header-left{align-items:center;gap:1rem;display:flex}.mobile-menu-btn{color:var(--text-primary);cursor:pointer;background:0 0;border:none;display:none}.header-title{font-size:1.125rem;font-weight:600;display:none}@media (width>=640px){.header-title{font-size:1.25rem;display:block}}.header-actions{align-items:center;gap:.5rem;display:flex}@media (width>=640px){.header-actions{gap:1rem}}.search-input-wrapper{display:none;position:relative}@media (width>=768px){.search-input-wrapper{display:block}}.upload-zone{border:2px dashed var(--border-color);border-radius:var(--radius-md);text-align:center;background-color:var(--bg-tertiary);transition:all var(--transition-normal);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;padding:3rem 2rem;display:flex}.upload-zone:hover{border-color:var(--accent-color);background-color:var(--accent-light)}.upload-icon{width:48px;height:48px;color:var(--accent-color);margin-bottom:1rem}.upload-title{margin-bottom:.5rem;font-size:1.125rem;font-weight:600}.upload-desc{color:var(--text-secondary);font-size:.875rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;display:grid}.stat-card{background-color:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);transition:all var(--transition-normal);align-items:flex-start;gap:1rem;padding:1.5rem;display:flex}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-icon-wrapper{border-radius:var(--radius-sm);background-color:var(--accent-light);width:48px;height:48px;color:var(--accent-color);justify-content:center;align-items:center;display:flex}.stat-info{flex:1}.stat-label{color:var(--text-secondary);margin-bottom:.25rem;font-size:.875rem;font-weight:500}.stat-value{color:var(--text-primary);font-size:1.5rem;font-weight:700}.property-card{background-color:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color);transition:all var(--transition-normal);flex-direction:column;display:flex;overflow:hidden}.property-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.property-image{background-color:var(--bg-tertiary);object-fit:cover;width:100%;height:200px}.property-content{flex-direction:column;flex:1;gap:.75rem;padding:1.5rem;display:flex}.property-title{color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1.125rem;font-weight:600;display:-webkit-box;overflow:hidden}.property-location{color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.875rem;display:flex}.property-price{color:var(--accent-color);margin-top:auto;font-size:1.5rem;font-weight:700}.property-discount{background-color:var(--success);color:#fff;border-radius:var(--radius-sm);margin-bottom:.5rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}@media (width<=1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.sidebar{position:fixed;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.sidebar-overlay.mobile-open,.mobile-menu-btn{display:block}.dashboard-grid{grid-template-columns:1fr!important}.stats-grid{grid-template-columns:1fr}.upload-zone{padding:2rem 1rem}.caixa-header-actions{flex-direction:column;align-items:stretch!important}.caixa-search-bar{width:100%!important}.desktop-only{display:none!important}.mobile-only{display:inline-block!important}}.mobile-only{display:none!important}@supports (height:100dvh){.app-container{height:100dvh}}
