:root{--bg:#f2f2f2;--panel:#fff;--muted:#666;--text:#333;--primary:#7c1331}*{box-sizing:border-box}body{color:var(--text);background:linear-gradient(135deg,#f2f2f2 0%,#e8e8e8 100%);min-height:100vh;margin:0;font:16px/1.4 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}label{color:var(--muted);margin-bottom:6px;font-size:12px;display:block}input,textarea,select{color:#333;background:#fff;border:2px solid #ddd;border-radius:8px;width:100%;padding:10px 12px}textarea{resize:vertical;min-height:80px}button{appearance:none;color:#fff;cursor:pointer;background:#7c1331;border:none;border-radius:8px;padding:10px 12px;font-weight:600}button:hover{background:#5568d3}button:disabled{opacity:.4;cursor:not-allowed}.btn-regenerate{color:#cbd5e1;background:#148311}header{text-align:center;z-index:1;background:#fff;border-bottom:1px solid #e0e0e0;padding:20px;position:sticky;top:0}header h1{margin:0;font-size:20px}main{grid-template-columns:1fr;gap:16px;max-width:900px;margin:0 auto;padding:16px;display:grid}.row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.card{background:#fff;border-radius:12px;padding:20px 24px;box-shadow:0 4px 6px #0000001a}.card h2{color:#333;background:#f8f9fa;border-bottom:1px solid #eee;margin:0;padding:12px 14px;font-size:14px}.form{gap:10px;padding:14px;display:grid}.msgs{flex-direction:column;gap:10px;height:70vh;padding:10px;display:flex;overflow:auto}.msg{border:1px solid #e5e7eb;border-radius:10px;max-width:80%;padding:10px 12px}.user{background:#eef2ff;border-color:#c7d2fe;align-self:flex-end}.bot{background:#f1f5f9;border-color:#e2e8f0;align-self:flex-start}footer{text-align:center;color:#666;padding:10px;font-size:12px}.muted{color:#666;font-size:12px}.align-end{align-self:end}.materia-option{cursor:pointer;text-align:left;background:#f8f9fa;border:2px solid #dee2e6;border-radius:8px;flex-direction:column;align-items:flex-start;width:100%;margin-bottom:10px;padding:15px;transition:all .2s;display:flex}.materia-option:hover{color:#fff;background:#7c1331;border-color:#7c1331}.materia-option strong{color:inherit;margin-bottom:5px;font-size:16px;display:block}.materia-option small{color:#6c757d;font-size:12px;display:block}.materia-option:hover small{color:#fffc}.dashboard-container{max-width:1400px;margin:0 auto}.btn-success{color:#fff;cursor:pointer;background:#28a745;border:none;border-radius:6px;padding:8px 16px;font-size:14px;transition:background .3s}.btn-success:hover{background:#218838}nav{background:#fff;border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}nav h1{margin:0;font-size:18px}.login-nav{justify-content:center}.login-container{max-width:420px;margin:40px auto;padding:0 16px}@media (width<=900px){main{grid-template-columns:1fr}}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:20px;display:grid}.metric-card{background:#fff;border-radius:12px;padding:25px;transition:transform .3s,box-shadow .3s;box-shadow:0 4px 6px #0000001a}.metric-card:hover{transform:translateY(-5px);box-shadow:0 8px 15px #0003}.metric-card h3{color:#7c1331;text-transform:uppercase;letter-spacing:1px;margin-bottom:15px;font-size:16px}.metric-value{color:#333;margin-bottom:10px;font-size:36px;font-weight:700}.metric-label{color:#666;font-size:14px}.status-ok{color:#28a745}.status-error{color:#dc3545}.status-warning{color:#ffc107}.refresh-info{text-align:center;color:#666;background:#ffffffe6;border-radius:8px;margin-top:20px;padding:15px;font-size:14px}.refresh-btn{color:#fff;cursor:pointer;background:#7c1331;border:none;border-radius:6px;margin-top:10px;padding:10px 20px;font-size:14px;transition:background .3s}.refresh-btn:hover{background:#5568d3}.button-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.button-row #login,.button-row #register{margin:0}.password-toggle{cursor:pointer;color:#7c1331b3;background:0 0;border:1px solid #7c133133;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;min-width:40px;height:40px;padding:8px 10px;font-size:16px;transition:all .2s;display:flex}.password-toggle:hover{color:#7c1331;background:#7c13310d;border-color:#7c133166;transform:scale(1.05)}.password-toggle:active{transform:scale(.98)}.password-toggle:focus{outline-offset:2px;outline:2px solid #7c13314d}.context-tools{align-items:center;gap:8px;margin-bottom:12px;display:flex}.tool-select{appearance:none;color:#6c6161;cursor:pointer;background:#ffffff14 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M7 10l5 5 5-5' stroke='%23e3e3e3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right 6px center/16px no-repeat;border:1px solid #4945451a;border-radius:16px;padding:6px 28px 6px 10px;font-size:13px;font-weight:400;transition:all .15s;position:relative}.tool-select:hover:not(:disabled){background-color:#ffffff1f;border-color:#fff3}.tool-select:focus{background-color:#ffffff26;border-color:#7c133166;outline:none}.tool-select:disabled{opacity:.4;cursor:not-allowed}.tool-select option{color:#e3e3e3;background:#2f2f2f;padding:10px}@media (width<=768px){.context-tools{flex-wrap:wrap}}.msg h1,.msg h2,.msg h3{color:#7c1331;margin:8px 0 6px;font-size:1em;font-weight:600}.msg h2{font-size:1.1em}.msg h3{font-size:1em}.msg p{margin:8px 0}.msg ul{margin:8px 0;padding-left:20px}.msg li{margin:4px 0}.msg code{background:#7c13311a;border-radius:4px;padding:2px 4px;font-family:Courier New,monospace;font-size:.9em}.msg pre{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin:8px 0;padding:12px;overflow-x:auto}.msg pre code{background:0 0;padding:0;font-size:.85em}.msg strong{color:#7c1331;font-weight:600}.form-links{border-top:1px solid #eee;flex-direction:column;gap:8px;margin-top:16px;padding-top:16px;display:flex}.form-links a{color:#7c1331;font-size:13px;text-decoration:none;transition:color .2s}.form-links a:hover{color:#5568d3;text-decoration:underline}.chat-layout{gap:20px;height:calc(100vh - 200px);min-height:600px;display:flex}.chat-main-area{flex-direction:column;flex:1;min-width:0;display:flex}.conversations-sidebar{background:#f8f9fa;border-radius:12px;flex-shrink:0;width:280px;padding:16px;overflow-y:auto}.conversations-sidebar .sidebar-header{border-bottom:2px solid #e0e0e0;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.conversations-sidebar .sidebar-header h3{color:#333;margin:0;font-size:16px;font-weight:600}.btn-new-chat{color:#fff;cursor:pointer;background:#7c1331;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;transition:all .2s;display:flex}.btn-new-chat:hover{background:#5a0e23;transform:scale(1.05)}.conversations-list{flex-direction:column;gap:8px;display:flex}.loading-conversations,.empty-conversations{text-align:center;color:#999;padding:20px;font-size:14px}.conversation-group{margin-bottom:16px}.conversation-group-title{color:#666;text-transform:uppercase;margin-bottom:8px;padding-left:4px;font-size:12px;font-weight:600}.conversation-item{cursor:pointer;background:#fff;border:2px solid #0000;border-radius:8px;padding:12px;transition:all .2s;position:relative}.conversation-item:hover{background:#f0f0f0;border-color:#7c1331}.conversation-item.active{color:#fff;background:#7c1331;border-color:#7c1331}.conversation-item.active .conversation-name,.conversation-item.active .conversation-meta{color:#fff}.conversation-name{color:#333;white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:14px;font-weight:500;overflow:hidden}.conversation-meta{color:#999;justify-content:space-between;align-items:center;font-size:11px;display:flex}.conversation-materia{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.conversation-delete{color:#f44;cursor:pointer;opacity:0;background:0 0;border:none;margin-left:8px;padding:4px;font-size:16px;transition:opacity .2s}.conversation-item:hover .conversation-delete{opacity:1}.conversation-delete:hover{color:#c00;transform:scale(1.2)}.chat-main{flex-direction:column;flex:1;min-width:0;display:flex}@media (width<=1024px){.chat-layout{flex-direction:column;height:auto}.msgs{flex:none;height:50vh}.conversations-sidebar{width:100%;height:200px;max-height:300px}}@media (width<=768px){.conversations-sidebar{display:none}}.header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.header>div{align-items:center;gap:10px;display:flex}.btn-primary{color:#fff;cursor:pointer;background:#7c1331;border:none;border-radius:6px;padding:10px 20px;font-size:14px;transition:background .3s}.btn-primary:hover{background:#5568d3}.btn-secondary{color:#333;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:6px;padding:10px 20px;font-size:14px}.btn-secondary:hover{background:#f5f5f5}.btn-warning{color:#fff;cursor:pointer;background:#f57c00;border:none;border-radius:6px;padding:10px 20px;font-size:14px;transition:background .3s}.btn-warning:hover{background:#ef6c00}.table-container{background:#fff;border-radius:12px;margin-top:20px;padding:20px;overflow-x:auto;box-shadow:0 4px 6px #0000001a}.users-table{border-collapse:collapse;width:100%;font-size:14px}.users-table th{text-align:left;color:#333;background:#f8f9fa;border-bottom:2px solid #dee2e6;padding:12px 8px;font-weight:600}.users-table td{color:#555;border-bottom:1px solid #dee2e6;padding:12px 8px}.users-table tbody tr:hover{background:#f8f9fa}.badge{border-radius:4px;padding:4px 8px;font-size:12px;font-weight:600;display:inline-block}.badge-estudiante{color:#1976d2;background:#e3f2fd}.badge-docente{color:#7b1fa2;background:#f3e5f5}.badge-admin{color:#e65100;background:#ffe0b2}.badge-activo,.badge-success{color:#2e7d32;background:#e8f5e9}.badge-inactivo,.badge-inactive{color:#c62828;background:#ffebee}.action-btn{cursor:pointer;background:0 0;border:none;margin:0 2px;padding:4px 8px;font-size:16px;transition:transform .2s}.action-btn:hover{transform:scale(1.2)}.modal{z-index:1000;background:#0009;justify-content:center;align-items:center;width:100%;height:100%;animation:.3s fadeIn;display:none;position:fixed;top:0;left:0}.modal.show{justify-content:center;align-items:center;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:90vh;padding:20px;animation:.3s slideIn;position:relative;overflow-y:auto;box-shadow:0 10px 30px #0000004d}@keyframes slideIn{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.modal-content h2{color:#7c1331;margin:0 0 20px;padding-right:30px;font-size:24px}.modal-content .close{color:#999;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-size:32px;font-weight:700;line-height:1;display:flex;position:absolute;top:15px;right:20px}.modal-content .close:hover,.modal-content .close:focus{color:#333;text-decoration:none}.modal-header{border-bottom:1px solid #dee2e6;justify-content:space-between;align-items:center;padding:20px;display:flex}.modal-header h3{color:#7c1331;margin:0}.close-btn{color:#999;cursor:pointer;background:0 0;border:none;width:30px;height:30px;padding:0;font-size:28px;line-height:1}.close-btn:hover{color:#333}.modal-body{padding:20px}.form-group{margin-bottom:16px}.form-group label{color:#333;margin-bottom:6px;font-size:14px;font-weight:600;display:block}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password],.form-group select,.form-group textarea{border:2px solid #ddd;border-radius:6px;width:100%;padding:10px;font-family:inherit;font-size:14px;transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#7c1331;outline:none}.form-group textarea{resize:vertical;min-height:80px}.form-group input[type=checkbox]{margin-right:8px}.form-hint{color:#666;margin-top:4px;font-size:12px;display:block}.form-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.header-section{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px;display:flex}.header-section h1{color:#333;margin:0;font-size:28px}.content-section{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.search-section{flex-wrap:wrap;align-items:center;gap:15px;margin-bottom:20px;display:flex}.search-input{border:1px solid #ddd;border-radius:6px;flex:1;min-width:250px;padding:10px 15px;font-size:14px}.filters{flex-wrap:wrap;align-items:center;gap:15px;display:flex}.filter-select{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:6px;padding:8px 12px;font-size:14px}.data-table{border-collapse:collapse;width:100%}.data-table thead{background:#f8f9fa}.data-table th{text-align:left;color:#333;border-bottom:2px solid #dee2e6;padding:12px 8px;font-weight:600}.data-table td{color:#555;border-bottom:1px solid #dee2e6;padding:12px 8px}.data-table tbody tr:hover{background:#f8f9fa}.text-center,.actions-cell{text-align:center}.btn-icon{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:5px 10px;font-size:20px;transition:background .2s}.btn-icon:hover{background:#f0f0f0}.btn-danger{color:#fff;cursor:pointer;background:#dc3545;border:none;border-radius:6px;padding:10px 20px;font-size:14px;transition:background .3s}.btn-danger:hover{background:#c82333}.modal-actions{flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:20px;display:flex}.docentes-list{background:#f9f9f9;border:1px solid #ddd;border-radius:6px;max-height:300px;margin-bottom:10px;padding:10px;overflow-y:auto}.docentes-list .empty-message{text-align:center;color:#999;padding:20px;font-style:italic}.docente-item{background:#fff;border:1px solid #e0e0e0;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:10px;transition:box-shadow .2s;display:flex}.docente-item:hover{box-shadow:0 2px 4px #0000001a}.docente-item:last-child{margin-bottom:0}.docente-info{flex-direction:column;flex:1;gap:4px;display:flex}.docente-info strong{color:#333;font-size:14px}.docente-details{color:#666;align-items:center;gap:8px;font-size:12px;display:flex}.docente-actions{gap:5px;display:flex}.btn-icon-small{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:16px;transition:background .2s}.btn-icon-small:hover{background:#f0f0f0}.btn-small{padding:6px 12px;font-size:13px}.modal-large{max-width:900px}.info-box{background:#e3f2fd;border:1px solid #90caf9;border-radius:8px;margin-bottom:20px;padding:15px}.info-box ul{margin:10px 0;padding-left:25px}.info-box li{margin:5px 0}.progress-bar{background:#f0f0f0;border-radius:15px;width:100%;height:30px;margin-bottom:10px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#7c1331 0%,#5568d3 100%);width:0%;height:100%;transition:width .3s}.link-primary{color:#7c1331;font-weight:500;text-decoration:none}.link-primary:hover{color:#5568d3;text-decoration:underline}@media (width<=768px){.header{flex-direction:column;align-items:stretch}.header>div{justify-content:space-between}.table-container{overflow-x:scroll}.users-table{min-width:800px}.modal-content{width:95%;margin:10px}.modal-large{max-width:95%}.modal-actions{flex-direction:column}}.kpis{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:20px;display:grid}.kpi{background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 6px #0000001a}.kpi .label{color:#666;text-transform:uppercase;letter-spacing:.5px;font-size:12px}.kpi .value{color:#333;font-size:28px;font-weight:700}.row-wrap{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=900px){.row-wrap{grid-template-columns:1fr}}.table{border-collapse:collapse;width:100%;font-size:14px}.table th,.table td{vertical-align:top;text-align:left;border-bottom:1px solid #eee;padding:10px 8px}.controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.controls select,.controls input{color:#333;background:#fff;border:2px solid #ddd;border-radius:8px;padding:8px 10px}.card canvas{max-height:400px}.table-scrollable{max-height:500px;display:block;overflow-y:auto}.select-responsive{background:#fff;border:2px solid #ddd;border-radius:8px;width:100%;max-width:300px;padding:8px 10px;font-size:14px}.table thead{z-index:1;background:#fff;position:sticky;top:0}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px;display:flex}.header-actions{gap:10px;display:flex}.table-container{width:100%;overflow-x:auto}.files-container{position:relative;overflow-x:auto}.table-container .table{table-layout:fixed;width:100%}.table-container .table th:first-child,.table-container .table td:first-child{text-overflow:ellipsis;white-space:nowrap;width:28%;overflow:hidden}.table-container .table th:nth-child(2),.table-container .table td:nth-child(2){text-overflow:ellipsis;white-space:nowrap;width:20%;overflow:hidden}.table-container .table th:nth-child(3),.table-container .table td:nth-child(3){text-overflow:ellipsis;white-space:nowrap;width:18%;overflow:hidden}.table-container .table th:nth-child(4),.table-container .table td:nth-child(4){width:10%}.table-container .table th:nth-child(5),.table-container .table td:nth-child(5){color:#666;width:14%;font-size:12px}.table-container .table th:nth-child(6),.table-container .table td:nth-child(6){width:10%}.files-table th,.files-table td{text-align:left;border-bottom:1px solid #e0e0e0;padding:12px}.files-table th{color:#495057;background:#f8f9fa;font-weight:600}.files-table tr:hover{background:#f8f9fa}.file-actions{gap:8px;display:flex}.file-actions button{cursor:pointer;color:#fff;background:#6c757d;border:none;border-radius:3px;padding:4px 8px;font-size:12px}.file-actions button:hover{opacity:.8}.file-actions .btn-edit{background:#007bff}.file-actions .btn-preview{background:#28a745}.file-actions .btn-delete{background:#dc3545}.file-size,.file-modified{color:#666;font-size:.9em}.loading{text-align:center;color:#666;padding:40px;font-style:italic}.empty-state{text-align:center;color:#999;padding:40px}.form-group textarea{resize:vertical;font-family:Monaco,Menlo,Ubuntu Mono,monospace;line-height:1.5}.preview-content{color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}.preview-content h1,.preview-content h2,.preview-content h3,.preview-content h4,.preview-content h5,.preview-content h6{color:#7c1331;margin-top:1.5em;margin-bottom:.5em}.preview-content h1{border-bottom:2px solid #7c1331;padding-bottom:.3em}.preview-content code{background:#f4f4f4;border-radius:3px;padding:2px 4px;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.preview-content pre{background:#f8f8f8;border-left:4px solid #007bff;border-radius:6px;padding:16px;overflow-x:auto}.preview-content blockquote{background:#f9f9f9;border-left:4px solid #ddd;margin:0;padding:10px 20px;font-style:italic}.preview-content table{border-collapse:collapse;width:100%;margin:1em 0}.preview-content table th,.preview-content table td{text-align:left;border:1px solid #ddd;padding:8px 12px}.preview-content table th{background:#f8f9fa;font-weight:600}@media (width<=768px){.page-header{flex-direction:column;align-items:flex-start;gap:15px}.header-actions{justify-content:flex-start;width:100%}.files-table{font-size:14px}.files-table th,.files-table td{padding:8px}.form-actions{flex-direction:column}}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.stat-card{background:#fff;border-radius:10px;padding:1.5rem;transition:transform .2s;box-shadow:0 2px 10px #0000001a}.stat-card:hover{transform:translateY(-2px)}.stat-number{margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.stat-label{color:#666;text-transform:uppercase;letter-spacing:1px;font-size:.9rem}.error-critical{color:#e74c3c}.error-warning{color:#f39c12}.error-resolved{color:#27ae60}.error-info{color:#3498db}.error-filters{background:#fff;border-radius:10px;margin-bottom:2rem;padding:1.5rem;box-shadow:0 2px 10px #0000001a}.filter-row{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.filter-group{flex-direction:column;gap:.3rem;display:flex}.filter-group label{color:#666;font-size:.85rem;font-weight:500}.error-item{border-bottom:1px solid #eee;padding:1.5rem;transition:background-color .2s}.error-item:hover{background-color:#f8f9fa}.error-item:last-child{border-bottom:none}.error-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.error-type{text-transform:uppercase;border-radius:20px;padding:.3rem .8rem;font-size:.8rem;font-weight:500;display:inline-block}.error-type.ai-error{color:#c62828;background:#ffebee}.error-type.rate-limit{color:#ef6c00;background:#fff3e0}.error-type.auth-error{color:#7b1fa2;background:#f3e5f5}.error-timestamp{color:#666;font-size:.85rem}.error-message{color:#333;margin-bottom:.8rem;font-weight:500}.error-details{color:#555;background:#f8f9fa;border-radius:5px;max-height:200px;margin-top:1rem;padding:1rem;font-family:Courier New,monospace;font-size:.8rem;overflow-y:auto}.error-meta{color:#666;flex-wrap:wrap;gap:1rem;margin-bottom:.8rem;font-size:.8rem;display:flex}.meta-item{align-items:center;gap:.3rem;display:flex}.status-resolved{color:#2e7d2e;background:#e8f5e8;border-radius:15px;padding:.2rem .6rem;font-size:.75rem;font-weight:500}.status-pending{color:#856404;background:#fff3cd;border-radius:15px;padding:.2rem .6rem;font-size:.75rem;font-weight:500}.resolve-btn{color:#fff;cursor:pointer;background:#28a745;border:none;border-radius:4px;padding:.4rem .8rem;font-size:.8rem}.resolve-btn:hover{background:#218838}.resolve-btn:disabled{cursor:not-allowed;background:#6c757d}.loading{text-align:center;color:#666;padding:2rem}.last-update{text-align:right;color:#666;font-size:.85rem}.no-errors{text-align:center;color:#666;padding:3rem}.refresh-info{text-align:center;color:#666;margin-bottom:1rem;font-size:.9rem}.filters-bar{flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;display:flex}.stat-value{font-size:2rem;font-weight:700;display:block}.stat-card .stat-label{font-size:.8rem}.errors-list{flex-direction:column;max-width:100%;display:flex;overflow-x:hidden}.error-details pre{white-space:pre-wrap;word-break:break-word;max-width:100%;overflow-x:auto}@media (width<=768px){.filter-row{flex-direction:column;align-items:stretch}.error-header,.error-meta{flex-direction:column;gap:.5rem}}.confirm-overlay{z-index:9000;opacity:0;background:#00000080;justify-content:center;align-items:center;padding:20px;transition:opacity .15s;display:flex;position:fixed;inset:0}.confirm-overlay.confirm-visible{opacity:1}.confirm-dialog{background:#fff;border-radius:10px;width:100%;max-width:440px;padding:24px;transition:transform .15s;transform:scale(.95);box-shadow:0 10px 30px #0000004d}.confirm-overlay.confirm-visible .confirm-dialog{transform:scale(1)}.confirm-title{color:#212529;margin:0 0 10px;font-size:1.1rem}.confirm-message{color:#495057;white-space:pre-line;word-break:break-word;margin:0 0 20px;font-size:.92rem;line-height:1.5}.confirm-buttons{justify-content:flex-end;gap:10px;display:flex}.confirm-btn{cursor:pointer;border:none;border-radius:5px;padding:8px 18px;font-size:.9rem;transition:filter .15s}.confirm-btn:hover{filter:brightness(.92)}.confirm-btn-cancel{color:#fff;background:#6c757d}.confirm-btn-ok{color:#fff;background:#7c1331}.confirm-btn-ok.danger{background:#dc3545}#change-password-overlay{z-index:9000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.change-password-card{background:#fff;border-radius:10px;width:100%;max-width:400px;padding:24px;box-shadow:0 10px 30px #0000004d}.change-password-card h3{color:#212529;margin:0 0 16px;font-size:1.1rem}.change-password-card .cp-field{margin-bottom:14px}.change-password-card label{color:#495057;margin-bottom:4px;font-size:.85rem;display:block}.change-password-card input{box-sizing:border-box;border:1px solid #ced4da;border-radius:5px;width:100%;padding:8px 10px;font-size:.9rem}.change-password-card input:focus{border-color:#7c1331;outline:none}.change-password-buttons{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.change-password-buttons button{cursor:pointer;border:none;border-radius:5px;padding:8px 18px;font-size:.9rem}.cp-btn-cancel{color:#fff;background:#6c757d}.cp-btn-submit{color:#fff;background:#7c1331}.cp-btn-submit:disabled{opacity:.6;cursor:not-allowed}
