:root{--bg:#f4f6f8;--panel:#fff;--ink:#17202a;--muted:#687386;--line:#e4e8ed;--navy:#10233d;--navy2:#173557;--gold:#d6a84d;--blue:#2563eb;--green:#169c5b;--red:#d64545;--amber:#c98213;--shadow:0 10px 30px rgba(16,35,61,.08)}*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:var(--bg)}body{margin:0;background:var(--bg)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--navy),#0a1728);color:#eef4fb;padding:22px 16px;display:flex;flex-direction:column;z-index:30}.brand{display:flex;gap:12px;align-items:center;padding:0 8px 22px;border-bottom:1px solid rgba(255,255,255,.1)}.brand span:last-child{display:flex;flex-direction:column}.brand b{letter-spacing:.09em;font-size:14px}.brand small{color:#9fb2c9;margin-top:2px}.brand-mark{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,var(--gold),#b7791f);display:grid;place-items:center;color:#fff;font-weight:900;font-size:27px;box-shadow:0 8px 22px rgba(214,168,77,.28)}.brand-mark.small{width:40px;height:40px;border-radius:12px;font-size:19px}.sidebar nav{display:flex;flex-direction:column;gap:5px;padding-top:18px}.sidebar nav a{display:flex;gap:11px;align-items:center;padding:11px 12px;border-radius:10px;color:#cdd8e6;font-size:14px}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.09);color:#fff}.sidebar nav a.active{box-shadow:inset 3px 0 0 var(--gold)}.sidebar-foot{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding-top:16px}.user-chip{display:flex;align-items:center;gap:10px}.avatar{width:36px;height:36px;border-radius:50%;background:#2c4d72;display:grid;place-items:center;font-weight:800}.user-chip div:last-child{display:flex;flex-direction:column;min-width:0}.user-chip b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-chip small{color:#9fb2c9;font-size:11px}.logout{display:block;color:#aebdd0;font-size:12px;margin:12px 0 0 46px}.main{min-width:0}.topbar{position:sticky;top:0;z-index:20;background:rgba(244,246,248,.95);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:space-between;padding:18px 28px;border-bottom:1px solid var(--line)}.topbar h1{font-size:22px;margin:2px 0 0}.crumb{color:var(--muted);font-size:12px}.top-actions{display:flex;gap:8px}.content{padding:28px;max-width:1800px;margin:0 auto}.mobile-menu{display:none}.btn{border:1px solid var(--line);background:#fff;padding:9px 13px;border-radius:10px;font-weight:700;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(0,0,0,.06)}.btn.primary{background:var(--navy);border-color:var(--navy);color:#fff}.btn.gold{background:var(--gold);border-color:var(--gold);color:#17202a}.btn.ghost{background:transparent}.btn.danger{color:#b42318;border-color:#f3c4c4;background:#fff8f7}.btn.small{padding:6px 9px;font-size:12px}.btn.icon{width:38px;height:38px;padding:0}.grid{display:grid;gap:18px}.grid.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.two{grid-template-columns:1.25fr .75fr}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:18px}.card.flush{padding:0;overflow:hidden}.card h2,.card h3{margin:0}.card-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:14px}.card-head p{margin:4px 0 0}.kpi{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;min-height:128px}.kpi .label{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:700}.kpi .value{font-size:29px;font-weight:900;letter-spacing:-.04em;margin-top:10px}.kpi .sub{color:var(--muted);font-size:12px;margin-top:5px}.kpi .trend{margin-top:10px;font-size:11px;font-weight:700}.muted{color:var(--muted)}.tiny{font-size:11px}.eyebrow{font-size:11px;letter-spacing:.14em;color:#8a6c2d;font-weight:800}.section-title{font-size:17px}.alert{padding:11px 13px;border-radius:11px;margin-bottom:14px;border:1px solid}.alert.success{background:#effaf4;border-color:#bfe8d0;color:#11663c}.alert.danger{background:#fff1f0;border-color:#f6c7c4;color:#9d241d}.alert.warning{background:#fff8e8;border-color:#f3dca5;color:#7a5512}.alert.info{background:#eff6ff;border-color:#bfd6fb;color:#1d4f91}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.toolbar .spacer{flex:1}.search{min-width:240px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field-grid .full{grid-column:1/-1}label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#425167}input,select,textarea{width:100%;border:1px solid #cfd6df;border-radius:10px;background:#fff;color:var(--ink);padding:10px 11px;outline:none}textarea{min-height:110px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#7797bd;box-shadow:0 0 0 3px rgba(37,99,235,.08)}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:950px}.table th{position:sticky;top:0;background:#f8fafc;color:#657286;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;padding:11px 12px;border-bottom:1px solid var(--line);z-index:2}.table td{padding:12px;border-bottom:1px solid #edf0f3;vertical-align:top;font-size:13px}.table tr:hover td{background:#fbfcfe}.title-cell{max-width:380px;font-weight:800}.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:#5f6d7e}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 8px;background:#eef2f7;font-size:11px;font-weight:800;white-space:nowrap}.dot{width:8px;height:8px;border-radius:50%;background:var(--pill,#64748b)}.amount{font-weight:800;white-space:nowrap}.empty{padding:30px;text-align:center;color:var(--muted)}.priority-list{display:flex;flex-direction:column}.priority-row{display:grid;grid-template-columns:minmax(0,1fr) 120px 130px;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #edf0f3}.priority-row:last-child{border-bottom:0}.priority-row b{display:block}.priority-row small{color:var(--muted)}.quality-list{display:grid;gap:10px}.quality-item{display:flex;justify-content:space-between;gap:14px;padding:10px 12px;background:#f8fafc;border-radius:10px}.funnel{display:grid;gap:10px}.funnel-row{display:grid;grid-template-columns:150px 1fr 70px;gap:10px;align-items:center;font-size:12px}.bar{height:10px;background:#edf1f5;border-radius:999px;overflow:hidden}.bar span{display:block;height:100%;border-radius:999px;background:var(--bar,var(--blue))}.kanban-toolbar{position:sticky;top:80px;z-index:12;display:flex;align-items:center;gap:8px;background:var(--bg);padding:7px 0 11px}.kanban-toolbar .hint{color:var(--muted);font-size:12px}.kanban-wrap{overflow-x:auto;overflow-y:hidden;padding-bottom:18px;scroll-snap-type:x proximity;scroll-behavior:smooth;cursor:grab}.kanban-wrap.dragscroll{cursor:grabbing}.kanban{display:flex;gap:14px;min-width:max-content}.kanban-col{width:320px;background:#eef2f6;border:1px solid #dde3ea;border-radius:15px;padding:10px;scroll-snap-align:start;min-height:500px}.kanban-col.over{outline:2px solid #7894b8}.kanban-head{display:flex;align-items:center;justify-content:space-between;padding:6px 5px 10px}.kanban-head b{font-size:13px}.kanban-head .count{background:#fff;border:1px solid var(--line);padding:3px 7px;border-radius:999px;font-size:11px}.kanban-cards{display:grid;gap:9px;min-height:420px}.kanban-card{background:#fff;border:1px solid #e1e6eb;border-radius:12px;padding:12px;box-shadow:0 5px 14px rgba(15,23,42,.05);cursor:grab}.kanban-card:active{cursor:grabbing}.kanban-card h4{margin:0 0 8px;font-size:13px;line-height:1.35}.kanban-meta{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:11px}.kanban-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:9px}.tag{font-size:10px;padding:4px 6px;border-radius:7px;background:#f1f5f9}.missing{color:#b45309;background:#fff7ed}.login-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 10%,#1d3a5d 0,#10233d 34%,#08111d 100%)}.login-card{width:min(430px,100%);background:#fff;padding:30px;border-radius:20px;box-shadow:0 25px 70px rgba(0,0,0,.28)}.login-card.wide{width:min(560px,100%)}.login-card h1{margin:13px 0 4px}.stack{display:grid;gap:13px;margin-top:20px}.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.metric-table{display:grid;gap:9px}.metric-row{display:grid;grid-template-columns:minmax(0,1fr) 100px 100px;gap:9px;align-items:center;font-size:12px}.mini-bars{display:grid;gap:12px}.mini-bar-row{display:grid;grid-template-columns:130px 1fr 90px;gap:10px;align-items:center;font-size:12px}.user-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.user-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px}.user-card .role{font-size:11px;color:#725b2b;background:#fbf1d8;display:inline-flex;padding:4px 7px;border-radius:999px;margin-top:7px}.role-help{display:grid;gap:9px}.role-help div{border:1px solid var(--line);border-radius:10px;padding:10px}.import-zone{border:2px dashed #c7d0da;border-radius:16px;padding:28px;text-align:center;background:#fbfcfd}.import-zone.drag{border-color:var(--blue);background:#eff6ff}.mapping-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.progress{height:10px;background:#e8edf2;border-radius:999px;overflow:hidden}.progress span{display:block;height:100%;background:var(--green);transition:width .2s}.email-status.sent{color:#0b7a45}.email-status.error{color:#b42318}.stat-inline{display:flex;gap:8px;flex-wrap:wrap}.stat-inline span{background:#f2f5f8;padding:6px 8px;border-radius:8px;font-size:11px}.divider{height:1px;background:var(--line);margin:18px 0}@media(max-width:1150px){.grid.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.two,.report-grid{grid-template-columns:1fr}.user-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-270px;width:248px;transition:left .2s}.sidebar.open{left:0;box-shadow:20px 0 60px rgba(0,0,0,.25)}.mobile-menu{display:inline-flex;border:0;background:#fff;border-radius:9px;padding:8px;margin-right:9px}.topbar{padding:14px 16px}.topbar>div:first-of-type{flex:1}.top-actions .ghost{display:none}.content{padding:18px 14px}.grid.kpis,.grid.three,.field-grid,.field-grid.three,.user-cards,.mapping-grid{grid-template-columns:1fr}.priority-row{grid-template-columns:1fr}.funnel-row{grid-template-columns:110px 1fr 50px}.kanban-toolbar{top:69px}.kanban-col{width:285px}}

/* ===== CRM V4 · filtros profesionales + ficha rápida de tablero ===== */
.filter-panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:16px;box-shadow:0 6px 18px rgba(16,35,61,.035)}
.filter-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid #edf0f3}
.filter-title-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:2px}.filter-title-row .section-title{margin:0}
.result-badge,.filter-count{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}
.result-badge{background:#eef4fb;color:#173557;border:1px solid #dae5f1}.filter-count{background:#fff7e8;color:#8a5a08;border:1px solid #f2dfb3}
.snapshot-note{display:flex;flex-direction:column;align-items:flex-end;color:#5d6a7c;font-size:11px;line-height:1.35}.snapshot-note b{color:#27364a;font-size:12px}
.filter-form{display:grid;grid-template-columns:minmax(280px,2fr) repeat(3,minmax(150px,1fr));gap:12px;align-items:end}
.filter-form label{min-width:0}.filter-search-field{grid-column:auto}.search-control{position:relative}.search-control .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:18px;color:#8a96a6;pointer-events:none}.search-control input{padding-left:38px}
.filter-form select,.filter-form input{height:42px;border-radius:10px;background:#fff}.filter-form select{padding-right:34px}
.filter-check{grid-column:1/3;display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important;border:1px solid #d9e0e8;border-radius:11px;padding:9px 11px;background:#f9fbfd;cursor:pointer;min-height:48px}.filter-check input{width:17px!important;height:17px!important;min-width:17px;margin:0;accent-color:var(--navy2)}.filter-check span{display:flex;flex-direction:column;gap:1px}.filter-check b{font-size:12px;color:#27364a}.filter-check small{font-size:10px;color:#778396;font-weight:500}
.filter-actions{grid-column:3/5;display:flex;justify-content:flex-end;gap:8px;align-items:center;flex-wrap:wrap}.opportunity-table-card{box-shadow:0 7px 22px rgba(16,35,61,.04)}

.kanban-toolbar .spacer{flex:1}.kanban-card{transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.kanban-card:hover{transform:translateY(-1px);box-shadow:0 9px 20px rgba(15,23,42,.09);border-color:#cdd8e4}.kanban-card:focus-visible{outline:3px solid rgba(37,99,235,.22);outline-offset:2px}.kanban-card h4{pointer-events:none}
body.modal-open{overflow:hidden}
.opp-modal{position:fixed;inset:0;z-index:100;display:none}.opp-modal.show{display:block}.opp-modal-backdrop{position:absolute;inset:0;background:rgba(4,13,25,.48);backdrop-filter:blur(2px);animation:modalFade .15s ease-out}.opp-modal-panel{position:absolute;top:4vh;right:3.5vw;width:min(820px,93vw);height:min(92vh,920px);background:#fff;border:1px solid rgba(255,255,255,.4);border-radius:18px;box-shadow:0 30px 90px rgba(4,13,25,.32);display:flex;flex-direction:column;overflow:hidden;animation:panelIn .18s ease-out}.opp-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:19px 22px 16px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#fbfcfe)}.opp-modal-head h2{margin:3px 0 5px;font-size:19px;line-height:1.25;max-width:680px}.modal-close{border:0;background:#eef2f6;color:#455468;width:34px;height:34px;border-radius:10px;font-size:24px;line-height:1;display:grid;place-items:center}.modal-close:hover{background:#e3e9ef;color:#17202a}.modal-loading{padding:42px 22px;text-align:center;color:var(--muted)}.opp-modal-form{min-height:0;flex:1;display:flex;flex-direction:column}.modal-body-scroll{padding:19px 22px;overflow-y:auto;min-height:0;flex:1}.modal-fields{gap:12px}.modal-fields textarea{min-height:100px}.opp-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:14px 22px;border-top:1px solid var(--line);background:#fbfcfd}.modal-save-status{margin-right:auto;font-size:11px;font-weight:700;color:#687386}.modal-save-status.success{color:#0b7a45}.modal-save-status.error{color:#b42318}
@keyframes modalFade{from{opacity:0}to{opacity:1}}@keyframes panelIn{from{opacity:0;transform:translateX(18px) scale(.99)}to{opacity:1;transform:none}}

@media(max-width:1200px){.filter-form{grid-template-columns:2fr repeat(2,1fr)}.filter-search-field{grid-column:1/2}.filter-check{grid-column:1/2}.filter-actions{grid-column:2/4}.snapshot-note{display:none}}
@media(max-width:900px){.filter-form{grid-template-columns:1fr 1fr}.filter-search-field{grid-column:1/-1}.filter-check{grid-column:1/-1}.filter-actions{grid-column:1/-1;justify-content:flex-start}.opp-modal-panel{top:2vh;right:2vw;width:96vw;height:96vh}.modal-fields{grid-template-columns:1fr}.modal-fields .full{grid-column:1}}
@media(max-width:600px){.filter-panel{padding:14px}.filter-panel-head{margin-bottom:12px}.filter-form{grid-template-columns:1fr}.filter-search-field,.filter-check,.filter-actions{grid-column:1}.filter-actions .btn{flex:1}.opp-modal-panel{inset:0;width:100vw;height:100vh;max-height:none;border-radius:0}.opp-modal-head{padding:15px 16px}.modal-body-scroll{padding:15px 16px}.opp-modal-actions{padding:12px 16px}.kanban-toolbar .hint{display:none}}

/* =========================================================
   CRM V5 · Oportunidades + Tablero inspirados en la V2
   ========================================================= */
.page-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:0 0 18px}.page-intro h2{margin:4px 0 4px;color:var(--navy);font-size:24px;letter-spacing:-.02em}.page-intro p{max-width:760px;margin:0;color:var(--muted);font-size:13px;line-height:1.5}.pipeline-toolbar,.board-toolbar-v2{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}.pipeline-stats,.board-kpis-v2{display:flex;flex-wrap:wrap;gap:9px}.summary-pill{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 13px;border:1px solid #dfe5eb;border-radius:999px;background:#fff;color:#667386;font-size:12px;box-shadow:0 2px 8px rgba(16,35,61,.025)}.summary-pill strong{color:var(--navy);font-size:13px}.filter-panel-v2{padding:16px;border-radius:14px;box-shadow:0 7px 22px rgba(16,35,61,.04)}.filter-panel-head-v2{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.filter-panel-head-v2 h3{margin:2px 0 0;color:var(--navy);font-size:16px}.filter-form-v2{display:grid;gap:12px}.filter-search-v2{display:grid;gap:6px}.filter-search-v2>span,.filter-grid-v2 label>span{color:#617085;font-size:11px;font-weight:800}.search-control-v2{display:flex;align-items:center;gap:9px;min-height:46px;padding:0 12px;border:1px solid #d7dee7;border-radius:10px;background:#fbfcfd;transition:border-color .15s ease,box-shadow .15s ease}.search-control-v2:focus-within{border-color:#7894b8;box-shadow:0 0 0 3px rgba(37,99,235,.07);background:#fff}.search-control-v2>span{color:#8794a5;font-size:18px}.search-control-v2 input{height:auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.search-control-v2 input:focus{box-shadow:none}.filter-grid-v2{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.filter-grid-v2 label{gap:6px}.filter-grid-v2 select{min-height:44px;border-color:#d7dee7;background:#fff}.filter-bottom-v2{display:flex;align-items:center;justify-content:space-between;gap:14px}.quality-toggle-v2{display:inline-flex;flex-direction:row;align-items:center;gap:8px;min-height:38px;padding:0 11px;border:1px solid #e0e6ed;border-radius:9px;background:#f9fbfc;color:#5f6e82;font-size:11px;font-weight:700;cursor:pointer}.quality-toggle-v2 input{width:16px;height:16px;margin:0;accent-color:var(--navy2)}.filter-actions-v2{display:flex;gap:8px;align-items:center}.opportunities-v2{border-radius:14px;box-shadow:0 7px 22px rgba(16,35,61,.04)}.opportunity-table-v2{min-width:1280px}.opportunity-table-v2 th{padding:12px 11px;font-size:10px;background:#f8fafb;color:#68768a}.opportunity-table-v2 td{padding:13px 11px;vertical-align:middle}.opportunity-table-v2 tbody tr{transition:background .12s ease}.opportunity-table-v2 tbody tr:hover td{background:#fbfcfe}.opportunity-title-button{display:block;width:100%;max-width:430px;padding:0;border:0;background:transparent;color:#0d1f36;text-align:left;font-size:12px;font-weight:900;line-height:1.35;cursor:pointer}.opportunity-title-button:hover{color:#174f73}.opportunity-table-v2 .code{margin-top:4px;font-size:9.5px;line-height:1.35}.opportunity-open-button{min-width:62px;border-radius:9px;background:#fff}.opportunity-table-v2 .amount{font-size:12px}.opportunity-table-v2 .pill{padding:5px 8px;background:#f0f3f7}.board-intro{align-items:center}.segmented-control-v2{display:inline-flex;padding:3px;border:1px solid #dce3ea;border-radius:9px;background:#fff}.segmented-control-v2 button{min-height:34px;padding:5px 13px;border:0;border-radius:6px;color:#687386;background:transparent;font-size:11px;font-weight:800}.segmented-control-v2 button.active{color:#fff;background:var(--navy)}.board-scroll-actions{display:flex;gap:6px}.kanban-wrap-v2{overflow-x:auto;overflow-y:hidden;padding:1px 0 16px;scroll-snap-type:x proximity;scroll-behavior:smooth;cursor:grab}.kanban-wrap-v2.dragscroll{cursor:grabbing}.kanban-v2{display:grid;grid-template-columns:repeat(5,minmax(250px,1fr));gap:13px;min-width:1280px}.kanban-col-v2{width:auto;min-height:560px;padding:11px;border:1px solid #dde4ea;border-radius:14px;background:#f3f6f8;scroll-snap-align:start}.kanban-col-v2.over{outline:2px solid #6d8fb2;outline-offset:1px}.kanban-head-v2{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:4px 2px 10px;margin-bottom:1px;border-bottom:1px solid #e5eaef}.kanban-head-v2>div{display:grid;gap:2px}.kanban-head-v2 strong{color:var(--navy);font-size:12px}.kanban-head-v2 small{color:#7b8797;font-size:10px}.kanban-head-v2 .count{display:grid;min-width:28px;height:28px;place-items:center;padding:0;border:1px solid #dce3ea;border-radius:999px;background:#fff;color:var(--navy);font-size:10px;font-weight:900}.kanban-col-v2 .kanban-cards{display:grid;gap:9px;min-height:470px;padding-top:9px}.kanban-card-v2{display:grid;gap:8px;padding:13px;border:1px solid #dfe6eb;border-left:3px solid #226b83;border-radius:10px;background:#fff;box-shadow:0 3px 10px rgba(7,25,33,.04);cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.kanban-card-v2:hover{transform:translateY(-2px);border-color:#cbd9e1;box-shadow:0 10px 22px rgba(7,25,33,.09)}.kanban-card-v2:active{cursor:grabbing}.kanban-card-v2 h4{display:-webkit-box;overflow:hidden;margin:0;color:#142234;font-size:12px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:3}.kanban-card-v2 .card-code{display:block;color:#7a8797;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;line-height:1.35}.card-meta-v2{display:grid;grid-template-columns:1fr auto;gap:5px 9px;padding-top:9px;border-top:1px solid #edf1f4}.card-meta-v2 span{color:#7a8797;font-size:9.5px}.card-meta-v2 strong{color:var(--navy);font-size:10px;text-align:right}.card-alert-v2{padding:7px 8px;border-radius:7px;background:#fff0d9;color:#8f601c;font-size:9.5px;font-weight:800}.board-last-column[hidden]{display:none!important}

/* Ficha lateral: mismo comportamiento de la V2, sin abandonar tablero/listado */
body.modal-open{overflow:hidden}.opp-modal{position:fixed;inset:0;z-index:100;display:none}.opp-modal.show{display:block}.opp-modal-backdrop{position:absolute;inset:0;background:rgba(7,25,33,.45);backdrop-filter:blur(2px);animation:modalFade .15s ease-out}.opp-modal-panel{position:absolute;inset:0 0 0 auto;width:min(620px,100vw);height:100vh;border:0;border-left:1px solid #dfe5eb;border-radius:0;background:#fff;box-shadow:-22px 0 60px rgba(7,25,33,.20);display:flex;flex-direction:column;overflow:hidden;animation:drawerIn .2s ease-out}.opp-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;min-height:78px;padding:16px 20px;border-bottom:1px solid #e2e7ec;background:rgba(255,255,255,.97);backdrop-filter:blur(14px)}.opp-modal-head h2{margin:3px 0 4px;color:var(--navy);font-size:18px;line-height:1.3}.drawer-code{color:#687386;font-size:11px;font-weight:700}.modal-close{border:0;background:#eef2f5;color:#455468;width:34px;height:34px;border-radius:9px;font-size:23px;line-height:1;display:grid;place-items:center}.modal-close:hover{background:#e2e8ed;color:#17202a}.modal-loading{padding:44px 20px;text-align:center;color:var(--muted)}.opp-modal-form{min-height:0;flex:1;display:flex;flex-direction:column}.modal-body-scroll{padding:0 20px 30px;overflow-y:auto;min-height:0;flex:1}.drawer-section{padding:20px 0;border-top:1px solid #e5eaef}.drawer-section-first{border-top:0}.drawer-section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.drawer-section-title h3{margin:3px 0 0;color:var(--navy);font-size:13px}.modal-fields{gap:11px}.modal-fields label{font-size:10.5px}.modal-fields input,.modal-fields select,.modal-fields textarea{min-height:40px;border-color:#d6dde5;border-radius:9px;font-size:12px}.modal-fields textarea{min-height:100px}.opp-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:13px 20px;border-top:1px solid #e2e7ec;background:#fbfcfd}.modal-save-status{margin-right:auto;font-size:10.5px;font-weight:800;color:#687386}.modal-save-status.success{color:#0b7a45}.modal-save-status.error{color:#b42318}@keyframes drawerIn{from{opacity:.7;transform:translateX(32px)}to{opacity:1;transform:none}}

@media(max-width:1150px){.filter-grid-v2{grid-template-columns:1fr 1fr}.filter-grid-v2 label:last-child{grid-column:1/-1}.pipeline-toolbar,.board-toolbar-v2{align-items:flex-start}.kanban-v2{grid-template-columns:repeat(5,280px);min-width:max-content}}
@media(max-width:800px){.page-intro{flex-direction:column;gap:12px}.pipeline-toolbar,.board-toolbar-v2{flex-direction:column;align-items:stretch}.pipeline-stats,.board-kpis-v2{width:100%}.filter-grid-v2{grid-template-columns:1fr}.filter-grid-v2 label:last-child{grid-column:auto}.filter-bottom-v2{align-items:stretch;flex-direction:column}.filter-actions-v2{justify-content:flex-end}.board-intro{align-items:flex-start}.opp-modal-panel{width:100vw}.modal-fields{grid-template-columns:1fr}.modal-fields .full{grid-column:1}.kanban-v2{grid-template-columns:repeat(5,270px)}}
@media(max-width:520px){.content{padding:16px 12px}.summary-pill{flex:1;justify-content:center}.filter-actions-v2{display:grid;grid-template-columns:1fr 1fr}.filter-actions-v2 .btn{width:100%}.segmented-control-v2{width:100%}.segmented-control-v2 button{flex:1}.board-scroll-actions{display:none}.opp-modal-head{padding:14px 15px}.modal-body-scroll{padding:0 15px 24px}.opp-modal-actions{padding:11px 15px}.opportunity-table-v2{min-width:1120px}}

/* V6 · Actividades restauradas y visibles desde el pipeline */
.activities-layout-v6{align-items:start}.activities-table-v6{min-width:920px}.activity-opportunity-link{max-width:390px;padding:0;border:0;background:transparent;color:var(--navy);font-weight:800;text-align:left;line-height:1.35}.activity-opportunity-link:hover{color:#174f73;text-decoration:underline}.activity-overdue{background:#feeceb!important;color:#b42318!important}.activities-table-v6 .title-cell{min-width:220px}
@media(max-width:900px){.activities-layout-v6{grid-template-columns:1fr}.activities-layout-v6>aside{order:-1}}
