.support-ticket-container{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1200px;padding:20px}.support-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.support-header h2{color:#333;font-size:28px;font-weight:600;margin:0}.btn-create-ticket{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .3s ease}.btn-create-ticket:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.modal-content{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;padding:0;width:90%}.modal-content.ticket-details{max-width:800px}.modal-header{border-radius:12px 12px 0 0}.create-ticket-form{padding:25px}.form-group{margin-bottom:20px}.form-group label{font-size:14px;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:16px;padding:12px;transition:border-color .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group textarea{min-height:120px;resize:vertical}.checkbox-group,.checkbox-group label{align-items:center;display:flex}.checkbox-group label{cursor:pointer;margin-bottom:0}.checkbox-group input[type=checkbox]{margin-right:8px;width:auto}.urgent-warning{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626;font-size:13px;line-height:1.4;padding:12px}.urgent-warning p{margin:0}.urgent-warning .font-semibold{font-weight:600;margin-bottom:4px}.urgent-warning{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;color:#856404;font-size:12px;font-weight:500;margin-top:8px;padding:8px 12px}.form-actions{border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;padding-top:20px}.form-actions button{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .3s ease}.form-actions button[type=submit]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.form-actions button[type=submit]:hover:not(:disabled){box-shadow:0 4px 15px #667eea4d;transform:translateY(-1px)}.form-actions button[type=submit]:disabled{background:#ccc;cursor:not-allowed}.form-actions button[type=button]{background:#f8f9fa;border:2px solid #e0e0e0;color:#666}.form-actions button[type=button]:hover{background:#e9ecef;border-color:#ccc}.tickets-list{grid-gap:20px;display:grid;gap:20px}.ticket-card{background:#fff;border:2px solid #f0f0f0;border-radius:12px;box-shadow:0 2px 10px #0000000d;cursor:pointer;padding:20px;transition:all .3s ease}.ticket-card:hover{border-color:#667eea;box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.ticket-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.ticket-header h4{color:#333;flex:1 1;font-size:18px;font-weight:600;margin:0 15px 0 0}.ticket-badges{display:flex;flex-shrink:0;gap:8px}.ticket-description{color:#666;font-size:14px;line-height:1.5;margin:12px 0}.ticket-footer{align-items:center;border-top:1px solid #f0f0f0;color:#888;display:flex;font-size:12px;justify-content:space-between;margin-top:15px;padding-top:15px}.ticket-category{background:#f8f9fa;border-radius:4px;color:#666;font-weight:500;padding:4px 8px}.ticket-priority{font-weight:600}.ticket-date{font-style:italic}.priority-badge,.status-badge,.urgent-badge{border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.urgent-badge{animation:pulse 2s infinite;background:#dc3545;color:#fff}.ticket-info{padding:25px}.ticket-meta{border-bottom:1px solid #e0e0e0;margin-bottom:25px;padding-bottom:20px}.ticket-meta h4{margin:0 0 12px}.meta-tags{display:flex;gap:8px;margin-bottom:12px}.ticket-date{color:#888;font-size:14px}.conversation h5{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.messages{max-height:400px}.message{margin-bottom:20px}.message.student{margin-left:0;margin-right:60px}.message.admin{margin-left:60px;margin-right:0}.reply-form{border-top:1px solid #e0e0e0;display:flex;flex-direction:column;gap:12px;padding-top:20px}.reply-form textarea{border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:14px;min-height:80px;padding:12px;resize:vertical}.reply-form textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.reply-form button{align-self:flex-end;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .3s ease}.reply-form button:hover:not(:disabled){box-shadow:0 4px 15px #667eea4d;transform:translateY(-1px)}.reply-form button:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.no-tickets p{font-size:16px;margin:10px 0}.no-tickets p:first-child{color:#333;font-size:18px;font-weight:500}@media (max-width:768px){.support-ticket-container{padding:15px}.support-header{flex-direction:column;gap:15px;text-align:center}.modal-content{margin:10px;width:95%}.ticket-header{gap:10px}.ticket-footer,.ticket-header{align-items:flex-start;flex-direction:column}.ticket-footer{gap:8px}.form-actions{flex-direction:column}.message.student{margin-right:20px}.message.admin{margin-left:20px}.meta-tags{flex-wrap:wrap}}@media (max-width:480px){.support-header h2{font-size:24px}.ticket-header h4{font-size:16px}.modal-header h3{font-size:18px}.btn-create-ticket{width:100%}}.admin-support-container{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1400px;padding:20px}.admin-support-header{margin-bottom:30px}.header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.admin-support-header h2{color:#333;font-size:28px;font-weight:600;margin:0}.action-buttons{align-items:center;display:flex;gap:12px}.btn-delete-selected{background:linear-gradient(135deg,#ff6b35,#ff8c42);border:none;border-radius:8px;box-shadow:0 4px 12px #ff6b354d;color:#fff;cursor:pointer;font-weight:500;padding:10px 16px;transition:all .3s ease}.btn-delete-selected:hover{box-shadow:0 6px 16px #ff6b3566;transform:translateY(-1px)}.btn-delete-all{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:8px;box-shadow:0 4px 12px #dc35454d;color:#fff;cursor:pointer;font-weight:500;padding:10px 16px;transition:all .3s ease}.btn-delete-all:hover{box-shadow:0 6px 16px #dc354566;transform:translateY(-1px)}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{background:#fff;border:2px solid #f0f0f0;border-radius:12px;box-shadow:0 4px 15px #0000001a;padding:20px;text-align:center;transition:all .3s ease}.stat-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.stat-card h3{color:#333;font-size:32px;font-weight:700;margin:0}.stat-card p{color:#666;font-size:14px;font-weight:500;letter-spacing:.5px;margin:8px 0 0;text-transform:uppercase}.stat-card.open{border-color:#007bff}.stat-card.open h3{color:#007bff}.stat-card.progress{border-color:#ffc107}.stat-card.progress h3{color:#ffc107}.stat-card.urgent{border-color:#dc3545}.stat-card.urgent h3{color:#dc3545}.filters-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000000d;margin-bottom:30px;padding:20px}.filters-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.filters-grid input,.filters-grid select{border:2px solid #e0e0e0;border-radius:8px;font-size:16px;padding:12px;transition:border-color .3s ease}.filters-grid input:focus,.filters-grid select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.modal-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0009}.modal-content.admin-ticket-details{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:1000px;overflow:hidden;width:95%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{background:#f8f9fa;border-bottom:1px solid #e0e0e0;padding:20px 25px}.modal-header h3{font-size:22px;font-weight:600}.close-btn{border-radius:50%;color:#666;transition:all .2s ease}.close-btn:hover{background:#f0f0f0}.ticket-content{max-height:calc(90vh - 80px);overflow-y:auto;padding:25px}.ticket-info-section{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 2fr}.ticket-meta h4{color:#333;font-size:24px;font-weight:600;margin:0 0 20px}.meta-info{margin-bottom:25px}.meta-row{border-bottom:1px solid #f0f0f0;display:flex;margin-bottom:12px;padding-bottom:8px}.meta-row span:first-child{color:#666;flex-shrink:0;font-weight:500;width:80px}.meta-row strong{color:#333}.priority-text{font-weight:600}.status-controls{margin-bottom:25px}.status-controls label{color:#333;display:block;font-weight:600;margin-bottom:10px}.status-buttons{display:flex;flex-wrap:wrap;gap:8px}.status-btn{background:#f8f9fa;border:2px solid #e0e0e0;border-radius:6px;color:#333;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .3s ease}.status-btn:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.status-btn.active{border-color:#0000;box-shadow:0 4px 15px #0003}.conversation-section h5{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.messages{margin-bottom:20px;max-height:300px;overflow-y:auto;padding-right:10px}.message{border:1px solid #e0e0e0;border-radius:12px;margin-bottom:15px;padding:15px}.message.student{background:#f8f9ff;border-color:#667eea;margin-right:40px}.message.admin{background:#f0f8f0;border-color:#28a745;margin-left:40px}.message-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.message-header strong{color:#333;font-size:14px}.message-time{color:#888;font-size:12px}.message-content{color:#555;line-height:1.5}.admin-response-form{border-top:1px solid #e0e0e0;padding-top:20px}.response-controls{margin-bottom:15px}.response-controls label{color:#333;display:block;font-weight:500;margin-bottom:8px}.response-controls select{border:2px solid #e0e0e0;border-radius:6px;font-size:14px;padding:8px 12px}.admin-response-form textarea{border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:14px;margin-bottom:15px;min-height:100px;padding:12px;resize:vertical;width:100%}.admin-response-form textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.admin-response-form button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:12px 24px;transition:all .3s ease}.admin-response-form button:hover:not(:disabled){box-shadow:0 4px 15px #667eea4d;transform:translateY(-1px)}.admin-response-form button:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.tickets-table{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;overflow:hidden}.tickets-table table{border-collapse:collapse;width:100%}.tickets-table thead{background:#f8f9fa}.tickets-table th{border-bottom:2px solid #e0e0e0;color:#333;font-size:14px;font-weight:600;letter-spacing:.5px;padding:15px 12px;text-align:left;text-transform:uppercase}.tickets-table td{border-bottom:1px solid #f0f0f0;padding:15px 12px;vertical-align:middle}.tickets-table tr:hover{background:#f8f9fa}.tickets-table tr.urgent-row{background:#fff5f5;border-left:4px solid #dc3545}.ticket-title{align-items:center;color:#333;display:flex;font-weight:500;gap:8px}.urgent-indicator{animation:pulse 2s infinite;font-size:16px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.student-info div{color:#333;font-weight:500}.student-info small{color:#888;font-size:12px}.category-badge{background:#f8f9fa;border-radius:4px;color:#666;font-size:12px;font-weight:500;padding:4px 8px}.priority-badge,.status-badge{border-radius:4px;color:#fff;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.view-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;margin-right:8px;padding:8px 16px;transition:all .3s ease}.view-btn:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.delete-btn{background:linear-gradient(135deg,#dc3545,#c82333);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px;transition:all .3s ease}.delete-btn:hover{box-shadow:0 4px 12px #dc35454d;transform:translateY(-1px)}.action-buttons-cell{align-items:center;display:flex;gap:8px}.tickets-table input[type=checkbox]{accent-color:#667eea;cursor:pointer;height:16px;width:16px}.loading{font-size:18px;padding:60px 20px}.no-tickets{color:#666;font-size:16px;padding:60px 20px;text-align:center}@media (max-width:1200px){.ticket-info-section{gap:20px;grid-template-columns:1fr}}@media (max-width:768px){.admin-support-container{padding:15px}.stats-grid{grid-template-columns:repeat(2,1fr)}.filters-grid{grid-template-columns:1fr}.modal-content.admin-ticket-details{margin:10px;width:95%}.status-buttons{flex-direction:column}.status-btn{text-align:center}.tickets-table{overflow-x:auto}.tickets-table table{min-width:800px}.message.student{margin-right:20px}.message.admin{margin-left:20px}}@media (max-width:480px){.admin-support-header h2{font-size:24px}.stats-grid{grid-template-columns:1fr}.stat-card h3{font-size:28px}.modal-header h3{font-size:18px}}.semester-completion-overlay{align-items:center;animation:overlayFadeIn 1.2s ease-out;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:linear-gradient(135deg,#3b82f6eb,#10b981eb 50%,#6366f1eb);display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:10000}@keyframes overlayFadeIn{0%{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);opacity:0}to{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);opacity:1}}.completion-modal{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-radius:24px;box-shadow:0 20px 60px #0003,0 0 0 1px #ffffff4d;max-width:550px;opacity:0;padding:2.5rem;position:relative;text-align:center;transform:scale(.9) translateY(30px);transition:all .8s cubic-bezier(.25,.46,.45,.94);width:90%}.completion-modal.stage-1{opacity:1;transform:scale(1) translateY(0)}.confetti-container{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%}.confetti-piece{animation:confetti-fall linear infinite;border-radius:3px;position:absolute}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-100vh) rotate(0deg)}to{opacity:0;transform:translateY(100vh) rotate(1turn)}}.modal-glow{animation:rotate-glow 3s linear infinite;background:linear-gradient(45deg,gold,#ff6b6b,#4ecdc4,#45b7d1);border-radius:40px;bottom:-20px;left:-20px;opacity:.6;position:absolute;right:-20px;top:-20px;z-index:-1}@keyframes rotate-glow{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.completion-header{margin-bottom:2rem;position:relative}.trophy-container{display:inline-block;margin-bottom:1rem;position:relative}.trophy-icon{animation:trophy-bounce 2s ease-in-out infinite;color:gold;filter:drop-shadow(0 8px 16px rgba(255,215,0,.4))}.trophy-glow{animation:glow-pulse 2s ease-in-out infinite;background:radial-gradient(circle,#ffd7004d 0,#0000 70%);border-radius:50%;height:120px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:120px}@keyframes trophy-bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes glow-pulse{0%,to{opacity:.3;transform:translate(-50%,-50%) scale(1)}50%{opacity:.6;transform:translate(-50%,-50%) scale(1.2)}}.stars-decoration{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.sparkle,.star{animation:twinkle 1.5s ease-in-out infinite;color:gold;position:absolute}.star-1{animation-delay:0s;left:20%;top:20%}.star-2{animation-delay:.5s;right:25%;top:30%}.star-3{animation-delay:1s;bottom:30%;left:30%}.sparkle-1{animation-delay:.3s;right:15%;top:10%}.sparkle-2{animation-delay:.8s;bottom:20%;right:20%}.sparkle-3{animation-delay:1.3s;left:10%;top:40%}@keyframes twinkle{0%,to{opacity:.7;transform:scale(1) rotate(0deg)}50%{opacity:1;transform:scale(1.3) rotate(180deg)}}.animate-bounce-in{animation:bounceIn 1s ease-out}@keyframes bounceIn{0%{opacity:0;transform:scale(.3) translateY(-100px)}50%{opacity:.8;transform:scale(1.05) translateY(0)}70%{opacity:1;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.animate-slide-up{animation:slideUp .8s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .6s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.completion-title{-webkit-text-fill-color:#0000;animation:title-glow 3s ease-in-out infinite alternate;background:linear-gradient(45deg,#3b82f6,#1d4ed8,#10b981);background-clip:text;-webkit-background-clip:text;font-size:2.2rem;font-weight:800;margin-bottom:1.5rem;text-shadow:0 2px 4px #0000001a}@keyframes title-glow{0%{filter:brightness(1)}to{filter:brightness(1.1)}}.completion-badges{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:2rem}.badge{align-items:center;animation:badge-appear .6s ease-out forwards;border-radius:25px;box-shadow:0 4px 12px #00000026;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;opacity:0;padding:.75rem 1.5rem;transform:translateY(20px)}.badge-primary{animation-delay:.2s;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.badge-success{animation-delay:.4s;background:linear-gradient(135deg,#10b981,#059669);color:#fff}.badge-gold{animation-delay:.6s;background:linear-gradient(135deg,gold,#f59e0b);color:#92400e}@keyframes badge-appear{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.completion-message{margin-bottom:1.5rem}.completion-message p{color:#1f2937;font-size:1.1rem;font-weight:500;line-height:1.7;margin:0 auto;max-width:450px}.completion-date{margin-bottom:2rem}.completion-date p{color:#6b7280;font-size:.95rem;font-weight:500}.celebration-animation{pointer-events:none}.celebration-animation,.pulse-ring{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.pulse-ring{animation:pulse-ring-animation 2s ease-out infinite;border:3px solid #3b82f64d;border-radius:50%}.ring-1{animation-delay:0s;height:200px;width:200px}.ring-2{animation-delay:.5s;height:300px;width:300px}.ring-3{animation-delay:1s;height:400px;width:400px}@keyframes pulse-ring-animation{0%{opacity:1;transform:translate(-50%,-50%) scale(.3)}to{opacity:0;transform:translate(-50%,-50%) scale(1)}}.animate-celebrate .pulse-ring{animation-play-state:running}.floating-hearts{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.heart{animation:float-heart 3s ease-in-out infinite;color:#ff6b6b;position:absolute}.heart-1{animation-delay:0s;left:-30px;top:-50px}.heart-2{animation-delay:.5s;right:-40px;top:-30px}.heart-3{animation-delay:1s;bottom:-40px;left:-20px}.heart-4{animation-delay:1.5s;bottom:-30px;right:-30px}@keyframes float-heart{0%,to{opacity:.7;transform:translateY(0) scale(1)}50%{opacity:1;transform:translateY(-20px) scale(1.2)}}.completion-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:2rem}.btn-celebrate,.btn-continue{border:none;border-radius:50px;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transform:translateY(0);transition:all .3s ease}.btn-celebrate{background:linear-gradient(135deg,gold,#ff6b6b);box-shadow:0 8px 20px #ff6b6b4d;color:#fff}.btn-celebrate:hover{animation:celebrate-pulse .6s ease-in-out infinite;box-shadow:0 12px 30px #ff6b6b66;transform:translateY(-3px)}@keyframes celebrate-pulse{0%,to{transform:translateY(-3px) scale(1)}50%{transform:translateY(-3px) scale(1.05)}}.btn-continue{background:linear-gradient(135deg,#6b7280,#374151);box-shadow:0 8px 20px #6b72804d;color:#fff}.btn-continue:hover{box-shadow:0 12px 30px #6b728066;transform:translateY(-3px)}.close-button{align-items:center;background:#0000001a;border:none;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .3s ease;width:40px}.close-button:hover{background:#0003;color:#374151;transform:scale(1.1)}.background-effects{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%}.light-ray{animation:light-sweep 4s ease-in-out infinite;background:linear-gradient(45deg,#0000,#ffffff1a,#0000);position:absolute}.ray-1{animation-delay:0s;height:2px;top:10%}.ray-1,.ray-2{left:-50%;width:200%}.ray-2{animation-delay:1s;height:1px;top:30%}.ray-3{animation-delay:2s;height:2px;top:70%}.ray-3,.ray-4{left:-50%;width:200%}.ray-4{animation-delay:3s;height:1px;top:90%}@keyframes light-sweep{0%,to{opacity:0;transform:translateX(-100%)}50%{opacity:1;transform:translateX(100%)}}@media (max-width:768px){.completion-modal{margin:1rem;padding:2rem 1.5rem}.completion-title{font-size:2rem}.completion-badges{gap:.5rem}.badge{font-size:.8rem;padding:.5rem 1rem}.completion-actions{align-items:center;flex-direction:column}.btn-celebrate,.btn-continue{max-width:250px;width:100%}}@media (max-width:480px){.completion-title{font-size:1.75rem}.trophy-icon{height:60px;width:60px}.completion-message p{font-size:1rem}}.user-blocking-management{margin:0 auto;max-width:1200px;padding:20px}.header-section{align-items:center;border-bottom:2px solid #eee;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.header-section h2{color:#333;margin:0}.header-actions{display:flex;gap:10px}.btn{border:none;border-radius:4px;cursor:pointer;display:inline-block;font-size:14px;padding:8px 16px;text-decoration:none;transition:all .3s ease}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#545b62}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-success{background-color:#28a745;color:#fff}.btn-success:hover{background-color:#218838}.btn-sm{font-size:12px;padding:4px 8px}.alert{border-radius:4px;font-weight:500;margin-bottom:20px;padding:12px}.alert-error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.alert-success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.search-section{margin-bottom:20px}.search-input{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:10px;width:100%}.bulk-block-section{background-color:#f8f9fa;border-left:4px solid #ffc107;border-radius:8px;margin-bottom:20px;padding:20px}.bulk-block-section h3{color:#856404;margin-top:0}.bulk-form{display:flex;flex-direction:column;gap:10px}.bulk-input{font-family:monospace;resize:vertical}.bulk-input,.reason-input{border:1px solid #ddd;border-radius:4px;padding:10px;width:100%}.bulk-actions{display:flex;gap:10px}.section{margin-bottom:30px}.section h3{border-bottom:1px solid #eee;color:#333;margin-bottom:15px;padding-bottom:8px}.loading{color:#666}.loading,.no-data{padding:20px;text-align:center}.no-data{color:#999;font-style:italic}.blocked-users-list{display:flex;flex-direction:column;gap:15px}.blocked-user-card{align-items:center;background-color:#fff;border:1px solid #dc3545;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;padding:15px}.user-info{flex:1 1}.user-details{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.user-details strong{color:#333;font-size:16px}.phone{color:#666;font-weight:500}.roll{color:#888;font-size:14px}.block-details{display:flex;flex-direction:column;font-size:14px;gap:4px}.reason{color:#d63384;font-weight:500}.block-type,.blocked-date{color:#666}.students-list{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.student-card{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;padding:15px;transition:all .3s ease}.student-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.student-info{flex:1 1}.student-details{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.student-details strong{color:#333;font-size:16px}.semester{color:#17a2b8;font-size:14px}.payment-status{align-items:center;display:flex;gap:15px}.status{border-radius:4px;font-size:12px;font-weight:500;padding:2px 8px;text-transform:uppercase}.status.paid{background-color:#d4edda;color:#155724}.status.unpaid{background-color:#f8d7da;color:#721c24}.amount{color:#666;font-weight:500}.actions{display:flex;gap:8px}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px}.modal-header h3{color:#333;margin:0}.close-btn{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;width:30px}.close-btn:hover{color:#333}.modal-body{padding:20px}.form-group{margin-bottom:15px}.form-group label{color:#333;display:block;font-weight:500;margin-bottom:5px}.form-group input[type=datetime-local],.form-group input[type=text]{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:8px;width:100%}.form-group input[type=checkbox]{margin-right:8px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}@media (max-width:768px){.user-blocking-management{padding:10px}.header-section{align-items:stretch;flex-direction:column;gap:15px}.header-actions{justify-content:center}.students-list{grid-template-columns:1fr}.blocked-user-card,.student-card{align-items:stretch;flex-direction:column;gap:10px}.actions{justify-content:center}.bulk-actions{flex-direction:column}.modal{margin:10px;width:95%}.modal-actions{flex-direction:column}}@media (max-width:480px){.payment-status{align-items:flex-start;flex-direction:column;gap:5px}.student-details,.user-details{gap:2px}.btn{text-align:center;width:100%}}