@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&family=DM+Mono:wght@400;500&display=swap";:root{--c-bg: #f5f7fb;--c-surface: #ffffff;--c-surface-2: #eef3f8;--c-border: #d7e0ea;--c-border-2: #b8c7d6;--c-primary: #16825d;--c-primary-2: #0f6d50;--c-primary-bg: #e5f5ee;--c-primary-text:#0c5f46;--c-success: #168a4a;--c-warning: #b66a00;--c-danger: #c93636;--c-info: #2563eb;--c-text-1: #172033;--c-text-2: #526178;--c-text-3: #8390a3;--c-nuevo: #2563eb;--c-contactado: #7c3aed;--c-cotizado: #b66a00;--c-negociando: #c75c12;--c-ganado: #168a4a;--c-perdido: #c93636;--font: "DM Sans", sans-serif;--font-mono: "DM Mono", monospace;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 20px;--shadow-sm: 0 1px 2px rgba(21,31,48,.08), 0 1px 8px rgba(21,31,48,.06);--shadow-md: 0 8px 24px rgba(21,31,48,.1);--shadow-lg: 0 18px 50px rgba(21,31,48,.16);--t: .15s ease;--t-md: .25s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:15px;-webkit-font-smoothing:antialiased}body{font-family:var(--font);background:radial-gradient(circle at 18% 0%,rgba(22,130,93,.08),transparent 28rem),linear-gradient(180deg,#fbfcfe 0%,var(--c-bg) 18rem);color:var(--c-text-1);line-height:1.6;min-height:100vh}a{color:inherit;text-decoration:none}button{font-family:var(--font);cursor:pointer;border:none;background:none}input,textarea,select{font-family:var(--font)}img{display:block;max-width:100%}.app-shell{display:grid;grid-template-columns:220px 1fr;grid-template-rows:56px 1fr;min-height:100vh}.topbar{grid-column:1 / -1;display:flex;align-items:center;padding:0 20px;background:var(--c-surface);border-bottom:1px solid var(--c-border);box-shadow:0 1px #fffc;gap:12px;position:sticky;top:0;z-index:100}.sidebar{background:#fbfcfe;border-right:1px solid var(--c-border);padding:12px 10px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.main{overflow-y:auto;padding:28px;background:transparent}.nav-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:var(--r-md);font-size:.88rem;font-weight:400;color:var(--c-text-2);transition:background var(--t),color var(--t);cursor:pointer}.nav-item:hover{background:var(--c-surface-2);color:var(--c-text-1)}.nav-item.active{background:var(--c-primary-bg);color:var(--c-primary-text);font-weight:500}.nav-icon{width:18px;height:18px;flex-shrink:0}.nav-section{font-size:.7rem;font-weight:600;color:var(--c-text-3);letter-spacing:.08em;text-transform:uppercase;padding:16px 12px 4px}.page-title{font-size:1.5rem;font-weight:600;color:var(--c-text-1)}.section-title{font-size:.8rem;font-weight:600;color:var(--c-text-3);letter-spacing:.07em;text-transform:uppercase;margin-bottom:12px}.label{font-size:.78rem;font-weight:500;color:var(--c-text-2);margin-bottom:6px;display:block}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:20px;box-shadow:var(--shadow-sm)}.card-sm{padding:14px 16px}.card-hover{transition:border-color var(--t),box-shadow var(--t)}.card-hover:hover{border-color:var(--c-border-2);box-shadow:var(--shadow-sm)}.btn{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border-radius:var(--r-md);font-size:.875rem;font-weight:500;transition:all var(--t);line-height:1;white-space:nowrap}.btn-primary{background:var(--c-primary);color:#fff}.btn-primary:hover{background:var(--c-primary-2)}.btn-secondary{background:#fff;color:var(--c-text-1);border:1px solid var(--c-border)}.btn-secondary:hover{background:var(--c-surface-2);border-color:var(--c-border-2)}.btn-ghost{color:var(--c-text-2);padding:6px 10px}.btn-ghost:hover{background:var(--c-surface-2);color:var(--c-text-1)}.btn-danger{background:#fff0f0;color:var(--c-danger);border:1px solid #f5c5c5}.btn-danger:hover{background:#ffe4e4}.btn-sm{padding:5px 12px;font-size:.8rem}.btn-lg{padding:11px 22px;font-size:.95rem}.btn:disabled{opacity:.45;cursor:not-allowed}.input,.select,.textarea{width:100%;background:#fff;border:1px solid var(--c-border);border-radius:var(--r-md);padding:9px 13px;font-size:.875rem;color:var(--c-text-1);transition:border-color var(--t),box-shadow var(--t);outline:none;-webkit-appearance:none}.input::placeholder,.textarea::placeholder{color:var(--c-text-3)}.input:focus,.select:focus,.textarea:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px #16825d29}.textarea{resize:vertical;min-height:90px}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-error{font-size:.78rem;color:var(--c-danger);margin-top:3px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.875rem}thead th{text-align:left;padding:10px 14px;font-size:.72rem;font-weight:600;color:var(--c-text-3);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--c-border);white-space:nowrap}tbody tr{border-bottom:1px solid var(--c-border);transition:background var(--t)}tbody tr:hover{background:#f8fafc}tbody td{padding:12px 14px;color:var(--c-text-2)}tbody td:first-child{color:var(--c-text-1);font-weight:500}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:.73rem;font-weight:500;white-space:nowrap}.badge-nuevo{background:#e8f0ff;color:#1d4ed8}.badge-contactado{background:#f0eaff;color:#6d28d9}.badge-cotizado{background:#fff3d8;color:#9a5a00}.badge-negociando{background:#ffeadb;color:#b3470e}.badge-ganado{background:#e5f6ec;color:#126b3a}.badge-perdido{background:#ffe9e9;color:#b42323}.badge-success{background:#e5f6ec;color:#126b3a}.badge-warning{background:#fff3d8;color:#9a5a00}.badge-info{background:#e8f0ff;color:#1d4ed8}.badge-neutral{background:var(--c-surface-2);color:var(--c-text-2)}.kanban{display:flex;gap:14px;overflow-x:auto;padding-bottom:12px;align-items:flex-start}.kanban-col{flex:0 0 260px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);display:flex;flex-direction:column;max-height:calc(100vh - 180px)}.kanban-col-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--c-border);position:sticky;top:0;background:var(--c-surface);border-radius:var(--r-lg) var(--r-lg) 0 0}.kanban-col-title{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:600;color:var(--c-text-1)}.kanban-dot{width:8px;height:8px;border-radius:50%}.kanban-count{font-size:.75rem;color:var(--c-text-3);background:var(--c-surface-2);padding:1px 7px;border-radius:999px}.kanban-body{overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:8px;flex:1}.deal-card{background:#fff;border:1px solid var(--c-border);border-radius:var(--r-md);padding:12px 14px;cursor:pointer;transition:border-color var(--t),transform var(--t)}.deal-card:hover{border-color:var(--c-border-2);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.deal-card-title{font-size:.875rem;font-weight:500;color:var(--c-text-1);margin-bottom:6px}.deal-card-sub{font-size:.78rem;color:var(--c-text-2)}.deal-card-meta{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.deal-valor{font-size:.82rem;font-weight:600;color:var(--c-primary);font-family:var(--font-mono)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:24px}.kpi-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:18px 20px;box-shadow:var(--shadow-sm)}.kpi-label{font-size:.75rem;font-weight:600;color:var(--c-text-3);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}.kpi-value{font-size:1.8rem;font-weight:600;color:var(--c-text-1);font-family:var(--font-mono);line-height:1}.kpi-sub{font-size:.78rem;color:var(--c-text-3);margin-top:6px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#17203347;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .15s ease}.modal{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-xl);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:slideUp .2s ease}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--c-border)}.modal-title{font-size:1rem;font-weight:600}.modal-body{padding:24px}.modal-footer{padding:16px 24px;border-top:1px solid var(--c-border);display:flex;gap:10px;justify-content:flex-end}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:10px;text-align:center}.empty-icon{font-size:2rem;margin-bottom:4px}.empty-title{font-size:.95rem;font-weight:600;color:var(--c-text-1)}.empty-sub{font-size:.84rem;color:var(--c-text-3);max-width:280px}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.text-muted{color:var(--c-text-2)}.text-sm{font-size:.84rem}.text-xs{font-size:.75rem}.mono{font-family:var(--font-mono)}.truncate{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.divider{border:none;border-top:1px solid var(--c-border);margin:20px 0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:20px;height:20px;border:2px solid var(--c-border-2);border-top-color:var(--c-primary);border-radius:50%;animation:spin .6s linear infinite}.pipeline-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.pipeline-stat{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);padding:12px 16px}.pipeline-stat-label{font-size:.7rem;font-weight:600;color:var(--c-text-3);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.pipeline-stat-value{font-size:1.35rem;font-weight:700;color:var(--c-text-1);font-family:var(--font-mono);line-height:1.1}.pipeline-stat-sub{font-size:.72rem;color:var(--c-text-3);margin-top:3px}.pipeline-tabs{display:flex;gap:4px;padding:0 0 2px;border-bottom:1px solid var(--c-border);overflow-x:auto}.pipeline-tab{display:flex;align-items:center;gap:6px;padding:7px 14px;font-size:.82rem;font-weight:500;color:var(--c-text-2);border-radius:var(--r-sm) var(--r-sm) 0 0;border:1px solid transparent;border-bottom:none;white-space:nowrap;transition:color var(--t),background var(--t);cursor:pointer;position:relative;bottom:-1px}.pipeline-tab:hover{color:var(--c-text-1);background:var(--c-surface-2)}.pipeline-tab.active{color:var(--c-primary-text);background:var(--c-surface);border-color:var(--c-border);border-bottom-color:var(--c-surface)}.pipeline-tab-count{font-size:.68rem;background:var(--c-surface-2);color:var(--c-text-3);padding:1px 6px;border-radius:999px}.pipeline-tab.active .pipeline-tab-count{background:var(--c-primary-bg);color:var(--c-primary-text)}.kanban-col.drag-over{border-color:var(--c-primary);background:var(--c-primary-bg);box-shadow:0 0 0 2px #1a7f5a33}.kanban-col.drag-over .kanban-body{background:#16825d14;border-radius:0 0 var(--r-lg) var(--r-lg)}.deal-card.rotting{border-top-color:var(--c-warning)!important}.deal-card.rotting:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--c-warning);border-radius:var(--r-md) var(--r-md) 0 0}.deal-card{position:relative}.deal-panel-overlay{position:fixed;top:56px;right:0;bottom:0;left:0;background:#1720332e;z-index:200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeIn .15s ease}.deal-panel{position:fixed;top:56px;right:0;bottom:0;width:500px;background:var(--c-surface);border-left:1px solid var(--c-border);z-index:201;overflow:hidden;display:flex;flex-direction:column;box-shadow:-10px 0 34px #151f3024;animation:slideInRight .22s ease}@keyframes slideInRight{0%{transform:translate(60px);opacity:0}to{transform:translate(0);opacity:1}}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--c-border-2);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--c-text-3)}
