:root{
  --bg:#f4f6f5;--surface:#ffffff;--surface-2:#f8faf9;--ink:#17212b;--muted:#66737f;
  --line:#dfe5e3;--line-2:#edf1ef;--brand:#14313a;--brand-2:#204b55;--teal:#168a80;
  --teal-soft:#e5f5f2;--blue:#3268a8;--blue-soft:#eaf1fa;--orange:#c96a29;--orange-soft:#fff1e5;
  --green:#13795b;--green-soft:#e8f6f0;--red:#b54136;--red-soft:#faece9;--amber:#a76a12;--amber-soft:#fff5de;
  --purple:#6750a4;--purple-soft:#f1edfa;--radius:12px;--radius-sm:8px;
  --shadow:0 1px 2px rgba(15,30,36,.04),0 10px 28px rgba(15,30,36,.045);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:var(--bg);font-size:14px;line-height:1.45}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}.app-shell{min-height:100vh}.app-header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);box-shadow:0 2px 16px rgba(20,49,58,.04);backdrop-filter:blur(14px)}
.header-main{height:66px;display:flex;align-items:center;gap:18px;max-width:1800px;margin:0 auto;padding:0 28px}.brand{display:flex;align-items:center;gap:10px;min-width:max-content}.brand-mark{width:37px;height:37px;border-radius:10px;background:var(--brand);display:flex;align-items:flex-end;justify-content:center;gap:3px;padding:8px}.brand-mark i{display:block;width:4px;border-radius:3px;background:#fff}.brand-mark i:nth-child(1){height:10px;opacity:.68}.brand-mark i:nth-child(2){height:18px}.brand-mark i:nth-child(3){height:14px;opacity:.82}.brand-mark.large{width:48px;height:48px;padding:10px}.brand-mark.large i{width:5px}.brand-copy strong{display:block;font-size:16px;letter-spacing:.13em}.brand-copy small{display:block;font-size:10px;color:var(--muted);margin-top:-1px}.environment-pill{font-size:10px;font-weight:700;color:#476168;background:#edf5f3;border:1px solid #d4e7e2;padding:7px 10px;border-radius:999px;white-space:nowrap}.environment-pill span{display:inline-block;width:6px;height:6px;background:#17a673;border-radius:50%;margin-right:6px}.global-search{height:38px;flex:1;max-width:560px;margin-left:auto;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px;background:#f8faf9;padding:0 10px}.global-search input{border:0;background:transparent;outline:0;width:100%;font-size:12px;color:var(--ink)}.global-search kbd{font-size:9px;border:1px solid #d7deda;background:white;color:#78848e;padding:2px 5px;border-radius:4px}.search-icon{font-size:18px;color:#84919a}.header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.quick-action{font-size:11px;font-weight:700;color:#496069;padding:8px 9px;border-radius:7px}.quick-action:hover{background:#f1f5f3;color:var(--brand)}.user-menu{position:relative}.user-trigger{border:0;background:transparent;display:flex;align-items:center;gap:9px;padding:5px 7px;border-radius:9px;cursor:pointer;text-align:left}.user-trigger:hover{background:#f2f5f4}.user-avatar{width:32px;height:32px;border-radius:9px;background:var(--brand);color:white;display:grid;place-items:center;font-weight:800;font-size:12px}.user-copy strong{display:block;font-size:11.5px}.user-copy small{display:block;font-size:9.5px;color:var(--muted);text-transform:capitalize}.chevron{color:#84919a}.dropdown-menu{display:none;position:absolute;right:0;top:46px;width:200px;background:white;border:1px solid var(--line);border-radius:10px;box-shadow:0 20px 55px rgba(16,36,42,.14);padding:6px}.user-menu.open .dropdown-menu{display:block}.dropdown-menu a,.dropdown-menu button{display:block;border:0;background:transparent;width:100%;padding:9px 10px;border-radius:6px;text-align:left;font-size:12px;cursor:pointer}.dropdown-menu a:hover,.dropdown-menu button:hover{background:#f3f6f5}
.module-bar{height:46px;display:flex;align-items:stretch;gap:2px;max-width:1800px;margin:0 auto;padding:0 28px;overflow-x:auto;scrollbar-width:none}.module-bar::-webkit-scrollbar{display:none}.module-link{display:flex;align-items:center;gap:7px;padding:0 16px;border-bottom:3px solid transparent;color:#53636d;font-size:12px;font-weight:720;white-space:nowrap}.module-link span{font-size:8px;color:#9aa5aa;letter-spacing:.08em}.module-link:hover{background:#f7f9f8;color:var(--brand)}.module-link.active{color:var(--brand);border-bottom-color:var(--teal);background:#f5f9f8}.module-link.active span{color:var(--teal)}.subnav-bar{height:42px;display:flex;align-items:center;gap:7px;max-width:1800px;margin:0 auto;padding:0 28px;background:#f8faf9;border-top:1px solid var(--line-2);overflow-x:auto;scrollbar-width:none}.subnav-bar a{padding:7px 11px;border-radius:7px;font-size:11px;color:#65737c;white-space:nowrap}.subnav-bar a:hover{background:white;color:var(--brand)}.subnav-bar a.active{background:white;color:var(--brand);font-weight:750;box-shadow:0 1px 2px rgba(16,36,42,.08)}
.main-content{min-width:0}.content{max-width:1740px;margin:0 auto;padding:28px 30px 70px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.page-header h1{font-size:28px;line-height:1.1;letter-spacing:-.035em;margin:3px 0 7px}.page-header p{margin:0;color:var(--muted);max-width:780px;font-size:13px}.eyebrow{display:block;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:#6c7b84;font-weight:850}.eyebrow.light{color:#b8d1d5}.page-actions,.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.breadcrumbs{font-size:11px;color:var(--muted);margin-bottom:8px}.breadcrumbs a{color:var(--teal);font-weight:700}
.hero-strip{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:16px;margin-bottom:18px}.hero-card{background:var(--brand);color:white;border-radius:15px;padding:24px 26px;position:relative;overflow:hidden;min-height:170px}.hero-card:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;border:55px solid rgba(255,255,255,.045);right:-90px;top:-115px}.hero-card h2{font-size:27px;margin:4px 0 8px;letter-spacing:-.04em}.hero-card p{color:#c7d8dc;max-width:700px;margin:0}.hero-number{font-size:36px;font-weight:780;letter-spacing:-.05em;margin-top:20px}.hero-meta{display:flex;gap:18px;margin-top:12px;color:#c7d8dc;font-size:11px}.hero-side{background:white;border:1px solid var(--line);border-radius:15px;padding:19px 20px;box-shadow:var(--shadow)}.hero-side h3{margin:0 0 13px;font-size:13px}.focus-list{display:grid;gap:9px}.focus-item{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line-2)}.focus-item:last-child{border-bottom:0}.focus-item span{color:var(--muted);font-size:11px}.focus-item strong{font-size:15px}
.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:18px}.kpi-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.kpi-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-card{background:white;border:1px solid var(--line);border-radius:12px;padding:15px 16px;box-shadow:0 1px 1px rgba(15,30,36,.02);min-width:0}.kpi-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.kpi-label{font-size:9.5px;text-transform:uppercase;letter-spacing:.085em;color:#71808a;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-icon{width:28px;height:28px;border-radius:8px;background:#f0f5f3;color:#46616a;display:grid;place-items:center;font-size:8px;font-weight:850}.kpi-value{font-size:23px;line-height:1.15;font-weight:780;letter-spacing:-.035em;margin-top:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.kpi-value.small{font-size:19px}.kpi-sub{display:flex;justify-content:space-between;gap:7px;color:var(--muted);font-size:10px;margin-top:7px}.trend-up,.positive{color:var(--green);font-weight:750}.trend-down,.negative{color:var(--red);font-weight:750}.trend-flat{color:var(--muted);font-weight:750}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,.72fr);gap:16px;margin-bottom:16px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.span-2{grid-column:span 2}.panel{background:white;border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);margin-bottom:16px;min-width:0}.panel.flat{box-shadow:none}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;border-bottom:1px solid var(--line-2)}.panel-title h2,.panel-title h3,.panel-header h2,.panel-header h3{margin:0;font-size:13px}.panel-title p{margin:3px 0 0;color:var(--muted);font-size:10.5px}.panel-body{padding:17px}.panel-body.compact{padding:0}.panel-section{padding:17px;border-top:1px solid var(--line-2)}.panel-section:first-child{border-top:0}.chart-wrap{height:270px;position:relative}.chart-wrap.tall{height:340px}.chart-wrap.small{height:210px}.chart-wrap canvas{display:block;width:100%;height:100%}.legend{display:flex;gap:13px;flex-wrap:wrap;color:var(--muted);font-size:10px}.legend-item{display:flex;align-items:center;gap:5px}.legend-dot{width:8px;height:8px;border-radius:50%}
.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:720px}.table th{background:#f8faf9;color:#6f7d85;text-align:left;font-size:8.8px;text-transform:uppercase;letter-spacing:.075em;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:11px 12px;border-bottom:1px solid var(--line-2);vertical-align:middle;font-size:11.5px}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover td{background:#fbfdfc}.table .primary{font-weight:740}.table .secondary,.secondary{display:block;color:var(--muted);font-size:9.5px;margin-top:2px}.amount{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.numeric{font-variant-numeric:tabular-nums}.text-right{text-align:right}.text-center{text-align:center}.nowrap{white-space:nowrap}.text-muted,.muted{color:var(--muted)}.link-strong{font-weight:740;color:#185d66}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;border-bottom:1px solid var(--line-2);background:#fbfcfc}.filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-input,.filter-select{height:35px;border:1px solid #d8dfdc;background:white;border-radius:7px;padding:0 10px;font-size:11px;color:var(--ink)}.filter-input{min-width:220px}.table-clean{min-width:0}.table-clean th{background:transparent}
.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;background:#eef2f1;color:#526169;font-size:9.5px;font-weight:780;white-space:nowrap}.badge.green{background:var(--green-soft);color:var(--green)}.badge.red{background:var(--red-soft);color:var(--red)}.badge.amber{background:var(--amber-soft);color:var(--amber)}.badge.blue{background:var(--blue-soft);color:var(--blue)}.badge.purple{background:var(--purple-soft);color:var(--purple)}.badge.gray{background:#eef1f1;color:#58666d}.badge-dot:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:35px;border:1px solid transparent;border-radius:7px;padding:7px 12px;font-size:11px;font-weight:750;cursor:pointer;background:white;white-space:nowrap;transition:.15s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 5px 13px rgba(20,49,58,.08)}.btn-primary{background:var(--brand);color:white;border-color:var(--brand)}.btn-blue{background:var(--blue);color:white}.btn-secondary{border-color:#cfd9d5;color:#33484f}.btn-success{background:var(--green);color:white}.btn-danger{border-color:#e7b8b2;color:var(--red)}.btn-ghost{background:transparent;color:#55676f}.btn-sm{min-height:29px;padding:5px 9px;font-size:10px}.btn-lg{min-height:42px;padding:10px 16px;font-size:12px}.icon-button{border:0;background:transparent;cursor:pointer}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-group{min-width:0}.form-group.full{grid-column:1/-1}.form-group label,label{display:block;font-size:10px;font-weight:750;color:#58686f;margin-bottom:5px}.form-control{display:block;width:100%;min-height:38px;border:1px solid #d4ddda;border-radius:8px;background:white;padding:8px 10px;color:var(--ink);font-size:12px;outline:none}.form-control:focus{border-color:#63a9a1;box-shadow:0 0 0 3px rgba(22,138,128,.1)}textarea.form-control{min-height:90px;resize:vertical}.form-help{font-size:10px;color:var(--muted);margin-top:5px}.section-divider{height:1px;background:var(--line-2);margin:17px 0}.definition{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:9px 0;border-bottom:1px solid var(--line-2)}.definition:last-child{border-bottom:0}.definition dt{font-size:10px;color:var(--muted)}.definition dd{margin:0;font-size:11px;font-weight:700;text-align:right}.code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9px;background:#f2f5f4;padding:3px 5px;border-radius:4px;word-break:break-all}.callout{padding:12px 13px;background:#f3f8f7;border-left:3px solid var(--teal);border-radius:7px;color:#486169;font-size:11px}.empty{text-align:center;color:var(--muted);padding:24px;font-size:11px}
.alert{padding:12px 14px;border-radius:9px;border:1px solid var(--line);margin-bottom:16px;font-size:12px}.alert-success{background:var(--green-soft);border-color:#c9e9dc;color:#22664f}.alert-danger{background:var(--red-soft);border-color:#f0cbc6;color:#8d352c}.alert-warning{background:var(--amber-soft);border-color:#f2dfae;color:#7a5317}.alert ul{margin:7px 0 0;padding-left:18px}
.metric-split{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line-2)}.metric-split label{margin:0;color:var(--muted)}.metric-split strong{font-size:13px}.mini-progress{height:6px;background:#edf1ef;border-radius:999px;overflow:hidden}.mini-progress span{display:block;height:100%;background:var(--teal);border-radius:999px}.mini-progress.large{height:8px}.activity-list{display:grid}.activity-item{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line-2)}.activity-item:last-child{border-bottom:0}.activity-item strong{font-size:11.5px}.activity-item p{margin:2px 0 0;font-size:9.8px;color:var(--muted)}.activity-item time{font-size:10px;color:#5d6c73}.activity-mark{width:7px;height:7px;border-radius:50%;background:#9ba7a9}.activity-mark.high{background:var(--red)}.activity-mark.medium{background:var(--amber)}.activity-mark.good{background:var(--green)}
.workflow{display:flex;align-items:stretch;gap:6px;overflow-x:auto;padding-bottom:4px}.workflow-step{min-width:120px;flex:1;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fafcfb}.workflow-step strong{display:block;font-size:9.5px;text-transform:capitalize}.workflow-step small{font-size:8.5px;color:var(--muted)}.workflow-step.done{background:var(--green-soft);border-color:#cbe9df}.workflow-step.active{background:var(--blue-soft);border-color:#cbdcf1}.goal-card{border:1px solid var(--line);border-radius:9px;padding:12px;margin-bottom:10px}.goal-head{display:flex;justify-content:space-between;gap:10px}.goal-head strong{font-size:11.5px}.goal-head span{font-size:10px;color:var(--muted)}.inline-details summary{list-style:none}.inline-details summary::-webkit-details-marker{display:none}
/* Guided CRM and operational layouts */
.page-tabs{display:flex;gap:6px;overflow-x:auto;margin-bottom:16px;padding:5px;background:#e9eeec;border-radius:10px;width:max-content;max-width:100%}.page-tabs a,.page-tabs button{border:0;background:transparent;padding:8px 12px;border-radius:7px;font-size:11px;color:#5c6c73;white-space:nowrap;cursor:pointer}.page-tabs .active{background:white;color:var(--brand);font-weight:780;box-shadow:0 1px 3px rgba(18,45,52,.1)}.guided-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:16px}.action-center{display:grid;gap:9px}.action-card{display:flex;align-items:flex-start;gap:11px;border:1px solid var(--line);border-radius:10px;padding:12px;background:white}.action-card .number{width:25px;height:25px;border-radius:7px;background:var(--brand);color:white;display:grid;place-items:center;font-size:9px;font-weight:800;flex:none}.action-card strong{display:block;font-size:11.5px}.action-card p{margin:3px 0 0;font-size:9.8px;color:var(--muted)}.action-card .btn{margin-left:auto}.pipeline{display:grid;grid-template-columns:repeat(5,minmax(190px,1fr));gap:10px;overflow-x:auto;padding-bottom:8px}.pipeline-column{background:#f4f7f6;border:1px solid var(--line);border-radius:10px;min-height:260px}.pipeline-head{display:flex;justify-content:space-between;padding:11px 12px;border-bottom:1px solid var(--line);font-size:10px;font-weight:780}.pipeline-body{padding:8px}.lead-card{display:block;background:white;border:1px solid var(--line);border-radius:8px;padding:10px;margin-bottom:8px;box-shadow:0 1px 1px rgba(18,45,52,.03)}.lead-card strong{font-size:10.5px}.lead-card p{font-size:9px;color:var(--muted);margin:3px 0}.lead-card footer{display:flex;justify-content:space-between;font-size:8.8px;color:#63747b}.priority-lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.lane{border:1px solid var(--line);border-radius:11px;background:#f8faf9;min-height:250px}.lane-header{padding:13px 14px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.lane-header h3{font-size:11.5px;margin:0}.lane-header span{font-size:9px;color:var(--muted)}.lane-body{padding:9px}.work-card{background:white;border:1px solid var(--line);border-radius:9px;padding:11px;margin-bottom:9px}.work-card-head{display:flex;justify-content:space-between;gap:8px}.work-card strong{font-size:10.5px}.work-card p{font-size:9.3px;color:var(--muted);margin:5px 0}.work-card footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line-2);padding-top:8px;margin-top:8px;font-size:9px}.stepper{display:flex;gap:0;align-items:flex-start;overflow-x:auto;padding:4px 0 12px}.step{min-width:120px;position:relative;text-align:center;flex:1}.step:before{content:"";position:absolute;height:2px;background:#dfe5e3;top:13px;left:-50%;width:100%}.step:first-child:before{display:none}.step-dot{position:relative;z-index:1;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;margin:0 auto 7px;background:#e5eae8;color:#6c7a80;font-size:9px;font-weight:800}.step.done .step-dot{background:var(--green);color:white}.step.active .step-dot{background:var(--brand);color:white;box-shadow:0 0 0 4px rgba(20,49,58,.1)}.step.done:before,.step.active:before{background:#8cc7bc}.step strong{display:block;font-size:9.5px}.step small{font-size:8.5px;color:var(--muted)}
/* Portfolio statement inspired by the supplied client report */
.client-summary{display:grid;grid-template-columns:230px minmax(0,1fr);gap:16px}.client-identity{background:white;border:1px solid var(--line);border-radius:13px;padding:18px;box-shadow:var(--shadow);height:max-content;position:sticky;top:174px}.identity-dot{width:10px;height:10px;background:var(--teal);border-radius:50%;display:inline-block;margin-right:7px}.client-identity h2{font-size:20px;line-height:1.05;margin:7px 0}.client-identity .client-number{font-size:10px;color:var(--muted);margin-bottom:16px}.summary-stat{padding:10px 11px;border-radius:9px;background:#f1f4f3;margin-bottom:8px}.summary-stat label{margin:0;font-size:9px}.summary-stat strong{display:block;font-size:19px;letter-spacing:-.03em}.summary-stat small{font-size:8.8px;color:var(--muted)}.summary-main{min-width:0}.asset-list{display:grid;gap:7px}.asset-row{display:grid;grid-template-columns:minmax(220px,1fr) 110px 90px 90px 120px 110px;gap:10px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:10px 12px;background:white;font-size:10px}.asset-row strong{font-size:10.5px}.asset-row .tagline{font-size:8.8px;color:var(--muted)}.asset-row .asset-meta{font-size:8.8px;color:#46646b}.asset-head{background:transparent;border:0;color:var(--muted);text-transform:uppercase;font-size:8px;font-weight:800;padding-top:0;padding-bottom:4px}
/* Unit shares */
.unit-value{font-size:32px;font-weight:800;letter-spacing:-.05em}.formula-box{background:#102b33;color:white;border-radius:11px;padding:17px}.formula-box code{font-size:15px;color:#d9f1ed}.formula-box p{color:#b8d1d5;font-size:10px;margin:8px 0 0}.transaction-list{display:grid;gap:8px}.transaction-row{display:grid;grid-template-columns:90px 1fr 110px 110px 100px;gap:10px;padding:10px 0;border-bottom:1px solid var(--line-2);font-size:10.5px}.transaction-row:last-child{border-bottom:0}
/* Auth */
.auth-body{background:#e9eeec}.auth-layout{min-height:100vh;display:grid;grid-template-columns:minmax(420px,.95fr) minmax(420px,1.05fr)}.auth-visual{background:var(--brand);color:white;padding:42px 48px;display:flex;flex-direction:column}.auth-brand-large{display:flex;align-items:center;gap:11px}.auth-brand-large strong{display:block;font-size:17px;letter-spacing:.12em}.auth-brand-large small{display:block;color:#a9c1c5;font-size:10px}.auth-pitch{margin:auto 0;max-width:610px}.auth-pitch h1{font-size:48px;line-height:1.03;letter-spacing:-.055em;margin:10px 0 16px}.auth-pitch p{font-size:15px;color:#c3d5d8;max-width:570px}.auth-stats{display:flex;gap:32px}.auth-stats strong{display:block;font-size:23px}.auth-stats span{font-size:9.5px;color:#a9c1c5}.demo-disclaimer{font-size:9.5px;color:#8fafb4;margin-top:18px}.auth-panel{display:grid;place-items:center;padding:35px}.auth-card{width:min(420px,100%);background:white;border:1px solid var(--line);border-radius:14px;padding:30px;box-shadow:0 25px 70px rgba(20,49,58,.1)}.auth-card h1{font-size:25px;margin:0 0 7px}.auth-card>p{color:var(--muted);font-size:12px}.mobile-auth-brand{display:none;align-items:center;gap:9px;margin-bottom:25px}.mobile-auth-brand strong{font-size:13px}
.pagination{display:flex;gap:5px;padding:12px}.pagination a,.pagination span{padding:6px 9px;border:1px solid var(--line);border-radius:6px;font-size:10px;background:white}.pagination .active{background:var(--brand);color:white}
@media(max-width:1180px){.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-grid,.guided-grid{grid-template-columns:1fr}.grid-4{grid-template-columns:repeat(2,1fr)}.priority-lanes{grid-template-columns:1fr}.client-summary{grid-template-columns:1fr}.client-identity{position:static;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.client-identity h2,.client-identity .client-number{grid-column:1/-1}.summary-stat{margin:0}.asset-row{grid-template-columns:minmax(190px,1fr) repeat(3,90px)}.asset-row>:nth-child(5),.asset-row>:nth-child(6){display:none}}
@media(max-width:900px){.header-main{padding:0 15px}.environment-pill,.quick-action,.global-search kbd,.user-copy{display:none}.global-search{max-width:none}.module-bar,.subnav-bar{padding:0 14px}.content{padding:22px 16px 55px}.grid-2,.grid-3{grid-template-columns:1fr}.page-header{display:block}.page-actions{margin-top:12px}.kpi-grid,.kpi-grid.five,.kpi-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-layout{grid-template-columns:1fr}.auth-visual{display:none}.mobile-auth-brand{display:flex}.client-identity{grid-template-columns:repeat(2,1fr)}}
@media(max-width:580px){.brand-copy small{display:none}.environment-pill{display:none}.global-search{display:none}.header-main{justify-content:space-between}.header-actions{margin-left:0}.module-link{padding:0 12px}.content{padding:18px 12px 45px}.page-header h1{font-size:23px}.kpi-grid,.kpi-grid.five,.kpi-grid.four{grid-template-columns:1fr}.hero-strip{grid-template-columns:1fr}.hero-card{min-height:150px}.form-grid,.form-grid.three{grid-template-columns:1fr}.auth-panel{padding:18px}.auth-card{padding:23px}.client-identity{grid-template-columns:1fr}.asset-row{grid-template-columns:1fr 80px 80px}.asset-row>:nth-child(n+4){display:none}}
@media print{.app-header,.page-actions,.btn,.table-toolbar{display:none!important}.content{max-width:none;padding:0}.panel{box-shadow:none;break-inside:avoid}.app-body{background:white}.client-identity{position:static}}
.chart-tooltip{position:fixed;z-index:9999;pointer-events:none;background:#102b33;color:#fff;border-radius:8px;padding:9px 10px;box-shadow:0 10px 30px rgba(15,35,40,.22);font-size:10px;min-width:105px}.chart-tooltip strong,.chart-tooltip span{display:block}.chart-tooltip strong{font-size:10px;margin-bottom:4px}.chart-tooltip span{color:#c9dcdf;font-size:9px}.chart-wrap{position:relative;height:260px}.chart-wrap.tall{height:310px}.chart-wrap.small{height:210px}.chart-wrap canvas{display:block;width:100%;height:100%}
.report-summary{margin-bottom:18px}.report-assets{margin-top:18px}.report-disclaimer{margin:22px 0 0;padding:13px 15px;border:1px solid var(--line);border-radius:9px;background:#f8faf9;color:var(--muted);font-size:9.5px}.legend{display:flex;gap:12px;align-items:center}.legend-item{font-size:9px;color:var(--muted)}.legend-dot{display:inline-block;width:8px;height:3px;border-radius:4px;margin-right:5px;vertical-align:middle}.stat-list{display:grid}.stat-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line-2)}.stat-row:last-child{border-bottom:0}.stat-row strong,.stat-row small{display:block}.stat-row strong{font-size:10.5px}.stat-row small{font-size:8.8px;color:var(--muted)}.stat-value{font-size:11px;font-weight:750;text-align:right}.text-muted{color:var(--muted)}
@media print{body{font-size:10px}.report-summary{grid-template-columns:205px 1fr}.client-identity{position:static;padding:13px}.summary-stat{padding:7px}.summary-stat strong{font-size:14px}.chart-wrap.tall{height:235px}.report-assets{break-before:page}.report-disclaimer{font-size:8px}.content{padding:0 10px}.page-header{margin-bottom:12px}.page-header h1{font-size:23px}.panel{border-color:#cfd8d5}.table th,.table td{padding:6px 7px;font-size:8px}}


/* =========================================================
   PULSO GESTOR v2 · navegación tipo dock y experiencia guiada
   ========================================================= */
.gestor-v2{--topbar-h:64px;--context-h:70px;--dock-h:78px;background:#f2f5f4;padding-bottom:calc(var(--dock-h) + 24px)}
.gestor-v2 .main-content{min-width:0}.gestor-v2 .content{max-width:1680px;padding:26px 26px 36px}
.gestor-topbar{height:var(--topbar-h);position:sticky;top:0;z-index:110;display:flex;align-items:center;gap:18px;padding:0 24px;background:rgba(255,255,255,.97);border-top:4px solid #0e252c;border-bottom:1px solid #dfe6e3;box-shadow:0 4px 20px rgba(14,37,44,.06);backdrop-filter:blur(18px)}
.gestor-brand{display:flex;align-items:center;gap:10px;min-width:190px}.gestor-brand>span:last-child strong{display:block;letter-spacing:.13em;font-size:15px}.gestor-brand>span:last-child small{display:block;color:#6f7c84;font-size:9.5px}.current-location{display:flex;flex-direction:column;min-width:150px;padding-left:17px;border-left:1px solid #e3e8e6}.current-location small{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:#7f8b91}.current-location strong{font-size:12.5px;color:#22323a}
.command-trigger{height:40px;max-width:650px;flex:1;margin:0 auto;border:1px solid #d9e1de;border-radius:11px;background:#f7f9f8;color:#738087;display:flex;align-items:center;gap:10px;padding:0 12px;cursor:pointer;text-align:left}.command-trigger:hover{border-color:#a9c7c1;background:#fff}.command-trigger span{flex:1;font-size:12px}.command-trigger kbd{font-size:9px;border:1px solid #d4dcda;background:#fff;border-radius:5px;padding:3px 6px}.topbar-actions{display:flex;align-items:center;gap:8px}.icon-button{width:38px;height:38px;border:1px solid #dde4e1;background:#fff;border-radius:10px;display:grid;place-items:center;cursor:pointer}.icon-button:hover{background:#eef5f3;color:#0f766e}
.context-switcher{position:sticky;top:var(--topbar-h);z-index:95;display:flex;align-items:stretch;gap:8px;padding:8px 24px;background:rgba(247,250,249,.98);border-bottom:1px solid #dae3df;overflow-x:auto;box-shadow:0 4px 15px rgba(20,49,58,.035)}.context-item{min-width:185px;display:flex;align-items:center;gap:10px;padding:8px 11px;border:1px solid transparent;border-radius:11px;color:#607079}.context-item:hover{background:#fff;border-color:#dbe5e1}.context-item.active{background:#14313a;color:#fff;border-color:#14313a;box-shadow:0 7px 18px rgba(20,49,58,.16)}.context-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#e8efed;color:#31525a}.context-item.active .context-icon{background:rgba(255,255,255,.13);color:#fff}.context-item strong{display:block;font-size:11.5px}.context-item small{display:block;font-size:8.8px;color:#849198;margin-top:2px}.context-item.active small{color:#c5d4d7}
.windows-dock{position:fixed;z-index:130;left:50%;bottom:14px;transform:translateX(-50%);height:66px;display:flex;align-items:center;gap:5px;padding:7px;background:rgba(20,35,41,.94);border:1px solid rgba(255,255,255,.15);border-radius:20px;box-shadow:0 20px 50px rgba(10,24,29,.28);backdrop-filter:blur(22px)}.dock-item,.dock-launcher{height:52px;min-width:58px;border:0;border-radius:13px;background:transparent;color:#c8d3d5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;padding:3px 9px;position:relative}.dock-item small,.dock-launcher small{font-size:8.5px}.dock-item:hover,.dock-launcher:hover{background:rgba(255,255,255,.1);color:#fff;transform:translateY(-2px)}.dock-item.active{background:#fff;color:#14313a;box-shadow:0 8px 20px rgba(0,0,0,.2)}.dock-item.active:after{content:"";position:absolute;bottom:-5px;width:18px;height:3px;border-radius:3px;background:#23b7a7}.dock-launcher{border-right:1px solid rgba(255,255,255,.13);border-radius:13px 4px 4px 13px;margin-right:2px}.launcher-grid{display:grid;grid-template-columns:repeat(2,6px);gap:3px}.launcher-grid i{width:6px;height:6px;border-radius:2px;background:currentColor}
.module-popover{position:fixed;z-index:125;left:50%;bottom:88px;transform:translateX(-50%);width:min(680px,calc(100vw - 28px));background:rgba(255,255,255,.98);border:1px solid #dbe3e0;border-radius:18px;box-shadow:0 28px 70px rgba(14,37,44,.25);padding:18px;backdrop-filter:blur(20px)}.module-popover[hidden]{display:none}.module-popover-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:14px}.module-popover-head small{font-size:8.5px;letter-spacing:.16em;color:#168a80;font-weight:800}.module-popover-head h2{margin:2px 0;font-size:23px}.module-popover-head p{margin:0;color:#6b7980;font-size:11px}.module-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.module-panel[hidden]{display:none}.module-panel>a{display:flex;align-items:center;gap:12px;border:1px solid #e1e7e5;border-radius:12px;padding:13px;background:#f8faf9}.module-panel>a:hover{background:#edf6f3;border-color:#b9d8d2}.module-panel>a>span{width:42px;height:42px;border-radius:11px;background:#e4efec;color:#176d67;display:grid;place-items:center}.module-panel>a div{flex:1}.module-panel>a strong{display:block;font-size:12px}.module-panel>a small{display:block;color:#728088;font-size:9.5px;margin-top:2px}.module-panel>a b{color:#7d8b91}.all-modules{grid-template-columns:repeat(3,minmax(0,1fr))}
.command-palette{position:fixed;inset:0;z-index:200}.command-palette[hidden]{display:none}.command-backdrop{position:absolute;inset:0;border:0;background:rgba(12,26,31,.56);backdrop-filter:blur(5px)}.command-box{position:relative;width:min(720px,calc(100vw - 26px));max-height:min(650px,80vh);margin:9vh auto 0;background:#fff;border-radius:17px;box-shadow:0 30px 90px rgba(0,0,0,.34);overflow:hidden}.command-input{height:62px;display:flex;align-items:center;gap:12px;padding:0 17px;border-bottom:1px solid #e1e7e4}.command-input input{flex:1;border:0;outline:0;font-size:16px;color:#17212b}.command-input kbd{font-size:9px;border:1px solid #d8e0dd;border-radius:5px;padding:3px 6px;color:#75838a}.command-hint{padding:9px 17px;background:#f6f9f8;color:#738087;font-size:9.5px}.command-results{max-height:520px;overflow:auto;padding:8px}.command-result{display:flex;align-items:center;gap:12px;padding:11px;border-radius:10px}.command-result:hover,.command-result.active{background:#eaf4f1}.command-result>span{width:37px;height:37px;border-radius:9px;background:#eef3f2;display:grid;place-items:center;color:#24545b}.command-result div{flex:1}.command-result strong{display:block;font-size:12px}.command-result small{display:block;color:#75838a;font-size:9.5px}.command-result b{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#168a80}.command-empty{padding:38px;text-align:center;color:#7c898f}
.tour-layer{position:fixed;inset:0;z-index:300}.tour-layer[hidden]{display:none}.tour-shade{position:absolute;inset:0;background:rgba(7,19,23,.7)}.tour-spotlight{position:fixed;border:3px solid #36d0be;border-radius:15px;box-shadow:0 0 0 9999px rgba(7,19,23,.7),0 0 0 8px rgba(54,208,190,.18);transition:.28s ease;pointer-events:none}.tour-card{position:fixed;width:min(390px,calc(100vw - 28px));background:#fff;border-radius:17px;padding:20px;box-shadow:0 30px 90px rgba(0,0,0,.4);transition:.28s ease}.tour-card small{font-size:8px;letter-spacing:.14em;color:#168a80;font-weight:850}.tour-card h2{font-size:23px;margin:5px 0 8px}.tour-card p{color:#63727a;margin:0 0 18px;font-size:12px}.tour-progress{height:4px;background:#e9efed;border-radius:4px;margin-bottom:14px;overflow:hidden}.tour-progress span{display:block;height:100%;background:#168a80;transition:.25s}.tour-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.tour-actions>div{display:flex;gap:7px}
.page-anchor-nav{display:flex;gap:7px;margin:-6px 0 16px;position:sticky;top:calc(var(--topbar-h) + var(--context-h) + 4px);z-index:70;padding:7px;background:rgba(242,245,244,.92);backdrop-filter:blur(10px);border-radius:11px;width:max-content;max-width:100%;overflow:auto}.page-anchor-nav a{padding:7px 10px;border-radius:8px;background:#fff;border:1px solid #dde5e2;color:#5b6b73;font-size:10px;font-weight:700}.page-anchor-nav a:hover{background:#14313a;color:#fff}
.client-workspace{display:grid;grid-template-columns:250px minmax(0,1fr);gap:17px;align-items:start}.sticky-client-card{position:sticky!important;top:calc(var(--topbar-h) + var(--context-h) + 18px)!important;max-height:calc(100vh - var(--topbar-h) - var(--context-h) - var(--dock-h) - 36px);overflow:auto;align-self:start;padding:16px!important}.identity-head{display:flex;gap:10px;align-items:center}.identity-avatar{width:42px;height:42px;border-radius:12px;background:#14313a;color:#fff;display:grid;place-items:center;font-size:13px;font-weight:800}.identity-head h2{margin:2px 0!important;font-size:17px!important}.sticky-metrics{display:grid;gap:7px}.sticky-client-card .summary-stat{padding:9px 10px;margin:0}.sticky-client-card .summary-stat strong{font-size:17px}.client-report-link{width:100%;margin-top:12px}.client-main{min-width:0;display:grid;gap:16px}.client-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:16px}.client-kpi-column{display:grid;gap:10px}.summary-highlight{background:#fff;border:1px solid #dde5e2;border-radius:12px;padding:15px;box-shadow:var(--shadow)}.summary-highlight>span{display:block;color:#6d7b82;font-size:9.5px}.summary-highlight>strong{display:block;font-size:24px;margin:4px 0;letter-spacing:-.04em}.summary-highlight>small{color:#829096;font-size:8.8px}.client-analysis-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.followup-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.weight-cell{position:relative;text-align:right;padding-bottom:5px}.weight-cell span{position:absolute;left:0;right:auto;bottom:0;height:3px;border-radius:3px;background:#168a80}.empty-state{text-align:center;padding:25px 12px;color:#7c898f}.empty-state strong{display:block;color:#42545c;font-size:12px}.empty-state p{font-size:9.5px;margin:5px 0}
.investment-map-card .panel-body{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:16px}.map-badge{font-size:9px;padding:6px 9px;border-radius:999px;background:#e9f5f2;color:#176f67;font-weight:800}.investment-map{position:relative;min-height:390px;border-radius:14px;overflow:hidden;background:radial-gradient(circle at 45% 40%,#eef6f4,#dce8e4);border:1px solid #d6e1dd}.world-silhouette{position:absolute;inset:5% 3%;width:94%;height:88%}.world-silhouette path{fill:#b9cac5;stroke:#f2f7f5;stroke-width:4}.map-point{position:absolute;transform:translate(-50%,-50%);width:var(--point-size);height:var(--point-size);border:0;border-radius:50%;background:rgba(17,142,129,.22);padding:0;cursor:pointer;box-shadow:0 0 0 0 rgba(22,138,128,.32);animation:mapPulse 2.4s infinite}.map-point span{position:absolute;inset:30%;border-radius:50%;background:#0f766e;border:2px solid #fff;box-shadow:0 2px 8px rgba(14,37,44,.35)}.map-point:hover,.map-point.active{z-index:5;background:rgba(201,106,41,.28);animation:none;transform:translate(-50%,-50%) scale(1.2)}.map-point:hover span,.map-point.active span{background:#c96a29}.investment-map-detail{position:absolute;left:14px;bottom:14px;min-width:250px;max-width:72%;background:rgba(20,49,58,.92);color:#fff;border-radius:11px;padding:11px 13px;box-shadow:0 10px 30px rgba(0,0,0,.2)}.investment-map-detail strong{display:block;font-size:12px}.investment-map-detail span{display:block;font-size:10px;color:#bfe8e2;margin-top:2px}.investment-map-detail small{display:block;font-size:8.5px;color:#d5dfe0;margin-top:4px}.map-country-list{display:grid;align-content:start;gap:7px}.map-country-list button{border:1px solid #dfe6e3;background:#fff;border-radius:10px;padding:10px;display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:9px;text-align:left;cursor:pointer}.map-country-list button:hover{background:#eef6f3;border-color:#b8d8d1}.map-country-list i{width:8px;height:8px;border-radius:50%;background:#168a80}.map-country-list strong{display:block;font-size:10.5px}.map-country-list small{display:block;color:#7b898f;font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-country-list b{font-size:10px;color:#176f67}@keyframes mapPulse{0%{box-shadow:0 0 0 0 rgba(22,138,128,.34)}70%{box-shadow:0 0 0 12px rgba(22,138,128,0)}100%{box-shadow:0 0 0 0 rgba(22,138,128,0)}}
.workflow-banner,.proposal-flow{display:flex;align-items:center;gap:11px;background:#14313a;color:#fff;border-radius:14px;padding:13px 16px;margin-bottom:17px;box-shadow:var(--shadow)}.workflow-banner>div,.proposal-flow>div{display:grid;grid-template-columns:30px 1fr;column-gap:9px;align-items:center;flex:1}.workflow-banner>div>span,.proposal-flow>div>span{grid-row:1/3;width:30px;height:30px;border-radius:9px;background:rgba(255,255,255,.1);display:grid;place-items:center;font-weight:800}.workflow-banner>div.active>span,.proposal-flow>div:first-child>span{background:#2cc2b0;color:#0c2f31}.workflow-banner strong,.proposal-flow strong{font-size:10.5px}.workflow-banner small,.proposal-flow small{font-size:8.4px;color:#b8cbce}.workflow-banner>i,.proposal-flow>i{color:#728e93;font-style:normal}.today-workspace{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:16px;margin-bottom:16px}.task-timeline{display:grid}.task-line{display:grid;grid-template-columns:55px 38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid #edf1ef}.task-line:last-child{border:0}.task-line time{font-weight:800;color:#31464e;text-align:center}.task-line time small{display:block;font-size:8px;color:#839097}.task-line.overdue time{color:#b54136}.task-type{width:36px;height:36px;border-radius:10px;background:#eaf4f1;color:#168a80;display:grid;place-items:center}.task-line strong{font-size:11px}.task-line p{font-size:9px;color:#748188;margin:2px 0}.opportunity-stack{display:grid;gap:8px}.opportunity-card{border:1px solid #e0e7e4;border-left:4px solid #2b8f84;border-radius:10px;padding:11px;background:#fff}.opportunity-card.urgent{border-left-color:#c55346;background:#fffaf8}.opportunity-card header{display:flex;justify-content:space-between;color:#78868d;font-size:8.5px}.opportunity-card>strong{display:block;font-size:11px;margin-top:5px}.opportunity-card p{font-size:9px;color:#6f7d84}.clean-pipeline{min-width:1180px}.clean-pipeline .pipeline-column{min-width:190px}.lead-metrics{display:flex;justify-content:space-between;font-size:9px;font-weight:800;color:#1b746c;margin:8px 0}.lead-card form{display:grid;grid-template-columns:1fr auto;gap:5px}.pipeline-empty{font-size:9px;color:#8a969b;text-align:center;padding:18px}
.app-dialog{width:min(580px,calc(100vw - 28px));border:0;border-radius:17px;padding:0;box-shadow:0 30px 90px rgba(0,0,0,.35)}.app-dialog.wide{width:min(760px,calc(100vw - 28px))}.app-dialog::backdrop{background:rgba(11,26,31,.58);backdrop-filter:blur(5px)}.app-dialog form>header{display:flex;justify-content:space-between;gap:20px;padding:20px;border-bottom:1px solid #e2e8e5}.app-dialog header h2{margin:3px 0;font-size:22px}.app-dialog header p{margin:0;color:#6f7d84;font-size:10px}.app-dialog header>button{border:0;background:#eef2f1;width:32px;height:32px;border-radius:9px;font-size:21px;cursor:pointer}.dialog-body{padding:20px}.app-dialog footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;background:#f6f9f8;border-top:1px solid #e2e8e5}
.proposal-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(270px,1.2fr);gap:12px;margin-bottom:16px}.proposal-explainer{background:#fff8ed;border:1px solid #f0d6ad;border-radius:12px;padding:15px}.proposal-explainer strong{font-size:12px;color:#8b5714}.proposal-explainer p{font-size:9.5px;color:#725f43}.proposal-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.proposal-card{background:#fff;border:1px solid #dde5e2;border-radius:13px;padding:16px;box-shadow:var(--shadow)}.proposal-card header{display:flex;justify-content:space-between;align-items:center}.proposal-card header>div{display:flex;gap:8px;align-items:center}.proposal-card header small{font-size:8.5px;color:#7f8c92}.proposal-risk{font-size:9px;color:#597078}.proposal-card h2{font-size:16px;margin:13px 0 5px}.proposal-card>p{font-size:10px;color:#6c7a81;min-height:42px}.proposal-meta{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px;margin:13px 0}.proposal-meta span{padding:9px;background:#f5f8f7;border-radius:8px}.proposal-meta small{display:block;font-size:7.5px;text-transform:uppercase;color:#89959a}.proposal-meta strong{display:block;font-size:9.5px;margin-top:3px}.proposal-card footer{display:flex;align-items:center;gap:7px;border-top:1px solid #edf1ef;padding-top:12px}
.internal-only-banner{display:flex;gap:11px;align-items:center;background:#eaf5f2;border:1px solid #bfe0d8;color:#245b58;border-radius:12px;padding:11px 13px;margin-bottom:15px}.internal-only-banner strong{display:block;font-size:11px}.internal-only-banner span{display:block;font-size:9px;color:#5f7776;margin-top:2px}
.control-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.control-lane{background:#eaf0ee;border:1px solid #dce5e1;border-radius:14px;overflow:hidden}.control-lane>header{display:flex;justify-content:space-between;align-items:center;padding:13px 14px;background:#fff;border-bottom:1px solid #dfe6e3}.control-lane>header>div{display:flex;align-items:center;gap:9px}.control-lane>header span{font-size:8px;color:#168a80;font-weight:800}.control-lane>header h2{font-size:12px;margin:0}.control-lane>header b{width:28px;height:28px;border-radius:9px;background:#edf3f1;display:grid;place-items:center;font-size:10px}.control-lane>div{padding:9px;display:grid;gap:8px;max-height:680px;overflow:auto}.control-card{background:#fff;border:1px solid #dfe6e3;border-radius:11px;padding:11px}.control-lane.urgent .control-card{border-left:4px solid #c55346}.control-lane.active .control-card{border-left:4px solid #3268a8}.control-lane.done .control-card{border-left:4px solid #168a80}.control-card-title{display:flex;justify-content:space-between;align-items:center}.control-card-title strong{font-size:10.5px}.control-card>p{font-size:8.8px;color:#708087}.control-reason{background:#fff1eb;color:#8b4a3b;border-radius:7px;padding:8px;font-size:8.8px}.control-card dl{display:grid;grid-template-columns:1fr 1fr;gap:6px}.control-card dl div{background:#f5f8f7;border-radius:7px;padding:7px}.control-card dt{font-size:7px;text-transform:uppercase;color:#879399}.control-card dd{font-size:9px;margin:2px 0 0;font-weight:700}.control-card details form{display:grid;gap:6px;margin-top:8px}.control-card.compact{opacity:.9}
@media(max-width:1100px){.gestor-topbar{padding:0 14px}.current-location{display:none}.command-trigger span{display:none}.context-item{min-width:150px}.client-workspace{grid-template-columns:1fr}.sticky-client-card{position:relative!important;top:auto!important;max-height:none;display:grid;grid-template-columns:1fr 2fr;gap:12px}.sticky-client-card .client-number,.sticky-client-card .section-divider,.sticky-client-card dl,.sticky-client-card .client-report-link{grid-column:1/-1}.sticky-metrics{grid-template-columns:repeat(4,1fr)}.client-hero-grid,.today-workspace{grid-template-columns:1fr}.client-kpi-column{grid-template-columns:repeat(3,1fr)}.followup-grid,.control-board{grid-template-columns:1fr}.investment-map-card .panel-body{grid-template-columns:1fr}.map-country-list{grid-template-columns:repeat(2,1fr)}.proposal-overview{grid-template-columns:repeat(2,1fr)}.proposal-explainer{grid-column:1/-1}}
@media(max-width:760px){.gestor-v2{--topbar-h:58px;--context-h:62px;--dock-h:74px}.gestor-topbar{height:58px}.gestor-brand{min-width:auto}.gestor-brand>span:last-child{display:none}.command-trigger{margin-left:auto;flex:0 0 42px;padding:0;justify-content:center}.command-trigger kbd{display:none}.user-copy{display:none}.context-switcher{padding:7px 10px}.context-item{min-width:54px;padding:7px}.context-item>span:last-child small{display:none}.context-item>span:last-child strong{font-size:9px}.windows-dock{bottom:7px;width:calc(100vw - 12px);justify-content:space-around;height:62px;border-radius:17px}.dock-item,.dock-launcher{min-width:45px;height:48px;padding:2px 4px}.dock-item small,.dock-launcher small{font-size:7px}.module-popover{bottom:75px}.module-panel,.all-modules{grid-template-columns:1fr}.content{padding:17px 11px 30px!important}.page-anchor-nav{top:calc(var(--topbar-h) + var(--context-h));width:100%}.sticky-client-card{display:block}.sticky-metrics{grid-template-columns:repeat(2,1fr);margin-top:10px}.client-hero-grid,.client-analysis-grid,.followup-grid{grid-template-columns:1fr}.client-kpi-column{grid-template-columns:1fr}.asset-row{grid-template-columns:minmax(140px,1fr) 72px 90px!important}.asset-row>:nth-child(3),.asset-row>:nth-child(5),.asset-row>:nth-child(6){display:none}.investment-map{min-height:310px}.investment-map-detail{max-width:90%;min-width:210px}.map-country-list{grid-template-columns:1fr}.workflow-banner,.proposal-flow{overflow:auto}.workflow-banner>div,.proposal-flow>div{min-width:180px}.workflow-banner>i,.proposal-flow>i{display:none}.proposal-overview,.proposal-library{grid-template-columns:1fr}.proposal-meta{grid-template-columns:1fr}.tour-card{left:14px!important;right:14px!important;width:auto!important}}
@media print{.gestor-topbar,.context-switcher,.windows-dock,.page-anchor-nav,.command-palette,.tour-layer{display:none!important}.gestor-v2{padding:0}.client-workspace{grid-template-columns:210px 1fr}.sticky-client-card{position:static!important;max-height:none}.investment-map{min-height:300px}.investment-map-card .panel-body{grid-template-columns:1fr 230px}}

/* PULSO Gestor v3.0 — interacción y legibilidad */
.interactive-kpi{font:inherit;text-align:left;width:100%;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.interactive-kpi:hover,.interactive-kpi:focus-visible{border-color:#78b9af;box-shadow:0 8px 24px rgba(19,74,71,.09);transform:translateY(-1px);outline:none}.interactive-kpi.selected{border-color:#168a80;box-shadow:0 0 0 2px rgba(22,138,128,.11)}
.clickable-table tbody tr[data-row-href],.clickable-table tbody tr[data-row-dialog]{cursor:pointer}.clickable-table tbody tr[data-row-href]:hover,.clickable-table tbody tr[data-row-dialog]:hover{background:#f0f8f6}.clickable-table tbody tr:focus-visible{outline:2px solid #168a80;outline-offset:-2px}.clickable-activity-list .activity-item{color:inherit;text-decoration:none;border-radius:9px;transition:background .14s ease,transform .14s ease}.clickable-activity-list .activity-item:hover{background:#f0f8f6;transform:translateX(2px)}.clickable-activity-list .activity-item time small{color:#168a80;font-weight:800}.focus-link{text-decoration:none;color:inherit}.focus-link span{display:grid;gap:2px}.focus-link span small{font-size:8.5px;line-height:1.25;color:#839096;font-weight:500}.focus-link:hover{background:rgba(255,255,255,.09)}.hero-side-help{font-size:9px;color:#a8c6c4;margin:0 0 7px}.panel-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.chart-range{display:inline-flex;align-items:center;border:1px solid #dce5e2;background:#f8faf9;border-radius:9px;padding:2px}.chart-range button{font:inherit;font-size:8.5px;font-weight:800;border:0;background:transparent;color:#687980;padding:5px 8px;border-radius:6px;cursor:pointer}.chart-range button:hover,.chart-range button.active{background:#fff;color:#176f67;box-shadow:0 1px 5px rgba(27,53,59,.09)}
.advisor-table{table-layout:fixed}.advisor-table th:first-child,.advisor-table td:first-child{width:46%}.advisor-table th:nth-child(2),.advisor-table td:nth-child(2){width:14%}.advisor-table th:nth-child(3),.advisor-table td:nth-child(3),.advisor-table th:nth-child(4),.advisor-table td:nth-child(4){width:20%}.advisor-table .amount{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.advisor-table .text-center{text-align:center}
#clients-live,#crm-live{position:relative;transition:opacity .14s ease}#clients-live.is-loading,#crm-live.is-loading{opacity:.55;pointer-events:none}#clients-live.is-loading::after,#crm-live.is-loading::after{content:'Actualizando…';position:fixed;right:20px;top:78px;background:#173b42;color:#fff;padding:7px 11px;border-radius:8px;font-size:9px;font-weight:750;z-index:2000;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.app-toast{position:fixed;right:20px;top:76px;z-index:5000;max-width:420px;padding:11px 14px;border-radius:10px;background:#173b42;color:#fff;font-size:10px;font-weight:700;box-shadow:0 14px 34px rgba(11,39,45,.22)}.app-toast.error{background:#a83e36}.app-toast[hidden]{display:none}
.world-map-real{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;opacity:.78;filter:saturate(.65) contrast(.92)}.investment-map{background:linear-gradient(180deg,#eaf4f6 0%,#dcecee 100%)}.investment-map::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.18),transparent 22%,transparent 78%,rgba(255,255,255,.18))}.map-point,.investment-map-detail{z-index:3}.world-silhouette{display:none!important}
.clickable-asset{text-decoration:none;color:inherit}.clickable-asset:hover{background:#f1f8f6}.goal-button{border:1px solid #e0e7e4;background:#fff;width:100%;text-align:left;cursor:pointer;font:inherit}.goal-button:hover{border-color:#9cc9c1;background:#f7fbfa}
.crm-calendar-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:16px;margin-bottom:16px}.calendar-nav{display:flex;align-items:center;gap:7px}.calendar-legend{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:10px;color:#687980;font-size:8.5px;font-weight:700}.calendar-legend span{display:inline-flex;align-items:center;gap:5px}.task-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#83979c}.task-dot.reunion{background:#3268a8}.task-dot.llamada{background:#168a80}.task-dot.seguimiento{background:#c96a29}.task-dot.documentacion{background:#6750a4}.task-dot.propuesta{background:#b54136}.month-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-weekday{text-align:center;color:#809096;font-size:8px;font-weight:800;padding:4px}.calendar-day{min-height:67px;border:1px solid #e0e7e4;background:#fff;border-radius:9px;padding:6px;text-align:left;cursor:pointer;color:#31464e;display:flex;flex-direction:column;justify-content:space-between}.calendar-day:hover,.calendar-day.selected{border-color:#5aa99d;background:#eff8f6}.calendar-day.today>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#173b42;color:#fff}.calendar-day.outside{opacity:.4}.calendar-events{display:flex;gap:3px;align-items:center;min-height:10px}.calendar-events small{font-size:7px;color:#78878c}.task-timeline{display:grid;gap:7px;max-height:520px;overflow:auto;padding-right:3px}.task-line{display:grid;grid-template-columns:42px 28px minmax(0,1fr) auto;gap:9px;align-items:center;border:1px solid #e0e7e4;border-left:4px solid #7c9297;background:#fff;border-radius:10px;padding:9px}.task-line.task-reunion{border-left-color:#3268a8}.task-line.task-llamada{border-left-color:#168a80}.task-line.task-seguimiento{border-left-color:#c96a29}.task-line.task-documentacion{border-left-color:#6750a4}.task-line.task-propuesta{border-left-color:#b54136}.task-line.overdue{background:#fff8f6}.task-line time{text-align:center;font-size:10px;font-weight:800}.task-line time small{display:block;font-size:7.5px;color:#809096}.task-line p{margin:2px 0 0;font-size:9px;color:#66777e}.task-note{display:block;margin-top:3px;color:#839096}.task-type{display:grid;place-items:center;color:#65777e}.opportunity-board{display:grid;grid-template-columns:1fr 1fr;gap:14px}.opportunity-column{border:1px solid #e0e7e4;border-radius:12px;background:#fafcfb;padding:10px;display:grid;gap:8px;align-content:start}.opportunity-column>header{display:flex;justify-content:space-between;align-items:center;color:#53666d}.opportunity-column>header span{background:#e6efed;border-radius:999px;padding:3px 7px;font-size:8px}.opportunity-card{border:1px solid #e2e8e6;background:#fff;border-radius:10px;padding:10px}.opportunity-card.urgent{border-left:4px solid #bd5144}.opportunity-card>header{display:flex;justify-content:space-between;font-size:8px;color:#7c898e;margin-bottom:7px}.opportunity-client{text-decoration:none;color:inherit;display:block}.opportunity-client:hover strong{color:#168a80}.opportunity-client p{font-size:9px;color:#6a797f;margin:3px 0 9px}.pipeline-empty{padding:18px;text-align:center;color:#88969b;font-size:9px}.stage-stepper{display:flex;align-items:stretch;gap:5px;overflow-x:auto;padding-bottom:4px}.stage-stepper>i{align-self:center;color:#9aa8ac;font-style:normal}.stage-step{min-width:115px;flex:1;border:1px solid #e1e7e5;background:#fff;border-radius:10px;padding:8px;text-align:left;cursor:pointer;display:grid;grid-template-columns:24px 1fr;column-gap:6px;row-gap:2px}.stage-step>span{grid-row:1/3;display:grid;place-items:center;width:22px;height:22px;background:#ecf2f0;border-radius:50%;font-size:8px;font-weight:800}.stage-step strong{font-size:9px}.stage-step small{font-size:7.5px;color:#7d8c91}.stage-step.active{border-color:#168a80;background:#eff8f6}.stage-step.active>span{background:#168a80;color:#fff}.stage-help{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #edf1ef;margin-bottom:8px}.stage-help>span{font-size:9px;color:#6f7e84;flex:1}.stage-help>div{display:flex;gap:6px}.lead-list{display:grid;gap:6px}.lead-list-row{display:grid;grid-template-columns:minmax(190px,1.25fr) repeat(3,minmax(105px,.7fr)) minmax(220px,1fr);gap:10px;align-items:center;border:1px solid #e5eae8;border-radius:9px;padding:8px}.lead-list-row>div span,.lead-list-row>div small{display:block;font-size:7.5px;color:#839096}.lead-list-row>div strong{font-size:9px}.lead-list-row form{display:flex;gap:5px;align-items:center}.lead-list-row .filter-select{min-width:105px}.inline-actions{display:flex;gap:6px;flex-wrap:wrap}
.user-admin-grid .clickable-table tr{transition:background .12s ease}.user-dialog-footer{justify-content:space-between!important}.user-dialog-footer>div{display:flex;gap:7px}.targeted-work-item{box-shadow:0 0 0 3px rgba(201,106,41,.2)!important;border-color:#c96a29!important;animation:targetFlash 1.2s ease 2}@keyframes targetFlash{50%{background:#fff5ea}}
@media(max-width:1080px){.crm-calendar-layout{grid-template-columns:1fr}.lead-list-row{grid-template-columns:1fr 1fr}.lead-list-row form{grid-column:1/-1}.advisor-table th:first-child,.advisor-table td:first-child{width:auto}}
@media(max-width:700px){.opportunity-board{grid-template-columns:1fr}.month-calendar{gap:3px}.calendar-day{min-height:52px;padding:4px}.task-line{grid-template-columns:38px 24px minmax(0,1fr)}.task-line form{grid-column:3}.stage-help{align-items:flex-start;flex-direction:column}.lead-list-row{grid-template-columns:1fr}.lead-list-row form{grid-column:auto}.advisor-table{table-layout:auto}.advisor-table th:nth-child(n),.advisor-table td:nth-child(n){width:auto}}
@media print{[data-print],.page-actions,.btn,.app-toast{display:none!important}.user-admin-grid{display:block}.user-admin-grid>section:first-child{display:none}.clickable-table{font-size:10pt}.world-map-real{filter:none}}
.control-card.targeted{box-shadow:0 0 0 3px rgba(201,106,41,.2)!important;border-color:#c96a29!important;animation:targetFlash 1.2s ease 2}
.opportunity-card.targeted{border-color:#c96a29;box-shadow:0 0 0 3px rgba(201,106,41,.16);animation:targetFlash 1.2s ease 2}

/* PULSO Gestor v3 — metodología real: personas, comitentes, CBU, distribución e intercambio */
.concept-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 16px}.concept-strip>div{background:#f0f6f4;border:1px solid #dce9e5;border-radius:11px;padding:11px 13px;display:grid;gap:2px}.concept-strip>div strong{font-size:10px;color:#173b42}.concept-strip>div span{font-size:8.5px;color:#708087}.concept-strip>i{display:none}.kpi-card.actionable,.kpi-action{appearance:none;text-align:left;font:inherit;color:inherit;width:100%;cursor:pointer;transition:.15s ease}.kpi-card.actionable:hover,.kpi-action:hover{border-color:#7db9b0;background:#fbfefd;transform:translateY(-1px);box-shadow:0 9px 24px rgba(19,74,71,.08)}.compact-value{font-size:16px!important;text-transform:capitalize;white-space:normal!important}
[data-live-container]{position:relative;transition:opacity .14s ease}[data-live-container].is-loading{opacity:.55;pointer-events:none}[data-live-container].is-loading::after{content:'Actualizando…';position:absolute;right:12px;top:10px;z-index:20;background:#173b42;color:#fff;border-radius:8px;padding:6px 9px;font-size:8px;font-weight:800}.app-toast.v3-toast{opacity:0;transform:translateY(-8px);transition:.2s ease}.app-toast.v3-toast.show{opacity:1;transform:none}
.transfer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px}.transfer-card{border:1px solid #e0e7e4;border-radius:12px;background:#fff;padding:13px;display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:start}.transfer-icon{width:36px;height:36px;border-radius:10px;background:#edf5f3;color:#1b635d;display:grid;place-items:center}.transfer-card h3{font-size:11px;margin:1px 0 3px}.transfer-card p{font-size:8.7px;color:#6b7c82;margin:0;line-height:1.45}.transfer-actions{grid-column:1/-1;display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap;border-top:1px solid #edf1ef;padding-top:9px}.import-columns{border:1px dashed #cfdad7;border-radius:9px;background:#f8faf9;padding:10px;display:grid;gap:5px}.import-columns strong{font-size:9px}.import-columns code{font-size:8.5px;color:#476168;white-space:normal;word-break:break-word}.import-row-list{display:grid;gap:8px;padding:12px}.import-row{border:1px solid #e2e8e6;border-radius:10px;padding:10px;background:#fff}.import-row.invalid{border-left:4px solid #b54136;background:#fffafa}.import-row>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.raw-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.raw-grid>div{background:#f7f9f8;border-radius:7px;padding:6px}.raw-grid small,.raw-grid span{display:block}.raw-grid small{font-size:7px;color:#849197;text-transform:uppercase;letter-spacing:.05em}.raw-grid span{font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-errors{margin:8px 0 0;padding:7px 10px 7px 25px;background:#faece9;border-radius:8px;color:#8f332c;font-size:8.5px}
.relationship-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}.relationship-list{display:grid;gap:7px}.relationship-card{border:1px solid #e1e7e5;border-radius:10px;padding:9px;display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:8px;align-items:center}.relationship-card:hover{background:#f4faf8;border-color:#b8d8d2}.relationship-card strong,.relationship-card small{display:block}.relationship-card strong{font-size:9.5px}.relationship-card small{font-size:7.8px;color:#718087;margin-top:2px}.person-kind{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#e8f2ef;color:#176f67;font-weight:850;font-size:8px}.bank-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}.bank-card-grid.compact{grid-template-columns:1fr;padding:0}.bank-card{border:1px solid #dfe7e4;border-radius:12px;padding:12px;background:linear-gradient(145deg,#fff,#f8fbfa);display:grid;gap:10px}.bank-card>header{display:flex;justify-content:space-between;gap:10px}.bank-card>header strong,.bank-card>header small{display:block}.bank-card>header strong{font-size:10px;margin-top:2px}.bank-card>header small{font-size:8px;color:#718087}.bank-alias{font-size:13px;font-weight:800;letter-spacing:.01em}.secure-number{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#eef4f2;border-radius:9px;padding:8px}.secure-number code{font-family:"Cascadia Mono",Consolas,monospace;font-size:10px;color:#27464c;letter-spacing:.04em;word-break:break-all}.secure-number>div{display:flex;gap:5px;flex-shrink:0}.bank-holders{display:flex;gap:5px;flex-wrap:wrap}.bank-holders span{font-size:7.5px;background:#edf2f0;padding:3px 6px;border-radius:999px;color:#5f7076}.account-summary-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}.summary-stack{display:grid;gap:8px}.summary-stack>div{display:flex;justify-content:space-between;gap:8px;padding:8px;border-bottom:1px solid #edf1ef}.summary-stack span{font-size:8.5px;color:#728087}.summary-stack strong{font-size:11px}.compact-person{display:block;font-size:8.5px;margin:2px 0}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.check-grid label,.check-line{display:flex;align-items:center;gap:6px;border:1px solid #e1e7e5;background:#fafcfb;padding:7px;border-radius:8px;font-size:8.5px}
.workflow-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 16px}.workflow-steps>div{border:1px solid #dfe6e4;background:#fff;border-radius:10px;padding:9px;display:flex;gap:8px;align-items:center;color:#7a888e}.workflow-steps span{width:24px;height:24px;border-radius:50%;background:#edf1f0;display:grid;place-items:center;font-size:8px;font-weight:850}.workflow-steps strong{font-size:8.5px}.workflow-steps .done{border-color:#b9ddd5;background:#f3faf8;color:#176f67}.workflow-steps .done span{background:#168a80;color:#fff}.workflow-steps .active{border-color:#e7c596;background:#fff8ed;color:#8b5b12}.workflow-steps .active span{background:#c78329;color:#fff}.status-pill{padding:7px 10px;border-radius:999px;background:#eef2f1;color:#65757b;font-size:8.5px;font-weight:850;text-transform:uppercase}.status-pill.ok{background:#e7f5ef;color:#13795b}.status-pill.warn{background:#fff4dc;color:#9b660d}.grid-2.uneven{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)}.guidance-card{align-self:start;position:sticky;top:100px}.guidance-list{display:grid;gap:8px;padding-left:18px;color:#5f7077;font-size:9px}.note-box{background:#f7f9f8;border-left:3px solid #168a80;border-radius:8px;padding:9px;margin-top:10px}.note-box strong{font-size:8.5px}.note-box p{margin:3px 0 0;color:#687980;font-size:8.5px}.method-choice{display:grid;gap:7px}.method-choice a{border:1px solid #e0e7e4;border-radius:10px;padding:10px;display:grid;gap:2px}.method-choice a:hover,.method-choice a.active{border-color:#5aa99d;background:#eff8f6}.method-choice strong{font-size:9.5px}.method-choice span{font-size:8px;color:#728187}.helper-text{font-size:8px;color:#7b898f}.allocation-total{display:grid;text-align:right}.allocation-total small{font-size:7.5px;color:#7a898f}.allocation-total strong{font-size:13px}.distribution-table .table-input{width:105px;max-width:100%;border:1px solid #dce4e1;border-radius:7px;padding:6px 7px;text-align:right;font-variant-numeric:tabular-nums;background:#fff}.confirmation-panel{border-color:#e3c49a}.panel-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-top:1px solid #edf1ef}.btn-danger{background:#a93f37!important;color:#fff!important;border-color:#a93f37!important}
.live-friendly .filters{flex-wrap:wrap}.filter-input.date{max-width:140px}.back-link{display:inline-block;font-size:9px;color:#168a80;font-weight:750;margin-bottom:8px}
@media(max-width:1100px){.transfer-grid,.relationship-grid,.account-summary-grid,.grid-2.uneven{grid-template-columns:1fr}.guidance-card{position:static}.raw-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bank-card-grid{grid-template-columns:1fr}}
@media(max-width:700px){.concept-strip,.workflow-steps{grid-template-columns:1fr 1fr}.transfer-grid{grid-template-columns:1fr}.raw-grid{grid-template-columns:1fr}.secure-number{align-items:flex-start;flex-direction:column}.secure-number>div{width:100%}.secure-number .btn{flex:1}.check-grid{grid-template-columns:1fr}.relationship-grid{display:block}}
@media print{.secure-number button,.transfer-actions,.workflow-steps .btn{display:none!important}}


/* PULSO Gestor v3 — metodología real */
.kpi-grid.six{grid-template-columns:repeat(6,minmax(0,1fr))}
.secure-number.compact{gap:8px}.secure-number.compact span{display:grid;gap:2px}.secure-number.compact small{color:var(--muted)}
.allocation-bars{display:grid;gap:12px}.allocation-bar-row{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(120px,2fr) 72px;gap:14px;align-items:center}.allocation-bar-row>div:first-child{display:grid}.allocation-bar-row small{color:var(--muted)}.allocation-track{height:9px;border-radius:999px;background:#edf1f2;overflow:hidden}.allocation-track span{display:block;height:100%;border-radius:inherit}
.strategy-allocation-editor{display:grid;gap:8px;margin-top:12px}.strategy-allocation-row{display:grid;grid-template-columns:120px 1fr 1.5fr 110px 95px 95px;gap:8px}.form-actions{display:flex;justify-content:flex-end;gap:8px}.form-group.is-muted{opacity:.55}
@media(max-width:1180px){.kpi-grid.six{grid-template-columns:repeat(3,minmax(0,1fr))}.strategy-allocation-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.kpi-grid.six{grid-template-columns:1fr 1fr}.allocation-bar-row{grid-template-columns:1fr 64px}.allocation-track{grid-column:1/-1}.strategy-allocation-row{grid-template-columns:1fr}}

/* PULSO Gestor v3.0 — caja por moneda */
.currency-balance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;padding:16px}.currency-balance-card{border:1px solid var(--border);border-radius:18px;background:var(--surface);padding:16px}.currency-balance-card header{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--border);padding-bottom:10px;margin-bottom:10px}.currency-balance-card header strong{font-size:1.15rem}.currency-balance-card header small{color:var(--muted)}.currency-balance-card dl{display:grid;gap:8px;margin:0}.currency-balance-card dl div{display:flex;justify-content:space-between;gap:12px}.currency-balance-card dt{color:var(--muted)}.currency-balance-card dd{font-weight:750;margin:0;text-align:right}

/* =========================================================
   PULSO Gestor v4 - pulido visual y de interacción
   ========================================================= */
.kpi-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;min-height:106px;overflow:hidden}.kpi-card .kpi-value{display:block;width:100%;margin:8px 0 3px;font-size:clamp(19px,1.65vw,25px);line-height:1.08;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-card>small{display:block;width:100%;font-size:9px;line-height:1.3;color:var(--muted)}
.detail-list{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--line-2);border-radius:11px;overflow:hidden;background:#fff}.detail-list>div{padding:13px 14px;border-right:1px solid var(--line-2);border-bottom:1px solid var(--line-2);min-width:0}.detail-list>div:nth-child(3n){border-right:0}.detail-list dt{font-size:8.5px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:#7b898f}.detail-list dd{margin:4px 0 0;font-size:11.5px;font-weight:750;color:#20323a;overflow-wrap:anywhere}

/* Sidebar del cliente: sin scroll interno, compacto y siempre visible */
.client-workspace{grid-template-columns:270px minmax(0,1fr)}.sticky-client-card{max-height:none!important;overflow:visible!important;top:calc(var(--topbar-h) + var(--context-h) + 13px)!important;padding:14px!important}.sticky-client-card .identity-head{align-items:flex-start}.sticky-client-card .identity-avatar{width:38px;height:38px;border-radius:10px}.sticky-client-card .identity-head h2{font-size:15.5px!important;line-height:1.08}.sticky-client-card .client-number{margin:6px 0 10px}.sticky-client-card .sticky-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.sticky-client-card .summary-stat{padding:8px 8px;min-width:0}.sticky-client-card .summary-stat label{font-size:7.6px}.sticky-client-card .summary-stat strong{font-size:13.5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sticky-client-card .summary-stat small{font-size:7.4px;line-height:1.2}.sticky-client-card .section-divider{margin:10px 0}.sticky-client-card .definition{padding:5px 0}.sticky-client-card .definition dt{font-size:8px}.sticky-client-card .definition dd{font-size:8.5px}.sticky-client-card .client-report-link{margin-top:9px}

/* Sidebar del reporte: todo visible y sticky */
.report-summary{grid-template-columns:300px minmax(0,1fr);align-items:start}.report-client-card{top:calc(var(--topbar-h) + var(--context-h) + 12px)!important;padding:14px!important;max-height:none!important;overflow:visible!important}.report-client-head h2{font-size:17px;margin:5px 0 4px}.report-side-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:11px}.report-side-metrics .summary-stat{margin:0;padding:8px}.report-side-metrics .summary-stat label{font-size:7.7px}.report-side-metrics .summary-stat strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-side-metrics .summary-stat small{font-size:7.3px}.report-download-side{width:100%;margin-top:9px}

/* Mapa: SVG y puntos comparten el mismo viewBox, por eso nunca se separan al moverlo */
.investment-map{min-height:400px;background:linear-gradient(180deg,#eaf4f6,#dcecee);touch-action:none}.world-map-interactive{display:block;width:100%;height:100%;min-height:400px;position:absolute;inset:0;cursor:grab;user-select:none}.world-map-interactive.dragging{cursor:grabbing}.world-map-interactive g[fill] path{fill:#b8cac5!important;stroke:#edf5f2!important;stroke-width:.9!important}.map-point-svg{cursor:pointer;outline:none}.map-point-halo{fill:rgba(22,138,128,.2);stroke:none}.map-point-core{fill:#0f766e;stroke:#fff;stroke-width:2;vector-effect:non-scaling-stroke}.map-point-svg:hover .map-point-core,.map-point-svg.active .map-point-core{fill:#c96a29}.map-point-svg.active .map-point-halo{fill:rgba(201,106,41,.28)}.map-tools{display:flex;align-items:center;gap:6px}.map-tool{height:28px;min-width:28px;border:1px solid #d8e2df;background:#fff;border-radius:8px;font-size:14px;font-weight:800;cursor:pointer;color:#36545b}.map-tool.reset{font-size:8px;padding:0 8px}.map-tool:hover{background:#edf6f3;border-color:#a9cec6}.map-drag-hint{position:absolute;right:12px;bottom:10px;z-index:4;background:rgba(255,255,255,.9);border:1px solid #dce5e2;border-radius:999px;padding:4px 8px;font-size:7.5px;color:#64767c}.investment-map-detail{z-index:5}

/* Negocio: evita 6 tarjetas comprimidas */
.business-kpi-grid{display:grid;grid-template-columns:1.25fr .8fr 1fr 1fr;gap:12px;margin-bottom:18px}.business-kpi{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px 16px;box-shadow:var(--shadow);min-width:0}.business-kpi .eyebrow{margin-bottom:7px}.business-kpi>strong{display:block;font-size:clamp(21px,2vw,29px);line-height:1.05;letter-spacing:-.035em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.business-kpi>small{display:block;color:var(--muted);font-size:9px;margin-top:5px}.business-split{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:7px}.business-split div{padding:8px;border-radius:9px;background:#f3f6f5}.business-split span{display:block;font-size:7.5px;color:#74838a}.business-split strong{display:block;font-size:13px;margin-top:2px}

/* Cuenta comitente: ficha compacta y datos en grilla */
.account-summary-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:16px}.account-summary-grid>.panel{height:100%}.account-summary-grid .panel-body{padding:14px}.account-summary-grid .summary-stack{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;gap:7px}.account-summary-grid .summary-stack>div{display:block;border:1px solid var(--line-2);border-radius:9px;padding:10px;background:#f8faf9}.account-summary-grid .summary-stack span{display:block}.account-summary-grid .summary-stack strong{display:block;font-size:16px;margin-top:3px}.account-summary-grid .detail-list{grid-template-columns:repeat(3,minmax(0,1fr))}

/* Estrategias: cards reales en vez de texto suelto */
.strategy-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.strategy-toolbar .filter-input{max-width:360px}.strategy-family{margin:0 0 22px}.strategy-family-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:9px}.strategy-family-head h2{margin:0;font-size:16px}.strategy-family-head p{margin:2px 0 0;font-size:9.5px;color:var(--muted)}.strategy-family-head span{font-size:9px;color:#607179}.strategy-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.strategy-card{--accent:#168a80;display:flex;flex-direction:column;min-height:182px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--accent);border-radius:13px;padding:14px 14px 12px;box-shadow:var(--shadow);transition:.18s ease}.strategy-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(15,30,36,.08);border-color:#cfdad6}.strategy-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.strategy-head h3{font-size:13px;margin:0}.strategy-head p{font-size:8.5px;color:var(--muted);margin:3px 0 0}.strategy-return{font-size:13px;font-weight:850;white-space:nowrap}.risk-dots{display:flex;gap:4px;margin:13px 0}.risk-dots i{display:block;width:22px;height:4px;border-radius:4px;background:#e5ebe9}.risk-dots i.on{background:var(--accent)}.strategy-metrics{margin-top:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.strategy-metrics div{background:#f6f8f7;border-radius:8px;padding:8px;min-width:0}.strategy-metrics span{display:block;font-size:7px;color:#7a898f}.strategy-metrics strong{display:block;font-size:10.5px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Paginación propia */
.pulso-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-top:1px solid var(--line-2);background:#fbfcfc}.pulso-pagination-info{font-size:9.5px;color:var(--muted)}.pulso-pagination-pages{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.pulso-pagination-pages a,.pulso-pagination-pages span{min-width:31px;height:31px;padding:0 8px;border:1px solid #dbe3e0;border-radius:8px;background:#fff;display:grid;place-items:center;font-size:9.5px;font-weight:700;color:#52656c}.pulso-pagination-pages a:hover{background:#edf6f3;border-color:#a9cec6;color:#14313a}.pulso-pagination-pages .current{background:#14313a;color:#fff;border-color:#14313a}.pulso-pagination-pages .disabled{opacity:.4}.pulso-pagination-pages .dots{border:0;background:transparent;min-width:auto}

@media(max-width:1200px){.strategy-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.business-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.report-summary{grid-template-columns:1fr}.report-client-card{position:relative!important;top:auto!important}.report-side-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.account-summary-grid{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr)}.strategy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.sticky-client-card .sticky-metrics,.report-side-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.account-summary-grid{grid-template-columns:1fr}.account-summary-grid .detail-list{grid-template-columns:repeat(2,minmax(0,1fr))}.strategy-grid,.business-kpi-grid{grid-template-columns:1fr}.pulso-pagination{align-items:flex-start;flex-direction:column}}

/* PULSO Gestor v4.1 · alta de persona desde una cuenta */
.account-person-dialog{width:min(760px,calc(100vw - 28px))}.account-person-tabs{display:flex;gap:6px;padding:12px 20px 0;border-top:1px solid #edf1ef;background:#fbfcfc}.account-person-tabs button{appearance:none;border:1px solid #d7e0dd;background:#fff;color:#5b6d74;border-radius:9px;padding:9px 13px;font-size:11px;font-weight:780;cursor:pointer}.account-person-tabs button.active{background:#14313a;border-color:#14313a;color:#fff}.quick-create-note{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;margin-bottom:13px;border-radius:10px;background:#eef6f4;border:1px solid #d6e7e3;color:#34535a}.quick-create-note strong{font-size:10px;white-space:nowrap}.quick-create-note span{font-size:9.5px;line-height:1.5}.empty-state.compact{padding:14px;margin-bottom:12px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:680px){.form-grid.two{grid-template-columns:1fr}.account-person-tabs{overflow-x:auto}.quick-create-note{display:block}.quick-create-note strong{display:block;margin-bottom:4px}}
