:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--bg:#071018;--side:#08131c;--panel:#0d1a24;--panel2:#10222f;--line:#1c3443;--text:#f3f8fb;--muted:#7f98a8;--blue:#168cff;--green:#22d39a;--cyan:#16b8cf;--danger:#dc4964}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#08131c,#071018);border-right:1px solid #16303d;padding:24px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 28px}.brand strong{display:block;letter-spacing:.06em}.brand small{display:block;color:var(--green);font-weight:800;letter-spacing:.18em;margin-top:2px}.logo-mark{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--green));font-weight:900;color:white;box-shadow:0 8px 24px #1599cb35}.sidebar nav{display:grid;gap:6px}.navbtn{width:100%;display:grid;grid-template-columns:24px 1fr auto;align-items:center;text-align:left;gap:9px;padding:12px;border:0;border-radius:10px;background:transparent;color:#9bb0bd;font-weight:650}.navbtn:hover,.navbtn.active{background:#102532;color:#fff}.navbtn.active{box-shadow:inset 3px 0 0 var(--green)}.navbtn em{font-style:normal;font-size:12px;background:#163242;padding:2px 7px;border-radius:10px}.side-foot{margin-top:auto;border-top:1px solid var(--line);padding:18px 6px 0;display:grid;grid-template-columns:36px 1fr 30px;align-items:center;gap:9px}.side-foot strong,.side-foot small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-foot small{color:var(--muted);font-size:11px}.side-foot button{border:0;background:transparent;color:#8da4b2;font-size:20px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#12374a;color:#7fe9c2;font-weight:800}main{min-width:0;background:radial-gradient(circle at 85% 0,#07372e55,transparent 28%),radial-gradient(circle at 20% 0,#07355b55,transparent 30%),#071018}.topbar{min-height:92px;padding:22px 34px;border-bottom:1px solid #15303d;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#071018cc;backdrop-filter:blur(12px);position:sticky;top:0;z-index:5}.topbar h1{font-size:24px;margin:0 0 4px}.topbar p,.panel-head p{margin:0;color:var(--muted);font-size:13px}.content{padding:28px 34px;max-width:1600px}.primary{border:1px solid #299cff;background:linear-gradient(135deg,#168cff,#0f6fe5);color:#fff;border-radius:9px;padding:10px 16px;font-weight:750}.wide{width:100%}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat{background:linear-gradient(180deg,#0e1d28,#0b1720);border:1px solid var(--line);border-radius:14px;padding:20px;display:flex;gap:14px;align-items:center}.stat-icon{width:43px;height:43px;border-radius:11px;display:grid;place-items:center;font-size:20px;background:#12314b}.stat-icon.green{background:#0e3a2e}.stat-icon.cyan{background:#0d3440}.stat-icon.lime{background:#243b22}.stat small,.stat strong{display:block}.stat small{color:var(--muted);margin-bottom:3px}.stat strong{font-size:25px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.7fr);gap:20px}.panel{background:linear-gradient(180deg,#0d1a24,#0a151e);border:1px solid var(--line);border-radius:14px;overflow:hidden}.panel-head{padding:20px 22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.panel-head h2{font-size:16px;margin:0 0 4px}.textbtn{border:0;background:transparent;color:#43b7ff}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{text-align:left;color:#668293;font-size:10px;letter-spacing:.09em;padding:12px 18px;border-bottom:1px solid var(--line)}td{padding:15px 18px;border-bottom:1px solid #142b38;color:#dce8ee;font-size:13px}tbody tr[data-client],tbody tr[data-open]{cursor:pointer}tbody tr[data-client]:hover,tbody tr[data-open]:hover,.selected-row{background:#0f2531}td b,td small,td span{display:block}td small{color:#7894a4;margin-top:4px}.status-pill{display:inline-block!important;width:max-content;padding:4px 9px;border:1px solid #23617a;background:#103044;color:#a8e6ff;border-radius:20px;font-size:11px}.quick{padding-bottom:10px}.quick-action{width:calc(100% - 28px);margin:7px 14px;padding:13px;border:1px solid #193746;background:#0b1b26;color:#fff;border-radius:10px;display:grid;grid-template-columns:34px 1fr 20px;gap:10px;align-items:center;text-align:left}.quick-action>span{width:34px;height:34px;border-radius:8px;display:grid;place-items:center;background:#10384a;color:#5ecfff}.quick-action b,.quick-action small{display:block}.quick-action small{color:var(--muted);margin-top:3px}.quick-action i{font-style:normal;color:#5b7d90}.clients-panel{overflow:visible}.toolbar{display:grid;grid-template-columns:minmax(240px,1fr) 220px auto;gap:10px;padding:16px;border-bottom:1px solid var(--line)}input,select,textarea{width:100%;padding:10px 12px;background:#07141e;color:#fff;border:1px solid #254151;border-radius:9px;outline:none}.searchbox{display:flex;align-items:center;gap:8px;background:#07141e;border:1px solid #254151;border-radius:9px;padding-left:12px;color:#66889a}.searchbox input{border:0;background:transparent;padding-left:0}.client-layout{display:grid;grid-template-columns:minmax(520px,1.2fr) minmax(360px,.8fr);min-height:620px}.client-table{border-right:1px solid var(--line)}.detail-pane{padding:22px;background:#0b1822}.detail-pane h2{margin:0 0 10px;font-size:21px}.detail-pane .section{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.detail-pane label{display:block;color:#91a8b6;font-size:12px;margin:10px 0 5px}.row{display:flex;gap:8px;align-items:center}.row>*{flex:1}.ghost{background:#132734;border:1px solid #274352;color:#e9f3f7;border-radius:8px;padding:9px 12px;font-weight:700}.danger{background:#54212d;border:1px solid #87354a;color:white;border-radius:8px;padding:9px 12px;font-weight:700}.comment{background:#0e202c;border:1px solid #1d3948;border-radius:9px;padding:11px;margin:8px 0}.comment small{display:block;color:#7593a3;margin-bottom:5px}.empty,.empty-state{text-align:center;color:var(--muted)}.empty-state{padding:100px 30px}.empty-state>div{font-size:36px;color:#2b647d}.toast{margin-bottom:16px;background:#0d382c;border:1px solid #236a51;padding:11px 14px;border-radius:9px;color:#bdf4dd}.toast button{float:right;background:transparent;border:0;color:#fff}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1fr 430px;place-items:center;gap:60px;padding:7vw;background:radial-gradient(circle at 20% 20%,#0b4670,transparent 30%),radial-gradient(circle at 75% 70%,#07533d,transparent 28%),#061019}.auth-brand{text-align:center}.auth-brand .logo-mark{margin:auto;width:72px;height:72px;font-size:30px}.auth-brand h1{letter-spacing:.12em;margin-bottom:5px}.auth-brand p{color:#7f9aaa}.auth-card{width:100%;background:#0b1822e8;border:1px solid #214050;border-radius:16px;padding:30px;box-shadow:0 30px 80px #0008}.auth-card h2{margin:0 0 4px}.auth-card label{display:block;color:#9ab0bd;margin:15px 0 6px;font-size:13px}.muted{color:var(--muted)}.error{color:#ff94a9}.card{background:#0d1a24;border:1px solid var(--line);border-radius:14px;padding:22px}.notice{padding:12px;background:#112b25;border:1px solid #255646;border-radius:9px;margin:12px 0}.section textarea{min-height:90px;resize:vertical}@media(max-width:1050px){.app-shell{grid-template-columns:82px 1fr}.brand>div:last-child,.navbtn:not(.active){font-size:0}.navbtn{grid-template-columns:1fr;justify-items:center}.navbtn em,.side-foot>div:not(.avatar),.side-foot button{display:none}.brand{justify-content:center}.side-foot{grid-template-columns:1fr;justify-items:center}.stats{grid-template-columns:repeat(2,1fr)}.client-layout{grid-template-columns:1fr}.client-table{border-right:0;border-bottom:1px solid var(--line)}}@media(max-width:720px){.app-shell{display:block}.sidebar{position:sticky;height:auto;z-index:10;padding:10px;flex-direction:row;align-items:center;border-right:0;border-bottom:1px solid var(--line)}.brand{padding:0 8px 0 0}.brand>div:last-child,.side-foot{display:none}.sidebar nav{display:flex;overflow:auto;flex:1}.navbtn,.navbtn:not(.active){font-size:0;display:block;width:auto;min-width:50px;text-align:center}.navbtn span{font-size:18px}.topbar{padding:16px;min-height:76px}.topbar p{display:none}.content{padding:14px}.stats{grid-template-columns:1fr 1fr;gap:10px}.dashboard-grid{grid-template-columns:1fr}.toolbar{grid-template-columns:1fr}.client-layout{display:block}.client-table{max-height:420px}.detail-pane{padding:16px}.auth-shell{grid-template-columns:1fr;padding:22px}.auth-brand{display:none}th,td{padding:12px 10px}.topbar h1{font-size:20px}}

/* Asesores */
.advisers-panel{padding:0;overflow:hidden}.team-count{font-size:12px;padding:7px 11px;border:1px solid var(--line);border-radius:999px;color:var(--muted)}
.advisor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px}.advisor-card{border:1px solid var(--line);background:rgba(9,25,35,.72);border-radius:16px;padding:18px}.advisor-inactive{opacity:.72}.advisor-top{display:flex;align-items:center;gap:12px;margin-bottom:18px}.advisor-avatar{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;font-weight:800;background:linear-gradient(135deg,#168cff,#2fd39b);color:white}.advisor-name{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.advisor-name h3{margin:0}.active-chip,.inactive-chip{font-size:11px;border-radius:999px;padding:4px 8px}.active-chip{background:rgba(47,211,155,.14);color:#63e6b7;border:1px solid rgba(47,211,155,.25)}.inactive-chip{background:rgba(255,91,115,.12);color:#ff8da0;border:1px solid rgba(255,91,115,.22)}.advisor-info{display:grid;grid-template-columns:1fr 1.5fr .7fr;gap:12px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.advisor-info small{display:block;color:var(--muted);margin-bottom:5px}.advisor-info b{font-size:13px;overflow-wrap:anywhere}.advisor-actions{display:flex;gap:10px;margin-top:16px}.advisor-actions button{flex:1}.secure-note{margin:0 20px 20px}
@media(max-width:900px){.advisor-grid{grid-template-columns:1fr}.advisor-info{grid-template-columns:1fr}.advisor-actions{flex-direction:column}}

/* Asesores */
.advisers-panel{padding:0;overflow:hidden}.team-count{font-size:12px;padding:7px 11px;border:1px solid var(--line);border-radius:999px;color:var(--muted)}
.advisor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px}.advisor-card{border:1px solid var(--line);background:rgba(9,25,35,.72);border-radius:16px;padding:18px}.advisor-inactive{opacity:.72}.advisor-top{display:flex;align-items:center;gap:12px;margin-bottom:18px}.advisor-avatar{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;font-weight:800;background:linear-gradient(135deg,#168cff,#2fd39b);color:white}.advisor-name{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.advisor-name h3{margin:0}.active-chip,.inactive-chip{font-size:11px;border-radius:999px;padding:4px 8px}.active-chip{background:rgba(47,211,155,.14);color:#63e6b7;border:1px solid rgba(47,211,155,.25)}.inactive-chip{background:rgba(255,91,115,.12);color:#ff8da0;border:1px solid rgba(255,91,115,.22)}.advisor-info{display:grid;grid-template-columns:1fr 1.5fr .7fr;gap:12px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.advisor-info small{display:block;color:var(--muted);margin-bottom:5px}.advisor-info b{font-size:13px;overflow-wrap:anywhere}.advisor-actions{display:flex;gap:10px;margin-top:16px}.advisor-actions button{flex:1}.secure-note{margin:0 20px 20px}
@media(max-width:900px){.advisor-grid{grid-template-columns:1fr}.advisor-info{grid-template-columns:1fr}.advisor-actions{flex-direction:column}}

/* v2.3 — botones de acción principales en verde oscuro */
#status button,
#comment button,
#assign button {
  background: linear-gradient(180deg,#14533f,#0d3f31);
  border: 1px solid #26785d;
  color: #f2fff9;
  border-radius: 9px;
  padding: 10px 16px;
  font-weight: 750;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 5px 14px rgba(0,0,0,.16);
  transition: background .16s ease,border-color .16s ease,transform .08s ease;
}
#status button:hover,
#comment button:hover,
#assign button:hover {
  background: linear-gradient(180deg,#19664d,#11503d);
  border-color: #32a079;
}
#status button:active,
#comment button:active,
#assign button:active { transform: translateY(1px); }
#status button:focus-visible,
#comment button:focus-visible,
#assign button:focus-visible { outline: 2px solid #45d6a1; outline-offset: 2px; }
