:root{--bg:#f2ede4;--surface:#ffffff;--surface-2:#faf7f1;--ink:#0b2430;--ink-muted:#6b8390;--line:rgba(11,36,48,0.14);--line-strong:rgba(11,36,48,0.24);--accent:#29a3de;--accent-strong:#1e92cc;--accent-soft:#e6f3fa;--accent-ink:#0b2430;--lost:#b8503e;--lost-soft:#f5e6e2;--shadow:0 1px 2px rgba(11,36,48,0.06),0 8px 24px -12px rgba(11,36,48,0.22)}*{box-sizing:border-box}body,html{padding:0;margin:0;color-scheme:light}body{background:var(--bg);color:var(--ink);padding:0 20px 64px;min-height:100vh}body,h1,h2,h3{font-family:Figtree,Helvetica Neue,Arial,sans-serif}h1,h2,h3{font-weight:900;letter-spacing:-.03em;text-wrap:balance;margin:0}.mono{font-family:IBM Plex Mono,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.wrap{max-width:1280px;margin:0 auto}header.top{justify-content:space-between;gap:16px;padding:36px 0 22px}.brand-lock,header.top{display:flex;align-items:baseline;flex-wrap:wrap}.brand-lock{gap:12px}.wordmark{font-family:Figtree,Helvetica Neue,Arial,sans-serif;font-weight:900;letter-spacing:-.04em;font-size:2rem;color:var(--ink);display:inline-flex;align-items:baseline;line-height:1;text-decoration:none}.wordmark:hover{color:var(--accent-strong)}.wordmark .bang{height:.812em;width:.434em;vertical-align:-.056em;margin-left:.09em;display:inline-block}.product-tag{font-family:IBM Plex Mono,monospace;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-strong);background:var(--accent-soft);padding:3px 9px;border-radius:4px}header.top .sub{color:var(--ink-muted);font-size:.92rem;margin-top:6px}.ghost-link{font-family:IBM Plex Mono,monospace;font-size:.78rem;letter-spacing:.04em;color:var(--ink-muted);text-decoration:none;border:1px solid var(--line-strong);border-radius:3px;padding:8px 14px;align-self:flex-start}.ghost-link:hover{color:var(--ink);border-color:var(--ink)}.cols-picker{position:relative}.cols-panel{position:absolute;top:calc(100% + 6px);right:0;background:var(--surface);border:1px solid var(--line-strong);box-shadow:var(--shadow);padding:8px;z-index:15;min-width:200px;flex-direction:column;gap:2px}.cols-panel,.cols-panel-item{border-radius:3px;display:flex}.cols-panel-item{align-items:center;gap:8px;font-size:.84rem;padding:6px 8px;cursor:pointer}.cols-panel-item:hover{background:var(--surface-2)}.cols-panel-item input{padding:0;width:14px;height:14px}.kpis{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:12px;gap:12px;margin-bottom:28px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:16px 18px}.kpi .label{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:8px;font-family:IBM Plex Mono,monospace;display:flex;align-items:center;gap:5px}.kpi .value{font-family:Figtree,Helvetica Neue,Arial,sans-serif;font-size:1.55rem;font-weight:800;letter-spacing:-.02em}.kpi .value.accent,.kpi-cadence .value{color:var(--accent-strong)}.kpi-sub{font-size:.7rem;color:var(--ink-muted);margin-top:2px}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:22px}input,select,textarea{font-family:inherit;font-size:.9rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:3px;padding:9px 12px}button:focus-visible,input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.search-box{position:relative;flex:1 1 220px;min-width:160px;display:flex;align-items:center}.search-box svg{position:absolute;left:11px;color:var(--ink-muted);pointer-events:none}.search-box input[type=search]{width:100%;padding-left:32px}.icon-label-btn{display:inline-flex;align-items:center;gap:6px}.icon-label-btn svg{flex:none}button.ghost.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.toolbar select{flex:0 0 auto}.spacer{flex:1 1}.view-toggle{display:inline-flex;border:1px solid var(--line-strong);border-radius:3px;overflow:hidden}.view-toggle button{font-family:Figtree,sans-serif;font-size:.82rem;font-weight:600;background:var(--surface);color:var(--ink-muted);border:none;padding:8px 14px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.view-badge{font-family:IBM Plex Mono,monospace;font-size:.66rem;background:var(--accent);color:var(--accent-ink);border-radius:999px;padding:1px 6px;line-height:1.4}.view-toggle button.active .view-badge{background:var(--bg);color:var(--ink)}.view-toggle button+button{border-left:1px solid var(--line-strong)}.view-toggle button.active,a.primary,button.primary{background:var(--ink);color:var(--bg)}a.primary,button.primary{font-family:Figtree,sans-serif;font-weight:700;font-size:.9rem;border:1px solid var(--ink);border-radius:3px;padding:10px 16px;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center}a.primary:hover,button.primary:hover{transform:translateY(-1px);opacity:.92}button.primary:disabled{opacity:.5;cursor:default;transform:none}a.ghost,button.ghost{font-family:Figtree,sans-serif;font-size:.85rem;font-weight:600;background:transparent;color:var(--ink);border:1px solid var(--line-strong);border-radius:3px;padding:8px 12px;cursor:pointer;display:inline-flex;align-items:center}a.ghost:hover,button.ghost:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);grid-gap:14px;gap:14px;overflow-x:auto;padding-bottom:8px}.column{background:var(--surface-2);border:1px solid var(--line);border-radius:3px;padding:12px;display:flex;flex-direction:column;min-height:120px;transition:background-color .12s ease,border-color .12s ease}.column.column-drop-target{background:var(--accent-soft);border-color:var(--accent)}.column .col-head{display:flex;align-items:baseline;justify-content:space-between;padding:4px 4px 12px;border-bottom:1px solid var(--line-strong);margin-bottom:10px}.column .col-head .name{font-weight:700;font-size:.88rem}.column .col-head .count{font-size:.74rem}.column .col-head .count,.column .col-total{font-family:IBM Plex Mono,monospace;color:var(--ink-muted)}.column .col-total{font-size:.76rem;padding:0 4px 10px;margin-top:-6px}.cards{display:flex;flex-direction:column;gap:10px;flex:1 1}.empty-col{color:var(--ink-muted);font-size:.8rem;padding:10px 4px;text-align:center}.card{background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:12px 13px;box-shadow:var(--shadow);cursor:-webkit-grab;cursor:grab;display:flex;flex-direction:column;gap:7px}.card.dragging{opacity:.45;cursor:-webkit-grabbing;cursor:grabbing}.card .company{font-weight:700;font-size:.92rem}.card .contact{color:var(--ink-muted);font-size:.8rem}.card .unknown-company{color:var(--ink-muted);font-size:.72rem;font-weight:400;font-style:italic}.card .row2{display:flex;align-items:center;justify-content:space-between;gap:8px}.chip{font-family:IBM Plex Mono,monospace;font-size:.68rem;letter-spacing:.02em;padding:2px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);white-space:nowrap}.card .value{font-size:.84rem;font-weight:700}.card .next{font-size:.76rem;color:var(--ink-muted);border-top:1px dashed var(--line-strong);padding-top:6px;margin-top:1px}.card .next b{color:var(--ink);font-weight:600}.card.example{opacity:.72}.card .example-tag{font-size:.66rem;color:var(--ink-muted);font-style:italic}.filter-picker{position:relative}.filter-panel{position:absolute;top:calc(100% + 6px);left:0;background:var(--surface);border:1px solid var(--line-strong);border-radius:3px;box-shadow:var(--shadow);padding:14px;z-index:20;width:min(600px,90vw);display:flex;flex-direction:column;gap:10px}.filter-empty-hint{color:var(--ink-muted);font-size:.82rem;margin:0;max-width:48ch}.filter-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;grid-gap:8px;gap:8px;align-items:center}.filter-row input,.filter-row select{min-width:0;width:100%}.filter-panel-actions{display:flex;gap:8px;padding-top:4px;border-top:1px solid var(--line)}@media (max-width:640px){.filter-panel{width:min(420px,92vw)}.filter-row{grid-template-columns:1fr}}tr.row-overdue td{background:var(--lost-soft)}tr.row-past td{opacity:.55}.lead-chip{border:none;cursor:pointer;margin:2px 4px 2px 0;font-family:IBM Plex Mono,monospace}.lead-chip:hover{background:var(--accent);color:var(--accent-ink)}.cal-wrap{display:flex;flex-direction:column;gap:12px}.cal-toolbar{gap:14px;flex-wrap:wrap}.cal-nav,.cal-toolbar{display:flex;align-items:center}.cal-nav{gap:6px}.cal-nav-label{font-weight:700;font-size:.92rem;text-transform:capitalize;margin-left:4px}.cal-loading{color:var(--ink-muted);font-size:.8rem}.cal-today{background:var(--accent-soft)!important}.cal-month{border:1px solid var(--line);border-radius:3px;overflow:hidden;background:var(--surface)}.cal-month-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:var(--surface-2);border-bottom:1px solid var(--line-strong)}.cal-month-weekdays div{padding:8px 10px;font-family:IBM Plex Mono,monospace;font-size:.68rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-muted)}.cal-month-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(96px,auto)}.cal-month-cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px;display:flex;flex-direction:column;gap:4px;min-width:0}.cal-month-cell.cal-dim{background:var(--surface-2);opacity:.55}.cal-month-daynum{font-family:IBM Plex Mono,monospace;font-size:.76rem;color:var(--ink-muted)}.cal-month-events{display:flex;flex-direction:column;gap:2px;min-width:0}.cal-event-chip{display:block;background:var(--surface-2);border:1px solid var(--line);border-radius:3px;padding:2px 5px;font-size:.7rem;line-height:1.35;text-decoration:none;color:var(--ink);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cal-event-chip:hover{border-color:var(--accent)}.cal-event-chip.cal-event-matched{background:var(--accent-soft);border-color:var(--accent)}.cal-event-time{font-family:IBM Plex Mono,monospace;color:var(--ink-muted);margin-right:4px}.cal-event-title{font-weight:500}.cal-event-lead{display:block;font-size:.64rem;color:var(--accent-strong);font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cal-event-more{font-size:.68rem;color:var(--ink-muted);padding:1px 4px}.cal-week{border:1px solid var(--line);border-radius:3px;background:var(--surface);overflow:hidden}.cal-week-gutter{width:52px;flex:none}.cal-week-head{display:flex;border-bottom:1px solid var(--line-strong);background:var(--surface-2)}.cal-week-headcell{flex:1 1;padding:8px 6px;text-align:center;border-left:1px solid var(--line)}.cal-week-headday{font-family:IBM Plex Mono,monospace;font-size:.66rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-muted)}.cal-week-headnum{font-weight:700;font-size:.9rem}.cal-week-allday{display:flex;border-bottom:1px solid var(--line);min-height:24px}.cal-week-alldaycell{flex:1 1;border-left:1px solid var(--line);padding:2px 4px;display:flex;flex-direction:column;gap:2px}.cal-week-body{display:flex;position:relative;height:560px;overflow-y:auto}.cal-week-hours{display:flex;flex-direction:column}.cal-hour-label{height:40px;font-family:IBM Plex Mono,monospace;font-size:.62rem;color:var(--ink-muted);text-align:right;padding-right:6px;transform:translateY(-6px)}.cal-week-daycol{flex:1 1;position:relative;border-left:1px solid var(--line)}.cal-hour-line{height:40px;border-bottom:1px dashed var(--line)}.cal-week-event{position:absolute;left:2px;right:2px;background:var(--accent-soft);border:1px solid var(--accent);border-left:3px solid var(--accent-strong);border-radius:3px;padding:2px 5px;font-size:.68rem;line-height:1.3;overflow:hidden;text-decoration:none;color:var(--ink);z-index:1}.cal-week-event:hover{z-index:2;box-shadow:var(--shadow)}.cal-week-event.cal-event-matched{background:var(--accent);color:var(--accent-ink);border-color:var(--accent-strong)}.cal-week-event .cal-event-lead{color:inherit;opacity:.85}@media (max-width:860px){.cal-month-grid{grid-auto-rows:minmax(70px,auto)}.cal-week-gutter{width:36px}.cal-hour-label{font-size:.56rem}}.overdue-tag{display:inline-block;margin-left:8px;font-family:IBM Plex Mono,monospace;font-size:.64rem;letter-spacing:.03em;text-transform:uppercase;color:var(--lost);border:1px solid var(--lost);border-radius:999px;padding:1px 7px}.overdue-tag,.table-wrap{background:var(--surface)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:3px}table.leads-table{width:100%;border-collapse:collapse;font-size:.86rem}table.leads-table th{text-align:left;font-family:IBM Plex Mono,monospace;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);background:var(--surface-2);padding:10px 14px;border-bottom:1px solid var(--line-strong);white-space:nowrap;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}table.leads-table th:hover{color:var(--ink)}table.leads-table th .sort-arrow{margin-left:4px;color:var(--accent-strong)}table.leads-table td{padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:middle}table.leads-table tbody tr{cursor:pointer}table.leads-table tbody tr:hover{background:var(--accent-soft)}table.leads-table .cell-company{font-weight:700}table.leads-table .cell-muted{color:var(--ink-muted);font-style:italic;font-size:.78rem}.stage-pill{display:inline-block;font-family:IBM Plex Mono,monospace;font-size:.68rem;letter-spacing:.02em;padding:3px 9px;border-radius:999px;white-space:nowrap}.stage-pill.stage-Nuevo{background:var(--surface-2);color:var(--ink-muted);border:1px solid var(--line-strong)}.stage-pill.stage-Contactado{background:var(--accent-soft);color:var(--accent-strong)}.stage-pill.stage-Propuesta-enviada{background:#fdf0d3;color:#8a6415}.stage-pill.stage-Ganado{background:#dff3e4;color:#1e7a3d}.stage-pill.stage-Perdido{background:var(--lost-soft);color:var(--lost)}.table-empty{padding:40px 14px;text-align:center;color:var(--ink-muted);font-size:.86rem}.overlay{position:fixed;inset:0;background:rgba(11,36,48,.45);display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto;z-index:10}.modal{background:var(--surface);border-radius:6px;width:100%;max-width:480px;padding:26px 26px 22px;box-shadow:var(--shadow)}.modal h2{font-size:1.25rem;margin-bottom:4px}.modal .modal-sub{color:var(--ink-muted);font-size:.82rem;margin-bottom:18px}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:13px}.field label{font-family:IBM Plex Mono,monospace;font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-muted)}.field-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}textarea{resize:vertical;min-height:56px;font-family:Figtree,sans-serif}.modal-actions{display:flex;justify-content:space-between;align-items:center;margin-top:18px;gap:10px}.danger-link{background:none;border:none;color:var(--lost);font-size:.82rem;cursor:pointer;padding:6px 2px}.danger-link:hover{text-decoration:underline}.modal-actions .right{display:flex;gap:8px}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--bg);font-size:.84rem;padding:10px 18px;border-radius:999px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .25s ease;z-index:20}.toast.show{opacity:1}.status-banner{font-size:.8rem;color:var(--ink-muted);background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:9px 14px;margin-bottom:18px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.settings-card{background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:22px}.settings-card-wide{grid-column:1/-1}.settings-card h2{font-size:1.1rem;margin-bottom:6px;display:flex;align-items:center;gap:8px}.settings-card h2 svg{color:var(--accent-strong);flex:none}.google-dot{width:12px;height:12px;border-radius:50%;background:conic-gradient(#4285f4 0deg 90deg,#ea4335 90deg 180deg,#fbbc05 180deg 270deg,#34a853 270deg 1turn);flex:none}.google-status{display:flex;align-items:center;gap:8px;font-size:.88rem;background:var(--surface-2);border:1px solid var(--line);border-radius:3px;padding:12px 14px}.google-status-dot{width:8px;height:8px;border-radius:50%;background:#1e7a3d;flex:none}.google-status-dot-off{background:var(--ink-muted)}.google-status-on{border-color:#b7ddc0}.google-activity{background:var(--surface-2);border:1px solid var(--line);border-radius:3px;padding:12px 14px;margin-bottom:13px;display:flex;flex-direction:column;gap:8px}.google-activity-head{display:flex;align-items:center;gap:7px;font-size:.8rem;font-weight:700}.activity-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.activity-list li{display:flex;justify-content:space-between;gap:10px;font-size:.8rem;padding:5px 0;border-bottom:1px solid var(--line)}.activity-subject{color:var(--ink);font-weight:500;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-subject:hover{color:var(--accent-strong)}.activity-meta{color:var(--ink-muted);font-size:.74rem;white-space:nowrap;flex:none}.compose-box,.google-activity-actions{display:flex;gap:8px}.compose-box{flex-direction:column;background:var(--surface);border:1px solid var(--line-strong);border-radius:3px;padding:10px}.compose-box textarea{min-height:90px}.settings-hint{color:var(--ink-muted);font-size:.82rem;margin:0 0 16px;max-width:60ch}.settings-list{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:1px}.settings-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border-bottom:1px solid var(--line);font-size:.88rem}.settings-empty{color:var(--ink-muted);font-style:italic;font-size:.84rem}.settings-field-type{font-size:.68rem;color:var(--accent-strong);background:var(--accent-soft);padding:1px 6px;border-radius:999px;margin-left:6px}.settings-field-options{color:var(--ink-muted);font-size:.8rem}.settings-list-actions{display:flex;gap:4px;flex:none}.icon-btn{background:transparent;border:1px solid var(--line-strong);border-radius:3px;width:26px;height:26px;cursor:pointer;font-size:.8rem;color:var(--ink-muted);display:inline-flex;align-items:center;justify-content:center}.icon-btn:hover{color:var(--ink);border-color:var(--ink)}.icon-btn:disabled{opacity:.35;cursor:default}.icon-btn.danger:hover{color:var(--lost);border-color:var(--lost)}.settings-add-row{display:flex;gap:8px}.settings-add-row input{flex:1 1}.settings-add-row-field{flex-wrap:wrap}.settings-add-row-field input{flex:1 1 220px}.settings-add-row-field select{flex:0 0 auto}@media (max-width:860px){.settings-grid{grid-template-columns:1fr}}@media (max-width:1080px){.kpis{grid-template-columns:repeat(3,1fr)}}@media (max-width:720px){.kpis{grid-template-columns:1fr 1fr}.field-row{grid-template-columns:1fr}}