:root{--bg-main:#020617;--bg-card:#1e293bb3;--bg-sidebar:#020617;--text-main:#f8fafc;--text-muted:#94a3b8;--primary:#8b5cf6;--primary-glow:#8b5cf680;--secondary:#10b981;--accent:#f59e0b;--danger:#ef4444;--success:#10b981;--border:#ffffff1a;--glass:#ffffff08;--glass-border:#ffffff14;--sidebar-width:280px;--shadow-premium:0 20px 25px -5px #0000004d, 0 10px 10px -5px #0003;--font-main:"Outfit", sans-serif}*{box-sizing:border-box;font-family:var(--font-main);margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-main);height:100vh;overflow:hidden}.hidden{display:none!important}#app{height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background-color:var(--bg-sidebar);border-right:1px solid var(--border);z-index:100;flex-direction:column;padding:2rem 1rem;display:flex}.logo{color:var(--primary);align-items:center;gap:.75rem;padding:0 .5rem 2rem;font-size:1.5rem;font-weight:700;display:flex}.logo-icon{width:32px;height:32px}.nav-links{flex:1;list-style:none}.nav-links li{cursor:pointer;color:var(--text-muted);border-radius:12px;align-items:center;gap:1rem;margin-bottom:.5rem;padding:.85rem 1rem;transition:all .3s;display:flex}.nav-links li:hover{background-color:var(--glass);color:var(--text-main)}.nav-links li.active{background-color:var(--primary);color:#fff;box-shadow:0 4px 12px #8b5cf64d}.nav-links li i{width:20px;height:20px}.sidebar-footer{border-top:1px solid var(--border);padding-top:1rem}.user-info{align-items:center;gap:.75rem;padding:.5rem;display:flex}.avatar{background-color:var(--primary);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-weight:700;display:flex}.user-details{overflow:hidden}.user-name{font-size:.9rem;font-weight:600}.user-status{color:var(--text-muted);font-size:.75rem}.main-content{background:radial-gradient(circle at 0 0,#8b5cf626 0%,#0000 50%),radial-gradient(circle at 100% 100%,#10b9811a 0%,#0000 50%),#020617;flex-direction:column;flex:1;display:flex;position:relative;overflow-y:auto}.main-content:before{content:"";opacity:.02;pointer-events:none;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");width:100%;height:100%;position:absolute;top:0;left:0}.top-bar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50;border-bottom:1px solid var(--border);background:#0f172acc;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex;position:sticky;top:0}.header-left h1{font-size:1.75rem;font-weight:700}.text-muted{color:var(--text-muted);font-size:.9rem}.header-right .date-picker-placeholder{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;display:flex}.content-area{width:100%;max-width:1400px;margin:0 auto;padding:2rem}.dashboard-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2rem;display:grid}.card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--shadow-premium);border-radius:24px;padding:1.75rem;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.card:after{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff0d 0%,#0000 100%);width:100%;height:100%;position:absolute;top:0;left:0}.card:hover{border-color:#8b5cf64d;transform:translateY(-8px)scale(1.02);box-shadow:0 25px 50px -12px #00000080}.summary-card{flex-direction:column;gap:.5rem;display:flex}.summary-card i{width:24px;height:24px;margin-bottom:.5rem}.label{color:var(--text-muted);font-size:.85rem;font-weight:500}.value{font-size:1.5rem;font-weight:700}.trend{margin-top:.5rem;font-size:.75rem}.trend.positive{color:var(--success)}.trend.negative{color:var(--danger)}.charts-grid{grid-template-columns:2fr 1fr;gap:1.5rem;margin-bottom:2rem;display:grid}.chart-card{flex-direction:column;height:400px;display:flex}.chart-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.chart-container{flex:1;position:relative}.list-card{grid-column:span 2}.data-list{flex-direction:column;gap:1rem;display:flex}.list-item{background:var(--glass);border:1px solid var(--glass-border);border-radius:12px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.item-info{align-items:center;gap:1rem;display:flex}.item-icon{border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.item-text h4{font-size:.95rem;font-weight:600}.item-text span{color:var(--text-muted);font-size:.8rem}.item-value{text-align:right}.item-value p{font-size:1rem;font-weight:700}.item-value span{font-size:.75rem}.badge{text-transform:uppercase;border-radius:6px;padding:.25rem .6rem;font-size:.7rem;font-weight:600}.badge-essential{color:var(--success);background:#10b9811a}.badge-important{color:var(--accent);background:#f59e0b1a}.badge-optional{color:var(--text-muted);background:#94a3b81a}.badge-danger{color:var(--danger);background:#ef44441a}.plan-header{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem;display:grid}.alert-message{border:1px solid var(--danger);color:#fca5a5;background:#ef44441a;border-radius:12px;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem;display:flex}.step-indicator{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.step{color:var(--text-muted);align-items:center;gap:.5rem;font-size:.85rem;display:flex}.step.active{color:var(--primary);font-weight:600}.step-number{background:var(--border);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.75rem;display:flex}.step.active .step-number{background:var(--primary);color:#fff}.chat-trigger{background:var(--primary);color:#fff;cursor:pointer;z-index:1000;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:transform .3s;display:flex;position:fixed;bottom:2rem;right:2rem;box-shadow:0 8px 32px #8b5cf666}.chat-trigger:hover{transform:scale(1.1)}.chat-badge{background:var(--danger);color:#fff;border:2px solid var(--bg-main);border-radius:10px;padding:.2rem .5rem;font-size:.7rem;position:absolute;top:-5px;right:-5px}.chat-container{background:var(--bg-card);border:1px solid var(--border);z-index:1000;border-radius:20px;flex-direction:column;width:350px;height:500px;display:flex;position:fixed;bottom:6rem;right:2rem;overflow:hidden;box-shadow:0 12px 48px #0006}.chat-header{background:var(--bg-sidebar);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem;display:flex}.chat-title{align-items:center;gap:.5rem;display:flex}.status-dot{background:var(--success);width:8px;height:8px;box-shadow:0 0 10px var(--success);border-radius:50%}.chat-title h4{margin:0;font-size:.9rem}.chat-actions{gap:.25rem;display:flex}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:.3s cubic-bezier(.19,1,.22,1) slide-up}.chat-messages{flex-direction:column;flex:1;gap:1rem;padding:1rem;display:flex;overflow-y:auto}.message{border-radius:15px;max-width:80%;padding:.75rem 1rem;font-size:.85rem;line-height:1.4}.message.assistant{background:var(--glass);color:var(--text-main);border-bottom-left-radius:2px;align-self:flex-start}.message.user{background:var(--primary);color:#fff;border-bottom-right-radius:2px;align-self:flex-end}.chat-footer{border-top:1px solid var(--border);gap:.5rem;padding:1rem;display:flex}.chat-footer input{background:var(--bg-main);border:1px solid var(--border);color:var(--text-main);border-radius:10px;flex:1;padding:.5rem 1rem;font-size:.85rem}.status-tag{border-radius:4px;padding:.2rem .6rem;font-size:.65rem;font-weight:700}.status-pending{color:var(--accent);background:#f59e0b1a}.status-paid{color:var(--success);background:#10b9811a}.btn-small{border-radius:6px;padding:.35rem .75rem;font-size:.7rem}.mercado-bar-container{background:var(--border);border-radius:6px;width:100%;height:12px;margin:10px 0;overflow:hidden}.mercado-bar-fill{background:var(--secondary);height:100%;transition:width .3s}.modal-container{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;opacity:1;background:#000000b3;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:flex;position:fixed;top:0;left:0}.modal-container.hidden{display:none!important}.modal-content{background:var(--bg-card);border:1px solid var(--border);border-radius:24px;width:100%;max-width:500px;overflow:hidden}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-body{flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:1rem;padding:1.5rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:var(--text-muted);font-size:.85rem;font-weight:500}.form-group input,.form-group select{background:var(--bg-main);border:1px solid var(--border);color:var(--text-main);border-radius:10px;outline:none;padding:.75rem;transition:border-color .3s}.form-group input:focus,.form-group select:focus{border-color:var(--primary)}.btn-primary{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;padding:.75rem 1.5rem;font-weight:600;transition:all .3s}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:var(--glass);color:var(--text-main);border:1px solid var(--border);cursor:pointer;border-radius:12px;padding:.75rem 1.5rem;font-weight:600}.btn-icon{color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.btn-icon:hover{color:var(--text-main)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade{animation:.4s forwards fadeIn}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media (width<=1024px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}.charts-grid{grid-template-columns:1fr}}@media (width<=768px){.sidebar{width:80px;padding:2rem .5rem}.logo span,.nav-links span,.user-details,.sidebar-footer{display:none}.dashboard-grid{grid-template-columns:1fr}}
