html,body{height:100%}body{margin:0;font-family:Roboto,Helvetica Neue,sans-serif;background:linear-gradient(135deg,#f5f7fa,#e4e8ec);min-height:100vh}mat-form-field{width:100%}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background-color:transparent}::-webkit-scrollbar-thumb{background-color:#ccc;border-radius:4px}::-webkit-scrollbar-thumb:hover{background-color:#999}.cursor-pointer{cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.mat-mdc-dialog-panel,.cdk-overlay-pane.mat-mdc-dialog-panel{width:100%;max-width:600px!important;max-height:90vh!important;border-radius:16px!important;overflow:hidden}.mat-mdc-raised-button,.mat-mdc-outlined-button{border-radius:10px!important}.mat-mdc-icon-button{border-radius:50%!important}.mat-mdc-form-field .mat-mdc-text-field-wrapper{border-radius:10px!important}.mat-mdc-card{border-radius:16px!important;box-shadow:0 2px 8px #00000014!important}.mat-mdc-snack-bar-container{border-radius:10px!important}.mat-mdc-chip{border-radius:20px!important}.dialog-container{padding:0}.dialog-header{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.dialog-header h2{margin:0;font-size:1.25rem;font-weight:600}.dialog-header button{color:#fff}.dialog-content{padding:20px 24px}.dialog-content .instruction{text-align:center;color:#666;margin-bottom:20px}.dialog-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e8e8e8;background:#fafafa;border-radius:0 0 16px 16px}.dialog-footer button{border-radius:10px}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.selection-card{position:relative;padding:14px 16px;border:2px solid #e8e8e8;border-radius:12px;cursor:pointer;transition:all .2s ease;background:#fff}.selection-card:hover:not(.disabled){border-color:#667eea;background:#f5f7ff;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.selection-card.selected{border-color:#4caf50;background:#e8f5e9;box-shadow:0 4px 12px #4caf5033}.selection-card.disabled{opacity:.5;cursor:not-allowed}.selection-card .card-content{display:flex;align-items:center;gap:10px}.selection-card .card-content .index{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#667eea;color:#fff;border-radius:50%;font-weight:700;font-size:.8rem;flex-shrink:0}.selection-card .card-content .name{font-weight:600;color:#333}.selection-card .card-content .name-info{display:flex;flex-direction:column;gap:2px}.selection-card .card-content .degree{font-size:.85rem;color:#888}.selection-card .status-badge{position:absolute;top:8px;right:8px;display:flex;align-items:center;gap:4px;font-size:.7rem;padding:2px 8px;border-radius:10px;background:#c8e6c9;color:#2e7d32}.selection-card .status-badge mat-icon{font-size:14px;width:14px;height:14px}.participant-info{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;background:#f5f7fa;border-radius:12px;font-weight:500}.participant-info mat-icon{color:#667eea}.participant-info .degree-badge{padding:3px 10px;background:#667eea;color:#fff;border-radius:20px;font-size:.8rem}.rating-section{text-align:center}.rating-label{font-weight:600;color:#333;margin-bottom:16px;font-size:1.1rem}.comment-field{width:100%;max-width:400px;margin:20px auto 0;display:block}.rating-result{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;font-weight:700;font-size:1.1rem}.rating-result.passed{background:#c8e6c9;color:#2e7d32}.rating-result.failed{background:#ffcdd2;color:#c62828}.rating-result mat-icon{font-size:22px;width:22px;height:22px}.confirm-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 20px;border-radius:50%}.confirm-icon.warning{background:#ffebee}.confirm-icon.warning mat-icon{color:#f44336}.confirm-icon.success{background:#e8f5e9}.confirm-icon.success mat-icon{color:#4caf50}.confirm-icon.info{background:#e3f2fd}.confirm-icon.info mat-icon{color:#2196f3}.confirm-icon mat-icon{font-size:32px;width:32px;height:32px}
