:root{--white: #ffffff;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--navy-700: #1e3a5f;--navy-800: #162f4a;--navy-900: #0f2440;--navy-950: #0f172a;--blue-50: #eff6ff;--blue-100: #dbeafe;--blue-200: #bfdbfe;--blue-300: #93c5fd;--blue-400: #60a5fa;--blue-500: #3b82f6;--blue-600: #2563eb;--blue-700: #1d4ed8;--blue-800: #1e40af;--blue-900: #1e3a8a;--sky-50: #f0f9ff;--sky-100: #e0f2fe;--sky-200: #bae6fd;--sky-300: #7dd3fc;--sky-400: #38bdf8;--sky-500: #0ea5e9;--sky-700: #0369a1;--sky-900: #0c4a6e;--cyan-50: #ecfeff;--cyan-100: #cffafe;--cyan-200: #a5f3fc;--cyan-300: #67e8f9;--cyan-400: #22d3ee;--cyan-500: #06b6d4;--cyan-600: #0891b2;--cyan-700: #0e7490;--cyan-800: #155e75;--teal-50: #f0fdfa;--teal-100: #ccfbf1;--teal-200: #99f6e4;--teal-400: #2dd4bf;--teal-500: #14b8a6;--teal-700: #0f766e;--teal-800: #115e59;--teal-900: #134e4a;--emerald-50: #ecfdf5;--emerald-100: #d1fae5;--emerald-200: #a7f3d0;--emerald-300: #6ee7b7;--emerald-400: #34d399;--emerald-500: #10b981;--emerald-600: #059669;--emerald-700: #047857;--emerald-800: #065f46;--green-50: #f0fdf4;--green-100: #dcfce7;--green-200: #bbf7d0;--green-300: #86efac;--green-400: #4ade80;--green-500: #22c55e;--green-600: #16a34a;--green-700: #15803d;--green-800: #166534;--yellow-50: #fefce8;--yellow-100: #fef9c3;--yellow-200: #fef08a;--yellow-300: #fde047;--yellow-400: #facc15;--yellow-500: #eab308;--yellow-700: #a16207;--yellow-800: #854d0e;--amber-50: #fffbeb;--amber-100: #fef3c7;--amber-200: #fde68a;--amber-300: #fcd34d;--amber-400: #fbbf24;--amber-500: #f59e0b;--amber-600: #d97706;--amber-700: #b45309;--amber-800: #92400e;--amber-900: #78350f;--orange-50: #fff7ed;--orange-100: #ffedd5;--orange-200: #fed7aa;--orange-300: #fdba74;--orange-400: #fb923c;--orange-500: #f97316;--orange-600: #ea580c;--orange-700: #c2410c;--orange-800: #9a3412;--orange-900: #7c2d12;--red-50: #fef2f2;--red-100: #fee2e2;--red-200: #fecaca;--red-300: #fca5a5;--red-400: #f87171;--red-500: #ef4444;--red-600: #dc2626;--red-700: #b91c1c;--red-800: #991b1b;--red-900: #7f1d1d;--indigo-50: #eef2ff;--indigo-100: #e0e7ff;--indigo-200: #c7d2fe;--indigo-300: #a5b4fc;--indigo-400: #818cf8;--indigo-500: #6366f1;--indigo-600: #4f46e5;--indigo-700: #4338ca;--indigo-800: #3730a3;--violet-50: #f5f3ff;--violet-100: #ede9fe;--violet-200: #ddd6fe;--violet-300: #c4b5fd;--violet-400: #a78bfa;--violet-500: #8b5cf6;--violet-600: #7c3aed;--violet-700: #6d28d9;--violet-800: #5b21b6;--violet-900: #4c1d95;--purple-50: #faf5ff;--purple-100: #f3e8ff;--purple-200: #e9d5ff;--purple-400: #c084fc;--purple-500: #a855f7;--purple-800: #6b21a8;--whatsapp: #25d366;--whatsapp-dark: #128c7e;--primary: var(--blue-700);--primary-dark: var(--blue-800);--primary-light: var(--blue-500);--primary-bg: var(--blue-50);--secondary: var(--navy-950);--secondary-light: var(--navy-700);--success: var(--emerald-600);--success-light: var(--emerald-100);--warning: var(--amber-500);--warning-light: var(--amber-100);--danger: var(--red-600);--danger-light: var(--red-100);--info: var(--cyan-600);--info-light: var(--cyan-100);--bg-app: var(--gray-100);--surface: var(--white);--surface-sunken: var(--gray-50);--border: var(--gray-200);--border-strong: var(--gray-300);--text: var(--gray-800);--text-strong: var(--gray-900);--text-muted: var(--gray-500);--text-subtle: var(--gray-400);--sidebar-bg-start: var(--navy-950);--sidebar-bg-end: var(--navy-700);--sidebar-width: 260px;--sidebar-collapsed-width: 70px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--text-2xs: 11px;--text-xs: 12px;--text-sm: 13px;--text-base: 14px;--text-md: 15px;--text-lg: 16px;--text-xl: 18px;--text-2xl: 20px;--text-3xl: 24px;--text-4xl: 28px;--leading-tight: 1.25;--leading-normal: 1.5;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .15);--focus-ring: 0 0 0 3px rgba(59, 130, 246, .35);--transition-fast: .15s ease;--transition-normal: .3s ease;--bg-card: var(--surface);--bg-main: var(--surface-sunken);--text-dark: var(--text);--text-gray: var(--text-muted);--text-light: var(--text-subtle)}:root[data-theme=dark]{color-scheme:dark;--gray-50: #172033;--gray-100: #1f2a3d;--gray-200: #2d3a4f;--gray-300: #3e4c63;--gray-400: #64748b;--gray-500: #94a3b8;--gray-600: #cbd5e1;--gray-700: #e2e8f0;--gray-800: #f1f5f9;--gray-900: #f8fafc;--bg-app: #0f172a;--surface: #1e293b;--surface-sunken: #172033;--border: #2d3a4f;--border-strong: #3e4c63;--text: #e2e8f0;--text-strong: #f8fafc;--text-muted: #94a3b8;--text-subtle: #64748b;--primary: #3b82f6;--primary-dark: #2563eb;--primary-light: #60a5fa;--primary-bg: rgba(59, 130, 246, .16);--secondary: #f8fafc;--secondary-light: #cbd5e1;--success-light: rgba(16, 185, 129, .18);--warning-light: rgba(245, 158, 11, .18);--danger-light: rgba(239, 68, 68, .18);--info-light: rgba(8, 145, 178, .2);--blue-50: rgba(59,130,246,.1);--blue-100: rgba(59,130,246,.18);--blue-200: rgba(59,130,246,.32);--sky-50: rgba(14,165,233,.1);--sky-100: rgba(14,165,233,.18);--sky-200: rgba(14,165,233,.32);--cyan-50: rgba(6,182,212,.1);--cyan-100: rgba(6,182,212,.18);--cyan-200: rgba(6,182,212,.32);--teal-50: rgba(20,184,166,.1);--teal-100: rgba(20,184,166,.18);--teal-200: rgba(20,184,166,.32);--emerald-50: rgba(16,185,129,.1);--emerald-100: rgba(16,185,129,.18);--emerald-200: rgba(16,185,129,.32);--green-50: rgba(34,197,94,.1);--green-100: rgba(34,197,94,.18);--green-200: rgba(34,197,94,.32);--yellow-50: rgba(234,179,8,.1);--yellow-100: rgba(234,179,8,.18);--yellow-200: rgba(234,179,8,.32);--amber-50: rgba(245,158,11,.1);--amber-100: rgba(245,158,11,.18);--amber-200: rgba(245,158,11,.32);--orange-50: rgba(249,115,22,.1);--orange-100: rgba(249,115,22,.18);--orange-200: rgba(249,115,22,.32);--red-50: rgba(239,68,68,.1);--red-100: rgba(239,68,68,.18);--red-200: rgba(239,68,68,.32);--indigo-50: rgba(99,102,241,.1);--indigo-100: rgba(99,102,241,.18);--indigo-200: rgba(99,102,241,.32);--violet-50: rgba(139,92,246,.1);--violet-100: rgba(139,92,246,.18);--violet-200: rgba(139,92,246,.32);--purple-50: rgba(168,85,247,.1);--purple-100: rgba(168,85,247,.18);--purple-200: rgba(168,85,247,.32);--blue-800: #93c5fd;--blue-900: #bfdbfe;--sky-900: #bae6fd;--cyan-700: #67e8f9;--cyan-800: #a5f3fc;--teal-800: #99f6e4;--teal-900: #ccfbf1;--emerald-800: #6ee7b7;--emerald-700: #34d399;--green-800: #86efac;--green-700: #4ade80;--yellow-700: #fde047;--yellow-800: #fef08a;--amber-800: #fcd34d;--amber-900: #fde68a;--amber-700: #fbbf24;--orange-800: #fdba74;--orange-900: #fed7aa;--orange-700: #fb923c;--red-800: #fca5a5;--red-900: #fecaca;--red-700: #f87171;--indigo-800: #a5b4fc;--indigo-700: #818cf8;--violet-800: #c4b5fd;--violet-900: #ddd6fe;--violet-700: #a78bfa;--purple-800: #d8b4fe;--navy-950: #0b1220;--navy-700: #1e3a5f;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 6px rgba(0, 0, 0, .45);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .6)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--text-md);scroll-behavior:smooth}body{font-family:var(--font-sans);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;background:var(--bg-app);color:var(--text);line-height:var(--leading-normal);min-height:100vh}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:var(--spacing-md)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-container{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);background:linear-gradient(180deg,var(--navy-950) 0%,var(--navy-700) 100%);color:#fff;display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh;z-index:100;transition:width var(--transition-normal)}.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed-width)}.sidebar-header{padding:var(--spacing-md);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1)}.logo{display:flex;align-items:center;gap:var(--spacing-sm)}.logo-icon{display:none}.logo-text{font-size:var(--text-xl);font-weight:800;letter-spacing:-.3px;color:#fff}.logo-text .logo-pro{color:var(--sky-300)}.sidebar-collapsed .logo-text{display:none}.sidebar-toggle{background:none;border:none;color:#fff;cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm)}.sidebar-toggle:hover{background:#ffffff1a}.sidebar-nav{flex:1;padding:var(--spacing-md) 0;overflow-y:auto}.sidebar-nav ul{list-style:none}.sidebar-nav li{margin:var(--spacing-xs) var(--spacing-sm)}.sidebar-nav a{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);color:#fffc;border-radius:var(--radius-md);transition:all var(--transition-fast)}.sidebar-nav a:hover{background:#ffffff1a;color:#fff;text-decoration:none}.sidebar-nav li.active a{background:var(--primary);color:#fff}.nav-icon{font-size:var(--text-xl);width:24px;text-align:center}.sidebar-collapsed .nav-text{display:none}.nav-group{margin-bottom:2px}.nav-group-header{display:flex;align-items:center;gap:10px;width:100%;padding:6px 12px 6px 10px;background:none;border:none;color:#ffffff80;font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border-radius:var(--radius-md);transition:color var(--transition-fast),background var(--transition-fast)}.nav-group-header:hover{color:#ffffffd9;background:#ffffff0f}.nav-group.has-active .nav-group-header{color:#ffffffbf}.nav-group-icon{font-size:var(--text-lg);width:24px;text-align:center;flex-shrink:0}.nav-group-label{flex:1;text-align:left}.nav-group-arrow{font-size:var(--text-2xs);transition:transform .22s ease;transform:rotate(0)}.nav-group.open .nav-group-arrow{transform:rotate(180deg)}.nav-group-body{list-style:none;overflow:hidden;max-height:0;transition:max-height .22s ease}.nav-group.open .nav-group-body{max-height:500px}.nav-group .sidebar-nav li,.nav-group-body li{margin:1px 6px 1px 10px}.nav-group-body li a{display:flex;align-items:center;gap:var(--spacing-md);padding:7px var(--spacing-md);color:#ffffffbf;border-radius:var(--radius-md);transition:all var(--transition-fast)}.nav-group-body li a:hover{background:#ffffff1a;color:#fff;text-decoration:none}.nav-group-body li.active a{background:var(--primary);color:#fff}.sidebar-collapsed .nav-group-label,.sidebar-collapsed .nav-group-arrow{display:none}.sidebar-collapsed .nav-group-header{justify-content:center;padding:6px}.sidebar-collapsed .nav-group-body{max-height:0!important}.sidebar-footer{padding:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1);overflow:hidden;min-width:0}.sidebar-collapsed .sidebar-footer #widgetPlanSidebar,.sidebar-collapsed .sidebar-footer #widgetSaldoCreditosSidebar,.sidebar-collapsed .sidebar-footer .btn-logout{display:none!important}.sidebar-collapsed .sidebar-footer .user-info{justify-content:center;margin-bottom:0}.sidebar-collapsed .sidebar-footer .user-avatar{margin:0 auto}.user-info{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.user-avatar{width:36px;height:36px;background:var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600}.user-details{display:flex;flex-direction:column}.sidebar-collapsed .user-details{display:none}.user-name{font-weight:600;font-size:var(--text-base)}.user-role{font-size:var(--text-xs);opacity:.7;text-transform:capitalize}.btn-logout{width:100%;padding:var(--spacing-sm);background:#ffffff1a;border:none;color:#fff;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm)}.btn-logout:hover{background:#fff3}.main-content{flex:1;margin-left:var(--sidebar-width);transition:margin-left var(--transition-normal)}.sidebar-collapsed .main-content{margin-left:var(--sidebar-collapsed-width)}.main-header{background:var(--surface);padding:var(--spacing-md) var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50}.header-left{display:flex;align-items:center;gap:10px;min-width:0}.page-title{font-size:var(--text-2xl);font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tenant-name{font-size:var(--text-base);color:var(--text-muted)}.header-right{display:flex;align-items:center;gap:12px}.urgent-bell{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:var(--danger, var(--red-500));color:#fff;border:none;border-radius:999px;cursor:pointer;font-size:var(--text-base);font-weight:600;line-height:1;box-shadow:0 1px 3px #ef444466;animation:urgent-bell-pulse 2s ease-in-out infinite}.urgent-bell:hover{filter:brightness(.92)}.urgent-bell-icon{font-size:var(--text-md)}.urgent-bell-count{font-variant-numeric:tabular-nums}@keyframes urgent-bell-pulse{0%,to{box-shadow:0 1px 3px #ef444466}50%{box-shadow:0 1px 8px #ef4444bf}}@media (prefers-reduced-motion: reduce){.urgent-bell{animation:none}}.content-area{padding:var(--spacing-lg)}.login-container{display:flex;min-height:100vh;background:var(--gray-50)}.login-panel-form{width:480px;flex-shrink:0;display:flex;flex-direction:column;padding:36px 48px;background:var(--surface);overflow-y:auto}.login-brand{display:flex;align-items:center;gap:10px;margin-bottom:40px}.login-brand-name{font-size:var(--text-3xl);font-weight:800;color:var(--navy-950);letter-spacing:-.5px}.login-brand-pro{color:var(--primary)}.login-card{flex:1;display:flex;flex-direction:column;justify-content:center}.login-card-header{margin-bottom:28px}.login-card-header h2{font-size:var(--text-3xl);font-weight:700;color:var(--text-strong);margin:0 0 6px;letter-spacing:-.4px}.login-card-header p{font-size:var(--text-md);color:var(--text-muted);margin:0}.login-tabs{display:flex;gap:0;margin-bottom:28px;background:var(--gray-100);border-radius:var(--radius-md);padding:3px}.login-tabs .tab-btn{flex:1;padding:8px 16px;border:none;background:transparent;border-radius:calc(var(--radius-md) - 2px);cursor:pointer;font-weight:600;font-size:var(--text-base);color:var(--text-muted);transition:all var(--transition-fast)}.login-tabs .tab-btn.active{background:var(--surface);color:var(--secondary);box-shadow:0 1px 4px #0000001f}.login-form{display:flex;flex-direction:column;gap:18px}.lf-group{display:flex;flex-direction:column;gap:6px}.lf-group label{font-size:var(--text-base);font-weight:600;color:var(--text)}.lf-input-wrap{position:relative}.lf-input{width:100%;box-sizing:border-box;padding:11px 14px;border:1.5px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-md);color:var(--text-strong);background:var(--surface);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.lf-input-wrap .lf-input{padding-right:40px}.lf-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #7c3aed1a}.lf-input::placeholder{color:var(--gray-300)}.lf-eye{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:var(--text-lg);opacity:.5;padding:2px;line-height:1;transition:opacity var(--transition-fast)}.lf-eye:hover{opacity:.85}.lf-forgot{text-align:right;margin-top:-8px}.lf-forgot a{font-size:var(--text-sm);color:var(--primary);font-weight:500}.lf-submit{width:100%;padding:12px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-md);font-weight:700;cursor:pointer;letter-spacing:.02em;transition:background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);box-shadow:0 2px 8px #1d4ed840;margin-top:4px}.lf-submit:hover{background:var(--primary-dark);box-shadow:0 4px 16px #1d4ed859;transform:translateY(-1px)}.lf-submit:active{transform:translateY(0)}.lf-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--text-subtle);font-size:var(--text-sm)}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--gray-200)}.btn-google{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:11px 16px;border:1.5px solid var(--border);background:var(--surface);border-radius:var(--radius-md);cursor:pointer;font-weight:600;font-size:var(--text-md);color:var(--text);transition:all var(--transition-fast)}.btn-google:hover{background:var(--gray-50);border-color:var(--border-strong);box-shadow:0 2px 6px #0000000f}.btn-portal-client{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 16px;border:1.5px solid rgba(37,99,235,.35);background:var(--blue-50);color:var(--blue-700);border-radius:var(--radius-md);cursor:pointer;font-weight:600;font-size:var(--text-md);transition:all var(--transition-fast)}.btn-portal-client:hover{background:var(--blue-100);border-color:var(--blue-700)}.lf-terms{font-size:var(--text-xs);color:var(--text-subtle);text-align:center;margin:12px 0 0;line-height:1.6}.lf-terms a{color:var(--primary)}.lf-row-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.lf-label-icon{font-size:var(--text-sm);margin-right:2px}.lf-terms-check{background:var(--gray-50);border:1.5px solid var(--border);border-radius:var(--radius-md);padding:12px 14px}@media (max-width: 540px){.lf-row-2{grid-template-columns:1fr}}.login-panel-brand{flex:1;background:linear-gradient(160deg,var(--navy-950) 0%,var(--navy-700) 55%,var(--blue-700) 100%);display:flex;align-items:center;justify-content:center;padding:48px;position:relative;overflow:hidden}.login-panel-brand:before{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:#0ea5e924;top:-150px;right:-120px}.login-panel-brand:after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:#1d4ed833;bottom:-80px;left:-60px}.login-panel-brand-inner{position:relative;z-index:1;max-width:440px;color:#fff}.lpb-badge{display:inline-block;background:#0ea5e933;border:1px solid rgba(125,211,252,.35);color:var(--sky-300);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;border-radius:var(--radius-full);margin-bottom:24px}.lpb-title{font-size:46px;font-weight:800;line-height:1.1;letter-spacing:-1.5px;margin:0 0 20px;color:#fff}.lpb-sub{font-size:var(--text-base);color:#ffffff80;margin:0 0 40px;letter-spacing:.02em;line-height:1.6}.lpb-features{list-style:none;display:flex;flex-direction:column;gap:20px;margin:0 0 48px;padding:0}.lpb-features li{display:flex;align-items:flex-start;gap:16px}.lpb-feat-icon{font-size:var(--text-3xl);line-height:1;flex-shrink:0;margin-top:2px;filter:drop-shadow(0 0 8px rgba(14,165,233,.5))}.lpb-features strong{display:block;font-size:var(--text-md);font-weight:700;color:#fff;margin-bottom:3px}.lpb-features span{font-size:var(--text-base);color:#ffffff8c;line-height:1.5}.lpb-footer{font-size:var(--text-sm);color:#ffffff59;padding-top:24px;border-top:1px solid rgba(255,255,255,.1)}.lpb-footer strong{color:#ffffff8c}@media (max-width: 900px){.login-panel-brand{display:none}.login-panel-form{width:100%;padding:32px 24px}}@media (max-width: 400px){.login-panel-form{padding:24px 16px}.lpb-title{font-size:34px}}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{font-weight:500;color:var(--text);font-size:var(--text-base)}textarea{resize:none;width:100%;box-sizing:border-box;overflow:hidden;field-sizing:content;min-height:60px;font-family:inherit;line-height:1.5}#aiInput{field-sizing:fixed;width:auto;min-height:unset;overflow:auto}.form-input,.form-select{padding:var(--spacing-sm) var(--spacing-md);border:1.5px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--text-md);transition:border-color var(--transition-fast)}.form-input:focus,.form-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #7c3aed1a}.login-footer{margin-top:var(--spacing-lg);text-align:center;font-size:var(--text-base)}.login-footer a{color:var(--primary)}.terms{color:var(--text-muted);font-size:var(--text-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);font-weight:600;font-size:var(--text-base);cursor:pointer;transition:all var(--transition-fast)}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-secondary{background:var(--gray-200);color:var(--text)}.btn-secondary:hover{background:var(--gray-300)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:var(--red-700)}.btn-full{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.toast-container{position:fixed;top:var(--spacing-lg);right:var(--spacing-lg);z-index:10000;display:flex;flex-direction:column;gap:var(--spacing-sm)}.toast{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);transform:translate(120%);transition:transform var(--transition-normal);min-width:280px}.toast-show{transform:translate(0)}.toast-hide{transform:translate(120%)}.toast-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:700}.toast-success .toast-icon{background:var(--success-light);color:var(--success)}.toast-error .toast-icon{background:var(--danger-light);color:var(--danger)}.toast-warning .toast-icon{background:var(--warning-light);color:var(--warning)}.toast-info .toast-icon{background:var(--info-light);color:var(--info)}.toast-message{flex:1;font-size:var(--text-base)}.toast-close{background:none;border:none;color:var(--text-subtle);cursor:pointer;font-size:var(--text-xl);padding:0;line-height:1}.input-with-copy{display:flex;align-items:stretch;gap:6px}.input-with-copy .form-input{flex:1;min-width:0}.btn-copy-path{flex:0 0 auto;padding:0 12px;background:var(--gray-100);border:1px solid var(--border-strong);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-md);line-height:1;transition:background var(--transition-fast),border-color var(--transition-fast)}.btn-copy-path:hover:not(:disabled){background:var(--gray-200);border-color:var(--gray-400)}.btn-copy-path:disabled{cursor:default;opacity:.9}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;opacity:0;transition:opacity var(--transition-normal)}.modal-overlay.modal-show{opacity:1}.modal-overlay.modal-hide{opacity:0}.modal{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-height:90vh;overflow:hidden;display:flex;flex-direction:column;transform:scale(.9);transition:transform var(--transition-normal)}.modal-show .modal{transform:scale(1)}.modal-small{width:400px}.modal-medium{width:600px}.modal-large{width:800px}.modal-full{width:95vw;max-width:1200px}.modal-wide{width:92vw;max-width:1000px;max-height:94vh}.modal-fullscreen{width:98vw;max-width:none;height:97vh;max-height:97vh;border-radius:var(--radius-lg)}.modal-header{padding:8px var(--spacing-lg);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;min-height:0}.modal-fullscreen .modal-header{padding:6px 16px}.modal-title{font-size:var(--text-md);font-weight:600}.modal-fullscreen .modal-title{font-size:var(--text-md)}.modal-close{background:none;border:none;font-size:var(--text-3xl);color:var(--text-subtle);cursor:pointer;line-height:1}.modal-close:hover{color:var(--gray-600)}.modal-body{padding:var(--spacing-lg);overflow-y:auto;flex:1}.modal-footer{padding:8px var(--spacing-lg);border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.modal-fullscreen .modal-footer{padding:6px 16px}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.dashboard-header-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.board-search-inline{width:220px;padding:6px 12px;font-size:var(--text-base)}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.stat-card{background:var(--surface);padding:var(--spacing-lg);border-radius:var(--radius-lg);display:flex;align-items:center;gap:var(--spacing-md);box-shadow:var(--shadow-sm)}.stat-icon{font-size:32px}.stat-value{font-size:var(--text-3xl);font-weight:700;color:var(--text);display:block}.stat-label{font-size:var(--text-sm);color:var(--text-muted)}.kanban-board{display:flex;gap:var(--spacing-md);overflow-x:auto;padding-bottom:var(--spacing-md)}.kanban-column{min-width:280px;max-width:320px;background:var(--gray-100);border-radius:var(--radius-lg);display:flex;flex-direction:column;transition:min-width .2s,max-width .2s}.kanban-column.expanded{min-width:420px;max-width:520px}.kanban-column.collapsed{min-width:48px;max-width:48px;overflow:hidden;cursor:pointer}.kanban-column.collapsed .kanban-column-body{display:none}.kanban-column.collapsed .kanban-column-header{flex-direction:column;align-items:center;justify-content:flex-start;padding:var(--spacing-sm) 6px;gap:6px}.kanban-column.collapsed .column-header-actions{display:none}.kanban-column.collapsed .column-title{writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-height:180px;font-size:var(--text-sm)}.kanban-column-header{padding:var(--spacing-md);font-weight:600;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid}.kanban-column-count{background:var(--surface);padding:2px 8px;border-radius:var(--radius-full);font-size:var(--text-sm)}.kanban-column-body{padding:var(--spacing-sm);flex:1;overflow-y:auto;max-height:60vh}.kanban-card{background:var(--surface);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);box-shadow:var(--shadow-sm);cursor:pointer;transition:box-shadow var(--transition-fast)}.kanban-card:hover{box-shadow:var(--shadow-md)}.kanban-card-title{font-weight:600;margin-bottom:var(--spacing-xs)}.kanban-card-meta{font-size:var(--text-sm);color:var(--text-muted)}.loading{text-align:center;padding:var(--spacing-xl);color:var(--text-muted)}.error{text-align:center;padding:var(--spacing-xl);color:var(--danger)}.text-muted{color:var(--text-muted)}.text-center{text-align:center}.hamburger-btn{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:8px;background:none;border:none;cursor:pointer;border-radius:var(--radius-md);flex-shrink:0}.hamburger-btn:hover{background:var(--gray-100)}.hamburger-btn span{display:block;height:2px;width:100%;background:var(--gray-700);border-radius:2px;transition:all var(--transition-fast)}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sidebar-overlay.active{display:block}@media (max-width: 768px){.hamburger-btn{display:flex}.sidebar{transform:translate(-100%);transition:transform var(--transition-normal);z-index:100;width:280px!important}.sidebar.mobile-open{transform:translate(0);box-shadow:4px 0 24px #00000040}.sidebar-collapsed .sidebar{width:280px!important;transform:translate(-100%)}.sidebar-collapsed .sidebar.mobile-open{transform:translate(0)}.sidebar-collapsed .nav-text,.sidebar-collapsed .nav-group-label,.sidebar-collapsed .nav-group-arrow,.sidebar-collapsed .user-details,.sidebar-collapsed .logo-text{display:revert!important}.sidebar-collapsed .nav-group-header{justify-content:flex-start;padding:6px 12px 6px 10px}.sidebar-collapsed .nav-group-body{max-height:unset}.sidebar-toggle{display:none}.main-content{margin-left:0!important}.main-header{padding:10px 14px;gap:10px}.header-left{gap:8px}.page-title{font-size:var(--text-lg)}.tenant-name{display:none}.dashboard-stats{grid-template-columns:1fr 1fr;gap:8px}.stat-card{padding:12px}.stat-value{font-size:var(--text-2xl)}.kanban-board{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:12px}.kanban-columns{min-width:max-content}.modal-overlay{align-items:flex-end;padding:0}.modal,.modal-small,.modal-medium,.modal-large,.modal-wide,.modal-full{width:100%!important;max-width:100%!important;max-height:92vh;border-radius:20px 20px 0 0!important;transform:translateY(40px)}.modal-show .modal,.modal-show .modal-small,.modal-show .modal-medium,.modal-show .modal-large,.modal-show .modal-wide,.modal-show .modal-full{transform:translateY(0)}.modal-header:before{content:"";display:block;width:36px;height:4px;background:var(--gray-200);border-radius:2px;margin:0 auto 12px}.form-row{flex-direction:column!important;gap:12px!important}.data-table-wrap,.tasks-list-table,.billing-table,.clients-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.clients-table thead{display:none}.clients-table tr{display:flex;flex-direction:column;padding:12px 14px;border-bottom:1px solid var(--border);gap:4px}.clients-table td{border:none;padding:0;font-size:var(--text-base)}.clients-table td:first-child{font-weight:700;font-size:var(--text-md);color:var(--text-strong)}.btn,.btn-icon,.nav-group-body li a,.sidebar-nav a,.tab-btn{min-height:44px}.btn-sm{min-height:36px}.page-header{flex-direction:column;align-items:flex-start;gap:10px}.page-header>div{width:100%;flex-wrap:wrap}.dashboard-header{flex-direction:column;align-items:flex-start;gap:10px}.board-search-inline{width:100%}.billing-stats-row{grid-template-columns:1fr}.content-area{padding:12px}}.data-table{width:100%;border-collapse:collapse;background:var(--surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.data-table th,.data-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--gray-100)}.data-table th{background:var(--gray-50);font-weight:600;font-size:var(--text-sm);text-transform:uppercase;color:var(--gray-600)}.data-table .client-name{display:flex;flex-direction:column}.data-table .client-name small{color:var(--text-muted);font-size:var(--text-xs)}.badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;text-transform:capitalize}.badge-secondary{background:var(--gray-200);color:var(--gray-600)}.action-buttons{display:flex;gap:var(--spacing-xs)}.btn-icon{width:32px;height:32px;border:none;background:var(--gray-100);border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.btn-icon:hover{background:var(--gray-200)}.btn-icon-danger:hover{background:var(--danger-light)}.btn-icon-warning:hover{background:var(--warning-light)}.summary-card{background:var(--surface);padding:var(--spacing-lg);border-radius:var(--radius-lg);display:flex;align-items:center;gap:var(--spacing-md);box-shadow:var(--shadow-sm)}.summary-card.success{border-left:4px solid var(--success)}.summary-card.danger{border-left:4px solid var(--danger)}.summary-icon{font-size:var(--text-4xl)}.summary-value{font-size:var(--text-2xl);font-weight:700;display:block}.cartera-aging{background:var(--surface);padding:var(--spacing-lg);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.cartera-aging h4{margin-bottom:var(--spacing-md)}.aging-item{display:grid;grid-template-columns:100px 1fr 120px;align-items:center;gap:var(--spacing-md)}.aging-label{font-size:var(--text-base);color:var(--gray-600)}.aging-bar{height:8px;background:var(--gray-200);border-radius:var(--radius-full);overflow:hidden}.aging-fill{height:100%;border-radius:var(--radius-full);transition:width var(--transition-normal)}.aging-value{font-size:var(--text-base);font-weight:600;text-align:right}.billing-actions{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.billing-filters .form-select{min-width:200px}.portal-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,var(--secondary) 0%,var(--navy-900) 45%,var(--navy-800) 100%);padding:24px;position:relative;overflow:hidden}.plp-blob{position:absolute;border-radius:50%;pointer-events:none}.plp-blob-1{width:600px;height:600px;background:#7c3aed1a;top:-200px;right:-150px}.plp-blob-2{width:400px;height:400px;background:#2563eb14;bottom:-120px;left:-100px}.plp-card{position:relative;z-index:1;background:var(--surface);border-radius:20px;padding:40px 44px;width:100%;max-width:420px;box-shadow:0 24px 80px #00000059}.plp-brand{display:flex;align-items:center;gap:8px;margin-bottom:32px}.plp-brand-icon{font-size:var(--text-3xl)}.plp-brand-name{font-size:var(--text-xl);font-weight:800;color:var(--secondary);letter-spacing:-.4px}.plp-header{margin-bottom:28px}.plp-badge{display:inline-block;background:#7c3aed14;color:var(--primary);font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;padding:4px 10px;border-radius:var(--radius-full);margin-bottom:10px;border:1px solid rgba(124,58,237,.18)}.plp-header h2{font-size:var(--text-3xl);font-weight:700;color:var(--text-strong);margin:0 0 6px;letter-spacing:-.3px}.plp-header p{font-size:var(--text-base);color:var(--text-muted);margin:0}.plp-form{display:flex;flex-direction:column;gap:18px;margin-bottom:24px}.plp-submit{width:100%;padding:13px;background:linear-gradient(135deg,var(--secondary),var(--navy-800));color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-md);font-weight:700;cursor:pointer;letter-spacing:.02em;transition:opacity var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);box-shadow:0 4px 14px #1e3a5f47;margin-top:4px}.plp-submit:hover{opacity:.92;transform:translateY(-1px);box-shadow:0 6px 20px #1e3a5f59}.plp-submit:active{transform:translateY(0)}.plp-footer{text-align:center;font-size:var(--text-sm);color:var(--text-subtle);display:flex;flex-direction:column;gap:8px}.plp-back{font-size:var(--text-sm);color:var(--primary);font-weight:500}.aq-card{max-width:460px}.aq-loading-text{text-align:center;font-size:var(--text-base);color:var(--text-muted);margin:16px 0 0}.aq-spinner{width:36px;height:36px;margin:12px auto 0;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:aq-spin .8s linear infinite}@keyframes aq-spin{to{transform:rotate(360deg)}}.aq-services{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 16px;margin-bottom:16px}.aq-service-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:var(--text-base);color:var(--text);padding:6px 0}.aq-service-row+.aq-service-row{border-top:1px dashed var(--border)}.aq-service-price{font-weight:600;color:var(--text-strong);white-space:nowrap}.aq-service-total{margin-top:4px;padding-top:10px;border-top:2px solid var(--border)!important;font-size:var(--text-md);font-weight:800;color:var(--secondary)}.aq-meta{font-size:var(--text-sm);color:var(--text-muted);margin:0 0 12px}.aq-conditions{font-size:var(--text-sm);color:var(--gray-600);background:var(--amber-50);border:1px solid var(--amber-200);border-radius:var(--radius-md);padding:10px 12px;margin-bottom:16px;white-space:pre-wrap;line-height:1.5}.aq-check{display:flex;align-items:flex-start;gap:10px;font-size:var(--text-sm);color:var(--gray-600);line-height:1.5;cursor:pointer}.aq-check input{margin-top:2px;width:16px;height:16px;flex-shrink:0;accent-color:var(--primary);cursor:pointer}.aq-fineprint{text-align:center;font-size:var(--text-xs);color:var(--text-subtle);margin:10px 0 0}.aq-error{background:var(--red-50);border:1px solid var(--red-300);color:var(--danger);font-size:var(--text-sm);font-weight:600;padding:10px 12px;border-radius:var(--radius-md);margin-bottom:4px}.aq-result{text-align:center;padding:12px 4px 4px}.aq-result-icon{font-size:48px;margin-bottom:12px;line-height:1}.aq-result-animated .aq-result-icon{animation:aq-pop .5s cubic-bezier(.34,1.56,.64,1)}@keyframes aq-pop{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}.aq-result h2{font-size:var(--text-xl);font-weight:700;color:var(--text-strong);margin:0 0 10px;letter-spacing:-.3px}.aq-result p{font-size:var(--text-base);color:var(--text-muted);line-height:1.6;margin:0}.aq-result-ok .aq-result-icon{filter:drop-shadow(0 4px 10px rgba(5,150,105,.25))}.aq-result-warn .aq-result-icon{filter:drop-shadow(0 4px 10px rgba(217,119,6,.2))}@media (max-width: 480px){.aq-card{padding:32px 24px}}.client-portal{min-height:100vh;background:var(--gray-100)}.portal-header-bar{background:linear-gradient(90deg,var(--secondary) 0%,var(--navy-800) 100%);color:#fff;padding:0 32px;height:58px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 12px #0000002e}.portal-brand{display:flex;align-items:center;gap:10px}.portal-brand-icon{font-size:var(--text-2xl)}.portal-brand-name{font-size:var(--text-lg);font-weight:800;letter-spacing:-.3px}.portal-brand-sep{opacity:.35;font-size:var(--text-xl);margin:0 2px}.portal-brand-firm{font-size:var(--text-sm);opacity:.65;font-weight:400}.portal-user{display:flex;align-items:center;gap:10px}.portal-user-avatar{width:32px;height:32px;border-radius:50%;background:#ffffff2e;border:1.5px solid rgba(255,255,255,.35);display:flex;align-items:center;justify-content:center;font-size:var(--text-md);font-weight:700}.portal-user-name{font-size:var(--text-base);font-weight:500;opacity:.9}.portal-logout-btn{padding:5px 14px;background:#ffffff1f;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background var(--transition-fast)}.portal-logout-btn:hover{background:#ffffff38}.portal-hero{background:linear-gradient(135deg,var(--secondary) 0%,var(--navy-700) 60%,var(--navy-800) 100%);color:#fff;padding:40px 32px}.portal-hero-inner{max-width:820px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.portal-hero-tag{font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#ffffff80;margin:0 0 8px}.portal-hero h1{font-size:34px;font-weight:800;letter-spacing:-.8px;margin:0 0 8px;color:#fff}.portal-hero-sub{font-size:var(--text-md);color:#fff9;margin:0;max-width:380px}.portal-hero-actions{display:flex;gap:12px;flex-wrap:wrap}.quick-card{background:#ffffff1f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.22);padding:10px 18px;border-radius:var(--radius-lg);display:flex;align-items:center;gap:8px;color:#fff;font-size:var(--text-base);font-weight:600;text-decoration:none;transition:all var(--transition-fast)}.quick-card:hover{background:#fff3;text-decoration:none;transform:translateY(-1px);color:#fff}.quick-icon{font-size:var(--text-2xl)}.portal-main{max-width:820px;margin:0 auto;padding:24px 16px 48px}.portal-card{background:var(--surface);padding:20px 24px;border-radius:var(--radius-lg);margin-bottom:16px;box-shadow:0 1px 4px #0000000f,0 2px 12px #0000000a;border:1px solid rgba(0,0,0,.04)}.portal-card h3{margin:0 0 16px;font-size:var(--text-md);font-weight:700;color:var(--text);display:flex;align-items:center;gap:6px}.portal-card.highlight{border-left:4px solid var(--primary)}@keyframes pulse-border{0%,to{box-shadow:0 0 #f59e0b4d}50%{box-shadow:0 0 0 6px #f59e0b00}}.progress-display{display:flex;align-items:center;gap:20px}.progress-circle{width:84px;height:84px;border-radius:50%;background:conic-gradient(var(--primary) calc(var(--progress) * 1%),var(--gray-100) calc(var(--progress) * 1%));display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0;box-shadow:0 2px 12px #7c3aed33}.progress-circle:before{content:"";position:absolute;width:62px;height:62px;background:var(--surface);border-radius:50%}.progress-value{position:relative;font-size:var(--text-xl);font-weight:800;color:var(--primary)}.progress-info p{margin:0;font-size:var(--text-md);color:var(--text)}.due-date{font-size:var(--text-sm);color:var(--text-muted);margin-top:6px}.portal-chat{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.portal-chat .chat-messages{height:220px;overflow-y:auto;padding:14px;background:var(--gray-50);display:flex;flex-direction:column;gap:8px}.chat-message{max-width:78%;padding:8px 12px;border-radius:12px;font-size:var(--text-base);line-height:1.45}.chat-message.sent{background:var(--primary);color:#fff;margin-left:auto;border-bottom-right-radius:4px}.chat-message.received{background:var(--surface);border:1px solid var(--border);border-bottom-left-radius:4px;color:var(--text)}.message-time{font-size:var(--text-2xs);opacity:.6;margin-top:3px;display:block}.portal-chat .chat-input{display:flex;gap:8px;padding:10px;background:var(--surface);border-top:1px solid var(--border)}.portal-chat .chat-input input{flex:1}.tax-simulator{max-width:420px}.simulator-results{background:var(--gray-50);padding:var(--spacing-md);border-radius:var(--radius-md);margin-top:var(--spacing-md);border:1px solid var(--border)}.result-item{display:flex;justify-content:space-between;padding:var(--spacing-xs) 0}.result-item.highlight{font-size:var(--text-xl);font-weight:600;color:var(--primary);border-top:1px solid var(--border);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm)}.billing-summary-mini{display:flex;gap:12px;flex-wrap:wrap}.billing-item{flex:1;min-width:100px;background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 16px;display:flex;flex-direction:column;gap:4px}.billing-item .label{font-size:var(--text-xs);color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.billing-item .value{font-size:var(--text-lg);font-weight:700;color:var(--text)}@media (max-width: 640px){.portal-header-bar{padding:0 16px}.portal-brand-firm,.portal-user-name{display:none}.portal-hero{padding:28px 16px}.portal-hero h1{font-size:var(--text-3xl)}.portal-hero-inner{flex-direction:column;align-items:flex-start}.plp-card{padding:32px 24px}}.client-detail{max-height:90vh;overflow-y:auto}.client-header-bar{display:flex;align-items:center;justify-content:space-between;padding:6px 0 8px;border-bottom:1px solid var(--border);margin-bottom:8px;gap:12px;flex-wrap:wrap}.client-header-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:var(--text-base);color:var(--gray-600)}.client-header-doc{font-weight:600;color:var(--text)}.client-header-sep{color:var(--gray-300)}.client-header-progress{color:var(--primary);font-weight:600}.btn-header-toggle{background:none;border:1px solid var(--border-strong);border-radius:var(--radius-md);padding:3px 10px;font-size:var(--text-sm);color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast)}.btn-header-toggle:hover{border-color:var(--primary);color:var(--primary)}.client-header{margin-bottom:var(--spacing-lg)}.client-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.info-item{display:flex;flex-direction:column}.info-label{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:2px}.info-value{font-weight:500}.client-indicators{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.indicator{padding:4px 12px;border-radius:var(--radius-full);font-size:var(--text-sm);text-decoration:none}.indicator-danger{background:var(--red-100);color:var(--red-800)}.indicator-orange{background:var(--orange-100);color:var(--orange-800)}.indicator-neutral{background:var(--gray-100);color:var(--gray-600)}.client-progress{background:var(--gray-50);padding:var(--spacing-md);border-radius:var(--radius-md)}.progress-header{display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm);font-size:var(--text-base)}.progress-bar-large{height:8px;background:var(--gray-200);border-radius:var(--radius-full);overflow:hidden}.progress-bar-large .progress-fill{height:100%;background:var(--primary);border-radius:var(--radius-full);transition:width var(--transition-normal)}.client-tabs{display:flex;gap:var(--spacing-xs);border-bottom:1px solid var(--border);margin-bottom:var(--spacing-md)}.client-tabs .tab-btn{padding:var(--spacing-sm) var(--spacing-md);border:none;background:none;cursor:pointer;font-size:var(--text-base);color:var(--text-muted);border-bottom:2px solid transparent;transition:all var(--transition-fast)}.client-tabs .tab-btn:hover{color:var(--text)}.client-tabs .tab-btn.active{color:var(--primary);border-bottom-color:var(--primary)}.tasks-list{max-height:300px;overflow-y:auto}.tasks-list-view{overflow-y:auto;max-height:calc(90vh - 160px)}.tasks-list-table{width:100%;border-collapse:collapse;font-size:var(--text-base)}.tasks-list-table thead th{position:sticky;top:0;background:var(--gray-100);padding:7px 10px;text-align:left;font-weight:600;color:var(--gray-600);border-bottom:2px solid var(--border);z-index:1}.task-list-row td{padding:7px 10px;border-bottom:1px solid var(--gray-100);vertical-align:middle}.task-list-row:hover td{background:var(--gray-50)}.task-list-row-done td{opacity:.5}.task-list-row-done .task-list-name{text-decoration:line-through}.task-list-order{color:var(--text-subtle);font-size:var(--text-xs);font-weight:600;white-space:nowrap}.task-list-phase-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:var(--text-xs);font-weight:600;white-space:nowrap}.task-select-inline{border:1px solid var(--border);border-radius:5px;padding:3px 6px;font-size:var(--text-sm);background:var(--surface);width:100%;max-width:150px}.task-list-actions{display:flex;align-items:center;gap:4px}#tabContent{overflow-y:auto;transition:max-height .2s ease}.tasks-compact{border-collapse:collapse;width:100%;font-size:var(--text-base)}.task-row-compact td{padding:6px 8px;border-bottom:1px solid var(--gray-100);vertical-align:middle}.task-row-compact:hover td{background:var(--gray-50)}.task-row-done td{opacity:.55}.task-row-done .task-row-name{text-decoration:line-through;color:var(--text-subtle)}.task-row-locked td{opacity:.45}.task-row-locked .task-row-name{color:var(--text-subtle)}.task-row-locked .task-col-check input[type=checkbox]{cursor:not-allowed;accent-color:var(--gray-300)}.task-col-check{width:32px;text-align:center}.task-col-check input[type=checkbox]{width:16px;height:16px;cursor:pointer}.task-col-main{line-height:1.3}.task-row-name{font-weight:500;color:var(--text)}.task-row-meta{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px;align-items:center}.task-pill-phase{display:inline-block;padding:1px 7px;border-radius:10px;font-size:var(--text-2xs);font-weight:600;white-space:nowrap;color:var(--text)}.task-pill-assignee{font-size:var(--text-2xs);color:var(--text-muted);font-weight:500;padding:1px 6px;background:var(--gray-100);border-radius:8px;white-space:nowrap}.task-pill-resource{font-size:var(--text-2xs);color:var(--blue-600);font-weight:500;padding:1px 6px;background:var(--blue-50);border-radius:8px;white-space:nowrap}.task-col-actions{width:auto;white-space:nowrap;text-align:right}.task-col-actions .btn-icon{opacity:.5;transition:opacity .15s}.task-col-actions .btn-icon:hover{opacity:1}.task-col-actions .btn-icon.has-note{opacity:1;color:var(--amber-600)}.task-row-note-expanded td{background:var(--gray-50)}.task-note-input{border:1px solid var(--border);border-radius:6px;padding:4px 8px;font-size:var(--text-sm);width:100%;min-width:0;background:var(--surface)}.task-note-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #2563eb1a}.task-select-compact{border:1px solid var(--border);border-radius:5px;padding:3px 6px;font-size:var(--text-xs);background:var(--surface);max-width:100px}.tasks-kanban{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;min-height:200px}.task-phase-col{flex:1;min-width:170px;max-width:240px;background:var(--gray-50);border:1.5px solid var(--border);border-radius:var(--radius-md);display:flex;flex-direction:column;align-self:flex-start;cursor:default;transition:border-color .15s,box-shadow .15s,min-width .2s,max-width .2s}.task-phase-col:hover{border-color:var(--primary);box-shadow:0 0 0 2px #6366f114}.task-phase-col .task-phase-header{cursor:pointer}.task-phase-col.focused{flex:3;min-width:320px;max-width:none;border-color:var(--primary);box-shadow:0 0 0 3px #6366f11f}.task-phase-col.collapsed{flex:0 0 44px;min-width:44px;max-width:44px;overflow:hidden;cursor:pointer}.task-phase-col.collapsed .task-phase-body{display:none}.task-phase-col.collapsed .task-phase-header{flex-direction:column;align-items:center;padding:10px 4px;gap:6px}.task-phase-col.collapsed .task-phase-name{writing-mode:vertical-rl;transform:rotate(180deg);font-size:var(--text-xs);max-height:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-phase-col.collapsed .task-phase-count,.task-phase-col.collapsed .task-phase-bar{display:none}.task-phase-done-btn{background:none;border:none;padding:0 2px;font-size:var(--text-sm);line-height:1;cursor:pointer;opacity:.35;transition:opacity .15s;flex-shrink:0}.task-phase-col:hover .task-phase-done-btn{opacity:1}.task-phase-col.collapsed .task-phase-done-btn,.task-phase-col.phase-all-done .task-phase-done-btn{display:none}.task-phase-col.phase-all-done{flex:0 0 52px;min-width:52px;max-width:52px;border-color:var(--green-200);background:var(--green-50);opacity:.8;cursor:pointer;transition:opacity .15s,border-color .15s,box-shadow .15s,flex .2s,min-width .2s,max-width .2s}.task-phase-col.phase-all-done .task-phase-body{display:none}.task-phase-col.phase-all-done .task-phase-header{flex-direction:column;align-items:center;padding:10px 4px;gap:6px;border-bottom-color:var(--green-200);cursor:pointer}.task-phase-col.phase-all-done .task-phase-name{writing-mode:vertical-rl;transform:rotate(180deg);font-size:var(--text-xs);max-height:300px;white-space:nowrap;color:var(--green-600);font-weight:600}.task-phase-col.phase-all-done .task-phase-count,.task-phase-col.phase-all-done .task-phase-bar{display:none}.task-phase-col.phase-all-done:hover{flex:1;min-width:170px;max-width:240px;opacity:1;border-color:var(--green-500);box-shadow:0 0 0 2px #22c55e1f;overflow:visible}.task-phase-col.phase-all-done:hover .task-phase-body{display:block}.task-phase-col.phase-all-done:hover .task-phase-header{flex-direction:row;padding:8px 10px;border-bottom-color:var(--green-200)}.task-phase-col.phase-all-done:hover .task-phase-name{writing-mode:vertical-rl;transform:rotate(180deg);font-size:var(--text-xs);max-height:140px;color:var(--green-600)}.task-phase-col.phase-all-done:hover .task-phase-count,.task-phase-col.phase-all-done:hover .task-phase-bar{display:revert}.task-phase-col.phase-all-done:hover .task-phase-bar>div{background:var(--green-500)!important}.task-phase-header{display:flex;align-items:center;gap:6px;padding:8px 10px;border-bottom:2px solid var(--border);background:var(--surface);border-radius:var(--radius-md) var(--radius-md) 0 0;flex-shrink:0}.task-phase-name{font-size:var(--text-sm);font-weight:600;color:var(--text);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-phase-count{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.task-phase-bar{width:40px;height:3px;background:var(--gray-200);border-radius:2px;overflow:hidden;flex-shrink:0}.task-phase-body{overflow-y:auto;flex:0 1 auto;padding:4px;scrollbar-width:thin;scrollbar-color:transparent transparent}.task-phase-body:hover{scrollbar-color:var(--gray-300) transparent}.task-phase-body::-webkit-scrollbar{width:4px}.task-phase-body::-webkit-scrollbar-track{background:transparent}.task-phase-body::-webkit-scrollbar-thumb{background:transparent;border-radius:4px}.task-phase-body:hover::-webkit-scrollbar-thumb{background:var(--gray-300)}.phase-title{font-size:var(--text-base);color:var(--text-muted);margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--gray-100)}.task-item{display:flex;align-items:flex-start;gap:6px;padding:5px 6px;border-radius:var(--radius-md);transition:background var(--transition-fast)}.task-item.completed{opacity:.6}.task-item.completed .task-name{text-decoration:line-through}.task-item.task-item-urgent{border-left:3px solid var(--red-600);padding-left:6px}.task-checkbox{position:relative;cursor:pointer}.task-checkbox input{position:absolute;opacity:0}.task-checkbox .checkmark{width:18px;height:18px;border:2px solid var(--border-strong);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.task-checkbox input:checked+.checkmark{background:var(--success);border-color:var(--success)}.task-checkbox input:checked+.checkmark:after{content:"✓";color:#fff;font-size:var(--text-sm)}.task-info{flex:1}.task-name{display:block;font-size:var(--text-sm);line-height:1.3}.task-assigned{display:inline;font-size:var(--text-2xs);color:var(--text-muted)}.task-meta-row{display:inline}.task-resource{display:inline;font-size:var(--text-2xs);color:var(--primary);padding:0;border-radius:0;white-space:nowrap}.task-resource-clickable{cursor:pointer;text-decoration:underline;text-decoration-style:dotted}.task-assigned-client{color:var(--warning, var(--amber-600))}.task-assigned-pending{color:var(--text-subtle);font-style:italic}.task-origen-humano{display:inline;font-size:var(--text-2xs);color:var(--red-700);font-weight:600;white-space:nowrap}.task-origen-auto{display:inline;font-size:var(--text-2xs);color:var(--text-subtle);white-space:nowrap}.task-details{display:none;flex-direction:column;gap:6px;margin-top:6px}.task-phase-col.focused .task-details{display:flex}.task-details-selects{display:flex;gap:4px;flex-wrap:wrap}.task-select-resource,.task-select-user,.task-select-priority{flex:1;min-width:100px;font-size:var(--text-xs);padding:3px 6px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-white);color:var(--text-dark);cursor:pointer}.task-select-priority{flex:0 0 auto;min-width:92px}.task-details-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.task-action-btn{font-size:var(--text-2xs);font-weight:600;padding:3px 8px;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;gap:3px;white-space:nowrap}.task-action-wa{background:var(--whatsapp);color:#fff}.task-action-drive{background:#4285f4;color:#fff}.task-action-ext{background:var(--amber-100);color:var(--amber-800);border-color:var(--amber-300)}.task-action-module{background:var(--blue-100);color:var(--blue-700);border-color:var(--blue-300)}.task-action-config{background:var(--gray-100);color:var(--text-muted);border:1px dashed var(--border-strong)}.task-edit-btn{font-size:var(--text-xs);opacity:.6;padding:2px 4px;background:none;border:none;cursor:pointer}.billing-summary-mini{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-md)}.billing-summary-mini .billing-item{display:flex;flex-direction:column}.docs-summary{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.docs-list-mini{max-height:150px;overflow-y:auto}.doc-item-mini{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) 0;font-size:var(--text-base)}.empty-state{text-align:center;padding:var(--spacing-xl);color:var(--text-muted)}.empty-state p{margin-bottom:var(--spacing-md)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.form-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border)}.form-section h4{margin-bottom:var(--spacing-md);font-size:var(--text-md)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--text-sm)}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}@media (max-width: 1024px){.team-grid{grid-template-columns:1fr}}.team-section{background:var(--surface);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-md)}.team-section h3{font-size:var(--text-lg);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border)}.team-form{margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:var(--gray-50);border-radius:var(--radius-md)}.team-form .form-row{display:flex;gap:var(--spacing-sm);align-items:flex-end;margin-bottom:var(--spacing-sm)}.team-form .form-actions{display:flex;gap:var(--spacing-sm)}.read-only-banner{background:var(--warning-light);color:var(--amber-800);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--text-base);margin-bottom:var(--spacing-md);text-align:center}.cargos-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.cargo-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm)}.cargo-delete-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--text-md);line-height:1;padding:0 2px;border-radius:50%}.cargo-delete-btn:hover{color:var(--danger);background:var(--danger-light)}.board-toolbar{display:flex;flex-wrap:wrap;gap:var(--spacing-md);align-items:center;margin-bottom:var(--spacing-md);padding:var(--spacing-sm) 0}.board-toolbar .form-input{flex:1;max-width:400px}.kanban-columns{display:flex;gap:var(--spacing-md);overflow-x:auto;padding-bottom:var(--spacing-md);min-height:400px}.kanban-column{min-width:280px;max-width:320px;flex-shrink:0;background:var(--gray-50);border-radius:var(--radius-md);display:flex;flex-direction:column}.kanban-column-header{padding:var(--spacing-sm) var(--spacing-md);border-top:3px solid var(--primary);display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:var(--text-md)}.column-header-actions{display:flex;align-items:center;gap:var(--spacing-xs)}.kanban-column-count{background:var(--gray-200);color:var(--gray-600);padding:2px 8px;border-radius:10px;font-size:var(--text-sm);font-weight:500}.kanban-column-body{flex:1;padding:var(--spacing-sm);display:flex;flex-direction:column;gap:var(--spacing-sm);min-height:100px}.kanban-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:box-shadow .15s,transform .15s}.kanban-card:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.kanban-card-ghost{opacity:.4;background:var(--primary-light)}.crm-card-ghost{opacity:.35;background:var(--indigo-100);border:1px dashed var(--indigo-500)!important}.crm-card-dragging{box-shadow:0 8px 24px #6366f140;cursor:grabbing!important;transform:rotate(1.5deg)}.kanban-card-title{font-weight:600;font-size:var(--text-base);margin-bottom:4px;color:var(--text)}.kanban-card-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--text-muted);margin-bottom:6px}.dian-cred-badge{display:inline-flex;align-items:center;gap:2px;font-size:var(--text-2xs);font-weight:600;padding:1px 6px;border-radius:10px;white-space:nowrap}.dian-cred-badge.dian-cred-ok{background:var(--green-100);color:var(--green-600)}.dian-cred-badge.dian-cred-bad{background:var(--red-100);color:var(--red-600)}.dian-cred-badge.dian-cred-pending{background:var(--yellow-100);color:var(--yellow-700)}.dian-cred-badge.dian-cred-none{background:var(--gray-100);color:var(--text-subtle)}.kanban-card-next{display:flex;align-items:baseline;gap:4px;font-size:var(--text-xs);line-height:1.35;margin-bottom:6px;min-width:0}.kanban-card-next-name{color:var(--text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.kanban-card-next-who{color:var(--text-muted);white-space:nowrap;flex-shrink:0}.kanban-card-waiting{display:inline-block;font-size:var(--text-2xs);font-weight:600;padding:1px 6px;border-radius:10px;background:var(--yellow-100);color:var(--yellow-700);margin-bottom:6px;white-space:nowrap}.kanban-card-progress{display:flex;align-items:center;gap:8px}.kanban-card-progress .progress-bar{flex:1}.due-overdue{color:var(--danger)}.due-today{color:var(--danger);font-weight:600}.due-soon{color:var(--warning)}.due-normal{color:var(--text-muted)}.client-detail .client-header{margin-bottom:var(--spacing-md)}.client-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md)}.info-item{display:flex;flex-direction:column;gap:2px}.info-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:var(--text-md);color:var(--text)}.form-input-sm{padding:4px 8px;font-size:var(--text-base)}.client-indicators{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);flex-wrap:wrap}.client-module-shortcuts{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:var(--spacing-md)}.module-shortcut-btn{font-size:var(--text-xs);padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-main);color:var(--text-gray);cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.module-shortcut-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.module-shortcut-highlight{background:var(--blue-50);border-color:var(--blue-500);color:var(--blue-700);font-weight:600}.module-shortcut-highlight:hover{background:var(--blue-700);color:#fff;border-color:var(--blue-700)}.indicator{display:inline-block;padding:4px 10px;border-radius:var(--radius-sm);font-size:var(--text-sm);text-decoration:none}.indicator-success{background:var(--success-light);color:var(--success)}.indicator-warning{background:var(--warning-light);color:var(--amber-800)}.client-progress{margin-bottom:var(--spacing-md)}.progress-header{display:flex;justify-content:space-between;font-size:var(--text-base);margin-bottom:4px}.progress-percent{font-weight:600;color:var(--primary)}.progress-bar-large{height:8px;background:var(--gray-200);border-radius:4px;overflow:hidden}.progress-bar-large .progress-fill{height:100%;background:var(--primary);border-radius:4px;transition:width .3s}.client-tabs{display:flex;gap:0;border-bottom:2px solid var(--border);margin-bottom:var(--spacing-md)}.tab-btn{background:none;border:none;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-base);color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s}.tab-btn:hover{color:var(--text)}.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.tasks-tab-toolbar{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-sm)}.phase-group{margin-bottom:var(--spacing-md)}.phase-title{font-size:var(--text-base);font-weight:600;color:var(--text);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--border);margin-bottom:var(--spacing-sm)}.phase-count{font-weight:400;color:var(--text-subtle);font-size:var(--text-sm)}.task-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:6px var(--spacing-sm);border-radius:var(--radius-sm);transition:background .1s}.task-item:hover{background:var(--gray-50)}.task-item.completed .task-name{text-decoration:line-through;color:var(--text-subtle)}.task-checkbox{display:flex;align-items:center;cursor:pointer}.task-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary)}.task-info{flex:1;display:flex;flex-direction:column;gap:1px}.task-name{font-size:var(--text-base);color:var(--text)}.task-assigned{font-size:var(--text-xs);color:var(--text-subtle)}.task-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s}.task-item:hover .task-actions{opacity:1}.comments-tab{display:flex;flex-direction:column;gap:var(--spacing-md);max-height:400px}.comments-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-sm);max-height:280px;padding-right:var(--spacing-xs)}.comment-item{background:var(--gray-50);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md)}.comment-header{display:flex;justify-content:space-between;margin-bottom:4px}.comment-author{font-weight:600;font-size:var(--text-sm);color:var(--text)}.comment-time{font-size:var(--text-xs);color:var(--text-subtle)}.comment-text{font-size:var(--text-base);color:var(--gray-600);white-space:pre-wrap}.comment-form{display:flex;gap:var(--spacing-sm);align-items:flex-end}.comment-form textarea{flex:1}.task-help-content textarea{width:100%}.task-help-readonly{font-size:var(--text-md);color:var(--gray-600);line-height:1.6;white-space:pre-wrap}.client-edit-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.billing-summary-mini{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--gray-50);border-radius:var(--radius-md)}.billing-summary-mini .summary-item{display:flex;flex-direction:column}.billing-summary-mini .label{font-size:var(--text-xs);color:var(--text-muted)}.billing-summary-mini .value{font-size:var(--text-lg);font-weight:600}.billing-record{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) 0;border-bottom:1px solid var(--gray-100)}.record-info{flex:1}.record-concept{font-size:var(--text-base);font-weight:500}.record-type{font-size:var(--text-xs);color:var(--text-subtle);margin-left:var(--spacing-sm)}.record-amount{font-weight:600;font-size:var(--text-md)}.docs-summary{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);font-size:var(--text-base)}.docs-list{display:flex;flex-direction:column;gap:4px}.doc-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:4px var(--spacing-sm);font-size:var(--text-base);border-radius:var(--radius-sm)}.doc-item.doc-recibido{background:var(--success-light)}.doc-item.doc-pendiente{background:var(--warning-light)}.doc-status{width:20px;text-align:center}.badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:var(--text-xs);font-weight:500}.badge-success{background:var(--success-light);color:var(--success)}.badge-warning{background:var(--warning-light);color:var(--amber-800)}.badge-info{background:var(--info-light);color:var(--info)}.badge-danger{background:var(--danger-light);color:var(--danger)}.badge-secondary{background:var(--gray-100);color:var(--gray-600)}.badge-urgent-task{background:var(--red-100);color:var(--red-700);border:1px solid var(--red-300);font-weight:700}.btn-icon{background:none;border:none;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-md);color:var(--text-muted);transition:background .1s,color .1s}.btn-icon:hover{background:var(--gray-100);color:var(--text)}.btn-icon-danger:hover{background:var(--danger-light);color:var(--danger)}.billing-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.summary-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md)}.summary-card.success{border-left:3px solid var(--success)}.summary-card.danger{border-left:3px solid var(--danger)}.summary-icon{font-size:var(--text-3xl)}.summary-info{display:flex;flex-direction:column}.summary-value{font-size:var(--text-xl);font-weight:700;color:var(--text)}.summary-label{font-size:var(--text-sm);color:var(--text-muted)}.billing-stats-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.cartera-aging h4,.cumplimiento-stats h4{font-size:var(--text-md);margin-bottom:var(--spacing-sm);color:var(--text)}.aging-bars{display:flex;flex-direction:column;gap:var(--spacing-sm)}.aging-item{display:flex;align-items:center;gap:var(--spacing-sm)}.aging-label{font-size:var(--text-sm);color:var(--text-muted);min-width:70px}.aging-bar{flex:1;height:8px;background:var(--gray-100);border-radius:4px;overflow:hidden}.aging-fill{height:100%;border-radius:4px;transition:width .3s}.aging-fill.success{background:var(--success)}.aging-fill.warning{background:var(--warning)}.aging-fill.orange{background:var(--orange-500)}.aging-fill.danger{background:var(--danger)}.aging-value{font-size:var(--text-sm);font-weight:600;min-width:100px;text-align:right}.cumplimiento-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}.cumplimiento-item{text-align:center;padding:var(--spacing-sm);background:var(--gray-50);border-radius:var(--radius-md)}.cumplimiento-value{display:block;font-size:var(--text-2xl);font-weight:700;color:var(--text)}.cumplimiento-label{font-size:var(--text-xs);color:var(--text-muted)}.billing-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;margin-bottom:var(--spacing-lg)}.billing-filters{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.data-table{width:100%;border-collapse:collapse;font-size:var(--text-base)}.data-table th{text-align:left;padding:var(--spacing-sm) var(--spacing-md);background:var(--gray-50);border-bottom:2px solid var(--border);font-size:var(--text-xs);text-transform:uppercase;color:var(--text-muted);letter-spacing:.5px}.data-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--gray-100);vertical-align:middle}.data-table tr:hover{background:var(--gray-50)}.data-table.small th,.data-table.small td{padding:4px 8px;font-size:var(--text-sm)}.row-anulado{opacity:.5;text-decoration:line-through}.action-buttons{display:flex;gap:2px}.billing-detail .detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.billing-detail .detail-info p{margin:4px 0;font-size:var(--text-base)}.mensajes-cobro-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.mensaje-cobro-item{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);display:flex;justify-content:space-between;align-items:center}.mensaje-cobro-header{display:flex;flex-direction:column;gap:2px}.mensaje-cobro-header strong{font-size:var(--text-base)}.mensaje-cobro-header span{font-size:var(--text-xs);color:var(--text-muted)}.quotes-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.quotes-filters{margin-bottom:var(--spacing-md)}.service-row{display:flex;align-items:center;gap:var(--spacing-sm);padding:6px 0;border-bottom:1px solid var(--gray-100)}.service-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);flex:1;cursor:pointer;font-size:var(--text-base)}.service-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary)}.payment-methods{display:flex;flex-direction:column;gap:var(--spacing-sm)}.radio-option{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--text-base);cursor:pointer}.radio-option input[type=radio]{accent-color:var(--primary)}.contract-preview h3,.contract-preview h4{margin:16px 0 8px}.contract-preview ul{margin:8px 0;padding-left:20px}.executive-dashboard .page-header{margin-bottom:var(--spacing-lg)}.dashboard-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.kpi-card{padding:var(--spacing-md);border-radius:var(--radius-md);background:linear-gradient(135deg,var(--gray-50),white);border:1px solid var(--border);text-align:center}.kpi-card.kpi-blue{border-left:3px solid var(--blue-500)}.kpi-card.kpi-orange{border-left:3px solid var(--orange-500)}.kpi-card.kpi-purple{border-left:3px solid var(--primary)}.kpi-card.kpi-green{border-left:3px solid var(--success)}.kpi-card.kpi-red{border-left:3px solid var(--danger)}.kpi-card.kpi-cyan{border-left:3px solid var(--info)}.kpi-card.kpi-yellow{border-left:3px solid var(--warning)}.kpi-card.kpi-teal{border-left:3px solid var(--teal-500)}.kpi-card.kpi-gray{border-left:3px solid var(--gray-400)}.kpi-value{font-size:var(--text-3xl);font-weight:700;color:var(--text)}.kpi-title{font-size:var(--text-sm);font-weight:600;color:var(--gray-600);margin-top:4px}.kpi-subtitle{font-size:var(--text-xs);color:var(--text-subtle)}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.dashboard-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--spacing-md)}.dashboard-section h3{font-size:var(--text-md);font-weight:600;margin-bottom:var(--spacing-md);color:var(--text)}.declarations-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xs);font-size:var(--text-base);margin-top:var(--spacing-sm)}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.dot-orange{background:var(--orange-500)}.dot-purple{background:var(--primary)}.dot-green{background:var(--success)}.dot-red{background:var(--danger)}.dot-teal{background:var(--teal-500)}.dot-amber{background:var(--amber-500)}.dot-gray{background:var(--gray-400)}.cartera-breakdown{display:flex;flex-direction:column;gap:6px;font-size:var(--text-base)}.recent-comments-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.recent-comment{padding:var(--spacing-sm);background:var(--gray-50);border-radius:var(--radius-sm)}.recent-comment-header{display:flex;justify-content:space-between;font-size:var(--text-sm);margin-bottom:4px}.recent-comment-text{font-size:var(--text-sm);color:var(--gray-600);margin:0}.recent-comment-time{font-size:var(--text-2xs);color:var(--text-subtle)}.team-mini-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.team-mini-item{display:flex;align-items:center;gap:var(--spacing-sm)}.team-mini-avatar{width:28px;height:28px;border-radius:50%;background:var(--primary-light);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:600}.team-mini-info{display:flex;flex-direction:column}.team-mini-name{font-size:var(--text-base);font-weight:500}.team-mini-role{font-size:var(--text-xs);color:var(--text-subtle)}.team-task-list{display:flex;flex-direction:column;gap:4px}.team-task-member{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.team-task-header{display:flex;align-items:center;gap:8px;padding:8px 10px;cursor:pointer;background:var(--surface);transition:background .12s}.team-task-header:hover{background:var(--gray-50)}.team-task-info{flex:1;display:flex;flex-direction:column}.team-task-meta{display:flex;align-items:center;gap:6px;flex-shrink:0}.team-task-badge{min-width:22px;height:22px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:700;padding:0 6px}.ttb-urgent{background:var(--red-100);color:var(--red-600)}.ttb-high{background:var(--orange-100);color:var(--orange-600)}.ttb-normal{background:var(--indigo-100);color:var(--indigo-700)}.ttb-zero{background:var(--gray-100);color:var(--text-subtle)}.team-task-chevron{font-size:var(--text-xs);color:var(--text-subtle)}.team-task-body{border-top:1px solid var(--gray-100);background:var(--gray-50)}.team-task-filters{display:flex;flex-wrap:wrap;gap:4px;padding:6px 10px;border-bottom:1px solid var(--gray-100)}.ttf-btn{font-size:var(--text-xs);padding:2px 8px;border-radius:20px;border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--gray-600);transition:background .1s,border-color .1s}.ttf-btn:hover{background:var(--gray-100)}.ttf-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.team-task-items{display:flex;flex-direction:column}.team-task-item{display:flex;align-items:flex-start;gap:6px;padding:5px 10px;border-bottom:1px solid var(--gray-100);font-size:var(--text-sm)}.team-task-item:last-child{border-bottom:none}.team-task-pri{flex-shrink:0;margin-top:1px}.team-task-item-info{display:flex;flex-direction:column;min-width:0}.team-task-item-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}.team-task-item-client{font-size:var(--text-xs);color:var(--text-subtle);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.personal-dashboard{padding:var(--spacing-md)}.personal-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.personal-kpi-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--spacing-lg);text-align:center;display:flex;flex-direction:column;gap:var(--spacing-xs)}.personal-kpi-value{font-size:var(--text-4xl);font-weight:700;color:var(--primary)}.personal-kpi-label{font-size:var(--text-sm);color:var(--text-muted);text-transform:uppercase}.gamification-section{margin-bottom:var(--spacing-lg)}.rank-card{background:linear-gradient(135deg,var(--primary),var(--indigo-500));border-radius:var(--radius-lg);padding:var(--spacing-xl);color:#fff;text-align:center}.rank-stars{font-size:var(--text-3xl);margin-bottom:var(--spacing-xs)}.rank-name{font-size:var(--text-2xl);font-weight:700;margin-bottom:var(--spacing-md)}.performance-bar{height:8px;background:#ffffff4d;border-radius:4px;overflow:hidden;margin-bottom:var(--spacing-xs)}.performance-fill{height:100%;background:var(--surface);border-radius:4px;transition:width .3s ease}.performance-text{font-size:var(--text-base);opacity:.9}.leaderboard-section{margin-bottom:var(--spacing-lg)}.leaderboard-section h3{margin-bottom:var(--spacing-md)}.leaderboard-list{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.leaderboard-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--gray-100)}.leaderboard-item:last-child{border-bottom:none}.leaderboard-me{background:var(--primary-light)}.leaderboard-pos{font-size:var(--text-lg);width:28px;text-align:center}.leaderboard-name{flex:1;font-size:var(--text-base);font-weight:500}.leaderboard-completed{font-size:var(--text-sm);color:var(--text-muted)}.leaderboard-pct{font-size:var(--text-sm);font-weight:600;color:var(--primary)}.my-tasks-section h3{margin-bottom:var(--spacing-md)}.my-tasks-list{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.my-task-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--gray-100)}.my-task-item:last-child{border-bottom:none}.my-task-name{font-size:var(--text-base)}.my-task-client{font-size:var(--text-xs);color:var(--text-muted)}.chat-container{display:flex;flex-direction:column;height:calc(100vh - 120px);background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--border);overflow:hidden}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border)}.chat-header h2{margin:0;font-size:var(--text-lg)}.chat-online{font-size:var(--text-sm);color:var(--text-muted)}.chat-messages{flex:1;overflow-y:auto;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.chat-message{max-width:70%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);background:var(--gray-100)}.chat-message-mine{align-self:flex-end;background:var(--primary-light)}.chat-message-header{display:flex;gap:var(--spacing-sm);margin-bottom:2px}.chat-sender{font-size:var(--text-xs);font-weight:600;color:var(--primary)}.chat-time{font-size:var(--text-2xs);color:var(--text-subtle)}.chat-message-body{font-size:var(--text-base);line-height:1.4}.chat-mention{color:var(--primary);font-weight:600}.chat-input-area{position:relative;display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);border-top:1px solid var(--border)}.chat-input{flex:1;border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-base);font-family:inherit}.chat-send-btn{align-self:flex-end}.mention-dropdown{position:absolute;bottom:100%;left:var(--spacing-md);background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-height:150px;overflow-y:auto;z-index:100}.mention-item{padding:var(--spacing-xs) var(--spacing-md);cursor:pointer;font-size:var(--text-base)}.mention-item:hover{background:var(--gray-100)}.schedule-container{padding:var(--spacing-md)}.schedule-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.schedule-stat{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--spacing-lg);text-align:center;display:flex;flex-direction:column;gap:var(--spacing-xs)}.schedule-stat-value{font-size:var(--text-4xl);font-weight:700;color:var(--primary)}.schedule-stat-label{font-size:var(--text-sm);color:var(--text-muted);font-weight:500}.schedule-stat-sub{font-size:var(--text-xs);color:var(--text-subtle);margin-top:2px}.schedule-stat-danger .schedule-stat-value{color:var(--danger)}.schedule-stat-success .schedule-stat-value{color:var(--success)}.schedule-stat-urgent .schedule-stat-value{color:var(--red-600)}.schedule-stat-near .schedule-stat-value{color:var(--amber-600)}.schedule-stat{transition:border-color .15s,box-shadow .15s}.schedule-stat:hover{border-color:var(--primary);box-shadow:0 2px 8px #6366f11f}.schedule-section{margin-bottom:var(--spacing-lg)}.schedule-section h3{margin-bottom:var(--spacing-md)}.schedule-overdue h3{color:var(--danger)}.schedule-done h3{color:var(--success)}.schedule-list{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.schedule-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--gray-100);transition:background .1s}.schedule-item:hover{background:#6366f10a!important}.schedule-item:last-child{border-bottom:none}.schedule-item-overdue{background:#ef444412;border-left:3px solid rgba(239,68,68,.5)}.schedule-item-urgent{background:#f9731612;border-left:3px solid rgba(249,115,22,.5)}.schedule-item-near{background:#eab3080f;border-left:3px solid rgba(234,179,8,.4)}.schedule-item-done{background:#22c55e0d;border-left:3px solid rgba(34,197,94,.35);opacity:.75}.schedule-item-no-presentar{background:#9ca3af12;border-left:3px solid rgba(156,163,175,.4)}.schedule-item-client{display:flex;flex-direction:column;gap:2px}.schedule-item-name{font-size:var(--text-base);font-weight:500}.schedule-item-nit{font-size:var(--text-xs);color:var(--text-muted)}.schedule-item-date{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.schedule-item-due{font-size:var(--text-base);font-weight:500}.schedule-item-days{font-size:var(--text-xs);color:var(--text-muted)}.text-danger{color:var(--danger)!important}.knowledge-container{padding:var(--spacing-md)}.knowledge-tabs{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);border-bottom:2px solid var(--border);padding-bottom:var(--spacing-xs)}.knowledge-tab{padding:var(--spacing-sm) var(--spacing-md);border:none;background:none;cursor:pointer;font-size:var(--text-md);color:var(--text-muted);border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .2s,border-color .2s}.knowledge-tab.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.knowledge-empty{text-align:center;padding:var(--spacing-xl);color:var(--text-muted)}.knowledge-category{margin-bottom:var(--spacing-lg)}.knowledge-category h3{margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--border)}.knowledge-article{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-sm)}.knowledge-article h4{margin:0 0 var(--spacing-xs) 0;font-size:var(--text-md)}.knowledge-article-body{font-size:var(--text-base);color:var(--gray-600);line-height:1.5}.knowledge-reference-wrap{max-width:860px}.knowledge-search-bar{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.knowledge-search-bar .form-input{flex:1;font-size:var(--text-base)}.knowledge-search-count{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;min-width:80px;text-align:right}.kc-group{border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:var(--spacing-sm);overflow:hidden}.kc-group-header{width:100%;display:flex;align-items:center;gap:var(--spacing-sm);padding:12px var(--spacing-md);background:var(--gray-50);border:none;cursor:pointer;font-size:var(--text-md);font-weight:600;color:var(--text-dark);text-align:left;transition:background .15s}.kc-group-header:hover{background:var(--gray-100)}.kc-group-header.open{background:var(--white);border-bottom:1px solid var(--border)}.kc-group-icon{font-size:var(--text-lg);flex-shrink:0}.kc-group-label{flex:1}.kc-group-count{font-size:var(--text-xs);font-weight:600;color:var(--white);background:var(--primary);border-radius:20px;padding:1px 8px}.kc-chevron{font-size:var(--text-2xs);color:var(--text-subtle);margin-left:4px}.kc-group-body{display:none;padding:var(--spacing-sm) var(--spacing-md)}.kc-group-body.open{display:block}.kc-article{border-bottom:1px solid var(--gray-100)}.kc-article:last-child{border-bottom:none}.kc-article-title{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:10px 4px;background:none;border:none;cursor:pointer;font-size:var(--text-base);font-weight:500;color:var(--text-dark);text-align:left;transition:color .15s}.kc-article-title:hover{color:var(--primary)}.kc-article.open .kc-article-title{color:var(--primary);font-weight:600}.kc-article-chevron{font-size:9px;color:var(--text-subtle);flex-shrink:0}.kc-article-body{display:none;padding:0 4px 12px}.kc-article-body.open{display:block}.kc-article-content{font-size:var(--text-base);color:var(--gray-600);line-height:1.6}.simulator-container{max-width:600px}.simulator-container h3{margin-bottom:var(--spacing-xs)}.simulator-form{display:flex;gap:var(--spacing-md);align-items:flex-end;margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg)}.simulator-field{flex:1}.simulator-field label{display:block;font-size:var(--text-sm);margin-bottom:4px;color:var(--gray-600)}.simulator-result{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.simulator-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--spacing-md)}.sim-result-item{display:flex;flex-direction:column;gap:4px}.sim-result-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase}.sim-result-value{font-size:var(--text-lg);font-weight:600}.sim-result-highlight .sim-result-value{color:var(--primary);font-size:var(--text-2xl)}.simulator-table{margin-top:var(--spacing-lg)}.simulator-table h4{margin-bottom:var(--spacing-sm)}.ai-config-container{padding:var(--spacing-md);max-width:600px}.ai-status{display:flex;align-items:center;gap:var(--spacing-sm)}.ai-status-badge{width:10px;height:10px;border-radius:50%;background-color:var(--gray-400)}.ai-status-text{font-size:var(--text-sm);color:var(--text-muted)}.ai-config-form{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.input-with-toggle{display:flex;gap:var(--spacing-xs);align-items:center}.input-with-toggle .form-input{flex:1}.input-with-toggle .btn-icon{font-size:var(--text-xl);cursor:pointer;background:none;border:none}.validation-container{padding:var(--spacing-md)}.validation-progress{margin-bottom:var(--spacing-md)}.validation-progress-bar{height:8px;background:var(--gray-200);border-radius:4px;overflow:hidden;margin-top:var(--spacing-xs)}.validation-progress-fill{height:100%;background:var(--success);border-radius:4px;transition:width .3s}.validation-badges{margin-bottom:var(--spacing-md)}.validation-badge-signed{background:var(--green-100);color:var(--green-800);padding:4px 10px;border-radius:12px;font-size:var(--text-sm);font-weight:500}.validation-badge-pending{background:var(--amber-100);color:var(--amber-800);padding:4px 10px;border-radius:12px;font-size:var(--text-sm);font-weight:500}.validation-checklist{display:flex;flex-direction:column;gap:var(--spacing-lg)}.validation-category{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.validation-category-header{background:var(--navy-700);color:#fff;padding:var(--spacing-sm) var(--spacing-md);display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:var(--text-md)}.validation-category-count{background:#fff3;padding:4px 10px;border-radius:12px;font-size:var(--text-xs)}.validation-category-body{padding:var(--spacing-sm) var(--spacing-md)}.validation-subcategory{margin-bottom:var(--spacing-sm)}.validation-subcategory-title{font-weight:600;font-size:var(--text-sm);color:var(--navy-700);margin-bottom:var(--spacing-xs);padding-left:4px;border-left:3px solid var(--blue-500)}.validation-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);cursor:pointer;transition:background .2s}.validation-item:hover{background:var(--gray-50)}.validation-item-checked{background:var(--green-50)}.validation-item-checked:hover{background:var(--green-100)}.validation-item-checked .validation-item-name{text-decoration:line-through;opacity:.8;color:var(--green-800)}.validation-item input[type=checkbox]{margin-top:2px;width:18px;height:18px;accent-color:var(--emerald-500);cursor:pointer}.validation-item-content{flex:1}.validation-item-name{font-size:var(--text-base);display:block}.validation-badge-required{background:var(--red-100);color:var(--red-600);padding:2px 6px;border-radius:4px;font-size:9px;font-weight:600}.validation-badge-optional{background:var(--gray-100);color:var(--text-muted);padding:2px 6px;border-radius:4px;font-size:9px;font-weight:600}.validation-section{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;margin-top:var(--spacing-md)}.validation-section-title{background:var(--navy-700);color:#fff;padding:var(--spacing-sm) var(--spacing-md);font-weight:700;font-size:var(--text-md)}.validation-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-sm);padding:var(--spacing-md)}.validation-status-option{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);border:2px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.validation-status-option.selected{border-color:var(--status-color);background:color-mix(in srgb,var(--status-color) 10%,white)}.validation-status-icon{font-size:var(--text-xl)}.validation-status-label{font-size:var(--text-sm)}.validation-observations{width:100%;min-height:80px;padding:var(--spacing-md);margin:var(--spacing-md);box-sizing:border-box}.validation-signature{padding:var(--spacing-lg);text-align:center}.validation-signed{background:var(--green-50);border:1px solid var(--green-300);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.validation-signed-icon{font-size:36px;margin-bottom:var(--spacing-sm)}.validation-signed-title{font-weight:700;color:var(--green-800);font-size:var(--text-lg);margin-bottom:4px}.validation-signed-info{color:var(--green-800);font-size:var(--text-base);margin-bottom:var(--spacing-md)}.validation-unsigned p{color:var(--text-muted);font-size:var(--text-base);margin-bottom:var(--spacing-md)}.validation-empty{text-align:center;padding:var(--spacing-xl);color:var(--text-muted)}.survey-rating{display:flex;gap:var(--spacing-sm);justify-content:center;margin:var(--spacing-md) 0}.survey-star{font-size:var(--text-4xl);background:none;border:none;cursor:pointer;opacity:.3;transition:opacity .2s}.survey-star:hover{opacity:.7}.survey-rating-text{text-align:center;font-size:var(--text-base);color:var(--text-muted)}.provisional-password{font-family:monospace;font-size:var(--text-3xl);font-weight:700;letter-spacing:3px;text-align:center;padding:var(--spacing-md);background:var(--gray-50);border:2px dashed var(--border-strong);border-radius:var(--radius-md);color:var(--primary)}.contract-preview{padding:var(--spacing-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--gray-50);font-size:var(--text-base);line-height:1.6}.contract-preview h4{text-align:center;margin-bottom:var(--spacing-md)}@media (max-width: 768px){.billing-stats-row,.dashboard-grid{grid-template-columns:1fr}.dashboard-kpis,.personal-kpis{grid-template-columns:repeat(2,1fr)}.schedule-summary{grid-template-columns:1fr}.simulator-form{flex-direction:column}.chat-message{max-width:85%}.validation-status-grid{grid-template-columns:1fr}}.audit-lbl{display:block;font-size:.68rem;font-weight:700;color:var(--text-gray);margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.04em}.audit-input{width:100%;padding:.45rem .65rem;border:1px solid var(--border);border-radius:var(--radius-md);font-size:.82rem;color:var(--text-dark);outline:none}.audit-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}@media (max-width: 860px){#auditTopPanel{grid-template-columns:1fr!important}}.audit-planning-wrap{margin-top:1.5rem;background:var(--bg-card);border-radius:var(--radius-xl);border:1px solid var(--border);box-shadow:var(--shadow-md)}.audit-planning-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;padding:1rem 1.25rem;border-bottom:1px solid var(--border);background:var(--bg-main)}.audit-planning-params{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border);background:var(--gray-50)}.audit-planning-table-scroll{overflow:auto;max-height:60vh}.audit-planning-table{width:100%;border-collapse:collapse;font-size:.78rem;min-width:900px}.audit-planning-table th,.audit-planning-table td{border:1px solid var(--border);padding:.35rem .5rem;text-align:right;white-space:nowrap}.audit-planning-table th{background:var(--navy-700);color:#fff;font-weight:700;position:sticky;top:0;z-index:3}.audit-planning-table th.row-label{left:0;z-index:4;background:var(--navy-700);color:#fff;text-align:left}.audit-planning-table th .year-actions{opacity:0;transition:opacity .2s}.audit-planning-table th:hover .year-actions{opacity:1}.audit-planning-table th .year-actions span:hover{opacity:1!important;transform:scale(1.2)}.audit-planning-table .row-label{text-align:left;font-weight:600;color:var(--text-dark);background:var(--gray-100);position:sticky;left:0;z-index:1;min-width:220px;max-width:220px}.audit-planning-table .row-label.section{background:var(--gray-200);font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-gray)}.audit-planning-table tr.highlight-green td{background:var(--green-100);font-weight:700}.audit-planning-table tr.highlight-green .row-label{background:var(--green-200)}.audit-planning-table input.cell-input{width:100%;min-width:88px;border:1px solid transparent;background:transparent;text-align:right;font-size:.78rem;padding:.2rem .25rem;border-radius:4px;color:var(--text-dark)}.audit-planning-table input.cell-input:focus{border-color:var(--primary);background:var(--surface);outline:none}.audit-planning-table .cell-calc{color:var(--text-dark);font-variant-numeric:tabular-nums}.audit-planning-table .cell-na{color:var(--text-light);font-style:italic;text-align:center}.audit-planning-table th.year-sin-datos{background:var(--gray-50);color:var(--text-gray)}.audit-planning-table .cell-sin-datos{color:var(--text-light);text-align:center;background:var(--gray-50)}.audit-planning-table .cell-brecha{background:var(--red-100);color:var(--red-800);font-weight:700}@media print{.sidebar,.main-header,.audit-planning-toolbar,.audit-planning-params{display:none!important}.audit-planning-table-scroll{max-height:none;overflow:visible}}#calc-widget{position:fixed;bottom:88px;right:24px;z-index:10001;font-family:Outfit,sans-serif}#calc-panel{background:var(--gray-800);border-radius:16px;box-shadow:0 8px 32px #00000052;padding:12px;width:224px}#calc-display{background:var(--navy-950);border-radius:10px;padding:10px 14px;margin-bottom:10px;min-height:56px;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end}#calc-expr{font-size:var(--text-xs);color:var(--text-muted);min-height:16px;word-break:break-all}#calc-result{font-size:var(--text-3xl);font-weight:700;color:#fff;word-break:break-all;line-height:1.2}#calc-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.calc-btn{height:48px;border:none;border-radius:10px;font-size:var(--text-lg);font-weight:600;cursor:pointer;background:var(--gray-700);color:#fff;transition:background .1s,transform .1s}.calc-btn:hover{background:var(--gray-600);transform:scale(1.06)}.calc-btn:active{transform:scale(.96)}.calc-fn{background:var(--gray-600);color:var(--gray-200)}.calc-op{background:var(--primary);color:#fff}.calc-op:hover{background:var(--primary-dark, var(--blue-800))}.calc-eq{background:var(--emerald-500);color:#fff}.calc-eq:hover{background:var(--emerald-600)}.calc-zero{grid-column:span 2;text-align:left;padding-left:18px}.borrador-card{background:var(--surface);border-radius:12px;box-shadow:0 2px 8px #00000014;margin:20px 0;overflow:hidden;transition:all .2s ease}.borrador-card:hover{box-shadow:0 4px 12px #0000001f}.borrador-card-new{border:2px dashed var(--border-strong);border-left:4px solid var(--primary);background:linear-gradient(135deg,var(--orange-50) 0%,var(--orange-50) 100%)}.borrador-card-active{border:2px solid var(--primary)}.borrador-card-header{display:flex;align-items:center;gap:16px;padding:20px;background:linear-gradient(135deg,var(--sky-50) 0%,var(--sky-100) 100%);border-bottom:1px solid var(--border)}.borrador-card-new .borrador-card-header{background:linear-gradient(135deg,var(--orange-50) 0%,var(--orange-50) 100%);border-bottom:2px solid var(--primary)}.borrador-card-icon{font-size:36px;line-height:1}.borrador-card-title{flex:1}.borrador-card-title h3{margin:0 0 4px;font-size:var(--text-xl);font-weight:700;color:var(--text-strong)}.borrador-card-title p{margin:0;font-size:var(--text-base);color:var(--gray-600)}.borrador-card-status{display:flex;gap:8px}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge-warning{background:var(--warning-light);color:var(--amber-800)}.status-badge-success{background:var(--success-light);color:var(--emerald-800)}.borrador-card-body{padding:20px}.borrador-card-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:20px}.meta-item{display:flex;flex-direction:column;gap:4px}.meta-label{font-size:var(--text-sm);color:var(--text-muted);font-weight:500}.meta-value{font-size:var(--text-md);color:var(--text-strong);font-weight:600}.borrador-card-actions{display:flex;gap:12px}.btn-large{font-size:var(--text-lg);padding:12px 24px}.client-detail-layout{display:flex;height:calc(96vh - 110px);overflow:hidden;gap:0}.client-sidebar{width:220px;min-width:220px;background:var(--gray-50);border-right:1px solid var(--border);overflow-y:auto;padding:10px 12px;display:flex;flex-direction:column;gap:0;scrollbar-width:thin;scrollbar-color:transparent transparent}.client-sidebar:hover{scrollbar-color:var(--gray-300) transparent}.client-sidebar::-webkit-scrollbar{width:4px}.client-sidebar::-webkit-scrollbar-track{background:transparent}.client-sidebar::-webkit-scrollbar-thumb{background:transparent;border-radius:4px}.client-sidebar:hover::-webkit-scrollbar-thumb{background:var(--gray-300)}.csb-block{padding:8px 0;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:4px}.csb-block:last-child{border-bottom:none}.csb-block-title{font-size:var(--text-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-subtle);margin-bottom:4px}.csb-doc{font-size:var(--text-base);font-weight:700;color:var(--text)}.csb-due-badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-sm);font-weight:600;padding:3px 10px;border-radius:20px;background:var(--gray-100);color:var(--gray-600);width:fit-content}.csb-due-badge.due-danger{background:var(--red-100);color:var(--red-600)}.csb-due-badge.due-warning{background:var(--amber-100);color:var(--amber-600)}.csb-due-badge.due-ok{background:var(--green-100);color:var(--green-600)}.csb-client-status{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-sm);font-weight:700;padding:4px 10px;border-radius:20px;width:fit-content;margin-bottom:8px;border:none}.csb-client-status-active{background:var(--green-100);color:var(--green-600)}.csb-client-status-inactive{background:var(--red-100);color:var(--red-600)}.csb-client-status-btn{cursor:pointer}.csb-client-status-btn:hover{filter:brightness(.95)}.csb-progress-wrap{display:flex;align-items:center;gap:8px}.csb-progress-bar{flex:1;height:6px;background:var(--gray-200);border-radius:3px;overflow:hidden}.csb-progress-bar div{height:100%;background:var(--primary, var(--indigo-500));border-radius:3px;transition:width .3s}.csb-progress-pct{font-size:var(--text-xs);font-weight:700;color:var(--primary, var(--indigo-500));white-space:nowrap}.csb-status-select{font-size:var(--text-sm);padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);cursor:pointer;width:100%}.csb-indicator-row{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--text);padding:2px 0}.csb-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.csb-dot-ok{background:var(--emerald-500)}.csb-dot-warn{background:var(--amber-500)}.csb-dot-off{background:var(--gray-300)}.csb-indicator-label{flex:1}.csb-indicator-action{font-size:var(--text-xs);color:var(--primary, var(--indigo-500));text-decoration:none;white-space:nowrap;cursor:pointer;background:none;border:none;padding:0}.csb-indicator-action:hover{text-decoration:underline}.csb-contact-row{font-size:var(--text-sm);color:var(--gray-600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csb-edit-btn{width:100%;padding:7px 12px;background:var(--surface);border:1px solid var(--border);border-radius:7px;font-size:var(--text-sm);font-weight:600;color:var(--text);cursor:pointer;text-align:center;transition:all .15s;margin:8px 0}.csb-edit-btn:hover{border-color:var(--primary, var(--indigo-500));color:var(--primary, var(--indigo-500))}.csb-module-btn{width:100%;padding:6px 10px;background:var(--surface);border:1px solid var(--gray-100);border-radius:6px;font-size:var(--text-sm);color:var(--text);cursor:pointer;text-align:left;transition:all .15s;margin-bottom:3px}.csb-module-btn:hover{background:var(--blue-50);border-color:var(--blue-200);color:var(--blue-800)}.csb-module-btn-highlight{background:var(--blue-50);border-color:var(--blue-200);color:var(--blue-800);font-weight:600}.csb-module-btn-highlight:hover{background:var(--blue-100)}.csb-module-btn-locked{opacity:.55;color:var(--text-subtle);border-color:var(--border);cursor:pointer}.csb-module-btn-locked:hover{opacity:.85;background:var(--amber-100);border-color:var(--amber-300);color:var(--amber-800)}.csb-notes-empty{font-size:var(--text-xs);color:var(--text-subtle);margin:4px 0;text-align:center}.csb-note-item{padding:5px 0;border-bottom:1px solid var(--gray-100)}.csb-note-item:last-child{border-bottom:none}.csb-note-item.csb-note-done .csb-note-content{text-decoration:line-through;color:var(--text-subtle)}.csb-note-row{display:flex;align-items:flex-start;gap:5px}.csb-note-check{flex-shrink:0;width:18px;height:18px;border:1.5px solid var(--border-strong);border-radius:4px;background:var(--surface);font-size:var(--text-xs);cursor:pointer;color:var(--text-muted);display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.csb-note-check.checked{background:var(--green-500);border-color:var(--green-500);color:#fff}.csb-note-type{font-size:var(--text-xs);flex-shrink:0}.csb-note-content{flex:1;font-size:var(--text-sm);color:var(--text);word-break:break-word;line-height:1.4}.csb-note-del{flex-shrink:0;background:none;border:none;color:var(--gray-300);cursor:pointer;font-size:var(--text-xs);padding:1px 3px;border-radius:3px;line-height:1}.csb-note-del:hover{color:var(--red-500);background:var(--red-50)}.csb-note-meta{margin-left:23px;margin-top:2px}.csb-note-assignee{font-size:var(--text-2xs);color:var(--text-muted);background:var(--gray-100);border-radius:10px;padding:1px 7px;display:inline-block}.csb-note-input{padding:5px 7px;border:1px solid var(--border);border-radius:5px;font-size:var(--text-sm);color:var(--text);background:var(--surface);outline:none}.csb-note-input:focus{border-color:var(--indigo-300)}.client-main{flex:1;overflow-y:auto;padding:12px 16px;min-width:0}.client-main .tasks-list-view{max-height:none;overflow-y:visible}.sweep-menu-item{display:block;width:100%;padding:11px 16px;text-align:left;background:var(--surface);border:none;border-bottom:1px solid var(--gray-100);font-size:var(--text-base);font-weight:500;font-family:inherit;color:var(--text);cursor:pointer;white-space:nowrap;transition:background .12s}.sweep-menu-item:last-child{border-bottom:none}.sweep-menu-item:hover{background:var(--gray-100)}.nav-group.open .nav-group-dot{display:none!important}.kanban-column.auto-collapsed{min-width:48px;max-width:48px;overflow:hidden;cursor:pointer;opacity:.75;transition:min-width .18s ease,max-width .18s ease,opacity .18s ease}.kanban-column.auto-collapsed:hover{opacity:1}.kanban-column.auto-collapsed .kanban-column-body{display:none}.kanban-column.auto-collapsed .kanban-column-header{flex-direction:column;align-items:center;justify-content:flex-start;padding:var(--spacing-sm) 6px;gap:6px}.kanban-column.auto-collapsed .column-header-actions{display:none}.kanban-column.auto-collapsed .column-title{writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-height:180px;font-size:var(--text-sm)}.kanban-columns.dragging .kanban-column.auto-collapsed{min-width:260px;max-width:260px;opacity:1;border:2px dashed var(--primary)}.kanban-columns.dragging .kanban-column.auto-collapsed .kanban-column-body{display:block;min-height:90px}.kanban-columns.dragging .kanban-column.auto-collapsed .kanban-column-header{flex-direction:row;align-items:center;justify-content:space-between;padding:var(--spacing-md)}.kanban-columns.dragging .kanban-column.auto-collapsed .column-header-actions{display:flex}.kanban-columns.dragging .kanban-column.auto-collapsed .column-title{writing-mode:horizontal-tb;transform:none;max-height:none}.sidebar-nav li.nav-locked a:hover{background:#94a3b81f}.sidebar-nav li.nav-locked a{transition:background .15s,opacity .15s}.sidebar-nav li.nav-locked a:hover{opacity:.7!important}.select-destino-exogena{font-size:var(--text-sm)!important;font-family:inherit!important}.select-destino-exogena optgroup{font-weight:600!important;font-style:normal!important;padding:4px 0}.select-destino-exogena optgroup[label*="Patrimonio (Activos)"]{background:var(--blue-50)}.select-destino-exogena optgroup[label*="Patrimonio (Pasivos)"]{background:var(--red-50)}.select-destino-exogena optgroup[label*="Rentas de Trabajo"]{background:var(--green-50)}.select-destino-exogena optgroup[label*="Rentas No Laborales"]{background:var(--orange-50)}.select-destino-exogena optgroup[label*=Dividendos]{background:var(--purple-50)}.select-destino-exogena optgroup[label*=Liquidación]{background:var(--sky-50)}.btn-destino-ayuda{color:var(--text-muted)!important;transition:all .2s ease}.btn-destino-ayuda:hover{background:var(--gray-100)!important;border-color:var(--gray-400)!important;color:var(--text)!important}:focus-visible{outline:2px solid var(--primary, var(--indigo-500));outline-offset:2px;border-radius:4px}.loading{position:relative;color:var(--text-subtle);padding:18px 0 0;min-height:120px}.loading:before,.loading:after{content:"";display:block;height:14px;border-radius:7px;background:linear-gradient(90deg,var(--gray-200) 25%,var(--gray-200) 45%,var(--gray-200) 65%);background-size:200% 100%;animation:skeleton-pulse 1.2s ease-in-out infinite;margin:10px 0}.loading:before{width:62%}.loading:after{width:84%;animation-delay:.15s}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 900px){.data-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}.icon{display:inline-block;flex-shrink:0;vertical-align:-.2em;pointer-events:none}button .icon,a .icon{vertical-align:middle}.nav-icon,.nav-group-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1}.sidebar-nav a .nav-icon{opacity:.85}.sidebar-nav li.active a .nav-icon{opacity:1}.sidebar-toggle,.btn-logout,.toast-close,.modal-close,.urgent-bell-icon{display:inline-flex;align-items:center;justify-content:center}.btn-logout{gap:6px}.modal-close{padding:4px;border-radius:var(--radius-sm)}.modal-close:hover{background:var(--gray-100)}.hub-fab .icon{display:block}button,input,select,textarea{font-family:inherit}.sidebar-nav a{font-size:var(--text-base)}.nav-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.main-header{padding:10px var(--spacing-lg);min-height:58px;gap:var(--spacing-md)}.header-titles{display:flex;flex-direction:column;min-width:0;line-height:1.2}.header-crumb{font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle)}.header-crumb:empty{display:none}.header-title-row{display:flex;align-items:baseline;gap:8px;min-width:0}.page-title{font-size:var(--text-xl);font-weight:700;color:var(--text-strong);letter-spacing:-.01em}.page-meta{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap}.page-meta:empty{display:none}.dashboard-header>h2,.page-header>h2,[data-page-title]{display:none}.dashboard-header,.page-header{margin-bottom:var(--spacing-md)}.dashboard-header-actions,.page-header>:last-child:not(h2){margin-left:auto}.page-header:not(:has(>:not(h2))){display:none}.sidebar{background:var(--surface);color:var(--text);border-right:1px solid var(--border)}.sidebar-header{border-bottom-color:var(--border)}.logo-text{color:var(--navy-950)}.logo-text .logo-pro{color:var(--primary)}.sidebar-toggle{color:var(--text-muted)}.sidebar-toggle:hover{background:var(--gray-100);color:var(--text)}.sidebar-nav{scrollbar-width:thin;scrollbar-color:var(--gray-300) transparent}.sidebar-nav a,.nav-group-body li a{color:var(--gray-700)}.sidebar-nav a:hover,.nav-group-body li a:hover{background:var(--gray-100);color:var(--text-strong)}.sidebar-nav li.active a,.nav-group-body li.active a{background:var(--primary-bg);color:var(--primary);font-weight:600}.nav-group-header{color:var(--text-subtle)}.nav-group-header:hover{color:var(--text-muted);background:var(--gray-50)}.nav-group.has-active .nav-group-header{color:var(--text-muted)}.sidebar-nav li.nav-locked a:hover{background:var(--gray-100)}.sidebar-footer{border-top-color:var(--border)}.user-name{color:var(--text)}.user-role{color:var(--text-muted);opacity:1}.user-avatar{color:#fff}.btn-logout{background:var(--gray-100);color:var(--gray-700)}.btn-logout:hover{background:var(--gray-200)}#widgetFusionado{box-shadow:var(--shadow-sm)!important;border-color:transparent!important}.dp-dropdown{position:relative;display:inline-block}.dp-dropdown-btn .dp-caret{margin-left:2px;opacity:.7;transition:transform var(--transition-fast)}.dp-dropdown.open .dp-dropdown-btn .dp-caret{transform:rotate(180deg)}.dp-dropdown-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:6px;z-index:1000}.dp-dropdown-menu.align-left{right:auto;left:0}.dp-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;background:none;border-radius:var(--radius-sm);font-size:var(--text-base);color:var(--text);cursor:pointer;text-align:left;line-height:1.3}.dp-dropdown-item:hover{background:var(--gray-100)}.dp-dropdown-item .icon{color:var(--text-muted)}.dp-dropdown-item.active{background:var(--primary-bg);color:var(--primary);font-weight:600}.dp-dropdown-item.active .icon{color:var(--primary)}.dp-dropdown-item.danger,.dp-dropdown-item.danger .icon{color:var(--danger)}.dp-dropdown-divider{height:1px;background:var(--border);margin:6px 4px}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:var(--radius-full);border:1px solid var(--border-strong);background:var(--surface);color:var(--text-muted);font-size:var(--text-sm);font-weight:500;line-height:1.2;cursor:pointer;transition:all var(--transition-fast)}.chip:hover{border-color:var(--gray-400);color:var(--text)}.chip.active{background:var(--primary-bg);border-color:var(--blue-200);color:var(--primary);font-weight:600}.chip .chip-count{font-variant-numeric:tabular-nums;opacity:.8}.segmented{display:inline-flex;background:var(--gray-100);border-radius:var(--radius-md);padding:3px;gap:2px}.seg-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:none;background:none;border-radius:6px;font-size:var(--text-sm);font-weight:500;color:var(--text-muted);cursor:pointer}.seg-btn.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);font-weight:600}.modal-overlay:has(>.modal-fullscreen){justify-content:flex-end;align-items:stretch}.modal-fullscreen{width:min(1280px,94vw);height:100vh;max-height:100vh;border-radius:var(--radius-xl) 0 0 var(--radius-xl);transform:translate(48px);box-shadow:-12px 0 40px #0f172a2e}.modal-show .modal-fullscreen{transform:translate(0)}.modal-hide .modal-fullscreen{transform:translate(48px)}.modal-fullscreen .modal-header{padding:10px 16px}.modal-fullscreen .modal-title{font-size:var(--text-lg);font-weight:700}.modal-fullscreen .modal-body{padding:0;display:flex;flex-direction:column}.modal-fullscreen .client-detail-layout{flex:1;height:auto;min-height:0}.tasks-kanban{flex-direction:column;overflow:visible;gap:8px;min-height:0}.task-phase-col,.task-phase-col.focused,.task-phase-col.collapsed,.task-phase-col.phase-all-done,.task-phase-col.phase-all-done:hover{flex:none;width:100%;min-width:0;max-width:none;align-self:stretch;overflow:visible}.task-phase-col:hover{box-shadow:none}.task-phase-col.collapsed{cursor:pointer;background:var(--surface)}.task-phase-col.phase-all-done{opacity:1;background:var(--green-50)}.task-phase-col.collapsed .task-phase-header,.task-phase-col.phase-all-done .task-phase-header,.task-phase-col.phase-all-done:hover .task-phase-header{flex-direction:row;align-items:center;padding:8px 12px;gap:10px;border-bottom:none;border-radius:var(--radius-md);background:transparent}.task-phase-col.collapsed .task-phase-name,.task-phase-col.phase-all-done .task-phase-name,.task-phase-col.phase-all-done:hover .task-phase-name{writing-mode:horizontal-tb;transform:none;max-height:none;font-size:var(--text-sm);white-space:nowrap}.task-phase-col.collapsed .task-phase-count,.task-phase-col.collapsed .task-phase-bar,.task-phase-col.phase-all-done .task-phase-count,.task-phase-col.phase-all-done .task-phase-bar,.task-phase-col.phase-all-done:hover .task-phase-count,.task-phase-col.phase-all-done:hover .task-phase-bar{display:revert}.task-phase-col.collapsed .task-phase-body,.task-phase-col.phase-all-done .task-phase-body,.task-phase-col.phase-all-done:hover .task-phase-body{display:none}.task-phase-col.focused{box-shadow:none;border-color:var(--blue-200)}.task-phase-col.focused .task-phase-header{padding:10px 12px}.task-phase-col.focused .task-phase-name{font-size:var(--text-base)}.task-phase-col.focused .task-phase-body{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:6px;padding:8px;align-items:start}.task-phase-bar{width:80px}.task-phase-col .task-phase-done-btn{opacity:.6}.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10500;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding-top:12vh}.cmdk{width:min(640px,92vw);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);overflow:hidden}.cmdk-input-row{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border);color:var(--text-muted)}.cmdk-input-row input{flex:1;border:none;outline:none;background:transparent;font-size:var(--text-lg);color:var(--text)}.cmdk kbd,.header-search-btn kbd{font:600 var(--text-2xs)/1 var(--font-sans);padding:3px 6px;border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:5px;color:var(--text-muted);background:var(--gray-50)}.cmdk-list{max-height:55vh;overflow-y:auto;padding:6px}.cmdk-section{font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle);padding:8px 10px 4px}.cmdk-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;color:var(--text)}.cmdk-item .icon{color:var(--text-muted)}.cmdk-item.selected{background:var(--primary-bg);color:var(--primary)}.cmdk-item.selected .icon{color:var(--primary)}.cmdk-item-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmdk-item-hint{font-size:var(--text-xs);color:var(--text-subtle);white-space:nowrap}.cmdk-empty{padding:18px;text-align:center;color:var(--text-muted);font-size:var(--text-sm)}.cmdk-footer{display:flex;gap:16px;padding:8px 16px;border-top:1px solid var(--border);font-size:var(--text-2xs);color:var(--text-subtle)}.cmdk-footer kbd{margin-right:3px}.header-search-btn{display:inline-flex;align-items:center;gap:8px;min-width:210px;padding:6px 8px 6px 10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--gray-50);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast)}.header-search-btn:hover{border-color:var(--border-strong);background:var(--surface);color:var(--text)}.header-search-btn>span{flex:1;text-align:left}@media (max-width: 768px){.header-search-btn{min-width:0;padding:6px}.header-search-btn>span,.header-search-btn kbd{display:none}}.data-table td{padding:10px var(--spacing-md)}.data-table th{font-weight:600;letter-spacing:.04em;color:var(--text-muted)}.data-table tbody tr:hover{background:var(--blue-50)}.data-table .btn-icon{opacity:.6;transition:opacity var(--transition-fast)}.data-table tr:hover .btn-icon{opacity:1}.cmdk-overlay[hidden]{display:none}.modal-fullscreen{width:100vw;border-radius:0}.data-table{overflow:visible}.data-table thead th{position:sticky;top:58px;z-index:3}.modal .data-table thead th{top:0}.data-table thead th:first-child{border-top-left-radius:var(--radius-lg)}.data-table thead th:last-child{border-top-right-radius:var(--radius-lg)}.th-sort{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.th-sort:hover{color:var(--text)}.th-sort.active{color:var(--primary)}.th-sort .icon{vertical-align:-1px}.dp-dropdown-note{padding:8px 10px;margin-top:4px;border-top:1px solid var(--border);font-size:var(--text-xs);color:var(--text-subtle);line-height:1.4}.page-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.page-header{display:flex;align-items:center;gap:12px}.empty-state{text-align:center;padding:40px 24px;color:var(--text-muted)}.empty-state-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--gray-100);color:var(--text-subtle);margin-bottom:12px}.empty-state-title{font-size:var(--text-md);font-weight:600;color:var(--text);margin:0 0 4px}.empty-state-text{font-size:var(--text-sm);max-width:420px;margin:0 auto 14px}.skel{display:flex;flex-direction:column;gap:10px;padding:14px 0}.skel-row{height:14px;border-radius:7px;background:linear-gradient(90deg,var(--gray-200) 25%,var(--gray-100) 50%,var(--gray-200) 75%);background-size:200% 100%;animation:dp-shimmer 1.4s ease-in-out infinite}@keyframes dp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.skel-row{animation:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text-muted);cursor:pointer;flex-shrink:0;margin-left:auto}.theme-toggle:hover{color:var(--text);border-color:var(--border-strong)}.theme-toggle .icon-sun{display:none}:root[data-theme=dark] .theme-toggle .icon-sun{display:inline-block}:root[data-theme=dark] .theme-toggle .icon-moon{display:none}.sidebar-collapsed .theme-toggle{display:none}:root[data-theme=dark] .main-header,:root[data-theme=dark] .modal,:root[data-theme=dark] .toast,:root[data-theme=dark] .stat-card,:root[data-theme=dark] .kanban-card,:root[data-theme=dark] .client-card{background:var(--surface)}:root[data-theme=dark] .modal-overlay{background:#000000a6}:root[data-theme=dark] .form-input,:root[data-theme=dark] .form-select,:root[data-theme=dark] textarea,:root[data-theme=dark] select,:root[data-theme=dark] input[type=text],:root[data-theme=dark] input[type=date],:root[data-theme=dark] input[type=number],:root[data-theme=dark] input[type=email],:root[data-theme=dark] input[type=search]{background:var(--surface-sunken);color:var(--text);border-color:var(--border-strong)}:root[data-theme=dark] .btn-secondary{background:var(--gray-200);color:var(--gray-700)}:root[data-theme=dark] .btn-secondary:hover{background:var(--gray-300)}:root[data-theme=dark] .data-table,:root[data-theme=dark] .data-table th{background:var(--surface)}:root[data-theme=dark] .data-table tbody tr:hover{background:var(--gray-100)}:root[data-theme=dark] .kanban-column,:root[data-theme=dark] .task-phase-col{background:var(--surface-sunken)}:root[data-theme=dark] .task-phase-header{background:var(--surface)}:root[data-theme=dark] img.logo-img{filter:brightness(1.2)}:root[data-theme=dark] :focus-visible{outline-color:var(--primary-light)}:root[data-theme=dark] .badge-success{color:var(--emerald-400)}:root[data-theme=dark] .badge-warning{color:var(--amber-300)}:root[data-theme=dark] .badge-danger{color:var(--red-300)}:root[data-theme=dark] .badge-info{color:var(--cyan-300)}:root[data-theme=dark] .badge-secondary{background:var(--gray-200);color:var(--gray-700)}
