.notion-container{padding:20px;max-width:100%;overflow-x:auto;background:#fff;border-radius:8px}.notion-table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}.titlecolumn{background-color:#000;color:#fff!important}.titlecolumn .notion-td-content{color:#fff}.notion-th{background:transparent!important;padding:12px 16px!important;text-align:left!important;font-weight:600!important;color:#374151!important;font-size:14px!important;border-bottom:2px solid #e5e7eb!important;position:sticky!important;top:0!important;z-index:1!important;white-space:nowrap!important;text-transform:uppercase!important;letter-spacing:.5px!important}.notion-td{padding:12px 16px!important;border-bottom:1px solid #e5e7eb!important;color:#374151!important;font-size:14px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;min-height:50px!important;height:auto!important;vertical-align:middle!important}.notion-td:has(.notion-status){min-height:32px!important;height:auto!important;padding:6px!important;text-align:center!important;vertical-align:middle!important}.notion-td .notion-status{width:auto!important;justify-content:center!important;margin:2px 0!important}.notion-tr:hover{background-color:#37352f08}.notion-status{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:4px 12px!important;border-radius:6px!important;font-size:12px!important;font-weight:500!important;line-height:16px!important;min-height:24px!important;height:auto!important;min-width:80px!important;white-space:nowrap!important;text-align:center!important;vertical-align:middle!important;box-shadow:0 1px 3px #00000014!important;text-transform:capitalize!important;letter-spacing:.3px!important;border:1px solid transparent!important}.status-listo{background:linear-gradient(135deg,#10b981,#059669)!important;color:#fff!important;border-color:#10b9814d!important;box-shadow:0 2px 4px #10b98133!important}.status-en-progreso{background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff!important;border-color:#f59e0b4d!important;box-shadow:0 2px 4px #f59e0b33!important}.status-sin-iniciar{background:linear-gradient(135deg,#6b7280,#4b5563)!important;color:#fff!important;border-color:#6b72804d!important;box-shadow:0 2px 4px #6b728033!important}.notion-status:hover{transform:translateY(-1px)!important;box-shadow:0 3px 6px #00000026!important;transition:all .2s ease!important}.dark .status-listo{background:linear-gradient(135deg,#047857,#065f46)!important;color:#d1fae5!important;border-color:#10b98166!important}.dark .status-en-progreso{background:linear-gradient(135deg,#92400e,#78350f)!important;color:#fef3c7!important;border-color:#f59e0b66!important}.dark .status-sin-iniciar{background:linear-gradient(135deg,#374151,#1f2937)!important;color:#f3f4f6!important;border-color:#6b728066!important}.notion-select{width:100%!important;padding:6px 28px 6px 12px!important;border:1px solid #e5e7eb!important;border-radius:6px!important;font-family:inherit!important;font-size:12px!important;font-weight:500!important;color:#374151!important;background-color:#fff!important;cursor:pointer!important;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;min-height:28px!important;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e")!important;background-repeat:no-repeat!important;background-position:right 8px center!important;background-size:14px!important;transition:all .2s ease!important}.notion-select:hover{border-color:#9ca3af!important;box-shadow:0 1px 3px #00000014!important}.notion-select:focus{border-color:#3b82f6!important;box-shadow:0 0 0 2px #3b82f61a!important;outline:none!important}.notion-select option[value=Listo]{background-color:#22c55e!important;color:#fff!important;font-weight:600!important}.notion-select option[value="En progreso"]{background-color:#f59e0b!important;color:#fff!important;font-weight:600!important}.notion-select option[value="Sin iniciar"]{background-color:#6b7280!important;color:#fff!important;font-weight:600!important}.dark .notion-select option[value=Listo]{background-color:#15803d;color:#fff}.dark .notion-select option[value="En progreso"]{background-color:#b45309;color:#fff}.dark .notion-select option[value="Sin iniciar"]{background-color:#4b5563;color:#fff}.priority-badge{display:inline-flex;align-items:center;padding:2px 6px;border-radius:3px;font-size:14px;font-weight:500}.priority-high{background-color:#fff1f1;color:#e03e3e}.priority-medium{background-color:#fbf3db;color:#9b6c1a}.priority-low{background-color:#e5f3ff;color:#0b6e99}.task-type{display:inline-flex;align-items:center;padding:2px 6px;border-radius:3px;font-size:14px;font-weight:500}.task-type-renovacion{background-color:#e8f5e9;color:#1b5e20}.task-type-venta{background-color:#e3f2fd;color:#0d47a1}.task-type-cobro{background-color:#fff3e0;color:#e65100}.task-type-poliza{background-color:#fff8e1;color:#f57f17}.notion-assignee{display:flex;align-items:center;gap:8px}.assignee-avatar{width:16px;height:16px;background:#e9ecef;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:12px;color:#37352f;text-transform:uppercase}.assignee-name,.notion-date{color:#37352f;font-size:14px}.notion-description{color:#6b6f76;font-size:14px;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notion-title-cell{color:#37352f;font-weight:500;font-size:14px;display:flex;align-items:center;gap:4px}.notion-title-icon{color:#6b6f76;font-size:16px}.notion-add-row{color:#6b6f76;padding:6px 8px;font-size:14px;cursor:pointer}.notion-add-row:hover{background-color:#37352f08}.notion-controls{display:flex;justify-content:space-between;align-items:center;padding:8px 0;margin-bottom:8px}.notion-view-controls{display:flex;gap:8px;align-items:center}@media (max-width: 768px){.notion-container{padding:10px}.notion-th,.notion-td{padding:6px}.notion-description{max-width:200px}}.notion-checkbox{width:16px;height:16px;border:1px solid #E9ECEF;border-radius:3px;cursor:pointer;transition:all .2s}.notion-checkbox:hover{background-color:#37352f14}.notion-checkbox:checked{background-color:#2da44e;border-color:#2da44e}.notion-td-editable{min-height:24px;padding:4px 8px;border-radius:4px;transition:all .2s;cursor:text;border:1px solid transparent;width:100%;display:block}.notion-td-editable:hover{background-color:#f0f0f0;border-color:#e3e2e0}.notion-td-editable:focus{background-color:#fff;border-color:#2eaadc;box-shadow:0 0 0 2px #2eaadc33;outline:none}.notion-select{width:100%;padding:6px 32px 6px 8px;border:1px solid #e3e2e0;border-radius:4px;font-family:inherit;font-size:inherit;color:#37352f;background-color:#fff;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 8px center;background-size:16px}.notion-button{padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.875rem;transition:all .2s ease;border:none;background:#2eaadc;color:#fff;font-weight:500}.notion-button:hover{background:#2591bb;transform:translateY(-1px)}.notion-button:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 768px){.notion-container{padding:10px}.notion-controls{flex-direction:column;gap:1rem;padding:0 1rem}.notion-actions{width:100%;justify-content:space-between}.notion-card{min-height:250px}.notion-th,.notion-td{padding:8px}}.notion-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:0 10px}.notion-title{margin:0;font-size:1.75rem;font-weight:600;color:#37352f}.notion-button.delete{background:transparent;color:#6b6f76;border:none;padding:4px 8px;font-size:14px;opacity:.6;transition:all .2s ease}.notion-button.delete:hover{background:#eb57571a;color:#eb5757;opacity:1}.notion-button.delete:disabled{opacity:.3;cursor:not-allowed}.notion-button.refresh{background:#00b894}.notion-button.refresh:hover{background:#00a382}.notion-table-container{overflow-x:auto;margin:0 -20px;padding:0 20px}.notion-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:8px;overflow:hidden;border:1px solid #e3e2e0}.notion-th-content{display:flex;align-items:center;gap:8px}.notion-sort-indicator{font-size:.75rem;opacity:.7}.notion-td:last-child,.notion-th:last-child{border-right:none}input.notion-td-editable{background-color:#fff;font-family:inherit;font-size:inherit;color:inherit}.status-not-started,.status-in-progress,.status-completed,.status-blocked,.status-default{display:none}td[data-priority=High]{color:#e03e3e;font-weight:500}td[data-priority=Medium]{color:#d9730d;font-weight:500}td[data-priority=Low]{color:#0b6e99;font-weight:500}.notion-date-input{width:100%;padding:6px 8px;border:1px solid #e3e2e0;border-radius:4px;font-family:inherit;font-size:inherit;color:#37352f;background-color:#fff}.notion-date-input:focus{border-color:#2eaadc;box-shadow:0 0 0 2px #2eaadc33;outline:none}.notion-td.checkbox{width:40px;text-align:center}.notion-td.checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer}.notion-td a{color:#2eaadc;text-decoration:none;transition:color .2s}.notion-td a:hover{color:#2591bb;text-decoration:underline}.notion-pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:20px;padding:10px}.notion-page-info{font-size:.9rem;color:#6b7280}.notion-loading{display:flex;justify-content:center;align-items:center;padding:40px;color:#6b7280;font-style:italic}.notion-empty{text-align:center;padding:40px;color:#6b7280;background-color:#f9fafb;border-radius:8px;margin:20px 0}.notion-error{padding:20px;text-align:center;color:#e03e3e;background-color:#ffe8e8;border-radius:8px;margin:20px 0}@media (max-width: 768px){.notion-container{padding:10px}.notion-header{flex-direction:column;gap:10px;align-items:stretch}.notion-actions{display:flex;gap:10px}.notion-button{flex:1}.notion-th,.notion-td{padding:8px}}.notion-td{transition:background-color .3s ease}.notion-tr{transition:transform .2s ease}.notion-tr:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.notion-tag{display:inline-block;padding:2px 8px;margin:2px;border-radius:3px;font-size:.85em;background-color:#f3f4f6;color:#374151}.notion-td[data-readonly=true]{background-color:#f9fafb;cursor:not-allowed}.notion-td[data-type=assignee] .notion-td-editable{color:#2563eb;text-decoration:underline;cursor:pointer}.notion-td[data-type=assignee] input{width:100%;padding:4px 8px;border:1px solid #e3e2e0;border-radius:4px;font-family:inherit;font-size:inherit}.notion-td[data-type=assignee] input:focus{outline:none;border-color:#0b7285;box-shadow:0 0 0 2px #0b728533}.notion-td[data-status=Listo],.notion-td[data-status=Done]{color:#85b697}.notion-td[data-status="En progreso"],.notion-td[data-status="In Progress"]{color:#e1c597}.notion-td a{color:#2196c4;text-decoration:none}.notion-td a:hover{text-decoration:underline}.notion-loading,.notion-error{padding:20px;text-align:center;color:#37352f}.notion-error{color:#e03e3e;background:#ffebe9;border-radius:4px}.notion-link{text-decoration:none}.notion-link:hover{text-decoration:underline}.notion-badge{padding:4px 8px;border-radius:4px;display:inline-block;font-size:.75rem;font-weight:500}.light{background-color:#fff}.light .notion-title{color:#111827}.light .notion-button{background-color:#fff;color:#111827;border:1px solid #e5e7eb}.light .notion-button:hover{background-color:#f3f4f6}.light .notion-error{background-color:#fee2e2;color:#991b1b}.light .notion-table{background-color:#fff}.light .notion-th{color:#111827;border-bottom-color:#ccc}.light .notion-td{color:#111827;border-bottom-color:#eee}.light .notion-link{color:#2563eb}.dark{background-color:#1f2937}.dark .notion-title{color:#e5e7eb}.dark .notion-button{background-color:#374151;color:#e5e7eb;border:none}.dark .notion-button:hover{background-color:#4b5563}.dark .notion-error{background-color:#dc26261a;color:#fca5a5}.dark .notion-table{background-color:#1f2937}.dark .notion-th{color:#e5e7eb;border-bottom-color:#4b5563}.dark .notion-td{color:#e5e7eb;border-bottom-color:#374151}.dark .notion-link{color:#60a5fa}.status-completed{background-color:#d1fae5;color:#065f46}.dark .status-completed{background-color:#065f46;color:#34d399}.status-in-progress{background-color:#fef3c7;color:#854d0e}.dark .status-in-progress{background-color:#854d0e;color:#fbbf24}.status-not-started{background-color:#dbeafe;color:#1e40af}.dark .status-not-started{background-color:#1e40af;color:#60a5fa}.status-blocked{background-color:#fee2e2;color:#991b1b}.dark .status-blocked{background-color:#991b1b;color:#f87171}.status-default{background-color:#f3f4f6;color:#374151}.dark .status-default{background-color:#374151;color:#9ca3af}.dark .priority-high{background-color:#991b1b;color:#f87171}.priority-medium{background-color:#fef3c7;color:#854d0e}.dark .priority-medium{background-color:#854d0e;color:#fbbf24}.priority-low{background-color:#d1fae5;color:#065f46}.dark .priority-low{background-color:#065f46;color:#34d399}.priority-default{background-color:#f3f4f6;color:#374151}.dark .priority-default{background-color:#374151;color:#9ca3af}.notion-debug-panel{margin-top:30px;border:1px solid #ddd;border-radius:8px;overflow:hidden}.notion-debug-panel summary{padding:10px 15px;font-weight:600;cursor:pointer;background-color:#f5f5f7}.light .notion-debug-panel summary{background-color:#f5f5f7;color:#333}.dark .notion-debug-panel summary{background-color:#2d3748;color:#e5e7eb}.notion-debug-panel[open] summary{border-bottom:1px solid #ddd}.notion-error-boundary{padding:2rem;text-align:center;background-color:#fff3f3;border:1px solid #ffcdd2;border-radius:4px;margin:1rem}.notion-error-boundary h3{color:#d32f2f;margin-bottom:1rem}.notion-loading{display:flex;justify-content:center;align-items:center;padding:2rem;color:#666;font-style:italic}.notion-empty{text-align:center;padding:2rem;color:#666;font-style:italic;background-color:#f5f5f5;border-radius:4px}.notion-button.delete:disabled{background-color:#ffcdd2}.notion-button.refresh:disabled{background-color:#e0e0e0}.notion-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;padding:1rem}.notion-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:all .3s ease;cursor:pointer;display:flex;flex-direction:column;height:100%;min-height:300px;border:1px solid #e0e0e0}.notion-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #00000026}.notion-card-header{padding:1.25rem;background:#f8f9fa;border-bottom:1px solid #e0e0e0}.notion-card-title{margin:0;font-size:1.25rem;font-weight:600;color:#2c3e50;line-height:1.4}.notion-card-content{padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem;flex-grow:1}.notion-card-meta{display:flex;justify-content:space-between;align-items:center;gap:1rem}.notion-card-type{background:#e3f2fd;color:#1976d2;padding:.4rem .8rem;border-radius:6px;font-size:.9rem;font-weight:500}.notion-card-priority{padding:.4rem .8rem;border-radius:6px;font-size:.9rem;font-weight:500;text-align:center}.priority-high{background-color:#fef2f2;color:#dc2626}.priority-medium{background-color:#fffbeb;color:#d97706}.priority-low{background-color:#f0fdf4;color:#16a34a}.priority-default{background-color:#f3f4f6;color:#6b7280}.notion-card-description{background:#f8f9fa;padding:1rem;border-radius:8px;color:#4b5563;font-size:.95rem;line-height:1.6;flex-grow:1}.notion-card-assignee{display:flex;align-items:center;gap:8px;padding:8px;background-color:#f7f6f3;border-radius:4px;margin-top:12px}.notion-card-assignee .user-icon{font-size:16px}.notion-card-dates{display:flex;flex-direction:column;gap:.5rem;font-size:.9rem;color:#6b7280;padding-top:.75rem;border-top:1px solid #e5e7eb}.notion-card-deadline,.notion-card-created,.notion-card-edited{display:flex;align-items:center;gap:.5rem}.date-icon{font-size:1rem;opacity:.8}@media (max-width: 768px){.notion-card{min-height:250px}.notion-card-meta{flex-direction:column;align-items:flex-start;gap:.5rem}.notion-card-type,.notion-card-priority{width:100%;text-align:center}}.notion-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:0 1.5rem}.notion-actions{display:flex;gap:.75rem;align-items:center}.notion-button.refresh{background:#00b894;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.notion-button.refresh:hover{background:#00a382;transform:translateY(-1px)}.notion-button.refresh:disabled{background:#e0e0e0;cursor:not-allowed;transform:none}@media (max-width: 768px){.notion-controls{flex-direction:column;gap:1rem;padding:0 1rem}.notion-actions{width:100%;justify-content:space-between}.notion-button.refresh,.notion-database-link{flex:1;text-align:center;justify-content:center}}.notion-view-toggle{display:flex;gap:.5rem}.notion-view-button{padding:.5rem 1rem;border:1px solid #e5e7eb;background:#fff;border-radius:6px;font-size:.875rem;color:#6b7280;cursor:pointer;transition:all .2s ease}.notion-view-button:hover{background:#f9fafb}.notion-view-button.active{background:#2563eb;color:#fff;border-color:#2563eb}.notion-database-link{padding:.5rem 1rem;background:#f3f4f6;border-radius:6px;color:#4b5563;text-decoration:none;font-size:.875rem;transition:all .2s ease}.notion-database-link:hover{background:#e5e7eb}.notion-card-field{display:flex;justify-content:space-between;align-items:flex-start;padding:.5rem;border-radius:4px;margin:.25rem 0;transition:background-color .2s ease}.notion-card-header{background-color:#f0f7ff;padding:1rem;border-radius:6px;margin-bottom:.5rem}.notion-card-field:has(.notion-card-label:contains("Prioridad")){background-color:#fff1f1}.notion-card-field:has(.notion-card-label:contains("Encargado")){background-color:#fffbeb}.notion-card-field:has(.notion-card-label:contains("Asignado")){background-color:#f0f9ff}.notion-card-field:has(.notion-card-label:contains("Correo")){background-color:#fff4f4}.notion-card-field:has(.notion-card-label:contains("Vencimiento")){background-color:#fefce8}.notion-card-field.notion-card-description{background-color:#f0f7ff}.notion-card-field:has(.notion-card-label:contains("Creado")){background-color:#fff1f1}.notion-card-field:has(.notion-card-label:contains("Editado")){background-color:#fffbeb}.notion-card-field:has(.notion-card-label:contains("Etiquetas")){background-color:#f0f7ff}.notion-card-field:hover{filter:brightness(.98)}.notion-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.25rem;transition:all .2s ease;cursor:pointer;border:1px solid #e5e7eb}.notion-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.notion-card .notion-tag{background-color:#f0f7ff;color:#1e40af;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;margin:.125rem}@media (max-width: 768px){.notion-card-field{padding:.375rem}.notion-card-header{padding:.75rem}}.notion-assignee{display:flex;align-items:center;gap:8px;padding:4px;min-height:32px;position:relative;width:100%}.notion-select{width:100%;padding:8px 32px 8px 12px;border:1px solid #e0e0e0;border-radius:4px;background-color:#fff;font-size:14px;color:#37352f;cursor:pointer;transition:all .2s ease;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 8px center;background-size:16px}.notion-select:hover{border-color:#b6b6b6}.notion-select:focus{border-color:#2eaadc;box-shadow:0 0 0 2px #2eaadc33;outline:none}.notion-select option{padding:8px;font-size:14px;background-color:#fff;color:#37352f}.notion-email-link{display:flex;align-items:center;justify-content:center;width:28px;height:28px;color:#2eaadc;text-decoration:none;opacity:.7;transition:all .2s ease;border-radius:4px;flex-shrink:0;background-color:transparent}.notion-email-link:hover{opacity:1;background-color:#2eaadc1a}.notion-loading{display:flex;align-items:center;justify-content:center;padding:20px;color:#6b7280;font-style:italic}.notion-error{padding:12px;margin:12px 0;background-color:#fee2e2;border-radius:4px;color:#dc2626;font-size:14px}.notion-user{display:flex;align-items:center;gap:8px;width:100%}.notion-user-avatar{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background-color:#e9ecef;border-radius:50%;font-size:14px;flex-shrink:0}.notion-user-email{font-size:14px;color:#37352f;flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notion-empty-user{color:#787774;font-size:14px;font-style:italic}.notion-td-editable[type=email]{width:100%;padding:4px 8px;border:1px solid #e0e0e0;border-radius:4px;font-size:14px}.notion-td-editable[type=email]:focus{border-color:#06f;outline:none;box-shadow:0 0 0 2px #06f3}.notion-error-message{color:#eb5757;font-size:14px;margin-top:4px;padding:4px 8px;background-color:#ffebee;border-radius:4px;position:absolute;z-index:1000}.notion-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.notion-modal{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;padding:1.5rem}.notion-modal h3{margin:0 0 1.5rem;font-size:1.25rem;font-weight:600;color:#000000d9}.notion-modal-content{display:flex;flex-direction:column;gap:1rem}.notion-input,.notion-select,.notion-textarea{width:100%;padding:.5rem;border:1px solid #d9d9d9;border-radius:4px;transition:all .3s;font-size:14px}.notion-input:focus,.notion-select:focus,.notion-textarea:focus{outline:none;border-color:#4096ff;box-shadow:0 0 0 2px #4096ff1a}.notion-textarea{min-height:100px;resize:vertical}.notion-input-error{border-color:#ff4d4f!important}.notion-error-message{color:#ff4d4f;font-size:.875rem;margin-top:.25rem}.notion-submit-error{margin-bottom:1rem;padding:.5rem;background-color:#fff2f0;border:1px solid #ffccc7;border-radius:4px}.notion-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #f0f0f0}.notion-button{padding:.5rem 1rem;border-radius:4px;cursor:pointer;transition:all .3s;font-size:14px;font-weight:500}.notion-button:disabled{opacity:.6;cursor:not-allowed}.notion-button.cancel{background-color:#fff;border:1px solid #d9d9d9;color:#000000d9}.notion-button.cancel:hover:not(:disabled){color:#40a9ff;border-color:#40a9ff}.notion-button.create{background-color:#1890ff;border:1px solid #1890ff;color:#fff}.notion-button.create:hover:not(:disabled){background-color:#40a9ff;border-color:#40a9ff}.notion-actions-cell{width:40px;text-align:center;opacity:0;transition:opacity .2s ease}.notion-tr:hover .notion-actions-cell{opacity:1}.notion-td[data-status=Listo],.notion-td[data-status=Done]{color:#bde7cc}.notion-td[data-status="En progreso"],.notion-td[data-status="In Progress"]{color:#efd6ab}.notion-td[data-status="Sin iniciar"],.notion-td[data-status="Not Started"]{color:#6b7280}.dark .notion-td[data-status=Listo],.dark .notion-td[data-status=Done]{color:#91d5aa}.dark .notion-td[data-status="En progreso"],.dark .notion-td[data-status="In Progress"]{color:#e0b28f}.dark .notion-td[data-status="Sin iniciar"],.dark .notion-td[data-status="Not Started"]{color:#4b5563}.airplane-button-container{display:flex;flex-direction:column;align-items:center;gap:4px;margin-right:10px}.airplane-button{background:transparent;border:2px solid #ddd;border-radius:8px;padding:8px 12px;font-size:18px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.airplane-button:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.airplane-button.disabled{border-color:#ddd;color:#666}.airplane-button.disabled:hover{border-color:#007bff;color:#007bff}.airplane-button.enabled{background:#007bff;border-color:#007bff;color:#fff;animation:pulse 2s infinite}.airplane-button.enabled:hover{background:#0056b3;border-color:#0056b3}.airplane-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.airplane-icon{display:inline-block;transition:transform .3s ease}.airplane-button:hover .airplane-icon{transform:rotate(15deg)}.loading-spinner{animation:spin 1s linear infinite;display:inline-block}.airplane-status{font-size:10px;color:#007bff;font-weight:500;text-align:center;white-space:nowrap;background:#007bff1a;padding:2px 6px;border-radius:10px;border:1px solid rgba(0,123,255,.2)}@keyframes pulse{0%{box-shadow:0 0 #007bffb3}70%{box-shadow:0 0 0 10px #007bff00}to{box-shadow:0 0 #007bff00}}[data-theme=dark] .airplane-button.disabled{border-color:#555;color:#ccc}[data-theme=dark] .airplane-button.disabled:hover{border-color:#007bff;color:#007bff}[data-theme=dark] .airplane-status{color:#87ceeb;background:#87ceeb1a;border-color:#87ceeb33}.layout{display:flex;flex-direction:column;min-height:100vh;width:100%}.top-bar{display:flex;align-items:center;justify-content:space-between;padding:.4rem .8rem;background-color:#fff;border-bottom:1px solid var(--border-color);height:45px;width:100%;position:fixed;top:0;left:0;z-index:100;box-shadow:0 2px 6px #0000001a}[data-theme=dark] .top-bar{background-color:#121212;border-color:#2d3748;box-shadow:0 2px 8px #0000004d}.left-section{display:flex;align-items:center;gap:.8rem}.logo{display:flex;align-items:center;gap:.4rem;padding:.2rem;cursor:pointer;text-decoration:none}.logo-image{width:22px;height:22px;object-fit:contain}.logo-content{display:flex;align-items:baseline;gap:.4rem}.logo-text{font-size:.8rem;font-weight:700;color:#0f4bbaf0;letter-spacing:.025em;line-height:1;text-transform:uppercase;font-family:Arial,sans-serif}.admin-badge{background:var(--warning-color, #ffc107);color:var(--warning-text, #856404);font-size:.5rem;padding:.1rem .3rem;border-radius:3px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.member-badge{background:var(--success-color, #28a745);color:var(--success-text, #ffffff);font-size:.5rem;padding:.1rem .3rem;border-radius:3px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.top-nav{display:flex;align-items:center;gap:.4rem}.top-nav a{display:flex;align-items:center;gap:.3rem;padding:.4rem .6rem;color:var(--text-secondary);text-decoration:none;border-radius:5px;transition:all .2s ease;font-size:.7rem;font-weight:500}.top-nav a:hover{color:var(--text-primary);background-color:var(--background-hover)}.top-nav a.active{color:var(--text-primary);background-color:var(--background-active)}.nav-icon{width:.9rem;height:.9rem}.top-nav a.nav-disabled,.top-nav span.nav-disabled{opacity:.4;cursor:not-allowed;pointer-events:none;filter:grayscale(70%)}.right-section{display:flex;align-items:center;gap:1rem;padding-right:.4rem}.control-section{display:flex;align-items:center;padding:.3rem .4rem;border-right:1px solid var(--border-color)}[data-theme=dark] .control-section{border-right-color:#2d3748}.user-section{display:flex;align-items:center;gap:.9rem}.user-avatar{width:20px;height:20px;border-radius:4px;object-fit:cover;border:1px solid var(--border-color);flex-shrink:0;transform:scale(.7)}.user-info{display:flex;flex-direction:column;align-items:flex-start}.user-name{color:var(--text-primary);font-size:.55rem;font-weight:600;line-height:1.2;white-space:nowrap;transform:scale(.85);transform-origin:left}.logout-button{display:flex;align-items:center;justify-content:center;padding:.4rem;border:none;background:none;color:#dc3545;cursor:pointer;border-radius:5px;transition:all .2s ease;min-width:29px;min-height:29px}.logout-button:hover{color:#fff;background-color:#dc3545}.main-content{margin-top:45px;padding:0;flex:1;width:100%}.desktop-only{display:flex;align-items:center}@media (max-width: 1200px){.top-bar{padding:.3rem .6rem;height:38px}.main-content{margin-top:38px}.logo-text{font-size:.7rem}.top-nav{gap:.2rem}.top-nav a{padding:.3rem .4rem;font-size:.6rem}.nav-icon{width:.8rem;height:.8rem}.right-section{gap:.8rem}.control-section{padding:.3rem .4rem}.user-avatar{width:18px;height:18px;transform:scale(.75)}.user-name{font-size:.5rem}.nav-optional{display:none}}@media (max-width: 768px){.top-bar{padding:.2rem .4rem;height:35px}.main-content{margin-top:35px}.left-section{gap:.4rem}.logo-image{width:19px;height:19px}.logo-text{font-size:.6rem}.top-nav a span{display:none}.top-nav a{padding:.2rem}.right-section{gap:.6rem}.control-section{display:none}.user-section{gap:.4rem}.user-avatar{width:16px;height:16px;transform:scale(.8)}.user-name{font-size:.45rem;transform:scale(.95);transform-origin:left}.logout-button{min-width:26px;min-height:26px;padding:.3rem}.desktop-only{display:none}}.weather-widget{background-color:var(--bg-surface);border-radius:8px;padding:1rem;box-shadow:0 2px 4px #0000001a;min-height:200px;display:flex;flex-direction:column;justify-content:center}.weather-main{margin-bottom:1rem}.location{font-size:1.2rem;color:var(--text-primary);margin-bottom:.5rem}.temperature{font-size:2rem;font-weight:500;color:var(--text-primary)}.feels-like{font-size:.875rem;color:var(--text-secondary)}.weather-details{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.detail{display:flex;flex-direction:column;gap:.25rem}.label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase}.value{color:var(--text-primary);font-weight:500}.loading{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:200px}.loading-spinner{width:24px;height:24px;border:2px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}.loading-text{color:var(--text-secondary);font-size:.875rem;margin:0}.error{text-align:center;color:var(--text-error);padding:1rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.retry-button{padding:.5rem 1rem;border:none;border-radius:4px;background-color:var(--accent-color);color:#fff;cursor:pointer;font-size:.875rem;transition:background-color .2s}.retry-button:hover{background-color:var(--accent-color-hover)}.dashboard{padding:2rem}.dashboard-title{margin-bottom:2rem;color:var(--text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight)}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin:3rem}.dashboard-card{background-color:var(--bg-surface);border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.card-header{padding:1rem;border-bottom:1px solid var(--border-color)}.card-header h3{margin:0;color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.card-content{padding:1rem;min-height:200px}.birthday-list{display:flex;flex-direction:column;gap:1rem}.birthday-item{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background-color:var(--background-secondary);border-radius:8px;border:1px solid var(--border-color)}.birthday-info{display:flex;flex-direction:column;gap:.25rem}.birthday-name{font-weight:var(--font-weight-semibold);color:var(--text-primary);font-size:var(--font-size-base)}.birthday-date{font-size:var(--font-size-sm);color:var(--accent-color);font-weight:var(--font-weight-medium)}.birthday-age{font-size:var(--font-size-sm);color:var(--text-secondary)}.birthday-email{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary);padding-top:.25rem;border-top:1px solid var(--border-color)}.email-icon{font-size:1rem}.no-birthdays{text-align:center;color:var(--text-secondary);margin:2rem 0}.error-message{color:var(--text-error);text-align:center;margin:2rem 0}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.stat-item{display:flex;flex-direction:column;align-items:center;text-align:center}.stat-value{font-size:1.5rem;font-weight:500;color:var(--text-primary)}.stat-label{font-size:.875rem;color:var(--text-secondary);margin-top:.25rem}.activity-list{display:flex;flex-direction:column;gap:.75rem}.activity-item{display:flex;justify-content:space-between;align-items:center}.activity-time{font-size:.75rem;color:var(--text-muted)}.activity-text{color:var(--text-primary)}.status-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.status-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem}.status-badge.success{background-color:var(--success-color, #10B981);color:#fff}.status-badge.warning{background-color:var(--warning-color, #F59E0B);color:#fff}.actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.action-button{padding:.5rem;border:1px solid var(--border-color);border-radius:4px;background-color:var(--bg-surface);color:var(--text-primary);cursor:pointer;transition:all .2s}.action-button:hover{background-color:var(--bg-surface-hover)}.notification-list{display:flex;flex-direction:column;gap:.75rem}.notification-item{display:flex;align-items:center;gap:.5rem}.notification-dot{width:8px;height:8px;border-radius:50%}.notification-dot.success{background-color:var(--success-color, #10B981)}.notification-dot.warning{background-color:var(--warning-color, #F59E0B)}.notification-dot.error{background-color:var(--error-color, #EF4444)}.resource-list{display:flex;flex-direction:column;gap:1rem}.resource-item{display:flex;flex-direction:column;gap:.5rem}.progress-bar{height:6px;background-color:var(--bg-secondary);border-radius:3px;overflow:hidden}.progress{height:100%;background-color:var(--accent-color);border-radius:3px;transition:width .3s ease}.loading-spinner{width:24px;height:24px;border:2px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin 1s linear infinite;margin:2rem auto}@media (max-width: 1200px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.dashboard{padding:1rem}.dashboard-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}.expiration-list{display:flex;flex-direction:column;gap:1rem}.expiration-item{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:var(--background-secondary);border-radius:.5rem;border:1px solid var(--border-color);transition:all .2s ease}.expiration-item:hover{transform:translateY(-2px);box-shadow:0 2px 8px #0000001a}.expiration-item.clickable{cursor:pointer}.expiration-item.clickable:hover{background:var(--hover-background);border-color:var(--primary-color)}.expiration-info{display:flex;align-items:center;gap:.75rem}.expiration-type{font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:.25rem;background:var(--primary-color);color:#fff}.expiration-policy{font-size:.875rem;font-weight:500;color:var(--text-primary);font-family:Roboto Mono,monospace}.expiration-ramo{font-size:.75rem;font-weight:500;padding:.2rem .4rem;border-radius:.25rem;background:var(--background-secondary);color:var(--text-secondary);border:1px solid var(--border-color);text-transform:uppercase}.expiration-details{display:flex;flex-direction:column;gap:.25rem}.expiration-name{font-size:.875rem;font-weight:500;color:var(--text-primary)}.expiration-date{font-size:.75rem;color:var(--text-secondary)}.no-expirations{text-align:center;color:#6c757d;padding:1rem}.view-all{color:#0d6efd;text-decoration:none;font-size:.9rem}.view-all:hover{text-decoration:underline}.view-more-link{display:block;text-align:center;padding:.5rem;color:var(--accent-color);text-decoration:none;font-size:.875rem;font-weight:500;border-top:1px solid var(--border-color);margin-top:.5rem}.view-more-link:hover{background-color:var(--background-secondary);border-radius:4px}[data-theme=dark] .birthday-item{background-color:var(--background-secondary-dark);border-color:var(--border-color-dark)}[data-theme=dark] .birthday-email,[data-theme=dark] .view-more-link{border-color:var(--border-color-dark)}.toggle-view-btn{margin-top:.5rem;padding:.5rem;background:none;border:none;color:var(--primary-color);font-size:.875rem;cursor:pointer;transition:opacity .2s ease}.toggle-view-btn:hover{opacity:.8}[data-theme=dark] .expiration-item{background:var(--background-secondary-dark, #1f2937);border-color:var(--border-color-dark, #374151);box-shadow:0 2px 8px #0003}[data-theme=dark] .expiration-item:hover{box-shadow:0 4px 12px #0000004d}[data-theme=dark] .expiration-type{background:var(--primary-color-dark, #3b82f6)}[data-theme=dark] .expiration-policy,[data-theme=dark] .expiration-name{color:var(--text-primary-dark, #f3f4f6)}[data-theme=dark] .expiration-date{color:var(--text-secondary-dark, #9ca3af)}[data-theme=dark] .toggle-view-btn{color:var(--primary-color-light, #60a5fa)}[data-theme=dark] .no-expirations{color:var(--text-secondary-dark, #9ca3af)}.firebase-test-card{border:2px solid #f59e0b;background:linear-gradient(135deg,#fef3c7,#fbbf24)}.firebase-test-btn{background:#3b82f6;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500;transition:background .2s ease;margin-bottom:15px}.firebase-test-btn:hover:not(:disabled){background:#2563eb}.firebase-test-btn:disabled{background:#9ca3af;cursor:not-allowed}.firebase-test-results{background:#ffffffe6;padding:15px;border-radius:6px;border:1px solid #e5e7eb}.test-status.success{color:#059669;font-weight:600;font-size:1.1rem;margin-bottom:10px}.test-status.error{color:#dc2626;font-weight:600;font-size:1.1rem;margin-bottom:10px}.test-details{font-size:.9rem;color:#374151}.test-details p{margin:5px 0}.test-errors{margin-top:10px;padding:10px;background:#fef2f2;border:1px solid #fecaca;border-radius:4px}.test-errors ul{margin:5px 0 0 20px;color:#dc2626}.policy-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.policy-modal-content{background:var(--bg-surface);border-radius:12px;box-shadow:0 10px 30px #0003;max-width:600px;width:90%;max-height:80vh;overflow-y:auto}.policy-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color)}.policy-modal-header h3{margin:0;color:var(--text-primary);font-size:1.25rem;font-weight:600}.close-modal-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:50%;transition:all .2s ease}.close-modal-btn:hover{background:var(--background-secondary);color:var(--text-primary)}.policy-modal-body{padding:1.5rem}.policy-details-grid{display:grid;grid-template-columns:1fr;gap:1rem}.policy-detail-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;background:var(--background-secondary);border-radius:8px;border:1px solid var(--border-color)}.policy-detail-label{font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.025em}.policy-detail-value{font-size:1rem;font-weight:500;color:var(--text-primary);word-break:break-word}.test-errors li{margin:2px 0;font-size:.85rem}.team-demo-card{grid-column:1 / -1}.team-demo-card .team-demo{padding:0}.team-demo-card .team-demo-card{border:none;padding:0;box-shadow:none;background:transparent}.cell-pdf-parser{padding:1rem;background:#f9fafb;border-radius:4px;margin-top:.5rem}.prompt-textarea{width:100%;margin-bottom:.5rem;padding:.5rem;border:1px solid #e5e7eb;border-radius:4px;font-size:.9rem;resize:vertical;min-height:60px}.prompt-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.file-input-label{display:inline-block;padding:.5rem 1rem;background-color:#000;color:#fff;border-radius:4px;cursor:pointer;font-size:.9rem;transition:opacity .2s;width:100%;text-align:center}.file-input-label:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .cell-pdf-parser{background:#1f2937}[data-theme=dark] .prompt-textarea{background:#111827;border-color:#374151;color:#f3f4f6}[data-theme=dark] .prompt-textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa33}[data-theme=dark] .file-input-label{background-color:#4b5563}[data-theme=dark] .file-input-label:hover{background-color:#374151}.column-info{margin-bottom:1rem;padding:.75rem;background:#e3f2fd;border-left:4px solid #2196f3;border-radius:4px}.column-info strong{display:block;color:#1976d2;font-size:1rem;margin-bottom:.25rem}.column-info p{margin:0;color:#555;font-size:.875rem}.error-message{margin-bottom:1rem;animation:fadeIn .3s ease-in}.analyzing-status{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}[data-theme=dark] .column-info{background:#1e3a8a;border-left-color:#3b82f6}[data-theme=dark] .column-info strong{color:#60a5fa}[data-theme=dark] .column-info p{color:#d1d5db}.file-input-label.disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.drive-selector-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.drive-selector-modal{background:var(--background-primary);border-radius:.5rem;box-shadow:0 10px 25px #0003;width:90%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;border:1px solid var(--border-color)}.drive-selector-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border-color)}.drive-selector-header h3{margin:0;color:var(--text-primary);font-size:1.1rem}.close-btn{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:.25rem;transition:all .2s ease}.close-btn:hover{background:var(--background-hover);color:var(--text-primary)}.drive-selector-body{flex:1;padding:1rem;overflow-y:auto;min-height:300px}.error-message{background:var(--error-light);color:var(--error);padding:.75rem;border-radius:.375rem;margin-bottom:1rem;border:1px solid var(--error)}.folder-navigation{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.back-button{background:var(--background-secondary);border:1px solid var(--border-color);color:var(--text-primary);padding:.5rem .75rem;border-radius:.375rem;cursor:pointer;transition:all .2s ease;font-size:.875rem}.back-button:hover:not(:disabled){background:var(--background-hover);border-color:var(--primary-color)}.back-button:disabled{opacity:.5;cursor:not-allowed}.current-path{flex:1;color:var(--text-secondary);font-size:.875rem;display:flex;align-items:center;flex-wrap:wrap;gap:.25rem}.path-separator{color:var(--text-tertiary);margin:0 .25rem}.loading-state{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--text-secondary);font-size:.875rem}.empty-state{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--text-secondary);font-size:.875rem;text-align:center}.folders-list{display:flex;flex-direction:column;gap:.5rem}.folder-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border:1px solid var(--border-color);border-radius:.375rem;cursor:pointer;transition:all .2s ease;background:var(--background-secondary)}.folder-item:hover{background:var(--background-hover);border-color:var(--primary-color);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.folder-icon{font-size:1.25rem;flex-shrink:0}.folder-name{flex:1;color:var(--text-primary);font-weight:500}.folder-arrow{color:var(--text-tertiary);font-size:1.25rem;flex-shrink:0}.drive-selector-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem;border-top:1px solid var(--border-color);background:var(--background-secondary)}.cancel-btn,.select-btn{padding:.5rem 1rem;border-radius:.375rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid}.cancel-btn{background:var(--background-primary);color:var(--text-secondary);border-color:var(--border-color)}.cancel-btn:hover{background:var(--background-hover);color:var(--text-primary)}.select-btn{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.select-btn:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.select-btn:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .drive-selector-modal{background:var(--background-primary-dark);border-color:var(--border-color-dark)}[data-theme=dark] .drive-selector-header{border-color:var(--border-color-dark)}[data-theme=dark] .drive-selector-header h3{color:var(--text-primary-dark)}[data-theme=dark] .close-btn{color:var(--text-secondary-dark)}[data-theme=dark] .close-btn:hover{background:var(--background-hover-dark);color:var(--text-primary-dark)}[data-theme=dark] .folder-navigation{border-color:var(--border-color-dark)}[data-theme=dark] .back-button{background:var(--background-secondary-dark);border-color:var(--border-color-dark);color:var(--text-primary-dark)}[data-theme=dark] .back-button:hover:not(:disabled){background:var(--background-hover-dark)}[data-theme=dark] .current-path{color:var(--text-secondary-dark)}[data-theme=dark] .folder-item{background:var(--background-secondary-dark);border-color:var(--border-color-dark)}[data-theme=dark] .folder-item:hover{background:var(--background-hover-dark)}[data-theme=dark] .folder-name{color:var(--text-primary-dark)}[data-theme=dark] .drive-selector-footer{background:var(--background-secondary-dark);border-color:var(--border-color-dark)}[data-theme=dark] .cancel-btn{background:var(--background-primary-dark);color:var(--text-secondary-dark);border-color:var(--border-color-dark)}[data-theme=dark] .cancel-btn:hover{background:var(--background-hover-dark);color:var(--text-primary-dark)}.mail-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:10000;position:relative}.mail-modal-content{background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026;width:90%;max-width:800px;max-height:90vh;overflow-y:auto;position:relative;margin-top:0}.mail-modal-header{padding:20px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;background:#f8fafc;border-radius:12px 12px 0 0;position:sticky;top:0;z-index:100}.mail-modal-header h3{margin:0;color:#1e293b;font-size:1.25rem}.close-modal-btn{position:absolute;top:15px;right:15px;background:#fffffff2;border:2px solid #e5e7eb;font-size:1.5rem;cursor:pointer;color:#64748b;padding:8px 12px;border-radius:50%;transition:all .2s;z-index:1001;width:40px;height:40px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000026;line-height:1}.close-modal-btn:hover{background:#fee2e2;color:#dc2626;border-color:#fecaca;transform:scale(1.1);box-shadow:0 4px 12px #ef44444d}.close-modal-btn:active{transform:scale(.95)}.mail-modal-body{padding:24px;position:relative;min-height:200px}.mail-field-group{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-bottom:20px}.mail-field-group-title{font-size:.875rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #e5e7eb}.mail-field{margin-bottom:20px}.mail-field label{display:block;margin-bottom:8px;color:#475569;font-weight:500}.mail-input,.mail-textarea{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.95rem;transition:all .2s}.mail-input:focus,.mail-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.mail-input select{cursor:pointer}.email-type-container{position:relative}.auto-detection-indicator{margin-top:8px}.detection-badge{display:inline-block;background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:6px 12px;border-radius:20px;font-size:.8rem;font-weight:500;box-shadow:0 2px 4px #10b98133;animation:pulse 2s infinite}.table-type-info{opacity:.9;font-size:.75rem;font-style:italic}@keyframes pulse{0%{box-shadow:0 2px 4px #10b98133}50%{box-shadow:0 2px 8px #10b98166}to{box-shadow:0 2px 4px #10b98133}}.email-type-help{display:block;color:#64748b;font-size:.85rem;margin-top:4px;font-style:italic}.mail-textarea{resize:vertical;min-height:200px}.mail-error{background:#fee2e2;border:1px solid #fecaca;color:#dc2626;padding:12px;border-radius:8px;margin-bottom:16px;font-size:.95rem}.mail-success{background:#dcfce7;border:1px solid #bbf7d0;color:#16a34a;padding:12px;border-radius:8px;margin-bottom:16px;font-size:.95rem}.mail-modal-footer{padding:20px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:12px;background:#f8fafc;border-radius:0 0 12px 12px}.cancel-btn,.send-btn,.regenerate-btn{padding:10px 16px;border-radius:8px;font-weight:500;transition:all .2s;cursor:pointer}.cancel-btn{background:#f1f5f9;border:1px solid #e2e8f0;color:#475569}.cancel-btn:hover{background:#e2e8f0}.send-btn{background:#3b82f6;border:1px solid #2563eb;color:#fff}.send-btn:hover:not(:disabled){background:#2563eb}.send-btn:disabled{opacity:.6;cursor:not-allowed}.regenerate-btn{background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;margin-right:auto}.regenerate-btn:hover:not(:disabled){background:#e2e8f0}.regenerate-btn:disabled{opacity:.6;cursor:wait}[data-theme=dark] .mail-modal-content{background:#1e293b}[data-theme=dark] .mail-modal-header,[data-theme=dark] .mail-modal-footer{background:#0f172a;border-color:#334155}[data-theme=dark] .mail-modal-header h3{color:#f8fafc}[data-theme=dark] .mail-input,[data-theme=dark] .mail-textarea{background:#1e293b;border-color:#334155;color:#f8fafc}[data-theme=dark] .mail-input:focus,[data-theme=dark] .mail-textarea:focus{border-color:#3b82f6}[data-theme=dark] .mail-field label,[data-theme=dark] .close-modal-btn{color:#cbd5e1}[data-theme=dark] .close-modal-btn:hover{background:#334155}[data-theme=dark] .cancel-btn,[data-theme=dark] .regenerate-btn{background:#334155;border-color:#475569;color:#f8fafc}[data-theme=dark] .cancel-btn:hover,[data-theme=dark] .regenerate-btn:hover:not(:disabled){background:#475569}[data-theme=dark] .send-btn{background:#3b82f6;border-color:#2563eb}[data-theme=dark] .send-btn:hover:not(:disabled){background:#2563eb}.attachments-section{border:1px solid #e2e8f0;border-radius:8px;padding:16px;background:#f8fafc}.attachment-controls{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.attach-btn,.drive-folder-btn{padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#475569;cursor:pointer;font-size:.875rem;transition:all .2s;display:flex;align-items:center;gap:6px}.attach-btn:hover:not(:disabled),.drive-folder-btn:hover:not(:disabled){background:#f1f5f9;border-color:#cbd5e1}.attach-btn:disabled,.drive-folder-btn:disabled{opacity:.6;cursor:not-allowed}.selected-folder{display:flex;align-items:center;justify-content:space-between;background:#dbeafe;border:1px solid #93c5fd;border-radius:6px;padding:8px 12px;margin-bottom:12px}.folder-info{color:#1e40af;font-size:.875rem}.remove-folder-btn{background:none;border:none;color:#6b7280;cursor:pointer;padding:2px 6px;border-radius:4px;transition:all .2s}.remove-folder-btn:hover{background:#f3f4f6;color:#374151}.attachments-list{border-top:1px solid #e2e8f0;padding-top:12px}.attachment-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;margin-bottom:8px}.attachment-info{display:flex;flex-direction:column;gap:2px}.attachment-name{font-weight:500;color:#374151;font-size:.875rem}.attachment-size{color:#6b7280;font-size:.75rem}.remove-attachment-btn{background:none;border:none;color:#ef4444;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s;font-weight:700}.remove-attachment-btn:hover:not(:disabled){background:#fee2e2}.remove-attachment-btn:disabled{opacity:.5;cursor:not-allowed}.attachments-summary{margin-top:8px;padding:8px;background:#f1f5f9;border-radius:4px;font-size:.75rem;color:#64748b;text-align:center}[data-theme=dark] .attachments-section{background:#0f172a;border-color:#334155}[data-theme=dark] .attach-btn,[data-theme=dark] .drive-folder-btn{background:#1e293b;border-color:#334155;color:#cbd5e1}[data-theme=dark] .attach-btn:hover:not(:disabled),[data-theme=dark] .drive-folder-btn:hover:not(:disabled){background:#334155;border-color:#475569}[data-theme=dark] .selected-folder{background:#1e3a8a;border-color:#3b82f6}[data-theme=dark] .folder-info{color:#93c5fd}[data-theme=dark] .attachments-list{border-color:#334155}[data-theme=dark] .attachment-item{background:#1e293b;border-color:#334155}[data-theme=dark] .attachment-name{color:#f1f5f9}[data-theme=dark] .attachment-size{color:#94a3b8}[data-theme=dark] .attachments-summary{background:#1e293b;color:#94a3b8}.mail-minimized-indicator{position:fixed;bottom:20px;right:20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:16px 24px;border-radius:50px;box-shadow:0 4px 20px #667eea66;cursor:pointer;z-index:1002;transition:all .3s ease;animation:slideInUp .3s ease}.mail-minimized-indicator:hover{transform:translateY(-4px);box-shadow:0 6px 30px #667eea99}.minimized-content{display:flex;align-items:center;gap:12px}.minimized-icon{font-size:1.5rem}.minimized-text{font-weight:600;font-size:1rem}.minimized-recipient{font-size:.875rem;opacity:.9;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes slideInUp{0%{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}.mail-modal-header-actions{display:flex;gap:8px;align-items:center}.minimize-modal-btn{background:none;border:none;font-size:1.8rem;cursor:pointer;color:#64748b;padding:5px 12px;border-radius:6px;transition:all .2s;line-height:1;font-weight:300}.minimize-modal-btn:hover{background:#e2e8f0;color:#1e293b}[data-theme=dark] .mail-minimized-indicator{background:linear-gradient(135deg,#4c51bf,#553c9a);box-shadow:0 4px 20px #4c51bf66}[data-theme=dark] .mail-minimized-indicator:hover{box-shadow:0 6px 30px #4c51bf99}[data-theme=dark] .minimize-modal-btn:hover{background:#334155;color:#f1f5f9}.footer-section{border-top:2px solid #e5e7eb;padding-top:20px;margin-top:24px}.footer-selector{border:1px solid #e2e8f0;border-radius:8px;padding:16px;background:#f8fafc}.footer-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px}.footer-option{position:relative;cursor:pointer;border:2px solid #e2e8f0;border-radius:8px;padding:8px;background:#fff;transition:all .2s;display:flex;flex-direction:column;align-items:center;overflow:visible}.footer-option:hover{border-color:#cbd5e1;background:#f8fafc}.footer-option.selected{border-color:#3b82f6;background:#eff6ff;box-shadow:0 0 0 3px #3b82f61a}.footer-option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.footer-preview{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;position:relative;overflow:visible}.footer-preview-image{width:100%;max-width:200px;height:auto;max-height:120px;object-fit:contain;border-radius:4px;border:1px solid #e2e8f0}.footer-preview-placeholder{width:100%;height:80px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;border-radius:4px;border:1px dashed #cbd5e1;color:#64748b;font-size:.75rem}.footer-name{font-size:.75rem;color:#475569;font-weight:500;text-align:center}.footer-option.selected .footer-name{color:#1e40af;font-weight:600}.remove-footer-btn{position:absolute;top:8px;right:8px;background:#ef4444;border:2px solid white;color:#fff;width:28px;height:28px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;transition:all .2s;z-index:20;box-shadow:0 2px 8px #0000004d;line-height:1}.remove-footer-btn:hover{background:#dc2626;transform:scale(1.15);box-shadow:0 4px 12px #ef444480}.remove-footer-btn:active{transform:scale(1.05)}.remove-footer-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.upload-footer-btn{width:100%;padding:10px 16px;border:2px dashed #cbd5e1;border-radius:8px;background:#fff;color:#475569;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.upload-footer-btn:hover:not(:disabled){border-color:#3b82f6;background:#eff6ff;color:#1e40af}.upload-footer-btn:disabled{opacity:.6;cursor:not-allowed}[data-theme=dark] .footer-section{border-top-color:#334155}[data-theme=dark] .footer-selector{background:#0f172a;border-color:#334155}[data-theme=dark] .footer-option{background:#1e293b;border-color:#334155}[data-theme=dark] .footer-option:hover{background:#334155;border-color:#475569}[data-theme=dark] .footer-option.selected{background:#1e3a8a;border-color:#3b82f6}[data-theme=dark] .footer-preview-image{border-color:#334155}[data-theme=dark] .footer-preview-placeholder{background:#1e293b;border-color:#334155;color:#94a3b8}[data-theme=dark] .footer-name{color:#cbd5e1}[data-theme=dark] .footer-option.selected .footer-name{color:#93c5fd}[data-theme=dark] .upload-footer-btn{background:#1e293b;border-color:#334155;color:#cbd5e1}[data-theme=dark] .upload-footer-btn:hover:not(:disabled){background:#334155;border-color:#3b82f6;color:#93c5fd}.sending-animation-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffffff2;display:flex;align-items:center;justify-content:center;z-index:1000;border-radius:12px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sending-animation{display:flex;flex-direction:column;align-items:center;gap:20px;padding:40px}.sending-spinner{width:60px;height:60px;border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.sending-text{font-size:1.25rem;font-weight:600;color:#1e293b;text-align:center}.sending-dots{display:flex;gap:8px;align-items:center}.sending-dots span{width:8px;height:8px;background:#3b82f6;border-radius:50%;animation:bounce 1.4s infinite ease-in-out}.sending-dots span:nth-child(1){animation-delay:-.32s}.sending-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.success-animation-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffffffa;display:flex;align-items:center;justify-content:center;z-index:1000;border-radius:12px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease-in}.success-animation{display:flex;flex-direction:column;align-items:center;gap:20px;padding:40px;animation:scaleIn .5s ease-out}.success-checkmark{width:80px;height:80px;position:relative;animation:checkmarkPop .6s ease-out}.checkmark-circle{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);position:absolute;animation:circlePop .4s ease-out}.checkmark-stem{width:4px;height:30px;background:#fff;position:absolute;left:32px;top:38px;transform:rotate(-45deg);transform-origin:bottom;animation:stemDraw .3s ease-out .4s;animation-fill-mode:both}.checkmark-kick{width:4px;height:20px;background:#fff;position:absolute;left:38px;top:50px;transform:rotate(45deg);transform-origin:bottom;animation:kickDraw .3s ease-out .5s;animation-fill-mode:both}.success-text{font-size:1.5rem;font-weight:700;color:#059669;text-align:center;animation:textSlideUp .5s ease-out .3s;animation-fill-mode:both;opacity:0}.success-icon{font-size:3rem;animation:iconBounce .6s ease-out .6s;animation-fill-mode:both;opacity:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes circlePop{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes checkmarkPop{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes stemDraw{0%{height:0}to{height:30px}}@keyframes kickDraw{0%{height:0}to{height:20px}}@keyframes textSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes iconBounce{0%{transform:translateY(0) scale(0);opacity:0}50%{transform:translateY(-10px) scale(1.2);opacity:1}to{transform:translateY(0) scale(1);opacity:1}}[data-theme=dark] .sending-animation-overlay{background:#1e293bf2}[data-theme=dark] .sending-text{color:#f1f5f9}[data-theme=dark] .success-animation-overlay{background:#1e293bfa}.gpt-analysis{width:100%;max-width:95vw;padding:2rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:0 auto}.gpt-analysis-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.gpt-analysis-header h3{margin:0;color:#1f2937;font-size:1.5rem;font-weight:600}.message{color:#059669;padding:1rem;margin:1rem 0;background:#d1fae5;border-radius:8px;font-size:1rem}.analysis-results{margin-top:1.5rem;width:100%}.analysis-results h3{color:#333;margin-bottom:1.5rem;font-size:1.25rem}.table-preview{margin:1.5rem 0;overflow-x:auto;border-radius:8px;border:1px solid #eaeaea;width:100%;max-width:95vw}.table-preview table{width:100%;min-width:95vw;border-collapse:collapse;background:#fff}.table-preview th,.table-preview td{padding:1rem;border:1px solid #eaeaea;text-align:left;white-space:nowrap}.table-preview th{background:#f8f8f8;font-weight:600;font-size:1rem;position:sticky;top:0;z-index:1}.table-preview td{font-size:1rem;position:relative;cursor:pointer;transition:background-color .2s ease;white-space:pre-wrap;font-family:inherit}.table-preview td:hover{background-color:#f8f8f8}.table-preview td.null-value{color:#999;font-style:italic}.table-preview td.editing{padding:0;background:#fff}.table-preview td input{width:100%;padding:1rem;border:2px solid #3b82f6;border-radius:4px;font-size:1rem;outline:none}.insert-button{margin-top:1.5rem;padding:.75rem 1.5rem;background:#000;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease}.insert-button:hover{opacity:.9;transform:translateY(-1px)}.insert-button:active{transform:translateY(0)}@media (max-width: 768px){.gpt-analysis{padding:1rem}.table-preview{margin:1rem 0;border-radius:4px}.table-preview th,.table-preview td{padding:.75rem;font-size:.875rem}}.success-message{color:#059669;padding:10px;margin:10px 0;background:#ecfdf5;border-radius:6px}.mapped-data{margin-top:20px}.mapped-data h3{color:#1f2937;margin-bottom:15px}.data-table{overflow-x:auto;margin:10px 0;width:100%;border:1px solid #e5e7eb;border-radius:8px}.data-table table{width:100%;border-collapse:collapse;background:#fff}.data-table th{background:#f3f4f6;padding:12px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;position:sticky;top:0;z-index:1}.data-table td{padding:12px;border-bottom:1px solid #e5e7eb;color:#4b5563;vertical-align:middle}.data-table tr:hover{background:#f9fafb}.email-column{width:50px}.email-cell{width:50px;text-align:center}.email-icon-btn{background:none;border:none;padding:4px;cursor:pointer;color:#6b7280;transition:color .2s}.email-icon-btn:hover:not(:disabled){color:#3b82f6}.email-icon-btn:disabled{cursor:not-allowed;opacity:.5}.email-icon{width:20px;height:20px}.editable-cell{cursor:pointer;transition:background-color .2s}.editable-cell:hover{background-color:#f3f4f6}.cell-content{display:block;padding:4px}.edit-cell-input{width:100%;padding:8px;border:2px solid #3b82f6;border-radius:4px;font-size:inherit;font-family:inherit;background:#fff}.edit-cell-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.object-value{font-family:Courier New,monospace;white-space:pre-wrap;background-color:#f8f9fa;padding:8px;border-radius:4px;font-size:.9em;line-height:1.4}.action-buttons{display:flex;gap:10px;margin-top:20px;justify-content:flex-end}.insert-button,.reanalyze-button{padding:8px 16px;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;color:#fff}.insert-button{background:#2563eb}.insert-button:hover{background:#1d4ed8}.reanalyze-button{background:#059669}.reanalyze-button:hover{background:#047857}.status-cell{width:120px}.id-cell{width:80px}@media (max-width: 768px){.data-table td,.data-table th{padding:8px;font-size:.9rem}.action-buttons{flex-direction:column}.insert-button,.reanalyze-button{width:100%}}.sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none}.th-content{display:flex;align-items:center;gap:4px}.header-content{display:flex;align-items:center;justify-content:center}.listado-analysis{width:100%;max-width:95vw;padding:2rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:0 auto}.listado-analysis-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.listado-analysis-header h3{margin:0;color:#1f2937;font-size:1.5rem;font-weight:600}.header-actions{display:flex;gap:12px;align-items:center}.insert-button.primary{background:#059669;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.insert-button.primary:hover{background:#047857;transform:translateY(-1px);box-shadow:0 4px 12px #0596694d}.close-button{background:#f3f4f6;color:#6b7280;border:none;padding:8px 12px;border-radius:6px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:40px;height:40px}.close-button:hover{background:#ef4444;color:#fff;transform:scale(1.05)}.loading{color:#666;padding:1rem;text-align:center;font-size:1rem}.error-message{color:#ef4444;padding:1rem;margin:1rem 0;background:#fee2e2;border-radius:8px;font-size:1rem}.success-message{color:#059669;padding:1rem;margin:1rem 0;background:#d1fae5;border-radius:8px;font-size:1rem}.mapped-data{margin-top:1.5rem;width:100%}.mapped-data h3{color:#333;margin-bottom:1.5rem;font-size:1.25rem}.data-table{margin:1.5rem 0;overflow-x:auto;border-radius:8px;border:1px solid #eaeaea;width:100%;max-width:95vw}.data-table table{width:100%;min-width:95vw;border-collapse:collapse;background:#fff}.data-table th,.data-table td{padding:1rem;border:1px solid #eaeaea;text-align:left;white-space:nowrap}.data-table th{background:#f8f8f8;font-weight:600;font-size:1rem;position:sticky;top:0;z-index:1}.data-table td{font-size:1rem;position:relative;cursor:pointer;transition:background-color .2s ease}.data-table td:hover{background-color:#f8f8f8}.data-table td span{display:block;width:100%;min-height:24px}.data-table td input{width:100%;padding:.5rem;border:2px solid #3b82f6;border-radius:4px;font-size:1rem;outline:none}.action-buttons{display:flex;gap:1rem;margin-top:1.5rem}.insert-button,.reanalyze-button,.retry-button{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease}.insert-button{background-color:#3b82f6;color:#fff}.insert-button:hover{background-color:#2563eb}.reanalyze-button{background-color:#f3f4f6;color:#374151}.reanalyze-button:hover{background-color:#e5e7eb}.retry-button{background-color:#ef4444;color:#fff;margin-left:1rem}.retry-button:hover{background-color:#dc2626}[data-theme=dark] .listado-analysis{background:#1f2937}[data-theme=dark] .loading{color:#9ca3af}[data-theme=dark] .error-message{background:#7f1d1d;color:#fca5a5}[data-theme=dark] .success-message{background:#064e3b;color:#6ee7b7}[data-theme=dark] .mapped-data h3{color:#e5e7eb}[data-theme=dark] .data-table{border-color:#374151}[data-theme=dark] .data-table table{background:#1f2937}[data-theme=dark] .data-table th,[data-theme=dark] .data-table td{border-color:#374151}[data-theme=dark] .data-table th{background:#111827;color:#e5e7eb}[data-theme=dark] .data-table td{color:#e5e7eb}[data-theme=dark] .data-table td:hover{background-color:#374151}[data-theme=dark] .data-table td input{background:#111827;color:#e5e7eb;border-color:#60a5fa}[data-theme=dark] .reanalyze-button{background-color:#374151;color:#e5e7eb}[data-theme=dark] .reanalyze-button:hover{background-color:#4b5563}.drive-document-selector-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.drive-document-selector-modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;width:90%;max-width:800px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.drive-document-selector-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.drive-document-selector-header h3{margin:0;font-size:18px;font-weight:600}.close-button{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:4px;border-radius:4px;transition:background-color .2s}.close-button:hover{background:#ffffff1a}.drive-document-selector-body{flex:1;overflow-y:auto;padding:20px}.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding:12px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.breadcrumb-item{background:none;border:none;color:#3b82f6;cursor:pointer;padding:4px 8px;border-radius:4px;font-size:14px;transition:background-color .2s}.breadcrumb-item:hover{background:#dbeafe}.breadcrumb-separator{color:#6b7280;font-size:14px}.search-section{margin-bottom:20px}.search-input{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;transition:border-color .2s}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.error-message{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px 16px;border-radius:8px;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between}.retry-button{background:#dc2626;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px;transition:background-color .2s}.retry-button:hover{background:#b91c1c}.loading-message{display:flex;align-items:center;justify-content:center;padding:40px;color:#6b7280;font-size:16px}.spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-right:12px}.documents-list{display:flex;flex-direction:column;gap:8px}.document-item{display:flex;align-items:center;padding:12px 16px;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s;position:relative}.document-item:hover{background:#f8fafc;border-color:#3b82f6;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.document-item.selected{background:#f0fdf4;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a;transform:translateY(-1px)}.document-item.selected .document-name{color:#10b981;font-weight:600}.document-icon{font-size:24px;margin-right:16px;width:32px;text-align:center}.document-info{flex:1;min-width:0}.document-name{font-weight:500;color:#1f2937;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-details{display:flex;align-items:center;gap:8px;font-size:12px;color:#6b7280}.document-details span{white-space:nowrap}.selection-indicator{display:flex;align-items:center;justify-content:center;width:32px;height:32px;margin-left:12px}.checkmark{font-size:20px;color:#10b981;animation:checkmarkAppear .3s ease-out}.checkbox{font-size:20px;color:#6b7280;transition:color .2s}@keyframes checkmarkAppear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.no-documents{text-align:center;padding:40px;color:#6b7280;font-style:italic}.drive-document-selector-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f8fafc;flex-wrap:wrap;gap:12px}.cancel-button{background:#6b7280;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;transition:background-color .2s}.cancel-button:hover{background:#4b5563}.footer-actions{display:flex;gap:8px}.analyze-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.analyze-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.analyze-button:disabled{opacity:.6;cursor:not-allowed}.footer-info{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#6b7280}.selected-file-info{color:#10b981;font-weight:500}@media (max-width: 768px){.drive-document-selector-modal{width:95%;max-height:90vh}.drive-document-selector-header{padding:16px 20px}.drive-document-selector-body{padding:16px}.document-item{padding:10px 12px}.document-icon{font-size:20px;margin-right:12px}.drive-document-selector-footer{padding:12px 20px;flex-direction:column;gap:12px}.footer-actions{justify-content:center}.analyze-button{width:100%;max-width:200px}}.pdf-parser{height:100%;width:100%;max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem;padding:0 2rem;overflow:auto}.upload-section{width:100%;padding:2rem;background:var(--bg-surface-secondary, #f8f9fa);border-radius:8px;display:flex;flex-direction:column;gap:1rem;flex-shrink:0}.upload-options{display:flex;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap}.drive-selector-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;font-weight:500;font-size:16px}.drive-selector-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.selected-file-info{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem;background:#fff;border-radius:6px;border:1px solid #e2e8f0}.file-name{font-weight:500;color:#374151}.drive-link{color:#3b82f6;text-decoration:none;font-size:14px;padding:4px 8px;border-radius:4px;transition:background-color .2s}.drive-link:hover{background:#eff6ff;text-decoration:underline}.analysis-section{flex:1;display:flex;flex-direction:column;gap:1rem;overflow:auto}.file-input-label{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background-color:var(--primary-color, #007bff);color:#fff;border-radius:6px;cursor:pointer;transition:all .2s ease;font-weight:500}.file-input-label:hover{background-color:var(--primary-color-dark, #0056b3)}.file-input-text{font-size:16px}.loading{padding:1rem;background-color:var(--bg-surface-secondary, #e9ecef);border-radius:6px;text-align:center;color:var(--text-secondary, #6c757d)}.error-message{padding:1rem;background-color:var(--error-bg, #fff5f5);color:var(--error-text, #dc3545);border-radius:6px;text-align:center}.parsed-content{flex:1;width:100%;overflow:auto;padding:2rem;background:var(--bg-surface-secondary, #f8f9fa);border-radius:8px}.text-content{background-color:#fff;padding:15px;border-radius:4px;border:1px solid #dee2e6;margin:10px 0;max-height:400px;overflow-y:auto}.text-content pre{white-space:pre-wrap;word-wrap:break-word;margin:0;font-family:monospace}.tables-section{margin:20px 0}.table-container{margin:15px 0;padding:15px;background-color:#fff;border-radius:4px;border:1px solid #dee2e6;overflow-x:auto;width:100%}.table-container table{min-width:100%;border-collapse:collapse;margin-top:10px}.table-container th,.table-container td{border:1px solid #dee2e6;padding:8px;text-align:left}.table-container th{background-color:#f8f9fa}.table-select{min-width:200px}.table-dropdown{width:100%;padding:.75rem;border-radius:6px;border:1px solid var(--border-color, #dee2e6);background-color:#fff;font-size:16px}[data-theme=dark] .upload-section,[data-theme=dark] .parsed-content{background:var(--bg-surface-secondary, #2d3748)}[data-theme=dark] .loading{background-color:var(--bg-surface-secondary, #2d3748);color:var(--text-secondary, #a0aec0)}[data-theme=dark] .error-message{background-color:var(--error-bg, #742a2a);color:var(--error-text, #feb2b2)}@media (max-width: 768px){.upload-section{flex-direction:column;padding:1.5rem}.table-select{width:100%}.pdf-parser{padding:0 1rem}}.modal-content{position:relative;background:#fff;border-radius:8px;margin:20px;z-index:1001;display:flex;flex-direction:column;box-shadow:0 4px 6px #0000001a;overflow:hidden}.modal-content.modal-default{width:90%;max-width:1200px;min-height:200px;max-height:85vh}.modal-content.modal-full{width:95vw;height:95vh;max-width:none;max-height:none}.modal-body{padding:20px;overflow:auto;flex:1;height:100%;display:flex;flex-direction:column}.modal-header{position:relative;height:0;z-index:1002}.modal-close{position:absolute;right:10px;top:10px;background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:5px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.modal-close:hover{background-color:#0000001a;color:#333}[data-theme=dark] .modal-content{background-color:var(--bg-surface, #1a1a1a);border:1px solid var(--border-color, #333)}[data-theme=dark] .modal-close{color:var(--text-secondary, #999)}[data-theme=dark] .modal-close:hover{color:var(--text-primary, #fff)}.drive-container{padding:0;min-height:100vh;width:100%;margin:0;background:#fafbfc;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.drive-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;background:#fff;border-bottom:1px solid #e8ebed;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.drive-header h2{font-size:24px;font-weight:600;color:#1c1e21;margin:0;display:flex;align-items:center;gap:12px;letter-spacing:-.01em}.status-badge{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:6px}.status-badge.checking{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.status-badge.connected{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.status-badge.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.drive-controls{display:flex;justify-content:space-between;align-items:center;padding:20px 32px;background:#fff;border-bottom:1px solid #e8ebed;position:sticky;top:73px;z-index:99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.folder-path{display:flex;align-items:center;gap:12px;flex:1}.back-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #e8ebed;border-radius:8px;background:#fff;color:#65676b;cursor:pointer;transition:all .2s ease;font-size:16px;margin-right:12px}.back-button:hover:not(:disabled){background:#f0f2f5;border-color:#d0d7de;color:#1c1e21;transform:translateY(-1px)}.back-button:disabled{opacity:.4;cursor:not-allowed;transform:none}.current-location{display:flex;align-items:center;gap:8px;flex:1}.location-icon{font-size:16px;color:#1877f2}.location-name{font-size:16px;font-weight:600;color:#1c1e21}.location-path{font-size:12px;color:#8a8d91;margin-left:8px;font-weight:400}.search-container{display:flex;align-items:center;position:relative;margin:0 20px}.search-input{padding:10px 16px;border:1px solid #e8ebed;border-radius:8px;font-size:14px;width:240px;transition:all .2s ease;background:#fff;color:#1c1e21;font-weight:400}.search-input:focus{outline:none;border-color:#1877f2;box-shadow:0 0 0 3px #1877f21a}.search-input::placeholder{color:#8a8d91}.action-buttons{display:flex;align-items:center;gap:12px}.upload-button{padding:10px 16px;border:1px solid #e8ebed;border-radius:8px;background:#fff;color:#1c1e21;font-weight:500;font-size:14px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.upload-button:hover:not(:disabled){background:#f0f2f5;border-color:#d0d7de;transform:translateY(-1px)}.upload-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.create-folder-btn{padding:10px 16px;border:1px solid #1877f2;border-radius:8px;background:#1877f2;color:#fff;font-weight:500;font-size:14px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.create-folder-btn:hover{background:#166fe5;border-color:#166fe5;transform:translateY(-1px)}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:400px;box-shadow:0 8px 32px #0003;overflow:hidden}.modal-header{padding:20px 24px;border-bottom:1px solid #e8ebed;background:#f8f9ff}.modal-header h3{margin:0;font-size:18px;font-weight:600;color:#1c1e21}.modal-body{padding:24px}.folder-location{background:#f0f2f5;padding:12px;border-radius:8px;margin-bottom:20px;font-size:14px;color:#65676b}.input-group{display:flex;flex-direction:column;gap:8px}.input-group label{font-weight:500;color:#1c1e21;font-size:14px}.folder-input{padding:12px 16px;border:1px solid #e8ebed;border-radius:8px;font-size:14px;transition:all .2s ease;background:#fff;color:#1c1e21}.folder-input:focus{outline:none;border-color:#1877f2;box-shadow:0 0 0 3px #1877f21a}.modal-actions{padding:20px 24px;border-top:1px solid #e8ebed;display:flex;justify-content:flex-end;gap:12px;background:#f8f9ff}.modal-button{padding:10px 20px;border-radius:8px;font-weight:500;font-size:14px;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.modal-button.cancel{background:#f0f2f5;color:#65676b;border-color:#e8ebed}.modal-button.cancel:hover{background:#e4e6ea;color:#1c1e21}.modal-button.confirm{background:#1877f2;color:#fff;border-color:#1877f2}.modal-button.confirm:hover:not(:disabled){background:#166fe5;border-color:#166fe5;transform:translateY(-1px)}.modal-button.confirm:disabled{background:#e4e6ea;color:#bcc0c4;border-color:#e8ebed;cursor:not-allowed;transform:none}.files-container{flex:1;padding:24px 32px 32px;background:#fafbfc;overflow-y:auto;max-height:calc(100vh - 180px);min-height:400px}.folders-section h3,.files-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#1c1e21;display:flex;align-items:center;gap:8px}.folders-section,.files-section{margin-bottom:32px;overflow-x:auto;width:100%;min-height:fit-content}.folders-section:last-child,.files-section:last-child{margin-bottom:16px}.files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-auto-rows:auto;gap:16px;margin-top:16px;width:100%;overflow-x:auto;padding-bottom:16px;min-height:fit-content}.file-item{display:flex;flex-direction:column;padding:16px;background:#fff;border:1px solid #e8ebed;border-radius:12px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;min-height:120px}.file-item:hover{border-color:#1877f2;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.file-item.folder{background:linear-gradient(135deg,#f8f9ff,#fff);border-color:#e3f2fd}.file-item.folder:hover{border-color:#1877f2;background:linear-gradient(135deg,#e3f2fd,#f8f9ff)}.file-icon{font-size:32px;margin-bottom:12px;display:flex;align-items:center;justify-content:center;height:48px}.file-info{display:flex;flex-direction:column;gap:4px;min-height:0}.file-name{font-weight:500;font-size:14px;color:#1c1e21;line-height:1.3;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.file-details{display:flex;flex-direction:column;gap:2px;font-size:12px;color:#65676b;margin-top:4px}.file-size,.file-date{font-size:11px;color:#8a8d91;line-height:1.2}.folder-status{font-size:11px;color:#1877f2;font-weight:500}.hover-actions{position:absolute;top:8px;right:8px;display:flex;gap:4px;opacity:0;transform:translateY(-5px);transition:all .2s ease;z-index:10}.file-item:hover .hover-actions{opacity:1;transform:translateY(0)}.hover-action{width:24px;height:24px;border:none;border-radius:6px;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .15s ease;box-shadow:0 2px 8px #0000001a}.hover-action:hover{transform:scale(1.1);box-shadow:0 4px 12px #00000026}.hover-action.edit{border:1px solid #e3f2fd}.hover-action.edit:hover{background:#e3f2fd;border-color:#1877f2}.hover-action.delete{border:1px solid #ffebee}.hover-action.delete:hover{background:#ffebee;border-color:#dc3545}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 32px;gap:16px}.loading-spinner{font-size:24px;animation:spin 1s linear infinite}.loading-container p{color:#65676b;font-size:14px;margin:0}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 32px;text-align:center;color:#65676b}.empty-icon{font-size:48px;margin-bottom:16px;opacity:.7}.empty-state h3{font-size:18px;font-weight:600;color:#1c1e21;margin:0 0 8px}.empty-state p{font-size:14px;color:#65676b;margin:0;line-height:1.4}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 32px;text-align:center;gap:16px}.error-message{background:#fff;border:1px solid #f5c6cb;border-radius:12px;padding:24px;margin:24px 32px;color:#721c24}.error-message h3{color:#721c24;font-size:18px;font-weight:600;margin:0 0 8px}.retry-button{padding:10px 20px;border:1px solid #1877f2;border-radius:8px;background:#1877f2;color:#fff;font-weight:500;font-size:14px;cursor:pointer;transition:all .2s ease}.retry-button:hover{background:#166fe5;border-color:#166fe5;transform:translateY(-1px)}@media (max-width: 768px){.drive-header{padding:16px 20px;flex-direction:column;gap:12px;align-items:flex-start}.drive-controls{padding:16px 20px;flex-direction:column;gap:12px;align-items:stretch}.folder-path{order:1}.search-container{order:2;margin:0}.search-input{width:100%}.action-buttons{order:3;flex-direction:column;gap:8px}.files-container{padding:16px 20px 20px}.files-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.file-item{padding:12px}.file-icon{font-size:28px;height:40px;margin-bottom:8px}.hover-actions{opacity:.7;transform:translateY(0)}.hover-action{width:28px;height:28px;font-size:13px}}@media (max-width: 480px){.files-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.file-item{padding:10px}.file-name{font-size:13px}.hover-actions{opacity:.8}.hover-action{width:26px;height:26px;font-size:12px}}[data-theme=dark] .drive-container{background:#18191a}[data-theme=dark] .drive-header,[data-theme=dark] .drive-controls{background:#242526;border-color:#3a3b3c}[data-theme=dark] .drive-header h2{color:#e4e6ea}[data-theme=dark] .file-item{background:#242526;border-color:#3a3b3c;color:#e4e6ea}[data-theme=dark] .file-item:hover{border-color:#1877f2;background:#2f3031}[data-theme=dark] .file-name{color:#e4e6ea}[data-theme=dark] .file-details,[data-theme=dark] .file-size,[data-theme=dark] .file-date{color:#b0b3b8}[data-theme=dark] .search-input,[data-theme=dark] .upload-button,[data-theme=dark] .back-button{background:#3a3b3c;border-color:#4a4b4c;color:#e4e6ea}[data-theme=dark] .search-input:focus{border-color:#1877f2}[data-theme=dark] .location-name{color:#e4e6ea}[data-theme=dark] .location-path{color:#8a8d91}[data-theme=dark] .location-icon{color:#1877f2}[data-theme=dark] .files-container{background:#18191a}[data-theme=dark] .empty-state h3{color:#e4e6ea}[data-theme=dark] .empty-state p{color:#b0b3b8}[data-theme=dark] .create-folder-btn{background:#1877f2;border-color:#1877f2;color:#fff}[data-theme=dark] .create-folder-btn:hover{background:#166fe5;border-color:#166fe5}[data-theme=dark] .modal-content{background:#242526}[data-theme=dark] .modal-header{background:#2f3031;border-color:#3a3b3c}[data-theme=dark] .modal-header h3{color:#e4e6ea}[data-theme=dark] .folder-location{background:#3a3b3c;color:#b0b3b8}[data-theme=dark] .input-group label{color:#e4e6ea}[data-theme=dark] .folder-input{background:#3a3b3c;border-color:#4a4b4c;color:#e4e6ea}[data-theme=dark] .folder-input:focus{border-color:#1877f2}[data-theme=dark] .modal-actions{background:#2f3031;border-color:#3a3b3c}[data-theme=dark] .modal-button.cancel{background:#3a3b3c;color:#b0b3b8;border-color:#4a4b4c}[data-theme=dark] .modal-button.cancel:hover{background:#4a4b4c;color:#e4e6ea}.context-menu{position:fixed;background:#fff;border:1px solid #e8ebed;border-radius:8px;box-shadow:0 4px 16px #00000026;min-width:150px;overflow:hidden;z-index:1000;animation:contextMenuFadeIn .15s ease-out}.context-menu-item{padding:10px 16px;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;gap:10px;transition:all .15s ease;border-bottom:1px solid #f0f2f5}.context-menu-item:last-child{border-bottom:none}.context-menu-item:hover{background:#f0f2f5}.context-menu-item.danger{color:#dc3545}.context-menu-item.danger:hover{background:#fff5f5}@keyframes contextMenuFadeIn{0%{opacity:0;transform:scale(.95) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}[data-theme=dark] .context-menu{background:#242526;border-color:#3a3b3c;box-shadow:0 4px 16px #0000004d}[data-theme=dark] .context-menu-item{color:#e4e6ea;border-bottom-color:#3a3b3c}[data-theme=dark] .context-menu-item:hover{background:#3a3b3c}[data-theme=dark] .context-menu-item.danger{color:#ff6b6b}[data-theme=dark] .context-menu-item.danger:hover{background:#ff6b6b1a}.modal-content .warning-box{padding:12px 16px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;font-size:12px;color:#856404;margin-top:12px;display:flex;align-items:flex-start;gap:8px}.modal-content .danger-box{padding:12px 16px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;font-size:12px;color:#721c24;margin-bottom:16px;display:flex;align-items:flex-start;gap:8px}.modal-content .info-box{padding:12px 16px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;font-size:12px;color:#495057;display:flex;align-items:flex-start;gap:8px}[data-theme=dark] .modal-content .warning-box{background:#ffc10726;border-color:#ffc1074d;color:#ffc107}[data-theme=dark] .modal-content .danger-box{background:#dc354526;border-color:#dc35454d;color:#ff6b6b}[data-theme=dark] .modal-content .info-box{background:#3a3b3c;border-color:#4e4f50;color:#b0b3b8}[data-theme=dark] .hover-action{background:#242526f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 8px #0000004d}[data-theme=dark] .hover-action.edit{border-color:#3a3b3c}[data-theme=dark] .hover-action.edit:hover{background:#3a3b3c;border-color:#1877f2}[data-theme=dark] .hover-action.delete{border-color:#4a3a3a}[data-theme=dark] .hover-action.delete:hover{background:#dc35451a;border-color:#ff6b6b}.drive-manager-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.drive-manager-modal{background:#fff;border-radius:12px;width:95%;max-width:1200px;height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #0000004d;overflow:hidden}.drive-manager-header{padding:20px 24px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;background:#f8f9fa}.drive-manager-header h3{margin:0;font-size:1.3rem;font-weight:600;color:#333}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:5px;border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-btn:hover{background:#e9ecef;color:#000}.drive-manager-body{padding:0;flex:1;overflow:hidden}.drive-manager-body .drive-container{height:100%;display:flex;flex-direction:column}.drive-manager-body .drive-container .drive-header{display:none}.drive-manager-body .drive-container .drive-controls{padding:16px 24px;border-bottom:1px solid #e0e0e0;background:#f8f9fa}.drive-manager-body .drive-container .files-container{flex:1;overflow-y:auto;padding:16px 24px}.folder-section{margin-bottom:20px}.folder-info{display:flex;align-items:center;gap:15px}.selected-folder{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#e3f2fd;border:1px solid #2196f3;border-radius:8px;flex:1}.folder-name{font-weight:500;color:#1976d2}.change-folder-btn,.select-folder-btn{background:#2196f3;color:#fff;border:none;padding:10px 16px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.change-folder-btn:hover,.select-folder-btn:hover{background:#1976d2;transform:translateY(-1px)}.select-folder-btn{padding:14px 20px;font-size:1rem}.drive-tabs{display:flex;border-bottom:2px solid #e0e0e0;margin-bottom:20px}.tab-btn{background:none;border:none;padding:12px 20px;cursor:pointer;font-weight:500;color:#666;border-bottom:3px solid transparent;transition:all .2s ease}.tab-btn.active{color:#2196f3;border-bottom-color:#2196f3}.tab-btn:hover{color:#2196f3;background:#f5f5f5}.error-message{background:#ffebee;color:#c62828;padding:12px 16px;border-radius:6px;margin-bottom:16px;border-left:4px solid #c62828}.success-message{background:#e8f5e8;color:#2e7d32;padding:12px 16px;border-radius:6px;margin-bottom:16px;border-left:4px solid #2e7d32}.drive-content{min-height:400px}.files-view{width:100%}.loading{text-align:center;padding:40px;color:#666;font-size:1.1rem}.no-files{text-align:center;padding:40px;color:#666}.no-files p{margin-bottom:20px;font-size:1.1rem}.upload-first-btn{background:#4caf50;color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.upload-first-btn:hover{background:#45a049;transform:translateY(-1px)}.files-list{display:flex;flex-direction:column;gap:8px}.file-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #e0e0e0;border-radius:6px;transition:all .2s ease}.file-item:hover{background:#f8f9fa;border-color:#2196f3}.file-icon{font-size:1.5rem;min-width:30px}.file-details{flex:1}.file-name{font-weight:500;color:#333;margin-bottom:4px}.file-meta{display:flex;gap:12px;font-size:.85rem;color:#666}.file-actions{display:flex;gap:8px}.view-file-btn{background:#2196f3;color:#fff;border:none;padding:8px 12px;border-radius:4px;cursor:pointer;text-decoration:none;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.view-file-btn:hover{background:#1976d2;transform:scale(1.05)}.upload-view{width:100%}.upload-section{text-align:center}.select-files-btn{background:#4caf50;color:#fff;border:none;padding:16px 32px;border-radius:8px;cursor:pointer;font-size:1.1rem;font-weight:500;transition:all .2s ease;margin-bottom:20px}.select-files-btn:hover:not(:disabled){background:#45a049;transform:translateY(-2px)}.select-files-btn:disabled{background:#ccc;cursor:not-allowed}.attachments-list{max-width:600px;margin:0 auto;text-align:left}.attachments-list h4{margin-bottom:12px;color:#333}.attachment-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;margin-bottom:8px}.attachment-name{flex:1;font-weight:500;color:#333}.attachment-size{color:#666;font-size:.9rem}.remove-attachment-btn{background:#f44336;color:#fff;border:none;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.remove-attachment-btn:hover:not(:disabled){background:#d32f2f}.remove-attachment-btn:disabled{background:#ccc;cursor:not-allowed}.upload-btn{background:#2196f3;color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-weight:500;margin-top:16px;width:100%;transition:all .2s ease}.upload-btn:hover:not(:disabled){background:#1976d2;transform:translateY(-1px)}.upload-btn:disabled{background:#ccc;cursor:not-allowed}@media (max-width: 768px){.drive-manager-overlay{padding:10px}.drive-manager-modal{width:95%;max-height:95vh}.drive-manager-header{padding:16px 20px}.drive-manager-body{padding:20px}.folder-info{flex-direction:column;align-items:stretch}.selected-folder{flex-direction:column;align-items:flex-start;gap:8px}.drive-tabs{overflow-x:auto}.file-item{flex-direction:column;align-items:flex-start;gap:8px}.file-meta{flex-direction:column;gap:4px}.attachment-item{flex-direction:column;align-items:flex-start;gap:8px}}.data-table-container{position:relative;width:100%;height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid #e0e0e0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden}.table-header{display:flex;flex-direction:row;align-items:center;gap:8px;padding:4px 12px;background:#f8f9fa;border-bottom:1px solid #e5e7eb;flex-shrink:0;min-height:28px}.table-title{margin:0;flex-shrink:0}.table-title h2{margin:0;font-size:16px;font-weight:600;color:#374151;line-height:1.1;white-space:nowrap}.table-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:nowrap;flex:1}.left-controls{display:flex;align-items:center;gap:8px;flex:1}.right-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.search-input{height:28px;padding:4px 8px;font-size:13px;border:1px solid #d1d5db;border-radius:4px;min-width:150px;flex:1}.capturador-btn{height:28px;padding:4px 8px;font-size:12px;border:none;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:4px;background-color:#10b981;color:#fff;font-weight:500}.refresh-btn{height:28px;padding:4px 8px;font-size:12px;border:none;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:4px;background-color:#3b82f6;color:#fff;font-weight:500}.pdf-icon,.refresh-icon{width:14px;height:14px}.confirmation-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border:1px solid #eaeaea;border-radius:4px;padding:1rem;box-shadow:0 2px 8px #0000000d;z-index:1000;min-width:300px}.confirmation-dialog p{margin:0 0 1rem;font-size:.9rem;color:#333}.confirmation-actions{display:flex;gap:.5rem;justify-content:flex-end}.confirm-btn,.cancel-btn{padding:.5rem 1rem;border:1px solid #eaeaea;border-radius:4px;background:transparent;cursor:pointer;font-size:.85rem;transition:all .2s ease}.confirm-btn{background:#000;color:#fff;border-color:#000}.confirm-btn:hover{opacity:.8}.cancel-btn:hover{background:#f5f5f5}.table-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0}.search-box:hover .search-input{border-color:#94a3b8}.search-input{padding:.5rem 1rem;border:1px solid var(--border-color, #eaeaea);border-radius:6px;font-size:.875rem;width:300px;background:var(--background-primary, white);color:var(--text-primary, #212529);transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 2px #3b82f61a}.search-input::placeholder{color:var(--text-tertiary, #6c757d)}.table-stats{font-size:.875rem;color:#64748b;font-weight:500;padding:.5rem 0}.table-wrapper{flex:1;overflow:auto;position:relative;width:100%;scrollbar-width:thin;scrollbar-color:#94a3b8 #f1f5f9}.data-table{width:100%;border-collapse:collapse;font-size:.9rem;background:#fff;box-shadow:0 1px 3px #0000001a}.data-table th,.data-table td{border:1px solid #e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:32px;vertical-align:middle}.data-table th{position:sticky;top:0;z-index:10;background:#f8fafc;padding:8px 12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;color:#1e293b}.data-table td{padding:6px 12px;font-size:.75rem;color:#334155;background:#fff}.email-column,.email-cell,.delete-column,.delete-cell{width:50px!important;min-width:50px!important;max-width:50px!important}.id-cell{width:60px!important;min-width:60px!important;max-width:60px!important}.status-cell{width:140px!important;min-width:140px!important;max-width:140px!important}.data-table td:nth-child(3),.data-table th:nth-child(3){width:180px!important;min-width:180px!important}.data-table td:nth-child(4),.data-table th:nth-child(4){width:250px!important;min-width:250px!important}.data-table td:nth-child(5),.data-table th:nth-child(5){width:140px!important;min-width:140px!important}.data-table td:nth-child(6),.data-table th:nth-child(6){width:220px!important;min-width:220px!important}.data-table td:nth-child(7),.data-table th:nth-child(7){width:300px!important;min-width:300px!important}.data-table td:nth-child(8),.data-table th:nth-child(8){width:140px!important;min-width:140px!important}.money-cell{text-align:right;font-weight:500;color:#334155;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.policy-number-cell{text-align:left;font-weight:500;color:#334155;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.data-table td:not(.id-cell):not(.status-cell):not(.email-cell):not(.delete-cell):not(.drive-cell){width:200px;min-width:200px;padding:6px 12px;line-height:1.2;font-size:.75rem;color:var(--text-primary, #334155);background:var(--background-primary, white)}.data-table td.id-cell{font-family:Roboto Mono,monospace;font-size:.75rem;color:#6b7280;text-align:center;white-space:nowrap;width:60px;min-width:60px;max-width:60px;background:#fff}.data-table td.address-cell{white-space:normal;line-height:1.2;height:auto;min-height:32px;padding:6px}.data-table td.rfc-cell,.data-table td.phone-cell{font-family:Roboto Mono,monospace;font-size:.75rem;text-align:center}.table-row{height:32px}.table-row:hover td{background-color:#ffe4cc!important}.table-row.duplicate td{background-color:#fafbfc;border-top:1px dashed #e2e8f0}.sort-indicator{display:inline-block;margin-left:4px;color:#3b82f6;font-size:.7rem}.sorted-asc .sort-indicator{transform:rotate(180deg)}.sorted-asc,.sorted-desc{color:#3b82f6;background:#3b82f60d}.no-data{text-align:center;padding:3rem;color:var(--text-secondary, #64748b);font-size:1.1rem;background:var(--background-secondary, #ffffff)}.status-indicator{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:4px;font-size:.75rem;font-weight:500;width:100px;margin:0 auto;cursor:pointer;white-space:nowrap;transition:all .2s ease}.status-active{background-color:#dcfce7;color:#166534;border:1px solid #86efac}.status-inactive{background-color:#fee2e2;color:#991b1b;border:1px solid #fca5a5}[data-theme=dark] .status-active{background-color:#065f46;color:#a7f3d0;border-color:#059669}[data-theme=dark] .status-inactive{background-color:#991b1b;color:#fca5a5;border-color:#dc2626}.status-cell{text-align:center!important;padding:4px!important}td .status-indicator{justify-content:center;margin:0 auto}.edit-cell-input{width:100%;height:100%;padding:4px 8px;border:none;background:#fff;font-size:.875rem;font-family:inherit;outline:2px solid #3b82f6;border-radius:4px}.edit-cell-input:focus{outline:2px solid #3b82f6}td .edit-cell-input[type=select]{padding-right:24px;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 4px center;background-size:16px}[data-theme=dark] .edit-cell-input{background:#1f2937;color:#fff;outline-color:#60a5fa}[data-theme=dark] .edit-cell-input:focus{outline-color:#60a5fa}.status-cell-wrapper,.status-dropdown,.status-cell:after{display:none}@keyframes highlight{0%{background-color:#3b82f61a}to{background-color:transparent}}.row-updated{animation:highlight 1s ease}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1rem;text-align:center;background:#fff}.empty-state-icon{font-size:3.5rem;color:#94a3b8;margin-bottom:1.5rem;opacity:.8}.empty-state-text{color:var(--text-secondary, #64748b);font-size:1.1rem;margin-bottom:.5rem}.empty-state-subtext{color:var(--text-tertiary, #94a3b8);font-size:.9rem}.table-row.duplicate{background-color:#f8fafc}.table-row.duplicate:hover{background-color:#f1f5f9}.table-row.duplicate td{border-top:1px dashed #e2e8f0;background-color:#fafbfc}.data-table td.rfc-cell{font-family:var(--font-family-mono);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);color:#4b5563;text-align:center;white-space:nowrap;max-width:100px}.data-table td.phone-cell{font-family:var(--font-family-mono);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);color:#4b5563;text-align:center;white-space:nowrap;max-width:80px}.data-table td:focus-within{outline:2px solid #3b82f6;outline-offset:-2px;position:relative;z-index:1}.data-table td[title]{cursor:help}.search-box{flex:1;max-width:300px;position:relative;transition:all .3s ease}.search-box:before{content:"🔍";position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:14px;pointer-events:none}.table-wrapper::-webkit-scrollbar{width:8px;height:8px}.table-wrapper::-webkit-scrollbar-track{background:#f1f5f9}.table-wrapper::-webkit-scrollbar-thumb{background-color:#94a3b8;border-radius:4px;border:2px solid #f1f5f9}.table-wrapper::-webkit-scrollbar-corner{background:#f1f5f9}.data-table td input{width:100%;height:100%;padding:4px;border:none;background:#fff;font-size:var(--font-size-sm);font-family:var(--font-family-sans);color:#334155;outline:2px solid #3b82f6;border-radius:2px}.data-table td input:focus{outline:2px solid #3b82f6;background-color:#fff}.data-table td:hover{background-color:#fff3e6!important;cursor:cell;transition:background-color .2s ease}.table-wrapper.refreshing{position:relative;pointer-events:none}.table-wrapper.refreshing:after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(to right,transparent,#3b82f6,transparent);animation:refresh-progress 1s infinite linear}@keyframes refresh-progress{0%{transform:translate(-100%)}to{transform:translate(100%)}}.confirm-btn:disabled{opacity:.7;cursor:wait}.sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease}.sortable-header:hover{background-color:#f5f5f5}.sortable-header.active{background-color:#f0f0f0}.header-content{display:flex;align-items:center;justify-content:space-between;padding:.5rem;gap:.5rem}.sort-icon{color:#999;font-size:.8rem;transition:color .2s ease}.sort-icon.active{color:#333}.data-table thead tr{background:#fff}.edit-cell-popup{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.edit-cell-content{background:#fff;border-radius:8px;padding:1.5rem;min-width:300px;max-width:90%;box-shadow:0 4px 12px #00000026}.edit-cell-content h4{margin:0 0 1rem;color:#333;font-size:1.1rem}.edit-cell-info{margin-bottom:1.5rem}.edit-cell-info p{margin:0 0 .5rem;color:#666;font-size:.9rem}.edit-cell-info input{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.edit-cell-info input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.edit-cell-actions{display:flex;justify-content:flex-end;gap:.5rem}.edit-cell-actions button{padding:.5rem 1rem;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:all .2s ease}.edit-cell-actions .cancel-btn{background:#f3f4f6;color:#374151}.edit-cell-actions .cancel-btn:hover{background:#e5e7eb}.edit-cell-actions .confirm-btn{background:#3b82f6;color:#fff}.edit-cell-actions .confirm-btn:hover{background:#2563eb}.editable-cell{cursor:cell;position:relative}.editable-cell:after{content:"";position:absolute;bottom:2px;right:2px;width:6px;height:6px;border-radius:50%;background-color:#e2e8f0;opacity:0;transition:opacity .2s ease}.editable-cell:hover:after{opacity:1}[data-theme=dark] .editable-cell:after{background-color:#4a5568}.editable-cell:hover{cursor:cell}.edit-cell-textarea{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem;font-family:inherit;resize:vertical;min-height:80px}.edit-cell-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}[data-theme=dark] .data-table-container{background-color:#1f2937;border-color:#374151}[data-theme=dark] .data-table{color:#f3f4f6;background-color:#1f2937}[data-theme=dark] .data-table thead{background-color:#111827}[data-theme=dark] .data-table th{background-color:#111827;color:#d1d5db;border-color:#374151}[data-theme=dark] .data-table td{background-color:#1f2937;border-color:#374151;color:#f3f4f6}[data-theme=dark] .table-header{background-color:#111827;border-color:#374151}[data-theme=dark] .search-box:before{color:#6b7280}[data-theme=dark] .search-input{background-color:#1f2937;border-color:#374151;color:#f3f4f6}[data-theme=dark] .search-input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .table-stats{color:#d1d5db}[data-theme=dark] .table-row:hover td{background-color:#3d2e1e!important}[data-theme=dark] .table-row.selected td{background-color:#374151!important}[data-theme=dark] .table-row:nth-child(2n) td{background-color:#1a2433!important}[data-theme=dark] .table-row.duplicate td{background-color:#1f2937;border-color:#374151}[data-theme=dark] .sort-indicator{color:#60a5fa}[data-theme=dark] .sorted-asc,[data-theme=dark] .sorted-desc{color:#60a5fa;background:#60a5fa1a}[data-theme=dark] .no-data{color:#d1d5db;background:#111827}[data-theme=dark] .empty-state-text{color:#d1d5db}[data-theme=dark] .data-table td.id-cell,[data-theme=dark] .data-table td.rfc-cell,[data-theme=dark] .data-table td.phone-cell{color:#d1d5db}[data-theme=dark] .status-cell{background-color:#374151}[data-theme=dark] .status-active{background-color:#065f46;color:#a7f3d0}[data-theme=dark] .status-inactive{background-color:#991b1b;color:#fca5a5}[data-theme=dark] .status-pending{background-color:#92400e;color:#fde68a}[data-theme=dark] .table-wrapper::-webkit-scrollbar{width:10px;height:10px}[data-theme=dark] .table-wrapper::-webkit-scrollbar-track{background:#1f2937;border-radius:4px}[data-theme=dark] .table-wrapper::-webkit-scrollbar-thumb{background-color:#4b5563;border-radius:4px;border:2px solid #1F2937}[data-theme=dark] .table-wrapper::-webkit-scrollbar-thumb:hover{background-color:#6b7280}[data-theme=dark] .editable-cell:hover{background-color:#2d3748!important}[data-theme=dark] .data-table td input{background-color:#1f2937;color:#f3f4f6;border-color:#374151}[data-theme=dark] .data-table td input:focus{border-color:#60a5fa;background-color:#2d3748}[data-theme=dark] .edit-cell-popup{background:#000000b3}[data-theme=dark] .edit-cell-content{background:#1f2937;color:#f3f4f6}[data-theme=dark] .edit-cell-content h4{color:#f3f4f6}[data-theme=dark] .edit-cell-info p{color:#d1d5db}[data-theme=dark] .edit-cell-info input,[data-theme=dark] .edit-cell-textarea{background:#111827;border-color:#374151;color:#f3f4f6}[data-theme=dark] .edit-cell-info input:focus,[data-theme=dark] .edit-cell-textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa33}[data-theme=dark] .edit-cell-actions .cancel-btn{background:#374151;color:#f3f4f6}[data-theme=dark] .edit-cell-actions .cancel-btn:hover{background:#4b5563}[data-theme=dark] .edit-cell-actions .confirm-btn{background:#4f46e5;color:#f3f4f6}[data-theme=dark] .edit-cell-actions .confirm-btn:hover{background:#4338ca}[data-theme=dark] .confirmation-dialog{background:#1f2937;border-color:#374151;box-shadow:0 2px 8px #0003}[data-theme=dark] .confirmation-dialog p{color:#f3f4f6}[data-theme=dark] .confirm-btn{background:#4f46e5;border-color:#4f46e5;color:#f3f4f6}[data-theme=dark] .cancel-btn{background:#374151;border-color:#374151;color:#f3f4f6}[data-theme=dark] .cancel-btn:hover{background:#4b5563}[data-theme=dark] .sortable-header:hover{background-color:#2d3748}[data-theme=dark] .sortable-header.active{background-color:#374151}[data-theme=dark] .sort-icon{color:#6b7280}[data-theme=dark] .sort-icon.active{color:#f3f4f6}@media (max-width: 768px){[data-theme=dark] .table-header{background-color:#111827}}.pdf-upload-section{margin-top:.5rem;display:flex;justify-content:flex-end}.pdf-toggle-btn{background:none;border:none;cursor:pointer;padding:.5rem;border-radius:4px;transition:background-color .2s}.pdf-toggle-btn:hover{background-color:#f3f4f6}.pdf-icon{width:24px;height:24px;color:#374151}.pdf-upload-form{margin-top:.5rem;padding:.5rem;background:#f9fafb;border-radius:4px}.prompt-textarea{width:100%;margin-bottom:.5rem;padding:.5rem;border:1px solid #e5e7eb;border-radius:4px;font-size:.9rem;resize:vertical}.file-input-label{display:inline-block;padding:.5rem 1rem;background-color:#000;color:#fff;border-radius:4px;cursor:pointer;font-size:.9rem;transition:opacity .2s}.file-input-label:hover{opacity:.8}.file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.file-input-text{display:inline-block;vertical-align:middle}.selected-cell{background-color:#3b82f61a!important;border:1px solid #3b82f6!important}[data-theme=dark] .selected-cell{background-color:#3b82f633!important;border:1px solid #60a5fa!important}.data-table-container.copying{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}[data-theme=dark] .table-controls{background:var(--background-secondary-dark, #1f2937);border-color:var(--border-color-dark, #374151)}.search-input{width:100%;max-width:300px;padding:.5rem;border:1px solid #ced4da;border-radius:4px;font-size:.9rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.search-input:focus{outline:none;border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.email-column{width:50px;min-width:50px;text-align:center;padding:0;background:#fff}.email-cell{width:50px;min-width:50px;text-align:center;padding:4px!important;vertical-align:middle;background:#fff}.email-icon-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin:0 auto}.email-icon-btn:hover{background-color:#f3f4f6}.email-icon-btn:active{transform:scale(.95)}.email-icon{width:18px;height:18px;color:#6b7280;transition:color .2s ease}.email-icon-btn:hover .email-icon{color:#3b82f6}[data-theme=dark] .email-column,[data-theme=dark] .email-cell{background:#1f2937}[data-theme=dark] .email-icon-btn:hover{background-color:#374151}[data-theme=dark] .email-icon{color:#9ca3af}[data-theme=dark] .email-icon-btn:hover .email-icon{color:#60a5fa}.table-row:hover .email-cell{background-color:#ffe4cc!important}[data-theme=dark] .table-row:hover .email-cell{background-color:#3d2e1e!important}.delete-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin:0 auto}.delete-btn:hover{background-color:#fee2e2}.delete-btn:active{transform:scale(.95)}.delete-icon{width:18px;height:18px;color:#ef4444;transition:color .2s ease}.delete-btn:hover .delete-icon{color:#dc2626}[data-theme=dark] .delete-btn:hover{background-color:#7f1d1d}[data-theme=dark] .delete-icon{color:#f87171}[data-theme=dark] .delete-btn:hover .delete-icon{color:#ef4444}.delete-confirmation-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;box-shadow:0 4px 6px -1px #0000001a;z-index:1000;min-width:320px;max-width:90%}.delete-confirmation-dialog h4{margin:0 0 1rem;color:#1f2937;font-size:1.1rem;font-weight:600}.delete-confirmation-dialog p{margin:0 0 1.5rem;color:#4b5563;font-size:.9rem;line-height:1.5}.delete-confirmation-actions{display:flex;justify-content:flex-end;gap:.75rem}.delete-confirm-btn,.delete-cancel-btn{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;transition:all .2s ease;cursor:pointer}.delete-confirm-btn{background-color:#ef4444;color:#fff;border:none}.delete-confirm-btn:hover{background-color:#dc2626}.delete-confirm-btn:disabled{opacity:.7;cursor:not-allowed}.delete-cancel-btn{background-color:#f3f4f6;color:#374151;border:1px solid #e5e7eb}.delete-cancel-btn:hover{background-color:#e5e7eb}[data-theme=dark] .delete-confirmation-dialog{background:#1f2937;border-color:#374151}[data-theme=dark] .delete-confirmation-dialog h4{color:#f3f4f6}[data-theme=dark] .delete-confirmation-dialog p{color:#d1d5db}[data-theme=dark] .delete-confirm-btn{background-color:#dc2626}[data-theme=dark] .delete-confirm-btn:hover{background-color:#b91c1c}[data-theme=dark] .delete-cancel-btn{background-color:#374151;color:#f3f4f6;border-color:#4b5563}[data-theme=dark] .delete-cancel-btn:hover{background-color:#4b5563}.delete-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}[data-theme=dark] .delete-overlay{background-color:#000000b3}.datatable-header{display:flex;justify-content:flex-end;padding:.5rem;border-bottom:1px solid var(--border-color)}.datatable-actions{display:flex;gap:.5rem;align-items:center}.normalize-toggle{display:flex;align-items:center;gap:.5rem;padding:.5rem;border:1px solid var(--border-color);border-radius:4px;background:var(--background-primary);color:var(--text-primary);cursor:pointer;transition:all .2s ease}.normalize-toggle svg{width:1.25rem;height:1.25rem}.normalize-toggle.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.normalize-toggle:hover{background:var(--background-secondary)}.normalize-toggle.active:hover{background:var(--primary-color-dark)}.th-content{display:flex;align-items:center;gap:.5rem}.normalize-btn{padding:.25rem;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;opacity:0;transition:opacity .2s ease}.th-content:hover .normalize-btn{opacity:1}.normalize-btn svg{width:1rem;height:1rem}.normalize-btn:hover{color:var(--primary-color)}[data-theme=dark] .normalize-toggle{border-color:var(--border-color-dark);background:var(--background-primary-dark);color:var(--text-primary-dark)}[data-theme=dark] .normalize-toggle:hover{background:var(--background-secondary-dark)}[data-theme=dark] .normalize-toggle.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}[data-theme=dark] .normalize-toggle.active:hover{background:var(--primary-color-dark)}[data-theme=dark] .normalize-btn{color:var(--text-secondary-dark)}[data-theme=dark] .normalize-btn:hover{color:var(--primary-color)}[data-theme=dark] .datatable-header{background:var(--bg-surface, #1a1a1a);border-color:var(--border-color, #2d3748)}[data-theme=dark] .datatable-actions{background:var(--bg-surface-secondary, #2d3748)}[data-theme=dark] .normalize-toggle{background:var(--bg-surface-secondary, #2d3748);border-color:var(--border-color, #374151);color:var(--text-primary, #e5e7eb)}[data-theme=dark] .normalize-toggle:hover{background:var(--bg-surface-tertiary, #374151)}[data-theme=dark] .normalize-toggle.active{background:var(--primary, #3b82f6);border-color:var(--primary, #3b82f6);color:#fff}[data-theme=dark] .normalize-toggle.active:hover{background:var(--primary-dark, #2563eb)}[data-theme=dark] .normalize-btn{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .normalize-btn:hover{color:var(--primary, #3b82f6)}[data-theme=dark] .th-content{color:var(--text-primary, #e5e7eb)}[data-theme=dark] .card-view{background:var(--bg-surface, #1a1a1a)}[data-theme=dark] .card-item{background:var(--bg-surface-secondary, #2d3748);border-color:var(--border-color, #374151)}[data-theme=dark] .card-item:hover{background:var(--bg-surface-tertiary, #374151);border-color:var(--primary, #3b82f6)}[data-theme=dark] .card-header{border-color:var(--border-color, #374151)}[data-theme=dark] .card-title{color:var(--text-primary, #e5e7eb)}[data-theme=dark] .card-subtitle{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .card-content{color:var(--text-primary, #e5e7eb)}[data-theme=dark] .card-field{border-color:var(--border-color, #374151)}[data-theme=dark] .card-label{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .card-value{color:var(--text-primary, #e5e7eb)}[data-theme=dark] .card-footer{border-color:var(--border-color, #374151);background:var(--bg-surface-secondary, #2d3748)}[data-theme=dark] .card-actions button{background:var(--bg-surface-tertiary, #374151);color:var(--text-primary, #e5e7eb);border-color:var(--border-color, #4b5563)}[data-theme=dark] .card-actions button:hover{background:var(--bg-surface-quaternary, #4b5563)}[data-theme=dark] .card-actions button.delete-btn:hover{background:var(--error, #dc2626);color:#fff}[data-theme=dark] .card-actions button.edit-btn:hover{background:var(--primary, #3b82f6);color:#fff}[data-theme=dark] .card-badge{background:var(--bg-surface-tertiary, #374151);color:var(--text-secondary, #9ca3af)}[data-theme=dark] .card-badge.active{background:var(--success, #059669);color:#fff}[data-theme=dark] .card-badge.inactive{background:var(--error, #dc2626);color:#fff}[data-theme=dark] .card-badge.pending{background:var(--warning, #d97706);color:#fff}[data-theme=dark] .card-empty-state{background:var(--bg-surface-secondary, #2d3748);color:var(--text-secondary, #9ca3af)}[data-theme=dark] .card-empty-icon{color:var(--text-tertiary, #6b7280)}[data-theme=dark] .card-empty-text{color:var(--text-primary, #e5e7eb)}[data-theme=dark] .card-empty-subtext{color:var(--text-secondary, #9ca3af)}.status-cell-wrapper{width:100%;height:100%;position:relative;display:flex;align-items:center}.status-dropdown{width:100%;height:100%;padding:4px 24px 4px 8px;border:none;background:transparent;cursor:pointer;font-size:inherit;font-family:inherit;appearance:none;-webkit-appearance:none;-moz-appearance:none;color:inherit;transition:background-color .2s ease}.status-dropdown:hover{background-color:#0000000d}.status-dropdown:focus{outline:none;background-color:#0000001a}.status-cell{padding:0!important;position:relative;cursor:pointer}.status-cell:after{content:"▼";font-size:8px;color:#666;position:absolute;right:8px;top:50%;transform:translateY(-50%);pointer-events:none;transition:color .2s ease}.status-cell:hover:after{color:#333}[data-theme=dark] .status-dropdown:hover{background-color:#ffffff1a}[data-theme=dark] .status-dropdown:focus{background-color:#ffffff26}[data-theme=dark] .status-cell:after{color:#999}[data-theme=dark] .status-cell:hover:after{color:#fff}.status-cell{user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.status-dropdown option{padding:8px;background-color:#fff;color:#000}[data-theme=dark] .status-dropdown option{background-color:#1f2937;color:#fff}.status-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.status-modal{background:#fff;border-radius:8px;padding:1.5rem;min-width:300px;box-shadow:0 4px 12px #00000026}.status-modal h4{margin:0 0 1rem;color:#1f2937;font-size:1.1rem;font-weight:600;text-align:center}.status-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.status-option{padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#374151;font-size:.875rem;cursor:pointer;transition:all .2s ease;text-align:center;display:flex;align-items:center;justify-content:center;gap:.5rem;min-width:120px;margin:0 auto}.status-option:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.status-option:first-child{background-color:#dcfce7;color:#166534;border:1px solid #86efac}.status-option:last-child{background-color:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.status-option:first-child:hover{background-color:#bbf7d0}.status-option:last-child:hover{background-color:#fecaca}.status-modal-actions{display:flex;justify-content:center;margin-top:1.5rem}.status-modal-actions button{padding:.5rem 1.5rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.status-modal-actions .cancel-btn{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb}.status-modal-actions .cancel-btn:hover{background:#e5e7eb}[data-theme=dark] .status-modal{background:#1f2937;border-color:#374151}[data-theme=dark] .status-modal h4{color:#f3f4f6}[data-theme=dark] .status-option{background:#1f2937;border-color:#374151;color:#e5e7eb}[data-theme=dark] .status-option:first-child{background-color:#065f46;color:#a7f3d0;border-color:#059669}[data-theme=dark] .status-option:last-child{background-color:#991b1b;color:#fca5a5;border-color:#dc2626}[data-theme=dark] .status-option:first-child:hover{background-color:#047857}[data-theme=dark] .status-option:last-child:hover{background-color:#b91c1c}[data-theme=dark] .status-modal-actions .cancel-btn{background:#374151;color:#f3f4f6;border-color:#4b5563}[data-theme=dark] .status-modal-actions .cancel-btn:hover{background:#4b5563}.data-table td:not(.id-cell):not(.status-cell):not(.email-cell):not(.delete-cell):not(.drive-cell){min-width:180px;max-width:400px;padding:6px 12px;line-height:1.2;font-size:.75rem;color:var(--text-primary, #334155);background:var(--background-primary, white);border:1px solid var(--border-color, #e2e8f0);transition:all .2s ease;height:32px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.data-table td:hover:not(.id-cell):not(.status-cell):not(.email-cell):not(.delete-cell):not(.drive-cell){background-color:var(--hover-bg, #f8fafc)}.data-table td.selected-cell{background-color:var(--selected-bg, rgba(59, 130, 246, .1));border-color:var(--primary-color, #3b82f6)}.data-table th{padding:8px 12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;background:var(--header-bg, #f8fafc);position:sticky;top:0;z-index:10}.table-wrapper{padding:0;background:var(--background-primary, white);border-radius:0;box-shadow:none}[data-theme=dark] .data-table td:not(.id-cell):not(.status-cell):not(.email-cell):not(.delete-cell):not(.drive-cell){background:var(--background-primary-dark, #1f2937);border-color:var(--border-color-dark, #374151);color:var(--text-primary-dark, #F3F4F6)}[data-theme=dark] .data-table td:hover:not(.id-cell):not(.status-cell):not(.email-cell):not(.delete-cell):not(.drive-cell){background-color:var(--hover-bg-dark, #2D3748)}[data-theme=dark] .data-table th{background:var(--header-bg-dark, #111827);border-color:var(--border-color-dark, #374151);color:var(--text-primary-dark, #F3F4F6)}@media (max-width: 1024px){.data-table td:not(.id-cell):not(.status-cell):not(.email-cell):not(.delete-cell):not(.drive-cell){min-width:150px;max-width:300px;padding:4px 10px}}@media (max-width: 768px){.data-table td:not(.id-cell):not(.status-cell):not(.email-cell):not(.delete-cell):not(.drive-cell){min-width:120px;max-width:250px;padding:4px 8px}}.search-section{display:flex;align-items:center;gap:1rem;width:100%}.capturador-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s ease;max-width:10rem}.capturador-btn:hover{background:#45a049}.capturador-btn .pdf-icon{width:18px;height:18px}[data-theme=dark] .capturador-btn{background:#059669}[data-theme=dark] .capturador-btn:hover{background:#047857}.empty-table-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;background:#f8f9fa;border-radius:8px;margin:1rem 0}.empty-table-state p{margin:.5rem 0;color:#6c757d}.empty-table-state p:first-child{font-size:var(--font-size-lg);color:#495057;font-weight:var(--font-weight-medium)}.table-subtitle{margin-top:.5rem;padding:.5rem;background:var(--background-secondary, #f8fafc);border-radius:4px}.parent-table{font-size:.9rem;font-weight:600;color:var(--text-primary, #1e293b);padding-left:.5rem;border-left:3px solid var(--primary-color, #3b82f6);margin-bottom:.25rem}.child-table{font-size:.9rem;font-weight:500;color:var(--text-secondary, #6b7280);padding-left:.5rem;border-left:3px solid var(--secondary-color, #9ca3af);font-style:italic}[data-theme=dark] .table-title{background:var(--background-primary-dark, #1f2937);border-bottom-color:#374151}[data-theme=dark] .table-subtitle{background:var(--background-secondary-dark, #1f2937)}[data-theme=dark] .parent-table{color:var(--text-primary-dark, #f3f4f6);border-left-color:var(--primary-color-dark, #60a5fa)}[data-theme=dark] .child-table{color:var(--text-secondary-dark, #9ca3af);border-left-color:var(--secondary-color-dark, #6b7280)}.table-container{overflow-x:auto;width:100%}.data-table{width:100%;min-width:max-content;position:relative}.table-cell{position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.delete-cell{width:40px;min-width:40px;text-align:center;padding:0!important}.delete-button{padding:4px 8px;background:transparent;border:none;cursor:pointer;color:var(--text-secondary);opacity:.7;transition:all .2s ease}.delete-button:hover{opacity:1;color:var(--error-color, #ef4444)}.row-actions{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:100%!important;height:auto!important}.action-btn{background:#ffffffe6!important;border:1px solid rgba(0,0,0,.1)!important;border-radius:4px!important;padding:4px 6px!important;font-size:10px!important;font-weight:600!important;cursor:pointer!important;transition:all .2s ease!important;color:#374151!important;opacity:.9!important;letter-spacing:.3px!important;text-transform:uppercase!important;box-shadow:0 1px 2px #0000000d!important;white-space:nowrap!important;min-height:24px!important;display:flex!important;align-items:center!important;justify-content:center!important}.action-btn.email-btn{color:#059669!important;background:#10b98114!important;border-color:#10b98126!important;padding:4px 8px!important;min-width:auto!important;width:auto!important;height:auto!important;display:inline-block!important;font-size:11px!important;font-weight:500!important;margin:1px!important}.action-btn.email-btn:hover{background:#10b98126!important;border-color:#10b98140!important;opacity:1!important;transform:translateY(-1px)!important;box-shadow:0 2px 4px #10b98126!important}.action-btn.delete-btn{color:#dc2626!important;background:#ef444414!important;border-color:#ef444426!important;padding:4px 6px!important;min-width:32px!important;width:32px!important;height:32px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:1.4rem!important;font-weight:700!important}.action-btn.delete-btn:hover{background:#ef444426!important;border-color:#ef444440!important;opacity:1!important;transform:translateY(-1px)!important;box-shadow:0 2px 4px #ef444426!important}.action-header{background:#f8fafc!important;border:1px solid #e2e8f0!important;color:#64748b!important;font-weight:600!important;font-size:10px!important;text-transform:uppercase!important;letter-spacing:.5px!important;text-align:center!important;padding:8px 6px!important}.action-header.email-header{background:#10b9810d!important;border-color:#10b9811a!important;color:#059669!important}.action-header.delete-header{background:#ef44440d!important;border-color:#ef44441a!important;color:#dc2626!important;text-align:center!important;padding:8px 4px!important;font-size:1.4rem!important;font-weight:700!important}.action-header.drive-header{background:#4285f40d!important;border-color:#4285f41a!important;color:#4285f4!important;text-align:center!important;padding:8px 4px!important;font-size:1.2rem!important}.action-cell{background:#f8fafc!important;border:1px solid #e2e8f0!important;text-align:center!important;vertical-align:middle!important;padding:4px!important}.actions-container{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:2px!important;width:100%!important;height:100%!important;align-items:center!important;justify-items:center!important;padding:2px!important}.actions-toggle-btn{position:relative;overflow:hidden}.actions-toggle-btn:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.actions-toggle-btn:active{transform:translateY(0)}.toggle-icon{transition:transform .3s ease}.toggle-icon.rotated{transform:rotate(180deg)}.action-header,.action-cell{transition:all .3s ease}.actions-modal-header:hover{transform:scale(1.02)!important;box-shadow:0 2px 8px #00000026!important;background:#f59e0b!important;border-color:#d97706!important}.actions-modal-btn:hover{transform:scale(1.05)!important;box-shadow:0 2px 8px #00000026!important;background:#f59e0b!important;border-color:#d97706!important}.action-cell.email-cell{background:#10b98105!important;border-color:#10b98114!important}.action-cell.delete-cell{background:#ef444405!important;border-color:#ef444414!important;text-align:center!important;padding:4px!important}.action-cell.drive-cell{background:#4285f405!important;border-color:#4285f414!important;text-align:center!important;padding:4px!important}.table-row:hover .action-cell.email-cell{background:#10b9810d!important}.table-row:hover .action-cell.delete-cell{background:#ef44440d!important}.table-row:hover .action-cell.drive-cell{background:#4285f40d!important}.table-row:hover .action-btn{opacity:1!important}[data-theme=dark] .action-btn{color:#94a3b8!important;background:#1e293b80!important;border-color:#4755694d!important}[data-theme=dark] .action-btn.email-btn{color:#34d399!important;background:#34d3991a!important;border-color:#34d39933!important}[data-theme=dark] .action-btn.delete-btn{color:#f87171!important;background:#f871711a!important;border-color:#f8717133!important;padding:4px 6px!important;min-width:32px!important;width:32px!important;height:32px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:1.4rem!important;font-weight:700!important}.action-btn.drive-btn{color:#4285f4!important;background:#4285f414!important;border-color:#4285f426!important;padding:4px 6px!important;min-width:32px!important;width:32px!important;height:32px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:1.1rem!important}.action-btn.drive-btn:hover{background:#4285f426!important;border-color:#4285f440!important;opacity:1!important;transform:translateY(-1px)!important;box-shadow:0 2px 4px #4285f426!important}[data-theme=dark] .action-btn.drive-btn{color:#5ea3ff!important;background:#5ea3ff1a!important;border-color:#5ea3ff33!important;padding:4px 6px!important;min-width:32px!important;width:32px!important;height:32px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:1.1rem!important}.action-btn.payment-btn{padding:4px 8px!important;min-width:auto!important;width:auto!important;height:auto!important;display:inline-block!important;font-size:11px!important;font-weight:500!important;margin:1px!important}.action-btn.payment-btn.payment-paid{color:#059669!important;background:#10b9811f!important;border-color:#10b98133!important}.action-btn.payment-btn.payment-unpaid{color:#dc2626!important;background:#ef44441f!important;border-color:#ef444433!important}.action-btn.cap-btn{padding:4px 8px!important;min-width:auto!important;width:auto!important;height:auto!important;display:inline-block!important;font-size:11px!important;font-weight:500!important;margin:1px!important}.action-btn.cap-btn.cap-active{color:#0ea5e9!important;background:#0ea5e91f!important;border-color:#0ea5e933!important}.action-btn.cap-btn.cap-inactive{color:#64748b!important;background:#64748b14!important;border-color:#64748b26!important}.action-btn.cfp-btn{padding:4px 8px!important;min-width:auto!important;width:auto!important;height:auto!important;display:inline-block!important;font-size:11px!important;font-weight:500!important;margin:1px!important}.action-btn.cfp-btn.cfp-active{color:#7c3aed!important;background:#7c3aed1f!important;border-color:#7c3aed33!important}.action-btn.cfp-btn.cfp-inactive{color:#64748b!important;background:#64748b14!important;border-color:#64748b26!important}[data-theme=dark] .action-header{background:#1e293b!important;border-color:#334155!important;color:#94a3b8!important}.action-column{width:80px!important;min-width:80px!important;max-width:80px!important;padding:4px!important;text-align:center!important}.action-column th,.action-column td{width:80px!important;min-width:80px!important;max-width:80px!important;padding:4px!important;text-align:center!important;border:none!important}[data-theme=dark] .action-cell{background:#0f172a!important;border-color:#334155!important}.payment-btn{padding:6px 12px;border:none;border-radius:20px;cursor:pointer;font-size:11px;font-weight:500;transition:all .2s ease;min-width:80px;text-align:center;opacity:.85}.payment-paid{background-color:#4caf50!important;color:#fff!important;border:1px solid #4CAF50!important;opacity:.9!important}.payment-paid:hover{opacity:1!important;transform:scale(1.03)!important;background-color:#45a049!important}.payment-unpaid{background-color:#f44336!important;color:#fff!important;border:1px solid #f44336!important;opacity:.9!important}.payment-unpaid:hover{opacity:1!important;transform:scale(1.03)!important;background-color:#da190b!important}.action-header.payment-header{background:#4caf5014!important;border-color:#4caf5026!important;color:#388e3c!important;font-weight:600;text-align:center}.action-cell.payment-cell{background:#4caf5008!important;border-color:#4caf5014!important;text-align:center;vertical-align:middle}[data-theme=dark] .payment-paid{background-color:#4caf50!important;color:#fff!important;border:1px solid #4CAF50!important;opacity:.9!important}[data-theme=dark] .payment-paid:hover{opacity:1!important;transform:scale(1.03)!important;background-color:#45a049!important}[data-theme=dark] .payment-unpaid{background-color:#f44336!important;color:#fff!important;border:1px solid #f44336!important;opacity:.9!important}[data-theme=dark] .payment-unpaid:hover{opacity:1!important;transform:scale(1.03)!important;background-color:#da190b!important}[data-theme=dark] .action-header.payment-header{background:#4caf501f!important;border-color:#4caf5040!important;color:#4caf50!important}[data-theme=dark] .action-cell.payment-cell{background:#4caf500d!important;border-color:#4caf5026!important}.cap-active{background-color:#dc2626!important;color:#fff!important;border:1px solid #dc2626!important;opacity:.9!important}.cap-active:hover{opacity:1!important;transform:scale(1.03)!important;background-color:#b91c1c!important}.cap-inactive{background-color:#6b7280!important;color:#fff!important;border:1px solid #6b7280!important;opacity:.8!important}.cap-inactive:hover{opacity:.9!important;transform:scale(1.03)!important;background-color:#4b5563!important}.cfp-active{background-color:#991b1b!important;color:#fff!important;border:1px solid #991b1b!important;opacity:.9!important}.cfp-active:hover{opacity:1!important;transform:scale(1.03)!important;background-color:#7f1d1d!important}.cfp-inactive{background-color:#6b7280!important;color:#fff!important;border:1px solid #6b7280!important;opacity:.8!important}.cfp-inactive:hover{opacity:.9!important;transform:scale(1.03)!important;background-color:#4b5563!important}.action-header.cap-header{background:#6b728014!important;border-color:#6b728026!important;color:#6b7280!important;font-weight:600;text-align:center}.action-header.cfp-header{background:#dc262614!important;border-color:#dc262626!important;color:#dc2626!important;font-weight:600;text-align:center}.action-cell.cap-cell{background:#6b728008!important;border-color:#6b728014!important;text-align:center;vertical-align:middle}.action-cell.cfp-cell{background:#dc262608!important;border-color:#dc262614!important;text-align:center;vertical-align:middle}[data-theme=dark] .cap-active{background-color:#dc2626!important;color:#fff!important;border:1px solid #dc2626!important;opacity:.9!important}[data-theme=dark] .cap-active:hover{opacity:1!important;transform:scale(1.03)!important;background-color:#b91c1c!important}[data-theme=dark] .cap-inactive{background-color:#6b7280!important;color:#fff!important;border:1px solid #6b7280!important;opacity:.8!important}[data-theme=dark] .cap-inactive:hover{opacity:.9!important;transform:scale(1.03)!important;background-color:#4b5563!important}[data-theme=dark] .cfp-active{background-color:#991b1b!important;color:#fff!important;border:1px solid #991b1b!important;opacity:.9!important}[data-theme=dark] .cfp-active:hover{opacity:1!important;transform:scale(1.03)!important;background-color:#7f1d1d!important}[data-theme=dark] .cfp-inactive{background-color:#6b7280!important;color:#fff!important;border:1px solid #6b7280!important;opacity:.8!important}[data-theme=dark] .cfp-inactive:hover{opacity:.9!important;transform:scale(1.03)!important;background-color:#4b5563!important}[data-theme=dark] .action-header.cap-header{background:#6b72801f!important;border-color:#6b728040!important;color:#9ca3af!important}[data-theme=dark] .action-header.cfp-header{background:#dc26261f!important;border-color:#dc262640!important;color:#ef4444!important}[data-theme=dark] .action-cell.cap-cell{background:#6b72800d!important;border-color:#6b728026!important}[data-theme=dark] .action-cell.cfp-cell{background:#dc26260d!important;border-color:#dc262626!important}.child-table-selector{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end;min-width:300px}.child-table-dropdown{padding:.5rem .75rem;border:2px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-weight:500;background:#fff;color:#1e293b;cursor:pointer;transition:all .2s ease;min-width:250px;box-shadow:0 1px 3px #0000001a}.child-table-dropdown:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f626}.child-table-dropdown:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb33}.relationship-indicator{display:flex;justify-content:flex-end;margin-top:.25rem}.relationship-badge{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;font-weight:500;max-width:250px;text-align:center;line-height:1.2}.relationship-badge.parent-badge{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1d4ed8;border:1px solid #3b82f6}.relationship-badge.child-badge{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#b91c1c;border:1px solid #dc2626}[data-theme=dark] .child-table-dropdown{background:#374151;color:#f9fafb;border-color:#4b5563}[data-theme=dark] .child-table-dropdown:hover{border-color:#60a5fa;box-shadow:0 2px 8px #60a5fa40}[data-theme=dark] .child-table-dropdown:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f64d}[data-theme=dark] .relationship-badge.parent-badge{background:linear-gradient(135deg,#1e3a8a,#1d4ed8);color:#dbeafe;border-color:#3b82f6}[data-theme=dark] .relationship-badge.child-badge{background:linear-gradient(135deg,#7f1d1d,#991b1b);color:#fee2e2;border-color:#dc2626}[data-theme=dark] .table-title{background:#1f2937;border-bottom-color:#374151}[data-theme=dark] .table-title h2{color:#f9fafb}.refresh-btn{background:#4caf50;color:#fff;border:none;padding:.25rem .5rem;border-radius:4px;cursor:pointer;font-size:.7rem;font-weight:500;display:flex;align-items:center;gap:.25rem;transition:all .2s ease;min-width:auto;max-width:120px;height:24px;box-shadow:0 1px 2px #4caf5033}.refresh-btn:hover:not(:disabled){background:#45a049;transform:translateY(-1px);box-shadow:0 2px 6px #4caf504d}.refresh-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 3px #4caf5033}.refresh-btn:disabled{background:#9ca3af;cursor:not-allowed;transform:none;box-shadow:0 1px 2px #0000001a;opacity:.7}.refresh-icon{width:12px;height:12px;transition:transform .3s ease}.refresh-icon.spinning{animation:spin 1s linear infinite}.table-wrapper.refreshing{position:relative;opacity:.7}.table-wrapper.refreshing:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#fffc;z-index:10;pointer-events:none}.table-wrapper.refreshing:after{content:"🔄 Actualizando datos...";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000c;color:#fff;padding:12px 24px;border-radius:8px;font-weight:500;z-index:11;pointer-events:none}.auto-refresh-indicator{position:fixed;top:20px;right:20px;background:#4caf50e6;color:#fff;padding:8px 16px;border-radius:20px;font-size:12px;font-weight:500;z-index:1000;animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.data-update-success{position:fixed;top:70px;right:20px;background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;padding:12px 20px;border-radius:8px;font-weight:500;z-index:1000;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.search-section{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.refresh-section{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-left:auto}@media (max-width: 768px){.refresh-btn{padding:4px 8px;font-size:10px}.refresh-btn .refresh-icon{width:10px;height:10px}.search-section{flex-direction:column;align-items:stretch}.search-section>*{width:100%;margin-bottom:8px}}.table-row.newly-inserted{background-color:#dcfce7!important;border-left:4px solid #22c55e}.table-row.newly-inserted td{background-color:#dcfce7!important}.table-row.flashing{animation:flashGreen 3s ease-in-out}@keyframes flashGreen{0%,to{background-color:#dcfce7;box-shadow:0 0 0 2px #22c55e}50%{background-color:#bbf7d0;box-shadow:0 0 10px 4px #22c55e}}.table-row.newly-inserted.flashing td{animation:flashGreenCell 3s ease-in-out}@keyframes flashGreenCell{0%,to{background-color:#dcfce7!important}50%{background-color:#bbf7d0!important}}[data-theme=dark] .table-row.newly-inserted{background-color:#064e3b!important;border-left:4px solid #22c55e}[data-theme=dark] .table-row.newly-inserted td{background-color:#064e3b!important;color:#dcfce7}[data-theme=dark] .table-row.flashing{animation:flashGreenDark 3s ease-in-out}@keyframes flashGreenDark{0%,to{background-color:#064e3b;box-shadow:0 0 0 2px #22c55e}50%{background-color:#059669;box-shadow:0 0 10px 4px #22c55e}}[data-theme=dark] .table-row.newly-inserted.flashing td{animation:flashGreenCellDark 3s ease-in-out}@keyframes flashGreenCellDark{0%,to{background-color:#064e3b!important;color:#dcfce7}50%{background-color:#059669!important;color:#f0fdf4}}.payment-modal{background:#fff;border-radius:12px;padding:0;max-width:600px;width:90%;max-height:80vh;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.payment-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#f8fafc}.payment-modal-header h3{margin:0;font-size:18px;font-weight:600;color:#1f2937}.payment-modal-header button{background:none;border:none;font-size:24px;cursor:pointer;color:#6b7280;padding:4px;border-radius:4px;transition:all .2s ease}.payment-modal-header button:hover{background:#f3f4f6;color:#374151}.payment-modal-body{padding:24px;max-height:60vh;overflow-y:auto}.payment-info{background:#f8fafc;padding:16px;border-radius:8px;margin-bottom:20px;border:1px solid #e5e7eb}.payment-info p{margin:8px 0;font-size:14px;color:#374151}.payment-info strong{color:#1f2937;font-weight:600}.status-badge{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase}.status-badge.pagado{background:#dcfce7;color:#166534}.status-badge.no-pagado{background:#fef2f2;color:#dc2626}.current-payment-action{background:#fef3c7;padding:16px;border-radius:8px;margin-bottom:20px;border:1px solid #fde68a}.current-payment-action h4{margin:0 0 12px;font-size:16px;font-weight:600;color:#92400e}.current-payment-info{display:flex;justify-content:space-between;align-items:center;gap:12px}.current-payment-info span{font-weight:500;color:#92400e}.quick-action-btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.quick-action-btn.pagado{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.quick-action-btn.pagado:hover{background:#bbf7d0}.quick-action-btn.no-pagado{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.quick-action-btn.no-pagado:hover{background:#fecaca}.payment-checklist{display:flex;flex-direction:column;gap:8px}.payment-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:6px;border:1px solid #e5e7eb;transition:all .2s ease}.payment-item.paid{background:#f0fdf4;border-color:#bbf7d0}.payment-item.unpaid{background:#fefefe;border-color:#e5e7eb}.payment-item input[type=checkbox]{width:16px;height:16px;cursor:pointer}.payment-item input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.payment-number{font-weight:500;color:#374151;min-width:80px}.payment-date{font-size:12px;color:#6b7280;margin-left:auto}[data-theme=dark] .payment-modal{background:#1f2937;color:#f9fafb}[data-theme=dark] .payment-modal-header{background:#111827;border-bottom-color:#374151}[data-theme=dark] .payment-modal-header h3{color:#f9fafb}[data-theme=dark] .payment-modal-header button{color:#9ca3af}[data-theme=dark] .payment-modal-header button:hover{background:#374151;color:#f9fafb}[data-theme=dark] .payment-info{background:#111827;border-color:#374151}[data-theme=dark] .payment-info p{color:#d1d5db}[data-theme=dark] .payment-info strong{color:#f9fafb}[data-theme=dark] .current-payment-action{background:#451a03;border-color:#92400e}[data-theme=dark] .current-payment-action h4,[data-theme=dark] .current-payment-info span{color:#fbbf24}[data-theme=dark] .payment-item{background:#111827;border-color:#374151}[data-theme=dark] .payment-item.paid{background:#064e3b;border-color:#059669}[data-theme=dark] .payment-item.unpaid{background:#1f2937;border-color:#374151}[data-theme=dark] .payment-number{color:#d1d5db}[data-theme=dark] .payment-date{color:#9ca3af}.payment-cell-button{background:transparent!important;border:none!important;color:inherit!important;cursor:pointer!important;text-decoration:underline!important;padding:0!important;font-size:inherit!important;transition:all .2s ease!important}.payment-cell-button:hover{background:#3b82f61a!important;text-decoration:none!important;border-radius:4px!important;padding:2px 4px!important}[data-theme=dark] .payment-cell-button:hover{background:#3b82f633!important}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fade-in .2s ease-out}.modal-content{background-color:var(--bg-surface);border-radius:8px;box-shadow:0 4px 20px #00000026;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;animation:slide-up .3s ease-out}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:1px solid var(--border-color)}.modal-header h3{margin:0;color:var(--text-primary);font-size:1.25rem;font-weight:600}.close-button{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:.5rem;line-height:1;border-radius:4px;transition:all .2s}.close-button:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.form-fields{padding:1.25rem}.form-group{margin-bottom:1.25rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-primary);font-weight:500;font-size:.875rem}.required{color:var(--error-text);margin-left:.25rem}.type-hint{color:var(--text-secondary);font-size:.75rem;font-weight:400;margin-left:.5rem}.form-input{width:100%;padding:.625rem;border:1px solid var(--border-color);border-radius:4px;background-color:var(--bg-surface);color:var(--text-primary);font-size:.875rem;transition:all .2s}.form-input:hover{border-color:var(--border-hover)}.form-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-light)}.form-input.error{border-color:var(--error-text)}.form-input.error:focus{box-shadow:0 0 0 2px var(--error-bg)}textarea.form-input{resize:vertical;min-height:80px}select.form-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236B7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}.error-message{margin-top:.5rem;color:var(--error-text);font-size:.75rem}.error-banner{margin:1.25rem 1.25rem 0;padding:.75rem 1rem;background-color:var(--error-bg);color:var(--error-text);border-radius:4px;font-size:.875rem}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding:1.25rem;background-color:var(--bg-surface-hover);border-top:1px solid var(--border-color)}.btn-secondary{padding:.625rem 1rem;background:none;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background-color:var(--bg-surface-hover);border-color:var(--border-hover);color:var(--text-primary)}.btn-primary{padding:.625rem 1rem;background-color:var(--accent-color);border:none;border-radius:4px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.spinner{width:1rem;height:1rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.no-columns-message{text-align:center;padding:2rem;color:var(--text-secondary)}.no-columns-message p{margin:.5rem 0;font-size:.9rem}.no-columns-message p:first-child{color:var(--error-text);font-weight:500}.data-section{padding:0;background:#f8fafc;min-height:100vh;position:relative;display:flex;flex-direction:column}.data-section.excel-layout{background:#fff}.excel-toolbar{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background:#f8f9fa;border-bottom:1px solid #e9ecef;box-shadow:0 1px 3px #0000001a;position:sticky;top:0;z-index:100;flex-shrink:0}.toolbar-left{display:flex;align-items:center;gap:.75rem;flex:1}.toolbar-center{display:flex;align-items:center;justify-content:center;flex:2}.toolbar-right{display:flex;align-items:center;gap:.5rem;justify-content:flex-end;flex:1}.team-badge,.service-badge{background:#3b82f61a;color:#1e40af;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;border:1px solid rgba(59,130,246,.2)}.service-badge{background:#10b9811a;color:#047857;border-color:#10b98133}.table-selector-compact{display:flex;align-items:center;gap:.5rem}.table-select-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;cursor:pointer;transition:all .2s ease;color:#374151;display:flex;align-items:center;gap:.5rem;min-width:200px}.table-select-btn:hover{background:#f9fafb;border-color:#9ca3af}.table-select-btn:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dropdown-container{position:relative;display:inline-block;min-width:250px}.table-select-dropdown{width:100%;padding:.75rem 2.5rem .75rem 1rem;border:2px solid #e5e7eb;border-radius:8px;font-size:.95rem;font-weight:500;background:#fff;color:#1f2937;cursor:pointer;transition:all .2s ease;appearance:none;-webkit-appearance:none;-moz-appearance:none;box-shadow:0 1px 3px #0000001a}.table-select-dropdown:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f626}.table-select-dropdown:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb33}.table-select-dropdown option{padding:.5rem;font-size:.9rem;color:#374151;background:#fff}.table-select-dropdown option:disabled{color:#9ca3af;font-style:italic}.dropdown-arrow{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:#6b7280;font-size:.75rem;pointer-events:none;transition:color .2s ease}.dropdown-container:hover .dropdown-arrow{color:#3b82f6}.column-config-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;color:#374151;display:flex;align-items:center;gap:.5rem}.column-config-btn:hover{background:#f9fafb;border-color:#9ca3af;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.column-config-btn:active{transform:translateY(0)}.create-table-btn-compact{background:#10b981;color:#fff;border:none;border-radius:6px;padding:.5rem;font-size:1rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:36px;height:36px}.create-table-btn-compact:hover{background:#059669;transform:translateY(-1px);box-shadow:0 2px 4px #10b9814d}.toolbar-btn{background:#fff;border:1px solid #d1d5db;border-radius:4px;padding:.375rem .75rem;font-size:.875rem;cursor:pointer;transition:all .2s ease;color:#374151;display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;gap:.5rem}.toolbar-btn .btn-icon{width:16px;height:16px;flex-shrink:0}.toolbar-btn .btn-text{font-size:.875rem;font-weight:500;white-space:nowrap}.toolbar-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.toolbar-btn.add-btn{background:#10b981;color:#fff;border-color:#10b981}.toolbar-btn.add-btn:hover:not(:disabled){background:#059669;border-color:#059669}.toolbar-btn.view-btn{background:#3b82f6;color:#fff;border-color:#3b82f6}.toolbar-btn.view-btn:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.toolbar-btn.export-btn{background:#8b5cf6;color:#fff;border-color:#8b5cf6}.toolbar-btn.export-btn:hover:not(:disabled){background:#7c3aed;border-color:#7c3aed}.toolbar-btn.reload-btn{background:#f59e0b;color:#fff;border-color:#f59e0b}.toolbar-btn.reload-btn:hover:not(:disabled){background:#d97706;border-color:#d97706}.panel-dropdown{background:#fff;border:1px solid #e5e7eb;border-top:none;box-shadow:0 4px 6px #0000000d;border-radius:0 0 6px 6px;padding:1rem;margin-top:-1px}.main-content{flex:1;padding:1rem;overflow:auto}.table-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.table-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.table-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#1e293b}.table-stats{font-size:.875rem;color:#64748b;font-weight:500}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.empty-state-icon{font-size:4rem;color:#94a3b8;margin-bottom:1rem}.empty-state-text{font-size:1.25rem;font-weight:600;color:#374151;margin-bottom:.5rem}.empty-state-subtext{font-size:.875rem;color:#6b7280}.table-selection-view{display:flex;flex-direction:column;align-items:center;padding:3rem 2rem;max-width:1200px;margin:0 auto;width:100%}.selection-header{text-align:center;margin-bottom:3rem}.selection-header h2{font-size:2rem;font-weight:700;color:#1e293b;margin:0 0 .5rem}.selection-header p{font-size:1rem;color:#64748b;margin:0}.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.5rem;width:100%;max-width:1000px}.table-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:2rem 1.5rem;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:1rem;min-height:140px;box-shadow:0 1px 3px #0000000d}.table-card:hover:not(:disabled){border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626;transform:translateY(-2px)}.table-card:active:not(:disabled){transform:translateY(0)}.table-card:disabled{opacity:.5;cursor:not-allowed}.table-card-icon{font-size:2.5rem;line-height:1}.table-card-name{font-size:1rem;font-weight:600;color:#1e293b;text-align:center;text-transform:capitalize}.tables-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1.5rem}.loading-spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.loading-text{font-size:1rem;color:#64748b;margin:0;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.error-message{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:1rem;border-radius:6px;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.error-message button{background:#dc2626;color:#fff;border:none;padding:.25rem .75rem;border-radius:4px;cursor:pointer;font-size:.875rem}.error-message button:hover{background:#b91c1c}.import-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.import-modal-content{background:#fff;border-radius:8px;padding:2rem;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;position:relative}.close-button{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;padding:.25rem;border-radius:4px;transition:all .2s ease}.close-button:hover{background:#f3f4f6;color:#374151}.compact-managers-panel{margin-bottom:1.5rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.manager-section{border-bottom:1px solid #e5e7eb}.manager-section:last-child{border-bottom:none}.manager-toggle-btn{width:100%;background:#f8fafc;border:none;padding:1rem 1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-size:.875rem;font-weight:500;color:#374151;transition:all .2s ease}.manager-toggle-btn:hover{background:#f1f5f9}.toggle-icon{font-size:1.25rem;margin-right:.75rem}.toggle-arrow{transition:transform .2s ease;color:#6b7280}.toggle-arrow.rotated{transform:rotate(180deg)}.manager-content{padding:1.5rem;background:#fff;border-top:1px solid #e5e7eb}@media (max-width: 1024px){.excel-toolbar{flex-direction:column;gap:1rem;padding:1rem}.toolbar-left,.toolbar-center,.toolbar-right{flex:none;width:100%;justify-content:center}.table-selector-compact{justify-content:center}.dropdown-container{min-width:200px}}@media (max-width: 768px){.toolbar-right{flex-wrap:wrap;gap:.5rem}.toolbar-btn .btn-text{display:none}.toolbar-btn{min-width:40px;width:40px;height:40px}.dropdown-container{min-width:180px}.table-select-dropdown{padding:.5rem 2rem .5rem .75rem;font-size:.875rem}}[data-theme=dark] .data-section{background:#1f2937}[data-theme=dark] .excel-toolbar{background:#111827;border-bottom-color:#374151}[data-theme=dark] .team-badge{background:#3b82f633;color:#93c5fd;border-color:#3b82f64d}[data-theme=dark] .service-badge{background:#10b98133;color:#6ee7b7;border-color:#10b9814d}[data-theme=dark] .table-select-dropdown{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .table-select-dropdown:hover{border-color:#60a5fa;box-shadow:0 2px 8px #60a5fa40}[data-theme=dark] .table-select-dropdown:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f64d}[data-theme=dark] .table-select-dropdown option{background:#374151;color:#f9fafb}[data-theme=dark] .dropdown-arrow{color:#9ca3af}[data-theme=dark] .dropdown-container:hover .dropdown-arrow{color:#60a5fa}[data-theme=dark] .column-config-btn{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .column-config-btn:hover{background:#4b5563;border-color:#6b7280}[data-theme=dark] .toolbar-btn{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .toolbar-btn:hover:not(:disabled){background:#4b5563;border-color:#6b7280}[data-theme=dark] .table-container{background:#1f2937}[data-theme=dark] .table-header{background:#111827;border-bottom-color:#374151}[data-theme=dark] .table-header h2{color:#f9fafb}[data-theme=dark] .table-stats{color:#9ca3af}[data-theme=dark] .empty-state{background:#1f2937}[data-theme=dark] .empty-state-icon{color:#6b7280}[data-theme=dark] .empty-state-text{color:#f9fafb}[data-theme=dark] .empty-state-subtext{color:#9ca3af}[data-theme=dark] .table-selection-view{background:transparent}[data-theme=dark] .selection-header h2{color:#f1f5f9}[data-theme=dark] .selection-header p{color:#94a3b8}[data-theme=dark] .table-card{background:#1e293b;border-color:#334155}[data-theme=dark] .table-card:hover:not(:disabled){border-color:#3b82f6;background:#293548}[data-theme=dark] .table-card-name{color:#f1f5f9}[data-theme=dark] .loading-spinner{border-color:#334155;border-top-color:#3b82f6}[data-theme=dark] .loading-text{color:#94a3b8}[data-theme=dark] .error-message{background:#7f1d1d;border-color:#dc2626;color:#fca5a5}[data-theme=dark] .import-modal-content{background:#1f2937;color:#f9fafb}[data-theme=dark] .close-button{color:#9ca3af}[data-theme=dark] .close-button:hover{background:#374151;color:#f9fafb}[data-theme=dark] .compact-managers-panel{background:#1f2937}[data-theme=dark] .manager-section{border-bottom-color:#374151}[data-theme=dark] .manager-toggle-btn{background:#111827;color:#f9fafb}[data-theme=dark] .manager-toggle-btn:hover{background:#1f2937}[data-theme=dark] .manager-content{background:#1f2937;border-top-color:#374151}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffc;display:flex;align-items:center;justify-content:center;z-index:10}.loading-spinner{width:2rem;height:2rem;border:3px solid #e5e7eb;border-top:3px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}.table-container{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.toolbar-btn,.column-config-btn,.create-table-btn-compact{transition:all .2s cubic-bezier(.4,0,.2,1)}.toolbar-btn:hover,.column-config-btn:hover,.create-table-btn-compact:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.toolbar-btn:focus,.column-config-btn:focus,.create-table-btn-compact:focus,.table-select-dropdown:focus{outline:2px solid #3b82f6;outline-offset:2px}.toolbar-btn:disabled,.column-config-btn:disabled,.create-table-btn-compact:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.success-message{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;padding:1rem;border-radius:6px;margin-bottom:1rem}.warning-message{background:#fffbeb;border:1px solid #fed7aa;color:#92400e;padding:1rem;border-radius:6px;margin-bottom:1rem}.collapse-btn{background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease;font-size:.875rem}.collapse-btn:hover{background:#f3f4f6;color:#374151}[data-theme=dark] .collapse-btn{color:#9ca3af}[data-theme=dark] .collapse-btn:hover{background:#374151;color:#f9fafb}.test-gpt-container{max-width:1200px;margin:0 auto;padding:20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.test-gpt-container h1{text-align:center;color:#2c3e50;margin-bottom:30px;font-size:2.5em}.test-section{background:#fff;border-radius:12px;padding:25px;margin-bottom:30px;box-shadow:0 4px 6px #0000001a;border:1px solid #e1e8ed}.test-section h2{color:#34495e;margin-bottom:20px;font-size:1.5em;border-bottom:2px solid #3498db;padding-bottom:10px}.test-section form{display:flex;flex-direction:column;gap:15px}.test-section textarea{width:100%;padding:15px;border:2px solid #e1e8ed;border-radius:8px;font-size:16px;font-family:inherit;resize:vertical;transition:border-color .3s ease}.test-section textarea:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.test-section button{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;align-self:flex-start}.test-section button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #3498db4d}.test-section button:disabled{background:#bdc3c7;cursor:not-allowed;transform:none}.response{margin-top:20px;padding:20px;background:#f8f9fa;border-radius:8px;border-left:4px solid #3498db}.response h3{color:#2c3e50;margin-bottom:10px}.response p{line-height:1.6;color:#34495e;white-space:pre-wrap}.email-test-form{display:flex;flex-direction:column;gap:15px}.email-test-form input,.email-test-form textarea{width:100%;padding:12px 15px;border:2px solid #e1e8ed;border-radius:8px;font-size:16px;font-family:inherit;transition:border-color .3s ease}.email-test-form input:focus,.email-test-form textarea:focus{outline:none;border-color:#e74c3c;box-shadow:0 0 0 3px #e74c3c1a}.email-buttons{display:flex;gap:10px;flex-wrap:wrap}.email-buttons button{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1;min-width:150px}.email-buttons button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #e74c3c4d}.email-buttons button:nth-child(2){background:linear-gradient(135deg,#f39c12,#e67e22)}.email-buttons button:nth-child(3){background:linear-gradient(135deg,#9b59b6,#8e44ad)}.email-result{margin-top:20px;padding:15px;border-radius:8px;font-weight:500}.email-result h3{margin-bottom:10px;color:#2c3e50}.email-result p{margin:0;line-height:1.5}.email-result p:contains("✅"){background:#d4edda;color:#155724;border:1px solid #c3e6cb}.email-result p:contains("❌"){background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.instructions{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:25px;border-radius:12px;margin-top:30px}.instructions h3{margin-bottom:15px;font-size:1.3em}.instructions ul{list-style:none;padding:0;margin:0}.instructions li{margin-bottom:10px;padding-left:20px;position:relative}.instructions li:before{content:"→";position:absolute;left:0;color:#f39c12;font-weight:700}.instructions p{margin-top:15px;padding-top:15px;border-top:1px solid rgba(255,255,255,.2);font-size:.9em;opacity:.9}.instructions code{background:#fff3;padding:2px 6px;border-radius:4px;font-family:Courier New,monospace}@media (max-width: 768px){.test-gpt-container{padding:15px}.test-section{padding:20px}.email-buttons{flex-direction:column}.email-buttons button{min-width:auto}.test-gpt-container h1{font-size:2em}}.table-card-view{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;padding:.75rem;width:100%;height:100%;overflow:auto}.data-card{background:var(--background-primary, white);border:1px solid var(--border-color, #eaeaea);border-radius:8px;box-shadow:0 1px 3px #0000001a;transition:all .2s ease;overflow:hidden;cursor:pointer}.data-card:hover{box-shadow:0 3px 6px #00000026;transform:translateY(-2px);border-color:var(--primary-color, #3b82f6)}.card-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--background-secondary, #f8f9fa);border-bottom:1px solid var(--border-color, #eaeaea)}.card-header-left{display:flex;align-items:center;gap:8px}.card-source-table{font-size:.75rem;padding:.25rem .5rem;background:var(--background-quaternary, #e9ecef);border-radius:12px;color:var(--text-secondary, #495057);font-weight:500}.card-id{font-size:.75rem;color:var(--text-tertiary, #6c757d)}.card-content{padding:.75rem}.card-title{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary, #212529);line-height:1.4}.card-subtitle{margin-top:.25rem;font-size:.9rem;font-weight:500;color:var(--primary-color, #3b82f6);line-height:1.4}.card-details{margin-top:.75rem;font-size:.875rem;color:var(--text-secondary, #495057);display:flex;flex-direction:column;gap:.5rem;transition:all .3s ease}.card-details:not(.expanded)>*:nth-child(n+3){display:none}.card-details.expanded{margin-top:1rem;padding-top:.75rem;border-top:1px dashed var(--border-color, #eaeaea);display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.card-detail-item{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;line-height:1.4;padding:.5rem 0;border-bottom:1px solid var(--border-color, #eaeaea)}.card-detail-item:last-child{border-bottom:none}.detail-label{color:var(--text-tertiary, #6c757d);font-weight:500;min-width:130px;max-width:180px;flex-shrink:0}.detail-value{color:var(--text-primary, #212529);text-align:right;word-break:break-word;white-space:pre-line;flex:1;line-height:1.5}.expand-button{width:24px;height:24px;padding:0;border:1px solid var(--border-color, #eaeaea);background:var(--background-secondary, #f8f9fa);cursor:pointer;color:var(--text-secondary, #6c757d);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease;margin-left:8px;font-size:18px;line-height:1}.expand-button:hover{background-color:var(--primary-color, #3b82f6);color:#fff;border-color:var(--primary-color, #3b82f6)}.expand-button svg{width:16px;height:16px}.card-status{font-size:.75rem;padding:2px 8px;border-radius:12px;margin-right:8px}.status-active{background-color:var(--success, #d4edda);color:var(--success-text, #155724)}.status-senior{background-color:var(--warning-bg, #cce5ff);color:var(--warning-text, #004085)}.birthday-card{border-left:4px solid #007bff}.card-content.expanded .card-details{max-height:none;opacity:1}.card-header-right{display:flex;align-items:center}@media (max-width: 768px){.table-card-view,.card-details.expanded{grid-template-columns:1fr}.detail-label{min-width:120px;max-width:140px}.card-detail-item{padding:.375rem 0}}.data-card.birthday-card{border-left:4px solid var(--accent-color)}.data-card.birthday-card .card-source-table{color:var(--accent-color);font-weight:500}.data-card .card-subtitle{font-size:.875rem;color:var(--text-secondary);margin-top:.25rem}.status-senior{background-color:var(--warning-bg);color:var(--warning-text)}[data-theme=dark] .data-card{background:var(--background-secondary-dark, #1f2937);border-color:var(--border-color-dark, #374151)}[data-theme=dark] .data-card:hover{box-shadow:0 4px 8px #0000004d;border-color:var(--primary-color, #3b82f6)}[data-theme=dark] .card-header{background:var(--background-tertiary-dark, #111827);border-color:var(--border-color-dark, #374151)}[data-theme=dark] .card-title{color:var(--text-primary-dark, #f3f4f6)}[data-theme=dark] .card-subtitle{color:var(--primary-color, #60a5fa)}[data-theme=dark] .card-source-table{background:var(--background-quaternary-dark, #374151);color:var(--text-secondary-dark, #9ca3af)}[data-theme=dark] .card-id{color:var(--text-tertiary-dark, #6b7280)}[data-theme=dark] .card-details{color:var(--text-secondary-dark, #9ca3af)}[data-theme=dark] .detail-label{color:var(--text-tertiary-dark, #9ca3af)}[data-theme=dark] .detail-value{color:var(--text-primary-dark, #f3f4f6)}[data-theme=dark] .expand-button{background:var(--background-tertiary-dark, #111827);border-color:var(--border-color-dark, #374151);color:var(--text-secondary-dark, #9ca3af)}[data-theme=dark] .expand-button:hover{background-color:var(--primary-color, #3b82f6);color:#fff;border-color:var(--primary-color, #3b82f6)}[data-theme=dark] .status-active{background:var(--success-dark, #065f46);color:var(--success-text-dark, #d1fae5)}[data-theme=dark] .status-senior{background:var(--warning-dark, #92400e);color:var(--warning-text-dark, #fef3c7)}[data-theme=dark] .card-detail-item,[data-theme=dark] .card-details.expanded{border-color:var(--border-color-dark, #374151)}.datapool-container{padding:20px}.datapool-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.search-container{display:flex;align-items:center;gap:15px}.search-input{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;width:300px;transition:border-color .2s}.search-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.datapool-count{color:#666;font-size:14px}.datapool-loading{text-align:center;padding:20px;color:#666}.datapool-error{text-align:center;padding:20px;color:#dc3545}.card-subtitle{font-size:.85rem;color:#666;margin-top:4px}.birthdays-container{padding:1rem;height:100%;display:flex;flex-direction:column;gap:1rem}.birthdays-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.search-container{position:relative;width:300px}.search-input{width:100%;padding:.625rem 1rem .625rem 2.5rem;border:1px solid var(--border-color);border-radius:4px;font-size:.875rem;color:var(--text-primary);background-color:var(--bg-surface);transition:all .2s}.search-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color-10)}.search-input::placeholder{color:var(--text-muted)}.search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:var(--text-muted);pointer-events:none}.btn-primary{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background-color:var(--accent-color);border:none;border-radius:4px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-primary:hover:not(:disabled){background-color:var(--accent-color-dark)}.btn-primary svg{width:1.25rem;height:1.25rem}.loading-state,.error-state,.empty-state{display:flex;align-items:center;justify-content:center;padding:2rem;text-align:center;color:var(--text-secondary);background-color:var(--bg-surface);border-radius:8px;border:1px solid var(--border-color)}.error-state{color:var(--error-text);background-color:var(--error-bg)}.birthdays-content{display:flex;flex-direction:column;gap:2rem;padding:1rem 0}.highlight-section{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;padding:1.5rem;border:2px solid transparent;box-shadow:0 4px 6px #0000000d}.today-section{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border-color:#ffc107;animation:pulse-glow 2s infinite}.current-month-section{background:linear-gradient(135deg,#d1ecf1,#bee5eb);border-color:#17a2b8}.highlight-title{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.1)}.today-section .highlight-title{color:#856404}.current-month-section .highlight-title{color:#0c5460}.today-birthday{background:linear-gradient(135deg,#fff,#fffbf0);border:2px solid #ffc107;box-shadow:0 4px 8px #ffc1074d}.today-birthday:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 8px 16px #ffc10766}.today-badge{background:linear-gradient(135deg,#ffc107,#ffb300);color:#212529;font-weight:700;padding:.5rem 1rem;border-radius:20px;text-align:center;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #ffc1074d}.current-month-birthday{background:linear-gradient(135deg,#fff,#f0f9ff);border:1px solid #17a2b8;box-shadow:0 2px 4px #17a2b833}.current-month-birthday:hover{transform:translateY(-2px);box-shadow:0 4px 8px #17a2b84d}.current-month-badge{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff;font-weight:600;padding:.375rem .75rem;border-radius:15px;text-align:center;font-size:.875rem;box-shadow:0 1px 3px #17a2b84d}.section-title{font-size:1.375rem;font-weight:600;color:var(--text-primary);margin:2rem 0 1rem;padding-bottom:.5rem;border-bottom:2px solid var(--border-color)}.all-birthdays-section{margin-top:2rem;padding-top:2rem;border-top:2px dashed var(--border-color)}@keyframes pulse-glow{0%,to{box-shadow:0 4px 6px #0000000d,0 0 #ffc10766}50%{box-shadow:0 4px 6px #0000000d,0 0 0 8px #ffc1071a}}.month-section{display:flex;flex-direction:column;gap:1rem}.month-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);text-transform:capitalize;padding-bottom:.5rem;border-bottom:2px solid var(--accent-color)}.birthdays-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.birthday-card{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;padding:1rem;transition:all .2s}.birthday-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.birthday-info{display:flex;flex-direction:column;gap:.5rem}.birthday-date{font-size:.875rem;color:var(--text-secondary);display:flex;align-items:center;gap:.5rem}.birthday-name{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.birthday-details{font-size:.875rem;color:var(--text-secondary)}.birthday-rfc{font-family:var(--font-family-mono);font-size:.75rem;color:var(--text-muted);background-color:var(--bg-surface-hover);padding:.25rem .5rem;border-radius:4px;align-self:flex-start}.view-actions{display:flex;gap:.5rem}.view-toggle{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1px solid var(--border-color);border-radius:4px;background-color:var(--bg-surface);color:var(--text-muted);cursor:pointer;transition:all .2s}.view-toggle svg{width:1.25rem;height:1.25rem}.view-toggle:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.view-toggle.active{background-color:var(--accent-color-10);border-color:var(--accent-color);color:var(--accent-color)}.birthdays-table-view{margin-top:1rem;overflow-x:auto;background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px}.birthdays-table-view table{width:100%;border-collapse:collapse}.birthdays-table-view th,.birthdays-table-view td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color)}.birthdays-table-view th{background-color:var(--bg-surface-hover);font-weight:600;color:var(--text-primary);white-space:nowrap}.birthdays-table-view td{color:var(--text-secondary)}.birthdays-table-view tr:last-child td{border-bottom:none}.birthdays-table-view tr:hover td{background-color:var(--bg-surface-hover)}.birthday-contact{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem;font-size:.9rem;color:#666}.birthday-email{display:flex;align-items:center;gap:.5rem;color:#06c}.email-icon{width:1.2rem;height:1.2rem}.birthday-source{display:inline-block;margin-top:.5rem;padding:.2rem .5rem;background-color:#f0f0f0;border-radius:4px;font-size:.8rem;color:#666}.birthday-metadata{display:flex;gap:.5rem;margin-top:.5rem}.birthday-source,.birthday-source-type{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.8rem}.birthday-source{background-color:var(--accent-color-10);color:var(--accent-color)}.birthday-source-type{background-color:#f0f0f0;color:#666;cursor:help}.email-status{margin:1rem 0;padding:1rem;border-radius:4px;font-size:.875rem;text-align:center}.email-status.success{background-color:#d1fae5;color:#065f46;border:1px solid #34d399}.email-status.error{background-color:#fee2e2;color:#991b1b;border:1px solid #f87171}.btn-primary:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 768px){.birthdays-container{padding:.5rem}.birthdays-header{flex-direction:column;gap:1rem;align-items:stretch}.search-container{width:100%}.birthdays-grid{grid-template-columns:1fr}.btn-primary{width:100%;justify-content:center}.btn-primary span{display:none}.header-actions{flex-direction:column}.view-actions{width:100%;justify-content:center}.view-toggle{flex:1;max-width:150px}.birthdays-table-view{margin:.5rem -.5rem;border-radius:0;border-left:none;border-right:none}.birthdays-table-view th,.birthdays-table-view td{padding:.5rem;font-size:.875rem}.highlight-section{padding:1rem;margin:0 -.5rem}.highlight-title{font-size:1.25rem}.today-badge,.current-month-badge{font-size:.75rem;padding:.375rem .75rem}.section-title{font-size:1.125rem;margin:1.5rem 0 .75rem}.all-birthdays-section{margin-top:1.5rem;padding-top:1.5rem}}.reports-container{padding:1rem;background-color:var(--bg-surface);border-radius:8px;border:1px solid var(--border-color);height:calc(100vh - 80px);display:flex;flex-direction:column;overflow:hidden}.reports-header{margin-bottom:1rem;position:sticky;top:0;background-color:var(--bg-surface);z-index:10;padding:.5rem;flex-shrink:0}.reports-header h2{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.reports-controls{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap}.search-bar{flex:1;min-width:250px}.search-input{width:100%;padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:.375rem;background-color:var(--bg-surface);color:var(--text-primary);font-size:.875rem;transition:all .2s}.search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-light)}.search-input::placeholder{color:var(--text-secondary)}.view-toggle{display:flex;align-items:center}.toggle-btn{padding:.4rem;border-radius:.375rem;border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.toggle-btn:hover{background-color:var(--bg-hover)}.toggle-btn.active{background-color:var(--primary-color);color:#e30707;border-color:var(--primary-color)}.toggle-btn svg{width:18px;height:18px}.filters{display:flex;gap:1rem}.filter-select{padding:.5rem;border-radius:.375rem;border:1px solid var(--border-color);background-color:var(--bg-surface);color:var(--text-primary);min-width:150px;cursor:pointer}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;padding:.5rem;overflow-y:auto;max-height:calc(100vh - 200px)}.report-card{background:var(--background-primary);border:1px solid var(--border-color);border-radius:.5rem;padding:1rem;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;gap:1rem;height:fit-content;cursor:pointer;transition:all .3s ease}.report-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.report-card.expanded{transform:scale(1.02);box-shadow:0 6px 12px #00000026}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.card-header-content{display:flex;flex-direction:column;gap:.5rem}.card-header-content h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.report-type{font-size:.875rem;color:var(--text-secondary);padding:.25rem .5rem;border-radius:.25rem;background:var(--background-secondary);white-space:nowrap}.card-content{display:flex;flex-direction:column;gap:1rem}.card-info{display:flex;justify-content:space-between;align-items:center;gap:1rem}.card-info strong{font-size:1rem;color:var(--text-primary)}.card-details{display:flex;flex-direction:column;gap:.5rem}.card-details p{display:flex;justify-content:space-between;align-items:center;margin:.5rem 0;padding:.5rem;border-radius:4px;background:var(--background-secondary)}.card-details p span{font-weight:600;color:var(--text-secondary)}.card-amount{font-weight:600;color:var(--text-primary)!important}.status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-vigente{background-color:var(--success-light);color:var(--success)}.status-vencido{background-color:var(--error-light);color:var(--error)}.status-pendiente{background-color:var(--warning-light);color:var(--warning)}.policy-type{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:uppercase}.policy-type.gmm{background-color:var(--primary-light);color:var(--primary)}.policy-type.auto{background-color:var(--success-light);color:var(--success)}.card-footer{display:flex;justify-content:center;padding-top:1rem;border-top:1px solid var(--border-color)}.expand-btn{background:none;border:1px solid var(--border-color);color:var(--primary-color);font-weight:600;cursor:pointer;padding:.25rem .75rem;border-radius:50%;transition:all .2s;font-size:1.25rem;line-height:1;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.expand-btn:hover{background:var(--primary-light);transform:scale(1.1)}[data-theme=dark] .report-card{background:var(--background-primary-dark);border-color:var(--border-color-dark)}[data-theme=dark] .card-details p{background:var(--background-primary-dark);border:1px solid var(--border-color-dark)}[data-theme=dark] .expand-btn{border-color:var(--border-color-dark)}[data-theme=dark] .expand-btn:hover{background:var(--primary-dark)}@media (max-width: 768px){.reports-controls{flex-direction:column;gap:.5rem}.filters{width:100%}.filter-select{flex:1}.cards-grid{grid-template-columns:1fr}}.loading-message,.error-message,.no-data{text-align:center;padding:20px;border-radius:8px;margin:20px 0}.loading-message{background-color:#e9ecef;color:#495057}.error-message{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.no-data{background-color:#f8f9fa;color:#6c757d;font-style:italic}.reports-table .no-data{text-align:center;font-style:italic;color:#6c757d;background-color:#f8f9fa}.send-email-btn{padding:8px 16px;background-color:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;margin-left:10px;width:auto;height:40px;min-width:100px;max-width:20px}.send-email-btn:hover{background-color:#45a049}.send-email-btn:disabled{background-color:#ccc;cursor:not-allowed}.email-status{margin:10px 0;padding:10px;border-radius:4px;text-align:center}.email-status.success{background-color:#dff0d8;color:#3c763d;border:1px solid #d6e9c6}.email-status.error{background-color:#f2dede;color:#a94442;border:1px solid #ebccd1}.table-container{overflow:auto;flex:1;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-surface);max-height:calc(100vh - 200px)}.reports-table{width:100%;border-collapse:collapse;font-size:.875rem}.reports-table th{padding:.5rem;font-weight:500;color:var(--text-secondary);border-bottom:1px solid var(--border-color);background-color:var(--bg-surface);position:sticky;top:0;text-align:left;white-space:nowrap}.reports-table td{padding:.5rem;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.card-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.card-section h4{margin:0 0 .75rem;font-size:1rem;color:var(--text-primary);font-weight:600}.card-details p{display:flex;justify-content:space-between;align-items:center;margin:.5rem 0;padding:.5rem;border-radius:4px;background:var(--background-secondary);font-size:.875rem}.card-details p span{font-weight:600;color:var(--text-secondary);min-width:120px}[data-theme=dark] .card-section{border-color:var(--border-color-dark)}[data-theme=dark] .card-section h4{color:var(--text-primary-dark)}.card-header-details{display:flex;gap:8px;align-items:center}.policy-ramo{background-color:var(--primary-color-light);color:var(--primary-color);padding:2px 8px;border-radius:4px;font-size:.8rem;font-weight:500}.status-toggle{padding:6px 12px;border-radius:20px;border:none;cursor:pointer;font-size:.9em;font-weight:500;transition:all .2s ease;min-width:100px}.status-toggle.pagado{background-color:#4caf50;color:#fff}.status-toggle.no-pagado{background-color:#f44336;color:#fff}.status-toggle:hover{opacity:.9;transform:scale(1.05)}.status-toggle.cap-toggle.cap-active{background-color:#dc2626;color:#fff}.status-toggle.cap-toggle.cap-inactive{background-color:#6b7280;color:#fff;opacity:.8}.status-toggle.cfp-toggle.cfp-active{background-color:#991b1b;color:#fff}.status-toggle.cfp-toggle.cfp-inactive{background-color:#6b7280;color:#fff;opacity:.8}.card-status-buttons{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.card-status-buttons .status-toggle{min-width:60px;font-size:.8em;padding:4px 8px}.matrix-container{overflow-x:auto;margin-top:1rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.matrix-table{width:100%;border-collapse:collapse;font-size:.9rem}.matrix-table th,.matrix-table td{padding:.75rem;text-align:center;border:1px solid var(--border-color)}.matrix-table th{background-color:var(--bg-secondary);font-weight:600;color:var(--text-primary);position:sticky;top:0;z-index:1}.matrix-table tr:nth-child(2n){background-color:var(--bg-surface)}.matrix-table td:first-child{text-align:left;font-weight:500;position:sticky;left:0;background:#fff;z-index:1}.matrix-table td.has-policy{color:var(--success);font-weight:700}.matrix-table td.no-policy{color:var(--error);opacity:.5}.matrix-container{max-height:calc(100vh - 300px);overflow:auto;padding:1rem;background:var(--bg-surface);border-radius:.75rem;border:1px solid var(--border-color)}.matrix-section{padding:1.5rem;background:var(--bg-surface);border-radius:.75rem;box-shadow:0 4px 6px #00000012}.matrix-title{font-size:1.5rem;font-weight:700;color:#fff;margin:0 0 1rem;padding:1.5rem 2rem;background:linear-gradient(135deg,var(--primary-color),#667eea);border-radius:.75rem;text-align:center;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 8px #00000026}.matrix-filters{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem;background-color:var(--bg-hover);border-radius:.5rem;border:1px solid var(--border-color)}.matrix-search-bar{flex:1;min-width:200px}.matrix-search-input{width:100%;padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:.375rem;background-color:var(--bg-surface);color:var(--text-primary);font-size:.875rem;transition:all .2s}.matrix-search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-light)}.matrix-search-input::placeholder{color:var(--text-secondary)}.matrix-filter-selects{display:flex;gap:.5rem}.matrix-filter-select{padding:.5rem;border-radius:.375rem;border:1px solid var(--border-color);background-color:var(--bg-surface);color:var(--text-primary);min-width:150px;cursor:pointer;font-size:.875rem;transition:all .2s}.matrix-filter-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-light)}.matrix-filter-select:hover{background-color:var(--bg-hover)}.matrix-table{border-radius:.5rem;overflow:hidden;box-shadow:0 2px 8px #00000014}.matrix-table .client-name{font-weight:600;color:var(--text-primary);background:var(--bg-secondary);border-right:2px solid var(--primary-color)}.matrix-table .policy-count{font-weight:700;background:var(--primary-light);color:var(--primary-color);font-size:1.1rem}.matrix-table .summary-row{background:var(--bg-secondary);font-weight:600;border-top:2px solid var(--primary-color)}.matrix-table .ramo-header{background:linear-gradient(135deg,#4caf50,#66bb6a);color:#fff;font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:.5px}.matrix-table .company-header{background:linear-gradient(135deg,#2196f3,#42a5f5);color:#fff;font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:.5px}.matrix-table .ramo-total{background:#e8f5e8;color:#2e7d32;font-weight:700;font-size:1.1rem}.matrix-table .company-total{background:#e3f2fd;color:#1976d2;font-weight:700;font-size:1.1rem}.matrix-table .grand-total{background:var(--primary-color);color:#fff;font-weight:700;font-size:1.2rem}.matrix-table td.has-policy{background:#e8f5e8;color:#2e7d32;font-weight:700;font-size:1.2rem}.matrix-table td.no-policy{background:#ffebee;color:#c62828;opacity:.7;font-size:1.1rem}.matrix-table .client-header{background:linear-gradient(135deg,#9e9e9e,#bdbdbd);color:#fff;font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:.5px}.matrix-table .ramo-cell{background-color:#4caf501a;border-left:3px solid #4caf50;transition:all .2s ease}.matrix-table .company-cell{background-color:#2196f31a;border-left:3px solid #2196f3;transition:all .2s ease}.matrix-table .ramo-cell.has-policy{background-color:#4caf5040;color:#2e7d32;font-weight:600;box-shadow:inset 0 0 0 1px #4caf504d}.matrix-table .company-cell.has-policy{background-color:#2196f340;color:#1565c0;font-weight:600;box-shadow:inset 0 0 0 1px #2196f34d}.matrix-table .ramo-cell.no-policy,.matrix-table .company-cell.no-policy{background-color:#f443361a;color:#c62828;opacity:.8}.matrix-table .ramo-cell:hover,.matrix-table .company-cell:hover{transform:scale(1.05);z-index:1;position:relative}.matrix-no-data,.matrix-no-results{display:flex;justify-content:center;align-items:center;min-height:300px;padding:2rem}.no-data-message{text-align:center;background:var(--bg-surface);border:2px dashed var(--border-color);border-radius:1rem;padding:2rem;max-width:500px;box-shadow:0 2px 8px #0000000d}.no-data-message h4{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0 0 1rem}.no-data-message p{color:var(--text-secondary);font-size:.95rem;line-height:1.5;margin:.5rem 0}.no-data-message p:last-child{font-style:italic;color:var(--text-tertiary);font-size:.875rem}@media (max-width: 768px){.matrix-container{margin:0 -1rem;border-radius:0;padding:.5rem}.matrix-section{padding:1rem}.matrix-title{font-size:1.2rem;padding:1rem 1.5rem;margin-bottom:1rem}.matrix-filters{flex-direction:column;gap:.75rem;padding:.75rem}.matrix-search-bar{min-width:unset}.matrix-filter-selects{width:100%;justify-content:space-between}.matrix-filter-select{min-width:unset;flex:1}.matrix-table{font-size:.75rem}.matrix-table th,.matrix-table td{padding:.4rem .2rem;font-size:.7rem}.matrix-table .ramo-header,.matrix-table .company-header{font-size:.6rem;padding:.3rem .1rem}.matrix-table .policy-count,.matrix-table .ramo-total,.matrix-table .company-total,.matrix-table .grand-total{font-size:.8rem}.matrix-table .client-name{min-width:80px;font-size:.7rem}.matrix-no-data,.matrix-no-results{min-height:200px;padding:1rem}.no-data-message{padding:1.5rem;max-width:100%}.no-data-message h4{font-size:1.1rem}.no-data-message p{font-size:.875rem}}.reports-layout{display:flex;height:calc(100vh - 200px);gap:1rem;overflow:hidden}.reports-layout.with-graphics{flex-direction:row}.reports-layout.no-graphics{flex-direction:column}.reports-left-panel{display:flex;flex-direction:column;overflow:hidden;transition:all .3s ease}.reports-left-panel.with-right-panel{flex:1;min-width:0}.reports-left-panel.full-width{width:100%}.reports-right-panel{width:400px;min-width:300px;max-width:600px;background:var(--background-primary);border:1px solid var(--border-color);border-radius:8px;display:flex;flex-direction:column;overflow:hidden;transition:all .3s ease}.reports-right-panel.collapsed{width:60px;min-width:60px}.reports-right-panel.hidden{display:none}.collapse-btn{background:none;border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;padding:.25rem .5rem;border-radius:4px;font-size:1rem;transition:all .2s ease}.collapse-btn:hover{background:var(--background-hover);color:var(--text-primary)}.graphics-toggle{background-color:#10b981;color:#fff;border-color:#10b981}.graphics-toggle:hover{background-color:#059669;border-color:#059669}.graphics-toggle.active{background-color:#047857;border-color:#047857}.unified-graphics-btn{background-color:#10b981;border:1px solid #10B981;color:#fff;cursor:pointer;padding:.4rem;border-radius:4px;font-size:1rem;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.unified-graphics-btn:hover{background-color:#059669;border-color:#059669;color:#fff}.unified-graphics-btn.active{background-color:#10b981;color:#fff;border-color:#10b981}.unified-graphics-btn.active:hover{background-color:#059669;border-color:#059669}.unified-graphics-btn span{font-size:1.4rem;font-weight:700;line-height:1;display:flex;align-items:center;justify-content:center}.graphics-control-container{position:fixed;top:50%;right:20px;transform:translateY(-50%);z-index:1000;background:var(--background-primary);border-radius:6px;box-shadow:0 4px 12px #00000026;padding:.25rem}.vencimientos-graphics{padding:1rem;height:100%;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.graphics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.graphics-header h3{margin:0;font-size:1.1rem;color:var(--text-primary);font-weight:600}.time-view-controls{display:flex;gap:.25rem}.time-btn{padding:.4rem .8rem;border:1px solid var(--border-color);background:var(--background-primary);color:var(--text-secondary);border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s ease}.time-btn:hover{background:var(--background-hover);color:var(--text-primary)}.time-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.graphics-summary{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.summary-card{background:var(--background-secondary);padding:1rem;border-radius:6px;text-align:center;border:1px solid var(--border-color)}.summary-card h4{margin:0 0 .5rem;font-size:.9rem;color:var(--text-secondary);font-weight:500}.summary-number{font-size:2rem;font-weight:700;color:var(--primary-color)}.summary-ramos{display:flex;flex-direction:column;gap:.5rem}.ramo-summary{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--background-secondary);border-radius:4px;border:1px solid var(--border-color)}.ramo-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.ramo-name{flex:1;font-size:.85rem;color:var(--text-primary)}.ramo-count{font-weight:600;color:var(--text-primary);font-size:.9rem}.graphics-chart{margin-bottom:1rem}.chart-container{display:flex;align-items:end;gap:.5rem;padding:1rem;background:var(--background-secondary);border-radius:6px;border:1px solid var(--border-color);min-height:250px;overflow-x:auto}.chart-bar{display:flex;flex-direction:column;align-items:center;min-width:60px;flex-shrink:0}.bar-container{display:flex;flex-direction:column;align-items:center;height:220px;justify-content:flex-end}.bar-total{display:flex;flex-direction:column;justify-content:flex-end;width:40px;border-radius:4px 4px 0 0;transition:all .2s ease;cursor:pointer;position:relative}.bar-total:hover{transform:scale(1.05)}.bar-segment{width:100%;transition:all .2s ease}.bar-segment:first-child{border-radius:4px 4px 0 0}.bar-segment:last-child{border-radius:0 0 4px 4px}.bar-value{margin-top:.25rem;font-size:.8rem;font-weight:600;color:var(--text-primary)}.bar-label{margin-top:.5rem;text-align:center}.month-name{font-size:.75rem;color:var(--text-primary);font-weight:500;text-transform:capitalize}.year-name{font-size:.7rem;color:var(--text-secondary)}.graphics-details{flex:1;overflow-y:auto}.graphics-details h4{margin:0 0 1rem;font-size:1rem;color:var(--text-primary);font-weight:600}.monthly-details{display:flex;flex-direction:column;gap:.75rem}.month-detail{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:6px;padding:.75rem}.month-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.month-header h5{margin:0;font-size:.9rem;color:var(--text-primary);font-weight:600;text-transform:capitalize}.month-total{font-size:.8rem;color:var(--text-secondary);font-weight:500}.ramo-detail{display:flex;align-items:center;gap:.5rem;padding:.25rem 0}.ramo-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0}.ramo-detail .ramo-name{flex:1;font-size:.8rem;color:var(--text-primary)}.ramo-detail .ramo-count{font-weight:600;color:var(--text-primary);font-size:.8rem}[data-theme=dark] .reports-right-panel{background:var(--background-primary-dark);border-color:var(--border-color-dark)}[data-theme=dark] .graphics-control-container{background:var(--background-primary-dark)}[data-theme=dark] .unified-graphics-btn{border-color:var(--border-color-dark);color:var(--text-secondary-dark)}[data-theme=dark] .unified-graphics-btn:hover,[data-theme=dark] .collapse-btn:hover{background:var(--background-hover-dark);color:var(--text-primary-dark)}[data-theme=dark] .summary-card,[data-theme=dark] .ramo-summary,[data-theme=dark] .chart-container,[data-theme=dark] .month-detail{background:var(--background-secondary-dark);border-color:var(--border-color-dark)}[data-theme=dark] .time-btn{background:var(--background-primary-dark);border-color:var(--border-color-dark);color:var(--text-secondary-dark)}[data-theme=dark] .time-btn:hover{background:var(--background-hover-dark);color:var(--text-primary-dark)}[data-theme=dark] .month-header{border-color:var(--border-color-dark)}.matrix-graphics{padding:1rem;height:100%;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.matrix-summary{margin-bottom:1rem}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.matrix-chart-section{margin-bottom:1.5rem}.matrix-chart-section h4{margin:0 0 1rem;font-size:1rem;color:var(--text-primary);font-weight:600;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.companies-count,.ramos-count{font-size:.7rem;color:var(--text-secondary);font-weight:400}.company-name{font-size:.75rem;color:var(--text-primary);font-weight:500;text-align:center;word-break:break-word;line-height:1.2}.cross-analysis{display:flex;flex-direction:column;gap:1rem}.cross-item{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:6px;padding:.75rem}.cross-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.cross-ramo{flex:1;font-size:.9rem;color:var(--text-primary);font-weight:600}.cross-total{font-size:.8rem;color:var(--text-secondary);font-weight:500}.cross-companies{display:flex;flex-direction:column;gap:.5rem}.cross-company{display:flex;align-items:center;gap:.5rem;padding:.25rem 0}.company-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0}.cross-company .company-name{flex:1;font-size:.8rem;color:var(--text-primary);text-align:left}.company-count{font-weight:600;color:var(--text-primary);font-size:.8rem}[data-theme=dark] .cross-item{background:var(--background-secondary-dark);border-color:var(--border-color-dark)}[data-theme=dark] .cross-header,[data-theme=dark] .matrix-chart-section h4{border-color:var(--border-color-dark)}@media (max-width: 1024px){.reports-layout.with-graphics{flex-direction:column}.reports-right-panel{width:100%;max-width:none;height:400px}.reports-left-panel.with-right-panel{flex:none}.summary-grid{grid-template-columns:1fr;gap:.5rem}}@media (max-width: 768px){.graphics-header{flex-direction:column;gap:.5rem;align-items:stretch}.time-view-controls{justify-content:center}.chart-container{padding:.5rem;min-height:200px}.bar-container{height:180px}.chart-bar{min-width:50px}.bar-total{width:30px}.summary-ramos{gap:.25rem}.ramo-summary{padding:.25rem}.monthly-details{gap:.5rem}.month-detail,.matrix-graphics{padding:.5rem}.cross-analysis{gap:.5rem}.cross-item{padding:.5rem}.cross-header{margin-bottom:.5rem;padding-bottom:.25rem}.cross-companies{gap:.25rem}.policy-modal-overlay{padding:10px}.policy-modal-content{max-height:90vh}.policy-details-grid{grid-template-columns:1fr}.policy-modal-header,.policy-modal-footer{padding:16px;flex-direction:column;gap:12px}}.policy-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1005;padding:20px}.policy-modal-content{background:#fff;border-radius:12px;box-shadow:0 12px 32px #0003;width:100%;max-width:900px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.policy-modal-header{padding:24px;border-bottom:1px solid #e5e7eb;background:#f8fafc;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.policy-modal-header h3{margin:0;color:#1e293b;font-size:1.5rem;font-weight:600}.policy-modal-title{display:flex;flex-direction:column;align-items:center;gap:4px}.policy-number{font-size:1.25rem;font-weight:700;color:#3b82f6}.policy-ramo{font-size:.875rem;color:#64748b;background:#e2e8f0;padding:2px 8px;border-radius:4px}.close-policy-modal-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#64748b;padding:8px;border-radius:6px;transition:all .2s}.close-policy-modal-btn:hover{background:#f1f5f9;color:#475569}.policy-modal-body{padding:24px;overflow-y:auto;flex:1}.policy-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.policy-detail-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px;transition:all .2s}.policy-detail-item:hover{background:#f1f5f9;border-color:#cbd5e1}.policy-detail-item.important{background:#dbeafe;border-color:#93c5fd}.policy-detail-item.important:hover{background:#bfdbfe}.policy-field-name{font-weight:600;color:#374151;font-size:.875rem;margin-bottom:4px;text-transform:capitalize}.policy-field-value{color:#1f2937;font-size:.95rem;word-break:break-all;white-space:pre-wrap}.policy-modal-footer{padding:20px 24px;border-top:1px solid #e5e7eb;background:#f8fafc;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.policy-modal-info{display:flex;gap:16px;color:#64748b;font-size:.875rem}.close-policy-modal-btn-footer{background:#3b82f6;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.close-policy-modal-btn-footer:hover{background:#2563eb}.clickable-row{cursor:pointer;transition:all .2s}.clickable-row:hover{background-color:#f8fafc!important;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.clickable-row:active{transform:translateY(0)}.card-actions{position:absolute;top:12px;right:12px;z-index:10}.view-details-btn{background:#3b82f6;color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.75rem;font-weight:500;transition:all .2s;opacity:0}.report-card{position:relative}.report-card:hover .view-details-btn{opacity:1}.view-details-btn:hover{background:#2563eb;transform:scale(1.05)}[data-theme=dark] .policy-modal-content{background:#1e293b}[data-theme=dark] .policy-modal-header,[data-theme=dark] .policy-modal-footer{background:#0f172a;border-color:#334155}[data-theme=dark] .policy-modal-header h3{color:#f8fafc}[data-theme=dark] .policy-detail-item{background:#334155;border-color:#475569}[data-theme=dark] .policy-detail-item:hover{background:#475569}[data-theme=dark] .policy-detail-item.important{background:#1e3a8a;border-color:#3b82f6}[data-theme=dark] .policy-field-name{color:#cbd5e1}[data-theme=dark] .policy-field-value{color:#f1f5f9}[data-theme=dark] .policy-modal-info{color:#94a3b8}[data-theme=dark] .clickable-row:hover{background-color:#334155!important}.expired-policy{background-color:#fef2f2!important;border-left:4px solid #ef4444!important}.expired-policy:hover{background-color:#fee2e2!important}.expired-indicator{display:inline-block;margin-left:.5rem;padding:.125rem .375rem;background-color:#ef4444;color:#fff;font-size:.75rem;font-weight:600;border-radius:.25rem;text-transform:uppercase;letter-spacing:.025em}.report-card.expired-policy{border-left:4px solid #ef4444;background-color:#fef2f2}.report-card.expired-policy:hover{background-color:#fee2e2}[data-theme=dark] .expired-policy{background-color:#451a03!important;border-left-color:#f59e0b!important}[data-theme=dark] .expired-policy:hover{background-color:#78350f!important}[data-theme=dark] .expired-indicator{background-color:#f59e0b;color:#451a03}[data-theme=dark] .report-card.expired-policy{background-color:#451a03;border-left-color:#f59e0b}[data-theme=dark] .report-card.expired-policy:hover{background-color:#78350f}.payment-modal{background:var(--bg-surface);border-radius:12px;box-shadow:0 25px 50px -12px #00000040;max-width:600px;width:90%;max-height:80vh;overflow:hidden;position:relative}.payment-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color);background:var(--bg-surface)}.payment-modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.payment-modal-header button{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease}.payment-modal-header button:hover{background:var(--bg-hover);color:var(--text-primary)}.payment-modal-body{padding:1.5rem;max-height:60vh;overflow-y:auto}.payment-info{margin-bottom:1.5rem;padding:1rem;background:var(--bg-hover);border-radius:8px;border:1px solid var(--border-color)}.payment-info p{margin:.5rem 0;color:var(--text-primary);font-size:.875rem}.payment-info strong{color:var(--text-primary);font-weight:600}.payment-checklist{display:flex;flex-direction:column;gap:.75rem}.payment-item{display:flex;align-items:center;gap:1rem;padding:.75rem;border-radius:8px;border:1px solid var(--border-color);transition:all .2s ease}.payment-item.paid{background:#f0fdf4;border-color:#22c55e}.payment-item.unpaid{background:#fef2f2;border-color:#ef4444}[data-theme=dark] .payment-item.paid{background:#064e3b;border-color:#10b981}[data-theme=dark] .payment-item.unpaid{background:#7f1d1d;border-color:#f87171}.payment-item input[type=checkbox]{width:1.25rem;height:1.25rem;cursor:pointer;accent-color:var(--primary-color)}.payment-item input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.payment-number{font-weight:600;color:var(--text-primary);min-width:120px}.payment-date{color:var(--text-secondary);font-size:.875rem;margin-left:auto}.payment-toggle{background:var(--primary-color);color:#000;border:none;padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease}.payment-toggle:hover{background:var(--primary-hover);transform:translateY(-1px)}.status-toggle.vencido{background:#ef4444;color:#fff}.status-toggle.activo,.status-toggle.pagado{background:#22c55e;color:#fff}.status-toggle.no-pagado{background:#ef4444;color:#fff}.status-toggle.pendiente{background:#f59e0b;color:#fff}[data-theme=dark] .status-toggle.vencido{background:#f87171}[data-theme=dark] .status-toggle.activo,[data-theme=dark] .status-toggle.pagado{background:#10b981}[data-theme=dark] .status-toggle.no-pagado{background:#f87171}[data-theme=dark] .status-toggle.pendiente{background:#fbbf24}.status-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.pagado{background:#22c55e;color:#fff}.status-badge.no-pagado{background:#ef4444;color:#fff}[data-theme=dark] .status-badge.pagado{background:#10b981}[data-theme=dark] .status-badge.no-pagado{background:#f87171}.current-payment-action{margin:1.5rem 0;padding:1rem;background:var(--bg-hover);border-radius:8px;border:1px solid var(--border-color)}.current-payment-action h4{margin:0 0 .75rem;color:var(--text-primary);font-size:1rem;font-weight:600}.current-payment-info{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.current-payment-info span{font-weight:600;color:var(--text-primary);font-size:1.1rem}.quick-action-btn{padding:.5rem 1rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.875rem}.quick-action-btn.pagado{background:#ef4444;color:#fff}.quick-action-btn.no-pagado{background:#22c55e;color:#fff}.quick-action-btn:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}[data-theme=dark] .quick-action-btn.pagado{background:#f87171}[data-theme=dark] .quick-action-btn.no-pagado{background:#10b981}.annual-payment-indicator{padding:.25rem .5rem;background:#e5e7eb;color:#374151;border-radius:4px;font-size:.75rem;font-weight:600;text-align:center;display:inline-block}.annual-status-indicator{padding:.25rem .5rem;background:#22c55e;color:#fff;border-radius:4px;font-size:.75rem;font-weight:600;text-align:center;display:inline-block}[data-theme=dark] .annual-payment-indicator{background:#4b5563;color:#d1d5db}[data-theme=dark] .annual-status-indicator{background:#10b981;color:#fff}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:#f5f5f5}.login-box{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 4px #0000001a;width:100%;max-width:400px}.header{font-size:2rem;font-weight:700;color:#030303;text-align:center}.login-box h2{margin-bottom:1.5rem;text-align:center;color:#333}input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}input:focus{outline:none;border-color:#06c}button{width:100%;padding:.75rem;background-color:#06c;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .2s}button:hover{background-color:#0052a3}button:disabled{background-color:#ccc;cursor:not-allowed}.error-message{color:#dc3545;margin-bottom:1rem;font-size:.875rem;text-align:center}.admin-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #eee;text-align:center}.admin-link{color:#666;text-decoration:none;font-size:.9rem;transition:color .2s}.admin-link:hover{color:#06c;text-decoration:underline}.google-login-section{margin-bottom:1.5rem}.google-login-btn{width:100%;padding:.75rem;background:#4285f4;color:#fff;border:none;border-radius:6px;font-size:1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:10px;font-weight:500}.google-login-btn:hover{background:#3367d6;transform:translateY(-1px);box-shadow:0 4px 8px #4285f44d}.google-login-btn:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none}.google-icon{font-size:1.2rem}.divider{margin:1.5rem 0;text-align:center;position:relative}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#ddd}.divider span{background:#fff;padding:0 1rem;color:#666;font-size:.9rem}.fallback-info{text-align:center;margin-top:1rem}.fallback-info p{color:#666;font-size:.85rem;margin:0}.user-management-container{max-width:800px;margin:2rem auto;padding:2rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.user-management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.user-management-header h1{margin:0;color:#333}.back-button{padding:.5rem 1rem;background-color:#666;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .2s}.back-button:hover{background-color:#555}.users-list{margin-bottom:2rem}.user-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid #eee;border-radius:4px;margin-bottom:.5rem}.user-email{font-size:1rem;color:#333}.delete-button{padding:.5rem 1rem;background-color:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .2s}.delete-button:hover{background-color:#c82333}.add-user-form{border-top:1px solid #eee;padding-top:2rem}.add-user-form h2{margin-bottom:1rem;color:#333}.add-user-form form{display:flex;gap:1rem}.add-user-form input{flex:1;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.add-user-form button{padding:.75rem 1.5rem;background-color:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .2s}.add-user-form button:hover{background-color:#218838}.loading{text-align:center;color:#666;padding:2rem}.error{color:#dc3545;text-align:center;padding:1rem;background-color:#f8d7da;border-radius:4px;margin-bottom:1rem}.task-card{border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #0000001a;transition:all .3s ease;border-left:4px solid;position:relative;overflow:hidden;min-height:200px;display:flex;flex-direction:column;word-wrap:break-word;word-break:break-word}.task-card.clickable{cursor:pointer}.task-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026}.task-card.dark{background-color:#2d2d2d;border-right:1px solid #404040;border-top:1px solid #404040;border-bottom:1px solid #404040;color:#fff}.task-card.light{background-color:#fff;border-right:1px solid #e9ecef;border-top:1px solid #e9ecef;border-bottom:1px solid #e9ecef;color:#333}.task-card.pending{border-left-color:#f39c12}.task-card.in_progress{border-left-color:#3498db}.task-card.completed{border-left-color:#27ae60}.task-card.cancelled{border-left-color:#e74c3c}.task-card-header{margin-bottom:1rem;flex-shrink:0}.task-title-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.task-title{margin:0;font-size:1.1rem;font-weight:600;line-height:1.3;flex:1;margin-right:.75rem;word-wrap:break-word;word-break:break-word;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.task-meta-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.status-select{padding:.35rem .6rem;border:2px solid;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;flex:1;min-width:120px;max-width:150px;transition:all .2s ease}.task-card.dark .status-select{background-color:#404040;color:#fff}.task-card.light .status-select{background-color:#f8f9fa;color:#333}.status-select:focus{outline:none;transform:scale(1.02)}.priority-badge{padding:.35rem .7rem;border-radius:16px;font-size:.75rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;flex-shrink:0}.task-description{margin-bottom:1rem;flex:1}.task-description p{margin:0;font-size:.9rem;line-height:1.4;opacity:.8;word-wrap:break-word;word-break:break-word;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.task-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;flex-shrink:0}.task-tag{padding:.25rem .5rem;border-radius:10px;font-size:.75rem;font-weight:500;white-space:nowrap;max-width:120px;overflow:hidden;text-overflow:ellipsis}.task-card.dark .task-tag{background-color:#404040;color:#fff}.task-card.light .task-tag{background-color:#e9ecef;color:#495057}.task-info{margin-bottom:1rem;flex-shrink:0}.info-item{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.9rem;opacity:.9;word-wrap:break-word;word-break:break-word}.info-item:last-child{margin-bottom:0}.info-item svg{flex-shrink:0;opacity:.7}.due-date.overdue{color:#e74c3c;font-weight:600;opacity:1}.overdue-label{background-color:#e74c3c;color:#fff;padding:.2rem .5rem;border-radius:8px;font-size:.7rem;font-weight:600;text-transform:uppercase;margin-left:.5rem}.task-footer{border-top:1px solid;padding-top:.75rem;display:flex;justify-content:space-between;align-items:center;font-size:.75rem;opacity:.6;flex-shrink:0;margin-top:auto}.task-card.dark .task-footer{border-color:#404040}.task-card.light .task-footer{border-color:#e9ecef}.created-date,.completed-date{font-weight:500}.completed-date{color:#27ae60;font-weight:600}.task-card.completed{opacity:.8}.task-card.completed .task-title{text-decoration:line-through;opacity:.7}.task-card.completed .task-description{opacity:.5}.task-card.cancelled{opacity:.6}.task-card.cancelled .task-title{text-decoration:line-through;opacity:.5}@media (max-width: 768px){.task-card{padding:1rem;min-height:180px}.task-title{font-size:1rem;margin-right:.5rem}.task-title-row{flex-direction:column;gap:.5rem}.task-meta-row{flex-direction:column;align-items:stretch;gap:.5rem}.status-select{max-width:none;min-width:auto}.priority-badge{text-align:center;align-self:flex-start}.task-description p{font-size:.85rem;-webkit-line-clamp:2}.info-item{font-size:.8rem}.task-footer{flex-direction:column;gap:.25rem;align-items:flex-start;font-size:.7rem}}@media (max-width: 480px){.task-card{padding:.875rem;min-height:160px}.task-title{font-size:.95rem}.task-description p{font-size:.8rem}.task-tag{font-size:.7rem;padding:.2rem .4rem;max-width:100px}.info-item{font-size:.75rem}}.activity-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.activity-modal-container{background-color:#fff;border-radius:12px;width:100%;max-width:700px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0000004d;border:2px solid #000000}.activity-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:2px solid #000000;background-color:#fff}.activity-modal-header h2{margin:0;font-size:1.5rem;font-weight:700;color:#000;letter-spacing:-.3px}.activity-modal-close{background:none;border:none;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;color:#000;transition:all .2s ease;border-radius:6px}.activity-modal-close:hover{background-color:#f0f0f0}.activity-modal-body{padding:1.5rem;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.activity-toolbar{display:flex;align-items:center;gap:1rem;padding-bottom:1rem;border-bottom:1px solid #e0e0e0}.toolbar-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:#fff;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:1.1rem;font-weight:700;color:#000}.toolbar-btn:hover{background-color:#000;color:#fff;border-color:#000}.toolbar-hint{font-size:.85rem;color:#666;font-weight:500}.activity-textarea{width:100%;min-height:300px;padding:1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;color:#000;background-color:#fff;resize:vertical;transition:all .3s ease}.activity-textarea:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px #0000000d}.activity-textarea::placeholder{color:#999}.activity-modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:2px solid #000000;background-color:#fff}.activity-btn-cancel,.activity-btn-save{padding:.875rem 1.75rem;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;border:2px solid #000000}.activity-btn-cancel{background-color:#fff;color:#000}.activity-btn-cancel:hover{background-color:#f0f0f0}.activity-btn-save{background-color:#000;color:#fff}.activity-btn-save:hover{background-color:#fff;color:#000;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.status-selector{display:flex;align-items:center;gap:1rem;padding:.75rem;background-color:#f8f8f8;border-radius:8px;border:1px solid #e0e0e0}.status-selector label{font-weight:600;color:#000;font-size:.95rem}.status-selector select{flex:1;padding:.5rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.95rem;background-color:#fff;color:#000;cursor:pointer;transition:all .2s ease}.status-selector select:focus{outline:none;border-color:#000}.activity-history-section{margin-top:1rem;border-top:2px solid #e0e0e0;padding-top:1rem}.history-toggle-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem 1rem;background-color:#f8f8f8;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .2s ease;font-weight:600;color:#000;font-size:.95rem}.history-toggle-btn:hover{background-color:#000;color:#fff;border-color:#000}.history-toggle-btn svg{flex-shrink:0}.activity-history-list{margin-top:1rem;display:flex;flex-direction:column;gap:.75rem;max-height:300px;overflow-y:auto;padding:.5rem;background-color:#fafafa;border-radius:8px;border:1px solid #e0e0e0}.history-entry{padding:.875rem;background-color:#fff;border:1px solid #e0e0e0;border-left:3px solid #000000;border-radius:6px}.history-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;gap:1rem}.history-action{font-weight:700;color:#000;font-size:.9rem}.history-date{font-size:.8rem;color:#666;white-space:nowrap}.history-changes{margin-top:.5rem;padding:.5rem;background-color:#f8f8f8;border-radius:4px;font-size:.85rem}.history-change-item{color:#333;margin:.25rem 0}.history-change-item strong{color:#000}.history-user{margin-top:.5rem;font-size:.8rem;color:#666;font-style:italic}@media (max-width: 768px){.activity-modal-container{max-width:95%;max-height:95vh}.activity-modal-header h2{font-size:1.25rem}.activity-modal-body{padding:1rem}.activity-textarea{min-height:250px;font-size:.95rem}.toolbar-hint{display:none}.activity-modal-footer{padding:1rem;flex-direction:column-reverse}.activity-btn-cancel,.activity-btn-save{width:100%}.history-entry-header{flex-direction:column;align-items:flex-start;gap:.25rem}}@media (max-width: 480px){.activity-modal-overlay{padding:.5rem}.activity-modal-header{padding:1rem}.activity-modal-header h2{font-size:1.1rem}.activity-textarea{min-height:200px;padding:.875rem}.toolbar-btn{width:36px;height:36px}}.firebase-tasks-container{padding:2rem;max-width:1400px;margin:0 auto;min-height:100vh;background-color:#fff;color:#000}.tasks-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:3px solid #000000}.header-left h1{margin:0;font-size:2.5rem;font-weight:700;color:#000;letter-spacing:-.5px}.header-left p{margin:.5rem 0 0;font-size:1rem;color:#666;font-weight:500}.create-task-btn{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;background-color:#000;color:#fff;border:2px solid #000000;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1rem}.create-task-btn:hover{background-color:#fff;color:#000;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.filters-row{display:flex;gap:1rem;margin-bottom:2rem;align-items:center;flex-wrap:wrap}.search-box{position:relative;flex:1;min-width:300px}.search-box svg{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#666}.search-box input{width:100%;padding:.875rem 1rem .875rem 2.75rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;background-color:#fff;color:#000;transition:all .3s ease}.search-box input:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px #0000000d}.search-box input::placeholder{color:#999}.filter-select{padding:.875rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;min-width:180px;cursor:pointer;background-color:#fff;color:#000;font-weight:500;transition:all .3s ease}.filter-select:hover{border-color:#000}.filter-select:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px #0000000d}.tasks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;align-items:stretch}.no-tasks{grid-column:1 / -1;text-align:center;padding:5rem 2rem;background-color:#f8f8f8;border-radius:12px;border:2px dashed #cccccc}.no-tasks svg{margin-bottom:1.5rem;color:#666}.no-tasks p{font-size:1.25rem;margin-bottom:2rem;color:#666;font-weight:500}.create-first-task-btn{padding:1rem 2rem;background-color:#000;color:#fff;border:2px solid #000000;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1.1rem}.create-first-task-btn:hover{background-color:#fff;color:#000;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem}.spinner{width:50px;height:50px;border:4px solid #e0e0e0;border-top:4px solid #000000;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}.loading-spinner p{color:#666;font-size:1.1rem;font-weight:500}.error-message{text-align:center;padding:5rem 2rem;background-color:#f8f8f8;border-radius:12px;border:2px solid #e0e0e0}.error-message h3{color:#000;margin-bottom:1rem;font-size:1.5rem;font-weight:700}.error-message p{color:#666;font-size:1rem}.retry-button{padding:.875rem 1.75rem;background-color:#000;color:#fff;border:2px solid #000000;border-radius:8px;cursor:pointer;margin-top:1.5rem;font-weight:600;transition:all .3s ease}.retry-button:hover{background-color:#fff;color:#000;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.users-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;padding:2rem 0}.user-card{display:flex;align-items:center;gap:1.25rem;padding:1.5rem;background-color:#fff;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .3s ease}.user-card:hover{border-color:#000;transform:translateY(-3px);box-shadow:0 6px 20px #0000001f}.user-avatar{width:60px;height:60px;border-radius:50%;background-color:#000;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;flex-shrink:0}.user-info-card{flex:1}.user-info-card h3{margin:0 0 .25rem;font-size:1.25rem;font-weight:700;color:#000}.user-info-card p{margin:0;font-size:.9rem;color:#666}.arrow-icon{color:#000;transition:transform .3s ease}.user-card:hover .arrow-icon{transform:translate(5px)}.back-button{background:none;border:2px solid #e0e0e0;border-radius:8px;padding:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-right:1rem;transition:all .3s ease;color:#000}.back-button:hover{background-color:#000;border-color:#000;color:#fff}.header-left{display:flex;align-items:center;gap:0}.header-left>div{display:flex;flex-direction:column}.activities-list{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;padding:2rem 0}@media (max-width: 1400px){.activities-list{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1024px){.activities-list{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.activities-list{grid-template-columns:1fr}}.activity-item{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;background-color:#fff;border:2px solid #e0e0e0;border-left:4px solid #000000;border-radius:8px;transition:all .3s ease;height:100%;position:relative}.activity-item.status-pending{border-left-color:#999}.activity-item.status-in_progress{border-left-color:#000}.activity-item.status-completed{border-left-color:#666;background-color:#fafafa;opacity:.85}.activity-item.status-cancelled{border-left-color:#ccc;background-color:#f9f9f9;opacity:.7}.activity-item:hover{border-color:#000;transform:translateY(-3px);box-shadow:0 8px 20px #0000001f}.activity-header-section{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.activity-status-section{display:flex;align-items:center;gap:.75rem}.status-badge{padding:.4rem .75rem;border-radius:4px;font-size:.8rem;font-weight:600;border:none;cursor:pointer;transition:all .2s ease;white-space:nowrap;text-transform:uppercase;letter-spacing:.5px}.status-badge.status-pending{background-color:#f5f5f5;color:#666;border:2px solid #999999}.status-badge.status-pending:hover{background-color:#999;color:#fff}.status-badge.status-in_progress{background-color:#000;color:#fff;border:2px solid #000000}.status-badge.status-in_progress:hover{background-color:#333}.status-badge.status-completed{background-color:#666;color:#fff;border:2px solid #666666}.status-badge.status-completed:hover{background-color:#888}.status-badge.status-cancelled{background-color:#f5f5f5;color:#999;border:2px solid #cccccc;text-decoration:line-through}.status-badge.status-cancelled:hover{background-color:#e0e0e0}.activity-dates{display:flex;flex-direction:column;gap:.4rem;align-items:flex-end}.activity-date-badge{background-color:#000;color:#fff;padding:.4rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;white-space:nowrap;text-align:center;display:flex;align-items:center;gap:.4rem}.activity-date-badge.created{background-color:#000}.activity-date-badge.updated{background-color:#666}.activity-date-badge .date-label{font-size:.65rem;opacity:.8;font-weight:500}.activity-content{flex:1}.activity-content h3{margin:0 0 .5rem;font-size:1.1rem;font-weight:700;color:#000;line-height:1.4;transition:all .2s ease}.activity-content h3.completed-text{text-decoration:line-through;color:#666}.activity-content p{margin:0;font-size:.95rem;color:#666;line-height:1.6;transition:all .2s ease}.activity-content p.completed-text{text-decoration:line-through;color:#999}.activity-clickable-area{flex:1;cursor:pointer;display:flex;flex-direction:column;gap:1rem}.activity-actions{display:flex;gap:.5rem;margin-top:auto}.activity-delete-btn{width:100%;background:none;border:2px solid #e0e0e0;border-radius:6px;padding:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#666;transition:all .3s ease;font-size:.85rem;gap:.5rem}.activity-delete-btn:hover{background-color:#dc3545;border-color:#dc3545;color:#fff}.no-activities{text-align:center;padding:5rem 2rem;background-color:#f8f8f8;border-radius:12px;border:2px dashed #cccccc}.no-activities svg{margin-bottom:1.5rem;color:#666}.no-activities p{font-size:1.25rem;margin-bottom:2rem;color:#666;font-weight:500}.create-first-activity-btn{padding:1rem 2rem;background-color:#000;color:#fff;border:2px solid #000000;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1.1rem}.create-first-activity-btn:hover{background-color:#fff;color:#000;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}@media (max-width: 1200px){.tasks-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}.users-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.25rem}}@media (max-width: 768px){.firebase-tasks-container{padding:1.5rem}.tasks-header{flex-direction:column;gap:1rem;align-items:stretch}.header-left{flex-direction:row;align-items:center}.header-left h1{font-size:1.75rem}.create-task-btn{width:100%;justify-content:center}.users-grid{grid-template-columns:1fr;gap:1rem}.user-card{padding:1.25rem}.user-avatar{width:50px;height:50px;font-size:1.25rem}.activity-item{flex-direction:column;gap:1rem}.activity-date-badge{align-self:flex-start}.filters-row{flex-direction:column;align-items:stretch;gap:.75rem}.search-box,.filter-select{min-width:auto}.tasks-grid{grid-template-columns:1fr;gap:1rem}}@media (max-width: 480px){.firebase-tasks-container{padding:1rem}.header-left h1{font-size:1.75rem}.create-task-btn{padding:.75rem 1.5rem;font-size:.95rem}.search-box input{padding:.75rem .875rem .75rem 2.5rem;font-size:.95rem}.filter-select{padding:.75rem .875rem;font-size:.95rem}.no-tasks{padding:3rem 1.5rem}.no-tasks p{font-size:1.1rem}.create-first-task-btn{padding:.875rem 1.75rem;font-size:1rem}}.team-setup{min-height:100vh;background:linear-gradient(135deg,#f8faff,#e8f4f8,#f0f8ff);display:flex;align-items:center;justify-content:center;padding:2rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.setup-container{width:100%;max-width:700px}.setup-card{background:#fff;border-radius:20px;box-shadow:0 20px 50px #00000014;overflow:hidden;animation:slideUp .6s ease-out;border:1px solid rgba(255,255,255,.3)}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.welcome-card{text-align:center;padding:3rem 2.5rem}.welcome-header h1{color:#1a202c;font-size:2.75rem;font-weight:800;margin:0 0 .5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.025em}.welcome-header p{color:#4a5568;font-size:1.2rem;margin:0 0 .5rem;font-weight:500}.auth-success{color:#38a169!important;font-weight:600!important;font-size:1rem!important;margin:0 0 2.5rem!important;display:flex;align-items:center;justify-content:center;gap:.5rem;background:linear-gradient(135deg,#f0fff4,#e6fffa);padding:1rem 1.5rem;border-radius:12px;border:1px solid #c6f6d5;box-shadow:0 4px 12px #38a1691a}.welcome-icon{font-size:4.5rem;margin-bottom:1.5rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.welcome-content h2{color:#1a202c;font-size:1.875rem;font-weight:700;margin:0 0 1rem;letter-spacing:-.025em}.welcome-description{color:#4a5568;font-size:1.125rem;margin:0 0 2.5rem;line-height:1.7}.welcome-description strong{color:#2d3748;font-weight:600}.features-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:2.5rem 0;text-align:left}.feature-item{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-radius:16px;border:1px solid #e2e8f0;transition:all .3s ease;position:relative;overflow:hidden}.feature-item:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(135deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .3s ease}.feature-item:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000001f;border-color:#cbd5e0}.feature-item:hover:before{transform:scaleX(1)}.feature-icon{font-size:1.5rem;margin-top:.25rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.feature-content strong{color:#1a202c;font-size:.95rem;font-weight:600;display:block;margin-bottom:.5rem}.feature-content p{color:#4a5568;font-size:.875rem;line-height:1.5;margin:0}.welcome-actions{margin:3rem 0 2rem}.btn-large{padding:1rem 2.5rem!important;font-size:1.125rem!important;font-weight:600!important;border-radius:12px!important;min-height:56px!important;display:inline-flex!important;align-items:center!important;gap:.75rem!important}.btn-debug{margin-top:1rem;background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-debug:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ff6b6b4d}.user-info-section{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #e2e8f0;border-radius:16px;padding:2rem;margin:2.5rem 0;text-align:left;box-shadow:0 4px 12px #0000000d}.user-info-section h3{margin:0 0 1.5rem;color:#1a202c;font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.user-details{display:flex;flex-direction:column;gap:1rem}.user-detail{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#fff;border-radius:12px;border:1px solid #e2e8f0;transition:all .2s ease}.user-detail:hover{border-color:#cbd5e0;box-shadow:0 2px 8px #0000000d}.detail-label{color:#4a5568;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.detail-value{color:#1a202c;font-weight:500;text-align:right}.admin-role{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.welcome-note{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:1px solid #bbdefb;border-radius:16px;padding:1.5rem;margin-top:2rem}.note-content{display:flex;align-items:flex-start;gap:1rem}.note-icon{font-size:1.25rem;margin-top:.125rem}.note-content div{color:#1565c0;font-size:.875rem;line-height:1.6}.note-content strong{color:#0d47a1}.error-message{background:linear-gradient(135deg,#ffebee,#fce4ec);border:1px solid #f8bbd9;border-radius:12px;padding:1rem 1.5rem;margin:1rem 0;color:#c62828;display:flex;align-items:center;gap:.75rem;font-weight:500}.error-icon{font-size:1.25rem}.create-card{max-width:750px}.setup-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2.5rem;text-align:center;position:relative;overflow:hidden}.setup-header:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:shimmer 3s ease-in-out infinite}@keyframes shimmer{0%,to{transform:translate(-100%) translateY(-100%) rotate(0)}50%{transform:translate(0) translateY(0) rotate(180deg)}}.header-icon{font-size:3.5rem;margin-bottom:1rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2))}.setup-header h1{margin:0 0 .75rem;font-size:2.25rem;font-weight:700;letter-spacing:-.025em;position:relative;z-index:1}.header-description{margin:0;opacity:.95;font-size:1.125rem;line-height:1.6;position:relative;z-index:1}.setup-form{padding:2.5rem}.form-section{margin-bottom:2.5rem}.form-group{margin-bottom:1.5rem}.form-label{display:flex;align-items:center;gap:.5rem;color:#1a202c;font-weight:600;font-size:1rem;margin-bottom:.75rem}.label-icon{font-size:1.125rem}.form-input-large{width:100%;padding:1rem 1.25rem;font-size:1.125rem;border:2px solid #e2e8f0;border-radius:12px;outline:none;transition:all .3s ease;background:#fafafa;font-weight:500}.form-input-large:focus{border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a;transform:translateY(-1px)}.form-feedback{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem}.form-hint{display:flex;align-items:center;gap:.5rem;color:#4a5568;font-size:.875rem;line-height:1.5}.hint-icon{font-size:1rem}.char-counter{color:#718096;font-size:.75rem;font-weight:500;padding:.25rem .5rem;background:#edf2f7;border-radius:6px}.benefits-section{margin:2.5rem 0;padding:2rem;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-radius:16px;border:1px solid #e2e8f0}.benefits-section h3{color:#1a202c;font-size:1.25rem;font-weight:700;margin:0 0 1.5rem;text-align:center}.benefits-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.benefit-item{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;background:#fff;border-radius:12px;border:1px solid #e2e8f0;transition:all .3s ease}.benefit-item:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000014;border-color:#667eea}.benefit-icon{font-size:1.5rem;margin-top:.125rem}.benefit-content strong{color:#1a202c;font-size:.95rem;font-weight:600;display:block;margin-bottom:.5rem}.benefit-content p{color:#4a5568;font-size:.825rem;line-height:1.5;margin:0}.form-actions{display:flex;gap:1rem;justify-content:space-between;align-items:center;margin:2.5rem 0 1.5rem}.form-note{margin-top:2rem}.note-box{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:1px solid #ffecb5;border-radius:12px}.note-text{color:#856404;font-size:.875rem;line-height:1.6}.note-text strong{color:#533f03}.btn-primary,.btn-secondary{padding:.875rem 1.75rem;border:none;border-radius:10px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;min-height:48px;justify-content:center}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea4d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.btn-create{flex:1;font-size:1.125rem!important;padding:1rem 2rem!important}.btn-secondary{background:#fff;color:#4a5568;border:2px solid #e2e8f0}.btn-secondary:hover:not(:disabled){background:#f7fafc;border-color:#cbd5e0;transform:translateY(-1px)}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-icon{font-size:1.125rem}@media (max-width: 768px){.team-setup{padding:1rem}.welcome-card,.create-card,.setup-form,.setup-header{padding:2rem 1.5rem}.welcome-header h1{font-size:2.25rem}.setup-header h1{font-size:1.875rem}.form-actions{flex-direction:column-reverse;gap:.75rem}.form-actions button{width:100%}.features-grid,.benefits-grid{grid-template-columns:1fr;gap:1rem}.feature-item,.benefit-item{padding:1rem}.user-details{gap:.75rem}.user-detail{flex-direction:column;align-items:flex-start;gap:.5rem;text-align:left}.detail-value{text-align:left}.member-inputs{grid-template-columns:1fr;gap:1rem}.member-input-group{flex-direction:column;align-items:stretch}.remove-member-btn{align-self:center;margin-top:1rem}}.members-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.members-counter{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;letter-spacing:.025em}.admin-member{margin-bottom:2rem}.member-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.25rem;transition:all .3s ease}.admin-card{background:linear-gradient(135deg,#fff5f5,#ffeee6);border-color:#f6ad55;position:relative;overflow:hidden}.admin-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#f6ad55,#ed8936)}.member-info{display:flex;align-items:center;gap:1rem}.member-icon{font-size:2rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.member-details{display:flex;flex-direction:column;gap:.25rem}.member-details strong{color:#1a202c;font-size:1rem;font-weight:600}.member-email{color:#4a5568;font-size:.875rem}.member-role{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;width:fit-content;margin-top:.25rem}.team-members-list{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.member-input-group{display:flex;align-items:flex-end;gap:1rem;padding:1.5rem;background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:16px;transition:all .3s ease;position:relative}.member-input-group:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #0000000d}.member-inputs{flex:1;display:grid;grid-template-columns:1.5fr 1fr;gap:1.5rem}.input-label{display:flex;align-items:center;gap:.5rem;color:#1a202c;font-weight:600;font-size:.875rem}.member-input{padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:10px;font-size:.95rem;transition:all .3s ease;background:#fff;font-weight:500}.member-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;transform:translateY(-1px)}.member-input::placeholder{color:#a0aec0;font-weight:400}.remove-member-btn{background:none;border:none;font-size:1.25rem;cursor:pointer;padding:.5rem;border-radius:8px;transition:all .2s ease;opacity:.6;margin-bottom:1.5rem}.remove-member-btn:hover{opacity:1;background:#ff6b6b1a;transform:scale(1.1)}.members-actions{display:flex;flex-direction:column;gap:1rem;align-items:center}.btn-add-member{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;border:none;padding:.875rem 1.5rem;border-radius:10px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;box-shadow:0 4px 15px #48bb784d}.btn-add-member:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #48bb7866}.btn-add-member:disabled{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:none!important}.members-hint{display:flex;align-items:center;gap:.5rem;color:#4a5568;font-size:.875rem;text-align:center;font-style:italic}.logout-section{margin-top:2rem;padding-top:2rem;border-top:1px solid #e2e8f0;text-align:center}.btn-logout{background:#dc3545;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.5rem}.btn-logout:hover{background:#c82333;transform:translateY(-1px);box-shadow:0 4px 12px #dc35454d}.btn-logout:active{transform:translateY(0)}.logout-help{margin-top:.5rem;font-size:.8rem;color:#6c757d;font-style:italic}.team-management{max-width:1200px;margin:0 auto;padding:2rem;background:#f8faff;min-height:100vh}.team-header{text-align:center;margin-bottom:3rem;padding:2rem 0}.team-header h1{color:#1a202c;font-size:2.5rem;font-weight:700;margin:0 0 .5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.team-header p{color:#4a5568;font-size:1.125rem;margin:0;font-weight:500}.access-denied{text-align:center;padding:4rem 2rem;background:#fff3cd;border:1px solid #ffd700;border-radius:16px;margin:2rem 0}.access-denied h2{color:#b45309;margin:0 0 1rem}.access-denied p{color:#b45309;margin:0}.invite-section{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:2.5rem;margin-bottom:2rem;box-shadow:0 10px 40px #00000014}.invite-section h2{color:#2d3748;font-size:1.75rem;font-weight:600;margin:0 0 1.5rem;display:flex;align-items:center;gap:.5rem}.invite-form .form-group{display:flex;gap:1rem;margin-bottom:1rem}.email-input{flex:1;padding:1rem 1.25rem;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;transition:all .2s ease;background:#fff;color:#2d3748}.email-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.invite-btn{padding:1rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;min-width:140px;justify-content:center}.invite-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.invite-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-hint{color:#4a5568;font-size:.875rem;line-height:1.4;margin-top:.5rem}.members-section{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:2.5rem;margin-bottom:2rem;box-shadow:0 10px 40px #00000014}.members-section h2{color:#2d3748;font-size:1.75rem;font-weight:600;margin:0 0 1.5rem;display:flex;align-items:center;gap:.5rem}.no-members{text-align:center;padding:2rem;color:#4a5568;background:#f7fafc;border-radius:12px;border:1px dashed #e2e8f0}.members-list{display:grid;gap:1rem}.member-card{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px;transition:all .2s ease}.member-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.member-info{display:flex;align-items:center;gap:1rem;flex:1}.member-avatar{width:48px;height:48px;background:#e6f3ff;border:2px solid #667eea;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.member-details{flex:1;min-width:0}.member-name{font-weight:600;color:#2d3748;font-size:1.125rem;margin-bottom:.25rem;display:flex;align-items:center;gap:.5rem}.you-badge{background:#38a169;color:#fff;font-size:.75rem;padding:.125rem .375rem;border-radius:6px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.member-email{color:#4a5568;font-size:.875rem;margin-bottom:.5rem;word-break:break-word}.member-meta{display:flex;gap:1rem;align-items:center}.member-role{background:#667eea;color:#fff;font-size:.75rem;padding:.25rem .5rem;border-radius:6px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.member-status{display:flex;align-items:center;gap:.25rem;font-size:.875rem;color:#4a5568}.member-actions{display:flex;gap:.5rem}.remove-btn{padding:.5rem;background:#e53e3e;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:1rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.remove-btn:hover:not(:disabled){background:#c53030;transform:scale(1.05)}.remove-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.team-info{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:2.5rem;box-shadow:0 10px 40px #00000014}.team-info h2{color:#2d3748;font-size:1.75rem;font-weight:600;margin:0 0 1.5rem;display:flex;align-items:center;gap:.5rem}.info-grid{display:grid;gap:1rem}.info-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f7fafc;border-radius:12px;border:1px solid #e2e8f0}.info-item strong{color:#2d3748;font-weight:600}.info-item code{background:#f1f5f9;color:#667eea;padding:.25rem .5rem;border-radius:6px;font-family:Monaco,Menlo,monospace;font-size:.875rem}@media (max-width: 768px){.team-management{padding:1rem}.invite-section,.members-section,.team-info{padding:1.5rem}.team-header h1{font-size:2rem}.invite-form .form-group{flex-direction:column}.member-card{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem}.member-info{width:100%}.member-actions{width:100%;justify-content:flex-end}.member-meta,.info-item{flex-direction:column;align-items:flex-start;gap:.5rem}}.team-firebase-viewer{max-width:1400px;margin:0 auto;padding:2rem;background:#f8faff;min-height:100vh}.viewer-header{text-align:center;margin-bottom:3rem;padding:2rem 0}.viewer-header h1{color:#1a202c;font-size:2.5rem;font-weight:700;margin:0 0 .5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.viewer-header p{color:#4a5568;font-size:1.125rem;margin:0;font-weight:500}.config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}.config-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:2rem;box-shadow:0 10px 40px #00000014;transition:all .2s ease}.config-card:hover{transform:translateY(-2px);box-shadow:0 15px 50px #0000001f}.config-card h2{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem;display:flex;align-items:center;gap:.5rem}.info-grid{display:flex;flex-direction:column;gap:1rem}.info-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid #e2e8f0}.info-item:last-child{border-bottom:none}.info-item strong{color:#2d3748;font-weight:600;min-width:120px}.info-item span{color:#4a5568;font-weight:500}.info-item code{background:#f1f5f9;color:#667eea;padding:.25rem .5rem;border-radius:6px;font-family:Monaco,Menlo,monospace;font-size:.875rem;font-weight:500}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.success{background:#f0fff4;color:#38a169;border:1px solid #c6f6d5}.loading-state{text-align:center;padding:2rem;color:#4a5568;font-style:italic}.refresh-btn,.test-btn{margin-top:1.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;justify-content:center;width:100%}.refresh-btn:hover:not(:disabled),.test-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.refresh-btn:disabled,.test-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.test-result{margin-top:1.5rem;padding:1.5rem;border-radius:12px;border:2px solid}.test-result.success{background:#f0fff4;border-color:#c6f6d5}.test-result.error{background:#fff5f5;border-color:#fed7d7}.result-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.result-icon{font-size:1.5rem}.test-result.success .result-header strong{color:#38a169}.test-result.error .result-header strong{color:#e53e3e}.test-result p{margin:0 0 1rem;color:#4a5568;line-height:1.6}.result-details{background:#fffc;padding:1rem;border-radius:8px;border:1px solid rgba(0,0,0,.1)}.result-details h4{margin:0 0 .75rem;color:#2d3748;font-size:1rem}.config-details{display:flex;flex-direction:column;gap:.5rem}.config-details div{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.875rem}.config-details strong{color:#2d3748;min-width:120px}.development-notes{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:1px solid #cbd5e0}.development-notes h2{color:#1a202c}.note-list{display:flex;flex-direction:column;gap:1.5rem}.note-item{padding:1rem;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.note-item strong{display:block;color:#2d3748;font-weight:600;margin-bottom:.5rem}.note-item p{margin:0;color:#4a5568;line-height:1.5}.note-item code{background:#f1f5f9;color:#667eea;padding:.125rem .25rem;border-radius:4px;font-family:Monaco,Menlo,monospace;font-size:.875rem}.no-team{text-align:center;padding:4rem 2rem;background:#fff;border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 10px 40px #00000014}.no-team h2{color:#2d3748;margin:0 0 1rem}.no-team p{color:#4a5568;margin:0}.spinner{animation:spin 1s linear infinite}@media (max-width: 1200px){.config-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}}@media (max-width: 768px){.team-firebase-viewer{padding:1rem}.viewer-header{margin-bottom:2rem;padding:1rem 0}.viewer-header h1{font-size:2rem}.config-grid{grid-template-columns:1fr;gap:1.5rem}.config-card{padding:1.5rem}.info-item{flex-direction:column;align-items:flex-start;gap:.5rem}.info-item strong{min-width:auto}.config-details div{flex-direction:column;align-items:flex-start;gap:.25rem}.config-details strong{min-width:auto}}.team-data-demo{max-width:1200px;margin:0 auto;padding:2rem;background:#f8faff;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.demo-header{text-align:center;margin-bottom:2rem;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:16px;box-shadow:0 10px 30px #667eea4d}.demo-header h1{margin:0 0 .5rem;font-size:2.25rem;font-weight:700;letter-spacing:-.025em}.demo-header p{margin:0;opacity:.95;font-size:1.125rem}.demo-tabs{display:flex;gap:.5rem;margin-bottom:2rem;background:#fff;padding:.5rem;border-radius:12px;box-shadow:0 4px 12px #0000000d}.demo-tabs button{flex:1;padding:1rem 1.5rem;border:none;background:transparent;color:#4a5568;font-weight:600;font-size:.95rem;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.demo-tabs button:hover{background:#f7fafc;color:#1a202c}.demo-tabs button.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.demo-content{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 12px #0000000d}.demo-section h2{color:#1a202c;font-size:1.75rem;font-weight:700;margin:0 0 1.5rem;display:flex;align-items:center;gap:.5rem}.form-section{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:16px;padding:2rem;margin-bottom:2rem}.form-section h3{color:#1a202c;font-size:1.25rem;font-weight:700;margin:0 0 1.5rem;display:flex;align-items:center;gap:.5rem}.invite-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-group label{display:flex;align-items:center;gap:.5rem;color:#1a202c;font-weight:600;font-size:.875rem}.input-icon{font-size:1rem}.input-group input{padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:10px;font-size:.95rem;transition:all .3s ease;background:#fff;font-weight:500}.input-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;transform:translateY(-1px)}.input-hint{color:#4a5568;font-size:.75rem;font-style:italic}.btn-invite{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;box-shadow:0 4px 15px #48bb784d}.btn-invite:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #48bb7866}.btn-invite:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.users-section{margin-top:2rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h3{color:#1a202c;font-size:1.25rem;font-weight:700;margin:0;display:flex;align-items:center;gap:.5rem}.admin-badge{padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;background:linear-gradient(135deg,#e3f2fd,#f3e5f5);color:#1565c0;border:1px solid #bbdefb}.users-list{display:flex;flex-direction:column;gap:1rem}.user-card{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:16px;transition:all .3s ease}.user-info{display:flex;align-items:center;gap:1rem;flex:1}.user-avatar{font-size:2rem;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid #e2e8f0;border-radius:50%;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.user-details h4{color:#1a202c;font-size:1.125rem;font-weight:700;margin:0 0 .25rem}.user-email{color:#4a5568;font-size:.875rem;margin:0 0 .5rem}.user-meta{display:flex;gap:.75rem;margin-bottom:.5rem}.invited-by{color:#718096;font-size:.75rem;margin:0;font-style:italic}.user-actions{display:flex;gap:.5rem}.remove-user-btn{background:linear-gradient(135deg,#fc8181,#f56565);color:#fff;border:none;padding:.75rem 1rem;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.remove-user-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #fc81814d}.admin-notice{text-align:center;padding:1.5rem;background:linear-gradient(135deg,#fef5e7,#fed7aa);border:1px solid #fbb6ce;border-radius:12px;margin-top:2rem}.admin-notice p{color:#744210;font-weight:500;margin:0}.empty-state{text-align:center;padding:3rem 2rem;color:#4a5568}.empty-state p{margin:.5rem 0}.loading{text-align:center;padding:2rem;color:#4a5568;font-style:italic}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:16px;padding:1.5rem;text-align:center;transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000014;border-color:#cbd5e0}.stat-card h3{color:#4a5568;font-size:.875rem;font-weight:600;margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.05em}.stat-number{color:#1a202c;font-size:2.5rem;font-weight:700;margin:.25rem 0}.demo-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.demo-actions button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.875rem 1.5rem;border-radius:10px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.demo-actions button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.demo-actions button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}@media (max-width: 768px){.team-data-demo{padding:1rem}.demo-header{padding:1.5rem}.demo-header h1{font-size:1.875rem}.demo-tabs{flex-direction:column;gap:.25rem}.demo-content{padding:1.5rem}.invite-form .form-grid{grid-template-columns:1fr;gap:1rem}.user-card{flex-direction:column;align-items:stretch;gap:1rem}.user-info{flex-direction:column;text-align:center}.user-meta{justify-content:center}.section-header{flex-direction:column;gap:1rem;text-align:center}.stats-grid{grid-template-columns:1fr}.demo-actions{flex-direction:column}}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}.permission-notice{background:linear-gradient(135deg,#fff3cd,#fef5e7);border:1px solid #fdd835;border-radius:12px;padding:1.5rem;margin-bottom:2rem;text-align:center}.permission-notice h3{color:#f57f17;margin:0 0 1rem;font-size:1.25rem}.permission-notice p{color:#bf8f00;margin:.5rem 0;line-height:1.5}.permission-notice p:last-child{margin-bottom:0;font-weight:500}.config-info{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:16px;padding:1.5rem;margin-bottom:1.5rem}.config-info h3{color:#1a202c;font-size:1.25rem;font-weight:700;margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.config-details{display:grid;gap:.75rem}.config-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.config-item strong{color:#1a202c;font-weight:600}.collections-list{display:grid;gap:.75rem;max-height:400px;overflow-y:auto;padding-right:.5rem}.collection-item{display:grid;grid-template-columns:2fr 2fr 1fr;gap:1rem;align-items:center;padding:1rem;background:#fff;border:1px solid #e2e8f0;border-radius:12px;transition:all .2s ease}.collection-item:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a;transform:translateY(-1px)}.collection-name{font-family:JetBrains Mono,Fira Code,monospace;font-size:.875rem;font-weight:600;color:#1a202c;display:flex;align-items:center;gap:.5rem}.collection-desc{color:#4a5568;font-size:.875rem;font-weight:500}.collection-count{text-align:right}.count-badge{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;display:inline-block}.empty-badge{background:linear-gradient(135deg,#cbd5e0,#a0aec0);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;display:inline-block}.collections-summary{margin-top:1rem;padding:1rem;background:#fff;border-radius:8px;border-left:4px solid #667eea}.collections-summary p{margin:0;color:#1a202c;font-size:.875rem}.config-actions{display:flex;gap:1rem;flex-wrap:wrap}.action-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:10px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 8px #667eea4d}.action-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #667eea66}.action-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.members-list{display:grid;gap:.5rem}.member-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem}.data-migration{background:linear-gradient(135deg,#f8faff,#e8f4f8,#f0f8ff);min-height:100vh;padding:2rem}.migration-header{text-align:center;margin-bottom:3rem}.migration-header h1{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.migration-header p{color:#4a5568;font-size:1.2rem}.migration-step{max-width:1000px;margin:0 auto;background:#fff;border-radius:16px;padding:2.5rem;box-shadow:0 10px 40px #00000014}.migration-step h2{color:#1a202c;font-size:1.8rem;font-weight:600;margin-bottom:1.5rem;border-bottom:2px solid #e2e8f0;padding-bottom:.5rem}.step-content{display:flex;flex-direction:column;gap:1.5rem}.warning-box{background:#fef3e6;border:1px solid #f6ad55;border-radius:12px;padding:1.5rem;border-left:4px solid #f6ad55}.warning-box h3{color:#744210;font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.warning-box ul{color:#744210;margin:0;padding-left:1.5rem}.warning-box li{margin-bottom:.25rem}.btn-primary,.btn-secondary,.btn-outline{padding:.75rem 1.5rem;border-radius:12px;font-weight:500;cursor:pointer;transition:all .3s ease;font-size:1rem;border:none;min-width:160px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-secondary{background:#e2e8f0;color:#4a5568;border:1px solid #cbd5e0}.btn-secondary:hover:not(:disabled){background:#cbd5e0;transform:translateY(-1px)}.btn-outline{background:transparent;color:#667eea;border:1px solid #667eea}.btn-outline:hover{background:#667eea;color:#fff}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none}.analysis-results{display:flex;flex-direction:column;gap:2rem}.stats-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.stat{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;text-align:center}.stat-number{display:block;font-size:2.5rem;font-weight:700;color:#1a202c;margin-bottom:.25rem}.stat-label{color:#718096;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.collections-list{background:#f7fafc;border-radius:12px;padding:1.5rem}.collections-list h3{color:#2d3748;font-size:1.2rem;margin-bottom:1rem}.collection-row{display:grid;grid-template-columns:2fr 100px 3fr;gap:1rem;padding:.75rem;background:#fff;border-radius:8px;margin-bottom:.5rem;border:1px solid #e2e8f0}.collection-name{font-family:Courier New,monospace;font-weight:600;color:#4a5568}.collection-count{background:#667eea;color:#fff;padding:.25rem .5rem;border-radius:6px;font-size:.875rem;text-align:center;font-weight:500}.collection-fields{font-size:.875rem;color:#718096;font-style:italic}.migration-plan{background:#f0fff4;border:1px solid #9ae6b4;border-radius:12px;padding:1.5rem;border-left:4px solid #48bb78}.migration-plan h3{color:#2f855a;margin-bottom:1rem}.plan-details h4{color:#2f855a;font-size:1.1rem;margin-bottom:.75rem}.migration-mapping{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:#fff;border-radius:8px;margin-bottom:.5rem;border:1px solid #c6f6d5}.source{font-family:Courier New,monospace;background:#edf2f7;padding:.25rem .5rem;border-radius:4px;font-size:.875rem;min-width:150px}.arrow{color:#48bb78;font-weight:700;font-size:1.2rem}.target{font-family:Courier New,monospace;background:#c6f6d5;padding:.25rem .5rem;border-radius:4px;font-size:.875rem;flex:1}.count{color:#718096;font-size:.875rem}.step-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem;flex-wrap:wrap}.migration-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin:1.5rem 0}.option{background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;text-align:center}.option h4{color:#2d3748;margin-bottom:.5rem}.option p{color:#718096;margin-bottom:1rem;font-size:.95rem}.completion-info{display:flex;flex-direction:column;gap:2rem}.success-message{background:#f0fff4;border:1px solid #9ae6b4;border-radius:12px;padding:1.5rem;text-align:center;border-left:4px solid #48bb78}.success-message h3{color:#2f855a;margin-bottom:.5rem}.success-message p{color:#276749}.results-summary,.next-steps{background:#f7fafc;border-radius:12px;padding:1.5rem}.results-summary h4,.next-steps h4{color:#2d3748;margin-bottom:1rem}.results-summary ul,.next-steps ol{color:#4a5568;margin:0;padding-left:1.5rem}.results-summary li,.next-steps li{margin-bottom:.5rem}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.loading-spinner{background:#fff;padding:2rem;border-radius:16px;text-align:center;box-shadow:0 20px 60px #0000004d}.spinner{width:40px;height:40px;border:4px solid #e2e8f0;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.loading-spinner p{color:#4a5568;font-weight:500;margin:0}@media (max-width: 768px){.data-migration{padding:1rem}.migration-step{padding:1.5rem}.migration-header h1{font-size:2rem}.collection-row{grid-template-columns:1fr;gap:.5rem}.migration-mapping{flex-direction:column;align-items:flex-start;gap:.5rem}.arrow{transform:rotate(90deg)}.step-actions{flex-direction:column;align-items:center}.migration-options{grid-template-columns:1fr}}.database-viewer{min-height:100vh;background:linear-gradient(135deg,#f8faff,#e8f4f8,#f0f8ff);padding:2rem}.viewer-header{text-align:center;margin-bottom:3rem}.viewer-header h1{font-size:2.5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem}.viewer-header p{color:#4a5568;font-size:1.2rem;margin-bottom:2rem}.action-tabs{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}.action-tabs button{background:#fff;border:2px solid #e2e8f0;color:#4a5568;padding:.75rem 1.5rem;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease}.action-tabs button:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001a}.action-tabs button.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea}.loading-state{text-align:center;padding:4rem}.spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:3rem}.stat-box{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 10px 40px #0000001a;text-align:center;transition:transform .3s ease}.stat-box:hover{transform:translateY(-5px)}.stat-number{display:block;font-size:3rem;font-weight:700;color:#667eea;line-height:1}.stat-label{color:#4a5568;font-weight:600;margin-top:.5rem}.category-section{margin-bottom:3rem}.category-section h2{color:#2d3748;font-size:1.5rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.collection-count{background:#667eea;color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.9rem;font-weight:600}.collections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.collection-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 20px #00000014;transition:all .3s ease;border:2px solid transparent}.collection-card:hover{transform:translateY(-3px);box-shadow:0 8px 30px #0000001f}.collection-card.error{border-color:#f56565;background:#fed7d7}.collection-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.collection-header h3{color:#2d3748;font-size:1.1rem;font-weight:700;font-family:Courier New,monospace}.document-count{background:#e2e8f0;color:#4a5568;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600}.fields-list{color:#4a5568;font-size:.9rem;margin-bottom:1rem;line-height:1.5}.fields-list strong{color:#2d3748}.documents-preview{background:#f7fafc;border-radius:8px;padding:.75rem}.documents-preview strong{color:#2d3748;font-size:.9rem}.doc-preview{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.5rem;margin:.5rem 0;font-size:.8rem;color:#4a5568;font-family:Courier New,monospace}.error-message{color:#e53e3e;background:#fed7d7;padding:1rem;border-radius:8px;font-weight:600}.migration-plan{max-width:1000px;margin:0 auto}.plan-options{display:grid;gap:2rem}.option-card{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 10px 40px #0000001a;border:2px solid #e2e8f0}.option-card.recommended{border-color:#48bb78;background:linear-gradient(135deg,#f0fff4,#c6f6d5)}.option-card h3{color:#2d3748;margin-bottom:1rem}.migrations{display:grid;gap:1rem;margin:1.5rem 0}.migration-item{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding:1rem;background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}.migration-item .from{font-family:Courier New,monospace;background:#fed7d7;padding:.5rem;border-radius:6px;text-align:center;font-weight:600}.migration-item .arrow{font-size:1.5rem;color:#667eea;font-weight:700}.migration-item .to{font-family:Courier New,monospace;background:#c6f6d5;padding:.5rem;border-radius:6px;text-align:center;font-weight:600}.migration-item .from small{display:block;font-size:.7rem;color:#666;font-weight:400;margin-top:.25rem}.migration-summary{background:#e6fffa;border:2px solid #38b2ac;border-radius:8px;padding:1rem;margin:1rem 0;text-align:center;font-size:1.1rem}.migration-summary strong{color:#38b2ac;font-size:1.3rem}.no-migrations{background:#fed7d7;border:2px solid #f56565;border-radius:8px;padding:1rem;text-align:center;color:#c53030;font-weight:600}.benefits{margin-top:1.5rem}.benefits h4{color:#2d3748;margin-bottom:.5rem}.migration-actions{margin-top:2rem;padding:1.5rem;background:#f0f8ff;border-radius:12px;border:2px solid #667eea;text-align:center}.execute-migration-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-weight:700;font-size:1.1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;margin:0 auto 1rem;min-width:250px}.execute-migration-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 30px #667eea66}.execute-migration-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.execute-migration-btn .spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.migration-warning{color:#666;font-size:.9rem;line-height:1.4;margin:0;font-style:italic}.final-result{max-width:1000px;margin:0 auto}.result-structure{display:grid;gap:2rem}.structure-section{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 10px 40px #0000001a}.team-structure{display:grid;gap:1.5rem}.team-item{padding:1.5rem;background:#f7fafc;border-radius:12px;border-left:4px solid #667eea}.team-item.future{border-left-color:#a0aec0;opacity:.7}.team-item strong{color:#2d3748;font-size:1.2rem;display:block;margin-bottom:1rem}.team-collections{display:grid;gap:.5rem}.team-collections>div{background:#fff;padding:.75rem;border-radius:8px;font-family:Courier New,monospace;font-size:.9rem;color:#4a5568}.access-control{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 10px 40px #0000001a}.access-example{display:grid;gap:1rem}.user-access{background:#edf2f7;padding:1rem;border-radius:8px;border-left:4px solid #667eea}.action-buttons{display:flex;gap:1rem;justify-content:center;margin-top:3rem}.action-buttons button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease}.action-buttons button:hover{transform:translateY(-2px);box-shadow:0 8px 30px #667eea4d}.action-buttons button:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){.database-viewer{padding:1rem}.action-tabs{flex-direction:column;gap:.5rem}.collections-grid{grid-template-columns:1fr}.migration-item{grid-template-columns:1fr;gap:.5rem;text-align:center}.action-buttons{flex-direction:column}}.casin-setup{min-height:100vh;background:linear-gradient(135deg,#f8faff,#e8f4f8,#f0f8ff);padding:2rem;display:flex;align-items:center;justify-content:center}.setup-container{max-width:1000px;width:100%}.loading-card,.templates-card,.create-card,.complete-card{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000001a;padding:2rem;text-align:center}.loading-card{padding:4rem}.loading-card .spinner{width:60px;height:60px;border:4px solid #e2e8f0;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 2rem}.templates-header h1,.create-header h1,.complete-header h1{font-size:2.5rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem}.templates-header p,.create-header p,.complete-header p{color:#4a5568;font-size:1.2rem;margin-bottom:2rem}.templates-overview{text-align:left;margin:2rem 0}.templates-overview h2{color:#2d3748;margin-bottom:1.5rem;text-align:center}.templates-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem;margin-bottom:2rem}.template-card{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;transition:all .3s ease}.template-card:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 8px 25px #667eea1a}.template-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.template-header h3{color:#2d3748;font-size:1.1rem;font-weight:700;font-family:Courier New,monospace}.field-count{background:#667eea;color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600}.template-details{display:flex;gap:1rem;margin-bottom:1rem;font-size:.9rem;color:#4a5568}.template-fields strong{color:#2d3748;display:block;margin-bottom:.5rem}.fields-preview{display:flex;flex-wrap:wrap;gap:.5rem}.field-tag{background:#edf2f7;color:#4a5568;padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:500}.field-tag.identity{background:#fed7d7;color:#c53030}.field-tag.contact{background:#c6f6d5;color:#38a169}.field-tag.temporal{background:#bee3f8;color:#3182ce}.field-tag.insurance{background:#fbb6ce;color:#d53f8c}.field-tag.business{background:#d69e2e;color:#2d3748}.field-tag.status{background:#9f7aea;color:#fff}.more-fields{background:#a0aec0;color:#fff;padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:500}.user-info{background:#edf2f7;border-radius:12px;padding:1.5rem;margin:2rem 0;text-align:left}.user-info h2{color:#2d3748;margin-bottom:1rem;text-align:center}.user-details{display:grid;gap:.5rem}.user-details div{color:#4a5568}.user-details strong{color:#2d3748}.action-section{text-align:left;margin:2rem 0}.action-section h2{color:#2d3748;margin-bottom:1rem;text-align:center}.action-section p{color:#4a5568;text-align:center;margin-bottom:1.5rem}.benefits{background:#f0fff4;border:2px solid #68d391;border-radius:12px;padding:1.5rem;margin:1.5rem 0}.benefits h3{color:#2d3748;margin-bottom:1rem}.benefits ul{color:#4a5568;line-height:1.6}.benefits li{margin-bottom:.5rem}.warning-box{background:#fffaf0;border:2px solid #f6ad55;border-radius:12px;padding:1.5rem;margin:1.5rem 0}.warning-box h3{color:#c53030;margin-bottom:1rem}.warning-box p{color:#744210;line-height:1.6}.create-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-weight:700;font-size:1.1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;margin:2rem auto 0;min-width:280px}.create-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 40px #667eea4d}.create-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.create-btn .spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.result-details{text-align:left;margin:2rem 0}.result-details h2{color:#2d3748;margin-bottom:1rem;text-align:center}.result-info{background:#edf2f7;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.result-info div{color:#4a5568;margin-bottom:.5rem}.result-info strong{color:#2d3748}.templates-created{background:#f0fff4;border-radius:12px;padding:1.5rem}.templates-created h3{color:#2d3748;margin-bottom:1rem;text-align:center}.collections-list{display:grid;gap:.75rem}.collection-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:1rem}.collection-name{font-family:Courier New,monospace;color:#2d3748;font-weight:600}.collection-fields{background:#667eea;color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600}.collection-error{color:#e53e3e;font-size:.8rem;font-weight:600}.next-steps{text-align:left;margin:2rem 0}.next-steps h2{color:#2d3748;margin-bottom:1rem;text-align:center}.next-steps ol{color:#4a5568;line-height:1.6}.next-steps li{margin-bottom:.5rem}.auto-redirect{background:#e6fffa;border:2px solid #38b2ac;border-radius:12px;padding:1.5rem;margin:2rem 0}.countdown{color:#38b2ac;font-weight:600;font-size:1.1rem}@media (max-width: 768px){.casin-setup{padding:1rem}.templates-grid{grid-template-columns:1fr}.collection-item{grid-template-columns:1fr;text-align:center;gap:.5rem}}.developer-dashboard{max-width:1600px;margin:0 auto;padding:2rem;background:#f8faff;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.access-denied{text-align:center;padding:4rem 2rem;background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000000d;max-width:600px;margin:4rem auto}.access-denied h1{color:#e53e3e;margin-bottom:1rem;font-size:2rem}.access-denied p{color:#4a5568;margin-bottom:2rem;font-size:1.125rem}.user-info{background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;text-align:left}.user-info code{background:#edf2f7;padding:.25rem .5rem;border-radius:4px;font-family:Monaco,Consolas,monospace}.user-info ul{margin:1rem 0 0 1.5rem}.loading-state{text-align:center;padding:4rem 2rem;color:#4a5568}.loading-spinner{font-size:3rem;margin-bottom:1rem;animation:spin 2s linear infinite}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:16px;box-shadow:0 10px 30px #667eea4d}.header-content h1{margin:0 0 .5rem;font-size:2.25rem;font-weight:700;letter-spacing:-.025em}.header-content p{margin:0 0 1rem;opacity:.95;font-size:1.125rem}.header-stats{display:flex;gap:1rem;flex-wrap:wrap}.stat-pill{background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600}.header-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.refresh-btn{background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);color:#fff;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.refresh-btn:hover{background:#ffffff4d;transform:translateY(-1px)}.last-update{font-size:.75rem;opacity:.8}.dashboard-tabs{display:flex;gap:.5rem;margin-bottom:2rem;background:#fff;padding:.5rem;border-radius:12px;box-shadow:0 4px 12px #0000000d;overflow-x:auto}.dashboard-tabs button{flex:1;min-width:200px;padding:1rem 1.5rem;border:none;background:transparent;color:#4a5568;font-weight:600;font-size:.95rem;border-radius:8px;cursor:pointer;transition:all .3s ease;white-space:nowrap}.dashboard-tabs button:hover{background:#f7fafc;color:#1a202c}.dashboard-tabs button.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.dashboard-content{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 12px #0000000d;min-height:400px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:3rem}.stat-card{padding:2rem;border-radius:16px;text-align:center;transition:all .3s ease;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;border-radius:16px 16px 0 0}.stat-card.primary{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:1px solid #bbdefb}.stat-card.primary:before{background:linear-gradient(90deg,#2196f3,#9c27b0)}.stat-card.success{background:linear-gradient(135deg,#e8f5e8,#f1f8e9);border:1px solid #c8e6c9}.stat-card.success:before{background:linear-gradient(90deg,#4caf50,#8bc34a)}.stat-card.info{background:linear-gradient(135deg,#fff3e0,#fce4ec);border:1px solid #ffcc02}.stat-card.info:before{background:linear-gradient(90deg,#ff9800,#e91e63)}.stat-card.warning{background:linear-gradient(135deg,#fff8e1,#f3e5f5);border:1px solid #ffecb3}.stat-card.warning:before{background:linear-gradient(90deg,#ffc107,#9c27b0)}.stat-card h3{color:#4a5568;font-size:.875rem;font-weight:600;margin:0 0 1rem;text-transform:uppercase;letter-spacing:.05em}.stat-number{color:#1a202c;font-size:3rem;font-weight:700;margin:.5rem 0;line-height:1}.stat-detail{color:#4a5568;font-size:.875rem;margin:0}.stat-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #00000026}.top-teams-section{margin-bottom:3rem}.top-teams-section h2{color:#1a202c;font-size:1.75rem;font-weight:700;margin:0 0 1.5rem}.teams-ranking{display:flex;flex-direction:column;gap:1rem}.team-rank-card{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:16px;transition:all .3s ease}.team-rank-card:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.rank-number{font-size:1.5rem;font-weight:700;color:#667eea;min-width:40px;text-align:center}.team-info{flex:1}.team-info h4{color:#1a202c;font-size:1.125rem;font-weight:700;margin:0 0 .25rem}.team-info p{color:#4a5568;font-size:.875rem;margin:0}.team-stats{display:flex;gap:1rem}.team-stats .stat{padding:.25rem .75rem;background:#fff;border:1px solid #e2e8f0;border-radius:12px;font-size:.75rem;font-weight:600;color:#4a5568}.view-details-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 1rem;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s ease}.view-details-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.collections-breakdown{margin-bottom:3rem}.collections-breakdown h2{color:#1a202c;font-size:1.75rem;font-weight:700;margin:0 0 1.5rem}.breakdown-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.breakdown-card{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:16px;padding:1.5rem}.breakdown-card h3{color:#1a202c;font-size:1.125rem;font-weight:700;margin:0 0 1rem}.collections-list{display:flex;flex-direction:column;gap:.5rem}.collection-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.collection-name{font-weight:600;color:#1a202c}.collection-count{font-size:.875rem;color:#4a5568;background:#edf2f7;padding:.25rem .5rem;border-radius:4px}.type-distribution{display:flex;flex-direction:column;gap:.5rem}.type-row{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.type-icon{font-size:1.125rem}.type-name{flex:1;font-weight:600;color:#1a202c;text-transform:capitalize}.type-count{font-size:.875rem;color:#4a5568;background:#edf2f7;padding:.25rem .5rem;border-radius:4px}.teams-section,.section-header{margin-bottom:2rem}.section-header h2{color:#1a202c;font-size:1.75rem;font-weight:700;margin:0}.teams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.team-card{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:16px;padding:1.5rem;transition:all .3s ease}.team-card:hover{border-color:#cbd5e0;box-shadow:0 8px 25px #00000014;transform:translateY(-2px)}.team-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.team-header h3{color:#1a202c;font-size:1.25rem;font-weight:700;margin:0}.team-badges{display:flex;gap:.5rem}.badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge.main{background:linear-gradient(135deg,#f6ad55,#ed8936);color:#fff}.badge.inactive{background:linear-gradient(135deg,#fc8181,#f56565);color:#fff}.badge.owner{background:linear-gradient(135deg,#9f7aea,#805ad5);color:#fff}.badge.test{background:linear-gradient(135deg,#63b3ed,#4299e1);color:#fff}.team-description{color:#4a5568;font-size:.875rem;margin-bottom:1rem;min-height:2.5rem}.team-meta{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.meta-row{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.meta-label{color:#4a5568;font-weight:600}.meta-value{color:#1a202c;text-align:right}.team-stats-row{display:flex;gap:1rem;margin-bottom:1rem}.team-stats-row .stat{padding:.25rem .75rem;background:#fff;border:1px solid #e2e8f0;border-radius:12px;font-size:.75rem;font-weight:600;color:#4a5568}.team-details-btn{width:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.team-details-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.team-details-btn:disabled{opacity:.6;cursor:not-allowed}.users-section{margin-bottom:2rem}.users-by-team{display:flex;flex-direction:column;gap:2rem}.team-users-group{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:16px;padding:1.5rem}.team-users-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.team-users-header h3{color:#1a202c;font-size:1.25rem;font-weight:700;margin:0}.users-count{background:#fff;border:1px solid #e2e8f0;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;color:#4a5568}.users-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.user-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1rem;transition:all .3s ease}.user-card:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #0000000d;transform:translateY(-1px)}.user-info{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.user-avatar{font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:50%}.user-details h4{color:#1a202c;font-size:1rem;font-weight:700;margin:0 0 .25rem}.user-email{color:#4a5568;font-size:.875rem;margin:0}.user-badges{display:flex;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap}.role-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.role-badge.admin{background:linear-gradient(135deg,#f6ad55,#ed8936);color:#fff}.role-badge.member{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-badge.active{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff}.status-badge.invited{background:linear-gradient(135deg,#fbb6ce,#f687b3);color:#fff}.user-meta{display:flex;flex-direction:column;gap:.25rem}.meta-item{display:flex;justify-content:space-between;font-size:.75rem;color:#4a5568}.collections-section{margin-bottom:2rem}.collections-group{margin-bottom:3rem}.collections-group h3{color:#1a202c;font-size:1.5rem;font-weight:700;margin:0 0 1.5rem}.type-collections-group{margin-bottom:2rem}.type-collections-group h4{color:#4a5568;font-size:1.125rem;font-weight:600;margin:0 0 1rem;text-transform:capitalize}.collections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.collection-card{border-radius:12px;padding:1rem;transition:all .3s ease}.collection-card.global{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:1px solid #bbdefb}.collection-card.team{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:1px solid #e2e8f0}.collection-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.collection-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.collection-icon{font-size:1.25rem}.collection-header h4{color:#1a202c;font-size:1rem;font-weight:700;margin:0}.collection-header h5{color:#1a202c;font-size:.875rem;font-weight:600;margin:0}.collection-info{margin-bottom:.75rem}.collection-info code{background:#0000000d;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-family:Monaco,Consolas,monospace;word-break:break-all}.collection-stats{display:flex;justify-content:flex-end}.doc-count{background:#fff;border:1px solid #e2e8f0;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;color:#4a5568}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.team-details-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:900px;width:100%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:2rem;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:16px 16px 0 0}.modal-header h2{color:#fff;font-size:1.5rem;font-weight:700;margin:0}.close-btn{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .3s ease}.close-btn:hover{background:#fff3}.modal-content{padding:2rem}.team-overview{margin-bottom:2rem}.overview-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.stat-item{text-align:center;padding:1rem;background:linear-gradient(135deg,#f7fafc,#edf2f7);border:1px solid #e2e8f0;border-radius:12px}.stat-label{display:block;color:#4a5568;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.stat-value{display:block;color:#1a202c;font-size:1.5rem;font-weight:700}.modal-sections{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.modal-section h3{color:#1a202c;font-size:1.125rem;font-weight:700;margin:0 0 1rem}.modal-users-list,.modal-collections-list{display:flex;flex-direction:column;gap:.75rem;max-height:300px;overflow-y:auto}.modal-user-item,.modal-collection-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:linear-gradient(135deg,#f7fafc,#edf2f7);border:1px solid #e2e8f0;border-radius:8px}.user-role-icon{font-size:1.25rem}.modal-user-item .user-info{flex:1;margin:0}.modal-user-item .user-info strong{display:block;color:#1a202c;font-size:.875rem;font-weight:700}.modal-user-item .user-email{color:#4a5568;font-size:.75rem}.modal-collection-item .collection-info{flex:1;margin:0}.modal-collection-item .collection-info strong{display:block;color:#1a202c;font-size:.875rem;font-weight:700;text-transform:capitalize}.modal-collection-item .collection-info code{background:#0000000d;padding:.125rem .25rem;border-radius:4px;font-size:.625rem;font-family:Monaco,Consolas,monospace}@media (max-width: 1200px){.breakdown-grid,.modal-sections{grid-template-columns:1fr}}@media (max-width: 768px){.developer-dashboard{padding:1rem}.dashboard-header{flex-direction:column;gap:1rem;text-align:center}.header-actions{align-items:center}.stats-grid,.teams-grid,.users-grid,.collections-grid{grid-template-columns:1fr}.overview-stats{grid-template-columns:repeat(2,1fr)}}.legacy-badge{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:12px;margin-left:8px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 1px 3px #ff98004d;display:inline-block}.original-badge{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:12px;margin-left:8px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 1px 3px #2196f34d;display:inline-block}:root{--font-family-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-family-mono: "JetBrains Mono", "SF Mono", Monaco, "Inconsolata", "Roboto Mono", "Source Code Pro", "Menlo", "Consolas", monospace;--font-family-display: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--base-font-size: 14px;--line-height: 1.6;--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-surface: #ffffff;--bg-surface-hover: #f1f3f5;--text-primary: #212529;--text-secondary: #495057;--text-muted: #868e96;--border-color: #e9ecef;--accent-color: #2563eb;--grid-color: rgba(0, 0, 0, .03)}[data-theme=dark]{--bg-primary: #1a1b1e;--bg-secondary: #141517;--bg-surface: #1a1b1e;--bg-surface-hover: #2c2e33;--text-primary: #ffffff;--text-secondary: #ced4da;--text-muted: #868e96;--border-color: #2c2e33;--accent-color: #3b82f6;--grid-color: rgba(255, 255, 255, .03)}body{font-family:var(--font-family-sans);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-normal);background-color:var(--bg-secondary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.theme-transition{transition:all .2s ease-in-out}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-display);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);margin:0}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{font-size:var(--font-size-base);line-height:var(--line-height-normal);margin:0}small{font-size:var(--font-size-sm)}code,pre,.code,.monospace{font-family:var(--font-family-mono);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-normal)}.box-drawing{font-family:var(--font-family-mono);white-space:pre}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family-sans);background-color:var(--bg-secondary);color:var(--text-primary);width:100%}.section-container{padding:1.5rem;height:100%;display:flex;flex-direction:column;background-color:var(--bg-surface);border-radius:8px;box-shadow:0 1px 3px #0000001a}.section-container h2{margin-bottom:1.5rem;font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);border-bottom:1px solid var(--border-color);padding-bottom:.5rem;letter-spacing:var(--letter-spacing-tight)}@media (max-width: 768px){.main-content{margin-left:0}}.sharepoint-container{background-color:#f3f4f6;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin:1rem;transition:all .3s ease}.sharepoint-container.expanded{max-height:85vh}.sharepoint-header{background-color:#fff;padding:1rem;border-bottom:1px solid #e5e7eb;border-radius:8px 8px 0 0}.header-main{display:flex;justify-content:space-between;align-items:center}.header-left{display:flex;align-items:center;gap:1rem}.header-left h2{margin:0;color:#111827;font-size:1.5rem;font-weight:600}.expand-button{background:none;border:none;cursor:pointer;padding:.5rem;color:#6b7280;transition:color .2s ease;display:flex;align-items:center;justify-content:center}.expand-button:hover{color:#4f46e5}.expand-icon{width:1.25rem;height:1.25rem;transition:transform .2s}.expand-icon.collapsed{transform:rotate(-90deg)}.header-actions{display:flex;gap:1rem;align-items:center}.view-toggles{display:flex;gap:.5rem}.view-toggle{position:relative;padding:.5rem;border-radius:.375rem;background-color:#4f46e51a;color:#4f46e5;transition:all .2s;display:flex;align-items:center;justify-content:center}.view-toggle:hover{background-color:#4f46e533}.view-toggle.active{background-color:#4f46e5;color:#fff}.create-task-button{position:relative;display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.375rem;background-color:#4f46e5;color:#fff;font-weight:500;transition:all .2s}.create-task-button:hover{background-color:#4338ca;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.create-task-button:active{transform:translateY(0)}.notifications-button{position:relative;padding:.5rem;border-radius:.375rem;background-color:#4f46e51a;color:#4f46e5;transition:all .2s;display:flex;align-items:center;justify-content:center}.notifications-button:hover{background-color:#4f46e533}.notification-badge{position:absolute;top:0;right:0;width:8px;height:8px;border-radius:50%;background-color:#ef4444;border:2px solid white}.search-section{padding:1rem;background-color:#fff;border-bottom:1px solid #e5e7eb}.search-container{position:relative;max-width:600px;margin:0 auto}.search-input{width:100%;padding:.75rem 1rem .75rem 2.5rem;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;transition:border-color .2s ease}.search-input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.tags-container{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.tag{background:none;border:1px solid #e5e7eb;padding:.25rem .75rem;border-radius:9999px;font-size:.875rem;color:#6b7280;cursor:pointer;transition:all .2s ease}.tag:hover{border-color:#4f46e5;color:#4f46e5}.tag.selected{background-color:#4f46e5;border-color:#4f46e5;color:#fff}.add-tag-button{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;color:var(--text-secondary);border:1px dashed var(--border-color);transition:all .2s}.add-tag-button:hover{background-color:var(--bg-hover)}.tasks-container{padding:1rem;overflow-y:auto;background-color:var(--bg-primary)}.tasks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.task-card{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:.5rem;padding:1rem;cursor:pointer;transition:background-color .2s}.task-card:hover{background-color:var(--bg-hover)}.task-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.task-card-header h3{color:var(--text-primary);font-size:1rem;font-weight:500;margin:0;flex:1;margin-right:1rem}.task-card-actions{display:flex;gap:.25rem}.edit-button,.delete-button{display:flex;align-items:center;justify-content:center;padding:.375rem;border-radius:.375rem;transition:all .2s}.edit-button{color:var(--accent-color);background-color:var(--accent-color-10)}.edit-button:hover{background-color:var(--accent-color-20)}.delete-button{padding:.375rem;border-radius:.375rem;background-color:#ef44441a;color:#ef4444;transition:all .2s}.delete-button:hover{background-color:#ef444433;transform:translateY(-1px)}.delete-button:active{transform:translateY(0)}.task-labels{display:flex;gap:.5rem;margin-bottom:1rem}.priority-label{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;background-color:var(--accent-color-10);color:var(--accent-color)}.status-select{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;background-color:var(--bg-surface);color:var(--text-primary);border:none;cursor:pointer}.task-fields{display:flex;flex-direction:column;gap:.5rem}.task-field{display:flex;font-size:.75rem}.field-label{color:var(--text-secondary);font-weight:500;margin-right:.25rem}.field-value{color:var(--text-primary)}.tasks-table-container{overflow-x:auto}.tasks-table{width:100%;border-collapse:collapse}.tasks-table th{text-align:left;padding:.75rem;font-size:.875rem;font-weight:500;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.tasks-table td{padding:.75rem;color:var(--text-primary);border-bottom:1px solid var(--border-color-light)}.tasks-table tr{cursor:pointer;transition:background-color .2s}.tasks-table tr:hover{background-color:var(--bg-hover)}.table-actions{display:flex;justify-content:flex-end;gap:.25rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background-color:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{padding:1rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;color:#111827;font-size:1.25rem;font-weight:600}.close-button{background:none;border:none;color:#6b7280;cursor:pointer;padding:.5rem;transition:color .2s ease;display:flex;align-items:center;justify-content:center;border-radius:.375rem}.close-button:hover{color:#ef4444}.modal-content{padding:1rem}.form-group{margin-bottom:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group label{display:block;color:#374151;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.required{color:#ef4444;margin-left:.25rem}.form-input,.form-select,.form-textarea{width:100%;padding:.5rem;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;transition:all .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.form-textarea{resize:vertical;min-height:100px}.modal-footer{padding:1rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:1rem}.cancel-button,.create-button{padding:.5rem 1rem;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease}.cancel-button{background-color:#fff;border:1px solid #e5e7eb;color:#6b7280}.cancel-button:hover{border-color:#9ca3af;color:#4b5563}.create-button{background-color:#4f46e5;border:none;color:#fff}.create-button:hover:not(:disabled){background-color:#4338ca}.create-button:disabled{background-color:#9ca3af;cursor:not-allowed}.error-message{padding:1rem;margin:1rem;border-radius:.375rem;background-color:#ef44441a;color:#ef4444;text-align:center}.loading-spinner{display:flex;justify-content:center;align-items:center;min-height:200px;color:#4f46e5}.spinner{width:1.5rem;height:1.5rem;border:2px solid #e5e7eb;border-top-color:#4f46e5;border-radius:50%;animation:spin 1s linear infinite}.tags-input{display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem;border:1px solid #e5e7eb;border-radius:6px}.tag-checkbox{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border:1px solid #e5e7eb;border-radius:9999px;cursor:pointer;transition:all .2s ease}.tag-checkbox:hover{border-color:#4f46e5}.tag-checkbox input{margin:0}.tag-label{font-size:.875rem;color:#374151}[title]{position:relative}.tooltip{position:absolute;top:100%;left:50%;transform:translate(-50%);padding:.25rem .5rem;background-color:#1f2937;color:#fff;font-size:.75rem;border-radius:.25rem;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s;margin-top:.5rem;pointer-events:none;z-index:50}[title]:hover .tooltip{opacity:1;visibility:visible}.view-toggle svg,.create-task-button svg,.notifications-button svg,.edit-button svg,.delete-button svg,.close-button svg,.expand-button svg,.search-icon{display:block;pointer-events:none}.contacto-card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d;padding:20px;cursor:pointer;transition:all .2s ease;position:relative}.contacto-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:#2563eb}.contacto-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.contacto-avatar{width:50px;height:50px;border-radius:50%;background:#2563eb;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;font-weight:600;text-transform:uppercase}.contacto-status{position:relative}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:20px;font-size:12px;font-weight:600;color:#fff;text-transform:capitalize}.contacto-info{margin-bottom:15px}.contacto-name{font-size:18px;font-weight:600;color:#333;margin:0 0 8px;line-height:1.3}.contacto-empresa,.contacto-ocupacion{color:#666;font-size:14px;margin:5px 0;display:flex;align-items:center;gap:5px}.contacto-contact{margin:10px 0}.contact-item{display:flex;align-items:center;gap:8px;margin:5px 0;font-size:14px;color:#555}.contact-icon{font-size:16px;width:20px;text-align:center}.contact-text{flex:1;word-break:break-word}.contacto-origen{margin:10px 0}.origen-badge{background:#f0f0f0;color:#666;padding:3px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.contacto-comentario{margin:10px 0;padding:8px;background:#f8f9fa;border-radius:6px;border-left:3px solid #2563eb}.contacto-comentario p{margin:0;font-size:13px;color:#666;line-height:1.4}.contacto-policies{margin:10px 0;padding:8px;background:#eff6ff;border-radius:6px;border-left:3px solid #2563eb}.contacto-policies.clickable{cursor:pointer;transition:all .2s ease;position:relative}.contacto-policies.clickable:hover{background:#dbeafe;transform:translate(2px);box-shadow:0 2px 4px #2563eb1a}.contacto-policies.clickable:hover:after{content:"👆 Click para ver";position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:10px;color:#2563eb;font-weight:600;opacity:.8}.policies-header{display:flex;align-items:center;gap:5px;margin-bottom:5px}.policies-icon{font-size:14px}.policies-label{font-size:12px;font-weight:600;color:#333;text-transform:uppercase;letter-spacing:.5px}.policies-content{margin-left:19px}.policies-tables{font-size:11px;font-weight:600;color:#2563eb;background:#fff;padding:2px 6px;border-radius:4px;display:inline-block}.policies-loading{font-size:11px;color:#999;font-style:italic}.contacto-actions{display:flex;gap:8px;margin-top:15px;padding-top:15px;border-top:1px solid #e0e0e0;flex-wrap:wrap;opacity:.7;transition:opacity .2s ease}.contacto-card:hover .contacto-actions{opacity:1}.btn-policies{background:#2563eb;color:#fff;border:none;padding:8px 12px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:4px;flex:1;box-shadow:0 2px 4px #667eea4d}.btn-policies:hover{transform:translateY(-1px);box-shadow:0 4px 8px #667eea66}.btn-edit,.btn-delete{flex:1;padding:8px 12px;border:none;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;min-width:40px;height:36px}.btn-edit{background:#e3f2fd;color:#1976d2;border:1px solid #bbdefb}.btn-edit:hover{background:#1976d2;color:#fff;transform:translateY(-1px)}.btn-delete{background:#ffebee;color:#d32f2f;border:1px solid #ffcdd2}.btn-delete:hover{background:#d32f2f;color:#fff;transform:translateY(-1px)}.contacto-card[data-status=cliente]{border-left:4px solid #4CAF50}.contacto-card[data-status=prospecto]{border-left:4px solid #FF9800}.contacto-card[data-status=inactivo]{border-left:4px solid #9E9E9E}@media (max-width: 480px){.contacto-card{padding:15px}.contacto-header{flex-direction:column;gap:10px;align-items:center;text-align:center}.contacto-name{font-size:16px}.contacto-actions{flex-direction:column;gap:8px}.btn-policies,.btn-edit,.btn-delete{padding:10px}.contacto-policies{padding:6px}.policies-label{font-size:11px}.policies-tables{font-size:10px;padding:1px 4px}}.contacto-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px;overflow-y:auto}.contacto-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 40px #00000026;width:100%;max-width:900px;max-height:90vh;overflow-y:auto;position:relative;margin:auto}.contacto-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:1px solid #e5e7eb;background:#f8fafc;border-radius:12px 12px 0 0}.contacto-modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#1f2937}.contacto-modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#6b7280;padding:4px;border-radius:6px;transition:all .2s}.contacto-modal-close:hover{background-color:#f3f4f6;color:#374151}.contacto-form{padding:32px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;margin-bottom:32px}.form-section{background:#f8fafc;padding:24px;border-radius:8px;border:1px solid #e5e7eb}.form-section.full-width{grid-column:1 / -1}.form-section h3{margin:0 0 20px;font-size:1.1rem;font-weight:600;color:#374151;border-bottom:2px solid #3b82f6;padding-bottom:8px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#374151;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;transition:all .2s;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.form-group textarea{resize:vertical;min-height:100px}.error-text{color:#ef4444;font-size:.85rem;margin-top:4px;display:block}.contacto-modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #e5e7eb}.btn-cancel,.btn-save{padding:12px 24px;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;font-size:.95rem}.btn-cancel{background-color:#f3f4f6;color:#374151}.btn-cancel:hover{background-color:#e5e7eb}.btn-save{background-color:#3b82f6;color:#fff}.btn-save:hover:not(:disabled){background-color:#2563eb}.btn-save:disabled{background-color:#9ca3af;cursor:not-allowed}@media (max-width: 768px){.contacto-modal-overlay{padding:10px}.contacto-modal-content{max-width:100%;max-height:95vh}.contacto-modal-header,.contacto-form{padding:20px}.form-grid{grid-template-columns:1fr;gap:20px}.form-section{padding:16px}}@media (max-width: 480px){.contacto-modal-header{padding:16px}.contacto-modal-header h2{font-size:1.25rem}.contacto-form{padding:16px}.form-section{padding:12px}.contacto-modal-actions{flex-direction:column}.btn-cancel,.btn-save{width:100%}}.policy-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.policy-modal{background:#fff;border-radius:16px;box-shadow:0 20px 40px #00000026;max-width:95vw;max-height:90vh;width:1000px;overflow:hidden;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.policy-modal-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px 24px;display:flex;justify-content:space-between;align-items:center}.policy-modal-header h3{margin:0;font-size:1.4rem;font-weight:600}.modal-header-actions{display:flex;align-items:center;gap:12px}.view-toggle{display:flex;background:#ffffff1a;border-radius:8px;padding:2px}.toggle-btn{background:transparent;border:none;color:#fff;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s ease}.toggle-btn:hover{background:#fff3}.toggle-btn.active{background:#ffffff4d;font-weight:600}.close-button{background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.close-button:hover{background:#ffffff4d}.policy-modal-content{padding:24px;max-height:calc(90vh - 80px);overflow-y:auto}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:#666}.spinner{width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.error-state{text-align:center;padding:40px;color:#f44336}.retry-button{background:#667eea;color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;margin-top:16px;transition:background .2s ease}.retry-button:hover{background:#5a6fd8}.empty-state{text-align:center;padding:40px;color:#666;font-size:1.1rem}.policy-cloud{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:12px;padding:20px;margin-bottom:24px;text-align:center}.policy-cloud h4{margin:0 0 16px;color:#333;font-size:1.2rem;font-weight:600}.cloud-tags{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:16px}.cloud-tag{color:#fff;padding:8px 16px;border-radius:20px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .2s ease;cursor:default;box-shadow:0 2px 8px #00000026}.cloud-tag:hover{transform:scale(1.05)}.cloud-summary{display:flex;gap:24px;justify-content:center;font-size:.9rem;color:#555}.summary-item{background:#fffc;padding:6px 12px;border-radius:6px}.policies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.policy-card{background:#fff;border:1px solid #e0e0e0;border-left:4px solid #667eea;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;transition:all .2s ease}.policy-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001f}.policy-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.policy-type-badge{color:#fff;padding:4px 12px;border-radius:16px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.policy-number{font-family:Courier New,monospace;font-weight:600;color:#666;background:#f5f5f5;padding:4px 8px;border-radius:4px;font-size:.9rem}.policy-content{display:flex;flex-direction:column;gap:16px}.policy-main-info h4{margin:0 0 8px;color:#333;font-size:1.1rem;font-weight:600}.policy-description{margin:0;color:#666;font-size:.9rem;line-height:1.4}.policy-details{display:flex;flex-direction:column;gap:8px}.policy-detail-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid #f0f0f0}.policy-detail-row:last-child{border-bottom:none}.detail-label{font-size:.85rem;color:#666;font-weight:500;min-width:120px}.detail-value{font-size:.9rem;color:#333;font-weight:600;text-align:right;flex:1}.policies-table-container{border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014}.policies-table{width:100%;border-collapse:collapse;background:#fff}.policies-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.policies-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.policies-table tbody tr{border-bottom:1px solid #e0e0e0;transition:background-color .2s ease}.policies-table td{padding:16px;vertical-align:top}.table-type-badge{color:#fff;padding:4px 8px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.policy-number-cell{font-family:Courier New,monospace;font-weight:600;color:#666;font-size:.9rem}.policy-desc{font-size:.85rem;color:#666;margin-top:4px;line-height:1.3}@media (max-width: 1024px){.policy-modal{width:90vw}.policies-table-container{overflow-x:auto}.policies-table{min-width:700px}}@media (max-width: 768px){.policy-modal{width:95vw;max-height:95vh}.policy-modal-header{padding:16px 20px;flex-direction:column;gap:12px;align-items:flex-start}.modal-header-actions{width:100%;justify-content:space-between}.policy-modal-header h3{font-size:1.2rem}.policy-modal-content{padding:20px}.policies-grid{grid-template-columns:1fr;gap:16px}.policy-card{padding:16px}.cloud-tags{gap:8px}.cloud-tag{padding:6px 12px;font-size:.9rem!important}.cloud-summary{flex-direction:column;gap:8px}.policy-detail-row{flex-direction:column;align-items:flex-start;gap:4px}.detail-value{text-align:left}.policies-table{font-size:.85rem}.policies-table th,.policies-table td{padding:12px 8px}}@media (max-width: 480px){.policy-modal{width:100vw;height:100vh;max-height:100vh;border-radius:0}.policy-modal-content{padding:16px;max-height:calc(100vh - 70px)}.policy-modal-header{padding:12px 16px}.policy-cloud{padding:16px}.policy-card{padding:12px}.policies-table th,.policies-table td{padding:8px 6px}}.search-filters{background:#fff;border-radius:8px;border:1px solid #e0e0e0;padding:16px;margin-bottom:16px}.search-form{display:flex;flex-direction:column;gap:12px}.search-section{width:100%}.search-input{width:100%;padding:12px 16px;border:1px solid #e0e0e0;border-radius:8px;font-size:16px;background:#fafafa;transition:all .2s ease;box-sizing:border-box}.search-input:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.filters-section{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.filter-select{padding:10px 14px;border:1px solid #e0e0e0;border-radius:6px;font-size:14px;background:#fff;cursor:pointer;min-width:130px;transition:all .2s ease}.filter-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}.filter-select:hover{border-color:#cbd5e1}.clear-btn{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0;padding:10px 16px;border-radius:6px;font-size:14px;cursor:pointer;white-space:nowrap;transition:all .2s ease;font-weight:500}.clear-btn:hover{background:#e2e8f0;color:#475569;border-color:#cbd5e1}@media (max-width: 768px){.search-filters{padding:12px}.search-form{gap:10px}.search-input{padding:10px 14px;font-size:16px}.filters-section{flex-direction:column;align-items:stretch;gap:8px}.filter-select{width:100%;min-width:auto}.clear-btn{width:100%;text-align:center}}@media (max-width: 480px){.search-input{padding:12px 16px}}.directorio-container{padding:20px;max-width:1400px;margin:0 auto;min-height:calc(100vh - 80px);background:#f8f9fa}.directorio-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:24px;background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d}.directorio-header h1{color:#333;margin:0;font-size:2.5rem;font-weight:600}.header-actions{display:flex;align-items:center;gap:20px}.view-navigation{display:flex;background:#f8f9fa;border-radius:8px;padding:4px;gap:4px}.view-btn{background:transparent;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;color:#666}.view-btn:hover{background:#e9ecef;color:#333}.view-btn.active{background:#2563eb;color:#fff;box-shadow:0 2px 8px #2563eb4d}.btn-primary{background:#2563eb;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #2563eb4d}.btn-primary:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 2px 12px #2563eb66}.stats-cards{display:flex;gap:12px;margin-bottom:12px}.stat-card{background:#f8fafc;padding:8px 12px;border-radius:6px;border:1px solid #e2e8f0;text-align:center;transition:all .2s ease;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;min-width:90px;flex:1}.stat-card:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 8px #00000014}.stat-card.active{background:#eff6ff;border-color:#2563eb;box-shadow:0 2px 8px #2563eb26;transform:translateY(-1px)}.stat-card.active h3{color:#1e40af}.stat-card.active .stat-number{color:#2563eb}.stat-card.active:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:#2563eb}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.stat-card h3{margin:0 0 2px;color:#64748b;font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.3px}.stat-number{font-size:1.2rem;font-weight:600;color:#1e293b;margin:0}.spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #2563eb;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.error-message{background:#ffebee;color:#c62828;padding:15px;border-radius:8px;margin-bottom:20px;border:1px solid #ffcdd2;text-align:center;font-weight:500}.contactos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px;margin-bottom:30px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.no-results{grid-column:1 / -1;text-align:center;padding:60px 20px;color:#666;font-size:18px}.pagination-top{margin-bottom:20px}.pagination-top .pagination-wrapper{margin-top:0;margin-bottom:0}.pagination-wrapper{margin-top:30px;padding:24px;background:linear-gradient(135deg,#f8fafc,#fff);border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 12px #0000000d;display:flex;flex-direction:column;gap:20px}.pagination-info{text-align:center;padding:12px 20px;background:#3b82f60d;border:1px solid rgba(59,130,246,.1);border-radius:12px}.pagination-summary{font-size:15px;color:#1e293b;font-weight:600;display:flex;align-items:center;justify-content:center;gap:4px}.pagination-main{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.items-per-page{display:flex;align-items:center;gap:12px;font-size:14px;color:#475569;font-weight:500;background:#fff;padding:12px 16px;border-radius:10px;border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000d}.items-select{padding:8px 16px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease;min-width:70px}.items-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;transform:translateY(-1px)}.pagination-nav{display:flex;align-items:center;gap:8px;background:#fff;padding:8px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 8px #0000000f}.page-numbers{display:flex;align-items:center;gap:4px;margin:0 8px}.pagination-btn{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #cbd5e1;padding:10px 16px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:center;white-space:nowrap;display:flex;align-items:center;gap:6px;position:relative;overflow:hidden}.pagination-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .5s ease}.pagination-btn:hover:not(:disabled):before{left:100%}.pagination-btn:hover:not(:disabled){background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 8px 16px #3b82f64d}.pagination-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 8px #3b82f633}.pagination-btn:disabled{opacity:.4;cursor:not-allowed;background:#f1f5f9;color:#94a3b8;transform:none!important;box-shadow:none!important}.pagination-btn.active{background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff;border-color:#3b82f6;box-shadow:0 4px 12px #3b82f666;font-weight:700;transform:translateY(-1px)}.pagination-btn.nav-btn{padding:10px 14px;font-size:13px;font-weight:700;min-width:100px}.pagination-btn.page-btn{min-width:44px;padding:10px 12px;border-radius:6px}.pagination-btn.first-btn .btn-icon,.pagination-btn.last-btn .btn-icon{font-size:16px}.pagination-btn.prev-btn .btn-icon,.pagination-btn.next-btn .btn-icon{font-size:14px}.pagination-ellipsis{padding:10px 8px;color:#64748b;font-weight:700;display:flex;align-items:center;font-size:16px}.page-jump{display:flex;align-items:center;gap:12px;font-size:14px;color:#475569;font-weight:500;background:#fff;padding:12px 16px;border-radius:10px;border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000d}.page-input{width:80px;padding:8px 12px;border:1px solid #cbd5e1;border-radius:8px;text-align:center;font-size:14px;font-weight:600;transition:all .3s ease;background:#f8fafc}.page-input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a;transform:translateY(-1px)}.pagination-status{text-align:center;padding:12px 20px;background:#10b9810d;border:1px solid rgba(16,185,129,.1);border-radius:12px}.current-page-indicator{font-size:15px;color:#1e293b;font-weight:600;display:flex;align-items:center;justify-content:center;gap:4px}.table-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;overflow:auto;margin-bottom:30px;max-height:70vh;position:relative}.table-container::-webkit-scrollbar{width:8px;height:8px}.table-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.table-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.table-container::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.contactos-table{width:100%;border-collapse:collapse;font-size:14px}.contactos-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;position:sticky;top:0;z-index:10}.contactos-table th{padding:15px 12px;text-align:left;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;background:linear-gradient(135deg,#667eea,#764ba2)}.contactos-table tbody tr{border-bottom:1px solid #e0e0e0;transition:background-color .2s ease}.contactos-table tbody tr:hover{background-color:#f8f9fa}.contactos-table tbody tr:last-child{border-bottom:none}.contactos-table td{padding:12px;vertical-align:middle}.nombre-cell{font-weight:600;color:#333}.status-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.cliente{background:#e8f5e8;color:#2e7d32;border:1px solid #c8e6c9}.status-badge.prospecto{background:#fff3e0;color:#f57c00;border:1px solid #ffcc02}.policy-tables-cell{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.policy-tables-list{font-size:11px;font-weight:600;color:#2563eb;background:#eff6ff;padding:2px 6px;border-radius:4px;display:inline-block}.policy-tables-status{font-size:11px;font-weight:500;padding:2px 6px;border-radius:4px;display:inline-block}.policy-tables-status.loading{color:#666;background:#f3f4f6;font-style:italic}.policy-tables-status.loaded{color:#2563eb;background:#eff6ff;font-weight:600}.policy-tables-status.empty{color:#9ca3af;background:#f9fafb}.policy-tables-status.error{color:#dc2626;background:#fef2f2}.loading-tables{font-size:11px;color:#999;font-style:italic}.no-policies{color:#9ca3af;font-style:italic}.actions-cell{text-align:center;white-space:nowrap;opacity:0;transition:opacity .2s ease}.contactos-table tbody tr:hover .actions-cell{opacity:1}.btn-policies{background:#2563eb;color:#fff;border:none;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:12px;margin-right:4px;transition:all .2s ease;box-shadow:0 2px 4px #2563eb4d}.btn-policies:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 8px #2563eb66}.btn-edit,.btn-delete{background:none;border:none;padding:8px;margin:0 4px;border-radius:6px;cursor:pointer;font-size:16px;transition:all .2s ease;color:#9ca3af}.btn-edit:hover{background:#e3f2fd;color:#1976d2;transform:scale(1.1)}.btn-delete:hover{background:#ffebee;color:#d32f2f;transform:scale(1.1)}.status-toggle{padding:6px 12px;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px;min-width:80px;white-space:nowrap}.status-toggle:disabled{cursor:not-allowed;opacity:.6}.status-toggle.pagado{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px #10b9814d}.status-toggle.pagado:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 3px 12px #10b98166}.status-toggle.no-pagado{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 2px 8px #ef44444d}.status-toggle.no-pagado:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px);box-shadow:0 3px 12px #ef444466}.status-toggle:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 4px #0003}@media (max-width: 768px){.directorio-container{padding:15px}.directorio-header{flex-direction:column;gap:20px;text-align:center}.header-actions{flex-direction:column;gap:15px;width:100%}.tab-navigation{width:100%;justify-content:center}.tab-btn{flex:1;text-align:center}.directorio-header h1{font-size:2rem}.contactos-grid{grid-template-columns:1fr;gap:15px}.stats-cards{flex-direction:column;gap:6px;margin-bottom:12px}.stat-card{padding:6px 10px;min-width:auto}.stat-card h3{font-size:9px;margin:0 0 2px}.stat-number{font-size:1rem}.stat-card.active h3{color:#1e40af;font-size:9px}.stat-card.active .stat-number{color:#2563eb;font-size:1rem}.pagination-wrapper{padding:16px;gap:16px}.pagination-main{flex-direction:column;gap:16px;align-items:stretch}.pagination-nav{justify-content:center;flex-wrap:wrap;gap:6px;padding:12px 8px}.pagination-btn.nav-btn{min-width:80px;padding:8px 10px;font-size:12px}.pagination-btn.nav-btn .btn-text{display:none}.pagination-btn.page-btn{min-width:36px;padding:8px 6px;font-size:13px}.page-numbers{margin:0 4px;gap:2px}.items-per-page,.page-jump{justify-content:center;padding:10px 12px}.pagination-summary,.current-page-indicator{font-size:14px}.table-container{max-height:60vh;overflow-x:auto}.contactos-table{min-width:600px;font-size:12px}.contactos-table th,.contactos-table td{padding:8px 6px;font-size:12px}.nombre-cell{min-width:120px}.policy-tables-cell{max-width:80px;font-size:10px}.policy-tables-list{font-size:9px;padding:1px 4px}.actions-cell{min-width:80px}.btn-edit,.btn-delete{padding:6px;font-size:14px}}@media (max-width: 480px){.pagination-nav{gap:4px}.pagination-btn.page-btn{min-width:32px;padding:6px 4px;font-size:12px}.page-numbers{gap:1px}.pagination-ellipsis{padding:6px 4px;font-size:14px}}@keyframes pageTransition{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pagination-btn:not(:disabled):hover{animation:none}.pagination-btn.active{animation:pageTransition .3s ease}.directorio-simple{max-width:1200px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:#f8f9fa;min-height:100vh}.simple-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;flex-wrap:wrap;gap:16px}.simple-header h1{margin:0;color:#2563eb;font-size:2rem;font-weight:600;flex-shrink:0;min-width:300px}.header-actions{display:flex;align-items:center;gap:16px;flex-shrink:0;flex-wrap:wrap}.controls{display:flex;gap:16px;margin-bottom:20px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;flex-wrap:wrap}.search-group{flex:1;min-width:300px}.search-input{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;transition:border-color .2s ease}.search-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.results-info{margin-bottom:20px;padding:0 20px}.results-info p{margin:0;color:#64748b;font-size:14px;font-weight:500}.contacts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px;margin-bottom:30px}.contact-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a;transition:all .2s ease;border:2px solid transparent}.contact-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026;border-color:#e2e8f0}.contact-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.contact-header h3{margin:0 12px 0 0;color:#1e293b;font-size:1.1rem;font-weight:600;line-height:1.3;flex:1}.status-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-cliente{background:#d1fae5;color:#065f46}.status-prospecto{background:#fef3c7;color:#92400e}.status-inactivo{background:#fee2e2;color:#991b1b}.contact-info{margin-bottom:15px}.contact-info p{margin:8px 0;font-size:14px;color:#475569;display:flex;align-items:center;gap:8px}.contact-info a{color:#2563eb;text-decoration:none;transition:color .2s ease}.contact-info a:hover{color:#1d4ed8;text-decoration:underline}.contact-empresa,.contact-ocupacion{margin:6px 0;font-size:14px;color:#475569;display:flex;align-items:center;gap:8px;font-weight:500}.contact-phone-office{margin:6px 0;font-size:14px;color:#475569;display:flex;align-items:center;gap:8px}.contact-phone-office a{color:#2563eb;text-decoration:none;transition:color .2s ease}.contact-phone-office a:hover{color:#1d4ed8;text-decoration:underline}.contact-origen{margin:8px 0}.origen-badge{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:inline-flex;align-items:center;gap:4px;box-shadow:0 2px 4px #3b82f64d}.contact-comentario{margin:8px 0;padding:8px;background:#f8fafc;border-radius:8px;border-left:3px solid #e2e8f0}.comentario-text{margin:0;font-size:13px;color:#64748b;line-height:1.4;font-style:italic}.origen-cell,.phone-office-cell,.ocupacion-cell{color:#64748b;font-weight:500;font-size:14px}.contact-actions{display:flex;gap:8px;padding-top:15px;border-top:1px solid #e2e8f0}.btn-edit,.btn-delete{flex:1;padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:4px}.btn-edit{background:#f0f9ff;color:#0369a1;border:1px solid #bae6fd}.btn-edit:hover{background:#e0f2fe;border-color:#7dd3fc}.btn-delete{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.btn-delete:hover{background:#fee2e2;border-color:#fca5a5}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin:30px 0;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.pagination-btn{background:#f8fafc;color:#475569;border:2px solid #e2e8f0;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:#2563eb;color:#fff;border-color:#2563eb}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.page-info{color:#64748b;font-weight:500;padding:0 20px}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#64748b}.spinner{width:40px;height:40px;border:4px solid #e2e8f0;border-top:4px solid #2563eb;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.full-access-link{text-align:center;margin-top:40px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.full-access-link a{color:#2563eb;text-decoration:none;font-weight:500;font-size:1.1rem;transition:color .2s ease}.full-access-link a:hover{color:#1d4ed8;text-decoration:underline}.abc-navigation{background:#fff;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px #0000001a;border:1px solid #e2e8f0}.abc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.abc-title{font-weight:600;color:#374151;font-size:1.1rem;display:flex;align-items:center;gap:8px}.clear-letter-btn{background:#ef4444;color:#fff;border:none;border-radius:8px;padding:6px 12px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:4px;max-width:100px}.clear-letter-btn:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 8px #ef44444d}.alphabet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(40px,1fr));gap:8px;max-width:100%}.letter-btn{background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;padding:12px 8px;font-size:1rem;font-weight:600;color:#64748b;cursor:pointer;transition:all .2s ease;text-align:center;min-height:44px;display:flex;align-items:center;justify-content:center}.letter-btn:hover{background:#e2e8f0;border-color:#cbd5e1;color:#475569;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.letter-btn.active{background:#2563eb;border-color:#2563eb;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d}.letter-btn.active:hover{background:#1d4ed8;border-color:#1d4ed8}@media (max-width: 768px){.abc-navigation{padding:16px;margin-bottom:16px}.abc-header{flex-direction:column;align-items:flex-start;gap:12px}.alphabet-grid{grid-template-columns:repeat(auto-fit,minmax(35px,1fr));gap:6px}.letter-btn{padding:10px 6px;font-size:.9rem;min-height:40px}.abc-title{font-size:1rem}.clear-letter-btn{padding:8px 12px;font-size:.85rem;align-self:flex-end}}@media (max-width: 480px){.alphabet-grid{grid-template-columns:repeat(6,1fr);gap:4px}.letter-btn{padding:8px 4px;font-size:.85rem;min-height:36px}}@media (max-width: 768px){.directorio-simple{padding:16px}.simple-header{flex-direction:column;gap:16px;text-align:center;align-items:center}.simple-header h1{font-size:1.5rem;min-width:auto;text-align:center}.header-actions{flex-direction:row;justify-content:center;gap:12px;width:100%}.controls{flex-direction:column}.search-group{min-width:auto}.contacts-grid{grid-template-columns:1fr;gap:16px}.contact-actions{flex-direction:column}.pagination{flex-direction:column;gap:12px}.page-info{padding:0}}@media (max-width: 480px){.header-actions{flex-direction:column;gap:12px}.btn-create{width:100%}}.btn-create{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #10b9814d;min-width:110px;flex-shrink:0;white-space:nowrap}.btn-create:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 6px 16px #10b98166}.cotiza-container{padding:24px;max-width:1400px;margin:0 auto}.cotiza-header{text-align:center;margin-bottom:32px}.cotiza-header h1{color:var(--text-primary);margin-bottom:8px;font-size:2rem;font-weight:600}.cotiza-header p{color:var(--text-secondary);font-size:1.1rem}.cotiza-content{display:flex;flex-direction:column;gap:24px}.policy-type-selector{margin-bottom:2rem;padding:1.5rem;background:#f8f9fa;border-radius:8px;border:2px solid #007bff}.policy-type-selector label{display:block;font-weight:600;margin-bottom:.5rem;color:#2c3e50;font-size:1rem}.policy-type-dropdown{width:100%;padding:.75rem;font-size:1rem;border:2px solid #dee2e6;border-radius:6px;background:#fff;cursor:pointer;transition:all .3s ease}.policy-type-dropdown:hover{border-color:#007bff}.policy-type-dropdown:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.upload-section{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:24px}.upload-area{border:2px dashed var(--border-color);border-radius:8px;padding:40px;text-align:center;transition:all .3s ease}.upload-area:hover:not(.upload-disabled){border-color:var(--primary-color);background:var(--hover-background)}.upload-area.upload-disabled{border-color:var(--border-color);background:var(--background-secondary);opacity:.6}.upload-label.label-disabled{cursor:not-allowed;color:var(--text-secondary)}.upload-area.upload-disabled .upload-icon{color:var(--text-secondary)}.file-input{display:none}.upload-label{display:flex;flex-direction:column;align-items:center;gap:12px;cursor:pointer;color:var(--text-primary)}.upload-icon{width:48px;height:48px;color:var(--primary-color)}.upload-label span{font-size:1.1rem;font-weight:500}.upload-label small{color:var(--text-secondary);font-size:.9rem}.files-section{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:24px}.files-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.files-header h3{color:var(--text-primary);margin:0;font-size:1.2rem}.files-actions{display:flex;gap:12px}.files-list{display:flex;flex-direction:column;gap:12px}.file-item{display:flex;align-items:center;gap:12px;padding:16px;background:var(--background-secondary);border:1px solid var(--border-color);border-radius:8px;transition:all .3s ease}.file-item:hover{background:var(--hover-background)}.file-item.selected{border-color:var(--primary-color);background:var(--primary-background)}.file-checkbox input{width:16px;height:16px;accent-color:var(--primary-color)}.file-info{flex:1;min-width:0}.file-name{font-weight:500;color:var(--text-primary);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-details{display:flex;gap:12px;font-size:.9rem;color:var(--text-secondary)}.file-type{background:var(--accent-color);color:#fff;padding:1px 4px;border-radius:2px;font-size:.65rem;font-weight:500;text-transform:uppercase}.file-status{font-weight:500}.status-pending{color:var(--warning-color)}.status-processing{color:var(--info-color)}.status-completed{color:var(--success-color)}.remove-file{background:none;border:none;color:var(--error-color);font-size:20px;cursor:pointer;padding:4px;border-radius:4px;transition:all .3s ease}.remove-file:hover{background:var(--error-background)}.texts-section{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:24px}.texts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.texts-header h3{color:var(--text-primary);margin:0;font-size:1.2rem}.texts-list{display:flex;flex-direction:column;gap:16px}.text-item{margin-bottom:1.5rem;border:1px solid #e1e5e9;border-radius:12px;background:#fff;box-shadow:0 2px 8px #00000014;overflow:hidden}.text-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:1px solid #e1e5e9}.text-header h4{margin:0;color:#2c3e50;font-size:.95rem;font-weight:600;flex:1}.text-stats{font-size:.75rem;color:#6c757d;background:#fff;padding:.25rem .75rem;border-radius:20px;border:1px solid #dee2e6}.text-content-wrapper{position:relative;background:#fff}.text-content-preview{position:relative;max-height:200px;overflow:hidden}.text-preview{margin:0;padding:1.25rem;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:.8rem;line-height:1.6;color:#495057;background:transparent;white-space:pre-wrap;word-break:break-word;border:none;outline:none;position:relative}.text-content-preview:after{content:"";position:absolute;bottom:0;left:0;right:0;height:60px;background:linear-gradient(transparent,#fffffff2);pointer-events:none}.text-actions{padding:.75rem 1.25rem;background:#f8f9fa;border-top:1px solid #e9ecef;display:flex;justify-content:center}.btn-text-toggle{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#007bff;color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-text-toggle:hover{background:#0056b3;transform:translateY(-1px)}.btn-text-toggle svg{transition:transform .2s ease}.text-content-full{display:none;max-height:0;overflow:hidden;transition:max-height .3s ease}.text-content-full.expanded{display:block;max-height:500px;overflow-y:auto;border-top:1px solid #e9ecef}.text-content-full.expanded .text-full{margin:0;padding:1.25rem;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:.8rem;line-height:1.6;color:#495057;background:#f8f9fa;white-space:pre-wrap;word-break:break-word;border:none;outline:none}.text-content-full::-webkit-scrollbar{width:8px}.text-content-full::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.text-content-full::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.text-content-full::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.auto-generate-section{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:24px}.auto-generate-indicator{text-align:center;display:flex;flex-direction:column;align-items:center;gap:20px}.files-processed h3{color:var(--text-primary);margin:0 0 12px;font-size:1.2rem}.file-tags{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:16px}.processed-file-tag{background:var(--primary-color);color:#fff;padding:4px 12px;border-radius:16px;font-size:.8rem;font-weight:500}.btn-large{padding:12px 32px!important;font-size:1rem!important;font-weight:600!important}.generation-section{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:40px 24px}.generation-indicator{text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.generation-spinner{width:48px;height:48px;border:4px solid #e3f2fd;border-top:4px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.generation-indicator h3{color:var(--text-primary);margin:0;font-size:1.3rem}.generation-indicator p{color:var(--text-secondary);margin:0;font-size:1rem}.editable-cell{width:100%;border:none;background:transparent;padding:8px 4px;font-size:.85rem;font-weight:500;text-align:center;color:inherit;outline:none;transition:all .2s ease}.editable-cell:focus{background:#ffffffe6;border:1px solid var(--primary-color);border-radius:4px;box-shadow:0 0 0 2px #2563eb1a}.cobertura-input{text-align:left!important;font-weight:600!important;background:#e2e8f080}.cobertura-input:focus{background:#fffffff2}.valor-input::placeholder{color:#9ca3af;font-style:italic}.table-actions{display:flex;gap:12px;justify-content:center;margin-top:20px;padding:16px;background:var(--background-secondary);border-radius:8px;border-top:1px solid var(--border-color)}.btn-outline{display:flex;align-items:center;gap:8px;padding:10px 20px;background:transparent;color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-outline:hover{background:var(--hover-background);border-color:var(--primary-color);color:var(--primary-color);transform:translateY(-1px)}@media (max-width: 768px){.table-actions{flex-direction:column;align-items:stretch}.file-tags{justify-content:flex-start}.processed-file-tag{font-size:.75rem;padding:3px 8px}.editable-cell{font-size:.75rem;padding:6px 2px}}.cotizacion-section{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:24px}.cotizacion-section h3{color:var(--text-primary);margin:0 0 20px;font-size:1.2rem}.cotizacion-text{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:8px;padding:20px}.cotizacion-text pre{color:var(--text-primary);font-size:.9rem;line-height:1.5;margin:0;white-space:pre-wrap}.cotizacion-tables{display:flex;flex-direction:column;gap:24px}.table-section h4{color:var(--text-primary);margin:0 0 12px;font-size:1.1rem}.table-responsive{overflow-x:auto;border:1px solid var(--border-color);border-radius:8px}.cotizacion-table{width:100%;border-collapse:collapse;font-size:.9rem}.cotizacion-table th{background:var(--primary-color);color:#fff;padding:12px;text-align:left;font-weight:500;border-bottom:1px solid var(--border-color)}.cotizacion-table td{padding:12px;border-bottom:1px solid var(--border-color);color:var(--text-primary)}.cotizacion-table tr:nth-child(2n){background:var(--background-secondary)}.cotizacion-table tr:hover{background:var(--hover-background)}.vehiculo-info{text-align:center;margin-bottom:20px;padding:16px;background:var(--card-background);border:1px solid var(--border-color);border-radius:8px}.vehiculo-info h4{margin:0 0 8px;font-size:1.3rem;font-weight:600;color:var(--text-primary)}.vehiculo-info p{margin:0;color:var(--text-secondary);font-weight:500}.matriz-table{width:100%;border-collapse:collapse;font-size:.85rem;margin:0}.matriz-table .cobertura-header{background:#4a5568;color:#fff;padding:12px 8px;text-align:center;font-weight:600;font-size:.8rem;min-width:140px}.matriz-table .aseguradora-header{padding:12px 8px;text-align:center;font-weight:600;font-size:.8rem;color:#fff;min-width:100px}.aseguradora-header.gnp{background:#2563eb}.aseguradora-header.qualitas{background:#dc2626}.aseguradora-header.hdi{background:#16a34a}.aseguradora-header.other{background:#6b7280}.matriz-table tbody tr:nth-child(2n){background:#f8fafc}.matriz-table tbody tr:nth-child(odd){background:#fff}.matriz-table .cobertura-name{background:#e2e8f0;padding:10px 12px;font-weight:600;color:#1e293b;text-align:left;border-right:2px solid #cbd5e1}.matriz-table .valor{padding:10px 8px;text-align:center;font-weight:500;border:1px solid #e2e8f0}.matriz-table .valor.gnp{background:#2563eb0d}.matriz-table .valor.qualitas{background:#dc26260d}.matriz-table .valor.hdi{background:#16a34a0d}.matriz-table .valor.other{background:#6b72800d}.matriz-table .costo-row{border-top:2px solid #64748b}.matriz-table .costo-row .cobertura-name{background:#64748b;color:#fff;font-weight:700}.matriz-table .costo-row .valor{font-weight:700;font-size:.9rem;color:#1e293b}@media (max-width: 768px){.matriz-table{font-size:.7rem}.matriz-table .cobertura-header,.matriz-table .aseguradora-header{padding:8px 4px;font-size:.7rem}.matriz-table .valor,.matriz-table .cobertura-name{padding:8px 4px}}.precio-destacado{display:block;font-size:1.1rem;font-weight:700;color:#16a34a;margin-top:8px}.recommendations-section h4{color:var(--text-primary);margin:0 0 16px;font-size:1.1rem}.recommendations-list{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.recommendation-item{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:8px;padding:16px}.recommendation-item h5{color:var(--primary-color);margin:0 0 8px;font-size:1rem}.recommendation-item p{color:var(--text-secondary);margin:0 0 8px;line-height:1.5}.recommendation-item ul{margin:0;padding-left:20px;color:var(--text-secondary)}.recommendation-item li{margin-bottom:4px}.btn-primary,.btn-secondary{padding:10px 20px;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px}.btn-primary{background:var(--primary-color);color:#000;font-weight:600}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-primary:disabled{background:var(--disabled-color);cursor:not-allowed}.btn-secondary{background:var(--background-secondary);color:#000;border:1px solid var(--border-color);font-weight:600}.btn-secondary:hover{background:var(--hover-background)}.button-spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite;display:inline-block}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-primary svg,.btn-secondary svg{flex-shrink:0}@media (max-width: 768px){.cotiza-container{padding:16px}.upload-area{padding:24px}.files-header,.texts-header{flex-direction:column;align-items:stretch}.files-actions{justify-content:stretch}.files-actions button{flex:1}.file-details{flex-wrap:wrap}.recommendations-list{grid-template-columns:1fr}}[data-theme=dark]{--card-background: #1f2937;--background-secondary: #374151;--hover-background: #4b5563;--code-background: #111827;--primary-background: rgba(59, 130, 246, .1);--error-background: rgba(239, 68, 68, .1)}[data-theme=light]{--card-background: #ffffff;--background-secondary: #f9fafb;--hover-background: #f3f4f6;--code-background: #f9fafb;--primary-background: rgba(59, 130, 246, .05);--error-background: rgba(239, 68, 68, .05)}.texts-actions{display:flex;gap:.75rem}.processing-section{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:24px;text-align:center}.processing-indicator{display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--primary-color);font-weight:500}.processing-indicator:before{content:"";width:16px;height:16px;border:2px solid var(--primary-color);border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}.text-stats{margin-top:8px;font-size:.8rem;color:var(--text-secondary)}.mail-section{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:24px}.mail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.mail-header h3{color:var(--text-primary);margin:0;font-size:1.2rem}.mail-content{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:8px;padding:20px;max-height:400px;overflow-y:auto}.mail-content *{color:var(--text-primary)!important;font-family:inherit!important}.mail-content h1,.mail-content h2,.mail-content h3,.mail-content h4,.mail-content h5,.mail-content h6{margin-top:1rem;margin-bottom:.5rem}.mail-content p{margin-bottom:1rem;line-height:1.6}.mail-content table{width:100%;border-collapse:collapse;margin:1rem 0}.mail-content table th,.mail-content table td{border:1px solid var(--border-color);padding:8px 12px;text-align:left}.mail-content table th{background:var(--primary-color);color:#fff!important;font-weight:600}.mail-content ul,.mail-content ol{margin:1rem 0;padding-left:2rem}.mail-content li{margin-bottom:.5rem}.file-checkbox{display:none}.file-item{gap:0;padding-left:16px}@media (max-width: 768px){.texts-actions{flex-direction:column;gap:.5rem}.texts-actions button{width:100%}.mail-header{flex-direction:column;align-items:stretch}.mail-content{max-height:300px}}.uploaded-files-section{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:24px;margin:24px 0;box-shadow:0 1px 3px #0000001a}.uploaded-files-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px;padding-bottom:15px;border-bottom:1px solid var(--border-color)}.uploaded-files-header h3{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:600;display:flex;align-items:center;gap:8px}.uploaded-files-header h3:before{content:"📁";font-size:1.1rem}.btn-small{padding:8px 12px;font-size:.85rem;border-radius:6px;font-weight:500}.uploaded-files-list{display:flex;flex-direction:column;gap:12px}.uploaded-file-item{display:flex;align-items:flex-start;justify-content:space-between;padding:16px;background:var(--background-secondary);border:1px solid var(--border-color);border-radius:8px;transition:all .3s ease;position:relative;min-height:80px;gap:12px}.uploaded-file-item:hover{background:var(--hover-background);border-color:var(--primary-color);transform:translateY(-1px);box-shadow:0 2px 8px #007bff1a}.uploaded-file-item .file-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.uploaded-file-item .file-icon{color:var(--primary-color);flex-shrink:0;background:var(--primary-background);padding:8px;border-radius:6px}.uploaded-file-item .file-details{display:flex;flex-direction:column;min-width:0;gap:4px}.uploaded-file-item .file-name{font-weight:600;color:var(--text-primary);font-size:.9rem;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;max-width:100%}.uploaded-file-item .file-meta{font-size:.8rem;color:var(--text-secondary);font-weight:500}.uploaded-file-item .file-status{display:flex;align-items:center;justify-content:flex-end;width:100%}.uploaded-file-item .file-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0;min-width:120px}.status{padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:600;display:flex;align-items:center;gap:4px}.status.pending{background:var(--warning-background);color:var(--warning-color)}.status.processing{background:var(--info-background);color:var(--info-color)}.status.completed{background:var(--success-background);color:var(--success-color)}.uploaded-files-list:empty:after{content:"No hay archivos subidos";display:block;text-align:center;color:var(--text-secondary);font-style:italic;padding:40px 20px;border:2px dashed var(--border-color);border-radius:8px;background:var(--background-secondary)}.files-grid:empty:after{content:"📂 No hay archivos en esta carpeta";display:block;text-align:center;color:var(--text-secondary);font-style:italic;padding:40px 20px;border:2px dashed var(--border-color);border-radius:8px;background:var(--background-secondary);grid-column:1 / -1}@media (max-width: 768px){.uploaded-files-header{flex-direction:column;align-items:stretch;gap:12px}.uploaded-files-header h3{text-align:center;font-size:1.1rem}.uploaded-file-item{padding:14px;flex-direction:column;align-items:stretch;gap:12px;min-height:auto}.uploaded-file-item .file-info{align-items:center}.uploaded-file-item .file-actions{flex-direction:row;justify-content:space-between;align-items:center;min-width:auto}.uploaded-file-item .file-status{justify-content:flex-start}.uploaded-file-item .file-name{font-size:.9rem}.uploaded-file-item .file-meta{font-size:.75rem}.remove-file-btn{padding:6px}}.files-management-section{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:24px;margin:24px 0;box-shadow:0 1px 3px #0000001a}.files-management-section .files-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:15px;padding-bottom:15px;border-bottom:1px solid var(--border-color)}.files-management-section .files-header h3{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:600;display:flex;align-items:center;gap:8px}.files-management-section .files-header h3:before{content:"🔍";font-size:1.1rem}.files-management-section .files-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.add-files-btn{cursor:pointer;display:flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid var(--primary-color);border-radius:6px;color:var(--primary-color);background:var(--card-background);font-size:.9rem;transition:all .2s ease;text-decoration:none;font-weight:500}.add-files-btn:hover{background:var(--hover-background);border-color:var(--primary-hover);color:var(--primary-hover);transform:translateY(-1px)}.files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;margin-top:20px}.file-card{border:1px solid var(--border-color);border-radius:10px;padding:16px;background:var(--background-secondary);transition:all .3s ease;position:relative;min-height:120px;display:flex;flex-direction:column}.file-card:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #007bff1a;transform:translateY(-1px)}.file-card .file-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;gap:10px}.file-card .file-info{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0}.file-card .file-icon{color:var(--text-secondary);flex-shrink:0}.file-card .file-name{font-weight:500;color:var(--text-primary);word-break:break-word;font-size:.85rem;line-height:1.3;max-height:2.6em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.remove-file-btn{background:none;border:none;color:var(--danger-color);cursor:pointer;padding:6px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0;opacity:.7}.file-card:hover .remove-file-btn{opacity:1}.remove-file-btn:hover{background:var(--danger-background);color:var(--danger-hover);transform:scale(1.1)}.file-card .file-stats{font-size:.75rem;color:var(--text-secondary);display:flex;align-items:center;gap:12px;padding-top:10px;margin-top:auto;border-top:1px solid var(--border-color);font-weight:500}@media (max-width: 768px){.files-management-section .files-header{flex-direction:column;align-items:stretch;gap:15px}.files-management-section .files-actions{justify-content:center;flex-wrap:wrap}.files-grid{grid-template-columns:1fr;gap:12px}.add-files-btn{font-size:.85rem;padding:6px 12px}}.mail-section{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:24px;margin:20px 0}.mail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:15px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.mail-title{display:flex;align-items:center;gap:10px}.mail-title svg{color:var(--primary-color)}.mail-title h3{color:var(--text-primary);margin:0;font-size:1.3rem;font-weight:600}.mail-actions{display:flex;flex-direction:column;gap:12px;align-items:stretch}.secondary-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.client-info-summary{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:8px;padding:16px;margin-bottom:20px}.client-summary-header h4{color:var(--text-primary);margin:0 0 16px;font-size:1.1rem;font-weight:600}.client-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.summary-item{display:flex;flex-direction:column;gap:4px}.summary-label{font-size:.8rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:.9rem;color:var(--text-primary);font-weight:500}.mail-preview{margin-bottom:24px}.mail-preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;background:var(--background-secondary);border-radius:8px}.mail-preview-header h4{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:500}.mail-preview-info{color:var(--text-secondary);font-size:.85rem;font-style:italic}.mail-content{background:#fff;border:1px solid var(--border-color);border-radius:8px;padding:20px;max-height:500px;overflow-y:auto;box-shadow:inset 0 1px 3px #0000001a}.mail-code-section{margin-top:24px}.mail-code-section details{border:1px solid var(--border-color);border-radius:8px;background:var(--background-secondary)}.mail-code-section summary{padding:12px 16px;cursor:pointer;display:flex;align-items:center;gap:8px;font-weight:500;color:var(--text-primary);background:var(--hover-background);border-radius:8px 8px 0 0;transition:background-color .2s}.mail-code-section summary:hover{background:var(--primary-background);color:var(--primary-color)}.mail-code-section details[open] summary{border-bottom:1px solid var(--border-color);border-radius:8px 8px 0 0}.mail-code{padding:16px;background:#f8f9fa;max-height:300px;overflow-y:auto}.mail-code pre{margin:0;white-space:pre-wrap;word-wrap:break-word;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8rem;line-height:1.4;color:#333}.mail-code code{background:none;padding:0;border-radius:0;font-size:inherit}.mail-content::-webkit-scrollbar,.mail-code::-webkit-scrollbar{width:8px}.mail-content::-webkit-scrollbar-track,.mail-code::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.mail-content::-webkit-scrollbar-thumb,.mail-code::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.mail-content::-webkit-scrollbar-thumb:hover,.mail-code::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width: 768px){.mail-header{flex-direction:column;align-items:stretch}.mail-actions{justify-content:center}.mail-preview-header{flex-direction:column;align-items:flex-start;gap:8px}.mail-content{padding:12px;max-height:400px}.mail-code pre{font-size:.75rem}}.mail-form-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.mail-form-modal{background:var(--card-background);border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 25px #0000004d}.mail-form-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-color)}.mail-form-header h3{color:var(--text-primary);margin:0;font-size:1.3rem;font-weight:600}.close-form-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:6px;transition:all .2s ease}.close-form-btn:hover{background:var(--danger-background);color:var(--danger-color)}.client-form{padding:24px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:24px}.form-group{display:flex;flex-direction:column}.form-group label{color:var(--text-primary);font-weight:500;margin-bottom:6px;font-size:.9rem}.form-group input{padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--card-background);color:var(--text-primary);font-size:.9rem;transition:all .2s ease}.form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #007bff1a}.form-group input::placeholder{color:var(--text-secondary)}.form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:16px;border-top:1px solid var(--border-color)}@media (max-width: 768px){.mail-form-overlay{padding:10px}.mail-form-modal{max-height:95vh}.form-grid{grid-template-columns:1fr;gap:16px}.form-actions{flex-direction:column}.mail-form-header{padding:16px 20px}.client-form{padding:20px}}.form-group-full{grid-column:1 / -1}.sender-select{width:100%;padding:12px;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;background:var(--input-background);color:var(--text-primary);cursor:pointer;transition:all .3s ease}.sender-select:hover{border-color:var(--primary-color)}.sender-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha)}.sender-help{display:block;margin-top:6px;color:var(--text-secondary);font-size:.875rem}.sender-select option{padding:8px;background:var(--card-background);color:var(--text-primary)}.button-spinner{display:inline-block;width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite;margin-right:8px}.btn-primary:disabled{position:relative;overflow:hidden;animation:pulse-loading 2s ease-in-out infinite}@keyframes pulse-loading{0%,to{box-shadow:0 0 #28a74566}50%{box-shadow:0 0 0 8px #28a74500}}.mail-generation-loading{display:flex;align-items:center;justify-content:center;padding:25px 20px;background:var(--card-background);border-radius:8px;border:1px dashed var(--primary-color);max-width:500px;margin:15px auto}.mail-generation-loading .loading-content{text-align:center;color:var(--text-secondary)}.mail-generation-loading .loading-spinner{width:24px;height:24px;border:2px solid var(--border-color);border-top:2px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 12px}.mail-generation-loading .loading-dots:after{content:"";animation:dots 2s infinite}@keyframes dots{0%,20%{content:""}40%{content:"."}60%{content:".."}80%,to{content:"..."}}.progress-container{width:100%;max-width:250px;margin:15px auto;text-align:center}.progress-bar{width:100%;height:8px;background-color:var(--border-color);border-radius:4px;overflow:hidden;margin-bottom:8px;position:relative}.progress-fill{height:100%;background:linear-gradient(90deg,#28a745,#20c997,#17a2b8);border-radius:4px;transition:width .5s ease-in-out;position:relative;overflow:hidden}.progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-text{font-size:.875rem;font-weight:600;color:var(--primary-color)}.mail-generation-loading h3{color:var(--primary-color);margin-bottom:15px;font-size:1.1rem}.mail-generation-loading p{color:var(--text-secondary);margin:8px 0;font-size:.9rem;font-weight:500}.mail-generation-loading small{color:var(--text-secondary);opacity:.8;font-style:italic;font-size:.8rem}.mail-actions .btn-primary{background:linear-gradient(135deg,#28a745,#20c997)!important;border-color:#28a745!important;color:#fff!important;width:100%!important;font-size:1rem!important;font-weight:600!important}.secondary-actions .btn-secondary,.secondary-actions .btn-outline{flex:1;min-width:140px;font-size:.85rem!important}.mail-actions .btn-primary:hover{background:linear-gradient(135deg,#218838,#1e7e34)!important;border-color:#1e7e34!important}.btn-primary,.btn-secondary,.btn-outline{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:12px 20px!important;font-size:.9rem!important;font-weight:500!important;border-radius:6px!important;border:1px solid;cursor:pointer;transition:all .2s ease;text-decoration:none;min-height:44px!important;box-sizing:border-box;text-align:center!important;white-space:nowrap;background:#fff!important;border-color:#ddd!important;color:#333!important}.btn-primary:hover,.btn-secondary:hover,.btn-outline:hover{background:#f8f9fa!important;border-color:#007bff!important;color:#007bff!important}.btn-primary:disabled,.btn-secondary:disabled,.btn-outline:disabled{opacity:.6;cursor:not-allowed}.btn-primary svg,.btn-secondary svg,.btn-outline svg{width:16px!important;height:16px!important}.clientes-container{padding:20px;max-width:1400px;margin:0 auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.clientes-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e1e5e9}.header-left h1{margin:0 0 8px;color:#2c3e50;font-size:2.2rem;font-weight:600}.header-left p{margin:0;color:#7f8c8d;font-size:1rem}.refresh-btn{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px #3498db33}.refresh-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px #3498db4d}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #e1e5e9;border-radius:12px;padding:20px;text-align:center;box-shadow:0 2px 8px #0000001a;transition:transform .3s ease}.stat-card:hover{transform:translateY(-4px)}.stat-number{font-size:2.5rem;font-weight:700;color:#2c3e50;margin-bottom:8px}.stat-label{font-size:.9rem;color:#7f8c8d;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.filters-section{background:#fff;border:1px solid #e1e5e9;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px #0000001a}.search-box{margin-bottom:15px}.search-input{width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.search-input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.filter-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.filter-select{padding:8px 12px;border:1px solid #e1e5e9;border-radius:6px;font-size:.9rem;background:#fff;cursor:pointer;transition:border-color .3s ease}.filter-select:focus{outline:none;border-color:#3498db}.sort-btn{background:#f8f9fa;border:1px solid #e1e5e9;border-radius:6px;padding:8px 12px;font-size:1.1rem;cursor:pointer;transition:all .3s ease}.sort-btn:hover{background:#e9ecef;border-color:#3498db}.results-info{margin-bottom:20px;color:#7f8c8d;font-size:.9rem;font-weight:500}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.spinner{width:40px;height:40px;border:4px solid #e1e5e9;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.clients-list{display:flex;flex-direction:column;gap:16px}.client-card{background:#fff;border:1px solid #e1e5e9;border-radius:12px;overflow:hidden;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #0000001a}.client-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.client-card.expanded{border-color:#3498db;box-shadow:0 4px 16px #3498db33}.client-header{display:flex;justify-content:space-between;align-items:center;padding:20px;background:linear-gradient(135deg,#f8f9fa,#fff)}.client-info{flex:1}.client-name{margin:0 0 8px;color:#2c3e50;font-size:1.3rem;font-weight:600}.client-meta{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.policy-count{font-size:.9rem;color:#7f8c8d;font-weight:500}.expand-icon{font-size:1.2rem;color:#7f8c8d;transition:transform .3s ease}.client-card.expanded .expand-icon{transform:rotate(180deg)}.status-badge{padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.active{background:#d4edda;color:#155724}.status-badge.expired{background:#f8d7da;color:#721c24}.status-badge.mixed{background:#fff3cd;color:#856404}.status-badge.unknown{background:#e2e3e5;color:#6c757d}.client-details{background:#f8f9fa;border-top:1px solid #e1e5e9;padding:20px}.policies-section h4{margin:0 0 16px;color:#2c3e50;font-size:1.1rem;font-weight:600}.policies-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-bottom:20px}.policy-card{background:#fff;border:1px solid #e1e5e9;border-radius:8px;padding:16px;transition:transform .3s ease}.policy-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.policy-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #e1e5e9}.policy-number{font-weight:600;color:#2c3e50;font-size:1rem}.policy-ramo{background:#3498db;color:#fff;padding:4px 8px;border-radius:4px;font-size:.8rem;font-weight:500}.policy-details p{margin:6px 0;font-size:.9rem;color:#2c3e50}.policy-details strong{color:#34495e;font-weight:600}.policy-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:8px;border-top:1px solid #e1e5e9}.policy-table{font-size:.8rem;color:#7f8c8d;font-style:italic}.pdf-link{color:#3498db;text-decoration:none;font-size:.9rem;font-weight:500;transition:color .3s ease}.pdf-link:hover{color:#2980b9;text-decoration:underline}.client-summary{background:#fff;border:1px solid #e1e5e9;border-radius:8px;padding:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.summary-item{display:flex;justify-content:space-between;align-items:center}.summary-label{font-size:.9rem;color:#7f8c8d;font-weight:500}.summary-value{font-weight:600;font-size:1rem}.summary-value.active{color:#27ae60}.summary-value.expired{color:#e74c3c}.no-results{text-align:center;padding:60px 20px;color:#7f8c8d;font-size:1.1rem}@media (max-width: 768px){.clientes-container{padding:15px}.clientes-header{flex-direction:column;gap:15px}.header-left h1{font-size:1.8rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.filter-controls{flex-direction:column;align-items:stretch}.client-meta{flex-direction:column;align-items:flex-start;gap:8px}.policies-grid,.client-summary{grid-template-columns:1fr}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}.stat-number{font-size:2rem}.client-name{font-size:1.1rem}}.resumen-container{max-width:1400px;margin:0 auto;padding:30px;background-color:#fff;min-height:100vh}.resumen-header{text-align:center;margin-bottom:40px;padding:30px;background:#000;border-radius:8px;color:#fff;border:1px solid #333333}.resumen-header h1{margin:0 0 10px;font-size:42px;font-weight:700}.resumen-header .subtitle{margin:0;font-size:18px;opacity:.7}.resumen-controls{background:#fff;padding:30px;border-radius:8px;border:1px solid #e5e5e5;margin-bottom:30px}.date-range-selector{display:flex;align-items:center;gap:15px;margin-bottom:20px}.date-range-selector label{font-weight:600;color:#334155;font-size:15px}.date-range-selector select{padding:10px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:15px;background:#fff;cursor:pointer;transition:all .2s;min-width:250px}.date-range-selector select:hover{border-color:#667eea}.date-range-selector select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.custom-date-inputs{display:flex;gap:20px;margin-bottom:20px;padding:20px;background:#f8fafc;border-radius:8px}.date-input-group{display:flex;flex-direction:column;gap:8px}.date-input-group label{font-weight:600;color:#475569;font-size:14px}.date-input-group input[type=date]{padding:10px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;transition:all .2s;min-width:180px}.date-input-group input[type=date]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.action-buttons{display:flex;gap:15px;margin-bottom:20px}.action-buttons button{padding:12px 28px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:8px}.action-buttons button.primary{background:#000;color:#fff;border:1px solid #333333}.action-buttons button.primary:hover:not(:disabled){background:#333}.action-buttons button.secondary{background:#fff;color:#000;border:1px solid #000000}.action-buttons button.secondary:hover:not(:disabled){background:#f5f5f5}.action-buttons button:disabled{opacity:.6;cursor:not-allowed}.auto-generate-toggle{padding:15px;background:#f0fdf4;border-radius:8px;border:1px solid #bbf7d0}.toggle-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:15px;color:#166534;font-weight:500}.toggle-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.loading-state{text-align:center;padding:80px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d}.spinner{width:60px;height:60px;border:6px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{to{transform:rotate(360deg)}}.loading-state p{color:#64748b;font-size:18px;font-weight:500}.resumen-content{display:flex;flex-direction:column;gap:30px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.stat-card{padding:30px;border-radius:12px;color:#fff;text-align:center;box-shadow:0 4px 12px #0000001a;transition:transform .3s}.stat-card:hover{transform:translateY(-5px)}.stat-card.purple,.stat-card.pink,.stat-card.blue,.stat-card.green{background:#000;border:1px solid #333333}.stat-value{font-size:48px;font-weight:700;margin-bottom:8px;color:#fff}.stat-label{font-size:16px;opacity:1;font-weight:600;color:#fff}.gpt-analysis-card{background:#fff;padding:30px;border-radius:8px;border:1px solid #e5e5e5}.gpt-analysis-card h2{margin:0 0 20px;color:#1e293b;font-size:26px}.analysis-content{color:#475569;font-size:16px;line-height:1.8}.analysis-content p{margin:0;white-space:pre-line}.section-card{background:#fff;padding:30px;border-radius:8px;border:1px solid #e5e5e5}.section-card h2{margin:0 0 20px;color:#000;font-size:24px}.section-card.warning,.section-card.info,.section-card.success{border:1px solid #e5e5e5;background:#fff}.table-container{overflow-x:auto;border-radius:8px}.data-table{width:100%;border-collapse:collapse;background:#fff}.data-table thead{background:#f8fafc;border-bottom:2px solid #e2e8f0}.data-table th{padding:14px 16px;text-align:left;font-weight:600;color:#334155;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.data-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background .2s}.data-table tbody tr:hover{background:#f8fafc}.data-table td{padding:14px 16px;color:#475569;font-size:14px}.total-amount{padding:20px;margin-top:15px;background:#dbeafe;border-radius:8px;text-align:right;color:#1e40af;font-size:16px}.user-activity-list{display:flex;flex-direction:column;gap:15px}.user-activity-item{padding:20px;background:#fff;border-radius:8px;border:1px solid #d1fae5;transition:all .2s}.user-activity-item:hover{box-shadow:0 4px 12px #10b9811a;transform:translate(5px)}.user-name{font-weight:600;color:#166534;margin-bottom:10px;font-size:16px}.user-stats{display:flex;gap:20px;flex-wrap:wrap;font-size:14px;color:#15803d}.user-stats span{padding:6px 12px;background:#dcfce7;border-radius:6px}.empty-state{text-align:center;padding:100px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d}.empty-icon{font-size:80px;margin-bottom:20px;opacity:.5}.empty-state h3{margin:0 0 10px;color:#334155;font-size:24px}.empty-state p{color:#64748b;font-size:16px;margin:0}.daily-activities-list{display:flex;flex-direction:column;gap:1rem}.daily-activity-item{padding:1rem;background-color:#f9f9f9;border-left:3px solid #000000;border-radius:4px;transition:all .2s ease}.daily-activity-item:hover{background-color:#f0f0f0;transform:translate(3px)}.activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.activity-user{font-weight:700;color:#000;font-size:.95rem}.activity-date{font-size:.85rem;color:#666}.activity-title{font-weight:600;color:#333;margin-bottom:.5rem;font-size:.95rem}.activity-description{color:#666;line-height:1.6;font-size:.9rem}@media (max-width: 768px){.resumen-container{padding:15px}.resumen-header h1{font-size:32px}.stats-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.action-buttons button{width:100%;justify-content:center}.custom-date-inputs{flex-direction:column}.user-stats{flex-direction:column;gap:10px}}.policies-table-container{overflow-x:auto;margin-top:15px}.policies-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e5e5e5;border-radius:8px;overflow:hidden}.policies-table th{background:#f8f9fa;color:#334155;font-weight:600;padding:12px 15px;text-align:left;border-bottom:1px solid #e5e5e5;font-size:14px}.policies-table td{padding:12px 15px;border-bottom:1px solid #f1f5f9;color:#475569;font-size:14px}.policies-table tbody tr:hover{background-color:#f8f9fa}.policies-table tbody tr:last-child td{border-bottom:none}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase}.status-badge.active{background-color:#dcfce7;color:#166534}.status-badge.inactive{background-color:#fee2e2;color:#dc2626}.no-data-message{text-align:center;padding:40px 20px;color:#64748b;background:#f8f9fa;border-radius:8px;margin-top:15px}.no-data-message p{margin:0;font-size:14px;font-style:italic}
