:root{--fondo: #f1f1f4;--panel: #ffffff;--lateral: #ececf0;--borde: #e3e3e9;--borde-suave: #efeff3;--texto: #17171c;--suave: #6b6b78;--tenue: #9a9aa6;--acento: #007aff;--acento-suave: #e8f2ff;--verde: #2f8f4e;--verde-suave: #e6f4ea;--ambar: #c48a12;--ambar-suave: #fbf1dc;--naranja: #e0661f;--naranja-suave: #fde9dd;--rojo: #d23c3c;--rojo-suave: #fbe5e5;--base: #b9b9c3;--sombra: 0 1px 2px rgba(20, 20, 40, .04);--radio: 14px;color-scheme:light}:root[data-theme=dark]{--fondo: #121216;--panel: #1b1b21;--lateral: #16161b;--borde: #2b2b33;--borde-suave: #24242b;--texto: #ececf1;--suave: #a0a0ad;--tenue: #74747f;--acento: #3d9bff;--acento-suave: #13283f;--verde: #4cb871;--verde-suave: #16301f;--ambar: #e0a83a;--ambar-suave: #352a12;--naranja: #f08a4b;--naranja-suave: #3a2216;--rojo: #f06464;--rojo-suave: #3b1b1b;--base: #5d5d68;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--fondo);color:var(--texto);font:14px/1.45 Manrope,system-ui,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:Sora,Manrope,sans-serif;font-weight:400;margin:0}h1{font-size:28px;letter-spacing:-.01em}h2{font-size:17px}a{color:var(--acento);text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}.app{display:grid;grid-template-columns:232px 1fr;min-height:100%}.lateral{background:var(--lateral);border-right:1px solid var(--borde);padding:18px 12px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh;overflow:auto}.marca{padding:4px 8px 18px}.marca b{font-family:Sora;font-size:17px;font-weight:600;display:block}.marca span{color:var(--suave);font-size:12px}.nav{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;color:var(--texto);font-weight:500}.nav:hover{background:#7f7f8c1a}.nav.activo{background:var(--panel);color:var(--acento);box-shadow:var(--sombra)}.nav .txt{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seccion{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--suave);padding:18px 10px 6px;font-weight:600}.pie-lateral{margin-top:auto;padding:10px;font-size:12px;color:var(--suave)}.principal{min-width:0}.cabecera{height:56px;display:flex;align-items:center;gap:10px;padding:0 20px;border-bottom:1px solid var(--borde);position:sticky;top:0;background:var(--fondo);z-index:5}.migas{flex:1;color:var(--suave)}.migas b{color:var(--texto);font-weight:600}.contenido{padding:24px 20px 40px;max-width:1240px}.tarjeta{background:var(--panel);border:1px solid var(--borde);border-radius:var(--radio);padding:18px;box-shadow:var(--sombra)}.tarjeta+.tarjeta{margin-top:16px}.tarjeta-cab{display:flex;align-items:baseline;gap:10px;margin-bottom:14px;flex-wrap:wrap}.tarjeta-cab .ayuda{color:var(--suave);font-size:12.5px}.tarjeta-cab .der{margin-left:auto}.icono{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--borde);background:var(--panel);cursor:pointer;position:relative}.burbuja{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--rojo);color:#fff;font-size:11px;font-weight:700;display:inline-grid;place-items:center}.icono .burbuja{position:absolute;top:-6px;right:-6px}.btn{border:1px solid var(--borde);background:var(--panel);border-radius:9px;padding:7px 12px;cursor:pointer;font-weight:600;font-size:13px}.btn:hover{border-color:var(--tenue)}.btn.primario{background:var(--acento);border-color:var(--acento);color:#fff}.btn.peligro{color:var(--rojo)}.btn:disabled{opacity:.5;cursor:default}.btn.chico{padding:4px 9px;font-size:12px}.etiqueta{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:99px;font-size:12px;font-weight:600}.etiqueta:before{content:"";width:6px;height:6px;border-radius:3px;background:currentColor}.e-verde{background:var(--verde-suave);color:var(--verde)}.e-ambar{background:var(--ambar-suave);color:var(--ambar)}.e-naranja{background:var(--naranja-suave);color:var(--naranja)}.e-rojo{background:var(--rojo-suave);color:var(--rojo)}.e-azul{background:var(--acento-suave);color:var(--acento)}.e-gris{background:var(--borde-suave);color:var(--suave)}.codigo{display:inline-block;background:var(--acento-suave);color:var(--acento);font-weight:600;font-size:12px;padding:2px 8px;border-radius:6px}.suave{color:var(--suave)}.rojo{color:var(--rojo)}.verde{color:var(--verde)}.ambar{color:var(--ambar)}.naranja{color:var(--naranja)}.error{background:var(--rojo-suave);color:var(--rojo);padding:10px 12px;border-radius:10px;font-size:13px}.aviso-info{background:var(--acento-suave);color:var(--texto);padding:10px 12px;border-radius:10px;font-size:13px}.cargando{color:var(--suave);padding:40px 0;text-align:center}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--suave);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--borde);white-space:nowrap}td{padding:10px;border-bottom:1px solid var(--borde-suave);vertical-align:middle}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.tabla-scroll{overflow-x:auto}.tabla-scroll table{min-width:560px}tr.total td{font-weight:700;background:var(--borde-suave)}tr.clic{cursor:pointer}tr.clic:hover td{background:var(--borde-suave)}.sub{display:block;color:var(--suave);font-size:12px}.barra{height:7px;border-radius:4px;background:var(--borde-suave);position:relative;min-width:80px}.barra>i{position:absolute;inset:0 auto 0 0;border-radius:4px;background:var(--acento)}.barra>em{position:absolute;top:-4px;width:2px;height:15px;background:var(--texto)}.proy-cab{display:flex;align-items:flex-start;gap:12px}.proy-cab h1{margin:6px 0 4px}.meta{color:var(--suave);display:flex;gap:16px;flex-wrap:wrap}.meta b{color:var(--texto);font-weight:600}.pestanas{display:flex;gap:4px;border-bottom:1px solid var(--borde);margin:22px 0 18px;overflow-x:auto}.pestana{padding:10px 14px;border:0;background:none;cursor:pointer;color:var(--suave);font-weight:500;font-size:15px;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;display:flex;gap:6px;align-items:center}.pestana.activa{color:var(--acento);border-bottom-color:var(--acento)}.kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:16px}.kpi{background:var(--panel);border:1px solid var(--borde);border-top:3px solid var(--c, var(--acento));border-radius:var(--radio);padding:14px 16px}.kpi small{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--suave);font-weight:600}.kpi .v{font-family:Sora;font-size:26px;margin:4px 0 6px}.kpi .v span{font-size:15px;color:var(--suave)}.kpi p{margin:0;color:var(--suave);font-size:12.5px}.rejilla-2{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:16px;align-items:start;margin-top:16px}.rejilla-2>div{min-width:0}.rejilla-2>div>.tarjeta+.tarjeta{margin-top:16px}.cal{display:grid;grid-template-columns:130px minmax(0,1fr) 300px;gap:0 14px;align-items:center}.cal .eje{position:relative;height:22px}.cal .eje{overflow:hidden}.cal .eje span{position:absolute;font-size:12px;color:var(--suave);transform:translate(-50%)}.cal .nom{font-weight:600;padding:7px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal .pista{position:relative;height:26px}.cal .pista .mes{position:absolute;top:-6px;bottom:-6px;border-left:1px solid var(--borde-suave)}.cal .b{position:absolute;top:5px;height:13px;border-radius:3px;background:color-mix(in srgb,var(--c) 22%,transparent);overflow:hidden}.cal .b i{position:absolute;inset:0 auto 0 0;background:var(--c)}.cal .lb{position:absolute;top:21px;height:2px;background:var(--base);border-radius:1px}.cal .hoy{position:absolute;top:-6px;bottom:-6px;border-left:1.5px dashed var(--texto);z-index:1}.cal .lado{display:grid;grid-template-columns:14px 1fr 1fr 1.2fr;gap:6px;font-size:13px;text-align:right;padding:0 10px;background:var(--borde-suave);height:100%;align-items:center}.cal .lado.cabl{font-size:11.5px;color:var(--suave)}.punto{width:9px;height:9px;border-radius:5px;background:var(--c)}.leyenda{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--suave);margin-top:14px}.leyenda span{display:inline-flex;align-items:center;gap:6px}.leyenda i{width:10px;height:10px;border-radius:3px;background:var(--c);display:inline-block}.aviso{display:flex;gap:12px;padding:10px 0 10px 12px;border-left:3px solid var(--c);margin-bottom:8px;align-items:center}.aviso .t{font-weight:600}.aviso .d{color:var(--suave);font-size:13px}.aviso>div{flex:1}.prox{display:grid;grid-template-columns:56px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--borde-suave)}.prox:last-child{border-bottom:0}.prox b{font-weight:600}.conv{display:flex;flex-direction:column;gap:14px;max-height:60vh;overflow-y:auto;padding-right:4px}.msg{display:grid;grid-template-columns:34px 1fr;gap:10px}.avatar{width:34px;height:34px;border-radius:17px;background:var(--acento-suave);color:var(--acento);display:grid;place-items:center;font-weight:700;font-size:12.5px}.msg .quien{font-weight:600}.msg .cuando{color:var(--tenue);font-size:12px;margin-left:8px}.msg .cuerpo{white-space:pre-wrap;margin-top:2px;overflow-wrap:anywhere}.msg .mencion{color:var(--acento);font-weight:600}.msg .acciones{font-size:12px;margin-top:2px}.msg .acciones button{border:0;background:none;color:var(--suave);cursor:pointer;padding:0 8px 0 0}.escribir{display:grid;gap:8px;margin-top:16px}.escribir textarea{width:100%;min-height:72px;resize:vertical;border:1px solid var(--borde);border-radius:10px;padding:10px;background:var(--panel)}.escribir .fila{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.campo{display:grid;gap:5px}.campo label{font-size:12.5px;font-weight:600;color:var(--suave)}.campo input,.campo select,select.fino,input.fino{border:1px solid var(--borde);border-radius:9px;padding:8px 10px;background:var(--panel);width:100%}.form{display:grid;gap:12px}.form-fila{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid var(--borde);border-radius:99px;padding:4px 11px;cursor:pointer;background:var(--panel);font-size:13px}.chip.on{background:var(--acento);border-color:var(--acento);color:#fff}.acceso{min-height:100%;display:grid;place-items:center;padding:20px}.acceso .tarjeta{width:100%;max-width:400px;padding:28px}.acceso h1{font-size:22px;margin-bottom:4px}.pendiente{text-align:center;padding:48px 20px;color:var(--suave)}.pendiente h2{color:var(--texto);margin-bottom:8px}.menu-movil{display:none}@media (max-width: 1100px){.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.rejilla-2{grid-template-columns:1fr}.cal{grid-template-columns:100px minmax(0,1fr)}.cal .lado{display:none}}@media (max-width: 760px){.app{grid-template-columns:1fr}.lateral{position:fixed;inset:0 auto 0 0;width:260px;z-index:20;transform:translate(-100%);transition:transform .2s}.lateral.abierto{transform:none;box-shadow:0 0 40px #00000040}.menu-movil{display:grid}.contenido{padding:18px 16px 32px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.tabla-scroll{overflow-x:auto}}
