.layout-container{min-height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.layout-nav{background:#2c2d32;color:#e4e6eb;padding:.75rem 1.5rem;box-shadow:0 1px #0003}.layout-nav-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.layout-nav-left{display:flex;align-items:center;gap:2rem}.layout-logo{margin:0;font-size:1rem;font-weight:700;letter-spacing:.06em;color:#fff;cursor:pointer;text-transform:uppercase}.layout-logo:hover{color:#e4e6eb}.layout-nav-links{display:flex;gap:.25rem;align-items:center}.layout-nav-link{background:transparent;border:none;color:#9ca3af;padding:.5rem 1rem;border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:500;transition:color .2s,background .2s}.layout-nav-link:hover{color:#e4e6eb}.layout-nav-link.active{background:#ffffff14;color:#fff}.layout-nav-right{display:flex;align-items:center;gap:.75rem}.layout-role-badge{padding:.35rem .75rem;border-radius:.375rem;font-size:.75rem;font-weight:600;letter-spacing:.03em;color:#9ca3af;background:#3b82f626;border:1px solid rgba(59,130,246,.5);text-transform:uppercase}.layout-avatar{width:2rem;height:2rem;border-radius:50%;background:#1976d2;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600;cursor:pointer;border:none;flex-shrink:0}.layout-avatar:hover{background:#1565c0}.layout-logout{background:transparent;border:1px solid #4b5563;color:#9ca3af;padding:.35rem .75rem;border-radius:.375rem;cursor:pointer;font-size:.8125rem;font-weight:500;transition:background .2s,color .2s,border-color .2s}.layout-logout:hover{background:#ffffff0f;color:#e4e6eb;border-color:#6b7280}.layout-main{flex:1}.layout-footer{background:#2c2d32;padding:1rem 1.5rem;text-align:center;border-top:1px solid #3a3d44}.layout-container--dark,.layout-container--dark .layout-main{background:#1a1d21}.layout-footer-text{margin:0;color:#9ca3af;font-size:.8125rem}.layout-badge-pending{padding:.25rem .5rem;border-radius:.25rem;font-size:.7rem;font-weight:600;background:#fbbf2440;color:#fbbf24}.auth-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:#1a1d21;padding:2rem 1rem;color:#e4e6eb;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif}.auth-card{background:#24262b;border:1px solid #3a3d44;border-radius:1rem;padding:2.5rem;max-width:400px;width:100%;box-shadow:0 20px 60px #0006}.auth-card--wide{max-width:600px}.auth-title{font-size:2rem;margin:0 0 .5rem;color:#e4e6eb;text-align:center}.auth-subtitle{font-size:1rem;color:#9ca3af;margin-bottom:1.5rem;text-align:center;line-height:1.5}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-input-group{display:flex;flex-direction:column;gap:.25rem}.auth-label{font-size:.875rem;font-weight:600;color:#e4e6eb}.auth-input{padding:.75rem;font-size:1rem;border:1px solid #3a3d44;border-radius:.5rem;background:#1a1d21!important;color:#e4e6eb!important;outline:none;transition:border-color .2s,box-shadow .2s}.auth-input::placeholder{color:#6b7280}.auth-input:focus{border-color:#1976d2;box-shadow:0 0 0 2px #1976d240;background:#1a1d21!important;color:#e4e6eb!important}.auth-input:-webkit-autofill,.auth-input:-webkit-autofill:hover,.auth-input:-webkit-autofill:focus,.auth-input:-webkit-autofill:active{-webkit-text-fill-color:#e4e6eb;-webkit-box-shadow:0 0 0 1000px #1a1d21 inset;box-shadow:0 0 0 1000px #1a1d21 inset;transition:background-color 5000s ease-in-out 0s}.auth-input.auth-input--error{border-color:#ef4444}.auth-button{background:#1976d2;color:#fff;border:none;padding:1rem;font-size:1rem;font-weight:600;border-radius:.5rem;cursor:pointer;transition:background .2s;margin-top:.5rem}.auth-button:hover:not(:disabled){background:#1565c0}.auth-button:disabled{opacity:.7;cursor:not-allowed}.auth-button-secondary{background:#2f3238;color:#e4e6eb;border:1px solid #3a3d44;padding:1rem;font-size:1rem;font-weight:600;border-radius:.5rem;cursor:pointer;transition:background .2s,border-color .2s}.auth-button-secondary:hover:not(:disabled){background:#3a3d44}.auth-error{color:#ef5350;font-size:.875rem;margin:0;text-align:center}.auth-field-error{font-size:.875rem;color:#ef5350;margin:.25rem 0 0}.auth-links{margin-top:1.5rem;text-align:center}.auth-link-text{font-size:.875rem;color:#9ca3af;margin:.5rem 0}.auth-link{color:#60a5fa;text-decoration:none;font-weight:600}.auth-link:hover{text-decoration:underline}.auth-progress-wrap{width:100%;max-width:600px;margin-bottom:.5rem}.auth-progress-bar{height:6px;background:#3a3d44;border-radius:3px;overflow:hidden}.auth-progress-fill{height:100%;background:#1976d2;border-radius:3px;transition:width .3s ease}.auth-section{margin-bottom:1.5rem}.auth-section-title{font-size:1.1rem;margin:0 0 .25rem;color:#e4e6eb;font-weight:600}.auth-section-desc{font-size:.875rem;color:#9ca3af;margin:0 0 .75rem}.auth-checkbox-label{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer;margin-bottom:.5rem;font-size:.95rem;color:#e4e6eb}.auth-checkbox{width:18px;height:18px;margin-top:.2rem;flex-shrink:0;cursor:pointer;accent-color:#1976d2}.auth-legal-text{font-size:.8rem;color:#9ca3af;margin:0 0 1rem 1.25rem;line-height:1.5}.auth-tip-box{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#22c55e26;border:1px solid rgba(34,197,94,.4);border-radius:.5rem}.auth-tip-icon{font-size:1.1rem;flex-shrink:0}.auth-tip-text{font-size:.875rem;color:#22c55e;margin:0}.auth-step-hint{font-size:.9rem;color:#9ca3af;margin:0 0 .5rem}.auth-upload-zone{border:2px dashed #3a3d44;border-radius:.5rem;padding:1.5rem;text-align:center;background:#1a1d21;position:relative}.auth-upload-zone:hover{border-color:#1976d2}.auth-file-input{position:absolute;width:100%;height:100%;top:0;left:0;opacity:0;cursor:pointer}.auth-upload-label{cursor:pointer;display:flex;flex-direction:column;gap:.5rem;align-items:center}.auth-upload-prompt{font-size:1rem;color:#e4e6eb}.auth-upload-file-name{font-size:.95rem;color:#22c55e;font-weight:600}.auth-upload-hint{font-size:.8rem;color:#9ca3af}.auth-button-group{display:flex;gap:1rem;margin-top:1rem}.auth-button-group .auth-button,.auth-button-group .auth-button-secondary{flex:1;margin-top:0}.auth-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.auth-options .auth-button{width:100%;margin-top:0;text-align:center;text-decoration:none;display:block;box-sizing:border-box}.auth-options .auth-button-secondary{width:100%;text-align:center;text-decoration:none;display:block;box-sizing:border-box}.auth-dev-section{margin-top:1.5rem;padding:1rem;background:#2f3238;border:1px solid #3a3d44;border-radius:.5rem}.auth-dev-label{font-size:.875rem;color:#9ca3af;margin-bottom:.5rem;font-weight:600}.auth-dev-button{background:#3a3d44;color:#9ca3af;border:none;padding:.75rem 1rem;font-size:.875rem;border-radius:.5rem;cursor:pointer;width:100%;margin-bottom:.5rem;transition:background .2s}.auth-dev-button:hover{background:#4b5563;color:#e4e6eb}.admin-page{max-width:1400px;margin:0 auto;padding:2rem}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.admin-header h1{font-size:2rem;font-weight:600;color:#1a1a1a;margin:0}.filter-bar{display:flex;gap:1.5rem;align-items:center;margin-bottom:1.5rem;padding:1rem;background:#f5f5f5;border-radius:8px}.filter-bar label{display:flex;flex-direction:column;gap:.5rem;font-size:.875rem;font-weight:500;color:#4a4a4a}.filter-bar select{padding:.5rem;border:1px solid #d0d0d0;border-radius:4px;font-size:.875rem;background:#fff;min-width:200px}.filter-bar .stats{margin-left:auto;display:flex;gap:1.5rem;font-size:.875rem;color:#666}.filter-bar .stats span{font-weight:500}.users-table-container,.assignments-table-container,.revisions-table-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.users-table,.assignments-table,.revisions-table{width:100%;border-collapse:collapse}.users-table thead,.assignments-table thead,.revisions-table thead{background:#f8f9fa;border-bottom:2px solid #e0e0e0}.users-table th,.assignments-table th,.revisions-table th{padding:1rem;text-align:left;font-size:.875rem;font-weight:600;color:#4a4a4a;text-transform:uppercase;letter-spacing:.5px}.users-table td,.assignments-table td,.revisions-table td{padding:1rem;border-bottom:1px solid #e0e0e0;font-size:.875rem}.users-table tbody tr:hover,.assignments-table tbody tr:hover,.revisions-table tbody tr:hover{background:#f9f9f9}.revisions-table tbody tr.is-selected{background:#e7f0ff}.users-table tbody tr.inactive{opacity:.6}.username{font-weight:500;color:#1a1a1a}.supervisor,.notebook{font-weight:500}.notes{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-admin{background:#ff6b6b;color:#fff}.badge-supervisor{background:#4dabf7;color:#fff}.badge-expert{background:#51cf66;color:#fff}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500}.status-badge.active{background:#d3f9d8;color:#2b8a3e}.status-badge.inactive{background:#ffe3e3;color:#c92a2a}.actions{display:flex;gap:.5rem}.btn-primary,.btn-secondary,.btn-small,.btn-danger{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary{background:#4c6ef5;color:#fff}.btn-primary:hover:not(:disabled){background:#3b5bdb}.btn-secondary{background:#e9ecef;color:#495057}.btn-secondary:hover:not(:disabled){background:#dee2e6}.btn-small{padding:.375rem .75rem;font-size:.8125rem;background:#4c6ef5;color:#fff}.btn-small:hover:not(:disabled){background:#3b5bdb}.btn-small.btn-secondary{background:#868e96;color:#fff}.btn-small.btn-secondary:hover:not(:disabled){background:#6c757d}.btn-small.btn-view{background:#2f9e44;color:#fff}.btn-small.btn-view:hover:not(:disabled){background:#2b8a3e}.btn-danger{background:#fa5252;color:#fff}.btn-danger:hover:not(:disabled){background:#e03131}button:disabled{opacity:.6;cursor:not-allowed}.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}.modal-content{background:#fff;border-radius:12px;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #00000026}.modal-content h2{margin:0 0 1.5rem;font-size:1.5rem;color:#1a1a1a}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:#4a4a4a}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem;border:1px solid #d0d0d0;border-radius:6px;font-size:.875rem;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4c6ef5;box-shadow:0 0 0 3px #4c6ef51a}.form-group textarea{resize:vertical;min-height:80px}.required{color:#fa5252}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.loading{text-align:center;padding:3rem;color:#868e96;font-size:.875rem}.error{padding:1rem;background:#ffe3e3;color:#c92a2a;border-radius:6px;font-size:.875rem;margin-bottom:1rem}.empty-state{text-align:center;padding:3rem;color:#868e96;font-style:italic}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a}.stat-card h3{font-size:.875rem;font-weight:500;color:#868e96;margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.5px}.stat-card .value{font-size:2rem;font-weight:600;color:#1a1a1a;margin:0}.stat-card .description{font-size:.8125rem;color:#868e96;margin-top:.5rem}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:2rem}.quick-action-card{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a;text-align:center;cursor:pointer;transition:all .2s;border:2px solid transparent}.quick-action-card:hover{border-color:#4c6ef5;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.quick-action-card h4{margin:0 0 .5rem;font-size:1rem;color:#1a1a1a}.quick-action-card p{margin:0;font-size:.8125rem;color:#868e96}.task-tabs{display:flex;gap:0;border-bottom:2px solid #e0e0e0;margin-bottom:1.5rem}.task-tab{position:relative;padding:.625rem 1.25rem;border:none;background:none;font-size:.9rem;font-weight:500;color:#666;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;display:flex;align-items:center;gap:.4rem;transition:color .15s}.task-tab:hover{color:#1a1a1a}.task-tab.active{color:#4c6ef5;border-bottom-color:#4c6ef5}.task-tab-badge{background:#ef6c00;color:#fff;border-radius:10px;padding:.05rem .45rem;font-size:.7rem;font-weight:700;line-height:1.4}.revision-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.125rem 1.25rem;margin-bottom:.875rem;transition:box-shadow .15s}.revision-selected{border-color:#4c6ef5;box-shadow:0 0 0 1px #4c6ef580}.revision-card:hover{box-shadow:0 2px 8px #00000014}.revision-resolved{background:#f9fbe7;border-color:#c5e1a5}.revision-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem}.revision-status-badge{display:inline-block;color:#fff;padding:.2rem .6rem;border-radius:4px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.revision-card-meta{font-size:.8rem;color:#777;margin-bottom:.75rem}.revision-card-content{padding:.75rem;background:#f8f9fa;border-radius:4px;font-size:.875rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.revision-section{margin-bottom:.75rem}.revision-section-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:#555;margin-bottom:.25rem}.revision-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem 1.25rem}.revision-meta-item{font-size:.85rem}.revision-meta-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:#555;margin-bottom:.1rem}.revision-meta-value{white-space:pre-wrap;word-break:break-word}.revision-id-pill{display:inline-flex;align-items:center;padding:.1rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;background:#edf2ff;color:#364fc7}.revision-expert-reply{margin-top:.75rem;padding:.75rem;background:#e8f5e9;border-radius:4px;font-size:.875rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.revision-extra-label{color:#555;font-weight:500}.revision-task-name-pill{font-size:.8rem;background:#e3f2fd;color:#1565c0;padding:2px 8px;border-radius:4px;font-weight:600}.revision-unassigned{color:#aaa}.revisions-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:1rem;align-items:flex-start}.revisions-table-column,.revisions-detail-column{min-width:0}.revisions-detail-empty{height:100%;padding:2rem 1.5rem;border-radius:8px;border:1px dashed #d0d0d0;background:#fafafa;color:#868e96;font-size:.9rem;display:flex;align-items:center;justify-content:center;text-align:center}.revisions-expanded-list{display:flex;flex-direction:column}.revision-id-cell{max-width:220px}.revision-id-primary{font-weight:600;margin-bottom:.1rem}.revision-task-name{font-size:.75rem;color:#666;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.revision-paper-cell{max-width:320px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.revision-expert-cell{max-width:200px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.revision-status-pill{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.4px}.revision-date-cell{white-space:nowrap;font-size:.8rem;color:#555}.view-toggle{display:inline-flex;border-radius:999px;padding:2px;background:#e9ecef}.view-toggle-button{border:none;background:transparent;padding:.25rem .75rem;font-size:.8rem;font-weight:500;color:#495057;border-radius:999px;cursor:pointer;transition:background .15s,color .15s}.view-toggle-button.active{background:#4c6ef5;color:#fff}.view-toggle-button:not(.active):hover{background:#dde2e6}.assignments-page{padding:0;max-width:none}.assignments-page--dark{background:#1a1d21;min-height:100vh;color:#e4e6eb}.assignments-two-panel{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:0;min-height:calc(100vh - 2rem);align-items:stretch}.assignments-left{display:flex;flex-direction:column;min-width:0;background:#24262b;border-right:1px solid #3a3d44;padding:1.25rem 1rem}.assignments-left-header{display:flex;align-items:baseline;gap:.5rem;margin-bottom:0;padding-bottom:1rem;border-bottom:1px solid #3a3d44}.assignments-title{margin:0;font-size:1.25rem;font-weight:600;color:#e4e6eb}.assignments-count{font-size:.875rem;color:#9ca3af}.assignments-tabs{display:flex;gap:.25rem;margin-bottom:1rem}.assignments-tab{padding:.4rem .75rem;border:none;background:transparent;color:#9ca3af;font-size:.875rem;font-weight:500;cursor:pointer;border-radius:6px;display:flex;align-items:center;gap:.35rem}.assignments-tab:hover{color:#e4e6eb;background:#2f3238}.assignments-tab.active{color:#60a5fa;background:#60a5fa1f}.assignments-tab-count{color:inherit;opacity:.9}.assignments-filter-buttons{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.assignments-filter-btn{padding:.35rem .75rem;border:1px solid #3a3d44;background:#2f3238;color:#9ca3af;font-size:.8125rem;font-weight:500;border-radius:6px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.assignments-filter-btn:hover{background:#3a3d44;color:#e4e6eb}.assignments-filter-btn.active{background:#1976d2;border-color:#1976d2;color:#fff}.assignments-filter-btn--clear{margin-left:auto}.assignments-filter-bar{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:flex-end;margin-bottom:1rem}.assignments-filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1rem;padding:.75rem 1rem;background:#24262b;border-bottom:1px solid #3a3d44;margin-bottom:1rem}.assignments-filter-row .assignments-filter-label{display:inline;flex-direction:unset;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;gap:0}.assignments-filter-row .assignments-filter-select{min-width:100px;padding:.35rem .6rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.8125rem;border-radius:6px}.assignments-filter-clear{padding:.25rem .5rem;border:none;background:none;color:#60a5fa;font-size:.8125rem;cursor:pointer;font-weight:500}.assignments-filter-clear:hover{text-decoration:underline}.assignments-filter-label{display:flex;flex-direction:column;gap:.25rem;font-size:.8125rem;font-weight:500;color:#9ca3af}.assignments-filter-bar .assignments-filter-select{min-width:100px}.assignments-bulk-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.assignments-bulk-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:#9ca3af;cursor:pointer}.assignments-bulk-checkbox input{cursor:pointer}.assignments-bulk-select{padding:.35rem .6rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.8125rem;border-radius:6px;min-width:160px;cursor:pointer}.assignments-btn-primary{padding:.4rem 1rem;border:none;background:#1976d2;color:#fff;font-size:.875rem;font-weight:500;border-radius:6px;cursor:pointer;transition:background .2s}.assignments-btn-primary:hover:not(:disabled){background:#1565c0}.assignments-btn-secondary{padding:.4rem .75rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.8125rem;font-weight:500;border-radius:6px;cursor:pointer;transition:background .2s,border-color .2s}.assignments-btn-secondary:hover:not(:disabled){background:#3a3d44}.assignments-btn-danger{padding:.4rem .75rem;border:none;background:#c62828;color:#fff;font-size:.8125rem;font-weight:500;border-radius:6px;cursor:pointer;transition:background .2s}.assignments-btn-danger:hover:not(:disabled){background:#b71c1c}.assignments-btn-small{padding:.25rem .5rem;font-size:.75rem}.assignments-table-wrap{flex:1;min-height:0;overflow:auto;border:1px solid #3a3d44;border-radius:8px;background:#1a1d21}.assignments-table{width:100%;border-collapse:collapse;font-size:.8125rem}.assignments-table thead{position:sticky;top:0;background:#2f3238;z-index:1}.assignments-table th{padding:.6rem .75rem;text-align:left;font-weight:600;color:#9ca3af;border-bottom:1px solid #3a3d44}.assignments-table td{padding:.6rem .75rem;border-bottom:1px solid #2f3238;color:#e4e6eb}.assignments-table tbody tr:hover{background:#2f3238}.assignments-table tbody tr.is-selected{background:#1976d233}.assignments-th-checkbox,.assignments-td-checkbox{width:2.5rem;text-align:center;vertical-align:middle}.assignments-td-id{font-weight:600;color:#60a5fa}.assignments-td-paper{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignments-td-expert{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignments-status-pill{display:inline-block;padding:.2rem .5rem;border-radius:999px;font-size:.7rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.03em}.assignments-footer{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #3a3d44;flex-wrap:wrap}.assignments-loading,.assignments-empty{padding:1.5rem;text-align:center;color:#9ca3af;font-size:.875rem}.assignments-error{padding:1rem;background:#c6282826;color:#ef5350;border-radius:6px;font-size:.875rem;margin-bottom:1rem}.assignments-right{min-width:0;overflow-y:auto;padding:1.25rem 1.5rem;background:#1a1d21}.assignments-detail-empty{height:100%;min-height:200px;display:flex;align-items:center;justify-content:center;text-align:center;color:#6b7280;font-size:.9rem;border:1px dashed #3a3d44;border-radius:8px;padding:2rem}.assignments-filter-bar-supervisor{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.assignments-filter-select{padding:.35rem .6rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.8125rem;border-radius:6px;min-width:120px;cursor:pointer}.assignments-badge-supervisor{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;background:#4dabf7;color:#0d2137}.assignments-notes{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignment-detail-panel{color:#e4e6eb}.assignment-detail-header{margin-bottom:1.5rem}.assignment-detail-header-top{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.5rem}.assignment-detail-status{display:inline-block;padding:.2rem .6rem;border-radius:4px;font-size:.75rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.03em}.assignment-detail-id{font-weight:700;color:#60a5fa;font-size:.9rem}.assignment-detail-filename{font-size:.8rem;color:#9ca3af}.assignment-detail-title{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:#e4e6eb}.assignment-detail-meta{font-size:.8125rem;color:#9ca3af;margin-bottom:1rem}.assignment-detail-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.assignment-detail-select{padding:.35rem .6rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.8125rem;border-radius:6px;min-width:160px;cursor:pointer}.assignment-detail-sections{display:flex;flex-direction:column;gap:1rem}.assignment-detail-section{padding:1rem;background:#24262b;border-radius:8px;border:1px solid #3a3d44}.assignment-detail-section-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;margin-bottom:.5rem}.assignment-detail-section-content{font-size:.875rem;line-height:1.55;color:#e4e6eb;white-space:pre-wrap;word-break:break-word}.assignment-detail-section--expert{background:#2e7d321f;border-color:#2e7d3259}.assignment-detail-expert-meta{font-size:.75rem;color:#9ca3af;margin-bottom:.35rem}.assignment-detail-rounds{display:flex;flex-direction:column;gap:.75rem}.assignment-detail-round{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.assignment-detail-round-label{font-size:.75rem;font-weight:600;color:#9ca3af}.assignment-detail-round-badge{padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.assignment-detail-round-badge--ok{background:#2e7d3240;color:#81c784}.assignment-detail-round-badge--revision{background:#1976d240;color:#64b5f6}.assignment-detail-round-note{font-size:.8125rem;color:#b0b8c0;width:100%}.tasks-page{padding:0;max-width:none}.tasks-page--dark{background:#1a1d21;min-height:100vh;color:#e4e6eb;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif}.tasks-page-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid #3a3d44}.tasks-page-title-row{display:flex;align-items:baseline;gap:.5rem}.tasks-page-title{margin:0;font-size:1.5rem;font-weight:600;color:#e4e6eb}.tasks-page-count{font-size:.875rem;color:#9ca3af}.tasks-page-actions{display:flex;gap:.5rem;flex-wrap:wrap}.tasks-btn-primary{padding:.5rem 1rem;border:none;background:#1976d2;color:#fff;font-size:.875rem;font-weight:500;border-radius:6px;cursor:pointer;transition:background .2s}.tasks-btn-primary:hover:not(:disabled){background:#1565c0}.tasks-btn-secondary{padding:.45rem .9rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.8125rem;font-weight:500;border-radius:6px;cursor:pointer;transition:background .2s,border-color .2s}.tasks-btn-secondary:hover:not(:disabled){background:#3a3d44}.tasks-btn-danger{padding:.45rem .9rem;border:none;background:#c62828;color:#fff;font-size:.8125rem;font-weight:500;border-radius:6px;cursor:pointer;transition:background .2s}.tasks-btn-danger:hover:not(:disabled){background:#b71c1c}.tasks-filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1rem;padding:.75rem 1.5rem;background:#24262b;border-bottom:1px solid #3a3d44}.tasks-filter-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;margin-right:.25rem}.tasks-filter-select{padding:.35rem .6rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.8125rem;border-radius:6px;min-width:120px;cursor:pointer}.tasks-filter-clear{padding:.25rem .5rem;border:none;background:none;color:#60a5fa;font-size:.8125rem;cursor:pointer;margin-left:.25rem}.tasks-filter-clear:hover{text-decoration:underline}.tasks-search-input{margin-left:auto;padding:.35rem .75rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.8125rem;border-radius:6px;min-width:180px}.tasks-search-input::placeholder{color:#6b7280}.tasks-bulk-bar{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;padding:.6rem 1.5rem;background:#24262b;border-bottom:1px solid #3a3d44}.tasks-bulk-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:#9ca3af;cursor:pointer}.tasks-bulk-deselect{padding:0;border:none;background:none;color:#60a5fa;font-size:.8125rem;cursor:pointer}.tasks-bulk-deselect:hover{text-decoration:underline}.tasks-bulk-spacer{flex:1}.tasks-bulk-select{padding:.35rem .6rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.8125rem;border-radius:6px;min-width:140px;cursor:pointer}.tasks-table-wrap{overflow:auto;padding:1rem 1.5rem}.tasks-table{width:100%;border-collapse:collapse;font-size:.8125rem}.tasks-table thead{position:sticky;top:0;background:#24262b;z-index:1}.tasks-table th{padding:.6rem .75rem;text-align:left;font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:#9ca3af;border-bottom:1px solid #3a3d44}.tasks-th-sort{padding:0;border:none;background:none;color:inherit;font:inherit;cursor:pointer;text-align:left}.tasks-th-sort:hover{color:#e4e6eb}.tasks-table td{padding:.6rem .75rem;border-bottom:1px solid #2f3238;color:#e4e6eb}.tasks-table tbody tr.tasks-row:hover{background:#2f3238}.tasks-th-checkbox,.tasks-td-checkbox{width:2.5rem;text-align:center;vertical-align:middle}.tasks-td-id{vertical-align:top}.tasks-td-id-clickable{cursor:pointer}.tasks-td-id-clickable:hover .tasks-id-primary{text-decoration:underline}.tasks-id-primary{font-weight:600;color:#60a5fa}.tasks-id-secondary{font-size:.75rem;color:#9ca3af;margin-top:.1rem}.tasks-td-title{max-width:320px;word-break:break-word}.tasks-td-status{white-space:nowrap}.tasks-status-pill{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.tasks-status--active{color:#22c55e;background:#22c55e26}.tasks-status--archived{color:#9ca3af;background:#9ca3af33}.tasks-td-created{white-space:nowrap;color:#9ca3af}.tasks-td-expert-name{max-width:220px;color:#e4e6eb;font-size:.875rem;word-break:break-word}.tasks-td-actions{white-space:nowrap}.tasks-action-open{padding:.25rem .5rem;border:none;background:#1976d2;color:#fff;font-size:.75rem;font-weight:500;border-radius:4px;cursor:pointer;margin-right:.25rem}.tasks-action-open:hover{background:#1565c0}.tasks-action-edit{padding:.25rem .5rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.75rem;font-weight:500;border-radius:4px;cursor:pointer;margin-right:.25rem}.tasks-action-edit:hover{background:#3a3d44}.tasks-action-delete{padding:.2rem .45rem;border:none;background:#c62828;color:#fff;font-size:1rem;line-height:1;border-radius:4px;cursor:pointer}.tasks-action-delete:hover{background:#b71c1c}.tasks-loading,.tasks-empty{padding:2rem 1.5rem;text-align:center;color:#9ca3af;font-size:.9rem}.tasks-empty p{margin:0 0 1rem}.tasks-error{padding:1rem 1.5rem;background:#c6282826;color:#ef5350;border-radius:6px;font-size:.875rem;margin:1rem 1.5rem}.tasks-page--dark .tasks-page-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;padding:1.25rem 1.5rem}.tasks-page--dark .tasks-page-card{background:#24262b;border:1px solid #3a3d44;border-radius:.75rem;padding:1.5rem;cursor:pointer;transition:background .2s,border-color .2s}.tasks-page--dark .tasks-page-card:hover{background:#2f3238;border-color:#3a3d44}.tasks-page--dark .tasks-page-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.tasks-page--dark .tasks-page-card-title{font-size:1.1rem;margin:0;color:#e4e6eb;flex:1;word-break:break-word}.tasks-page--dark .tasks-page-card-meta{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1rem;padding:.75rem;background:#1a1d21;border-radius:.5rem;font-size:.875rem;border:1px solid #3a3d44}.tasks-page--dark .tasks-page-card-meta-row{display:flex;flex-direction:column;gap:.25rem}.tasks-page--dark .tasks-page-card-meta-label{font-weight:600;color:#9ca3af;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.tasks-page--dark .tasks-page-card-meta-value{color:#e4e6eb;font-size:.875rem}.tasks-page--dark .tasks-page-card-actions{display:flex;gap:.5rem;flex-wrap:wrap}.tasks-page--dark .tasks-page-card-open{flex:1;background:#1976d2;color:#fff;border:none;padding:.5rem 1rem;border-radius:.375rem;cursor:pointer;font-size:.875rem;min-width:80px}.tasks-page--dark .tasks-page-card-open:hover{background:#1565c0}.tasks-page--dark .tasks-status-pill--active{color:#22c55e;background:#22c55e33;padding:.2rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600}.tasks-page--dark .tasks-status-pill--archived{color:#9ca3af;background:#9ca3af33;padding:.2rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600}.task-detail-page{padding:0;max-width:none}.task-detail-page--dark{background:#1a1d21;min-height:100vh;color:#e4e6eb;padding:1.25rem 1.5rem}.task-detail-loading{padding:2rem;text-align:center;color:#9ca3af;font-size:.9rem}.task-detail-error{padding:1rem;background:#c6282826;color:#ef5350;border-radius:6px;font-size:.875rem;margin-bottom:1rem}.task-detail-back{padding:.45rem .9rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.875rem;border-radius:6px;cursor:pointer;margin-bottom:1.5rem}.task-detail-back:hover{background:#3a3d44}.task-detail-toast{position:fixed;bottom:2rem;right:2rem;background:#2e7d32;color:#fff;padding:.75rem 1.25rem;border-radius:6px;box-shadow:0 4px 12px #0000004d;font-size:.9rem;z-index:1001}.task-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.task-detail-title{margin:0;font-size:1.5rem;font-weight:600;color:#e4e6eb}.task-detail-status{margin-left:.75rem;vertical-align:middle;font-size:.75rem;font-weight:600;padding:.2rem .5rem;border-radius:4px}.task-detail-status--active{background:#22c55e33;color:#22c55e}.task-detail-status--archived{background:#9ca3af33;color:#9ca3af}.task-detail-description{color:#9ca3af;margin-top:.5rem;font-size:1rem}.task-detail-header-actions{display:flex;gap:.5rem}.task-detail-review-toolbar{display:grid;grid-template-columns:auto 1px minmax(0,max-content);grid-template-rows:auto auto;column-gap:1.25rem;row-gap:.4rem;align-items:start}.task-detail-review-toolbar>.task-detail-review-v1-btn{grid-column:1;grid-row:1;justify-self:start}.task-detail-review-toolbar>.task-detail-review-hint-cell:not(.task-detail-review-hint-cell--v2){grid-column:1;grid-row:2}.task-detail-review-toolbar-sep{grid-column:2;grid-row:1 / -1;width:1px;background:#ffffff1f;justify-self:center;min-height:100%;border-radius:1px}.task-detail-review-hint{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.7rem;color:#9ca3af;text-align:center;line-height:1.3}.task-detail-review-hint-cell{display:flex;justify-content:center}.task-detail-review-segmented-wrap{grid-column:3;grid-row:1}.task-detail-review-hint-cell--v2{grid-column:3;grid-row:2}.task-detail-review-v1-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .95rem;border-radius:7px;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;color:#d1d5db;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease}.task-detail-review-v1-btn:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff38}.task-detail-review-v1-btn:disabled{opacity:.55;cursor:not-allowed}.task-detail-review-v1-btn .task-detail-btn-review-icon{border-color:transparent transparent transparent #d1d5db}.task-detail-review-v1-badge{font-size:.65rem;font-weight:700;padding:2px 6px;border-radius:4px;border:1px solid rgba(255,255,255,.22);color:#d1d5db;background:#0003;line-height:1.2;margin-left:2px}.task-detail-review-segmented{display:inline-flex;align-items:stretch;border:1px solid rgba(255,255,255,.12);border-radius:7px;overflow:hidden;background:#ffffff0a}.task-detail-review-segment{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;margin:0;border:none;border-left:1px solid rgba(255,255,255,.08);background:transparent;color:#d1d5db;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s ease}.task-detail-review-segmented>.task-detail-review-segment:first-child{border-left:none}.task-detail-review-segment:hover:not(:disabled){background:#ffffff0f}.task-detail-review-segment:disabled{opacity:.55;cursor:not-allowed}.task-detail-review-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.task-detail-review-dot--rubric{background:#a855f7}.task-detail-review-dot--answer{background:#7dd3fc}.task-detail-review-dot--notebook{background:#4ade80}.task-detail-review-v2-cell{display:inline-flex;align-items:center;justify-content:center;padding:0 .7rem;border-left:1px solid rgba(255,255,255,.08);background:#00000026}.task-detail-review-v2-badge{font-size:.65rem;font-weight:700;padding:2px 6px;border-radius:4px;border:1px solid #3b82f6;color:#93c5fd;background:#0f172a99;line-height:1.2}.task-detail-btn-review{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .9rem;border-radius:999px;border:1px solid #4b5563;background:#111827;color:#e5e7eb;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .05s ease}.task-detail-btn-review:hover:not(:disabled){background:#1f2937;border-color:#6b7280}.task-detail-btn-review:disabled{opacity:.6;cursor:not-allowed}.task-detail-btn-review-icon{width:0;height:0;border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent #e5e7eb}.task-detail-btn-primary{padding:.45rem .9rem;border:none;background:#1976d2;color:#fff;font-size:.875rem;font-weight:500;border-radius:6px;cursor:pointer}.task-detail-btn-primary:hover:not(:disabled){background:#1565c0}.task-detail-btn-secondary{padding:.45rem .9rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.875rem;font-weight:500;border-radius:6px;cursor:pointer}.task-detail-btn-secondary:hover:not(:disabled){background:#3a3d44}.task-detail-btn-danger{padding:.35rem .65rem;border:none;background:#c62828;color:#fff;font-size:.8125rem;font-weight:500;border-radius:4px;cursor:pointer}.task-detail-btn-danger:hover:not(:disabled){background:#b71c1c}.task-detail-btn-small{padding:.25rem .5rem;font-size:.75rem;border-radius:4px;cursor:pointer;margin-right:.25rem}.task-detail-btn-open{background:#1976d2;color:#fff;border:none}.task-detail-btn-open:hover{background:#1565c0}.task-detail-btn-small.task-detail-btn-secondary{background:#2f3238;border:1px solid #3a3d44;color:#e4e6eb}.task-detail-btn-small.task-detail-btn-secondary:hover{background:#3a3d44}.task-detail-btn-small.task-detail-btn-primary{padding:.25rem .5rem;font-size:.75rem}.task-detail-payout-input-wrap{display:flex;flex-direction:column;gap:.25rem;max-width:140px}.task-detail-payout-input{background:#111317;border:1px solid #3a3d44;color:#e4e6eb;border-radius:4px;padding:.25rem .4rem;font-size:.75rem;width:100%}.task-detail-payout-preview{font-size:.7rem;color:#9aa0a6}.task-detail-meta{display:flex;gap:2rem;margin-bottom:1.5rem;padding:1rem;background:#24262b;border-radius:8px;font-size:.875rem;color:#e4e6eb;border:1px solid #3a3d44}.task-detail-info-block{margin-bottom:1.5rem;padding:1rem;background:#24262b;border-radius:8px;border:1px solid #3a3d44;font-size:.9rem;color:#e4e6eb}.task-detail-info-block .task-detail-subtitle{margin:0 0 .75rem;font-size:1rem}.task-detail-info-dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.25rem 1.5rem}.task-detail-info-dl dt{color:#9ca3af;font-weight:500}.task-detail-info-dl dd{margin:0}.task-detail-tabs{display:flex;gap:.25rem;border-bottom:1px solid #3a3d44;margin-bottom:1.5rem}.task-detail-tab{padding:.5rem 1rem;border:none;background:transparent;color:#9ca3af;font-size:.9rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.task-detail-tab:hover{color:#e4e6eb}.task-detail-tab.active{color:#60a5fa;border-bottom-color:#1976d2}.task-detail-tab-badge{margin-left:.35rem;background:#ef6c00;color:#fff;border-radius:10px;padding:.05rem .4rem;font-size:.7rem;font-weight:600}.task-detail-section{margin-top:1.5rem;margin-bottom:1.5rem}.task-detail-section-title{margin:0 0 .5rem;font-size:1.25rem;color:#e4e6eb}.task-detail-section-desc,.task-detail-muted{color:#9ca3af;font-size:.9rem;margin-bottom:.75rem}.task-detail-muted{font-size:.85rem;color:#6b7280}.task-detail-files-layout{display:flex;gap:1rem;align-items:stretch;min-height:480px}.task-detail-files-list{width:320px;min-width:280px;max-width:380px;display:flex;flex-direction:column;background:#252525;border:1px solid #3a3d44;border-radius:8px;overflow:hidden}.task-detail-files-list-header{padding:.75rem 1rem;border-bottom:1px solid #3a3d44;flex-shrink:0;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem}.task-detail-files-list-header .task-detail-section-title{font-size:1.1rem;margin:0}.task-detail-files-list-header .task-detail-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:0}.task-detail-files-list-items{flex:1;overflow-y:auto;padding:.5rem 0}.task-detail-files-list-row{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;cursor:pointer;font-size:.9rem;color:#e4e6eb;border-bottom:1px solid #2d2d2d}.task-detail-files-list-row:hover{background:#2d2d2d}.task-detail-files-list-row-selected{background:#1e3a5f}.task-detail-files-list-folder{font-weight:500}.task-detail-files-list-name-block{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.task-detail-files-list-name{font-weight:600;color:#e4e6eb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.task-detail-files-list-meta{font-size:.75rem;color:#9ca3af;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-detail-files-list-actions{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.task-detail-files-list-action{padding:.2rem .4rem;font-size:.75rem;color:#9ca3af;background:transparent;border:none;border-radius:4px;cursor:pointer;text-decoration:none}.task-detail-files-list-action:hover{color:#e4e6eb;background:#3a3d44}.task-detail-files-list-action-danger:hover{color:#f87171}.task-detail-files-list-action-icon{width:28px;height:28px;min-width:28px;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.9rem;line-height:1}.task-detail-files-list-action-download{border:1px solid #3b82f6;color:#3b82f6}.task-detail-files-list-action-download:hover{background:#3b82f633;color:#60a5fa}.task-detail-files-list-action-icon.task-detail-files-list-action-danger{border:1px solid #dc2626;color:#f87171}.task-detail-files-list-action-icon.task-detail-files-list-action-danger:hover{background:#dc262633;color:#fca5a5}.task-detail-files-list-empty{padding:1rem;font-size:.9rem;color:#9ca3af;text-align:center}.task-detail-files-preview{flex:1;min-width:0;display:flex;flex-direction:column;background:#252525;border:1px solid #3a3d44;border-radius:8px;overflow:hidden}.task-detail-files-preview-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem 1rem;background:#2d2d2d;border-bottom:1px solid #3a3d44;flex-shrink:0}.task-detail-files-preview-title{font-size:.95rem;font-weight:600;color:#e4e6eb}.task-detail-files-preview-header-actions{display:flex;align-items:center;gap:.5rem}.task-detail-files-preview-body{flex:1;min-height:360px;overflow:auto;padding:0;display:flex;flex-direction:column}.task-detail-files-preview-inline{flex:1;min-height:0}.task-detail-files-preview-iframe{width:100%;height:100%;min-height:420px;border:none;border-radius:4px;background:#1a1a1a}.task-detail-key-files-preview{display:flex;flex-direction:column;gap:1rem}.task-detail-key-files-row{display:flex;gap:1rem;align-items:stretch}.task-detail-key-file-cell{flex:1;min-width:0}.task-detail-key-file-block{background:#252525;border:1px solid #3a3d44;border-radius:8px;overflow:hidden}.task-detail-key-file-title{margin:0;padding:.5rem 1rem;font-size:.95rem;font-weight:600;color:#e4e6eb;background:#2d2d2d;border-bottom:1px solid #3a3d44;display:flex;justify-content:space-between;align-items:center;gap:.75rem}.task-detail-key-file-title-actions{display:flex;gap:.5rem;margin-left:auto;flex-shrink:0}.task-detail-key-file-content{padding:1rem;font-size:.875rem;color:#d1d5db;max-height:20rem;overflow:auto}.task-detail-key-file-content .task-detail-key-file-pre,.task-detail-key-file-pre{margin:0;white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,monospace;font-size:.85rem;line-height:1.5}.task-detail-key-file-textarea{width:100%;min-height:12rem;font-family:ui-monospace,monospace;font-size:.85rem;line-height:1.5;background:#1f2937;color:#e5e7eb;border:1px solid #374151;border-radius:4px;padding:.75rem;resize:vertical}.task-detail-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.task-detail-files-path{font-size:.875rem;font-weight:400;color:#9ca3af;margin-left:.5rem}.task-detail-actions{display:flex;gap:.5rem;flex-wrap:wrap}.task-detail-editor-block{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #3a3d44}.task-detail-subtitle{font-size:1rem;margin:0 0 .5rem;color:#e4e6eb}.task-detail-textarea{width:100%;font-family:monospace;font-size:.9rem;padding:.75rem;border-radius:6px;border:1px solid #3a3d44;box-sizing:border-box;margin-bottom:.75rem;background:#24262b;color:#e4e6eb}.task-detail-textarea::placeholder{color:#6b7280}.task-detail-preview-block{margin-top:1.25rem}.task-detail-preview-box{max-height:320px;overflow-y:auto;padding:1rem;border-radius:8px;border:1px solid #3a3d44;background:#24262b!important;margin-bottom:.75rem;color:#e4e6eb!important}.task-detail-preview-box h1,.task-detail-preview-box h2,.task-detail-preview-box h3,.task-detail-preview-box h4,.task-detail-preview-box h5,.task-detail-preview-box h6,.task-detail-preview-box p,.task-detail-preview-box li,.task-detail-preview-box td,.task-detail-preview-box th,.task-detail-preview-box span,.task-detail-preview-box div,.task-detail-preview-box strong,.task-detail-preview-box em{color:#e4e6eb!important}.task-detail-preview-box a{color:#60a5fa!important}.task-detail-preview-box a:hover{color:#93c5fd!important}.task-detail-preview-box code{background:#1a1d21;color:#e4e6eb;padding:.15rem .35rem;border-radius:4px;font-size:.9em}.task-detail-preview-box pre{background:#1a1d21!important;color:#e4e6eb!important;border:1px solid #3a3d44;border-radius:6px;padding:.75rem;overflow-x:auto}.task-detail-preview-box pre code{background:transparent;padding:0}.task-detail-preview-box blockquote{border-left:4px solid #3a3d44;margin:.5rem 0;padding-left:1rem;color:#b0b8c0!important}.task-detail-preview-box table,.task-detail-preview-box th,.task-detail-preview-box td{border-color:#3a3d44}.task-detail-breadcrumb{margin-bottom:1rem;padding:.5rem .75rem;background:#24262b;border-radius:6px;border:1px solid #3a3d44}.task-detail-breadcrumb .task-detail-btn-small{margin-right:.5rem}.task-detail-table-wrap{overflow:auto;border:1px solid #3a3d44;border-radius:8px;background:#1a1d21}.task-detail-table{width:100%;border-collapse:collapse;font-size:.8125rem}.task-detail-table thead{background:#2f3238}.task-detail-table th{padding:.6rem .75rem;text-align:left;font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:#9ca3af;border-bottom:1px solid #3a3d44}.task-detail-table td{padding:.6rem .75rem;border-bottom:1px solid #2f3238;color:#e4e6eb}.task-detail-table tbody tr:hover{background:#2f3238}.task-detail-row-clickable{cursor:pointer}.task-detail-icon{margin-right:.5rem}.task-detail-cell-actions{white-space:nowrap}.task-detail-empty{text-align:center;padding:2rem;color:#9ca3af;font-style:italic}.task-detail-badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.task-detail-badge--expert{background:#22c55e33;color:#22c55e}.task-detail-badge--supervisor{background:#4dabf740;color:#93c5fd}.task-detail-page--dark .btn-primary{background:#1976d2;color:#fff;border:none}.task-detail-page--dark .btn-primary:hover:not(:disabled){background:#1565c0}.task-detail-page--dark .btn-secondary{background:#2f3238;color:#e4e6eb;border:1px solid #3a3d44}.task-detail-page--dark .btn-secondary:hover:not(:disabled){background:#3a3d44}.task-detail-page--dark .btn-small{padding:.25rem .5rem;font-size:.75rem}.task-detail-page--dark .assignments-table-container{background:#1a1d21;border:1px solid #3a3d44;border-radius:8px}.task-detail-page--dark .assignments-table thead{background:#2f3238;border-bottom:1px solid #3a3d44}.task-detail-page--dark .assignments-table th{color:#9ca3af}.task-detail-page--dark .assignments-table td{color:#e4e6eb;border-bottom:1px solid #2f3238}.task-detail-page--dark .assignments-table tbody tr:hover{background:#2f3238}.task-detail-page--dark .empty-state{color:#9ca3af}.task-detail-revisions{margin-top:.5rem}.task-detail-revisions-summary{font-size:.875rem;color:#9ca3af}.task-detail-revisions-empty{padding:3rem 2rem;text-align:center;border:1px dashed #3a3d44;border-radius:8px;background:#24262b}.task-detail-page--dark .task-detail-revision-card.revision-card,.task-detail-page--dark .revision-card.task-detail-revision-card,.task-detail-page--dark .revision-card{background:#24262b;border:1px solid #3a3d44;color:#e4e6eb}.task-detail-page--dark .task-detail-revision-card.revision-resolved,.task-detail-page--dark .revision-card.task-detail-revision-card.revision-resolved,.task-detail-page--dark .revision-card.revision-resolved{background:#2e7d321f;border-color:#2e7d3259}.task-detail-revision-card-title-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.task-detail-revision-card-title{font-size:1rem;color:#e4e6eb}.task-detail-revision-card-actions{display:flex;gap:.5rem;flex-shrink:0;flex-wrap:wrap}.task-detail-revision-select{padding:.35rem .6rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.875rem;border-radius:6px;min-width:160px;cursor:pointer}.task-detail-page--dark .task-detail-revision-meta.revision-card-meta,.task-detail-page--dark .revision-card-meta{color:#9ca3af}.task-detail-page--dark .task-detail-revision-content.revision-card-content,.task-detail-page--dark .revision-card-content{background:#1a1d21;border:1px solid #3a3d44;border-radius:6px;color:#e4e6eb}.task-detail-page--dark .revision-card-content .revision-extra-label{color:#9ca3af!important}.task-detail-page--dark .task-detail-revision-expert-reply.revision-expert-reply,.task-detail-page--dark .revision-expert-reply{background:#2e7d3226;border:1px solid rgba(46,125,50,.3);border-radius:6px;color:#e4e6eb}.task-detail-page--dark .revision-expert-reply .revision-extra-label{color:#9ca3af!important}.task-detail-page--dark .revision-task-name-pill{background:#1976d240;color:#90caf9}.task-detail-page--dark .revision-unassigned{color:#9ca3af}.task-detail-page--dark .revision-card:hover{box-shadow:0 2px 8px #00000040}.task-detail-page--dark .revision-card textarea{background:#1a1d21;border:1px solid #3a3d44;color:#e4e6eb}.task-detail-page--dark .revision-card textarea::placeholder{color:#6b7280}.task-detail-revision-expert-label{font-size:.75rem;color:#9ca3af;margin-bottom:.25rem;font-weight:600}.task-detail-page--dark .modal-overlay{background:#000000a6}.task-detail-page--dark .modal-content,.modal-overlay--dark .modal-content{background:#24262b;border:1px solid #3a3d44;box-shadow:0 4px 24px #0006}.modal-overlay--dark{background:#000000a6}.task-detail-page--dark .modal-content h2,.modal-overlay--dark .modal-content h2,.task-detail-page--dark .modal-content h3,.modal-overlay--dark .modal-content h3,.task-detail-page--dark .modal-content .form-group label,.modal-overlay--dark .modal-content .form-group label{color:#e4e6eb}.task-detail-page--dark .modal-content .form-group small,.modal-overlay--dark .modal-content .form-group small{color:#9ca3af}.task-detail-page--dark .modal-content .form-group input,.task-detail-page--dark .modal-content .form-group select,.task-detail-page--dark .modal-content .form-group textarea,.modal-overlay--dark .modal-content .form-group input,.modal-overlay--dark .modal-content .form-group select,.modal-overlay--dark .modal-content .form-group textarea{background:#1a1d21;border:1px solid #3a3d44;color:#e4e6eb}.task-detail-page--dark .modal-content .form-group input::placeholder,.task-detail-page--dark .modal-content .form-group textarea::placeholder,.modal-overlay--dark .modal-content .form-group input::placeholder,.modal-overlay--dark .modal-content .form-group textarea::placeholder{color:#6b7280}.task-detail-page--dark .modal-content .form-group input:focus,.task-detail-page--dark .modal-content .form-group select:focus,.task-detail-page--dark .modal-content .form-group textarea:focus,.modal-overlay--dark .modal-content .form-group input:focus,.modal-overlay--dark .modal-content .form-group select:focus,.modal-overlay--dark .modal-content .form-group textarea:focus{border-color:#1976d2;box-shadow:0 0 0 2px #1976d240}.task-detail-page--dark .modal-content .form-group select option,.modal-overlay--dark .modal-content .form-group select option{background:#24262b;color:#e4e6eb}.task-detail-page--dark .modal-content .modal-actions .btn-primary,.modal-overlay--dark .modal-content .modal-actions .btn-primary{background:#1976d2;color:#fff;border:none}.task-detail-page--dark .modal-content .modal-actions .btn-primary:hover:not(:disabled),.modal-overlay--dark .modal-content .modal-actions .btn-primary:hover:not(:disabled){background:#1565c0}.task-detail-page--dark .modal-content .modal-actions .btn-secondary,.modal-overlay--dark .modal-content .modal-actions .btn-secondary{background:#2f3238;color:#e4e6eb;border:1px solid #3a3d44}.task-detail-page--dark .modal-content .modal-actions .btn-secondary:hover:not(:disabled),.modal-overlay--dark .modal-content .modal-actions .btn-secondary:hover:not(:disabled){background:#3a3d44}.task-detail-page--dark .modal-content .error,.modal-overlay--dark .modal-content .error{background:#c6282833;color:#ef5350;border:1px solid rgba(198,40,40,.4)}.task-detail-page--dark .modal-content .required,.modal-overlay--dark .modal-content .required{color:#f87171}.task-detail-page--dark .modal-content .loading,.modal-overlay--dark .modal-content .loading{color:#9ca3af}.modal-overlay--dark .modal-content .modal-role-box{padding:.75rem;background:#1a1d21;border-radius:6px;font-size:.875rem;margin-bottom:1rem;border:1px solid #3a3d44;color:#e4e6eb}.modal-overlay--dark .modal-content .modal-role-hint{color:#9ca3af;margin-left:.5rem}.task-detail-page--dark .modal-content p{color:#9ca3af}.task-detail-page--dark .modal-content pre{background:#1a1d21;color:#e4e6eb;border:1px solid #3a3d44;border-radius:4px;padding:.75rem}.task-detail-page--dark .modal-content .review-synthesis-block{background:#1a1d21;color:#e4e6eb;border:1px solid #3a3d44;border-radius:4px;padding:.75rem;margin-bottom:.5rem;font-size:.9rem;line-height:1.5}.task-detail-page--dark .modal-content .review-synthesis-block p,.task-detail-page--dark .modal-content .review-synthesis-block strong,.task-detail-page--dark .modal-content .review-synthesis-block span{color:#e4e6eb}.task-detail-page--dark .task-detail-instructions-intro{color:#9ca3af;font-size:.9rem;margin-bottom:.75rem}.task-detail-page--dark .instructions-panel{background:#24262b!important;border:1px solid #3a3d44!important;color:#e4e6eb!important;padding:1rem;border-radius:8px;max-height:420px;overflow-y:auto}.task-detail-page--dark .instructions-panel h1,.task-detail-page--dark .instructions-panel h2,.task-detail-page--dark .instructions-panel h3,.task-detail-page--dark .instructions-panel h4,.task-detail-page--dark .instructions-panel h5,.task-detail-page--dark .instructions-panel h6,.task-detail-page--dark .instructions-panel p,.task-detail-page--dark .instructions-panel li,.task-detail-page--dark .instructions-panel td,.task-detail-page--dark .instructions-panel th,.task-detail-page--dark .instructions-panel span,.task-detail-page--dark .instructions-panel div,.task-detail-page--dark .instructions-panel strong,.task-detail-page--dark .instructions-panel em{color:#e4e6eb!important;background:transparent!important}.task-detail-page--dark .instructions-panel a{color:#60a5fa!important}.task-detail-page--dark .instructions-panel code,.task-detail-page--dark .instructions-panel pre{background:#1a1d21!important;color:#e4e6eb!important;border-radius:4px;padding:.2em .4em;border:1px solid #3a3d44!important}.task-detail-page--dark .instructions-panel pre{padding:.75rem;overflow:auto}.task-detail-page--dark .instructions-panel pre code{background:transparent!important;border:none!important}.task-detail-page--dark .task-detail-instructions-textarea{background:#1a1d21;border:1px solid #3a3d44;color:#e4e6eb}.task-detail-page--dark .task-detail-instructions-textarea::placeholder{color:#6b7280}.task-detail-page--dark .task-detail-admin-editor-bar{color:#9ca3af}.task-detail-page--dark .task-detail-path-bar{margin-bottom:1rem;padding:.5rem .75rem;background:#24262b;border:1px solid #3a3d44;border-radius:6px;color:#e4e6eb;font-size:.875rem}.task-detail-page--dark .task-detail-path-bar span,.task-detail-page--dark .task-detail-muted{color:#9ca3af}.task-detail-page--dark .task-tabs{border-bottom-color:#3a3d44}.task-detail-page--dark .task-tab{color:#9ca3af}.task-detail-page--dark .task-tab:hover{color:#e4e6eb}.task-detail-page--dark .task-tab.active{color:#60a5fa;border-bottom-color:#1976d2}.admin-page--dark{background:#1a1d21;min-height:100vh;color:#e4e6eb;padding:1.25rem 1.5rem;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif}.admin-page--dark .admin-header h1{color:#e4e6eb}.admin-page--dark .filter-bar{background:#24262b;border:1px solid #3a3d44}.admin-page--dark .filter-bar label{color:#e4e6eb}.admin-page--dark .filter-bar select{background:#2f3238;border:1px solid #3a3d44;color:#e4e6eb}.admin-page--dark .filter-bar .stats{color:#9ca3af}.admin-page--dark .btn-primary{background:#1976d2;color:#fff;border:none}.admin-page--dark .btn-primary:hover:not(:disabled){background:#1565c0}.admin-page--dark .btn-secondary{background:#2f3238;color:#e4e6eb;border:1px solid #3a3d44}.admin-page--dark .btn-secondary:hover:not(:disabled){background:#3a3d44}.admin-page--dark .loading{color:#9ca3af}.admin-page--dark .error{background:#c6282833;color:#ef5350;border:1px solid rgba(198,40,40,.4)}.admin-page--dark .empty-state{color:#9ca3af}.admin-page--dark .dashboard-stats .stat-card{background:#24262b;border:1px solid #3a3d44;box-shadow:none}.admin-page--dark .stat-card h3{color:#9ca3af}.admin-page--dark .stat-card .value{color:#e4e6eb}.admin-page--dark .stat-card .description{color:#9ca3af}.admin-page--dark .quick-action-card{background:#24262b;border:1px solid #3a3d44;box-shadow:none}.admin-page--dark .quick-action-card:hover{border-color:#1976d2;background:#2f3238;box-shadow:0 4px 12px #0000004d}.admin-page--dark .quick-action-card h4{color:#e4e6eb}.admin-page--dark .quick-action-card p{color:#9ca3af}.admin-page--dark .task-tabs{border-bottom-color:#3a3d44}.admin-page--dark .task-tab{color:#9ca3af}.admin-page--dark .task-tab:hover{color:#e4e6eb}.admin-page--dark .task-tab.active{color:#60a5fa;border-bottom-color:#1976d2}.admin-page--dark .users-table-container,.admin-page--dark .assignments-table-container,.admin-page--dark .revisions-table-container{background:#1a1d21;border:1px solid #3a3d44;border-radius:8px;box-shadow:none}.admin-page--dark .users-table thead,.admin-page--dark .assignments-table thead{background:#2f3238;border-bottom:1px solid #3a3d44}.admin-page--dark .users-table th,.admin-page--dark .assignments-table th{color:#9ca3af}.admin-page--dark .users-table td,.admin-page--dark .assignments-table td{color:#e4e6eb;border-bottom-color:#2f3238}.admin-page--dark .users-table tbody tr:hover,.admin-page--dark .assignments-table tbody tr:hover{background:#2f3238}.admin-page--dark .username{color:#e4e6eb}.admin-page--dark .badge-admin{background:#c62828;color:#fff}.admin-page--dark .badge-supervisor{background:#4dabf7;color:#0d2137}.admin-page--dark .badge-expert{background:#22c55e4d;color:#22c55e}.admin-page--dark .status-badge.active{background:#22c55e40;color:#22c55e}.admin-page--dark .status-badge.inactive{background:#9ca3af40;color:#9ca3af}.admin-page--dark .btn-small.btn-primary{background:#1976d2;color:#fff}.admin-page--dark .btn-small.btn-danger{background:#c62828;color:#fff}.admin-page--dark .modal-overlay{background:#000000a6}.admin-page--dark .modal-content{background:#24262b;border:1px solid #3a3d44;box-shadow:0 4px 24px #0006}.admin-page--dark .modal-content h2,.admin-page--dark .modal-content .form-group label{color:#e4e6eb}.admin-page--dark .modal-content .form-group input,.admin-page--dark .modal-content .form-group select,.admin-page--dark .modal-content .form-group textarea{background:#1a1d21;border:1px solid #3a3d44;color:#e4e6eb}.admin-page--dark .modal-content .form-group input::placeholder,.admin-page--dark .modal-content .form-group textarea::placeholder{color:#6b7280}.admin-page--dark .modal-content .form-group input:focus,.admin-page--dark .modal-content .form-group select:focus,.admin-page--dark .modal-content .form-group textarea:focus{border-color:#1976d2;box-shadow:0 0 0 2px #1976d240}.admin-page--dark .modal-content .modal-actions .btn-primary{background:#1976d2;color:#fff;border:none}.admin-page--dark .modal-content .modal-actions .btn-secondary{background:#2f3238;color:#e4e6eb;border:1px solid #3a3d44}.admin-page--dark .modal-content .error{background:#c6282833;color:#ef5350}.admin-page--dark .modal-content .modal-meta,.admin-page--dark .modal-content .modal-desc{font-size:.875rem;color:#9ca3af;margin-bottom:1rem}.admin-page--dark .modal-content .modal-meta strong,.admin-page--dark .modal-content .modal-desc strong{color:#e4e6eb}.admin-page--dark .modal-content .modal-hint{font-size:.8rem;color:#9ca3af}.admin-page--dark .modal-content .upload-result-box{margin-top:1rem;padding:1rem;background:#1a1d21;border:1px solid #3a3d44;border-radius:8px}.admin-page--dark .modal-content .upload-result-title{font-weight:600;margin-bottom:.5rem;color:#e4e6eb}.admin-page--dark .modal-content .upload-result-created{color:#22c55e}.admin-page--dark .modal-content .upload-result-skipped{color:#f59e0b;margin-top:.25rem}.admin-page--dark .modal-content .upload-result-errors{color:#ef5350;margin-top:.25rem}.admin-page--dark .modal-content .upload-result-mono{font-size:.8rem;margin-top:.25rem;font-family:ui-monospace,monospace;color:#9ca3af}.admin-page--dark .modal-content.review-modal-content{max-width:700px}.admin-page--dark .modal-content .review-modal-section{margin-bottom:1rem}.admin-page--dark .modal-content .review-modal-section p,.admin-page--dark .modal-content .review-modal-section h3{color:#e4e6eb}.admin-page--dark .modal-content .review-modal-section a{color:#60a5fa}.admin-page--dark .modal-content .review-modal-status-cap{text-transform:capitalize}.admin-page--dark .modal-content .review-modal-muted{color:#9ca3af}.admin-page--dark .modal-content .review-modal-signature-ok{padding:.75rem;background:#22c55e26;border:1px solid rgba(34,197,94,.4);border-radius:.25rem;color:#22c55e}.admin-page--dark .modal-content .review-modal-signature-pending{padding:.75rem;background:#f59e0b26;border:1px solid rgba(245,158,11,.4);border-radius:.25rem;color:#f59e0b}.admin-page--dark .modal-content .review-modal-signature-error{padding:.75rem;background:#ef444426;border:1px solid rgba(239,68,68,.4);border-radius:.25rem;color:#ef5350}.admin-page--dark .modal-content .review-modal-btn-cv{background:#1976d2;color:#fff;border:none;padding:.35rem .75rem;border-radius:.375rem;cursor:pointer}.admin-page--dark .modal-content .review-modal-btn-cv:hover:not(:disabled){background:#1565c0}.admin-page--dark .modal-content .review-modal-error{color:#ef5350;font-size:.875rem;margin-top:.25rem}.admin-page--dark .modal-content .review-modal-answer-box{margin-bottom:1rem;padding:1rem;background:#1a1d21;border:1px solid #3a3d44;border-radius:.5rem;color:#e4e6eb}.admin-page--dark .modal-content .review-modal-answer-label{font-weight:600;color:#e4e6eb;margin:0 0 .25rem}.admin-page--dark .modal-content .review-modal-decision-btns{display:flex;gap:1rem;margin-top:.5rem}.admin-page--dark .modal-content .review-modal-btn-decision{padding:.5rem 1rem;background:#2f3238;color:#9ca3af;border:1px solid #3a3d44;border-radius:.5rem;cursor:pointer}.admin-page--dark .modal-content .review-modal-btn-decision:hover{background:#3a3d44;color:#e4e6eb}.admin-page--dark .modal-content .review-modal-btn-approve{padding:.5rem 1rem;background:#22c55e4d;color:#22c55e;border:1px solid rgba(34,197,94,.5);border-radius:.5rem;cursor:pointer}.admin-page--dark .modal-content .review-modal-btn-reject{padding:.5rem 1rem;background:#ef444433;color:#ef5350;border:1px solid rgba(239,68,68,.4);border-radius:.5rem;cursor:pointer}.admin-page--dark .modal-content .review-modal-textarea{width:100%;padding:.5rem;border-radius:.5rem;background:#1a1d21;border:1px solid #3a3d44;color:#e4e6eb}.admin-page--dark .modal-content .review-modal-textarea::placeholder{color:#6b7280}.admin-page--dark .modal-content .form-group p{font-size:.875rem;color:#9ca3af;margin-bottom:.5rem}.admin-page--dark .modal-content .tasks-upload-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.admin-page--dark .modal-content .tasks-upload-browse-btn{display:inline-block;padding:.5rem 1rem;background:#2f3238;border:1px solid #3a3d44;border-radius:.375rem;font-size:.875rem;color:#e4e6eb;cursor:pointer;transition:background .2s,border-color .2s}.admin-page--dark .modal-content .tasks-upload-browse-btn:hover{background:#3a3d44}.admin-page--dark .modal-content .tasks-upload-list{margin-top:.75rem;padding-left:1.25rem;font-size:.875rem;color:#e4e6eb}.admin-page--dark .modal-content .tasks-upload-list li{margin-bottom:.35rem;display:flex;align-items:center;gap:.5rem}.admin-page--dark .modal-content .tasks-upload-meta{color:#9ca3af}.admin-page--dark .modal-content .tasks-upload-remove-btn{margin-left:.25rem;padding:.15rem .4rem;font-size:.75rem;cursor:pointer;background:#2f3238;border:1px solid #3a3d44;color:#e4e6eb;border-radius:.25rem}.admin-page--dark .modal-content .tasks-upload-remove-btn:hover:not(:disabled){background:#3a3d44}.admin-page--dark .modal-content .tasks-upload-progress-wrap{margin-bottom:1rem}.admin-page--dark .modal-content .tasks-upload-progress-text{font-size:.875rem;color:#9ca3af;margin-bottom:.25rem}.admin-page--dark .modal-content .tasks-upload-progress-track{height:8px;background:#3a3d44;border-radius:4px;overflow:hidden}.admin-page--dark .modal-content .tasks-upload-progress-fill{height:100%;background:#1976d2;transition:width .2s}.admin-page--dark textarea{background:#24262b!important;border:1px solid #3a3d44!important;color:#e4e6eb!important}.admin-page--dark textarea::placeholder{color:#6b7280!important}.admin-page--dark code{background:#1a1d21;color:#e4e6eb;padding:.15rem .35rem;border-radius:4px}.admin-page--dark h2,.admin-page--dark h3{color:#e4e6eb}.admin-page--dark div[style*="background: #f8f9fa"],.admin-page--dark div[style*="background:#f8f9fa"]{background:#24262b!important;border:1px solid #3a3d44;border-radius:8px}.admin-page--dark div[style*="color: #51cf66"] span,.admin-page--dark div[style*="color:#51cf66"] span{color:#22c55e!important}.instructions-page{max-width:none;padding:0}.instructions-page-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid #3a3d44}.instructions-page-title-row{display:flex;align-items:baseline;gap:.5rem}.instructions-page-title{margin:0;font-size:1.5rem;font-weight:600;color:#e4e6eb}.instructions-page-subtitle{font-size:.875rem;color:#9ca3af}.instructions-page-actions{display:flex;gap:.5rem;flex-wrap:wrap}.instructions-btn-primary{padding:.5rem 1rem;border:none;background:#1976d2;color:#fff;font-size:.875rem;font-weight:500;border-radius:6px;cursor:pointer;transition:background .2s}.instructions-btn-primary:hover:not(:disabled){background:#1565c0}.instructions-btn-secondary{padding:.45rem .9rem;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.8125rem;font-weight:500;border-radius:6px;cursor:pointer;transition:background .2s,border-color .2s}.instructions-btn-secondary:hover:not(:disabled){background:#3a3d44}.instructions-tabs{display:flex;gap:0;border-bottom:1px solid #3a3d44;padding:0 1.5rem}.instructions-tab{padding:.75rem 1rem;font-size:.875rem;font-weight:500;color:#9ca3af;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;margin-bottom:-1px;transition:color .2s,border-color .2s}.instructions-tab:hover{color:#e4e6eb}.instructions-tab.active{color:#60a5fa;border-bottom-color:#1976d2}.instructions-content{padding:1.25rem 1.5rem}.instructions-success{margin-bottom:1rem;padding:.75rem 1rem;border-radius:6px;background:#22c55e33;color:#22c55e;font-size:.9rem}.instructions-error{margin-bottom:1rem;padding:.75rem 1rem;border-radius:6px;background:#c6282833;color:#ef5350;font-size:.9rem}.instructions-desc{font-size:.9rem;color:#9ca3af;margin:0 0 .75rem}.instructions-desc code{font-size:.85em}.instructions-label{display:block;font-weight:500;margin-bottom:.25rem;color:#e4e6eb;font-size:.875rem}.instructions-input{width:100%;padding:.45rem .75rem;border-radius:6px;border:1px solid #3a3d44;background:#24262b;color:#e4e6eb;font-size:.9rem;box-sizing:border-box}.instructions-input::placeholder{color:#6b7280}.instructions-select{padding:.35rem .5rem;border-radius:6px;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.9rem;min-width:200px}.instructions-task-select-row{margin-bottom:1rem}.instructions-task-select-row .instructions-select{min-width:260px}.instructions-bulk-filters{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin-bottom:1rem}.instructions-bulk-filters>div{display:flex;flex-direction:column;gap:.25rem}.instructions-editor-wrap{margin-bottom:1rem}.instructions-editor{width:100%;max-width:100%;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.9rem;padding:.75rem;border-radius:6px;border:1px solid #3a3d44;background:#24262b;color:#e4e6eb;box-sizing:border-box}.instructions-editor::placeholder{color:#6b7280}.instructions-actions{display:flex;gap:.75rem;margin-bottom:1.5rem}.instructions-loading{color:#9ca3af;margin-top:1rem}.instructions-preview-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #3a3d44}.instructions-preview-title{font-size:1.1rem;margin:0 0 .5rem;color:#e4e6eb}.instructions-preview-box{padding:1rem 1.25rem;border-radius:8px;border:1px solid #3a3d44;background:#24262b!important;min-height:120px;overflow:auto;max-height:70vh;color:#e4e6eb!important}.instructions-preview-box h1,.instructions-preview-box h2,.instructions-preview-box h3,.instructions-preview-box h4,.instructions-preview-box h5,.instructions-preview-box h6,.instructions-preview-box p,.instructions-preview-box li,.instructions-preview-box td,.instructions-preview-box th,.instructions-preview-box span,.instructions-preview-box div,.instructions-preview-box strong,.instructions-preview-box em{color:#e4e6eb!important}.instructions-preview-box a{color:#60a5fa!important}.instructions-preview-box a:hover{color:#93c5fd!important}.instructions-preview-box code{background:#1a1d21!important;color:#e4e6eb!important;padding:.15rem .35rem;border-radius:4px;font-size:.9em}.instructions-preview-box pre{background:#1a1d21!important;color:#e4e6eb!important;border:1px solid #3a3d44;border-radius:6px;padding:.75rem;overflow-x:auto}.instructions-preview-box pre code{background:transparent!important;padding:0}.instructions-preview-box blockquote{border-left:4px solid #3a3d44;margin:.5rem 0;padding-left:1rem;color:#b0b8c0!important}.instructions-preview-box table,.instructions-preview-box th,.instructions-preview-box td{border-color:#3a3d44}.instructions-preview-empty{color:#9ca3af!important}.instructions-bulk-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.notifications-filter-meta{display:flex;align-items:baseline;gap:.5rem}.notifications-selected-count{font-size:.8rem;color:#9ca3af}.instructions-table-wrap{border:1px solid #3a3d44;border-radius:8px;background:#24262b;overflow:hidden;margin-bottom:1.5rem}.instructions-table{width:100%;border-collapse:collapse;font-size:.8125rem}.instructions-table thead{background:#2f3238;border-bottom:1px solid #3a3d44}.instructions-table th{text-align:left;padding:.6rem .75rem;color:#9ca3af;font-weight:500}.instructions-table td{padding:.6rem .75rem;color:#e4e6eb;border-bottom:1px solid #2f3238}.instructions-table tbody tr:hover{background:#2f3238}.instructions-th-check{width:2.5rem;text-align:center;vertical-align:middle}.instructions-td-check{text-align:center}.instructions-td-task{color:#e4e6eb}.instructions-task-link{color:#60a5fa;text-decoration:none}.instructions-task-link:hover{color:#93c5fd;text-decoration:underline}.instructions-td-meta{font-size:.75rem;color:#9ca3af;margin-top:.15rem}.instructions-empty-cell{color:#9ca3af}.instructions-empty-state{text-align:center;color:#9ca3af;padding:1.5rem!important}.instructions-bulk-editor-section{margin-top:1rem;padding-top:1rem}.notifications-field-group{display:flex;flex-direction:column;gap:.35rem}.notifications-recipients{padding:.5rem .75rem;border-radius:6px;border:1px solid #3a3d44;background:#1f2933;font-size:.85rem;color:#e4e6eb}.notifications-recipients-placeholder{color:#6b7280}.notifications-recipients-preview{color:#9ca3af}.notifications-recipients-dropdown{position:absolute;top:calc(100% + 2px);left:0;right:0;z-index:100;background:#1f2933;border:1px solid #3a3d44;border-radius:6px;max-height:220px;overflow-y:auto;padding:.4rem 0;box-shadow:0 4px 12px #0006}.notifications-recipients-dropdown-item{display:flex;align-items:center;gap:.5rem;padding:.3rem .75rem;cursor:pointer;font-size:.85rem;color:#e4e6eb;-webkit-user-select:none;user-select:none}.notifications-recipients-dropdown-item:hover{background:#2a3441}.notifications-recipients-dropdown-item input[type=checkbox]{accent-color:#3b82f6;width:14px;height:14px;flex-shrink:0}.notifications-token-row{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;margin-top:.4rem;font-size:.8rem;color:#9ca3af}.notifications-token-label{text-transform:uppercase;letter-spacing:.08em;font-weight:600;font-size:.7rem;color:#6b7280;margin-right:.25rem}.notifications-token-chip{border:1px solid #3a3d44;background:#111827;color:#e4e6eb;border-radius:999px;padding:.2rem .6rem;font-size:.8rem;cursor:pointer}.notifications-token-chip:hover{background:#1f2937;border-color:#4b5563}.instructions-two-panel{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,3fr);gap:0;align-items:stretch;min-height:480px}.instructions-left{display:flex;flex-direction:column;min-width:0;padding-right:1.25rem;border-right:1px solid #3a3d44}.instructions-right{min-width:0;padding-left:1.25rem;border-left:1px solid transparent}.instructions-right-header{margin-bottom:1rem}.dashboard-page{max-width:none;padding:0}.dashboard-page-header,.users-page-header,.applications-page-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid #3a3d44}.dashboard-page-title-row,.users-page-title-row,.applications-page-title-row{display:flex;align-items:baseline;gap:.5rem}.dashboard-page-title,.users-page-title,.applications-page-title{margin:0;font-size:1.5rem;font-weight:600;color:#e4e6eb}.dashboard-page-subtitle,.users-page-count,.applications-page-count{font-size:.875rem;color:#9ca3af}.dashboard-content{padding:1.25rem 1.5rem}.dashboard-loading,.dashboard-error{padding:1.25rem 1.5rem;color:#9ca3af}.dashboard-error{color:#ef5350;background:#c6282826;border-radius:8px;margin:1.25rem 1.5rem}.dashboard-section{margin-top:2rem}.dashboard-section-title{font-size:1.25rem;margin:0 0 1rem;color:#e4e6eb}.dashboard-system-status{margin-top:2rem;padding:1rem 1.25rem;background:#24262b;border:1px solid #3a3d44;border-radius:8px}.dashboard-system-status-title{font-size:1rem;margin:0 0 .5rem;color:#e4e6eb}.dashboard-system-status-items{display:flex;gap:1rem;font-size:.875rem;color:#e4e6eb}.dashboard-system-status-items strong{color:#9ca3af}.dashboard-status-ok{color:#22c55e}.dashboard-page .dashboard-stats{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));margin-bottom:2rem}.dashboard-page .stat-card{background:#24262b;border:1px solid #3a3d44;border-radius:8px;padding:1rem 1.25rem;box-shadow:none}.dashboard-page .stat-card h3{color:#9ca3af;font-size:.9rem;margin:0 0 .35rem}.dashboard-page .stat-card .value{color:#e4e6eb;font-size:1.5rem;font-weight:600;margin:0}.dashboard-page .stat-card .description{color:#9ca3af;font-size:.8rem;margin:0}.dashboard-page .quick-actions{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:2rem}.dashboard-page .quick-action-card{background:#24262b;border:1px solid #3a3d44;border-radius:8px;padding:1rem 1.25rem;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}.dashboard-page .quick-action-card:hover{border-color:#1976d2;background:#2f3238;box-shadow:0 4px 12px #0000004d}.dashboard-page .quick-action-card h4{color:#e4e6eb;font-size:1rem;margin:0 0 .35rem}.dashboard-page .quick-action-card p{color:#9ca3af;font-size:.875rem;margin:0}.dashboard-page .assignments-table-container{background:#24262b;border:1px solid #3a3d44;border-radius:8px;overflow:hidden}.dashboard-page .assignments-table thead{background:#2f3238;border-bottom:1px solid #3a3d44}.dashboard-page .assignments-table th{color:#9ca3af;padding:.6rem .75rem;text-align:left}.dashboard-page .assignments-table td{color:#e4e6eb;border-bottom:1px solid #2f3238;padding:.6rem .75rem}.dashboard-page .assignments-table tbody tr:hover{background:#2f3238}.dashboard-page .dashboard-table-empty{text-align:center;color:#9ca3af;padding:1rem .75rem}.users-page{max-width:none;padding:0}.users-page-actions{display:flex;gap:.5rem;flex-wrap:wrap}.users-btn-primary{padding:.5rem 1rem;border:none;background:#1976d2;color:#fff;font-size:.875rem;font-weight:500;border-radius:6px;cursor:pointer;transition:background .2s}.users-btn-primary:hover:not(:disabled){background:#1565c0}.users-btn-small{padding:.35rem .65rem;font-size:.8125rem;border-radius:6px;cursor:pointer;border:none;background:#2f3238;color:#e4e6eb;transition:background .2s}.users-btn-small:hover:not(:disabled){background:#3a3d44}.users-btn-view{background:#1976d2;color:#fff}.users-btn-view:hover:not(:disabled){background:#1565c0}.users-btn-secondary{border:1px solid #3a3d44;background:#2f3238}.users-btn-danger{color:#ef5350;background:transparent;border:1px solid #c62828}.users-btn-danger:hover:not(:disabled){background:#c6282833}.users-filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1rem;padding:.75rem 1.5rem;background:#24262b;border-bottom:1px solid #3a3d44}.users-filter-label{font-size:.875rem;font-weight:500;color:#9ca3af}.users-filter-select{padding:.35rem .5rem;border-radius:6px;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.9rem;min-width:140px}.users-filter-stats{margin-left:auto;display:flex;gap:1rem;font-size:.875rem;color:#9ca3af}.users-loading,.users-error{padding:1.25rem 1.5rem}.users-loading{color:#9ca3af}.users-error{color:#ef5350;background:#c6282826;border-radius:8px;margin:0 1.5rem 1rem}.users-table-wrap{margin:1.25rem 1.5rem;border:1px solid #3a3d44;border-radius:8px;background:#24262b;overflow:hidden}.users-page .users-table thead{background:#2f3238;border-bottom:1px solid #3a3d44}.users-page .users-table th{color:#9ca3af;padding:.6rem .75rem;text-align:left}.users-page .users-table td{color:#e4e6eb;border-bottom:1px solid #2f3238;padding:.6rem .75rem}.users-page .users-table tbody tr:hover{background:#2f3238}.users-page .users-table .username{color:#e4e6eb}.users-page .users-table .empty-state{text-align:center;color:#9ca3af;padding:1.5rem}.applications-page{max-width:none;padding:0}.applications-filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1rem;padding:.75rem 1.5rem;background:#24262b;border-bottom:1px solid #3a3d44}.applications-filter-label{font-size:.875rem;font-weight:500;color:#9ca3af}.applications-filter-select{padding:.35rem .5rem;border-radius:6px;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb;font-size:.9rem;min-width:120px}.applications-loading,.applications-error{padding:1.25rem 1.5rem}.applications-loading{color:#9ca3af}.applications-error{color:#ef5350;background:#c6282826;border-radius:8px;margin:0 1.5rem 1rem}.applications-table-wrap{margin:1.25rem 1.5rem;border:1px solid #3a3d44;border-radius:8px;background:#24262b;overflow:hidden}.applications-page .applications-table{width:100%;table-layout:fixed}.applications-page .applications-table thead{background:#2f3238;border-bottom:1px solid #3a3d44}.applications-page .applications-table th{color:#9ca3af;padding:.6rem .75rem;text-align:left}.applications-page .applications-table td{color:#e4e6eb;border-bottom:1px solid #2f3238;padding:.6rem .75rem;word-wrap:break-word;overflow-wrap:break-word}.applications-page .applications-table tbody tr:hover{background:#2f3238}.applications-page .applications-table a{color:#60a5fa}.applications-page .applications-table a:hover{text-decoration:underline}.application-status-badge{display:inline-block;padding:.25rem .75rem;border-radius:1rem;font-size:.875rem;font-weight:500}.application-status-badge--pending{background:#fbbf2459;color:#fbbf24}.application-status-badge--approved{background:#22c55e40;color:#22c55e}.application-status-badge--rejected{background:#ef444440;color:#ef4444}.applications-page .applications-table .btn-small{padding:.35rem .65rem;font-size:.8125rem;border-radius:6px;cursor:pointer;border:1px solid #3a3d44;background:#2f3238;color:#e4e6eb}.applications-page .applications-table .btn-small:hover:not(:disabled){background:#3a3d44}.applications-page .applications-table .btn-small.applications-table-btn-review{background:#1976d2;color:#fff;border-color:#1976d2}.applications-page .applications-table .btn-small.applications-table-btn-review:hover:not(:disabled){background:#1565c0;border-color:#1565c0}.bgc-badge{display:inline-block;padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:500}.bgc-badge--pending{background:#6b72804d;color:#9ca3af}.bgc-badge--invitation-sent{background:#f59e0b4d;color:#f59e0b}.bgc-badge--submitted,.bgc-badge--processing{background:#3b82f64d;color:#60a5fa}.bgc-badge--clear{background:#10b98140;color:#10b981}.bgc-badge--consider{background:#f59e0b4d;color:#f59e0b}.bgc-badge--suspended{background:#ef444440;color:#ef4444}.bgc-badge--dispute{background:#f59e0b4d;color:#f59e0b}.bgc-badge--canceled{background:#6b72804d;color:#9ca3af}:root{--dp-bg: #1a1d21;--dp-surface: #22252a;--dp-surface2: #2c2f35;--dp-border: #3a3d44;--dp-text: #e2e4e9;--dp-text-muted: #8b8e96;--dp-accent: #3b82f6;--dp-accent-hover: #2563eb;--dp-pass: #22c55e;--dp-warn: #f59e0b;--dp-fail: #ef4444;--dp-transit: #f97316}.dp-root{display:flex;height:calc(100vh - 105px);background:var(--dp-bg);color:var(--dp-text);overflow:hidden}.dp-sidebar{width:220px;min-width:180px;background:var(--dp-surface);border-right:1px solid var(--dp-border);overflow-y:auto;flex-shrink:0}.dp-sidebar-header{padding:12px 14px 8px;font-size:.65rem;font-weight:600;letter-spacing:.08em;color:var(--dp-text-muted);text-transform:uppercase}.dp-bucket-row{display:flex;align-items:center;gap:6px;padding:6px 14px;cursor:pointer;font-size:.82rem;font-weight:500;border-radius:4px;margin:1px 6px;transition:background .15s}.dp-bucket-row:hover{background:var(--dp-surface2)}.dp-bucket-row--active{background:#3b82f61f;color:var(--dp-accent)}.dp-bucket-arrow{font-size:.5rem;color:var(--dp-text-muted);width:12px;text-align:center;flex-shrink:0;cursor:pointer;padding:4px 2px}.dp-bucket-arrow:hover{color:var(--dp-text)}.dp-bucket-icon{font-size:.9rem;cursor:pointer}.dp-bucket-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.folder-tree{font-size:.8rem}.tree-item{display:flex;align-items:center;gap:4px;padding:4px 0;cursor:pointer;border-radius:4px;margin:1px 4px;transition:background .12s}.tree-item:hover{background:var(--dp-surface2)}.tree-item--active{background:#3b82f626;color:var(--dp-accent)}.tree-arrow{font-size:.5rem;color:var(--dp-text-muted);width:10px;text-align:center}.tree-icon{font-size:.8rem}.tree-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-count{font-size:.7rem;color:var(--dp-text-muted);margin-right:6px}.dp-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.dp-toolbar{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--dp-surface);border-bottom:1px solid var(--dp-border);flex-wrap:wrap}.dp-breadcrumb{display:flex;align-items:center;gap:2px;font-size:.8rem;color:var(--dp-text-muted);flex:1;min-width:0}.dp-bc-seg{cursor:pointer;padding:2px 4px;border-radius:3px}.dp-bc-seg:hover{color:var(--dp-text);background:var(--dp-surface2)}.dp-bc-seg--active{color:var(--dp-text)}.dp-bc-sep{color:var(--dp-border)}.dp-toolbar-actions{display:flex;gap:8px;align-items:center}.dp-upload-wrap{position:relative}.dp-upload-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:50;background:var(--dp-surface2);border:1px solid var(--dp-border);border-radius:6px;min-width:110px;box-shadow:0 4px 12px #0006;overflow:hidden}.dp-upload-menu-item{display:block;width:100%;padding:7px 14px;background:none;border:none;color:var(--dp-text);font-size:13px;text-align:left;cursor:pointer}.dp-upload-menu-item:hover{background:var(--dp-border)}.dp-tabs{display:flex;gap:0;padding:0 16px;background:var(--dp-surface);border-bottom:1px solid var(--dp-border)}.dp-tab{padding:10px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--dp-text-muted);font-size:.82rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;transition:color .15s}.dp-tab:hover{color:var(--dp-text)}.dp-tab--active{color:var(--dp-text);border-bottom-color:var(--dp-accent)}.dp-tab-badge{background:var(--dp-warn);color:#000;font-size:.65rem;font-weight:700;padding:1px 5px;border-radius:8px}.dp-content{flex:1;overflow-y:auto;background:var(--dp-bg)}.dp-empty{padding:32px;color:var(--dp-text-muted);font-size:.85rem;text-align:center}.dp-empty--error{color:#ef4444}.dp-error-banner{margin:8px;padding:8px 10px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;font-size:.75rem;word-break:break-word}.dp-table-wrap{overflow-x:auto}.dp-table{width:100%;border-collapse:collapse;font-size:.82rem}.dp-table thead tr{background:var(--dp-surface);border-bottom:1px solid var(--dp-border)}.dp-table th{padding:10px 12px;text-align:left;font-size:.7rem;font-weight:600;color:var(--dp-text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.dp-th-check{width:36px;padding:10px 12px 10px 16px}.dp-table tbody tr{border-bottom:1px solid rgba(58,61,68,.5);cursor:pointer;transition:background .1s}.dp-table tbody tr:hover{background:var(--dp-surface)}.dp-tr--selected{background:#3b82f614!important}.dp-table td{padding:9px 12px;color:var(--dp-text);white-space:nowrap}.dp-td-check{padding:9px 12px 9px 16px}.dp-td-name{display:flex;align-items:center;gap:8px;max-width:300px}.dp-file-icon{flex-shrink:0;font-size:.9rem}.dp-folder-link{color:var(--dp-text);text-decoration:underline;cursor:pointer}.dp-file-count{font-size:.7rem;color:var(--dp-text-muted)}.dp-dash{color:var(--dp-text-muted)}.dp-running{color:var(--dp-text-muted);font-size:.75rem}.dp-run-btn{background:var(--dp-surface2);border:1px solid var(--dp-border);color:var(--dp-text);font-size:.75rem;padding:3px 10px;border-radius:4px;cursor:pointer;transition:background .15s}.dp-run-btn:hover{background:var(--dp-border)}.sanity-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:600;white-space:nowrap}.badge-pass{background:#22c55e26;color:var(--dp-pass)}.badge-warn{background:#f59e0b26;color:var(--dp-warn)}.badge-fail{background:#ef444426;color:var(--dp-fail)}.badge-transit{background:#f9731626;color:var(--dp-transit)}.badge-unknown{background:#8b8e9626;color:var(--dp-text-muted)}.dp-sanity-tab{padding:16px;display:flex;flex-direction:column;gap:12px}.sanity-file-block{background:var(--dp-surface);border:1px solid var(--dp-border);border-radius:8px;overflow:hidden}.sanity-file-header{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--dp-border);background:var(--dp-surface2)}.sanity-file-name{font-size:.85rem;font-weight:500}.sanity-list{padding:8px 0}.sanity-row{display:flex;align-items:flex-start;gap:12px;padding:10px 16px;border-bottom:1px solid rgba(58,61,68,.4)}.sanity-row:last-child{border-bottom:none}.sanity-row--pass{border-left:3px solid rgba(34,197,94,.4)}.sanity-row--warn{border-left:3px solid rgba(245,158,11,.4)}.sanity-row--fail{border-left:3px solid rgba(239,68,68,.4)}.check-icon{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;flex-shrink:0;margin-top:1px}.check-pass{background:#22c55e33;color:var(--dp-pass)}.check-warn{background:#f59e0b33;color:var(--dp-warn)}.check-fail{background:#ef444433;color:var(--dp-fail)}.check-unknown{background:#8b8e9633;color:var(--dp-text-muted)}.sanity-check-name{font-size:.82rem;font-weight:500;color:var(--dp-text)}.sanity-check-msg{font-size:.76rem;color:var(--dp-text-muted);margin-top:2px}.dp-export-tab{padding:16px}.export-list{display:flex;flex-direction:column;gap:10px}.export-row{background:var(--dp-surface);border:1px solid var(--dp-border);border-radius:8px;padding:14px 16px;display:flex;align-items:center;gap:14px}.export-row-left{display:flex;flex-direction:column;gap:4px}.export-title{font-size:.85rem;font-weight:500}.export-meta{font-size:.75rem;color:var(--dp-text-muted)}.detail-panel{width:280px;min-width:240px;background:var(--dp-surface);border-left:1px solid var(--dp-border);overflow-y:auto;flex-shrink:0;display:flex;flex-direction:column}.detail-header{padding:14px 16px 10px;border-bottom:1px solid var(--dp-border)}.detail-filename{display:block;font-size:.9rem;font-weight:600;color:var(--dp-text);word-break:break-all}.detail-type{display:block;font-size:.72rem;color:var(--dp-text-muted);margin-top:2px}.detail-section{padding:12px 16px;border-bottom:1px solid var(--dp-border)}.detail-section-title{font-size:.62rem;font-weight:700;letter-spacing:.08em;color:var(--dp-text-muted);text-transform:uppercase;margin-bottom:8px}.detail-info-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:.76rem;padding:3px 0;color:var(--dp-text-muted)}.detail-val{color:var(--dp-text);text-align:right;word-break:break-all}.detail-val.mono{font-family:monospace;font-size:.7rem}.detail-actions{display:flex;flex-direction:column;gap:8px}.dp-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 12px;border-radius:5px;font-size:.8rem;font-weight:500;cursor:pointer;border:1px solid transparent;transition:background .15s,opacity .15s;white-space:nowrap}.dp-btn:disabled{opacity:.5;cursor:not-allowed}.dp-btn-sm{padding:4px 10px;font-size:.75rem}.dp-btn-ghost{background:var(--dp-surface2);border-color:var(--dp-border);color:var(--dp-text)}.dp-btn-ghost:hover:not(:disabled){background:var(--dp-border)}.dp-btn-primary{background:var(--dp-accent);color:#fff}.dp-btn-primary:hover:not(:disabled){background:var(--dp-accent-hover)}.dp-btn-danger{background:transparent;border-color:var(--dp-fail);color:var(--dp-fail)}.dp-btn-danger:hover:not(:disabled){background:#ef44441a}.dp-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.dp-modal{background:var(--dp-surface);border:1px solid var(--dp-border);border-radius:10px;padding:24px;width:360px;max-width:90vw;display:flex;flex-direction:column;gap:14px}.dp-modal-title{font-size:1rem;font-weight:600;color:var(--dp-text);margin:0}.dp-modal-sub{font-size:.8rem;color:var(--dp-text-muted);margin:0}.dp-modal-label{display:flex;flex-direction:column;gap:6px;font-size:.8rem;color:var(--dp-text-muted)}.dp-modal-input{background:var(--dp-surface2);border:1px solid var(--dp-border);color:var(--dp-text);border-radius:5px;padding:8px 10px;font-size:.85rem;outline:none;transition:border-color .15s}.dp-modal-input:focus{border-color:var(--dp-accent)}.dp-modal-checkbox-label{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--dp-text);cursor:pointer;margin-top:4px}.dp-modal-input::placeholder{color:var(--dp-text-muted)}.dp-modal-checking-spinner{width:32px;height:32px;border:3px solid var(--dp-border);border-top-color:var(--dp-accent);border-radius:50%;margin:20px auto;animation:dp-spin .8s linear infinite}@keyframes dp-spin{to{transform:rotate(360deg)}}.dp-modal-sanity-results{display:flex;flex-direction:column;gap:8px;max-height:260px;overflow-y:auto;margin-top:4px}.dp-modal-sanity-row{display:flex;flex-direction:column;gap:4px;padding:8px 10px;border-radius:6px;background:var(--dp-surface2);border-left:3px solid transparent}.dp-modal-sanity-row--fail{border-left-color:#ef4444}.dp-modal-sanity-row--warn{border-left-color:#f59e0b}.dp-modal-sanity-filename{font-size:.85rem;font-weight:600;color:var(--dp-text)}.dp-modal-sanity-messages{display:flex;flex-direction:column;gap:2px}.dp-modal-sanity-msg{font-size:.78rem;color:var(--dp-text-muted)}.dp-modal-actions{display:flex;gap:10px;justify-content:flex-end}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#1a1d21;color:#e4e6eb}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{min-height:100vh;background:#1a1d21}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026!important}button:hover{opacity:.9}button:active{transform:scale(.98)}*{transition:box-shadow .2s,transform .2s}
