.unified-loader{align-items:center;display:flex;justify-content:center}.unified-loader--fullscreen{background:var(--background-primary);height:100vh;left:0;position:fixed;top:0;transition:background .3s ease;width:100%;z-index:9999}.unified-loader__content{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:2rem;text-align:center}.unified-loader__logo,.unified-loader__spinner{margin-bottom:1.5rem;will-change:transform}.unified-loader__spinner{animation:spin 1s linear infinite;border:3px solid var(--border-primary);border-radius:50%;border-top-color:var(--primary-color,#3b82f6);height:48px;width:48px}.unified-loader__text{color:var(--text-secondary);font-size:16px;font-weight:500;margin-bottom:1rem;max-width:400px}.unified-loader__dots{align-items:center;display:flex;gap:8px;height:12px;justify-content:center}.unified-loader__dot{background:var(--primary-color,#3b82f6);border-radius:50%;height:10px;width:10px;will-change:transform}.unified-loader--inline{align-items:center;display:inline-flex;gap:.75rem;padding:1rem}.unified-loader__spinner--inline{border-width:2px;height:24px;margin:0;width:24px}.unified-loader__text--inline{color:var(--text-secondary);font-size:14px}.unified-loader--small{align-items:center;display:inline-flex;justify-content:center}.unified-loader__spinner--small{border-width:2px;height:16px;margin:0;width:16px}.theme-dark .unified-loader--fullscreen{background:var(--background-primary)}.theme-dark .unified-loader__spinner{border-color:var(--border-secondary);border-top-color:var(--primary-color,#60a5fa)}.theme-dark .unified-loader__text{color:var(--text-primary)}.theme-dark .unified-loader__dot{background:var(--primary-color,#60a5fa)}@media (max-width:768px){.unified-loader__content{max-width:300px;padding:1.5rem}.unified-loader__logo{margin-bottom:1rem}.unified-loader__logo svg{height:60px!important;width:60px!important}.unified-loader__spinner{height:40px;margin-bottom:1rem;width:40px}.unified-loader__text{font-size:14px}.unified-loader__dot{height:8px;width:8px}}@media (prefers-reduced-motion:reduce){.unified-loader__dot,.unified-loader__logo,.unified-loader__spinner{animation-duration:3s}}.unified-loader__dot,.unified-loader__logo,.unified-loader__spinner{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}.simple-report-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.simple-report-modal-container{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:28rem;opacity:1;transform:none;transition:all .2s ease-in-out;width:100%}.simple-report-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1.5rem 1.5rem 0}.simple-report-modal-header h2{color:#111827;font-size:1.25rem;font-weight:600;margin:0}.simple-report-modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;justify-content:center;padding:.5rem;transition:all .2s ease-in-out}.simple-report-modal-close:hover{background-color:#f3f4f6;color:#374151}.simple-report-modal-content{padding:0 1.5rem 1.5rem}.simple-report-field{margin-bottom:1rem}.simple-report-field select{background-color:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;font-size:.875rem;padding:.75rem;transition:border-color .2s ease-in-out;width:100%}.simple-report-field select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.simple-report-field textarea{background-color:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;font-family:inherit;font-size:.875rem;min-height:100px;padding:.75rem;resize:vertical;transition:border-color .2s ease-in-out;width:100%}.simple-report-field textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.simple-report-field textarea::placeholder{color:#9ca3af}.simple-report-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.simple-report-cancel{background-color:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease-in-out}.simple-report-cancel:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.simple-report-cancel:disabled{cursor:not-allowed;opacity:.5}.simple-report-submit{background-color:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease-in-out}.simple-report-submit:hover:not(:disabled){background-color:#2563eb}.simple-report-submit:disabled{background-color:#9ca3af;cursor:not-allowed}@media (prefers-color-scheme:dark){.simple-report-modal-container{background:#1f2937;color:#f9fafb}.simple-report-modal-header{border-bottom-color:#374151}.simple-report-modal-header h2{color:#f9fafb}.simple-report-modal-close{color:#9ca3af}.simple-report-modal-close:hover{background-color:#374151;color:#f3f4f6}.simple-report-field select,.simple-report-field textarea{background-color:#374151;border-color:#4b5563;color:#f9fafb}.simple-report-field select:focus,.simple-report-field textarea:focus{border-color:#3b82f6}.simple-report-field textarea::placeholder{color:#6b7280}.simple-report-cancel{background-color:#374151;border-color:#4b5563;color:#f9fafb}.simple-report-cancel:hover:not(:disabled){background-color:#4b5563}}.group-role-management{background:var(--surface-primary);border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px}.role-management-header{margin-bottom:30px;text-align:center}.role-management-header h2{color:var(--text-primary);font-size:24px;font-weight:600;margin-bottom:8px}.role-management-header p{color:var(--text-secondary);font-size:16px}.members-list-container{background:var(--surface-secondary);border-radius:12px;margin:30px 0;padding:20px}.members-list-header{align-items:center;border-bottom:2px solid var(--border-primary);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.members-list-header h3{color:var(--text-primary);font-size:20px;font-weight:600;margin:0}.members-summary{display:flex;flex-wrap:wrap;gap:16px}.role-summary{align-items:center;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:20px;box-shadow:0 1px 3px #0000001a;display:flex;gap:8px;padding:8px 12px}.role-icon{border-radius:6px;height:24px;width:24px}.role-count{color:var(--text-primary);font-size:14px;font-weight:500}.members-list{display:flex;flex-direction:column;gap:12px}.member-item{align-items:center;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:12px;display:flex;gap:16px;padding:16px;position:relative;transition:all .2s ease}.member-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.member-item.current-user{background:var(--surface-secondary);border-color:#3b82f6}.member-item.owner{border-left:4px solid #f59e0b}.member-item.admin{border-left:4px solid #3b82f6}.member-item.moderator{border-left:4px solid #10b981}.member-item.member{border-left:4px solid #64748b}.member-avatar{border-radius:50%;flex-shrink:0;height:48px;overflow:hidden;width:48px}.avatar-image{height:100%;object-fit:cover;width:100%}.avatar-placeholder{align-items:center;background:var(--surface-secondary);color:var(--text-secondary);display:flex;height:100%;justify-content:center;width:100%}.member-info{flex:1 1;min-width:0}.member-name{align-items:center;display:flex;gap:8px;margin-bottom:4px}.you-badge{background:#3b82f6;border-radius:12px;color:#fff;font-size:12px;font-weight:500;padding:2px 8px}.member-email{color:var(--text-secondary);font-size:14px;margin-bottom:2px}.member-joined{color:var(--text-tertiary);font-size:12px}.member-role{flex-shrink:0}.role-badge{align-items:center;border-radius:20px;color:#fff;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 12px}.member-actions{display:flex;gap:8px;opacity:0;transition:opacity .2s ease}.member-item:hover .member-actions{opacity:1}.member-actions .action-btn{align-items:center!important;border:none!important;border-radius:6px;cursor:pointer;display:flex!important;font-size:inherit!important;font-weight:inherit!important;gap:0!important;height:32px;justify-content:center!important;min-width:auto!important;padding:0!important;transition:all .2s ease;width:32px}.member-actions .edit-btn{background:var(--surface-secondary);color:var(--text-primary)}.member-actions .edit-btn:hover{background:var(--surface-tertiary);color:var(--text-primary)}.member-actions .permissions-btn{background:var(--surface-secondary);color:var(--text-primary)}.member-actions .permissions-btn:hover{background:var(--surface-tertiary);color:var(--text-primary)}.member-actions .remove-btn{background:#fef2f2;color:#dc2626}.member-actions .remove-btn:hover{background:#fecaca;color:#b91c1c}.organogram-container{background:#f9fafb;border-radius:12px;margin:30px 0;min-height:600px;overflow:hidden;padding:20px;position:relative}.organogram-canvas{background:linear-gradient(45deg,#f3f4f6 25%,#0000 0),linear-gradient(-45deg,#f3f4f6 25%,#0000 0),linear-gradient(45deg,#0000 75%,#f3f4f6 0),linear-gradient(-45deg,#0000 75%,#f3f4f6 0);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;height:600px;position:relative;width:100%}.organogram-node{align-items:center;border:3px solid #0000;border-radius:12px;box-shadow:0 4px 12px #00000026;color:#fff;cursor:pointer;display:flex;flex-direction:column;height:150px;justify-content:center;position:absolute;transition:all .3s ease;width:200px}.organogram-node:hover{box-shadow:0 6px 20px #0003;transform:translateY(-2px)}.organogram-node.selected{border-color:#3b82f6;transform:scale(1.05)}.organogram-node.owner{background:linear-gradient(135deg,#f59e0b,#d97706)}.organogram-node.admin{background:linear-gradient(135deg,#3b82f6,#2563eb)}.organogram-node.moderator{background:linear-gradient(135deg,#10b981,#059669)}.organogram-node.member{background:linear-gradient(135deg,#64748b,#475569)}.node-icon{margin-bottom:8px}.node-label{font-size:14px;font-weight:600;line-height:1.2;margin-bottom:4px;text-align:center}.node-role{font-size:12px;opacity:.9;text-align:center}.node-actions{display:flex;gap:4px;opacity:0;position:absolute;right:8px;top:8px;transition:opacity .3s ease}.organogram-node:hover .node-actions{opacity:1}.action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .2s ease;width:28px}.edit-btn{background:#fff3;color:#fff}.edit-btn:hover{background:#ffffff4d}.permissions-btn{background:#fff3;color:#fff}.permissions-btn:hover{background:#ffffff4d}.remove-btn{background:#ef4444cc;color:#fff}.remove-btn:hover{background:#ef4444}.connections-svg{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}.role-legend{background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:12px;margin-top:30px;padding:20px}.role-legend h3{color:var(--text-primary);font-size:18px;font-weight:600;margin-bottom:16px}.legend-items{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.legend-item{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:8px;gap:12px;padding:12px}.legend-icon,.legend-item{align-items:center;display:flex}.legend-icon{border-radius:8px;color:#fff;height:40px;justify-content:center;width:40px}.legend-info{flex:1 1}.legend-label{color:var(--text-primary);font-weight:600;margin-bottom:2px}.legend-description{color:var(--text-secondary);font-size:14px}.modal-overlay{background:#00000080}.modal-content{background:var(--surface-primary);border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;max-height:80vh;max-width:500px;overflow-y:auto;width:90%}.permission-modal{max-width:600px}.modal-header{border-bottom:1px solid var(--border-primary);padding:20px}.modal-header h3{color:var(--text-primary);font-size:18px}.close-btn{background:none;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;padding:4px;transition:all .2s ease}.close-btn:hover{background:var(--surface-secondary);color:var(--text-primary)}.modal-body{padding:20px}.role-options{display:flex;flex-direction:column;gap:12px;margin-top:16px}.role-option{align-items:center;border:2px solid var(--border-primary);border-radius:8px;cursor:pointer;display:flex;gap:16px;padding:16px;position:relative;transition:all .2s ease}.role-option:hover{background:var(--surface-secondary);border-color:#3b82f6}.role-option.current{background:var(--surface-secondary);border-color:#10b981}.role-icon{align-items:center;border-radius:8px;color:#fff;display:flex;height:48px;justify-content:center;width:48px}.role-info{flex:1 1}.role-label{color:var(--text-primary);font-weight:600;margin-bottom:4px}.role-description{color:var(--text-secondary);font-size:14px}.current-badge{background:#10b981;border-radius:4px;color:#fff;font-size:12px;font-weight:500;padding:4px 8px;position:absolute;right:8px;top:8px}.permissions-list{display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.permission-item{align-items:center;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:8px;display:flex;justify-content:space-between;padding:16px}.permission-info{flex:1 1}.permission-label{color:var(--text-primary);font-weight:600;margin-bottom:4px}.permission-description{color:var(--text-secondary);font-size:14px}.permission-toggle{display:inline-block;height:24px;position:relative;width:50px}.permission-toggle input{height:0;opacity:0;width:0}.toggle-slider{background-color:#ccc;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:.3s;width:18px}.permission-toggle input:checked+.toggle-slider{background-color:#3b82f6}.permission-toggle input:checked+.toggle-slider:before{transform:translateX(26px)}.modal-actions{border-top:1px solid var(--border-primary);margin-top:20px;padding-top:20px}.btn{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s ease}.btn-secondary{background:var(--surface-secondary);color:var(--text-primary)}.btn-secondary:hover{background:var(--surface-tertiary)}.btn-primary{background:#3b82f6}.btn-primary:hover{background:#2563eb}.btn-primary:disabled{background:var(--text-tertiary)}.loading-container{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;padding:40px}.loading-spinner{border:4px solid var(--border-primary);border-top:4px solid #3b82f6;height:40px;width:40px}.permissions-preview{background:var(--surface-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);margin-top:8px;padding:8px}.permissions-count{color:var(--text-secondary);font-size:.8rem;font-weight:500;margin-bottom:6px}.permissions-list-preview{display:flex;flex-wrap:wrap;gap:4px}.permission-tag{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);display:inline-block;font-size:.7rem;font-weight:500;padding:2px 6px}.permission-tag.more{background:var(--surface-secondary);color:var(--text-secondary);font-style:italic}.role-assignment-note{background:var(--surface-secondary);border-left:3px solid var(--primary-color);border-radius:var(--radius-md);margin-top:16px;padding:12px}.role-assignment-note p{color:var(--text-secondary);font-size:.9rem;line-height:1.4;margin:0}.current-role-info{background:var(--surface-secondary);border-left:3px solid var(--primary-color);border-radius:var(--radius-md);margin-bottom:16px;padding:12px}.current-role-info p{color:var(--text-primary);font-size:.9rem;margin:4px 0}.permission-customization-note{background:var(--surface-secondary);border-left:3px solid var(--warning-color,#f59e0b);border-radius:var(--radius-md);margin-top:16px;padding:12px}.permission-customization-note p{color:var(--text-secondary);font-size:.9rem;line-height:1.4;margin:0}@media (max-width:768px){.group-role-management,.members-list-container{padding:16px}.members-list-header{align-items:flex-start;flex-direction:column;gap:12px}.members-summary{justify-content:flex-start;width:100%}.member-item{align-items:flex-start;flex-direction:column;gap:12px;padding:12px}.member-info{width:100%}.member-role{align-self:flex-start}.member-actions{align-self:flex-end;opacity:1}.organogram-container{padding:16px}.organogram-canvas{height:400px}.organogram-node{height:120px;width:150px}.node-label{font-size:12px}.node-role{font-size:10px}.legend-items{grid-template-columns:1fr}.role-option{padding:12px}.role-icon{height:40px;width:40px}}:root{--report-bg-primary:#fff;--report-bg-secondary:#f9fafb;--report-bg-tertiary:#f3f4f6;--report-text-primary:#1f2937;--report-text-secondary:#6b7280;--report-text-tertiary:#9ca3af;--report-border:#e5e7eb;--report-border-hover:#d1d5db;--report-shadow:#0000001a;--report-shadow-hover:#00000026;--report-shadow-modal:#00000026;--report-overlay:#000000b3;--status-pending-bg:#fef3c7;--status-pending-text:#d97706;--status-under-review-bg:#dbeafe;--status-under-review-text:#2563eb;--status-resolved-bg:#d1fae5;--status-resolved-text:#059669;--status-dismissed-bg:#f3f4f6;--status-dismissed-text:#6b7280;--status-escalated-bg:#fee2e2;--status-escalated-text:#dc2626;--priority-low-bg:#f3f4f6;--priority-low-text:#6b7280;--priority-medium-bg:#fef3c7;--priority-medium-text:#d97706;--priority-high-bg:#fee2e2;--priority-high-text:#dc2626;--priority-urgent-bg:#fecaca;--priority-urgent-text:#b91c1c;--btn-primary-bg:#3b82f6;--btn-primary-hover:#2563eb;--btn-secondary-bg:#6b7280;--btn-secondary-hover:#4b5563}.theme-dark{--report-bg-primary:#1f2937;--report-bg-secondary:#374151;--report-bg-tertiary:#4b5563;--report-text-primary:#f9fafb;--report-text-secondary:#d1d5db;--report-text-tertiary:#9ca3af;--report-border:#4b5563;--report-border-hover:#6b7280;--report-shadow:#0000004d;--report-shadow-hover:#0006;--report-shadow-modal:#00000080;--report-overlay:#000c;--status-pending-bg:#451a03;--status-pending-text:#fbbf24;--status-under-review-bg:#1e3a8a;--status-under-review-text:#60a5fa;--status-resolved-bg:#064e3b;--status-resolved-text:#34d399;--status-dismissed-bg:#374151;--status-dismissed-text:#9ca3af;--status-escalated-bg:#7f1d1d;--status-escalated-text:#f87171;--priority-low-bg:#374151;--priority-low-text:#9ca3af;--priority-medium-bg:#451a03;--priority-medium-text:#fbbf24;--priority-high-bg:#7f1d1d;--priority-high-text:#f87171;--priority-urgent-bg:#7f1d1d;--priority-urgent-text:#fca5a5}.group-report-management{background:var(--report-bg-primary);color:var(--report-text-primary);margin:0 auto;max-width:1200px;min-height:100vh;padding:24px}.report-management-loading{align-items:center;color:var(--report-text-secondary);display:flex;flex-direction:column;justify-content:center;padding:60px 24px}.loading-spinner{animation:spin 1s linear infinite;border-top:3px solid var(--report-border);border:3px solid var(--report-border);border-radius:50%;border-top-color:var(--btn-primary-bg);height:32px;margin-bottom:16px;width:32px}@keyframes spin{to{transform:rotate(1turn)}}.report-management-header{margin-bottom:32px}.report-management-title{align-items:center;color:var(--report-text-primary);display:flex;gap:12px}.report-management-title h2{font-size:28px;font-weight:700;margin:0}.report-count{background:var(--report-bg-tertiary);border-radius:12px;color:var(--report-text-secondary);font-size:14px;font-weight:500;padding:4px 12px}.report-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.stat-card{background:var(--report-bg-primary);border:1px solid var(--report-border);border-radius:12px;box-shadow:0 1px 3px var(--report-shadow);gap:16px;padding:20px}.stat-card,.stat-icon{align-items:center;display:flex}.stat-icon{border-radius:12px;color:#fff;height:48px;justify-content:center;width:48px}.stat-info{display:flex;flex-direction:column}.stat-count{color:var(--report-text-primary);font-size:24px;font-weight:700;line-height:1}.stat-label{color:var(--report-text-secondary);font-size:14px;font-weight:500}.report-filters{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.search-box{flex:1 1;min-width:300px;position:relative}.search-box svg{color:var(--report-text-tertiary);height:16px;left:12px;position:absolute;top:50%;transform:translateY(-50%);width:16px}.search-box input{background:var(--report-bg-primary);border:2px solid var(--report-border);border-radius:8px;color:var(--report-text-primary);font-size:14px;padding:12px 12px 12px 40px;transition:all .2s;width:100%}.search-box input:focus{border-color:var(--btn-primary-bg);box-shadow:0 0 0 3px #3b82f61a;outline:none}.search-box input::placeholder{color:var(--report-text-tertiary)}.filter-group{display:flex;gap:12px}.filter-group select{background:var(--report-bg-primary);border:2px solid var(--report-border);border-radius:8px;color:var(--report-text-primary);cursor:pointer;font-size:14px;padding:12px 16px;transition:all .2s}.filter-group select:focus{border-color:var(--btn-primary-bg);outline:none}.reports-list{gap:16px}.no-reports,.reports-list{display:flex;flex-direction:column}.no-reports{align-items:center;color:var(--report-text-secondary);justify-content:center;padding:60px 24px;text-align:center}.no-reports h3{color:var(--report-text-primary);margin:16px 0 8px}.report-card{background:var(--report-bg-primary);border:1px solid var(--report-border);border-radius:12px;box-shadow:0 1px 3px var(--report-shadow);overflow:hidden;transition:all .2s}.report-card:hover{box-shadow:0 4px 12px var(--report-shadow-hover)}.report-card.overdue{background:var(--report-bg-secondary);border-left:4px solid #ef4444}.report-card-header{align-items:center;background:var(--report-bg-secondary);border-bottom:1px solid var(--report-border);display:flex;justify-content:space-between;padding:16px 20px}.report-type{align-items:center;color:var(--report-text-primary);font-weight:600}.report-meta,.report-type{display:flex;gap:8px}.priority-badge{border-radius:6px;font-size:12px;font-weight:600;padding:4px 8px;text-transform:uppercase}.priority-low{background:var(--priority-low-bg);color:var(--priority-low-text)}.priority-medium{background:var(--priority-medium-bg);color:var(--priority-medium-text)}.priority-high{background:var(--priority-high-bg);color:var(--priority-high-text)}.priority-urgent{background:var(--priority-urgent-bg);color:var(--priority-urgent-text)}.status-badge{align-items:center;border-radius:6px;display:flex;font-size:12px;font-weight:600;gap:4px;padding:4px 8px}.status-pending{background:var(--status-pending-bg);color:var(--status-pending-text)}.status-under_review{background:var(--status-under-review-bg);color:var(--status-under-review-text)}.status-resolved{background:var(--status-resolved-bg);color:var(--status-resolved-text)}.status-dismissed{background:var(--status-dismissed-bg);color:var(--status-dismissed-text)}.status-escalated{background:var(--status-escalated-bg);color:var(--status-escalated-text)}.report-card-content{padding:20px}.report-title{color:var(--report-text-primary);font-size:18px;font-weight:600;margin:0 0 8px}.report-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--report-text-secondary);display:-webkit-box;line-height:1.5;margin:0 0 16px;overflow:hidden}.report-details{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:12px}.report-detail{color:var(--report-text-secondary)}.assigned-to,.report-detail{align-items:center;display:flex;font-size:14px;gap:6px}.assigned-to{color:var(--btn-primary-bg);margin-bottom:8px}.overdue-warning{align-items:center;color:#dc2626;display:flex;font-size:14px;font-weight:500;gap:6px}.report-card-actions{background:var(--report-bg-secondary);border-top:1px solid var(--report-border);display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}.btn-view{align-items:center;background:var(--btn-primary-bg);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 16px;transition:all .2s}.btn-view:hover{background:var(--btn-primary-hover)}.btn-danger{align-items:center;background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 16px;transition:all .2s}.btn-danger:hover{background:#dc2626;transform:translateY(-1px)}.btn-danger:disabled{background:var(--report-text-tertiary);cursor:not-allowed;transform:none}.report-modal-overlay{align-items:center;background:var(--report-overlay);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.report-modal-container{background:var(--report-bg-primary);border-radius:12px;box-shadow:0 20px 40px var(--report-shadow-modal);max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.report-modal-header{align-items:center;border-bottom:1px solid var(--report-border);display:flex;justify-content:space-between;padding:24px}.report-modal-header h3{color:var(--report-text-primary);font-size:20px;font-weight:600;margin:0}.modal-close{background:none;border:none;border-radius:6px;color:var(--report-text-secondary);cursor:pointer;padding:8px;transition:all .2s}.modal-close:hover{background:var(--report-bg-tertiary);color:var(--report-text-primary)}.report-modal-content{padding:24px}.report-info{grid-gap:16px;background:var(--report-bg-secondary);border-radius:8px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px;padding:20px}.report-info-row{display:flex;flex-direction:column;gap:4px}.report-info-row .label{color:var(--report-text-secondary);font-size:12px;font-weight:600;text-transform:uppercase}.report-info-row .value{color:var(--report-text-primary);font-size:14px;font-weight:500}.report-content{margin-bottom:24px}.report-content h4{color:var(--report-text-primary);font-size:18px;font-weight:600;margin:0 0 12px}.report-content p{color:var(--report-text-secondary);line-height:1.6;margin:0}.report-evidence{margin-bottom:24px}.report-evidence h4{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 16px}.evidence-section{margin-bottom:16px}.evidence-section h5{color:#374151;font-size:14px;font-weight:600;margin:0 0 8px}.screenshots-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.screenshots-grid img{border:1px solid #e5e7eb;border-radius:6px;height:100px;object-fit:cover;width:100%}.evidence-section ul{margin:0;padding-left:20px}.evidence-section li{margin-bottom:4px}.evidence-section a{color:#3b82f6;text-decoration:none}.evidence-section a:hover{text-decoration:underline}.btn-primary,.report-actions{position:relative}.btn-primary{align-items:center;background:var(--btn-primary-bg);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover)}.btn-primary:disabled{background:var(--report-text-tertiary);cursor:not-allowed}.btn-secondary{align-items:center;background:var(--report-bg-tertiary);border:1px solid var(--report-border);border-radius:6px;color:var(--report-text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 16px;transition:all .2s}.btn-secondary:hover{background:var(--report-bg-secondary);border-color:var(--report-border-hover)}.resolution-form{background:var(--report-bg-secondary);border:1px solid var(--report-border);border-radius:8px;margin-top:20px;padding:20px}.resolution-form h4{color:var(--report-text-primary);font-size:16px;font-weight:600;margin:0 0 8px}.resolution-description{color:var(--report-text-secondary);font-size:14px;line-height:1.4;margin:0 0 16px}.resolution-textarea{background:var(--report-bg-primary);border:1px solid var(--report-border);border-radius:6px;box-sizing:border-box;color:var(--report-text-primary);font-family:inherit;font-size:14px;min-height:100px;padding:12px;resize:vertical;width:100%}.resolution-textarea:focus{border-color:var(--btn-primary-bg);box-shadow:0 0 0 3px #3b82f61a;outline:none}.resolution-textarea::placeholder{color:var(--report-text-tertiary)}.resolution-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:16px}.resolution-actions button{border:1px solid #0000;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.resolution-actions .btn-secondary{background:var(--report-bg-tertiary);border-color:var(--report-border);color:var(--report-text-primary)}.resolution-actions .btn-secondary:hover{background:var(--report-bg-secondary);border-color:var(--report-border-hover)}.resolution-actions .btn-primary{background:var(--btn-primary-bg);color:#fff}.resolution-actions .btn-primary:hover{background:var(--btn-primary-hover)}.resolution-actions button:disabled{cursor:not-allowed;opacity:.6}.action-dropdown{animation:slideUp .2s ease-out;background:var(--report-bg-primary);border:1px solid var(--report-border);border-radius:8px;bottom:100%;box-shadow:0 -4px 12px var(--report-shadow-hover);margin-bottom:8px;min-width:200px;position:absolute;right:0;z-index:10}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.action-dropdown button{align-items:center;background:none;border:none;color:var(--report-text-primary);cursor:pointer;display:flex;font-size:14px;gap:8px;padding:12px 16px;text-align:left;transition:all .2s;width:100%}.action-dropdown button:hover{background:var(--report-bg-secondary)}.action-dropdown button:first-child{border-radius:0 0 8px 8px}.action-dropdown button:last-child{border-radius:8px 8px 0 0}@media (max-width:768px){.group-report-management{padding:16px}.report-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.report-filters{flex-direction:column}.search-box{min-width:auto}.filter-group,.report-details{flex-direction:column}.report-details{gap:8px}.report-modal-container{margin:10px;max-height:95vh}.report-info{grid-template-columns:1fr}.screenshots-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}.modal-overlay{align-items:center;background:var(--report-overlay);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-container{background:var(--report-bg-primary);border-radius:12px;box-shadow:0 20px 40px var(--report-shadow-modal);max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:1px solid var(--report-border);display:flex;justify-content:space-between;padding:24px}.modal-header h3{color:var(--report-text-primary);font-size:20px;font-weight:600;margin:0}.modal-content{padding:24px}.modal-content p{color:var(--report-text-secondary);line-height:1.5;margin:0 0 16px}.modal-warning{color:#f59e0b!important;font-weight:500}.modal-info{color:var(--btn-primary-bg)!important;font-weight:500}.form-group{margin-bottom:20px}.form-group label{display:block;font-weight:600;margin-bottom:8px}.form-group label,.form-group select{color:var(--report-text-primary);font-size:14px}.form-group select{background:var(--report-bg-primary);border:2px solid var(--report-border);border-radius:8px;cursor:pointer;padding:12px 16px;transition:all .2s;width:100%}.form-group select:focus{border-color:var(--btn-primary-bg);box-shadow:0 0 0 3px #3b82f61a;outline:none}.modal-actions{border-top:1px solid var(--report-border);display:flex;gap:12px;justify-content:flex-end;padding:24px}.modal-actions button{border:1px solid #0000;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.modal-actions .btn-secondary{background:var(--report-bg-tertiary);border-color:var(--report-border);color:var(--report-text-primary)}.modal-actions .btn-secondary:hover{background:var(--report-bg-secondary);border-color:var(--report-border-hover)}.modal-actions .btn-primary{background:var(--btn-primary-bg);color:#fff}.modal-actions .btn-primary:hover{background:var(--btn-primary-hover)}.modal-actions .btn-danger{background:#ef4444;color:#fff}.modal-actions .btn-danger:hover{background:#dc2626}.modal-actions button:disabled{cursor:not-allowed;opacity:.6}.pending-invitations{padding:20px}.pending-invitations-header{margin-bottom:20px}.invitations-list{display:flex;flex-direction:column;gap:12px}.invitation-item{background:var(--surface-primary);border:var(--border-width) solid var(--border-primary);border-radius:var(--radius-lg);padding:16px;transition:all var(--transition-medium) ease}.invitation-item:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.invitation-avatar{cursor:pointer;height:40px;position:relative;transition:opacity var(--transition-fast) ease;width:40px}.invitation-avatar:hover{opacity:.8}.invitation-avatar .avatar-image{object-fit:cover}.invitation-avatar .avatar-image,.invitation-avatar .avatar-placeholder{border:2px solid var(--border-primary);border-radius:50%;height:40px;width:40px}.invitation-avatar .avatar-placeholder{align-items:center;background:var(--surface-secondary);display:flex;justify-content:center;left:0;position:absolute;top:0}.invitation-avatar .avatar-placeholder svg{color:var(--text-secondary);height:20px;width:20px}.member-name{color:var(--text-primary);font-size:16px;font-weight:600;margin:0 0 4px}.member-name.clickable{cursor:pointer;transition:color var(--transition-fast) ease}.member-name.clickable:hover{color:var(--accent-primary)}.username{color:var(--text-secondary);font-size:14px;margin:0 0 2px}.username.clickable{cursor:pointer;transition:color var(--transition-fast) ease}.username.clickable:hover{color:var(--accent-primary)}.timestamp{color:var(--text-tertiary);font-size:12px;margin:0}.invitation-actions{display:flex;gap:8px}.approve-btn{align-items:center;background:#16a34a;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;justify-content:center;min-width:80px;padding:8px 12px;transition:all var(--transition-medium) ease}.approve-btn:hover:not(:disabled){background:#15803d;box-shadow:0 4px 8px #16a34a4d;transform:translateY(-1px)}.approve-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.approve-btn svg{height:16px;width:16px}.reject-btn{align-items:center;background:#dc2626;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;justify-content:center;min-width:80px;padding:8px 12px;transition:all var(--transition-medium) ease}.reject-btn:hover:not(:disabled){background:#b91c1c;box-shadow:0 4px 8px #dc26264d;transform:translateY(-1px)}.reject-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.reject-btn svg{height:16px;width:16px}@media (prefers-color-scheme:dark){.invitation-item{background:var(--surface-primary);border-color:var(--border-primary)}.invitation-avatar .avatar-placeholder{background:var(--surface-secondary);border-color:var(--border-primary)}.invitation-avatar .avatar-placeholder svg{color:var(--text-secondary)}}.report-resolution-container{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;overflow:hidden;padding:20px;position:relative}.report-resolution-container:before{background:linear-gradient(90deg,#10b981,#3b82f6);content:"";height:4px;left:0;position:absolute;right:0;top:0}.report-resolution-container.loading{align-items:center;display:flex;justify-content:center;min-height:100px}.report-resolution-container.error{align-items:center;background:var(--error-background);border-color:var(--error-color);color:var(--error-color);display:flex;gap:8px}.loading-spinner{color:var(--text-secondary);font-size:14px}.resolution-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.resolution-status{align-items:center;display:flex;gap:12px}.status-icon{flex-shrink:0}.status-icon.resolved{color:#10b981}.status-icon.dismissed{color:#f59e0b}.status-icon.pending{color:#6b7280}.status-info h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0}.status-info p{color:var(--text-secondary);font-size:14px;margin:4px 0 0}.resolver-info{align-items:center;background:var(--background-secondary);border:1px solid var(--border-color);border-radius:8px;display:flex;gap:12px;padding:12px}.resolver-avatar{border-radius:50%;flex-shrink:0;height:40px;overflow:hidden;width:40px}.resolver-avatar img{height:100%;object-fit:cover;width:100%}.resolver-details{display:flex;flex-direction:column;gap:4px}.resolver-name{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:500;gap:6px}.resolution-date{align-items:center;color:var(--text-secondary);display:flex;font-size:12px;gap:4px}.resolution-notes{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:16px;padding:16px}.notes-header{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:8px}.notes-content{color:var(--text-secondary);font-size:14px;line-height:1.5;white-space:pre-wrap}.resolution-footer{border-top:1px solid var(--border-color);padding-top:12px}.report-info{align-items:center;color:var(--text-tertiary);display:flex;font-size:12px;justify-content:space-between}.report-id{background:var(--background-secondary);border-radius:4px;font-family:monospace;padding:4px 8px}.report-date{font-size:12px}.theme-dark .report-resolution-container{background:var(--card-background-dark);border-color:var(--border-color-dark);box-shadow:0 2px 8px #0000004d}.theme-dark .resolution-notes,.theme-dark .resolver-info{background:var(--background-secondary-dark);border-color:var(--border-color-dark)}.theme-dark .report-id{background:var(--background-secondary-dark)}@media (max-width:768px){.resolution-header{align-items:stretch;flex-direction:column;gap:12px}.resolver-info{align-self:flex-start}.report-info{align-items:flex-start;flex-direction:column;gap:8px}.report-resolution-container{margin-bottom:16px;padding:16px}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.report-resolution-container{animation:slideDown .3s ease-out}.access-denied-container{align-items:center;background-color:var(--background-primary);display:flex;justify-content:center;min-height:100vh;padding:1rem}.access-denied-container:before{background-image:radial-gradient(circle at 25px 25px,var(--accent-primary) 1.5%,#0000 0),radial-gradient(circle at 75px 75px,var(--accent-primary) 1.5%,#0000 0);background-size:clamp(80px,10vw,120px) clamp(80px,10vw,120px);content:"";inset:0;opacity:.05;pointer-events:none;position:absolute;z-index:1}.access-denied-card{background-color:initial;border-radius:1rem;max-width:32rem;position:relative;width:100%;z-index:10}.access-denied-content{padding:2rem 1.5rem}.access-denied-text{text-align:center}.logo-container{animation:fadeInAndStay .5s ease forwards;margin-bottom:2rem;opacity:0}.logo-animation-container{display:inline-block;margin-bottom:1rem;position:relative}.logo-image{animation:logoFloat 3s ease-in-out infinite,logoPulse 2s ease-in-out infinite;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));height:80px;transition:all .3s ease;width:80px}.logo-image:hover{animation:logoRotate 1s ease-in-out,logoPulse .8s ease-in-out infinite;filter:drop-shadow(0 8px 16px rgba(0,0,0,.2));transform:scale(1.2)}.theme-dark .logo-image{filter:drop-shadow(0 4px 8px rgba(255,255,255,.1))}.theme-dark .logo-image:hover{filter:drop-shadow(0 8px 16px rgba(255,255,255,.3))}.error-code{animation:fadeInAndStay .8s ease forwards;color:#fff;font-size:4rem;font-weight:900;line-height:1;margin-bottom:1rem;opacity:0}@media (min-width:768px){.error-code{font-size:6rem;margin-bottom:1.5rem}}@media (min-width:1024px){.error-code{font-size:8rem}}.access-denied-title{animation:fadeInAndStay 1s ease forwards;color:var(--text-primary);font-size:2rem;font-weight:700;margin-bottom:1rem;opacity:0}@media (min-width:768px){.access-denied-title{font-size:2.5rem;margin-bottom:1.5rem}}@media (min-width:1024px){.access-denied-title{font-size:3rem}}.main-message{animation:fadeInAndStay 1.2s ease forwards;color:var(--text-primary);font-size:1.125rem;font-weight:600;margin-bottom:.75rem;opacity:0}@media (min-width:768px){.main-message{font-size:1.25rem}}.description{animation:fadeInAndStay 1.4s ease forwards;color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin-bottom:2rem;margin-left:auto;margin-right:auto;opacity:0}@media (min-width:768px){.description{font-size:1rem;margin-bottom:2.5rem}}.quick-navigation{animation:fadeInAndStay 1.8s ease forwards;opacity:0;text-align:center}.quick-nav-title{color:var(--text-secondary);font-size:.875rem;font-weight:500;margin-bottom:1rem}@media (min-width:768px){.quick-nav-title{font-size:1rem;margin-bottom:1.5rem}}.quick-nav-grid{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin:0 auto;max-width:32rem}@media (min-width:768px){.quick-nav-grid{gap:1rem}}.quick-nav-button{align-items:center;background-color:initial;border:var(--border-width) solid var(--border-primary);border-radius:.75rem;color:var(--text-primary);cursor:pointer;display:flex;flex-direction:column;font-weight:500;gap:.5rem;justify-content:center;min-height:5rem;min-width:6rem;padding:1rem 1.25rem;position:relative;transition:all .2s ease}.quick-nav-button:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px)}.quick-nav-button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.quick-nav-icon-container{background-color:var(--background-secondary);border-radius:9999px;padding:.5rem;transition:all .2s ease}.quick-nav-icon{height:1.25rem;transition:transform .2s ease;width:1.25rem}.quick-nav-button:hover .quick-nav-icon{transform:scale(1.1)}.quick-nav-text{font-size:.75rem;font-weight:600}.quick-nav-button.study:hover{border-color:#7c3aed;color:#7c3aed}.quick-nav-button.study:hover .quick-nav-icon-container{background-color:#7c3aed1a}.quick-nav-button.mcqs:hover{border-color:#ea580c;color:#ea580c}.quick-nav-button.mcqs:hover .quick-nav-icon-container{background-color:#ea580c1a}.quick-nav-button.profile:hover{border-color:#4f46e5;color:#4f46e5}.quick-nav-button.profile:hover .quick-nav-icon-container{background-color:#4f46e51a}.quick-nav-button.social:hover{border-color:#ec4899;color:#ec4899}.quick-nav-button.social:hover .quick-nav-icon-container{background-color:#ec48991a}.contact-message{animation:fadeInAndStay 2s ease forwards;margin-top:2rem;opacity:0;text-align:center}@media (min-width:768px){.contact-message{margin-top:2.5rem}}.contact-text{color:var(--text-tertiary);font-size:.75rem}@media (min-width:768px){.contact-text{font-size:.875rem}}.theme-dark .quick-nav-button{background-color:initial;border-color:var(--border-primary);color:var(--text-primary)}.theme-dark .quick-nav-button:hover,.theme-dark .quick-nav-icon-container{background-color:#ffffff0d}.theme-light .quick-nav-button{background-color:#0000000d;border-color:#0003;color:var(--text-primary)}.theme-light .quick-nav-button:hover{background-color:#00000014}.theme-light .quick-nav-icon-container{background-color:#0000000d}@media (max-width:640px){.access-denied-container{padding:1rem .75rem}.access-denied-content{padding:1.5rem 1rem}.logo-container{margin-bottom:1.5rem}.logo-image{height:64px;width:64px}.error-code{font-size:3rem}.access-denied-title{font-size:1.5rem}.main-message{font-size:1rem}.description{font-size:.75rem;margin-bottom:1.5rem}.quick-nav-grid{gap:.5rem}.quick-nav-button{min-height:4rem;min-width:5rem;padding:.75rem 1rem}.quick-nav-icon{height:1rem;width:1rem}.quick-nav-text{font-size:.625rem}.contact-message{margin-top:1.5rem}.contact-text{font-size:.625rem}}@media (min-width:641px) and (max-width:1024px){.access-denied-content{padding:2rem 1.5rem}.logo-image{height:72px;width:72px}}@keyframes fadeInAndStay{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes logoPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes logoRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.logo-image,.quick-nav-button{transition:none}.quick-nav-button:hover{transform:none}.logo-image{animation:none}.access-denied-title,.contact-message,.description,.error-code,.main-message,.quick-navigation{animation:none;opacity:1}}@media (forced-colors:active){.quick-nav-button{border:2px solid ButtonText}.error-code{background:none;-webkit-background-clip:unset;background-clip:unset;color:ButtonText}}