:root{--bg:#0a0f1b;--panel:#121a2b;--panel2:#172238;--line:#25324c;--fg:#f0f5ff;--muted:#8d9db6;--accent:#8b5cf6;--accent2:#6d40ec;--aqua:#27dec2;--warn:#ffc46b;--red:#ff6988;--shadow:0 24px 60px rgba(0,0,0,.24)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);font:14px/1.5 Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--fg)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.48;cursor:not-allowed}a{color:#a6caff;text-decoration:none}.hidden{display:none!important}.app{min-height:100vh;display:flex}.sidebar{width:252px;min-width:252px;height:100vh;position:sticky;top:0;display:flex;flex-direction:column;padding:23px 14px 14px;background:linear-gradient(175deg,#151b31 0%,#10182a 75%);border-right:1px solid var(--line);z-index:30;overflow:auto}.sidebar-top{display:flex;justify-content:space-between;align-items:center;padding:0 8px 23px}.mini-brand{display:flex;align-items:center;gap:10px;font-size:15px;letter-spacing:.2px;white-space:nowrap}.mini-brand strong span{font-weight:500;color:#b9bcda}.brand-mark{width:33px;height:33px;display:inline-grid;place-items:center;background:linear-gradient(145deg,#9d74ff,#602fc2);border-radius:11px;font-size:22px;box-shadow:0 7px 18px #5f36c970;color:white}.company-badge{display:flex;align-items:center;gap:9px;background:#202943;padding:11px 9px;border:1px solid #32415c;border-radius:12px;margin-bottom:26px}.company-icon{border-radius:9px;background:#bbecff;color:#202544;font-size:11px;font-weight:900;padding:10px 6px}.company-badge strong{font-size:12px;display:block;max-width:133px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-badge small{display:block;color:#9caac1;font-size:9px;letter-spacing:1px}.company-chevron{margin-left:auto;color:#91a2c6}.nav-label{font-weight:700;color:#657794;font-size:10px;letter-spacing:1.9px;margin:0 13px 10px}.nav-extra{margin-top:25px}nav{display:flex;flex-direction:column;gap:3px}.nav-link{display:flex;align-items:center;text-align:left;width:100%;gap:13px;padding:12px 13px;border:0;border-radius:10px;color:#aab7ce;background:transparent;font-weight:600;font-size:12.5px;transition:.2s}.nav-link:hover,.nav-link.active{background:linear-gradient(95deg,#4c367c77,#39305b48);color:#fff}.nav-link.active{box-shadow:inset 3px 0 #b899ff}.nav-icon{font-size:22px;width:23px;text-align:center;font-weight:400;line-height:1}.nav-arrow{margin-left:auto;font-size:21px;color:#8c8cae}.sidebar-bottom{margin-top:auto;padding-top:20px}.side-live{display:flex;align-items:center;gap:9px;border-radius:12px;background:#142d2d;padding:12px 11px;color:#b4e3d2;margin-bottom:14px;border:1px solid #244c46}.side-live strong{font-size:11px;display:block}.side-live small{font-size:10px;display:block;color:#8fb5a9}.pulse-dot{display:inline-block;flex:none;width:8px;height:8px;border-radius:50%;background:#35e3ad;box-shadow:0 0 0 4px #26bf8d22;animation:pulse 2s infinite}.sidebar-profile{width:100%;display:flex;align-items:center;gap:10px;background:transparent;color:white;border:1px solid #2c3750;padding:9px 8px;border-radius:11px;text-align:left}.sidebar-profile>div:nth-child(2){flex:1;min-width:0}.sidebar-profile strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-profile small{color:#9ca8c0;font-size:11px}.user-avatar,.top-avatar{width:35px;height:35px;display:grid;place-items:center;flex:none;border-radius:50%;background:linear-gradient(150deg,#c08bff,#713ee7);color:#fff;font-weight:800}.sidebar-profile>span{font-size:24px;color:#96a6c0}.side-credit{text-align:center;margin:16px 2px 2px;color:#7584a2;font-size:10px}.side-credit b{color:#abb6d1}.main{min-width:0;flex:1;display:flex;flex-direction:column}.topbar{height:72px;display:flex;justify-content:space-between;align-items:center;padding:0 34px;border-bottom:1px solid var(--line);background:#0e1524;gap:12px;position:sticky;top:0;z-index:20}.top-left,.top-actions{display:flex;gap:19px;align-items:center}.breadcrumbs{color:#8291ad;font-size:11px;letter-spacing:1px;font-weight:800}.breadcrumbs span{color:#4b5870;margin:0 8px}.breadcrumbs strong{color:#e1ebfe}.top-date{font-size:12px;color:#97a4bb;text-transform:capitalize}.top-status{font-size:12px;color:#9fddca;display:flex;gap:9px;align-items:center}.top-avatar{width:33px;height:33px;font-size:12px}.page-content{width:100%;max-width:1700px;margin:0 auto;padding:32px 35px 38px;flex:1}.footer{color:#74829b;font-size:11px;text-align:center;padding:15px;border-top:1px solid var(--line)}.footer strong{color:#aebdd7}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:27px}.eyebrow{font-weight:800;color:#aa82f9;letter-spacing:2px;font-size:10px;text-transform:uppercase}.page-heading h1{font-size:clamp(24px,2.6vw,32px);letter-spacing:-1.2px;margin:7px 0 3px;line-height:1.15}.page-heading p,.subtext{margin:0;color:var(--muted);font-size:12px}.heading-actions{display:flex;align-items:center;gap:8px}.btn{padding:11px 17px;border-radius:10px;font-weight:700;letter-spacing:.05px;background:#25314a;color:#f4f6ff;border:1px solid #354765;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:40px;transition:transform .18s,box-shadow .2s,background .2s}.btn:hover{transform:scale(1.045);box-shadow:0 8px 22px #0004}.btn:active{transform:scale(.96);box-shadow:inset 0 3px 10px #0005}.btn-primary{border:1px solid #9972ff;color:#fff;background:linear-gradient(120deg,#8052f3,#6537d6);box-shadow:0 8px 21px #7c3aed29}.btn-sm{min-height:34px;padding:8px 11px;font-size:11px}.btn-ghost{background:transparent}.btn-danger{background:#492036;border-color:#73364f;color:#ffdce9}.btn-success{background:#114f47;border-color:#237b6b;color:#d4fff2}.icon-btn{background:#212e46;color:#fff;border:1px solid #34435f;border-radius:9px;min-width:37px;min-height:37px;font-size:18px;display:grid;place-items:center}.menu-btn,.close-menu{display:none}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:23px}.stat-card{padding:22px;background:var(--panel);border:1px solid var(--line);border-radius:15px;position:relative;overflow:hidden;min-height:142px;transition:.2s}.stat-card:hover,.card-hover:hover{border-color:#6c52a0;transform:translateY(-3px);box-shadow:var(--shadow)}.stat-card:after{content:'';position:absolute;width:160px;height:160px;right:-110px;top:-110px;background:#8c69ee15;border-radius:50%}.stat-top{display:flex;justify-content:space-between;align-items:center;color:#9aa9c2;font-size:11px;font-weight:600}.stat-icon{width:37px;height:37px;border-radius:10px;background:#312858;display:grid;place-items:center;color:#c3a3ff;font-size:23px}.stat-number{font-size:32px;font-weight:800;letter-spacing:-1px;margin:13px 0 1px}.stat-foot{color:#7c8ca8;font-size:10px}.stat-foot span{color:#4fd9ba}.layout-two{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(270px,1fr);gap:19px}.panel{border:1px solid var(--line);background:var(--panel);border-radius:16px;min-width:0;overflow:hidden}.panel-header{padding:19px 21px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-header h2,.section-title{font-size:15px;margin:0;letter-spacing:-.25px}.panel-header p{margin:4px 0 0;color:var(--muted);font-size:11px}.linkish{border:0;background:transparent;color:#bd9cff;font-weight:700}.list-rows{padding:0 18px 16px}.task-row{width:100%;display:flex;align-items:center;gap:11px;border:1px solid transparent;background:transparent;color:#e8f0ff;text-align:left;border-radius:11px;padding:13px 8px;transition:.2s}.task-row+ .task-row{border-top:1px solid #24314a}.task-row:hover{background:#1d2a43}.task-main{flex:1;min-width:0}.task-main strong{font-size:12px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-main small{color:#8597b3;font-size:10px}.task-avatar{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;font-size:13px;font-weight:900;color:white}.badge-status{border-radius:100px;padding:5px 8px;white-space:nowrap;font-size:10px;font-weight:700;display:inline-block;background:#343456;color:#b3b4f0}.status-pendiente{background:#403319;color:#ffda92}.status-en_progreso{background:#15384f;color:#9edbff}.status-aprobacion{background:#32285f;color:#d7c3ff}.status-correcciones{background:#4e2f25;color:#ffbea1}.status-completada{background:#17473f;color:#7ee3bd}.status-error{background:#4b2436;color:#ffc1c9}.agent-list-small{padding:0 18px 18px}.agent-mini{display:flex;align-items:center;gap:11px;padding:12px 2px;border-bottom:1px solid #24314a;cursor:pointer}.agent-mini:last-child{border:0}.agent-mini .mini-person{width:37px;height:37px;border-radius:11px;display:grid;place-items:center;font-size:19px}.agent-mini div:nth-child(2){flex:1;min-width:0}.agent-mini strong{display:block;font-size:12px}.agent-mini small{color:var(--muted);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.tag-online{color:#6ae1b7;font-size:10px}.hero-banner{display:flex;justify-content:space-between;align-items:center;background:radial-gradient(circle at 75% 0%,#8e65ea44,transparent 40%),linear-gradient(115deg,#302456,#1b2747);border:1px solid #56477c;border-radius:18px;padding:25px 30px;margin-bottom:23px;position:relative;overflow:hidden;gap:15px}.hero-banner h2{font-size:20px;margin:4px 0 7px}.hero-banner p{color:#bdc4da;font-size:12px;max-width:500px}.hero-orbit{font-size:68px;color:#b79cfb;text-shadow:0 0 35px #9674ff88;animation:floaty 3.5s ease-in-out infinite}.feature-pill{display:inline-flex;gap:7px;align-items:center;background:#271c45;border:1px solid #55447a;padding:6px 10px;border-radius:100px;font-size:10px;color:#d5c3fc;font-weight:700}.kanban{display:flex;gap:15px;min-height:460px;overflow-x:auto;padding-bottom:14px;scroll-snap-type:x proximity}.kanban-col{flex:0 0 265px;min-width:265px;border-radius:15px;background:#111a2b;border:1px solid #29364f;padding:13px;scroll-snap-align:start}.kanban-title{display:flex;justify-content:space-between;padding:6px 4px 16px;font-size:12px;font-weight:800}.kanban-title .counter{color:#9fb0ca;background:#25324a;border-radius:20px;padding:1px 7px}.task-tile{border:1px solid #303f59;background:#1b263b;padding:15px;border-radius:11px;cursor:pointer;margin-bottom:10px;transition:.18s}.task-tile:hover{border-color:#8e6fe9;box-shadow:0 10px 24px #0004;transform:translateY(-2px)}.task-tile strong{font-size:12px;display:block;line-height:1.4;margin:9px 0}.task-tile p{margin:0;font-size:11px;color:#99a8c1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tile-bottom{display:flex;justify-content:space-between;align-items:center;color:#8899b2;font-size:10px;margin-top:14px;border-top:1px solid #30415b;padding-top:10px}.priority{font-size:9px;font-weight:800;border-radius:5px;padding:3px 6px;background:#253754;color:#c1cfea}.priority-alta{background:#4d2737;color:#ffacbe}.priority-baja{background:#1c4138;color:#78dabb}.empty{color:#72819b;text-align:center;padding:30px 15px;font-size:12px}.agent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.agent-card{position:relative;padding:22px;background:#151f34;border:1px solid #2a3953;border-radius:16px;transition:.2s}.agent-card-head{display:flex;align-items:center;gap:14px}.agent-portrait{position:relative;width:60px;height:60px;border-radius:15px;display:grid;place-items:center;font-size:31px;color:white;background:linear-gradient(140deg,var(--agent),#1e2642);box-shadow:inset 0 1px #ffffff39}.agent-card h3{font-size:15px;margin:0}.agent-card .role{font-size:11px;color:#a8b5d0;margin:3px 0}.agent-card p{font-size:11px;color:#a9b9d3;line-height:1.7;min-height:55px;margin:15px 0}.agent-actions{display:flex;gap:8px;flex-wrap:wrap}.state-dot{width:7px;height:7px;background:#49dcb1;display:inline-block;border-radius:50%;margin-right:4px}.office-wrap{min-height:555px;position:relative;background:radial-gradient(circle at 50% 20%,#243a65,#101828 60%);border-radius:17px;border:1px solid #32405c;overflow:hidden}.office-canvas{height:500px;position:relative}.office-canvas canvas{display:block;width:100%;height:100%;touch-action:pan-y}.office-badge{position:absolute;top:16px;left:16px;z-index:2;background:#141e32dc;border:1px solid #40526c;padding:10px 12px;border-radius:11px;backdrop-filter:blur(10px);pointer-events:none}.office-badge strong{display:block;font-size:12px}.office-badge small{font-size:10px;color:#9eafc6}.office-controls{position:absolute;right:16px;bottom:16px;display:flex;gap:7px;z-index:2}.office-caption{position:absolute;left:16px;bottom:20px;color:#9caeca;font-size:11px;z-index:2;background:#10182ab5;padding:7px 12px;border-radius:9px}.office-fallback{height:100%;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:13px;padding:40px}.mini-desk{padding:25px 18px;background:#1c2942;border:1px solid #394b70;border-radius:13px;text-align:center;min-width:124px;cursor:pointer;transition:.2s}.mini-desk:hover{transform:scale(1.06);border-color:#9d7bf5}.mini-desk b{display:block;font-size:12px}.mini-desk span{font-size:30px}.office-legend{display:flex;flex-wrap:wrap;align-items:center;gap:16px;color:#92a6c4;font-size:11px;margin-top:15px}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;color:#8194b1;font-size:10px;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid #2b3952;padding:13px 15px}.data-table td{padding:15px;border-bottom:1px solid #25344d;color:#dbe6f9;font-size:12px}.data-table tr:last-child td{border-bottom:0}.actions-inline{display:flex;gap:6px}.chat-layout{height:min(690px,78vh);min-height:485px;display:grid;grid-template-columns:250px minmax(0,1fr);overflow:hidden;background:#121c30;border:1px solid #2e3d59;border-radius:16px}.chat-sidebar{border-right:1px solid #2f3c55;overflow-y:auto}.chat-agent{padding:14px 13px;display:flex;align-items:center;gap:11px;border-bottom:1px solid #29374f;background:transparent;color:#d1ddf0;width:100%;text-align:left;cursor:pointer;border-top:0;border-left:0;border-right:0}.chat-agent.selected,.chat-agent:hover{background:#2c2751}.chat-agent span:nth-child(2){min-width:0;flex:1}.chat-agent strong{display:block;font-size:12px}.chat-agent small{display:block;font-size:10px;color:#8c9db8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-main{display:flex;flex-direction:column;min-width:0}.chat-header{padding:13px 20px;border-bottom:1px solid #2c3b57;display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-title{display:flex;gap:10px;align-items:center}.chat-title strong{font-size:13px;display:block}.chat-title small{font-size:10px;color:#94a7c3}.messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:13px;padding:24px 21px}.message{max-width:min(85%,650px);padding:13px 16px;border-radius:14px;border:1px solid #34425d;background:#1c2a42;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.65}.message.humano{align-self:flex-end;background:#523c90;border-color:#6b55a9}.message.agente{align-self:flex-start}.message small{font-size:9px;display:block;color:#b5c2db;margin-bottom:5px;font-weight:800}.chat-form{padding:13px;display:flex;gap:9px;border-top:1px solid #30405b}.chat-form textarea{flex:1;min-width:0;resize:none;max-height:105px}.form-control,textarea,select,input:not([type=checkbox]):not([type=color]){background:#0e1627;color:#f4f7ff;border:1px solid #354560;border-radius:10px;padding:11px 13px;width:100%;outline:none;transition:border-color .2s}input:focus,textarea:focus,select:focus{border-color:#9d7bff!important;box-shadow:0 0 0 3px #7c3aed1f}.modal-root{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:15px}.modal-backdrop{position:absolute;inset:0;background:#040714d9;backdrop-filter:blur(5px)}.modal-dialog{position:relative;width:min(650px,100%);max-height:min(90vh,900px);display:flex;flex-direction:column;background:#161f32;border:1px solid #3b4a66;border-radius:19px;box-shadow:0 30px 100px #000b;overflow:hidden}.modal-header{padding:19px 23px;border-bottom:1px solid #31405b;display:flex;justify-content:space-between;align-items:center}.modal-header h2{font-size:20px;margin:4px 0 0}.modal-body{padding:22px 23px;overflow:auto}.modal-body label,.settings-grid label{color:#c8d5ec;font-weight:700;font-size:11px;display:block;margin-bottom:14px}.modal-body label input,.modal-body label select,.modal-body label textarea,.settings-grid label input,.settings-grid label select{margin-top:6px}.modal-body textarea{min-height:95px;resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label{min-width:0}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px;flex-wrap:wrap}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.settings-panel{padding:22px}.settings-panel .settings-grid{margin-top:15px}.settings-panel p{color:#9aaac5;font-size:12px}.setting-hint{background:#1c2c47;border-left:3px solid #9268ff;padding:14px;font-size:11px;line-height:1.7;color:#cbd9ec;margin:13px 0;border-radius:6px}.setting-hint code{color:#fff;word-break:break-all}.toggle-row{display:flex!important;align-items:center;gap:9px;font-size:12px!important;font-weight:500!important}.toggle-row input{width:16px;height:16px;accent-color:#8c62ed;flex:none}.empty-note{padding:40px;color:#9eb1cd;text-align:center}.result-text{white-space:pre-wrap;overflow-wrap:anywhere;color:#d8e6fa;background:#0c1526;border:1px solid #2a3953;padding:18px;border-radius:10px;line-height:1.7;font-size:12px;max-height:50vh;overflow:auto}.toast{position:fixed;right:22px;bottom:20px;max-width:420px;padding:13px 18px;background:#234b40;border:1px solid #43aa92;border-radius:11px;color:#edfff8;box-shadow:var(--shadow);z-index:200;font-size:13px}.toast.error{background:#582838;border-color:#a85472}.auth-page{min-height:100vh;display:grid;grid-template-columns:1.15fr 1fr;background:#0a0f1e}.auth-art{position:relative;overflow:hidden;background:radial-gradient(circle at 30% 35%,#5d3ebc77,transparent 47%),radial-gradient(circle at 80% 70%,#2966ad55,transparent 40%),#10182e;display:flex;align-items:end;padding:8%;min-height:100vh}.auth-art:before{content:'';position:absolute;inset:12%;opacity:.2;background-image:linear-gradient(#bfb6ff33 1px,transparent 1px),linear-gradient(90deg,#bfb6ff33 1px,transparent 1px);background-size:45px 45px;transform:perspective(400px) rotateX(30deg)}.auth-art-content{z-index:1;position:relative}.auth-art h1{font-size:clamp(35px,4.8vw,71px);line-height:1.1;letter-spacing:-2.6px;margin:12px 0 20px}.auth-art h1 em{font-style:normal;background:linear-gradient(120deg,#fff,#a78bfa);background-clip:text;color:transparent}.auth-art p{font-size:15px;color:#c7d2ef;max-width:500px}.auth-chip-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:32px}.auth-chip-row span{padding:8px 12px;background:#1c2b4a88;border:1px solid #515f88;border-radius:50px;font-size:10px}.auth-emoji{position:absolute;top:16%;right:15%;font-size:clamp(100px,14vw,220px);color:#bb9aff55;filter:drop-shadow(0 0 40px #a86fff);animation:floaty 4s ease-in-out infinite}.auth-form-wrap{display:grid;place-items:center;padding:24px}.auth-card{width:min(410px,100%)}.auth-card>.mini-brand{margin-bottom:58px}.auth-card h2{font-size:30px;margin:10px 0 3px;letter-spacing:-1px}.auth-card>p{color:#98a8c4;margin-bottom:32px}.auth-card label:not(.toggle-row){display:block;font-weight:700;font-size:12px;margin-bottom:17px}.auth-card label input{display:block;margin-top:8px}.auth-card .toggle-row{margin-top:2px;margin-bottom:16px}.auth-submit{width:100%;justify-content:space-between;padding:15px 18px}.safe-note{text-align:center;font-size:11px;color:#7889a5;margin-top:23px}.error-line{font-size:12px;color:#ff8ba7;margin:7px 0;min-height:15px}.orb{position:absolute;border-radius:50%;filter:blur(60px);opacity:.25}.orb-a{width:270px;height:270px;background:#925eff;top:0;left:0}.orb-b{width:300px;height:300px;background:#329ff1;bottom:0;right:0}.mobile-overlay{display:none}@keyframes pulse{50%{box-shadow:0 0 0 8px #2acaa71e}}@keyframes floaty{50%{transform:translateY(-15px)}}
@media(max-width:1200px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.agent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.top-date{display:none}.page-content{padding:25px}.sidebar{width:225px;min-width:225px}.layout-two{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.sidebar{position:fixed;height:100dvh;top:0;left:0;transform:translateX(-110%);transition:transform .22s;width:min(300px,88vw);min-width:0}.sidebar.show{transform:translateX(0)}.mobile-overlay.show{display:block;position:fixed;inset:0;background:#020716b8;z-index:25}.menu-btn,.close-menu{display:grid}.topbar{padding:0 18px}.layout-two{grid-template-columns:1fr}.page-content{padding:22px}.auth-page{grid-template-columns:1fr}.auth-art{min-height:320px;padding:8%}.auth-art-content{max-width:600px}.auth-art h1{font-size:42px}.auth-form-wrap{padding:48px 22px}.auth-card>.mini-brand{margin-bottom:38px}.auth-emoji{top:8%;right:8%;font-size:100px}}
@media(max-width:600px){.topbar{height:65px;padding:0 12px}.breadcrumbs{font-size:10px}.breadcrumbs strong{display:none}.top-actions{gap:8px}.top-status{display:none}.top-avatar{display:none}.page-content{padding:16px 13px 28px}.page-heading{align-items:start;flex-wrap:wrap;margin-bottom:20px}.page-heading h1{font-size:27px}.heading-actions{width:100%}.stat-grid{gap:10px}.stat-card{padding:15px;min-height:130px}.stat-number{font-size:26px}.stat-top{font-size:10px}.stat-icon{width:31px;height:31px;font-size:17px}.hero-banner{padding:19px}.hero-orbit{display:none}.agent-grid{grid-template-columns:1fr;gap:10px}.agent-card{padding:17px}.office-wrap{min-height:450px}.office-canvas{height:420px}.office-caption{font-size:10px;bottom:60px;left:9px}.office-badge{top:9px;left:9px}.office-controls{right:9px;bottom:9px}.chat-layout{grid-template-columns:90px minmax(0,1fr);height:calc(100dvh - 210px);min-height:390px}.chat-sidebar{width:90px}.chat-agent{display:flex;flex-direction:column;justify-content:center;padding:10px 3px;gap:4px;text-align:center}.chat-agent strong{font-size:10px}.chat-agent small{display:none}.chat-agent .mini-person{width:35px!important;height:35px!important}.messages{padding:13px 9px}.message{max-width:96%;padding:9px 11px}.chat-header{padding:10px}.chat-form{padding:8px;gap:5px}.chat-form .btn{font-size:11px;padding:8px}.chat-form textarea{font-size:12px}.form-grid,.settings-grid{grid-template-columns:1fr}.modal-body{padding:15px}.modal-header{padding:16px}.modal-dialog{max-height:93dvh}.data-table{min-width:550px}.table-scroller{overflow-x:auto}.footer{font-size:10px}.auth-art{min-height:270px}.auth-art h1{font-size:35px}.auth-art p{font-size:12px}.auth-chip-row{margin-top:10px}.auth-chip-row span{font-size:9px}.top-left{gap:6px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* V1.0.1: estados de chat y ajustes de lectura en pantallas pequeñas. */
.chat-load-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;margin:auto;padding:20px;max-width:430px;color:#e6ebff}
.chat-load-error strong{font-size:15px}
.chat-load-error p{font-size:13px;color:#f9a5b5;overflow-wrap:anywhere;margin:0}
.chat-form .btn:disabled{opacity:.75;cursor:progress}
@media(max-width:600px){
 .chat-layout{height:clamp(420px,calc(100dvh - 265px),720px);min-height:420px;grid-template-columns:77px minmax(0,1fr)}
 .chat-sidebar{width:77px}
 .chat-agent{min-height:76px}
 .chat-header{padding:11px 9px}
 .chat-title{min-width:0}
 .chat-title strong{font-size:12px}
 .chat-title small{font-size:9px;overflow-wrap:anywhere}
 .chat-header>.tag-online{font-size:9px;max-width:80px;text-align:right}
 .chat-form{padding:8px;gap:6px;align-items:stretch}
 .chat-form textarea{min-height:56px;max-height:110px;font-size:13px}
 .chat-form .btn{width:72px;min-width:72px;font-size:11px;padding:7px 5px}
 .page-heading{gap:8px}
 .page-heading h1{font-size:25px}
}


/* V1.0.2 — CHAT RESPONSIVE REAL / CORRECCIÓN DE RECORTE */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.app.chat-active{height:var(--ec-visible-height,100dvh);min-height:0;overflow:hidden}
.app.chat-active .main{height:100%;min-height:0;overflow:hidden}
.app.chat-active .topbar,.app.chat-active .footer{flex-shrink:0}
.app.chat-active .page-content.chat-page{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;padding-bottom:12px}
.chat-page .page-heading{flex:0 0 auto;margin-bottom:14px}
.app.chat-active .chat-layout{flex:1 1 auto;min-height:0;height:auto;max-height:none;overflow:hidden;grid-template-rows:minmax(0,1fr)}
.app.chat-active .chat-main{min-height:0;overflow:hidden;display:flex;flex-direction:column}
.app.chat-active .messages{flex:1 1 auto;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#62548d transparent;display:flex;flex-direction:column;gap:12px}
.app.chat-active .chat-sidebar{min-height:0;min-width:0;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#514f82 transparent}
.app.chat-active .chat-header,.app.chat-active .chat-form{flex:0 0 auto;min-width:0}
.chat-header-actions{display:flex;align-items:center;gap:11px;flex-shrink:0}
.chat-header-actions .tag-online{white-space:nowrap}
.chat-title{min-width:0;overflow:hidden}
.chat-title>div{min-width:0}
.chat-title strong,.chat-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-jump{color:#dfd0ff;background:#332a54;border:1px solid #574579;border-radius:9px;padding:6px 9px;font-size:11px;font-weight:700;cursor:pointer;white-space:nowrap;min-height:32px}
.chat-jump:hover{background:#504079}
.chat-form{align-items:stretch;background:#131d30;gap:9px}
.chat-form textarea{height:60px;min-height:56px;max-height:100px;resize:vertical;font-size:16px;line-height:1.4}
.chat-form .btn{flex:0 0 auto;min-width:89px}
.message{flex:0 0 auto;min-width:0;font-size:13px}
.message small{font-size:10px}
.chat-agent:focus-visible,.chat-jump:focus-visible{outline:2px solid #bc9dff;outline-offset:-2px}
.chat-form:focus-within{border-top-color:#7555ad}
@media(max-width:900px){
 .app.chat-active .page-content.chat-page{padding:14px 14px 9px}
 .chat-page .page-heading h1{font-size:24px;letter-spacing:-.6px}
 .chat-page .page-heading p{line-height:1.35}
}
@media(max-width:600px){
 .app.chat-active .topbar{height:60px;min-height:60px}
 .app.chat-active .footer{font-size:10px;line-height:1.3;padding:7px 8px}
 .app.chat-active .page-content.chat-page{padding:10px 8px 8px}
 .chat-page .page-heading{margin:0 5px 9px}
 .chat-page .page-heading .eyebrow{font-size:9px;letter-spacing:1px}
 .chat-page .page-heading h1{font-size:21px;margin:2px 0}
 .chat-page .page-heading p{font-size:11px;line-height:1.25}
 .app.chat-active .chat-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:76px minmax(0,1fr);border-radius:14px;min-height:0;height:auto}
 .app.chat-active .chat-sidebar{width:100%;height:76px;display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;border-right:0;border-bottom:1px solid #2f3c55;touch-action:pan-x}
 .app.chat-active .chat-agent{flex:0 0 85px;width:85px;min-width:85px;max-width:85px;height:75px;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:7px 4px;border-bottom:0;border-right:1px solid #29374f;font-size:11px}
 .app.chat-active .chat-agent .mini-person{width:32px!important;height:32px!important;font-size:19px!important}
 .app.chat-active .chat-agent strong{font-size:10px;line-height:1.12;overflow-wrap:anywhere;text-align:center}
 .app.chat-active .chat-main{min-height:0}
 .app.chat-active .chat-header{padding:7px 10px;min-height:54px}
 .app.chat-active .chat-title .mini-person{width:30px!important;height:30px!important}
 .chat-header-actions{gap:5px}
 .chat-header-actions .tag-online{display:none}
 .chat-jump{font-size:10px;padding:6px 8px;min-height:30px}
 .app.chat-active .messages{padding:11px 9px;gap:10px}
 .app.chat-active .message{max-width:96%;padding:10px 11px;font-size:13px;line-height:1.48}
 .app.chat-active .chat-form{padding:8px;gap:7px;padding-bottom:max(8px,env(safe-area-inset-bottom))}
 .app.chat-active .chat-form textarea{font-size:16px;min-height:52px;height:54px;max-height:92px;padding:9px}
 .app.chat-active .chat-form .btn{width:76px;min-width:76px;max-width:76px;font-size:12px;padding:6px 5px}
}
@media(max-width:380px){
 .app.chat-active .topbar{padding:0 9px}
 .app.chat-active .page-content.chat-page{padding:8px 5px}
 .app.chat-active .chat-form .btn{min-width:66px;width:66px}
 .chat-page .page-heading h1{font-size:19px}
}
@media(max-height:560px) and (max-width:600px){
 .app.chat-active .page-content.chat-page{padding-top:5px;padding-bottom:4px}
 .chat-page .page-heading{margin-bottom:4px}
 .chat-page .page-heading .eyebrow,.chat-page .page-heading p{display:none}
 .chat-page .page-heading h1{font-size:17px;margin:0}
 .app.chat-active .footer{display:none}
 .app.chat-active .chat-layout{grid-template-rows:58px minmax(0,1fr)}
 .app.chat-active .chat-sidebar{height:58px}
 .app.chat-active .chat-agent{height:57px}
 .app.chat-active .chat-agent .mini-person{width:26px!important;height:26px!important}
 .app.chat-active .chat-header{min-height:42px}
}

/* Oficina Virtual IA V1.1.0 — Centro multagente y productividad */
.mission-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}
.mission-stats>div{background:#131d31;border:1px solid #2b3854;border-radius:14px;padding:17px;min-width:0;display:flex;flex-direction:column;gap:4px}
.mission-stats strong{font-size:27px;line-height:1.2;color:#f3efff;font-variant-numeric:tabular-nums}
.mission-stats span{font-size:12px;color:#a5b5ce}
.mission-intro{padding:17px 20px;border:1px solid #5e448c;background:linear-gradient(105deg,#2a2150,#151e3a);border-radius:16px;margin-bottom:19px}
.mission-intro span{font-size:13px;font-weight:800;color:#d8bfff}
.mission-intro p{margin:7px 0 0;color:#c8d4e9;max-width:980px;font-size:13px}
.mission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.mission-card{display:flex;flex-direction:column;gap:10px;padding:19px 20px;background:#141e32;border-radius:17px;border:1px solid #2e3c56;min-width:0;box-shadow:0 12px 25px rgba(0,0,0,.08);transition:transform .18s,border-color .18s}
.mission-card:hover{transform:translateY(-2px);border-color:#7653b6}
.mission-card h3{font-size:18px;line-height:1.3;margin:0;color:#f5f7ff;overflow-wrap:anywhere}
.mission-card p{color:#aabbd3;font-size:12px;line-height:1.6;max-height:4.7em;overflow:hidden;margin:0;overflow-wrap:anywhere}
.mission-card-head,.mission-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.mission-card-head{align-items:start}
.mission-type{font-size:11px;font-weight:700;color:#bca8ff;max-width:60%}
.mission-state{font-size:10px;font-weight:800;border-radius:100px;padding:6px 10px;white-space:nowrap;background:#283451;color:#d7e4ff}
.mission-state.mission-completada,.mission-state.mission-completado{background:#153b39;color:#61e8bf}
.mission-state.mission-en_curso,.mission-state.mission-en_progreso{background:#46345f;color:#e2cbff}
.mission-state.mission-error{background:#4b2533;color:#ffb1bb}
.mission-meta{font-size:11px;color:#92a4c2;overflow-wrap:anywhere}
.mission-progress{height:9px;background:#0b1324;border-radius:20px;overflow:hidden;margin-top:auto}
.mission-progress>div{height:100%;border-radius:20px;background:linear-gradient(90deg,#8353ff,#3be2c5);transition:width .3s}
.mission-bottom{color:#c1cce1;font-size:11px}
.mission-bottom .btn{min-width:102px;justify-content:center}
.empty-state-mission{padding:36px;border:1px dashed #414d66;border-radius:15px;color:#d6deed;grid-column:1/-1;text-align:center}
.empty-state-mission p{color:#9dafcc;font-size:13px}
.mission-detail{display:grid;gap:15px;min-width:0}
.mission-detail-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.mission-detail h2{font-size:20px;margin:0;overflow-wrap:anywhere}
.mission-stages{display:grid;gap:12px}
.mission-stage{border:1px solid #2a3955;border-radius:14px;background:#101a2b;padding:14px;min-width:0}
.stage-top{display:flex;align-items:center;gap:12px;min-width:0}
.stage-top>div{flex:1;min-width:0}
.stage-top strong,.stage-top small{display:block;overflow-wrap:anywhere}
.stage-top strong{font-size:13px;color:#f2f5ff}
.stage-top small{font-size:11px;color:#a1b4cb}
.stage-number{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:9px;background:#3d2c6e;font-weight:800;color:#e1d4ff}
.stage-result{margin:12px 0 0}
.stage-result summary{cursor:pointer;font-size:12px;font-weight:700;color:#bea9ff}
.stage-result .result-text{margin-top:9px;max-height:350px;overflow:auto;overscroll-behavior:contain}
.mission-error{color:#ffbdc6;font-size:12px;overflow-wrap:anywhere}
.mission-success{background:#14392f;border:1px solid #23665b;border-radius:10px;padding:13px;color:#b7ffdb;font-size:12px}
.mission-filter-panel{margin-bottom:15px;display:flex;gap:12px;align-items:center}
.mission-filter-panel input{background:#131d30;color:#f3f7ff;border:1px solid #34425f;border-radius:12px;padding:12px 15px;width:min(440px,100%);min-width:0;outline:none}
.mission-filter-panel input:focus{border-color:#9468ef;box-shadow:0 0 0 3px #8b5cf62d}
.chat-header-actions{min-width:0}
.chat-header-actions .chat-jump{font-size:11px;flex-shrink:0}
.chat-header-actions a.chat-jump{text-decoration:none;display:inline-flex;align-items:center}
@media(max-width:1000px){.mission-grid{grid-template-columns:1fr}}
@media(max-width:700px){.mission-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.mission-stats>div{padding:13px}.mission-stats strong{font-size:22px}.mission-grid{gap:11px}.mission-card{padding:15px}.mission-intro{padding:14px}.mission-detail h2{font-size:18px}}
@media(max-width:600px){
 .chat-header{flex-wrap:wrap;gap:7px}
 .chat-header-actions{width:100%;justify-content:flex-end;gap:5px}
 .chat-header-actions .chat-jump{font-size:10px;padding:5px 7px;min-height:28px}
 .app.chat-active .chat-header{padding:7px 10px}
 .mission-stats span{font-size:10px}
 .mission-card h3{font-size:16px}
 .stage-top{flex-wrap:wrap}
 .stage-top .mission-state{margin-left:auto}
 .mission-detail .modal-actions{justify-content:flex-start;gap:7px}
}
@media(max-width:370px){.chat-header-actions .chat-jump{font-size:9px;padding:5px 6px}}

/* V1.1.0 Chat: vistas rápidas y copiar código en todos los dispositivos */
.chat-tools{display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding:8px 12px;border-bottom:1px solid #283752;background:#101a2c;min-width:0;flex-shrink:0}
.chat-tool,.chat-message-actions button,.code-copy,.artifact-controls a{cursor:pointer;border:1px solid #465478;color:#e4dcff;background:#272348;border-radius:9px;padding:8px 10px;font-size:11px;font-weight:700;text-decoration:none}
.chat-tool:hover,.chat-message-actions button:hover,.code-copy:hover,.artifact-controls a:hover{background:#4b347a;color:#fff}
.chat-tool-note{color:#94a6c2;font-size:10px;flex:1 1 150px;line-height:1.35}.chat-mode-picker{display:flex;align-items:center;gap:7px;font-size:11px;color:#dbe7fb;font-weight:700;background:#101a2c;border:1px solid #334567;border-radius:10px;padding:6px 8px}.chat-mode-picker select{width:auto;min-width:128px;padding:7px 32px 7px 9px;font-size:11px;background:#0d1525}
.chat-text-segment{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}
.message:has(.chat-code){max-width:min(94%,780px)}
.chat-code{margin:10px 0;background:#080d19;border:1px solid #546079;border-radius:12px;overflow:hidden;max-width:100%;font-size:12px}
.chat-code header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;background:#17223a}
.chat-code header span{font:700 11px monospace;color:#a9c7f4}
.chat-code pre{margin:0;padding:12px;overflow:auto;max-width:100%;font-size:12px;line-height:1.5;white-space:pre;color:#e4eafa;user-select:text}
.chat-code code{user-select:text}
.chat-message-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}
.chat-artifact{display:grid;gap:7px;padding:12px;margin-top:10px;border:1px solid #48638b;border-radius:12px;background:#122743;color:#f0f3ff;font-size:12px;min-width:0}
.chat-artifact img{display:block;width:min(100%,300px);max-height:250px;object-fit:contain;border-radius:8px}
.artifact-controls{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:600px){.app.chat-active .chat-header{gap:7px}.app.chat-active .chat-tools{gap:5px;padding:6px}.chat-tool{padding:6px 7px;font-size:10px}.chat-tool-note{display:none}.chat-mode-picker{padding:5px 6px;font-size:10px}.chat-mode-picker select{min-width:96px;font-size:10px;padding:6px 24px 6px 7px}.app.chat-active .chat-form textarea{min-width:0}.chat-code pre{font-size:11px}.chat-code header{padding:6px 8px}.chat-message-actions button{font-size:10px;padding:7px}}

.chat-artifact-archive{background:#17223b;border:1px solid #405179;border-radius:12px;padding:12px;margin:10px 0;display:grid;gap:8px;color:#f1eaff}.chat-artifact-archive>.chat-artifact{margin:0}.stage-result button{margin-top:10px}
