.input-wrapper{display:flex;flex-direction:column;gap:6px}.input-label{font-size:14px;font-weight:600;color:#2d3748;display:flex;align-items:center;gap:4px}.required-indicator{color:#dc143c;font-size:16px}.input-field{width:100%;padding:10px 12px;border:1px solid rgba(23,227,143,.2);border-radius:8px;font-size:14px;font-family:inherit;transition:all .3s ease;background:#0e111799;color:#fff}.input-field:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.input-field:disabled{background:#f7fafc;color:#a0aec0;cursor:not-allowed}.input-field.input-error{border-color:#dc143c}.input-field.input-error:focus{box-shadow:0 0 0 3px #dc143c1a}.input-error-text{font-size:12px;color:#dc143c;display:flex;align-items:center;gap:4px}.input-helper-text{font-size:12px;color:#718096}.input-field[type=date],.input-field[type=time],.input-field[type=datetime-local]{cursor:pointer}.input-field[type=number]::-webkit-inner-spin-button,.input-field[type=number]::-webkit-outer-spin-button{opacity:1}.select-wrapper{display:flex;flex-direction:column;gap:6px}.select-label{font-size:14px;font-weight:600;color:#2d3748;display:flex;align-items:center;gap:4px}.select-container{position:relative}.select-field{width:100%;padding:10px 36px 10px 12px;border:1px solid rgba(23,227,143,.2);border-radius:8px;font-size:14px;font-family:inherit;transition:all .3s ease;background:#0e111799;color:#fff;cursor:pointer;appearance:none}.select-field:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.select-field:disabled{background:#f7fafc;color:#a0aec0;cursor:not-allowed}.select-field.select-error{border-color:#dc143c}.select-field.select-error:focus{box-shadow:0 0 0 3px #dc143c1a}.select-arrow{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:10px;color:#718096;pointer-events:none}.select-error-text{font-size:12px;color:#dc143c}.select-helper-text{font-size:12px;color:#718096}.checkbox-wrapper{display:flex;flex-direction:column;gap:4px}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.checkbox-input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.checkbox-custom{width:20px;height:20px;border:2px solid #cbd5e0;border-radius:4px;background:#0e111799;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.checkbox-custom:after{content:"✓";color:#fff;font-size:14px;font-weight:700;opacity:0;transform:scale(0);transition:all .2s}.checkbox-input:checked+.checkbox-custom{background:#dc143c;border-color:#dc143c}.checkbox-input:checked+.checkbox-custom:after{opacity:1;transform:scale(1)}.checkbox-input:focus+.checkbox-custom{box-shadow:0 0 0 3px #667eea1a}.checkbox-input:disabled+.checkbox-custom{background:#f7fafc;border-color:#e2e8f0;cursor:not-allowed}.checkbox-label:hover .checkbox-custom{border-color:#a0aec0}.checkbox-input:disabled+.checkbox-custom+.checkbox-text{color:#a0aec0;cursor:not-allowed}.checkbox-text{font-size:14px;color:#2d3748;font-weight:500}.checkbox-error-text{font-size:12px;color:#dc143c;margin-left:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:6px;font-family:inherit;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;position:relative}.button:disabled{opacity:.6;cursor:not-allowed}.button-full-width{width:100%}.button-small{padding:6px 12px;font-size:13px}.button-medium{padding:10px 20px;font-size:14px}.button-large{padding:14px 28px;font-size:16px}.button-primary{background:#dc143c;color:#fff}.button-primary:hover:not(:disabled){background:#b8112f;transform:translateY(-1px);box-shadow:0 4px 12px #dc143c4d}.button-primary:active:not(:disabled){transform:translateY(0)}.button-secondary{background:#f7fafc;color:#2d3748;border:1px solid #cbd5e0}.button-secondary:hover:not(:disabled){background:#edf2f7;border-color:#a0aec0}.button-danger{background:#e53e3e;color:#fff}.button-danger:hover:not(:disabled){background:#c53030;transform:translateY(-1px);box-shadow:0 4px 12px #e53e3e4d}.button-success{background:#38a169;color:#fff}.button-success:hover:not(:disabled){background:#2f855a;transform:translateY(-1px);box-shadow:0 4px 12px #38a1694d}.button-ghost{background:transparent;color:#4a5568;border:1px solid transparent}.button-ghost:hover:not(:disabled){background:#f7fafc;border-color:#e2e8f0}.button-loading{pointer-events:none}.button-spinner{width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite}.button-icon{display:flex;align-items:center;font-size:1.2em}.button-text{line-height:1;text-align:center;flex:1}.button:not(:has(.button-text)){padding:10px}.button-small:not(:has(.button-text)){padding:6px}.button-large:not(:has(.button-text)){padding:14px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:12px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.modal-small{max-width:400px}.modal-medium{max-width:600px}.modal-large{max-width:900px}.modal-xlarge{max-width:1200px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e2e8f0;background:#f9fafb}.modal-header h2{font-size:20px;font-weight:700;color:#1f2937;margin:0}.modal-close{background:none;border:none;font-size:32px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;line-height:1}.modal-close:hover{background:#e5e7eb;color:#1f2937}@media(max-width:768px){.modal-overlay{padding:10px}.modal-content{max-height:95vh}.modal-header{padding:20px}.modal-header h2{font-size:18px}.modal-body{padding:20px}.modal-small,.modal-medium,.modal-large,.modal-xlarge{max-width:100%}}.spinner-fullscreen{position:fixed;inset:0;background:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:9999}.spinner-content{display:flex;flex-direction:column;align-items:center;gap:16px}.spinner{border-radius:50%;border-style:solid;border-color:#e2e8f0;border-top-color:#dc143c;animation:spin .8s linear infinite}.spinner-small{width:20px;height:20px;border-width:2px}.spinner-medium{width:40px;height:40px;border-width:4px}.spinner-large{width:60px;height:60px;border-width:5px}.spinner-message{font-size:14px;color:#4a5568;margin:0;text-align:center}.progress-bar-wrapper{width:100%}.progress-bar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.progress-bar-label{font-size:14px;font-weight:600;color:#2d3748}.progress-bar-percentage{font-size:14px;font-weight:600;color:#4a5568}.progress-bar-track{width:100%;background:#e2e8f0;border-radius:999px;overflow:hidden;position:relative}.progress-bar-small{height:4px}.progress-bar-medium{height:8px}.progress-bar-large{height:24px}.progress-bar-fill{height:100%;border-radius:999px;transition:width .3s ease;display:flex;align-items:center;justify-content:center;position:relative}.progress-bar-primary{background:linear-gradient(90deg,#667eea,#764ba2)}.progress-bar-success{background:linear-gradient(90deg,#38a169,#2f855a)}.progress-bar-warning{background:linear-gradient(90deg,#dd6b20,#c05621)}.progress-bar-danger{background:linear-gradient(90deg,#e53e3e,#c53030)}.progress-bar-fill-text{font-size:12px;font-weight:600;color:#fff;position:absolute;left:50%;transform:translate(-50%)}.progress-bar-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.toast-container{position:fixed;top:80px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;max-width:400px}.toast{display:flex;align-items:center;gap:12px;padding:16px;background:#fff;border-radius:8px;box-shadow:0 10px 40px #00000026;cursor:pointer;animation:slideIn .3s ease;border-left:4px solid}@keyframes slideIn{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.toast-success{border-left-color:#38a169}.toast-error{border-left-color:#e53e3e}.toast-warning{border-left-color:#dd6b20}.toast-info{border-left-color:#3182ce}.toast-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:#fff;flex-shrink:0}.toast-success .toast-icon{background:#38a169}.toast-error .toast-icon{background:#e53e3e}.toast-warning .toast-icon{background:#dd6b20}.toast-info .toast-icon{background:#3182ce}.toast-message{flex:1;font-size:14px;color:#2d3748;line-height:1.5}.toast-close{background:none;border:none;font-size:24px;color:#a0aec0;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;flex-shrink:0;line-height:1}.toast-close:hover{background:#f7fafc;color:#4a5568}@media(max-width:768px){.toast-container{top:70px;right:10px;left:10px;max-width:none}.toast{padding:12px}.toast-message{font-size:13px}}.form-error{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#fee;border:1px solid #fcc;border-radius:4px;margin-top:6px;font-size:14px;color:#c00}.form-error-icon{flex-shrink:0;font-size:16px}.form-error-message{flex:1;line-height:1.4}.form-error.inline{background:transparent;border:none;padding:4px 0;margin-top:4px}.form-error.inline .form-error-icon{display:none}.form-error.inline .form-error-message{font-size:13px}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.error-boundary-content{background:#fff;border-radius:12px;padding:40px;max-width:600px;width:100%;box-shadow:0 10px 40px #0003;text-align:center}.error-boundary-icon{font-size:64px;margin-bottom:20px}.error-boundary-title{font-size:28px;font-weight:600;color:#333;margin-bottom:16px}.error-boundary-message{font-size:16px;color:#666;line-height:1.6;margin-bottom:30px}.error-boundary-details{text-align:left;margin:20px 0;padding:15px;background:#f5f5f5;border-radius:8px;border:1px solid #ddd}.error-boundary-details summary{cursor:pointer;font-weight:600;color:#c00;margin-bottom:10px}.error-boundary-stack{margin-top:10px}.error-boundary-stack p{margin-bottom:10px;color:#333}.error-boundary-stack pre{background:#fff;padding:10px;border-radius:4px;overflow-x:auto;font-size:12px;color:#666;border:1px solid #ddd}.error-boundary-actions{display:flex;gap:12px;justify-content:center}.error-boundary-button{padding:12px 24px;border:none;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.error-boundary-button.primary{background:#c00;color:#fff}.error-boundary-button.primary:hover{background:#a00;transform:translateY(-2px);box-shadow:0 4px 12px #cc00004d}.error-boundary-button.secondary{background:#f0f0f0;color:#333}.error-boundary-button.secondary:hover{background:#e0e0e0;transform:translateY(-2px)}@media(max-width:768px){.error-boundary-content{padding:30px 20px}.error-boundary-title{font-size:24px}.error-boundary-actions{flex-direction:column}.error-boundary-button{width:100%}}.modern-sidebar{position:fixed;left:0;top:0;height:100vh;width:260px;background:linear-gradient(180deg,#1e222b,#0e1117);border-right:2px solid rgba(23,227,143,.3);display:flex;flex-direction:column;transition:width .3s cubic-bezier(.4,0,.2,1);z-index:1000;box-shadow:4px 0 20px #00000080,0 0 30px #17e38f1a}.modern-sidebar.collapsed{width:80px}.sidebar-header{padding:24px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1)}.logo-container{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.logo-icon{width:36px;height:36px;background:linear-gradient(135deg,#17e38f,#00d9ff);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#0e1117;flex-shrink:0;box-shadow:0 0 20px #17e38f99,0 0 40px #17e38f4d}.logo-icon svg{width:20px;height:20px}.logo-text{font-size:18px;font-weight:700;color:#f1f5f9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collapse-btn{width:32px;height:32px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#94a3b8;cursor:pointer;transition:all .25s ease;flex-shrink:0}.collapse-btn:hover{background:#ffffff1a;color:#f1f5f9;border-color:#fff3}.collapse-btn svg{width:18px;height:18px}.sidebar-nav{flex:1;padding:20px 12px;overflow-y:auto;overflow-x:hidden}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#fff3}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:8px;border-radius:12px;color:#94a3b8;cursor:pointer;transition:all .25s ease;position:relative;overflow:hidden}.modern-sidebar.collapsed .nav-item{justify-content:center;padding:12px}.nav-item:hover{background:#ffffff0d;color:#f1f5f9;transform:translate(4px)}.modern-sidebar.collapsed .nav-item:hover{transform:translate(0) scale(1.05)}.nav-item.active{background:linear-gradient(135deg,#17e38f33,#00d9ff33);color:#17e38f;box-shadow:0 0 30px #17e38f66,inset 0 0 20px #17e38f1a}.nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:60%;background:linear-gradient(180deg,#17e38f,#00d9ff);border-radius:0 4px 4px 0;box-shadow:0 0 10px #17e38fcc}.nav-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-icon svg{width:100%;height:100%;stroke-width:2}.nav-label{font-size:15px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.nav-badge{background:#ef4444;color:#fff;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;min-width:20px;text-align:center}.sidebar-footer{padding:12px;border-top:1px solid rgba(255,255,255,.1)}.modern-sidebar.collapsed .nav-item{position:relative}.modern-sidebar.collapsed .nav-item:after{content:attr(title);position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:12px;padding:8px 12px;background:#1e293b;color:#f1f5f9;font-size:14px;font-weight:500;border-radius:8px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .25s ease;box-shadow:0 4px 12px #0000004d;z-index:1001}.modern-sidebar.collapsed .nav-item:hover:after{opacity:1}@media(max-width:768px){.modern-sidebar{width:80px}.logo-text,.nav-label,.nav-badge{display:none}.nav-item{justify-content:center;padding:12px}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}.modern-sidebar{animation:slideInLeft .4s ease-out}.notification-bell-container{position:relative}.notification-bell-button{position:relative;background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.notification-bell-button:hover{background-color:#17e38f1a}.notification-bell-icon{width:24px;height:24px;color:#17e38f;filter:drop-shadow(0 0 8px rgba(23,227,143,.5))}.notification-badge{position:absolute;top:4px;right:4px;background-color:#c00;color:#fff;font-size:10px;font-weight:700;padding:2px 5px;border-radius:10px;min-width:18px;text-align:center}.notification-dropdown{position:absolute;top:100%;right:0;margin-top:8px;width:380px;max-height:500px;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:1000;display:flex;flex-direction:column}.notification-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #eee}.notification-header h3{margin:0;font-size:16px;font-weight:600;color:#333}.unread-count{font-size:12px;color:#c00;font-weight:500}.notification-list{overflow-y:auto;max-height:420px}.notification-loading,.notification-empty{padding:40px 20px;text-align:center;color:#666;font-size:14px}.notification-item{display:flex;align-items:flex-start;padding:12px 16px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background-color .2s;position:relative}.notification-item:hover{background-color:#f9f9f9}.notification-item:last-child{border-bottom:none}.notification-item.unread{background-color:#f0f8ff}.notification-item.unread:hover{background-color:#e6f3ff}.notification-content{flex:1;display:flex;flex-direction:column;gap:4px;padding-right:8px}.notification-dot{position:absolute;left:8px;top:18px;width:8px;height:8px;background-color:#c00;border-radius:50%}.notification-message{margin:0;font-size:14px;color:#333;line-height:1.4;padding-left:16px}.notification-item.unread .notification-message{font-weight:500}.notification-time{font-size:12px;color:#999;padding-left:16px}.notification-delete{background:none;border:none;color:#999;font-size:24px;line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;flex-shrink:0}.notification-delete:hover{background-color:#f0f0f0;color:#c00}.notification-list::-webkit-scrollbar{width:6px}.notification-list::-webkit-scrollbar-track{background:#f1f1f1}.notification-list::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.notification-list::-webkit-scrollbar-thumb:hover{background:#999}@media(max-width:768px){.notification-dropdown{width:320px;max-height:400px}.notification-list{max-height:320px}}.modal-overlay{position:fixed;inset:0;background:#00000080;z-index:999;animation:fadeIn .2s ease-out}.user-profile-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;z-index:1000;width:90%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid #e9ecef;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-header h2{margin:0;font-size:20px;font-weight:600}.modal-close{background:none;border:none;font-size:32px;color:#fff;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.modal-close:hover{background:#fff3}.modal-tabs{display:flex;border-bottom:1px solid #e9ecef;background:#f8f9fa}.modal-tabs .tab{flex:1;padding:15px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:14px;font-weight:500;color:#6c757d;transition:all .2s}.modal-tabs .tab:hover{background:#e9ecef;color:#495057}.modal-tabs .tab.active{color:#667eea;border-bottom-color:#667eea;background:#fff}.modal-content{flex:1;overflow-y:auto;padding:25px}.tab-content{animation:fadeIn .3s ease-out}.profile-section{text-align:center;padding:20px 0;border-bottom:1px solid #e9ecef;margin-bottom:25px}.profile-avatar-large{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:40px;font-weight:600;margin:0 auto 15px;box-shadow:0 4px 15px #667eea4d}.profile-section h3{margin:0 0 8px;font-size:24px;color:#2c3e50}.profile-role-badge{display:inline-block;padding:6px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:20px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.profile-info{display:flex;flex-direction:column;gap:15px}.info-row{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;background:#f8f9fa;border-radius:8px}.info-row label{font-weight:600;color:#6c757d;font-size:14px}.info-row span{color:#2c3e50;font-size:14px}.role-badge{padding:4px 12px;background:#667eea;color:#fff;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.password-form{display:flex;flex-direction:column;gap:20px}.form-group label{font-weight:600;color:#2c3e50;font-size:14px}.form-control{width:100%;padding:12px 45px 12px 15px;border:2px solid #e9ecef;border-radius:8px;font-size:14px;transition:all .2s}.form-control:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.password-toggle{position:absolute;right:12px;background:none;border:none;cursor:pointer;font-size:18px;padding:5px;opacity:.6;transition:opacity .2s}.password-toggle:hover{opacity:1}.password-strength-meter{margin-top:10px}.strength-bar-container{width:100%;height:8px;background:#e9ecef;border-radius:4px;overflow:hidden;margin-bottom:8px}.strength-bar{height:100%;transition:all .3s ease;border-radius:4px}.strength-label{font-size:13px;font-weight:600;text-align:right}.password-requirements{margin-top:15px;padding:15px;background:#f8f9fa;border-radius:8px;border-left:4px solid #667eea}.requirements-title{font-weight:600;color:#2c3e50;margin:0 0 10px;font-size:13px}.password-requirements ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.password-requirements li{font-size:13px;display:flex;align-items:center;gap:8px}.password-requirements li.met{color:#28a745}.password-requirements li.not-met{color:#6c757d}.requirement-icon{font-weight:700;font-size:14px}.validation-errors,.validation-warnings{margin-top:10px}.error-message{color:#dc3545;font-size:13px;margin:5px 0}.warning-message{color:#ffc107;font-size:13px;margin:5px 0}.form-actions{display:flex;gap:10px;margin-top:10px}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;max-width:200px}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #667eea66}.btn-secondary:hover{background:#5a6268}.security-section{display:flex;flex-direction:column;gap:20px}.security-section h3{margin:0 0 15px;color:#2c3e50;font-size:18px}.security-info-box{padding:20px;background:#f8f9fa;border-radius:8px;border-left:4px solid #667eea}.security-info-box p{margin:0 0 10px;font-weight:600;color:#2c3e50;font-size:14px}.security-info-box ul{margin:0;padding-left:20px}.security-info-box li{margin:8px 0;color:#6c757d;font-size:14px;line-height:1.6}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,-45%)}to{opacity:1;transform:translate(-50%,-50%)}}@media(max-width:768px){.user-profile-modal{width:95%;max-height:95vh}.modal-header{padding:15px 20px}.modal-header h2{font-size:18px}.modal-content{padding:20px}.modal-tabs .tab{padding:12px 10px;font-size:12px}.form-actions{flex-direction:column}.btn{width:100%}}.dashboard-layout{min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden;background:linear-gradient(135deg,#0e1117,#1e222b);margin:0;padding:0;position:relative}.dashboard-header{background:#1e222bf2;border-bottom:2px solid rgba(23,227,143,.3);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:fixed;top:0;left:0;right:0;height:70px;z-index:999;box-shadow:0 4px 20px #00000080,0 0 30px #17e38f1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-left{display:flex;align-items:center;gap:16px}.sidebar-toggle{display:none;background:none;border:none;font-size:24px;color:#4a5568;cursor:pointer;padding:8px;border-radius:6px;transition:background .2s}.sidebar-toggle:hover{background:#f7fafc}.header-logo{display:flex;align-items:center;gap:12px;font-weight:700;font-size:20px;color:#fff;text-shadow:0 0 10px rgba(23,227,143,.5)}.logo-icon{font-size:28px;filter:drop-shadow(0 0 10px rgba(23,227,143,.6))}.logo-text{white-space:nowrap;font-family:Inter,Poppins,sans-serif}.header-right{display:flex;align-items:center;gap:16px}.user-profile-container{position:relative}.user-profile-button{display:flex;align-items:center;gap:12px;background:none;border:none;cursor:pointer;padding:8px 12px;border-radius:8px;transition:background .2s}.user-profile-button:hover{background:#f7fafc}.user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;box-shadow:0 0 20px #17e38f80}.user-info{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.user-name{font-size:14px;font-weight:600;color:#fff;line-height:1.2}.user-role{font-size:12px;color:#17e38f;text-transform:capitalize;line-height:1.2;text-shadow:0 0 8px rgba(23,227,143,.5)}.dropdown-arrow{font-size:10px;color:#718096;transition:transform .2s}.user-profile-button:hover .dropdown-arrow{transform:translateY(2px)}.user-menu-overlay{position:fixed;inset:0;z-index:999}.user-menu-dropdown{position:absolute;top:calc(100% + 12px);right:0;background:#1e222bfa;border:2px solid rgba(23,227,143,.3);border-radius:12px;box-shadow:0 10px 40px #000000b3,0 0 30px #17e38f33;min-width:260px;z-index:1000;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.user-menu-header{padding:20px;background:#17e38f1a;border-bottom:1px solid rgba(23,227,143,.2)}.user-menu-name{font-size:16px;font-weight:700;color:#fff;margin-bottom:6px}.user-menu-email{font-size:13px;color:#b0b8c4;margin-bottom:10px}.user-menu-role-badge{display:inline-block;padding:6px 12px;background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;font-size:11px;font-weight:700;border-radius:6px;text-transform:uppercase;box-shadow:0 0 15px #17e38f66}.user-menu-divider{height:1px;background:#17e38f33}.user-menu-item{width:100%;display:flex;align-items:center;gap:12px;padding:14px 20px;background:none;border:none;cursor:pointer;font-size:14px;color:#fff;transition:all .3s ease;text-align:left}.user-menu-item:hover{background:#17e38f1a;box-shadow:inset 0 0 20px #17e38f1a}.menu-item-icon{font-size:16px}.dashboard-content{padding:0;overflow-y:auto;overflow-x:hidden;background:transparent;margin-top:70px;box-sizing:border-box;min-height:calc(100vh - 70px)}@media(max-width:1024px){.dashboard-content{padding:20px}.user-info{display:none}.logo-text{font-size:16px}}@media(max-width:768px){.sidebar-toggle{display:block}.dashboard-sidebar{position:fixed;top:64px;left:0;bottom:0;width:250px;z-index:99;box-shadow:2px 0 8px #0000001a}.dashboard-sidebar:not(.collapsed){transform:translate(0)}.dashboard-content{padding:16px;margin-left:0!important}.header-logo{gap:8px}.logo-text{font-size:14px}.user-menu-dropdown{right:-8px}}@media(max-width:480px){.dashboard-header{padding:0 12px}.header-right{gap:8px}.dashboard-content{padding:12px}.logo-text{display:none}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0e1117,#1e222b);padding:20px}.login-card{background:#1e222bfa;border:2px solid rgba(23,227,143,.3);border-radius:16px;box-shadow:0 20px 60px #000000b3,0 0 40px #17e38f33;width:100%;max-width:420px;padding:40px}.login-header{text-align:center;margin-bottom:32px}.logo{display:flex;justify-content:center;margin-bottom:16px}.login-header h1{font-size:24px;font-weight:700;color:#fff;margin:0 0 8px;text-shadow:0 0 15px rgba(23,227,143,.4)}.login-header p{font-size:14px;color:#17e38f;margin:0;text-shadow:0 0 10px rgba(23,227,143,.5)}.login-form{display:flex;flex-direction:column;gap:20px}.error-message{display:flex;align-items:center;gap:8px;padding:12px;background-color:#ff4c4c1a;border:2px solid rgba(255,76,76,.3);border-radius:8px;color:#ff4c4c;font-size:14px;font-weight:600}.form-group label{font-size:14px;font-weight:600;color:#b0b8c4}.form-group input{padding:12px 16px;border:1px solid rgba(23,227,143,.2);border-radius:8px;font-size:14px;transition:all .3s ease;background:#0e111799;color:#fff}.form-group input:focus{outline:none;border-color:#17e38f;box-shadow:0 0 20px #17e38f4d}.form-group input:disabled{background-color:#0e111766;cursor:not-allowed;opacity:.5}.login-button{padding:12px 24px;background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;border:none;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 0 20px #17e38f66}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 30px #17e38f99}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{background:#b0b8c433;color:#6b7280;cursor:not-allowed;box-shadow:none}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.login-footer{margin-top:24px;text-align:center}.login-footer p{font-size:12px;color:#6b7280;margin:0}@media(max-width:480px){.login-card{padding:24px}.login-header h1{font-size:20px}}.session-expired-page{min-height:100vh;background:linear-gradient(135deg,#0e1117,#1e222b);display:flex;align-items:center;justify-content:center;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.session-expired-container{width:100%;max-width:650px}.session-expired-header{text-align:center;margin-bottom:30px}.logo-section{display:flex;align-items:center;justify-content:center;gap:15px;color:#fff}.logo-icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center}.logo-text h1{margin:0;font-size:32px;font-weight:700;letter-spacing:2px;color:#fff;text-shadow:0 0 15px rgba(23,227,143,.4)}.logo-text p{margin:0;font-size:14px;opacity:.9;font-weight:400;color:#17e38f}.session-expired-content{background:#1e222bfa;border-radius:12px;box-shadow:0 20px 60px #0000004d;overflow:hidden}.expired-card{padding:50px 40px;text-align:center}.expired-icon{margin-bottom:25px;display:flex;justify-content:center}.expired-title{font-size:28px;font-weight:700;color:#fff;margin:0 0 15px;text-shadow:0 0 15px rgba(23,227,143,.4)}.expired-subtitle{font-size:16px;color:#b0b8c4;margin:0 0 25px;line-height:1.6}.expired-message{background:#17e38f1a;border-left:4px solid #17E38F;padding:20px;margin:30px 0;text-align:left;border-radius:8px}.expired-message p{margin:0;color:#b0b8c4;line-height:1.6;font-size:15px}.security-info{background:#ffc1071a;border:2px solid rgba(255,193,7,.3);border-radius:8px;padding:20px;margin:30px 0;display:flex;gap:15px;text-align:left}.security-icon{flex-shrink:0;width:24px;height:24px}.security-text{flex:1}.security-text strong{display:block;color:#ffc107;margin-bottom:10px;font-size:15px;font-weight:700}.security-text ul{margin:0;padding-left:20px;color:#b0b8c4}.security-text li{margin:5px 0;font-size:14px;line-height:1.5}.sign-in-button{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;border:none;padding:14px 40px;font-size:16px;font-weight:700;border-radius:8px;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:10px;margin-top:20px;box-shadow:0 0 20px #17e38f66}.sign-in-button:hover{transform:translateY(-2px);box-shadow:0 0 30px #17e38f99}.sign-in-button:active{transform:translateY(0)}.footer-info{background:#0e111799;padding:20px;text-align:center;border-top:2px solid rgba(23,227,143,.2)}.footer-info p{margin:0;color:#6b7280;font-size:13px}@media(max-width:768px){.session-expired-page{padding:15px}.expired-card{padding:35px 25px}.expired-title{font-size:24px}.expired-subtitle{font-size:14px}.logo-text h1{font-size:28px}.security-info{flex-direction:column;align-items:flex-start}.sign-in-button{width:100%;justify-content:center}}@media(max-width:480px){.expired-card{padding:25px 20px}.expired-title{font-size:20px}.expired-message,.security-info{padding:15px}}.expired-card{animation:fadeIn .5s ease-out}.dashboard-container{min-height:100vh;background:linear-gradient(135deg,#0e1117,#1e222b)}.dashboard-page{padding:40px;min-height:100vh;background:transparent;width:100%}.dashboard-header{background:#1e222bcc;border-bottom:2px solid rgba(23,227,143,.3);box-shadow:0 4px 20px #00000080,0 0 30px #17e38f1a}.header-content{max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;justify-content:space-between;align-items:center}.logo-section{display:flex;align-items:center;gap:12px}.logo-section h1{font-size:20px;font-weight:700;color:#1a202c;margin:0}.user-section{display:flex;align-items:center;gap:12px}.user-info{display:flex;flex-direction:column;align-items:flex-end}.user-name{font-size:14px;font-weight:600;color:#2d3748}.user-role{font-size:12px;color:#718096;text-transform:capitalize}.logout-button{padding:8px 16px;background:#dc143c;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.logout-button:hover{background:#b8112f;transform:translateY(-1px)}.dashboard-main{max-width:1200px;margin:0 auto;padding:40px 24px}.welcome-section{background:#1e222bcc;border:2px solid rgba(23,227,143,.2);border-radius:16px;padding:40px;box-shadow:0 6px 20px #00000080,0 0 30px #17e38f1a}.welcome-section h2{font-size:32px;font-weight:700;color:#fff;margin:0 0 12px;text-shadow:0 0 15px rgba(23,227,143,.4)}.welcome-section>p{font-size:18px;color:#b0b8c4;margin:0 0 32px}.welcome-section>p strong{color:#17e38f;text-shadow:0 0 10px rgba(23,227,143,.5)}.info-card{background:#0e111799;border:1px solid rgba(23,227,143,.2);border-radius:12px;padding:28px;margin-bottom:24px;box-shadow:0 0 20px #17e38f1a}.info-card h3{font-size:20px;font-weight:700;color:#17e38f;margin:0 0 20px;text-shadow:0 0 10px rgba(23,227,143,.5)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-label{font-size:13px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:16px;color:#fff;font-weight:600}.status-message{display:flex;align-items:center;gap:12px;padding:20px;background:#17e38f1a;border:2px solid rgba(23,227,143,.3);border-radius:12px;color:#17e38f;font-size:15px;font-weight:600;box-shadow:0 0 20px #17e38f33}@media(max-width:768px){.header-content{flex-direction:column;gap:16px;align-items:flex-start}.user-section{width:100%;justify-content:space-between}.info-grid{grid-template-columns:1fr}}.role-info-card{padding:24px;border-radius:12px;margin-bottom:24px;border-left:4px solid;background:#1e222b99;border:2px solid}.role-info-card h3{margin:0 0 12px;font-size:20px;font-weight:700}.role-info-card p{margin:0;font-size:15px;line-height:1.6;color:#b0b8c4}.role-info-card.admin{background:#ffb8001a;border-left-color:#ffb800;color:#fff;box-shadow:0 0 20px #ffb80033}.role-info-card.warden{background:#00d9ff1a;border-left-color:#00d9ff;color:#fff;box-shadow:0 0 20px #00d9ff33}.role-info-card.registrar{background:#17e38f1a;border-left-color:#17e38f;color:#fff;box-shadow:0 0 20px #17e38f33}.role-info-card.redcross{background:#ff4c4c1a;border-left-color:#ff4c4c;color:#fff;box-shadow:0 0 20px #ff4c4c33}.role-info-card.hospital{background:#8b5cf61a;border-left-color:#8b5cf6;color:#fff;box-shadow:0 0 20px #8b5cf633}.read-only-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background-color:#fef3c7;border:1px solid #fbbf24;border-radius:12px;font-size:12px;font-weight:500;color:#92400e}.badge-icon{font-size:14px}.badge-text{line-height:1}.dashboard-charts{width:100%}.dashboard-charts.loading,.dashboard-charts.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:#666}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #c00;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:15px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px}.stat-card{background:#1e222bcc;border:2px solid rgba(23,227,143,.2);border-radius:12px;padding:24px;box-shadow:0 6px 20px #00000080,0 0 30px #17e38f1a}.stat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid rgba(23,227,143,.2)}.stat-header h3{margin:0;color:#fff;font-size:1.1rem;font-weight:700;text-shadow:0 0 10px rgba(23,227,143,.4)}.stat-total{font-weight:700;color:#17e38f;font-size:1rem;text-shadow:0 0 10px rgba(23,227,143,.5)}.bar-chart{display:flex;flex-direction:column;gap:15px}.bar-item{display:flex;flex-direction:column;gap:5px}.bar-label{display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.label-text{color:#b0b8c4;font-weight:600}.label-value{color:#17e38f;font-size:.85rem;font-weight:700}.bar-container{height:24px;background:#0e111799;border:1px solid rgba(23,227,143,.2);border-radius:8px;overflow:hidden}.bar-fill{height:100%;transition:width .3s ease;border-radius:8px;background:linear-gradient(90deg,#17e38f,#00d9ff);box-shadow:0 0 15px #17e38f66}.timeline-chart{display:flex;align-items:flex-end;justify-content:space-between;height:150px;gap:8px;padding:10px 0}.timeline-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px}.timeline-bar-container{width:100%;height:100px;display:flex;align-items:flex-end}.timeline-bar{width:100%;background:linear-gradient(to top,#17e38f,#00d9ff);border-radius:8px 8px 0 0;transition:height .3s ease;min-height:2px;box-shadow:0 0 15px #17e38f66}.timeline-label{display:flex;flex-direction:column;align-items:center;gap:2px}.timeline-count{font-weight:700;color:#fff;font-size:.9rem;text-shadow:0 0 8px rgba(23,227,143,.4)}.timeline-date{font-size:.75rem;color:#b0b8c4;white-space:nowrap}.prison-list{display:flex;flex-direction:column;gap:12px;max-height:300px;overflow-y:auto}.prison-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#0e111799;border:1px solid rgba(23,227,143,.2);border-radius:8px;transition:all .3s ease}.prison-item:hover{background:#17e38f1a;box-shadow:0 0 15px #17e38f33}.prison-info{display:flex;flex-direction:column;gap:4px}.prison-name{font-weight:700;color:#fff;font-size:.95rem}.prison-location{font-size:.85rem;color:#b0b8c4}.prison-count{font-weight:700;color:#17e38f;font-size:1.1rem;text-shadow:0 0 10px rgba(23,227,143,.5)}.no-data{text-align:center;color:#999;padding:40px 20px;font-style:italic}.prison-list::-webkit-scrollbar{width:6px}.prison-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.prison-list::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.prison-list::-webkit-scrollbar-thumb:hover{background:#999}@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}}@media(max-width:768px){.stats-grid{grid-template-columns:1fr}.timeline-chart{height:120px}.timeline-bar-container{height:80px}.timeline-date{font-size:.7rem}}.redcross-dashboard-container{padding:2rem;min-height:100vh}.dashboard-header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.header-text h2{font-size:2rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.header-text p{color:#6b7280;font-size:1.1rem;margin:0}.quick-access-section{margin-bottom:2rem}.quick-access-section h3{font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:1rem}.quick-access-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.quick-access-card{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .3s;text-align:left}.quick-access-card:hover{border-color:#dc143c;transform:translateY(-4px);box-shadow:0 8px 16px #dc143c26}.card-icon{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.card-icon.prisoners{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.card-icon.reports{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.card-icon.audit{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.card-icon.search{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.card-content h4{font-size:1.1rem;font-weight:600;color:#1f2937;margin:0 0 .25rem}.card-content p{font-size:.9rem;color:#6b7280;margin:0}.statistics-section h3{font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;box-shadow:0 2px 8px #0000001a;transition:all .3s}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #00000026}.stat-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card.total .stat-icon{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.stat-card.pending .stat-icon{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.stat-card.active .stat-icon{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.stat-card.released .stat-icon{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.stat-card.hospitalized .stat-icon{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.stat-card.movements .stat-icon{background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff}.stat-value{font-size:2rem;font-weight:700;color:#1f2937;line-height:1;margin-bottom:.25rem}.stat-label{font-size:.9rem;color:#6b7280;font-weight:500}.charts-section{margin-bottom:2rem}.charts-section h3{font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:1rem}.prisons-section{margin-bottom:2rem}.prisons-section h3{font-size:1.5rem;font-weight:700;color:#1f2937;margin-bottom:1rem}.prisons-table{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.prisons-table table{width:100%;border-collapse:collapse}.prisons-table thead{background:#f9fafb}.prisons-table th{padding:1rem;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}.prisons-table td{padding:1rem;border-bottom:1px solid #e5e7eb;color:#1f2937}.prisons-table tbody tr:hover{background:#f9fafb}.count-badge{display:inline-block;padding:.25rem .75rem;background:#dc143c;color:#fff;border-radius:50px;font-weight:600;font-size:.9rem}.info-section{margin-bottom:2rem}.info-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.info-card h3{font-size:1.3rem;font-weight:700;color:#1f2937;margin-bottom:1rem}.info-card p{color:#4b5563;line-height:1.6;margin-bottom:1rem}.info-card li{padding:.5rem 0;color:#4b5563;display:flex;align-items:center;gap:.5rem}.info-card li:before{content:"";width:6px;height:6px;border-radius:50%;background:#dc143c}.loading-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#dc143c;border-radius:50%;animation:spin 1s linear infinite}.loading-section p{margin-top:1rem;color:#6b7280;font-weight:500}.error-section{padding:2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;text-align:center}.error-section p{color:#ef4444;font-weight:500}@media(max-width:768px){.dashboard-header-section{flex-direction:column;gap:1rem;text-align:center}.quick-access-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-value{font-size:1.5rem}}.judicial-transfer-status-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .8rem;border-radius:20px;font-size:.85rem;font-weight:600;white-space:nowrap}.status-icon{font-size:1rem}.status-label{line-height:1}.status-yellow{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.status-blue{background:#cfe2ff;color:#084298;border:1px solid #b6d4fe}.status-purple{background:#e0cffc;color:#6f42c1;border:1px solid #d0b8f8}.status-orange{background:#ffe5d0;color:#c50;border:1px solid #ffd8b8}.status-pink{background:#fce4ec;color:#c2185b;border:1px solid #f8bbd0}.status-teal{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.status-green{background:#d1e7dd;color:#0f5132;border:1px solid #badbcc}.status-red{background:#f8d7da;color:#842029;border:1px solid #f5c2c7}.status-amber{background:#fff4e5;color:#cc7a00;border:1px solid #ffe8cc}.status-gray{background:#e9ecef;color:#495057;border:1px solid #dee2e6}.judicial-transfer-card{cursor:pointer;perspective:1000px;transition:transform .3s ease}.judicial-transfer-card:hover{transform:translateY(-8px)}.judicial-transfer-card-inner{position:relative;background:linear-gradient(135deg,#1e1e28f2,#14141ef2);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:24px;box-shadow:0 8px 32px #0000004d;transition:all .3s ease;overflow:hidden}.judicial-transfer-card:hover .judicial-transfer-card-inner{border-color:#00d9ff80;box-shadow:0 12px 48px #00d9ff33}.status-badge-container{position:absolute;top:16px;right:16px;z-index:2}.prisoner-photo-container{width:100%;height:200px;border-radius:12px;overflow:hidden;margin-bottom:16px;background:#ffffff0d;position:relative}.image-skeleton{width:100%;height:100%;background:linear-gradient(90deg,#ffffff0d,#ffffff1a,#ffffff0d);background-size:200% 100%;animation:shimmer 1.5s infinite}.judicial-transfer-card:hover .prisoner-photo{transform:scale(1.05)}.transfer-info{margin-bottom:16px}.prisoner-name{font-size:20px;font-weight:700;color:#fff;margin:0 0 8px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.prisoner-number{font-size:14px;color:#ffffffb3;margin:0 0 12px}.prisoner-number .label{font-weight:600;color:#ffffff80}.transfer-number-badge{display:inline-flex;align-items:center;padding:8px 16px;background:linear-gradient(135deg,#00d9ff33,#09c3);border:1px solid rgba(0,217,255,.3);border-radius:8px;margin-bottom:16px}.transfer-label{font-size:12px;font-weight:600;color:#ffffffb3;margin-right:6px}.transfer-number{font-size:14px;font-weight:700;color:#00d9ff;letter-spacing:.5px}.transfer-detail{display:flex;align-items:flex-start;gap:8px;margin-bottom:12px;font-size:14px}.transfer-detail .icon{width:18px;height:18px;flex-shrink:0;color:#00d9ff;margin-top:2px}.transfer-detail .handover-icon{font-size:18px;flex-shrink:0}.transfer-detail .detail-label{font-weight:600;color:#fff9;flex-shrink:0}.transfer-detail .detail-value{color:#ffffffe6;flex:1}.transfer-detail .complaint-nature{font-style:italic}.transfer-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.meta-item{display:flex;align-items:center;gap:6px;font-size:12px;color:#fff9}.meta-item .icon{width:14px;height:14px;color:#fff6}.card-actions{margin-top:16px;display:flex;gap:8px}.edit-btn{flex:0 0 auto;padding:12px 20px;background:linear-gradient(135deg,orange,#ff8c00);border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.edit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ffa50066}.download-pdf-btn{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 20px;background:linear-gradient(135deg,#9c27b0,#7b1fa2);border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.download-pdf-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #9c27b066}.download-pdf-btn:disabled{opacity:.6;cursor:not-allowed}.download-pdf-btn .spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.view-details-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#00d9ff,#09c);border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.view-details-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00d9ff66}.view-details-btn .arrow-icon{width:16px;height:16px;transition:transform .3s ease}.view-details-btn:hover .arrow-icon{transform:translate(4px)}.transfer-type-icon{position:absolute;bottom:16px;right:16px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#00d9ff33,#09c3);border-radius:50%;opacity:.5;transition:all .3s ease}.judicial-transfer-card:hover .transfer-type-icon{opacity:1;transform:rotate(360deg)}.transfer-type-icon svg{width:24px;height:24px;color:#00d9ff}@media(max-width:768px){.judicial-transfer-card-inner{padding:16px}.prisoner-photo-container{height:160px}.prisoner-name{font-size:18px}.transfer-meta{flex-direction:column;align-items:flex-start;gap:8px}}.court-user-dashboard-container{padding:2rem;max-width:1400px;margin:0 auto}.dashboard-header-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e0e0e0}.dashboard-header-section .header-text h2{font-size:2rem;font-weight:700;color:#1a1a1a;margin:0 0 .5rem}.dashboard-header-section .header-text p{font-size:1rem;color:#666;margin:0}.court-badge{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;border-radius:12px;font-weight:600;box-shadow:0 4px 12px #2196f34d}.court-badge svg{width:24px;height:24px}.loading-section{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem}.loading-section .spinner{width:48px;height:48px;border:4px solid #f3f3f3;border-top:4px solid #2196F3;border-radius:50%;animation:spin 1s linear infinite}.loading-section p{color:#666;font-size:1rem}.statistics-section{margin-bottom:2rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.stat-card{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.stat-card.pending-acceptances{border-left:4px solid #2196F3}.stat-card.pending-confirmations{border-left:4px solid #4CAF50}.stat-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:12px;background:linear-gradient(135deg,#f5f5f5,#e0e0e0)}.stat-card.pending-acceptances .stat-icon{background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#2196f3}.stat-card.pending-confirmations .stat-icon{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);color:#4caf50}.stat-icon svg{width:28px;height:28px}.stat-content{flex:1}.stat-value{font-size:2rem;font-weight:700;color:#1a1a1a;line-height:1;margin-bottom:.5rem}.stat-label{font-size:.875rem;color:#666;font-weight:500}.quick-actions-section{margin-bottom:2rem}.quick-actions-section h3{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin-bottom:1rem}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.action-button{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:#fff;border:2px solid #e0e0e0;border-radius:12px;font-size:1rem;font-weight:600;color:#1a1a1a;cursor:pointer;transition:all .2s;position:relative}.action-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.action-button:disabled{opacity:.5;cursor:not-allowed}.action-button.primary{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;border:none}.action-button.primary:hover:not(:disabled){box-shadow:0 4px 16px #2196f366}.action-button.secondary{background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff;border:none}.action-button.secondary:hover:not(:disabled){box-shadow:0 4px 16px #4caf5066}.action-button.tertiary{background:#fff;color:#2196f3;border:2px solid #2196F3}.action-button.tertiary:hover:not(:disabled){background:#e3f2fd}.action-button svg{width:24px;height:24px;flex-shrink:0}.action-button .badge{position:absolute;top:-8px;right:-8px;background:#f44336;color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .5rem;border-radius:12px;min-width:24px;text-align:center}.recent-transfers-section{margin-bottom:2rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin:0}.view-all-link{background:none;border:none;color:#2196f3;font-size:.875rem;font-weight:600;cursor:pointer;transition:color .2s}.view-all-link:hover{color:#1976d2;text-decoration:underline}.transfers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.info-section{margin-top:2rem}.info-card{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-left:4px solid #2196F3;border-radius:12px;padding:1.5rem}.info-card h3{font-size:1.125rem;font-weight:600;color:#1565c0;margin:0 0 1rem}.info-card p{color:#424242;line-height:1.6;margin:0 0 1rem}.info-card ul{list-style:none;padding:0;margin:0}.info-card ul li{padding:.5rem 0;color:#424242;font-size:.875rem;line-height:1.5}.info-card ul li:not(:last-child){border-bottom:1px solid rgba(33,150,243,.2)}@media(max-width:768px){.court-user-dashboard-container{padding:1rem}.dashboard-header-section{flex-direction:column;align-items:flex-start;gap:1rem}.stats-grid,.quick-actions-grid,.transfers-grid{grid-template-columns:1fr}.stat-value{font-size:1.5rem}.action-button{padding:1rem}}.error-section{display:flex;justify-content:center;align-items:center;min-height:400px;padding:2rem}.error-card{background:#fff;border-radius:16px;padding:3rem;text-align:center;max-width:500px;box-shadow:0 4px 20px #0000001a;border:2px solid #ffebee}.error-card svg{width:64px;height:64px;color:#f44336;margin-bottom:1.5rem}.error-card h3{font-size:1.5rem;font-weight:700;color:#1a1a1a;margin:0 0 1rem}.error-card p{font-size:1rem;color:#666;margin:0 0 2rem;line-height:1.6}.retry-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#2196f3;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.retry-button:hover{background:#1976d2;transform:translateY(-2px);box-shadow:0 4px 12px #2196f34d}.retry-button svg{width:20px;height:20px}.forbidden-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.forbidden-content{background:#fff;border-radius:16px;padding:3rem;max-width:600px;width:100%;text-align:center;box-shadow:0 20px 60px #0000004d}.forbidden-icon{display:inline-flex;align-items:center;justify-content:center;width:120px;height:120px;background:linear-gradient(135deg,#f44336,#d32f2f);border-radius:50%;margin-bottom:2rem;box-shadow:0 8px 24px #f4433666}.forbidden-icon svg{width:64px;height:64px;color:#fff}.forbidden-content h1{font-size:5rem;font-weight:800;color:#f44336;margin:0 0 1rem;line-height:1}.forbidden-content h2{font-size:2rem;font-weight:700;color:#1a1a1a;margin:0 0 1rem}.forbidden-content p{font-size:1.125rem;color:#666;line-height:1.6;margin:0 0 2rem}.forbidden-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}.forbidden-actions button{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.forbidden-actions button svg{width:20px;height:20px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 16px #667eea66}.btn-secondary{background:#fff;color:#667eea;border:2px solid #667eea}.btn-secondary:hover{background:#f5f5f5;transform:translateY(-2px)}.access-info{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-radius:12px;padding:1.5rem;margin-top:2rem}.access-info h3{font-size:1.125rem;font-weight:600;color:#1565c0;margin:0 0 1rem}.access-info ul{list-style:none;padding:0;margin:0;text-align:left}.access-info ul li{padding:.5rem 0;color:#424242;font-size:.875rem;border-bottom:1px solid rgba(33,150,243,.2)}.access-info ul li:last-child{border-bottom:none}@media(max-width:768px){.forbidden-content{padding:2rem}.forbidden-content h1{font-size:3.5rem}.forbidden-content h2{font-size:1.5rem}.forbidden-actions{flex-direction:column}.forbidden-actions button{width:100%;justify-content:center}}.modal-overlay{position:fixed;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#0e1117fa;border:2px solid rgba(23,227,143,.3);border-radius:16px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #000000b3,0 0 40px #17e38f33}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 30px;background:linear-gradient(135deg,#17e38f26,#00d9ff26);border-bottom:1px solid rgba(23,227,143,.3);border-radius:16px 16px 0 0}.modal-header h2{font-size:24px;font-weight:700;color:#fff;margin:0;text-shadow:0 2px 8px rgba(0,0,0,.5)}.modal-close{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);font-size:24px;color:#fff;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .3s ease}.modal-close:hover{background:#dc354533;border-color:#dc354566;color:#ff6b6b;transform:rotate(90deg)}.modal-form{padding:30px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group label{display:block;font-size:14px;font-weight:600;color:#fff;margin-bottom:8px}.form-group input,.form-group select{width:100%;padding:12px 16px;background:#1e222bcc;border:1px solid rgba(23,227,143,.3);border-radius:8px;font-size:14px;color:#fff;transition:all .3s ease}.form-group input::placeholder{color:#6b7280}.form-group input:focus,.form-group select:focus{outline:none;border-color:#17e38f;background:#1e222bf2;box-shadow:0 0 20px #17e38f4d}.form-group input:disabled,.input-disabled{background:#ffffff0d;color:#6b7280;cursor:not-allowed;border-color:#ffffff1a}.form-group small{display:block;margin-top:6px;font-size:12px;color:#b0b8c4}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;color:#fff}.checkbox-label input[type=checkbox]{width:auto;cursor:pointer;accent-color:#17E38F}.checkbox-label span{font-weight:500;color:#fff}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin:0 -30px -30px;padding:25px 30px;border-top:1px solid rgba(23,227,143,.2);background:#17e38f08;border-radius:0 0 16px 16px}.modal-actions .btn-primary,.modal-actions .btn-secondary{padding:12px 28px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;display:inline-flex;align-items:center;justify-content:center}.modal-actions .btn-primary{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;box-shadow:0 0 20px #17e38f4d}.modal-actions .btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 30px #17e38f80}.modal-actions .btn-secondary{background:#ffffff0d;color:#fff;border:1px solid rgba(255,255,255,.2)}.modal-actions .btn-secondary:hover:not(:disabled){background:#ffffff1a;transform:translateY(-2px)}.modal-actions button:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.error-message{padding:16px;background:#dc354533;border:1px solid rgba(220,53,69,.4);border-radius:12px;color:#ff6b6b;font-size:14px;font-weight:500;margin-bottom:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media(max-width:768px){.form-row{grid-template-columns:1fr}.modal-content{max-height:95vh}}.user-management-page{padding:40px;width:100%;background:transparent}.users-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px;margin-bottom:24px}.user-card{background:#1e222bcc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;transition:all .2s}.user-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.user-card-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.user-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}.user-info{flex:1}.user-info h3{font-size:16px;font-weight:600;color:#1a202c;margin:0 0 4px}.username{font-size:13px;color:#718096;margin:0}.user-card-body{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.user-detail{display:flex;justify-content:space-between;align-items:center}.user-detail .label{font-size:13px;color:#718096;font-weight:500}.user-detail .value{font-size:14px;color:#2d3748}.role-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize}.role-badge-admin{background:#fef3c7;color:#92400e}.role-badge-warden{background:#dbeafe;color:#1e40af}.role-badge-registrar{background:#d1fae5;color:#065f46}.role-badge-redcross{background:#fee2e2;color:#991b1b}.role-badge-hospital{background:#e0e7ff;color:#3730a3}.role-badge-court{background:#fce7f3;color:#831843}.user-card-actions{display:flex;gap:8px}.btn-success{flex:1;padding:8px 16px;background:#d4edda;color:#155724;border:1px solid #c3e6cb;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-success:hover{background:#c3e6cb}.pagination{display:flex;justify-content:center;align-items:center;gap:16px}.loading,.error-message,.access-denied{text-align:center;padding:40px;color:#718096}@media(max-width:768px){.users-grid{grid-template-columns:1fr}.filters-section{flex-direction:column}.page-header{flex-direction:column;align-items:flex-start;gap:16px}}.courts-management-page{padding:40px;width:100%;background:transparent}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-header h1{font-size:28px;font-weight:700;color:#1a202c;margin:0}.btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#dc143c;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover{background:#b8112f;transform:translateY(-1px)}.filters-section{display:flex;gap:12px;margin-bottom:24px}.search-input{flex:1;padding:10px 16px;border:1px solid #cbd5e0;border-radius:6px;font-size:14px}.filter-select{padding:10px 16px;border:1px solid #cbd5e0;border-radius:6px;font-size:14px;background:#1e222bcc;cursor:pointer}.courts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px;margin-bottom:24px}.court-card{background:#1e222bcc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;transition:all .2s}.court-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.court-card-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.court-icon{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center}.court-icon svg{width:28px;height:28px}.court-info{flex:1}.court-info h3{font-size:16px;font-weight:600;color:#1a202c;margin:0 0 4px}.court-country{font-size:13px;color:#718096;margin:0}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.active{background:#d4edda;color:#155724}.status-badge.inactive{background:#f8d7da;color:#721c24}.court-card-body{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.court-detail{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.court-detail .label{font-size:13px;color:#718096;font-weight:500;flex-shrink:0}.court-detail .value{font-size:14px;color:#2d3748;text-align:right;word-break:break-word}.court-type-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.court-type-badge-internal{background:#d1fae5;color:#065f46}.court-type-badge-international{background:#dbeafe;color:#1e40af}.court-card-actions{display:flex;gap:8px}.btn-secondary{flex:1;padding:8px 16px;background:#f7fafc;color:#2d3748;border:1px solid #cbd5e0;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#edf2f7}.btn-danger{flex:1;padding:8px 16px;background:#fee;color:#c00;border:1px solid #fcc;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-danger:hover{background:#fdd}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:24px}.page-info{font-size:14px;color:#718096}.loading,.error-message,.access-denied,.no-results{text-align:center;padding:40px;color:#718096}.error-message{background:#fee;color:#c00;border:1px solid #fcc;border-radius:6px;margin-bottom:20px}@media(max-width:768px){.courts-grid{grid-template-columns:1fr}.filters-section{flex-direction:column}.page-header{flex-direction:column;align-items:flex-start;gap:16px}}.prison-management-tree{width:100%}.prison-tree-empty{padding:40px;text-align:center;color:#666;background:#f9f9f9;border-radius:8px;border:2px dashed #ddd}.tree-node{margin-bottom:8px}.tree-node-header{display:flex;align-items:center;padding:12px;background:#fff;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;transition:all .2s;gap:8px}.tree-node-header:hover{background:#f5f5f5;border-color:#c00}.prison-node>.tree-node-header{background:#fff5f5;border-color:#c00;font-weight:600}.prison-node>.tree-node-header:hover{background:#ffe5e5}.section-node>.tree-node-header{background:#f0f8ff;border-color:#4a90e2}.section-node>.tree-node-header:hover{background:#e0f0ff}.room-node>.tree-node-header{background:#f0fff0;border-color:#4caf50;cursor:default}.room-node>.tree-node-header:hover{background:#e0ffe0}.expand-icon{font-size:12px;color:#666;min-width:16px;text-align:center;-webkit-user-select:none;user-select:none}.node-icon{font-size:20px;min-width:24px;text-align:center}.node-content{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.node-title{font-size:14px;font-weight:500;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-subtitle{font-size:12px;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.tree-node-header:hover .node-actions{opacity:1}.btn-icon{padding:4px 8px;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-icon:hover{background:#f0f0f0;border-color:#999}.btn-icon.btn-danger:hover{background:#ffebee;border-color:#c00;color:#c00}.tree-children{margin-left:32px;margin-top:8px;padding-left:16px;border-left:2px solid #e0e0e0}.tree-empty-message{padding:16px;color:#999;font-size:13px;font-style:italic;background:#fafafa;border-radius:4px;border:1px dashed #ddd}@media(max-width:768px){.tree-node-header{padding:10px}.node-title{font-size:13px}.node-subtitle{font-size:11px}.tree-children{margin-left:16px;padding-left:12px}.node-actions{opacity:1}}.wizard-modal{width:95%;max-width:none}.wizard-progress{display:flex;align-items:center;justify-content:center;padding:24px;background:#f9f9f9;border-bottom:1px solid #e0e0e0}.wizard-step{display:flex;flex-direction:column;align-items:center;gap:8px;position:relative}.step-number{width:40px;height:40px;border-radius:50%;background:#e0e0e0;color:#999;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;transition:all .3s}.wizard-step.active .step-number{background:#c00;color:#fff}.wizard-step.completed .step-number{background:#4caf50;color:#fff}.wizard-step.completed .step-number:before{content:"✓"}.step-label{font-size:13px;color:#666;font-weight:500}.wizard-step.active .step-label{color:#c00;font-weight:600}.wizard-line{width:80px;height:2px;background:#e0e0e0;margin:0 16px 28px}.wizard-step-content{padding:8px 0}.wizard-step-content h3{margin:0 0 8px;color:#333;font-size:20px}.step-description{margin:0 0 24px;color:#666;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .2s}.summary-box{margin-top:24px;padding:16px;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px}.summary-box h4{margin:0 0 12px;color:#333;font-size:14px;font-weight:600}.summary-item{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e0e0e0}.summary-item:last-child{border-bottom:none}.summary-label{font-weight:500;color:#666;font-size:13px}.summary-value{color:#333;font-size:13px;text-align:right}.error-message{padding:12px;background:#ffebee;border:1px solid #c00;border-radius:4px;color:#c00;margin-bottom:16px;font-size:14px}@media(max-width:768px){.wizard-modal{width:95%;max-height:90vh;overflow-y:auto}.wizard-progress{padding:16px}.step-number{width:36px;height:36px;font-size:14px}.wizard-line{width:60px;margin:0 8px 24px}.step-label{font-size:12px}}.prison-management-page{padding:40px;width:100%;background:transparent}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;gap:16px}.page-header h1{margin:0 0 4px;color:#333;font-size:28px}.page-subtitle{margin:0;color:#666;font-size:14px}.btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#c00;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-primary:hover{background:#a00}.btn-secondary{padding:10px 20px;background:#1e222bcc;color:#333;border:1px solid #ddd;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f5f5f5;border-color:#999}.btn-secondary:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}.error-message{padding:12px 16px;background:#ffebee;border:1px solid #c00;border-radius:6px;color:#c00;margin-bottom:16px;font-size:14px}.loading{padding:40px;text-align:center;color:#666;font-size:16px}.access-denied{padding:40px;text-align:center;background:#fff5f5;border:2px solid #c00;border-radius:8px;margin:24px}.access-denied h2{color:#c00;margin:0 0 8px}.access-denied p{color:#666;margin:0}.prison-content{display:flex;flex-direction:column;gap:24px}.info-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.info-card{display:flex;align-items:center;gap:16px;padding:20px;background:#1e222bcc;border:1px solid #e0e0e0;border-radius:8px;transition:all .2s}.info-card:hover{border-color:#c00;box-shadow:0 2px 8px #0000001a}.info-card-icon{font-size:32px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#f9f9f9;border-radius:8px}.info-card-content{flex:1}.info-card-value{font-size:28px;font-weight:700;color:#333;line-height:1;margin-bottom:4px}.info-card-label{font-size:13px;color:#666;font-weight:500}.prison-tree-container{background:#1e222bcc;border:1px solid #e0e0e0;border-radius:8px;padding:24px}.loading-text{padding:16px;text-align:center;color:#666;font-size:14px}.modal-subtitle{margin:0 0 16px;padding:12px;background:#f9f9f9;border-radius:4px;font-size:14px;color:#666}.modal-subtitle strong{color:#333}.required{color:#c00}.field-error{display:block;margin-top:4px;color:#c00;font-size:12px}.field-hint{display:block;margin-top:4px;color:#999;font-size:12px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#333;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#c00}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#c00;background:#fff5f5}.form-group textarea{resize:vertical;min-height:80px}@media(max-width:768px){.prison-management-page{padding:16px}.page-header{flex-direction:column;align-items:stretch}.page-header h1{font-size:24px}.btn-primary{justify-content:center}.info-cards{grid-template-columns:1fr}.prison-tree-container{padding:16px}}.pdf-download-button-container{display:flex;flex-direction:column;gap:8px}.pdf-download-button-group{display:flex;gap:4px}.pdf-download-button,.pdf-preview-button{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.pdf-download-button{flex:1}.pdf-preview-button{padding:10px 12px}.pdf-download-button-primary{background:#c00;color:#fff}.pdf-download-button-primary:hover:not(:disabled){background:#a00;transform:translateY(-1px);box-shadow:0 4px 8px #c003}.pdf-download-button-secondary{background:#f5f5f5;color:#333;border:1px solid #ddd}.pdf-download-button-secondary:hover:not(:disabled){background:#e8e8e8;border-color:#ccc}.pdf-preview-button-primary{background:#c00;color:#fff}.pdf-preview-button-primary:hover:not(:disabled){background:#a00}.pdf-preview-button-secondary{background:#f5f5f5;color:#333;border:1px solid #ddd}.pdf-preview-button-secondary:hover:not(:disabled){background:#e8e8e8;border-color:#ccc}.pdf-download-button:disabled,.pdf-preview-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.pdf-download-icon,.pdf-preview-icon{width:18px;height:18px;flex-shrink:0}.pdf-download-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:pdf-spinner-rotate .6s linear infinite}@keyframes pdf-spinner-rotate{to{transform:rotate(360deg)}}.pdf-download-error{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fee;border:1px solid #fcc;border-radius:4px;color:#c00;font-size:13px}.pdf-error-icon{width:16px;height:16px;flex-shrink:0}@media(max-width:768px){.pdf-download-button,.pdf-preview-button{font-size:13px;padding:8px 12px}.pdf-preview-button{padding:8px 10px}.pdf-download-icon,.pdf-preview-icon{width:16px;height:16px}}.health-history-container{margin-top:0;padding:0}.health-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:12px 16px;background:#3b82f61a;border-left:3px solid #3b82f6;border-radius:4px}.health-history-header h4{margin:0;font-size:14px;font-weight:600;color:#e5e7eb;text-transform:uppercase;letter-spacing:1px}.history-count{background:#3b82f6;color:#fff;padding:4px 12px;border-radius:12px;font-size:11px;font-weight:700;letter-spacing:.5px}.health-history-timeline{position:relative;padding-left:0}.timeline-item{display:flex;gap:16px;margin-bottom:16px}.timeline-marker{display:flex;flex-direction:column;align-items:center;flex-shrink:0;padding-top:8px}.timeline-dot{width:14px;height:14px;border-radius:50%;border:3px solid rgba(30,41,59,.8);box-shadow:0 0 0 3px #3b82f64d;z-index:1}.timeline-line{width:2px;flex:1;background:linear-gradient(180deg,#3b82f680,#3b82f61a);margin-top:4px;min-height:30px}.timeline-content{flex:1;background:#1e293b99;border:1px solid rgba(59,130,246,.3);border-radius:8px;padding:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.timeline-content:hover{background:#1e293bcc;border-color:#3b82f699;transform:translate(4px);box-shadow:0 4px 12px #0000004d}.order-header{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid rgba(59,130,246,.2)}.order-title{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.order-number{font-weight:700;font-size:15px;color:#60a5fa;letter-spacing:.5px}.order-status{padding:4px 12px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;border:1px solid currentColor}.order-hospital{color:#94a3b8;font-size:13px;font-weight:500;display:flex;align-items:center;gap:6px}.order-hospital:before{content:"🏥";font-size:14px}.order-reason{margin-bottom:12px;padding:12px;background:#0f172a99;border-left:3px solid rgba(59,130,246,.5);border-radius:4px;font-size:13px;color:#cbd5e1;line-height:1.5}.order-reason strong{color:#e0e7ff;margin-right:8px;font-weight:600}.order-timeline-dates{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-top:12px}.date-item{display:flex;flex-direction:column;gap:4px;padding:8px;background:#0f172a66;border-radius:4px;border:1px solid rgba(59,130,246,.2)}.date-label{font-size:10px;color:#64748b;text-transform:uppercase;letter-spacing:.8px;font-weight:700}.date-value{font-size:12px;color:#e2e8f0;font-weight:600}.health-history-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px;color:#64748b}.loading-spinner{width:50px;height:50px;border:4px solid rgba(59,130,246,.2);border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.health-history-loading p{color:#94a3b8;font-size:14px;font-weight:500}.health-history-error{display:flex;flex-direction:column;align-items:center;padding:40px;background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:8px;color:#fca5a5}.error-icon{font-size:48px;margin-bottom:12px}.health-history-error p{color:#fca5a5;font-weight:500}.health-history-empty{display:flex;flex-direction:column;align-items:center;padding:60px 40px;background:#1e293b66;border:2px dashed rgba(59,130,246,.3);border-radius:12px;color:#64748b}.empty-icon{font-size:64px;margin-bottom:20px;opacity:.4;filter:grayscale(1)}.health-history-empty p{margin:0 0 8px;font-size:16px;font-weight:600;color:#94a3b8}.empty-subtitle{font-size:13px;color:#64748b;font-weight:400}@media(max-width:768px){.order-timeline-dates{flex-direction:column;gap:8px}.timeline-content{padding:12px}}.location-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;border:1.5px solid;font-size:.85rem;font-weight:600;cursor:help;transition:all .2s ease}.location-badge:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.location-icon{font-size:1rem;line-height:1}.location-label{white-space:nowrap}.location-hospital{font-size:.75rem;opacity:.9;font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:768px){.location-badge{font-size:.75rem;padding:4px 10px}.location-hospital{display:none}}.military-modal-overlay{position:fixed!important;inset:0!important;background:#000000d9!important;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex!important;align-items:center!important;justify-content:center!important;z-index:99999!important;padding:20px;animation:fadeIn .3s ease-out}.military-modal-content{background:linear-gradient(180deg,#1a1f2e,#0f1419);border-radius:16px;width:100%;max-width:1200px;max-height:95vh;overflow:hidden;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff1a;display:flex;flex-direction:column;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.military-header{background:linear-gradient(135deg,#2d3748,#1a202c);border-bottom:3px solid #3b82f6;position:relative;overflow:hidden}.military-header-stripe{position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ef4444,#f59e0b,#22c55e,#3b82f6,#8b5cf6)}.military-header-content{padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center}.military-badge{display:flex;align-items:center;gap:1rem}.badge-icon{font-size:3rem;filter:drop-shadow(0 0 10px rgba(59,130,246,.5))}.badge-text{display:flex;flex-direction:column}.badge-title{font-size:1.5rem;font-weight:800;color:#fff;letter-spacing:2px;text-shadow:0 2px 4px rgba(0,0,0,.5)}.badge-subtitle{font-size:.875rem;color:#94a3b8;letter-spacing:1px;font-weight:600}.military-close{width:48px;height:48px;border-radius:50%;background:#ef44441a;border:2px solid #ef4444;color:#ef4444;font-size:1.5rem;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center}.military-close:hover{background:#ef4444;color:#fff;transform:rotate(90deg)}.military-profile-card{padding:2rem;display:grid;grid-template-columns:300px 1fr;gap:2rem;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.1)}.military-photo-section{display:flex;flex-direction:column;gap:1.5rem}.military-photo-frame{position:relative;width:100%;aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:#0f1419;border:3px solid #3b82f6;box-shadow:0 10px 30px #3b82f64d}.military-photo-frame img{width:100%;height:100%;object-fit:cover}.military-photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;color:#475569;letter-spacing:2px}.photo-frame-corners{position:absolute;inset:0;pointer-events:none}.corner{position:absolute;width:20px;height:20px;border:3px solid #3b82f6}.corner.top-left{top:10px;left:10px;border-right:none;border-bottom:none}.corner.top-right{top:10px;right:10px;border-left:none;border-bottom:none}.corner.bottom-left{bottom:10px;left:10px;border-right:none;border-top:none}.corner.bottom-right{bottom:10px;right:10px;border-left:none;border-top:none}.military-qr-section{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.qr-label{font-size:.75rem;font-weight:700;color:#94a3b8;letter-spacing:1px}.military-qr-frame{width:120px;height:120px;padding:10px;background:#fff;border-radius:8px;border:2px solid #3b82f6;box-shadow:0 4px 12px #3b82f633}.military-qr-frame img{width:100%;height:100%;object-fit:contain}.qr-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#94a3b8}.military-identity-section{display:flex;flex-direction:column;gap:1.5rem}.identity-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.identity-name{font-size:2.5rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:1px;text-shadow:0 2px 4px rgba(0,0,0,.5)}.identity-status{padding:.75rem 1.5rem;border-radius:8px;display:flex;align-items:center;gap:.5rem;font-weight:700;color:#fff;box-shadow:0 4px 12px #0000004d}.status-icon{font-size:1.25rem}.status-text{font-size:1rem;letter-spacing:1px}.military-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.military-info-box{background:#3b82f61a;border:2px solid rgba(59,130,246,.3);border-radius:12px;padding:1.25rem;display:flex;align-items:center;gap:1rem;transition:all .3s}.military-info-box:hover{background:#3b82f626;border-color:#3b82f680;transform:translateY(-2px);box-shadow:0 8px 20px #3b82f633}.info-box-icon{font-size:2rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.info-box-content{flex:1}.info-box-label{font-size:.75rem;font-weight:700;color:#94a3b8;letter-spacing:1px;margin-bottom:.25rem}.info-box-value{font-size:1.125rem;font-weight:700;color:#fff}.military-tabs{display:flex;background:#ffffff05;border-bottom:2px solid rgba(255,255,255,.1);overflow-x:auto;scrollbar-width:thin;scrollbar-color:#3b82f6 transparent}.military-tabs::-webkit-scrollbar{height:4px}.military-tabs::-webkit-scrollbar-track{background:transparent}.military-tabs::-webkit-scrollbar-thumb{background:#3b82f6;border-radius:2px}.military-tab{flex:1;min-width:150px;padding:1rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:#94a3b8;font-weight:600;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:.5rem}.military-tab:hover{background:#3b82f61a;color:#3b82f6}.military-tab.active{background:#3b82f626;border-bottom-color:#3b82f6;color:#3b82f6}.tab-icon{font-size:1.25rem}.tab-label{font-size:.875rem;letter-spacing:.5px}.military-tab-content{flex:1;overflow-y:auto;padding:2rem;scrollbar-width:thin;scrollbar-color:#3b82f6 transparent}.military-tab-content::-webkit-scrollbar{width:8px}.military-tab-content::-webkit-scrollbar-track{background:transparent}.military-tab-content::-webkit-scrollbar-thumb{background:#3b82f6;border-radius:4px}.tab-panel{display:flex;flex-direction:column;gap:2rem}.military-section{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1.5rem}.section-title{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:700;color:#3b82f6;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid rgba(59,130,246,.3)}.section-icon{font-size:1.5rem}.military-data-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}.data-field{display:flex;flex-direction:column;gap:.5rem}.field-label{font-size:.75rem;font-weight:700;color:#94a3b8;letter-spacing:1px}.field-value{font-size:1rem;font-weight:600;color:#fff;padding:.75rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:6px}.military-report-box{padding:1.5rem;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#e2e8f0;line-height:1.6;font-size:.95rem}.health-status-card,.discharge-status-card{padding:2rem;background:#3b82f60d;border:2px solid rgba(59,130,246,.2);border-radius:12px;text-align:center}.health-indicator,.discharge-indicator{display:flex;flex-direction:column;align-items:center;gap:1rem}.indicator-icon{font-size:3rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}.indicator-icon.success{color:#22c55e}.indicator-icon.pending{color:#f59e0b}.indicator-text{font-size:1.125rem;font-weight:600;color:#cbd5e1}.movements-placeholder{padding:3rem;text-align:center;color:#64748b}.placeholder-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.placeholder-text{font-size:1.125rem;font-weight:600}.military-photos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.military-photo-card{background:#0000004d;border:2px solid rgba(59,130,246,.3);border-radius:12px;overflow:hidden;transition:all .3s}.military-photo-card:hover{border-color:#3b82f699;transform:translateY(-4px);box-shadow:0 12px 24px #3b82f633}.photo-card-label{padding:.75rem;background:#3b82f633;font-size:.875rem;font-weight:700;color:#3b82f6;text-align:center;letter-spacing:1px}.military-photo-card img{width:100%;height:300px;object-fit:cover}.photo-loading{width:100%;height:300px;display:flex;align-items:center;justify-content:center;color:#64748b;font-weight:600}.military-footer{padding:1.5rem 2rem;background:#ffffff05;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer-info{display:flex;align-items:center;gap:.5rem}.footer-label{font-size:.875rem;color:#94a3b8;font-weight:600}.footer-value{font-size:.875rem;color:#fff;font-weight:700}.footer-actions{display:flex;gap:1rem}.military-btn{padding:.75rem 1.5rem;border-radius:8px;font-weight:700;font-size:.875rem;cursor:pointer;transition:all .3s;border:2px solid;letter-spacing:.5px}.military-btn-close{background:transparent;border-color:#64748b;color:#cbd5e1}.military-btn-close:hover{background:#64748b;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #64748b4d}@media(max-width:1024px){.military-profile-card{grid-template-columns:1fr}.military-photo-section{flex-direction:row;justify-content:center;gap:2rem}.military-photo-frame{max-width:250px}}@media(max-width:768px){.military-modal-content{max-height:100vh;border-radius:0}.military-header-content{padding:1rem}.badge-title{font-size:1.125rem}.badge-subtitle{font-size:.75rem}.identity-name{font-size:1.75rem}.military-profile-card{padding:1rem}.military-photo-section{flex-direction:column}.military-info-grid{grid-template-columns:1fr}.military-tabs{flex-wrap:nowrap}.military-tab{min-width:120px;padding:.75rem 1rem}.tab-label{display:none}.military-tab-content{padding:1rem}.military-data-grid{grid-template-columns:1fr}.military-footer{flex-direction:column;align-items:stretch}.footer-actions{flex-direction:column}.military-btn{width:100%}}@media(max-width:480px){.military-modal-overlay{padding:0}.badge-icon{font-size:2rem}.identity-name{font-size:1.5rem}.military-close{width:40px;height:40px;font-size:1.25rem}}.movements-list{display:flex;flex-direction:column;gap:16px}.movement-item{background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:12px;padding:16px;transition:all .3s ease}.movement-item:hover{border-color:#17e38f66;box-shadow:0 0 20px #17e38f1a}.movement-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.movement-date{color:#fff9;font-size:14px}.movement-route{display:flex;align-items:center;gap:16px;margin:16px 0;padding:12px;background:#0003;border-radius:8px}.movement-prison{flex:1}.prison-label{font-size:12px;color:#ffffff80;margin-bottom:4px}.prison-name{font-size:16px;font-weight:600;color:#fff}.movement-arrow{font-size:24px;color:#17e38f}.movement-reason{margin:12px 0;padding:8px 12px;background:#17e38f1a;border-left:3px solid #17E38F;border-radius:4px;font-size:14px;color:#fffc}.movement-footer{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1);font-size:12px;color:#ffffff80}.movement-initiated{display:inline-block}.prisoner-grid-container{padding:20px;background:transparent}.prisoner-filters{margin-bottom:30px}.search-form{display:flex;gap:12px;margin-bottom:20px}.search-input{flex:1;padding:14px 20px;background:#1e222bcc;border:1px solid rgba(23,227,143,.3);border-radius:12px;font-size:15px;color:#fff;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.search-input::placeholder{color:#b0b8c4}.search-input:focus{outline:none;border-color:#17e38f;box-shadow:0 0 20px #17e38f4d;background:#1e222bf2}.status-filters{display:flex;gap:12px;flex-wrap:wrap}.filter-btn{padding:10px 20px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;font-size:14px;font-weight:600;color:#b0b8c4;cursor:pointer;transition:all .3s ease}.filter-btn:hover{background:#ffffff1a;border-color:#17e38f66;color:#fff;transform:translateY(-2px)}.filter-btn.active{background:linear-gradient(135deg,#17e38f4d,#00d9ff4d);border-color:#17e38f99;color:#17e38f;box-shadow:0 0 20px #17e38f4d}.prisoner-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:30px;padding:20px 0;margin-bottom:30px}.prisoner-id-card{width:280px;height:360px;background:#0e1117!important;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border:2px solid #17E38F!important;border-radius:20px;padding:20px;text-align:center;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 12px #00000080,0 0 30px #17e38f4d;position:relative;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.prisoner-id-card:hover{transform:scale(1.03);box-shadow:0 10px 25px #0009,0 0 40px #17e38f80;border-color:#17e38f!important;background:#1e222b!important}.prisoner-photo-container{width:150px;height:150px;margin:10px auto 20px;border:3px solid #17E38F;border-radius:50%;overflow:hidden;background:#0e1117;box-shadow:0 4px 15px #00000080,0 0 20px #17e38f66}.photo-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3)}.prisoner-label{font-size:20px!important;font-weight:700;color:#fff!important;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px;line-height:1.2;text-shadow:0 2px 8px rgba(0,0,0,.5);padding:0 10px;max-width:100%}.prisoner-id-number{font-size:16px!important;font-weight:900!important;color:#fff!important;font-family:Arial Black,Arial,sans-serif!important;letter-spacing:1px;margin-bottom:15px;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0 5px;max-width:100%;line-height:1.3}.status-badge{position:absolute;top:15px;right:15px;padding:6px 12px;border-radius:12px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 6px #0000004d;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.status-badge.pending-approval{background:#ffc107e6;color:#333}.status-badge.active{background:#28a745e6;color:#fff}.status-badge.released{background:#17a2b8e6;color:#fff}.status-badge.deceased{background:#6f42c1e6;color:#fff}.status-badge.transferred{background:#20c997e6;color:#fff}.status-badge.hospitalized{background:#e83e8ce6;color:#fff}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:30px}.page-info{font-size:14px;color:#b0b8c4;font-weight:600}.no-results{text-align:center;padding:60px 20px;color:#b0b8c4;font-size:16px}.loading{text-align:center;padding:60px 20px;color:#17e38f;font-size:16px;font-weight:600}.error-message{background:#dc354533;border:1px solid rgba(220,53,69,.4);color:#ff6b6b;padding:16px;border-radius:12px;margin-bottom:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-weight:600}.btn{padding:12px 24px;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-primary{background:linear-gradient(135deg,#17e38fe6,#00d9ffe6);color:#0e1117;box-shadow:0 4px 12px #17e38f66}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #17e38f99}.btn-secondary{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff}.btn-secondary:hover:not(:disabled){background:#ffffff26;transform:translateY(-2px)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important}@media(max-width:768px){.prisoner-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:15px}.search-form{flex-direction:column}}.graphical-hand-capture{display:flex;flex-direction:column;gap:1.5rem}.capture-mode-selector{display:flex;justify-content:center;gap:1rem;margin-bottom:1rem}.mode-button:hover{background:var(--card-bg, #1a1a1a);border-color:#3b82f6}.mode-button.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.hands-container{display:flex;justify-content:center;gap:4rem;margin:2rem 0;flex-wrap:wrap}.hand-diagram{display:flex;flex-direction:column;align-items:center;gap:1rem}.hand-title{font-size:1.2rem;font-weight:600;color:var(--text-primary, #fff);margin-bottom:.5rem}.hand-svg-container{position:relative;width:200px;height:280px}.hand-svg{width:100%;height:100%}.finger-path{fill:#4b5563;stroke:#6b7280;stroke-width:2;cursor:pointer;transition:all .3s}.finger-path:hover{fill:#5b6573;stroke:#3b82f6;stroke-width:3}.finger-path.captured{fill:#22c55e;stroke:#16a34a}.finger-path.missing{fill:#fb923c;stroke:#f97316}.finger-path.selected{fill:#3b82f6;stroke:#2563eb;stroke-width:3}.finger-path.all-complete,.palm.all-complete{fill:#22c55e!important;stroke:#16a34a!important;animation:pulse-green 2s ease-in-out infinite}.hand-svg.all-captured{filter:drop-shadow(0 0 10px rgba(34,197,94,.5))}@keyframes pulse-green{0%,to{opacity:1}50%{opacity:.85}}.finger-label{font-size:.75rem;fill:#fff;font-weight:600;pointer-events:none;text-anchor:middle}.capture-controls{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-top:1rem;padding:1.5rem;background:var(--card-bg, #1a1a1a);border:1px solid var(--border-color, #333);border-radius:8px}.selected-finger-info{text-align:center;margin-bottom:1rem}.selected-finger-name{font-size:1.2rem;font-weight:600;color:#3b82f6;margin-bottom:.5rem}.selected-finger-status{font-size:.9rem;color:var(--text-secondary, #aaa)}.capture-action-buttons{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.btn-capture-finger,.btn-mark-missing,.btn-clear-finger{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.btn-capture-finger{background:#3b82f6;color:#fff}.btn-capture-finger:hover:not(:disabled){background:#2563eb;transform:translateY(-2px);box-shadow:0 4px 12px #3b82f666}.btn-capture-finger:disabled{background:#4b5563;cursor:not-allowed;opacity:.6}.btn-mark-missing{background:#fb923c;color:#fff}.btn-mark-missing:hover:not(:disabled){background:#f97316;transform:translateY(-2px);box-shadow:0 4px 12px #fb923c66}.btn-clear-finger{background:#ef4444;color:#fff}.btn-clear-finger:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 4px 12px #ef444466}.capture-status-message{text-align:center;padding:1rem;border-radius:6px;font-size:.95rem;font-weight:500}.capture-status-message.capturing{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);color:#3b82f6}.capture-status-message.success{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#22c55e}.capture-status-message.error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444}.progress-indicator{display:flex;align-items:center;gap:.5rem}.spinner{width:20px;height:20px;border:3px solid rgba(59,130,246,.3);border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.legend{display:flex;justify-content:center;gap:2rem;margin-top:1.5rem;padding:1rem;background:var(--input-bg, #2a2a2a);border-radius:6px}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary, #aaa)}.legend-color{width:20px;height:20px;border-radius:4px;border:2px solid}.legend-color.uncaptured{background:#4b5563;border-color:#6b7280}.legend-color.captured{background:#22c55e;border-color:#16a34a}.legend-color.missing{background:#fb923c;border-color:#f97316}.legend-color.selected{background:#3b82f6;border-color:#2563eb}.fingerprint-summary{display:flex;justify-content:center;gap:2rem;padding:1rem;background:var(--input-bg, #2a2a2a);border-radius:6px;font-size:.95rem;color:var(--text-secondary, #aaa)}.completion-message{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:linear-gradient(135deg,#22c55e1a,#16a34a1a);border:2px solid #22c55e;border-radius:12px;margin-top:1rem;animation:slideIn .5s ease-out}.completion-icon{width:50px;height:50px;background:#22c55e;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;flex-shrink:0;animation:bounce 1s ease-in-out infinite}.completion-text{flex:1}.completion-text strong{display:block;font-size:1.2rem;color:#22c55e;margin-bottom:.25rem}.completion-text p{margin:0;color:var(--text-secondary, #aaa);font-size:.95rem}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@media(max-width:768px){.hands-container{gap:2rem}.hand-svg-container{width:150px;height:210px}.capture-action-buttons{flex-direction:column;width:100%}.btn-capture-finger,.btn-mark-missing,.btn-clear-finger{width:100%;justify-content:center}.legend{flex-direction:column;gap:.75rem}.fingerprint-summary{flex-direction:column;gap:.5rem;text-align:center}.completion-message{flex-direction:column;text-align:center}}.biometric-capture{display:flex;flex-direction:column;gap:2rem}.capture-mode-selector{display:flex;justify-content:center;gap:1rem;margin:1.5rem 0}.mode-button{padding:.75rem 2rem;border:2px solid var(--border-color, #333);border-radius:8px;background:var(--input-bg, #2a2a2a);color:var(--text-primary, #fff);font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:.5rem}.mode-button:hover{background:var(--card-bg, #1a1a1a);border-color:#3b82f6;transform:translateY(-2px)}.mode-button.active{background:#3b82f6;border-color:#3b82f6;color:#fff;box-shadow:0 4px 12px #3b82f666}.mode-icon{font-size:1.2rem}.biometric-section{background:var(--card-bg, #1a1a1a);border:1px solid var(--border-color, #333);border-radius:8px;padding:1.5rem}.biometric-section h4{margin:0 0 .5rem;color:var(--text-primary, #fff);font-size:1.1rem}.biometric-description{margin:0 0 1.5rem;color:var(--text-secondary, #aaa);font-size:.9rem}.capture-error{background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;color:#ef4444;display:flex;align-items:center;gap:.5rem;font-size:.9rem}.error-icon{font-size:1.2rem}.fingerprint-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:1rem}.hand-section h5{margin:0 0 1rem;color:var(--text-primary, #fff);font-size:1rem;text-align:center;padding-bottom:.5rem;border-bottom:2px solid var(--border-color, #333)}.finger-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--input-bg, #2a2a2a);border-radius:6px;margin-bottom:.5rem}.finger-label{color:var(--text-primary, #fff);font-size:.9rem;font-weight:500}.finger-actions{display:flex;gap:.5rem;align-items:center}.btn-capture,.btn-missing,.btn-remove{padding:.4rem .8rem;border:none;border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s;font-weight:500}.btn-capture{background:#3b82f6;color:#fff}.btn-capture:hover:not(:disabled){background:#2563eb}.btn-capture:disabled{background:#4b5563;cursor:not-allowed;opacity:.6}.btn-missing{background:#6b7280;color:#fff}.btn-missing:hover:not(:disabled){background:#4b5563}.btn-missing:disabled{opacity:.6;cursor:not-allowed}.btn-remove{background:#ef4444;color:#fff;padding:.4rem .6rem}.btn-remove:hover{background:#dc2626}.finger-status{display:flex;align-items:center;gap:.5rem}.status-badge{padding:.4rem .8rem;border-radius:4px;font-size:.85rem;font-weight:500}.status-captured{background:#22c55e33;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.status-missing{background:#fb923c33;color:#fb923c;border:1px solid rgba(251,146,60,.3)}.fingerprint-summary{display:flex;justify-content:space-around;padding:1rem;background:var(--input-bg, #2a2a2a);border-radius:6px;margin-top:1rem}.fingerprint-summary span{color:var(--text-secondary, #aaa);font-size:.9rem;font-weight:500}.signature-container{position:relative;width:100%;max-width:500px;margin:0 auto 1rem}.signature-canvas{width:100%;height:200px;border:2px dashed var(--border-color, #333);border-radius:6px;background:#fff;cursor:crosshair;display:block}.signature-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#999;font-size:.9rem;pointer-events:none}.btn-clear-signature{display:block;margin:0 auto;padding:.6rem 1.5rem;background:#6b7280;color:#fff;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s;font-weight:500}.btn-clear-signature:hover:not(:disabled){background:#4b5563}.btn-clear-signature:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.fingerprint-grid{grid-template-columns:1fr;gap:1.5rem}.finger-item{flex-direction:column;align-items:flex-start;gap:.5rem}.finger-actions{width:100%;justify-content:flex-end}.signature-canvas{height:150px}}.modal-content.prisoner-wizard{width:95%;max-width:none;max-height:90vh!important;display:flex;flex-direction:column;background:#0e1117fa;border:2px solid rgba(23,227,143,.3);border-radius:16px;box-shadow:0 10px 40px #000000b3,0 0 30px #17e38f33;overflow-y:auto!important;overflow-x:hidden!important}.modal-content.prisoner-wizard::-webkit-scrollbar{width:10px}.modal-content.prisoner-wizard::-webkit-scrollbar-track{background:#17e38f1a;border-radius:10px}.modal-content.prisoner-wizard::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#17e38f,#00d9ff);border-radius:10px}.modal-content.prisoner-wizard::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#00d9ff,#17e38f)}.wizard-progress{display:flex;justify-content:space-between;margin-bottom:0;padding:20px;background:#17e38f0d;border-radius:12px 12px 0 0;flex-shrink:0}.wizard-step:not(:last-child):after{content:"";position:absolute;top:15px;left:50%;width:100%;height:2px;background:#ffffff1a;z-index:-1}.modal-content.prisoner-wizard .modal-body{padding:0;overflow:visible!important;background:#0e1117}.wizard-step-content{padding:30px;background:#0e1117}.wizard-step-content h3{margin-top:0;margin-bottom:15px;color:#fff;font-size:24px;font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.5)}.wizard-step-content h4{margin-top:25px;margin-bottom:15px;color:#17e38f;font-size:18px;font-weight:600;text-shadow:0 0 10px rgba(23,227,143,.3)}.step-description{color:#b0b8c4;margin-bottom:25px;font-size:14px;line-height:1.6}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#fff;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;background:#1e222bcc;border:1px solid rgba(23,227,143,.3);border-radius:8px;font-size:14px;color:#fff;transition:all .3s ease}.form-group input::placeholder,.form-group textarea::placeholder{color:#6b7280}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#17e38f;background:#1e222bf2;box-shadow:0 0 20px #17e38f4d}.form-group input.error,.form-group select.error{border-color:#ff6b6b;box-shadow:0 0 10px #ff6b6b4d}.error-text{display:block;color:#ff6b6b;font-size:12px;margin-top:6px;font-weight:500}.file-name{display:block;color:#17e38f;font-size:12px;margin-top:6px;font-weight:500}.review-section{background:#1e222be6!important;border:1px solid rgba(23,227,143,.3);padding:20px;border-radius:12px;margin-bottom:20px;box-shadow:0 4px 12px #0000004d}.review-section h4{margin-top:0;margin-bottom:15px;color:#17e38f!important;font-size:18px;font-weight:600;text-shadow:0 0 10px rgba(23,227,143,.3)}.review-item{padding:8px 0;font-size:14px;color:#fff!important;border-bottom:1px solid rgba(255,255,255,.1)}.review-item strong{color:#17e38f!important;margin-right:8px}.review-item strong{color:#b0b8c4;margin-right:12px;min-width:150px;display:inline-block}.modal-footer{display:flex;justify-content:space-between;padding:25px 30px;border-top:1px solid rgba(23,227,143,.2);background:#17e38f08;border-radius:0 0 16px 16px;flex-shrink:0}.btn{padding:12px 28px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;box-shadow:0 0 20px #17e38f4d}.btn-primary:disabled{background:#ffffff1a;color:#6b7280;cursor:not-allowed;box-shadow:none}.btn-secondary{background:#ffffff0d;color:#fff;border:1px solid rgba(255,255,255,.2)}.btn-secondary:hover:not(:disabled){background:#ffffff1a;transform:translateY(-2px)}.error-message{background:#dc354533;color:#ff6b6b;padding:16px;border-radius:12px;margin-bottom:20px;border:1px solid rgba(220,53,69,.4);font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media(max-width:768px){.form-row{grid-template-columns:1fr}.wizard-progress{padding:0 10px}.step-label{font-size:10px}}.modal-content.edit-prisoner-modal{max-width:900px;max-height:90vh!important;display:flex;flex-direction:column;overflow-y:auto!important;overflow-x:hidden!important}.modal-content.edit-prisoner-modal::-webkit-scrollbar{width:10px}.modal-content.edit-prisoner-modal::-webkit-scrollbar-track{background:#17e38f1a;border-radius:10px}.modal-content.edit-prisoner-modal::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#17e38f,#00d9ff);border-radius:10px}.modal-content.edit-prisoner-modal::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#00d9ff,#17e38f)}.edit-prisoner-modal .modal-header{flex-shrink:0}.modal-content.edit-prisoner-modal .modal-body{padding:20px;overflow:visible!important}.edit-prisoner-modal .modal-footer{flex-shrink:0}.change-request-banner{background:linear-gradient(135deg,#ff9800,#ff5722);color:#fff;padding:15px;border-radius:8px;margin-bottom:20px}.change-request-banner strong{display:block;margin-bottom:8px;font-size:16px}.change-request-banner p{margin:0;font-size:14px;opacity:.95}.edit-prisoner-form{padding:0;margin:0}.form-section{margin-bottom:30px}.form-section h3{font-size:18px;font-weight:600;margin-bottom:15px;color:#333;border-bottom:2px solid #e0e0e0;padding-bottom:8px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.form-textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:14px;resize:vertical}.form-textarea:focus{outline:none;border-color:#4caf50}.modal-footer{display:flex;gap:10px;justify-content:flex-end;padding:20px;border-top:1px solid #e0e0e0;background:#fff}.prisoner-management-page{padding:40px;width:100%;background:transparent}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e9ecef}.page-header h1{margin:0 0 5px;font-size:32px;color:#333}.page-description{margin:0;color:#666;font-size:14px}.btn{padding:12px 24px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}@media(max-width:768px){.page-header{flex-direction:column;gap:15px}.page-header h1{font-size:24px}.btn{width:100%}}.password-confirm-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.password-confirm-modal{background:#fff;border-radius:12px;width:100%;max-width:480px;box-shadow:0 10px 40px #0000004d;animation:passwordModalSlideIn .3s ease-out}@keyframes passwordModalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.password-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid #e9ecef}.password-modal-header h3{margin:0;font-size:20px;font-weight:600;color:#333}.password-modal-close{background:none;border:none;font-size:28px;color:#999;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.password-modal-close:hover:not(:disabled){background-color:#f8f9fa;color:#333}.password-modal-close:disabled{opacity:.5;cursor:not-allowed}.password-modal-body{padding:24px}.password-modal-message{margin:0 0 20px;font-size:15px;line-height:1.6;color:#555}.password-input-group{margin-bottom:16px}.password-input-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#333}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input{width:100%;padding:12px 48px 12px 16px;font-size:15px;border:2px solid #dee2e6;border-radius:8px;transition:all .2s;font-family:inherit}.password-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.password-input:disabled{background-color:#f8f9fa;cursor:not-allowed;opacity:.7}.password-toggle-btn{position:absolute;right:12px;background:none;border:none;cursor:pointer;padding:4px;font-size:18px;color:#6c757d;transition:color .2s;display:flex;align-items:center;justify-content:center}.password-toggle-btn:hover:not(:disabled){color:#495057}.password-toggle-btn:disabled{opacity:.5;cursor:not-allowed}.password-textarea{width:100%;padding:12px 16px;font-size:15px;border:2px solid #dee2e6;border-radius:8px;transition:all .2s;font-family:inherit;resize:vertical;min-height:80px}.password-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.password-textarea:disabled{background-color:#f8f9fa;cursor:not-allowed;opacity:.7}.password-error-message{display:flex;align-items:center;gap:8px;padding:12px 16px;background-color:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;font-size:14px;margin-top:12px}.error-icon{font-size:18px;flex-shrink:0}.password-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px 24px}.password-btn{padding:10px 24px;font-size:15px;font-weight:500;border:none;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px;font-family:inherit}.password-btn:disabled{opacity:.6;cursor:not-allowed}.password-btn-cancel{background-color:#f8f9fa;color:#495057}.password-btn-cancel:hover:not(:disabled){background-color:#e9ecef}.password-btn-primary{background-color:#667eea;color:#fff}.password-btn-primary:hover:not(:disabled){background-color:#5568d3;box-shadow:0 4px 12px #667eea4d}.password-btn-success{background-color:#28a745;color:#fff}.password-btn-success:hover:not(:disabled){background-color:#218838;box-shadow:0 4px 12px #28a7454d}.password-btn-danger{background-color:#dc3545;color:#fff}.password-btn-danger:hover:not(:disabled){background-color:#c82333;box-shadow:0 4px 12px #dc35454d}.password-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:passwordSpinner .6s linear infinite}@keyframes passwordSpinner{to{transform:rotate(360deg)}}@media(max-width:768px){.password-confirm-modal{max-width:90%}.password-modal-header{padding:22px 22px 14px}.password-modal-body{padding:22px}.password-modal-footer{padding:14px 22px 22px}}@media(max-width:576px){.password-confirm-overlay{padding:16px}.password-confirm-modal{max-width:100%;margin:0}.password-modal-header{padding:20px 20px 12px}.password-modal-header h3{font-size:18px;line-height:1.3}.password-modal-close{width:36px;height:36px;font-size:24px}.password-modal-body{padding:20px}.password-modal-message{font-size:14px;margin-bottom:18px}.password-input,.password-textarea{font-size:16px;padding:14px 48px 14px 16px}.password-textarea{padding:14px 16px;min-height:100px}.password-modal-footer{padding:12px 20px 20px;flex-direction:column-reverse;gap:10px}.password-btn{width:100%;justify-content:center;min-height:48px;padding:12px 24px}}@media(max-width:400px){.password-confirm-overlay{padding:12px}.password-modal-header{padding:18px 18px 10px}.password-modal-header h3{font-size:17px}.password-modal-body{padding:18px}.password-modal-footer{padding:10px 18px 18px}}@media(max-width:768px)and (orientation:landscape){.password-confirm-overlay{padding:12px;align-items:flex-start;overflow-y:auto}.password-confirm-modal{margin:20px auto}.password-modal-body{max-height:60vh;overflow-y:auto}}@media(prefers-contrast:high){.password-confirm-modal{border:2px solid #000}.password-input,.password-textarea{border-width:3px}.password-btn{border:2px solid currentColor}}@media(prefers-reduced-motion:reduce){.password-confirm-modal{animation:none}.password-input,.password-textarea,.password-btn,.password-toggle-btn,.password-modal-close{transition:none}@keyframes passwordModalSlideIn{0%,to{opacity:1;transform:translateY(0)}}@keyframes passwordSpinner{to{transform:rotate(360deg)}}}@media print{.password-confirm-overlay{display:none}}.modal-overlay{position:fixed;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.approval-review-modal{background:linear-gradient(180deg,#0a0e14,#000);border:2px solid #17e38f;border-radius:16px;max-width:1400px;width:100%;max-height:95vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #000000e6,0 0 40px #17e38f66;overflow-y:auto;overflow-x:hidden}.approval-review-modal::-webkit-scrollbar{width:10px}.approval-review-modal::-webkit-scrollbar-track{background:#0000004d;border-radius:0 16px 16px 0}.approval-review-modal::-webkit-scrollbar-thumb{background:#17e38f80;border-radius:5px}.approval-review-modal::-webkit-scrollbar-thumb:hover{background:#17e38fb3}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:3px solid #17e38f;background:linear-gradient(135deg,#1a1f2e,#0f1419)}.modal-header h2{margin:0;color:#fff;font-size:26px;font-weight:800;text-transform:uppercase;letter-spacing:2px;text-shadow:0 0 10px rgba(23,227,143,.5)}.close-icon{background:#dc35451a;border:2px solid #dc3545;border-radius:50%;font-size:28px;color:#dc3545;cursor:pointer;padding:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;transition:all .3s;font-weight:700}.close-icon:hover{background:#dc3545;color:#fff;border-color:#dc3545;transform:rotate(90deg);box-shadow:0 0 20px #dc354599}.modal-body{padding:0;overflow:visible;background:#000}.modal-content{padding:0;background:#000;width:100%}.prisoner-header{background:linear-gradient(135deg,#1a1f2e,#0f1419);padding:32px;border-bottom:2px solid rgba(23,227,143,.3);display:flex;align-items:center;justify-content:space-between;gap:28px;box-shadow:none;border-left:none;border-right:none;border-top:none;border-radius:0;margin:0;width:100%;box-sizing:border-box}.prisoner-header-photo{width:140px;height:140px;border-radius:12px;overflow:hidden;border:4px solid #17e38f;flex-shrink:0;box-shadow:0 4px 12px #17e38f4d}.prisoner-header-photo img{width:100%;height:100%;object-fit:cover}.prisoner-header-photo .photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#17e38f,#0ea770);color:#fff;font-size:36px;font-weight:800;letter-spacing:2px}.prisoner-header-info{flex:1;display:flex;flex-direction:column;justify-content:center}.prisoner-header-info h2{margin:0 0 12px;color:#fff!important;font-size:32px;font-weight:800;text-shadow:0 0 10px rgba(23,227,143,.5);text-transform:uppercase;letter-spacing:1px}.prisoner-header-number{color:#17e38f;font-size:18px;font-family:Courier New,monospace;font-weight:700;background:#17e38f1a;padding:8px 12px;border-radius:8px;display:inline-block;margin-bottom:14px;border:2px solid #17e38f;box-shadow:0 0 10px #17e38f4d;width:fit-content}.prisoner-header-status{display:flex;align-items:center;padding:10px 20px;border-radius:24px;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:1px;background:#ffc107;color:#000;box-shadow:0 0 15px #ffc10799;margin-left:auto;flex-shrink:0}.modal-loading,.modal-error{text-align:center;padding:40px;color:#17e38f}.modal-error{color:#dc3545}.error-banner{background:#dc35451a;border:none;border-bottom:2px solid #dc3545;color:#dc3545;padding:16px 32px;border-radius:0;margin:0;box-shadow:none;width:100%;box-sizing:border-box}.photos-section{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:0;padding:32px;background:linear-gradient(135deg,#1a1f2e,#0f1419);border-bottom:2px solid rgba(23,227,143,.3);width:100%;box-sizing:border-box}.photo-item{text-align:center}.photo-item label{display:block;font-weight:700;color:#17e38f;margin-bottom:12px;font-size:16px;text-transform:uppercase;letter-spacing:1px;text-shadow:0 0 8px rgba(23,227,143,.5)}.photo-item img{width:100%;height:240px;object-fit:cover;border-radius:8px;border:3px solid #17e38f;box-shadow:0 0 20px #17e38f4d}.no-photo{width:100%;height:240px;background:#17e38f0d;border:2px dashed #17e38f;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#17e38f;font-size:16px;font-weight:600}.info-section{margin:0;background:linear-gradient(135deg,#1a1f2e,#0f1419);border-radius:0;padding:28px 32px;box-shadow:none;border-left:none;border-right:none;border-top:none;border-bottom:2px solid rgba(23,227,143,.3);width:100%;box-sizing:border-box}.info-section h3{margin:0 0 24px;color:#17e38f;font-size:20px;font-weight:800;padding-bottom:14px;border-bottom:3px solid #17e38f;display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:1px;text-shadow:0 0 10px rgba(23,227,143,.5)}.info-section h3:before{content:"";width:5px;height:24px;background:#17e38f;border-radius:3px;box-shadow:0 0 10px #17e38f99}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.info-item label{display:block;font-size:12px;color:#17e38f;font-weight:700;margin-bottom:8px;text-transform:uppercase;letter-spacing:1px}.info-item .value{font-size:16px;color:#fff;font-weight:600;background:#17e38f1a;padding:12px 16px;border-radius:8px;border:2px solid rgba(23,227,143,.3);box-shadow:0 0 10px #17e38f1a}.action-selection{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0;padding:28px 32px;background:linear-gradient(135deg,#1a1f2e,#0f1419);border-radius:0;box-shadow:none;border-left:none;border-right:none;border-top:2px solid rgba(23,227,143,.3);border-bottom:2px solid rgba(23,227,143,.3);width:100%;box-sizing:border-box}.approve-button,.request-changes-button,.reject-button{padding:18px 24px;border:none;border-radius:10px;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;justify-content:center;gap:8px;min-height:60px}.approve-button{background:linear-gradient(135deg,#28a745,#218838);color:#fff;box-shadow:0 4px 12px #28a74566}.approve-button:hover:not(:disabled){background:linear-gradient(135deg,#218838,#1e7e34);transform:translateY(-2px);box-shadow:0 6px 16px #28a74599}.request-changes-button{background:linear-gradient(135deg,#ffc107,#e0a800);color:#1a1a1a;box-shadow:0 4px 12px #ffc10766}.request-changes-button:hover:not(:disabled){background:linear-gradient(135deg,#e0a800,#d39e00);transform:translateY(-2px);box-shadow:0 6px 16px #ffc10799}.reject-button{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;box-shadow:0 4px 12px #dc354566}.reject-button:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#bd2130);transform:translateY(-2px);box-shadow:0 6px 16px #dc354599}.approve-button:disabled,.request-changes-button:disabled,.reject-button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:900px){.action-selection{grid-template-columns:1fr;gap:12px}}.action-panel{margin:0;padding:24px 32px;border-radius:0;border-left:none;border-right:none;border-top:2px solid rgba(23,227,143,.3);border-bottom:2px solid rgba(23,227,143,.3);background:linear-gradient(135deg,#1a1f2e,#0f1419);width:100%;box-sizing:border-box}.approve-panel{border-color:#28a745;box-shadow:0 0 20px #28a7454d}.changes-panel{border-color:#ffc107;box-shadow:0 0 20px #ffc1074d}.reject-panel{border-color:#dc3545;box-shadow:0 0 20px #dc35454d}.reject-warning{color:#dc3545;font-weight:700;background:#dc35451a;padding:12px;border-radius:8px;border:2px solid #dc3545;margin-bottom:15px}.reject-confirm-button{background:#dc3545!important;border-color:#dc3545!important}.reject-confirm-button:hover:not(:disabled){background:#c82333!important;border-color:#c82333!important;box-shadow:0 0 25px #dc354599!important}.action-panel h4{margin:0 0 10px;color:#17e38f;font-size:18px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.action-panel p{margin:0 0 15px;color:#fff;font-size:14px;line-height:1.6}.comments-textarea{width:100%;padding:12px;border:2px solid rgba(23,227,143,.3);border-radius:8px;font-family:inherit;font-size:14px;resize:vertical;margin-bottom:15px;background:#00000080;color:#fff}.comments-textarea:focus{outline:none;border-color:#17e38f;box-shadow:0 0 15px #17e38f4d}.action-buttons{display:flex;gap:10px}.confirm-button,.cancel-button{padding:14px 28px;border:2px solid;border-radius:8px;font-size:15px;font-weight:700;cursor:pointer;transition:all .3s;text-transform:uppercase;letter-spacing:.5px}.confirm-button{background:#28a745;border-color:#28a745;color:#fff;flex:1;box-shadow:0 0 15px #28a74566}.confirm-button:hover:not(:disabled){background:#218838;border-color:#218838;box-shadow:0 0 25px #28a74599;transform:translateY(-2px)}.confirm-button:disabled{opacity:.5;cursor:not-allowed}.cancel-button{background:transparent;border-color:#6c757d;color:#fff}.cancel-button:hover:not(:disabled){background:#6c757d;border-color:#6c757d;box-shadow:0 0 15px #6c757d66;transform:translateY(-2px)}.cancel-button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.approval-review-modal{max-width:100%;max-height:100vh;border-radius:0}.photos-section,.info-grid{grid-template-columns:1fr}.action-selection{flex-direction:column}}.approval-note-group{margin-bottom:20px}.approval-note-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:700;color:#17e38f;text-transform:uppercase;letter-spacing:.5px}.approval-note-textarea{width:100%;padding:12px;font-size:14px;border:2px solid rgba(23,227,143,.3);border-radius:8px;font-family:inherit;resize:vertical;transition:all .3s;background:#00000080;color:#fff}.approval-note-textarea:focus{outline:none;border-color:#28a745;box-shadow:0 0 15px #28a7454d}.approval-note-textarea:disabled{background-color:#0000004d;cursor:not-allowed;opacity:.5}.approval-review-modal>*{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}.approval-review-modal .modal-header,.approval-review-modal .modal-body,.approval-review-modal .modal-content,.approval-review-modal .prisoner-header,.approval-review-modal .photos-section,.approval-review-modal .info-section,.approval-review-modal .action-selection,.approval-review-modal .action-panel,.approval-review-modal .error-banner{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important}.modal-header h2,.modal-header h2 *,.modal-header *{color:#fff!important}.modal-body,.modal-content,.prisoner-header,.photos-section,.info-section,.action-selection,.action-panel{overflow:visible!important;max-height:none!important;height:auto!important}.pending-approvals-list{padding:20px}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.list-header h2{margin:0;color:#333;font-size:24px}.approval-count{background:#ffc107;color:#333;padding:8px 16px;border-radius:20px;font-weight:600;font-size:14px}@media(max-width:768px){.approvals-grid{grid-template-columns:1fr}.list-header{flex-direction:column;align-items:flex-start;gap:15px}}.approvals-page{min-height:100vh;background:#f5f5f5}.access-denied{text-align:center;padding:60px 20px;background:#1e222bcc;margin:40px auto;max-width:500px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.access-denied h2{margin:0 0 15px;color:#c00;font-size:24px}.access-denied p{margin:0;color:#666;font-size:16px}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.prisoner-unavailable-modal{background:#fff;border-radius:12px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d;animation:slideIn .3s ease-out;position:relative;z-index:10001}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.prisoner-unavailable-modal .modal-header{display:flex;align-items:center;gap:12px;padding:24px;border-bottom:2px solid #f0f0f0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px 12px 0 0}.prisoner-unavailable-modal .modal-icon{font-size:32px;line-height:1}.prisoner-unavailable-modal .modal-header h2{flex:1;margin:0;font-size:24px;font-weight:600}.prisoner-unavailable-modal .close-button{background:#fff3;border:none;color:#fff;font-size:28px;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.prisoner-unavailable-modal .close-button:hover{background:#ffffff4d}.prisoner-unavailable-modal .modal-body{padding:24px}.prisoner-unavailable-modal .prisoner-info{text-align:center;padding:16px;background:#f8f9fa;border-radius:8px;margin-bottom:24px}.prisoner-unavailable-modal .prisoner-info h3{margin:0 0 8px;font-size:20px;color:#2c3e50}.prisoner-unavailable-modal .prisoner-number{margin:0;color:#7f8c8d;font-size:14px}.prisoner-unavailable-modal .blocking-info{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.prisoner-unavailable-modal .info-section{display:flex;flex-direction:column;gap:6px}.prisoner-unavailable-modal .info-section label{font-size:12px;font-weight:600;text-transform:uppercase;color:#7f8c8d;letter-spacing:.5px}.prisoner-unavailable-modal .info-section .value{font-size:15px;color:#2c3e50;padding:10px 12px;background:#f8f9fa;border-radius:6px;border-left:3px solid #3498db}.prisoner-unavailable-modal .blocking-reason{border-left-color:#e74c3c;font-weight:500}.prisoner-unavailable-modal .status-badge{display:inline-block;padding:8px 16px;border-radius:20px;font-weight:600;font-size:13px;text-align:center;border:none}.prisoner-unavailable-modal .status-badge[data-type=hospital_order]{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.prisoner-unavailable-modal .status-badge[data-type=movement_request]{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff}.prisoner-unavailable-modal .details-text{line-height:1.6;border-left-color:#9b59b6}.prisoner-unavailable-modal .help-text{padding:16px;background:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-top:16px}.prisoner-unavailable-modal .help-text strong{display:block;margin-bottom:8px;color:#856404;font-size:14px}.prisoner-unavailable-modal .help-text p{margin:0;color:#856404;font-size:14px;line-height:1.5}.prisoner-unavailable-modal .modal-footer{padding:16px 24px;border-top:1px solid #f0f0f0;display:flex;justify-content:center;gap:12px}.prisoner-unavailable-modal .btn-primary{padding:12px 32px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.prisoner-unavailable-modal .btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.prisoner-unavailable-modal .btn-primary:active{transform:translateY(0)}@media(max-width:768px){.prisoner-unavailable-modal{width:95%;max-height:95vh}.prisoner-unavailable-modal .modal-header{padding:20px}.prisoner-unavailable-modal .modal-header h2{font-size:20px}.prisoner-unavailable-modal .modal-body{padding:20px}}.movement-wizard{width:95%;max-width:none;max-height:90vh;overflow-y:auto;background:#0e1117fa;border:2px solid rgba(23,227,143,.3);border-radius:16px;box-shadow:0 10px 40px #000000b3,0 0 30px #17e38f33}.wizard-step-content{padding:30px 40px;min-height:400px}.prisoner-list{max-height:400px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.photo-placeholder{font-size:32px;color:#17e38f}.current-location{padding:12px 16px;background:#17e38f1a;border-left:3px solid #17E38F;border-radius:8px;margin-bottom:20px;color:#fff;font-size:14px}.prison-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px;max-height:400px;overflow-y:auto}.prison-card{padding:20px;background:#1e222b99;border:2px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .3s ease;text-align:center;position:relative}.prison-card:hover{border-color:#17e38f66;background:#1e222bcc;transform:translateY(-5px)}.prison-card.selected{border-color:#17e38f;background:#17e38f1a;box-shadow:0 0 20px #17e38f33}.prison-icon{font-size:48px;margin-bottom:12px}.prison-name{font-size:16px;font-weight:600;color:#fff;margin-bottom:6px}.prison-location{font-size:13px;color:#b0b8c4}.form-group input,.form-group textarea{width:100%;padding:12px 16px;background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:8px;color:#fff;font-size:14px;font-family:inherit;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#17e38f;box-shadow:0 0 0 3px #17e38f1a}.form-group input.error,.form-group textarea.error{border-color:#dc143c}.field-error{display:block;margin-top:6px;color:#dc143c;font-size:13px}.review-section{display:flex;flex-direction:column;gap:20px}.review-card{background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:12px;padding:20px}.review-item .value{color:#fff;font-weight:500;font-size:14px;text-align:right}.transfer-route{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0}.route-label{font-size:12px;color:#b0b8c4;margin-bottom:6px;text-transform:uppercase;letter-spacing:1px}.route-value{font-size:16px;font-weight:600;color:#fff;margin-bottom:4px}.route-sublabel{font-size:13px;color:#b0b8c4}.btn-primary,.btn-secondary,.btn-success{padding:12px 32px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.search-suggestion{font-size:14px;color:#6b7280;font-style:italic}.signature-instruction{color:#b0b8c4;font-size:14px;margin-bottom:15px}.signature-container{position:relative;display:flex;flex-direction:column;gap:10px}.signature-canvas{width:100%;max-width:600px;height:200px;border:2px solid rgba(23,227,143,.3);border-radius:8px;background:#1e222b99;cursor:crosshair;touch-action:none}.signature-canvas:hover{border-color:#17e38f80}.btn-clear-signature{align-self:flex-start;padding:8px 16px;background:#dc143c1a;border:1px solid rgba(220,20,60,.3);border-radius:6px;color:#dc143c;font-size:13px;font-weight:500;cursor:pointer;transition:all .3s ease}.btn-clear-signature:hover{background:#dc143c33;border-color:#dc143c80}.prisoner-list::-webkit-scrollbar,.prison-grid::-webkit-scrollbar,.movement-wizard::-webkit-scrollbar{width:8px}.prisoner-list::-webkit-scrollbar-track,.prison-grid::-webkit-scrollbar-track,.movement-wizard::-webkit-scrollbar-track{background:#1e222b66;border-radius:4px}.prisoner-list::-webkit-scrollbar-thumb,.prison-grid::-webkit-scrollbar-thumb,.movement-wizard::-webkit-scrollbar-thumb{background:#17e38f4d;border-radius:4px}.prisoner-list::-webkit-scrollbar-thumb:hover,.prison-grid::-webkit-scrollbar-thumb:hover,.movement-wizard::-webkit-scrollbar-thumb:hover{background:#17e38f80}@media(max-width:768px){.movement-wizard{max-width:95%;margin:20px auto}.wizard-progress{margin:20px;padding:15px}.wizard-step-content{padding:20px}.prison-grid{grid-template-columns:1fr}.transfer-route{flex-direction:column;gap:10px}.route-arrow{transform:rotate(90deg)}}.photo-modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10001;padding:20px}.photo-modal-content{background:#0e1117fa;border:2px solid rgba(23,227,143,.3);border-radius:16px;padding:30px;max-width:500px;width:100%;box-shadow:0 10px 40px #000000b3;text-align:center}.photo-modal-content h3{margin:0 0 20px;color:#17e38f;font-size:22px;font-weight:600}.photo-placeholder-large{font-size:120px;color:#17e38f}.photo-modal-info{margin-bottom:25px;text-align:left;background:#1e222b99;padding:20px;border-radius:12px;border:1px solid rgba(23,227,143,.2)}.photo-modal-label{color:#b0b8c4;font-size:14px}.photo-modal-value{color:#fff;font-weight:600;font-size:14px}.photo-modal-actions{display:flex;gap:15px;justify-content:center}.photo-modal-btn{padding:12px 32px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.photo-modal-btn-confirm{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117}.photo-modal-btn-confirm:hover{transform:translateY(-2px);box-shadow:0 5px 20px #17e38f66}.photo-modal-btn-cancel{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.photo-modal-btn-cancel:hover{background:#ffffff26;border-color:#ffffff4d}.fingerprint-search-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.fingerprint-search-modal{background:#1a1d24;border:2px solid #17E38F;border-radius:20px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #17e38f4d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:2px solid #17E38F;background:linear-gradient(135deg,#1a1d24,#2a2d34)}.modal-header h2{color:#17e38f;font-size:24px;margin:0;font-weight:700}.close-btn{background:none;border:none;color:#fff;font-size:28px;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s}.close-btn:hover{background:#ffffff1a;transform:rotate(90deg)}.modal-body{padding:30px}.fingerprint-scanner{background:#0e1117;border:2px solid #17E38F;border-radius:15px;padding:40px;text-align:center;margin-bottom:30px;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center}.fingerprint-icon{font-size:80px;margin-bottom:20px;animation:pulse 2s infinite}.fingerprint-icon.scanning{animation:scan 1.5s infinite}@keyframes scan{0%,to{transform:scale(1) rotate(0);filter:brightness(1)}50%{transform:scale(1.2) rotate(10deg);filter:brightness(1.5)}}.scanner-idle p,.scanner-active p,.scanner-success p{color:#fff;font-size:18px;margin-bottom:20px}.scanner-animation{width:100px;height:100px;border:4px solid #17E38F;border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite;margin-top:20px}.scanner-success .fingerprint-icon{color:#17e38f;animation:none}.scanner-success button{margin:10px}.scanner-error{color:#f44}.error-message{color:#f44;font-size:16px;margin-bottom:20px;padding:15px;background:#ff44441a;border:1px solid #ff4444;border-radius:8px}.scanner-instructions{background:#0e1117;border:1px solid #2a2d34;border-radius:10px;padding:20px}.scanner-instructions h3{color:#17e38f;font-size:18px;margin-bottom:15px}.scanner-instructions ol{color:#fff;padding-left:20px;margin:0}.scanner-instructions li{margin-bottom:10px;line-height:1.6}.edit-movement-modal{max-width:800px;max-height:90vh;overflow-y:auto;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003}.edit-movement-modal .modal-header{padding:20px 24px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#fff;z-index:10}.edit-movement-modal .modal-header h2{margin:0;font-size:24px;color:#333}.edit-movement-modal .close-btn{background:none;border:none;font-size:28px;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.edit-movement-modal .close-btn:hover{background:#f5f5f5;color:#333}.edit-movement-modal .modal-body{padding:24px}.edit-movement-modal .change-request-banner{background:#fff3cd;border:1px solid #ffc107;border-radius:8px;padding:16px;margin-bottom:24px}.edit-movement-modal .change-request-banner strong{display:block;color:#856404;margin-bottom:8px;font-size:16px}.edit-movement-modal .change-request-banner p{margin:0;color:#856404;line-height:1.5}.edit-movement-form{display:flex;flex-direction:column;gap:24px}.edit-movement-form .form-section{display:flex;flex-direction:column;gap:16px}.edit-movement-form .form-section h3{margin:0;font-size:18px;color:#333;border-bottom:2px solid #4CAF50;padding-bottom:8px}.edit-movement-form .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.edit-movement-form .form-group{display:flex;flex-direction:column;gap:8px}.edit-movement-form .form-group label{font-weight:500;color:#555;font-size:14px}.edit-movement-form .form-input,.edit-movement-form .form-textarea{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .2s}.edit-movement-form .form-input:focus,.edit-movement-form .form-textarea:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.edit-movement-form .form-input.disabled{background:#f5f5f5;color:#666;cursor:not-allowed}.edit-movement-form .form-textarea{resize:vertical;min-height:80px}.edit-movement-modal .modal-footer{display:flex;gap:12px;justify-content:flex-end;padding-top:20px;border-top:1px solid #e0e0e0;margin-top:24px}.edit-movement-modal .btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.edit-movement-modal .btn:disabled{opacity:.6;cursor:not-allowed}.edit-movement-modal .btn-secondary{background:#6c757d;color:#fff}.edit-movement-modal .btn-secondary:hover:not(:disabled){background:#5a6268}.edit-movement-modal .btn-success{background:#28a745;color:#fff}.edit-movement-modal .btn-success:hover:not(:disabled){background:#218838}.edit-movement-modal .btn-primary{background:#007bff;color:#fff}.edit-movement-modal .btn-primary:hover:not(:disabled){background:#0069d9}.edit-movement-modal::-webkit-scrollbar{width:8px}.edit-movement-modal::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.edit-movement-modal::-webkit-scrollbar-thumb{background:#4caf50;border-radius:10px}.edit-movement-modal::-webkit-scrollbar-thumb:hover{background:#45a049}@media(max-width:768px){.edit-movement-modal{max-width:95%;max-height:95vh}.edit-movement-form .form-grid{grid-template-columns:1fr}.edit-movement-modal .modal-footer{flex-direction:column}.edit-movement-modal .btn{width:100%}}.movements-page{padding:40px;width:100%;background:transparent;min-height:100vh}.page-header button .button-text{text-align:center!important;width:100%!important;display:block!important}.movements-page h1{color:#fff!important}.search-form{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.status-filters{display:flex;gap:12px;margin-bottom:32px;flex-wrap:wrap}.search-form{display:flex;gap:12px;flex:1;min-width:300px}.search-form input{flex:1;background:#0e1117cc;border:1px solid rgba(23,227,143,.3);color:#fff;padding:12px 16px;border-radius:8px;font-size:14px}.search-form input:focus{outline:none;border-color:#17e38f99;box-shadow:0 0 20px #17e38f4d}.search-form input::placeholder{color:#6b7280}.search-form button,.filter-select{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;font-weight:700;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;transition:all .3s ease;box-shadow:0 0 20px #17e38f4d}.search-form button:hover,.filter-select:hover{box-shadow:0 0 30px #17e38f80;transform:translateY(-2px)}.filter-select{background:#1e222bcc;color:#fff;border:1px solid rgba(23,227,143,.3);padding:12px 16px;cursor:pointer}.movement-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;padding:20px 0}.movement-card{background:#1e222bcc;border:2px solid rgba(23,227,143,.3);border-radius:16px;padding:20px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #0000004d;position:relative}.movement-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #17e38f66;border-color:#17e38f99}.movement-status-badge{position:absolute;top:12px;right:12px}.movement-prisoner-info{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(23,227,143,.2)}.movement-route{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding:12px;background:#0e111799;border-radius:8px}.route-label{font-size:11px;color:#b0b8c4;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.route-value{font-size:14px;font-weight:600;color:#fff}.route-arrow{font-size:24px;color:#17e38f}.movement-date{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:8px 12px;background:#0e111766;border-radius:6px}.btn-download-doc{width:100%;padding:10px;background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;font-weight:700;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;font-size:13px}.btn-download-doc:hover{box-shadow:0 0 20px #17e38f80;transform:translateY(-2px)}.prisoner-info-with-photo{display:flex;gap:20px;align-items:flex-start}.modal-prisoner-photo{width:100px;height:100px;border-radius:12px;overflow:hidden;border:3px solid rgba(23,227,143,.5);box-shadow:0 0 20px #17e38f4d;flex-shrink:0}.modal-prisoner-photo img{width:100%;height:100%;object-fit:cover}.prisoner-info-with-photo .detail-grid{flex:1}.route-visual{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;background:#0e111799;border:1px solid rgba(23,227,143,.2);border-radius:12px}.route-point-large{flex:1;text-align:center}.point-label{font-size:12px;color:#b0b8c4;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.point-value{font-size:16px;font-weight:600;color:#fff}.route-arrow-large{font-size:32px;color:#17e38f}.timeline{display:flex;flex-direction:column;gap:16px}.timeline-item{display:flex;gap:16px;position:relative}.timeline-item:not(:last-child):after{content:"";position:absolute;left:15px;top:32px;bottom:-16px;width:2px;background:#17e38f4d}.timeline-marker{width:32px;height:32px;border-radius:50%;background:#17e38f;color:#0e1117;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0;z-index:1}.timeline-item.rejected .timeline-marker{background:#ef4444;color:#fff}.timeline-content{flex:1;padding-top:4px}.timeline-title{font-weight:600;color:#fff;margin-bottom:4px}.timeline-date{font-size:13px;color:#b0b8c4;font-family:Courier New,monospace}.timeline-notes{margin-top:8px;padding:12px;background:#0e111799;border:1px solid rgba(23,227,143,.2);border-radius:8px;font-size:14px;color:#fff}@media(max-width:768px){.movements-page{padding:20px}.page-header{flex-direction:column;align-items:stretch;gap:16px}.page-header button{width:100%}.filters-section{flex-direction:column}.search-form{min-width:100%}.movement-cards-grid{grid-template-columns:1fr}.route-visual{flex-direction:column;gap:12px}.route-arrow-large{transform:rotate(90deg)}}.movement-tabs{display:flex;gap:8px;margin-bottom:24px;padding:8px;background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:12px}.tab-button{flex:1;padding:12px 24px;background:transparent;color:#fff9;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.tab-button:hover{background:#17e38f1a;color:#ffffffe6}.tab-button.active{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;box-shadow:0 0 20px #17e38f4d}.btn-confirm-intake{width:100%;padding:10px;margin-top:12px;background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-confirm-intake:hover{box-shadow:0 0 20px #17e38f80;transform:translateY(-2px)}.btn-approve-final{width:100%;padding:10px;margin-top:12px;background:linear-gradient(135deg,gold,orange);color:#0e1117;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-approve-final:hover{box-shadow:0 0 20px #ffd70080;transform:translateY(-2px)}.movements-page .changes-requested-banner{background:linear-gradient(135deg,#fff3cd,#ffe69c);border:2px solid #ffc107;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 4px 12px #ffc10733}.movements-page .changes-requested-banner .banner-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.movements-page .changes-requested-banner .banner-icon{font-size:24px}.movements-page .changes-requested-banner .banner-header strong{font-size:18px;color:#856404}.movements-page .changes-requested-banner .banner-content p{margin:0 0 12px;color:#856404;font-size:14px}.movements-page .changes-requested-banner .changes-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.movements-page .changes-requested-banner .changes-list li{background:#fff;border:1px solid #ffc107;border-radius:8px;padding:12px 16px;cursor:pointer;transition:all .2s;display:flex;justify-content:space-between;align-items:center}.movements-page .changes-requested-banner .changes-list li:hover{background:#fff8e1;border-color:#ff9800;transform:translate(4px);box-shadow:0 2px 8px #ff980033}.movements-page .changes-requested-banner .movement-info{font-weight:600;color:#333}.movements-page .changes-requested-banner .movement-route{font-size:13px;color:#666}.report-builder{background:#1e222bcc;border:2px solid rgba(23,227,143,.2);border-radius:12px;padding:24px;box-shadow:0 6px 20px #00000080,0 0 30px #17e38f1a;margin-bottom:20px}.report-builder-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid rgba(23,227,143,.2)}.report-builder-header h3{margin:0;color:#fff;font-size:1.2rem;font-weight:700;text-shadow:0 0 10px rgba(23,227,143,.4)}.btn-clear{padding:8px 16px;background:#ff4c4c1a;border:1px solid rgba(255,76,76,.3);border-radius:8px;cursor:pointer;font-size:.9rem;color:#ff4c4c;transition:all .3s ease;font-weight:600}.btn-clear:hover{background:#ff4c4c33;box-shadow:0 0 15px #ff4c4c4d;transform:translateY(-2px)}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.filter-group label{font-weight:600;margin-bottom:8px;color:#b0b8c4;font-size:.9rem}.filter-group input[type=text],.filter-group input[type=date],.filter-group select{padding:10px;border:1px solid rgba(23,227,143,.2);border-radius:8px;font-size:.95rem;transition:all .3s ease;background:#0e111799;color:#fff}.filter-group input[type=text]:focus,.filter-group input[type=date]:focus,.filter-group select:focus{outline:none;border-color:#17e38f;box-shadow:0 0 15px #17e38f4d}.checkbox-group{display:flex;flex-direction:column;gap:8px}.checkbox-label{display:flex;align-items:center;cursor:pointer;padding:6px;border-radius:4px;transition:background-color .2s}.checkbox-label:hover{background-color:#f5f5f5}.checkbox-label input[type=checkbox]{margin-right:8px;cursor:pointer;width:16px;height:16px}.checkbox-label span{font-size:.9rem;color:#555}.report-builder-actions{display:flex;justify-content:flex-end;padding-top:15px;border-top:1px solid rgba(23,227,143,.2)}.btn-primary{padding:12px 24px;background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:700;transition:all .3s ease;box-shadow:0 0 20px #17e38f66}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 30px #17e38f99}.btn-primary:disabled{background:#b0b8c433;color:#6b7280;cursor:not-allowed;box-shadow:none}@media(max-width:768px){.filter-grid{grid-template-columns:1fr}.report-builder-header{flex-direction:column;align-items:flex-start;gap:10px}}.report-preview{background:#1e222bcc;border:2px solid rgba(23,227,143,.2);border-radius:12px;padding:24px;box-shadow:0 6px 20px #00000080,0 0 30px #17e38f1a}.report-preview.loading,.report-preview.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:#b0b8c4}.loading-spinner{width:40px;height:40px;border:4px solid rgba(23,227,143,.2);border-top:4px solid #17E38F;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:15px;box-shadow:0 0 20px #17e38f66}.empty-state{text-align:center;color:#999}.empty-state svg{color:#ddd;margin-bottom:15px}.empty-state h3{margin:10px 0;color:#666}.empty-state p{color:#999;font-size:.9rem}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid rgba(23,227,143,.2)}.report-info h3{margin:0 0 5px;color:#fff;font-size:1.2rem;font-weight:700;text-shadow:0 0 10px rgba(23,227,143,.4)}.record-count{margin:0;color:#b0b8c4;font-size:.9rem}.table-container{overflow-x:auto;margin-bottom:20px}.report-table{width:100%;border-collapse:collapse;font-size:.9rem}.report-table thead{background:#17e38f1a}.report-table th{padding:12px;text-align:left;font-weight:700;color:#17e38f;border-bottom:2px solid rgba(23,227,143,.3);white-space:nowrap;text-shadow:0 0 8px rgba(23,227,143,.4)}.report-table td{padding:12px;border-bottom:1px solid rgba(23,227,143,.1);color:#fff}.report-table tbody tr:hover{background-color:#17e38f0d}.prisoner-number,.document-number{font-family:Courier New,monospace;font-weight:600;color:#c00}.status-badge,.type-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:600;text-transform:uppercase;white-space:nowrap}.status-badge.status-pending_approval{background:#fff3cd;color:#856404}.status-badge.status-active{background:#d4edda;color:#155724}.status-badge.status-released{background:#d1ecf1;color:#0c5460}.status-badge.status-deceased{background:#f8d7da;color:#721c24}.status-badge.status-transferred{background:#e2e3e5;color:#383d41}.status-badge.status-hospitalized{background:#cce5ff;color:#004085}.status-badge.status-pending{background:#fff3cd;color:#856404}.status-badge.status-approved{background:#d4edda;color:#155724}.status-badge.status-rejected{background:#f8d7da;color:#721c24}.status-badge.status-executed{background:#d1ecf1;color:#0c5460}.type-badge.type-transfer{background:#e2e3e5;color:#383d41}.type-badge.type-hospital{background:#cce5ff;color:#004085}.type-badge.type-release{background:#d1ecf1;color:#0c5460}.type-badge.type-deceased{background:#f8d7da;color:#721c24}.pagination{display:flex;justify-content:center;align-items:center;gap:15px;padding-top:15px;border-top:1px solid rgba(23,227,143,.2)}.pagination-btn{padding:8px 16px;background:#1e222bcc;border:1px solid rgba(23,227,143,.3);border-radius:8px;cursor:pointer;font-size:.9rem;color:#b0b8c4;transition:all .3s ease;font-weight:600}.pagination-btn:hover:not(:disabled){background:#17e38f1a;border-color:#17e38f;color:#17e38f;box-shadow:0 0 15px #17e38f4d}.pagination-btn:disabled{opacity:.3;cursor:not-allowed}.pagination-info{font-size:.9rem;color:#b0b8c4;font-weight:600}@media(max-width:768px){.report-table{font-size:.8rem}.report-table th,.report-table td{padding:8px}.status-badge,.type-badge{font-size:.7rem;padding:3px 8px}}.report-export{background:#1e222bcc;border:2px solid rgba(23,227,143,.2);border-radius:12px;padding:24px;box-shadow:0 6px 20px #00000080,0 0 30px #17e38f1a;margin-bottom:20px}.export-header{margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid rgba(23,227,143,.2)}.export-header h4{margin:0;color:#fff;font-size:1.1rem;font-weight:700;text-shadow:0 0 10px rgba(23,227,143,.4)}.export-options{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.format-option{display:flex;align-items:center;padding:12px;border:2px solid rgba(23,227,143,.2);border-radius:8px;cursor:pointer;transition:all .3s ease;background:#0e111799}.format-option:hover{border-color:#17e38f;background-color:#17e38f1a;box-shadow:0 0 15px #17e38f33}.format-option input[type=radio]{margin-right:12px;cursor:pointer;width:18px;height:18px}.format-option input[type=radio]:disabled{cursor:not-allowed}.format-info{display:flex;flex-direction:column}.format-name{font-weight:700;color:#fff;font-size:1rem;margin-bottom:2px}.format-desc{font-size:.85rem;color:#b0b8c4}.btn-export{width:100%;padding:12px 20px;background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease;box-shadow:0 0 20px #17e38f66}.btn-export:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 30px #17e38f99}.btn-export:disabled{background:#b0b8c433;color:#6b7280;cursor:not-allowed;box-shadow:none}.btn-export svg{flex-shrink:0}.export-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:768px){.export-options{gap:10px}.format-option{padding:10px}.format-name{font-size:.95rem}.format-desc{font-size:.8rem}}.reports-page{padding:40px;width:100%;background:transparent}.page-header{margin-bottom:30px;padding:32px;background:#1e222bcc;border:2px solid rgba(23,227,143,.2);border-radius:16px;box-shadow:0 6px 20px #00000080,0 0 30px #17e38f1a}.page-header h1{margin:0 0 8px;color:#fff;font-size:2rem;font-weight:700;text-shadow:0 0 15px rgba(23,227,143,.4)}.page-header p{margin:0;color:#b0b8c4;font-size:1rem}.tabs{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid rgba(23,227,143,.2);background:#1e222b99;padding:8px;border-radius:12px 12px 0 0}.tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:1rem;font-weight:600;color:#b0b8c4;transition:all .3s ease;margin-bottom:-2px;border-radius:8px}.tab:hover{color:#17e38f;background:#17e38f1a;box-shadow:0 0 15px #17e38f33}.tab.active{color:#17e38f;border-bottom-color:#17e38f;background:#17e38f26;box-shadow:0 0 20px #17e38f4d;text-shadow:0 0 10px rgba(23,227,143,.5)}.tab svg{flex-shrink:0}.tab-content{animation:fadeIn .3s ease-in}.tab-header{margin-bottom:30px;padding:24px;background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:12px;box-shadow:0 0 20px #17e38f1a}.tab-header h2{margin:0 0 8px;color:#fff;font-size:1.5rem;font-weight:700;text-shadow:0 0 10px rgba(23,227,143,.4)}.tab-header p{margin:0;color:#b0b8c4;font-size:.95rem}.report-layout{display:grid;grid-template-columns:350px 1fr;gap:20px;align-items:start}.report-sidebar{display:flex;flex-direction:column;gap:20px;position:sticky;top:20px}.report-content{min-height:400px}.report-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;background:#1e222b99;border:2px solid rgba(23,227,143,.2);border-radius:16px;padding:40px;box-shadow:0 6px 20px #00000080,0 0 30px #17e38f1a;text-align:center;color:#b0b8c4}.report-placeholder svg{color:#17e38f4d;margin-bottom:20px;filter:drop-shadow(0 0 10px rgba(23,227,143,.3))}.report-placeholder h3{margin:0 0 10px;color:#fff;font-size:1.3rem;font-weight:700;text-shadow:0 0 10px rgba(23,227,143,.3)}.report-placeholder p{margin:0;color:#b0b8c4;font-size:.95rem}@media(max-width:1200px){.report-layout{grid-template-columns:320px 1fr}}@media(max-width:992px){.report-layout{grid-template-columns:1fr}.report-sidebar{position:static}}@media(max-width:768px){.reports-page{padding:15px}.page-header h1{font-size:1.5rem}.tabs{flex-wrap:wrap;gap:5px}.tab{padding:10px 15px;font-size:.9rem}.tab svg{width:16px;height:16px}.tab-header h2{font-size:1.3rem}}.audit-log-viewer{padding:20px;max-width:1400px;margin:0 auto}.audit-header{margin-bottom:30px}.audit-header h2{margin:0 0 10px;color:#333;font-size:28px}.audit-description{color:#666;margin:0;font-size:14px}.audit-filters{background:#f8f9fa;padding:20px;border-radius:8px;margin-bottom:20px}.filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:15px}.filter-group{display:flex;flex-direction:column}.filter-group label{font-size:13px;font-weight:600;color:#555;margin-bottom:5px}.filter-group input,.filter-group select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#c00}.filter-actions{display:flex;gap:10px;flex-wrap:wrap}.btn{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary{background:#c00;color:#fff}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#5a6268}.btn-outline{background:#1e222bcc;color:#b0b8c4;border:2px solid rgba(23,227,143,.3);font-weight:600}.btn-outline:hover:not(:disabled){background:#f8f9fa}.btn-sm{padding:6px 12px;font-size:13px}.alert{padding:12px 16px;border-radius:4px;margin-bottom:20px}.audit-summary{margin-bottom:15px;color:#666;font-size:14px}.audit-summary p{margin:0}.audit-table-container{background:#1e222bcc;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a;margin-bottom:20px}.audit-table{width:100%;border-collapse:collapse}.audit-table thead{background:#f8f9fa}.audit-table th{padding:12px 16px;text-align:left;font-size:13px;font-weight:600;color:#555;border-bottom:2px solid #dee2e6}.audit-table td{padding:12px 16px;border-bottom:1px solid #f0f0f0;font-size:14px;vertical-align:top}.audit-table tbody tr:hover{background:#f8f9fa}.audit-table tbody tr:last-child td{border-bottom:none}.timestamp{white-space:nowrap;color:#666;font-size:13px}.user-info{display:flex;flex-direction:column;gap:2px}.user-name{font-weight:600;color:#333}.user-rank{font-size:12px;color:#666}.role-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600;text-transform:capitalize}.role-admin{background:#e3f2fd;color:#1976d2}.role-warden{background:#f3e5f5;color:#7b1fa2}.role-registrar{background:#e8f5e9;color:#388e3c}.role-redcross{background:#ffebee;color:#c62828}.role-hospital_user{background:#fff3e0;color:#f57c00}.action-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:600;text-transform:capitalize;white-space:nowrap}.badge-success{background:#d4edda;color:#155724}.badge-info{background:#d1ecf1;color:#0c5460}.badge-danger{background:#f8d7da;color:#721c24}.badge-primary{background:#cce5ff;color:#004085}.badge-secondary{background:#e2e3e5;color:#383d41}.badge-default{background:#f8f9fa;color:#6c757d}.target-info{display:flex;flex-direction:column;gap:2px}.target-type{font-weight:600;color:#333;text-transform:capitalize}.target-id{font-size:12px;color:#666}.ip-address{font-family:Courier New,monospace;font-size:13px;color:#666}.payload-details{cursor:pointer}.payload-details summary{color:#c00;font-size:13px;font-weight:600;-webkit-user-select:none;user-select:none}.payload-details summary:hover{text-decoration:underline}.payload-details pre{margin-top:8px;padding:10px;background:#f8f9fa;border-radius:4px;font-size:12px;overflow-x:auto;max-width:400px}.no-details{color:#ccc}.loading-spinner{text-align:center;padding:60px 20px;color:#666;font-size:16px}.no-results{text-align:center;padding:60px 20px;color:#999}.no-results p{margin:0;font-size:16px}.audit-pagination{display:flex;justify-content:center;align-items:center;gap:15px;padding:20px 0}.page-info{font-size:14px;color:#666;font-weight:600}@media(max-width:1200px){.audit-table{font-size:13px}.audit-table th,.audit-table td{padding:10px 12px}}@media(max-width:768px){.audit-log-viewer{padding:15px}.filter-row{grid-template-columns:1fr}.audit-table-container{overflow-x:auto}.audit-table{min-width:900px}.filter-actions{flex-direction:column}.filter-actions .btn{width:100%}}.audit-logs-page{min-height:100vh;background:#f5f5f5;padding:20px 0}.sound-settings{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:24px;animation:fadeInUp .4s ease-out}.settings-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.1)}.settings-header h3{font-size:20px;font-weight:600;color:#f1f5f9;margin:0 0 8px}.settings-header p{font-size:14px;color:#94a3b8;margin:0}.settings-content{display:flex;flex-direction:column;gap:24px}.setting-item{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:16px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:12px;transition:all .25s ease}.setting-item:hover{background:#ffffff0d;border-color:#ffffff1a}.setting-info{flex:1;min-width:0}.setting-label{display:block;font-size:15px;font-weight:600;color:#f1f5f9;margin-bottom:4px}.setting-description{font-size:13px;color:#94a3b8;margin:0}.toggle-switch{position:relative;width:52px;height:28px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:14px;cursor:pointer;transition:all .3s ease;flex-shrink:0}.toggle-switch:hover{background:#ffffff26}.toggle-switch.active{background:linear-gradient(135deg,#22c55e,#16a34a);border-color:transparent}.toggle-slider{position:absolute;top:2px;left:2px;width:22px;height:22px;background:#fff;border-radius:50%;transition:transform .3s ease;box-shadow:0 2px 4px #0003}.toggle-switch.active .toggle-slider{transform:translate(24px)}.volume-control{display:flex;align-items:center;gap:12px;min-width:250px}.volume-icon{width:20px;height:20px;color:#94a3b8;flex-shrink:0}.volume-slider{flex:1;height:6px;background:#ffffff1a;border-radius:3px;outline:none;-webkit-appearance:none;appearance:none}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:50%;cursor:pointer;box-shadow:0 2px 8px #3b82f666;transition:all .25s ease}.volume-slider::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 4px 12px #3b82f699}.volume-slider::-moz-range-thumb{width:16px;height:16px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:50%;cursor:pointer;box-shadow:0 2px 8px #3b82f666;transition:all .25s ease}.volume-slider::-moz-range-thumb:hover{transform:scale(1.2);box-shadow:0 4px 12px #3b82f699}.volume-slider:disabled{opacity:.5;cursor:not-allowed}.volume-value{font-size:13px;font-weight:600;color:#f1f5f9;min-width:40px;text-align:right}.test-sounds{display:flex;flex-wrap:wrap;gap:8px}.test-btn{padding:8px 16px;background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:8px;color:#3b82f6;font-size:13px;font-weight:600;cursor:pointer;transition:all .25s ease}.test-btn:hover:not(:disabled){background:#3b82f633;border-color:#3b82f680;transform:translateY(-2px)}.test-btn:active:not(:disabled){transform:translateY(0)}.test-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.setting-item{flex-direction:column;align-items:stretch}.volume-control{min-width:0;width:100%}.test-sounds{justify-content:stretch}.test-btn{flex:1;min-width:calc(50% - 4px)}}.settings-panel{padding:20px;max-width:1400px;margin:0 auto}.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.settings-header h2{margin:0;color:#333;font-size:28px}.settings-actions{display:flex;gap:10px}.settings-content{display:flex;gap:30px}.settings-sidebar{flex:0 0 220px;display:flex;flex-direction:column;gap:5px}.category-tab{padding:12px 16px;background:#f5f5f5;border:1px solid #ddd;border-radius:6px;cursor:pointer;text-align:left;font-size:14px;color:#555;transition:all .2s}.category-tab:hover{background:#e8e8e8;border-color:#ccc}.category-tab.active{background:#c00;color:#fff;border-color:#c00;font-weight:600}.settings-main{flex:1;background:#fff;border:1px solid #ddd;border-radius:8px;padding:30px;box-shadow:0 2px 4px #0000000d}.settings-category h3{margin:0 0 25px;color:#333;font-size:22px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.settings-fields{display:flex;flex-direction:column;gap:25px}.setting-field{display:flex;flex-direction:column;gap:8px}.setting-field label{display:flex;flex-direction:column;gap:4px;font-size:14px;color:#333}.setting-field label strong{font-weight:600;font-size:15px}.setting-description{font-size:13px;color:#666;font-weight:400;line-height:1.4}.setting-input{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s;max-width:500px}.setting-input:focus{outline:none;border-color:#c00;box-shadow:0 0 0 3px #cc00001a}.setting-input[type=number]{max-width:200px}.setting-input[type=password]{max-width:300px}.setting-current-value{font-size:12px;color:#888;font-style:italic}.password-change-section{background:#f9f9f9;border:1px solid #ddd;border-radius:8px;padding:25px;margin-bottom:30px}.password-change-section h3{margin:0 0 20px;color:#333;font-size:20px}.password-change-section .form-group{margin-bottom:20px}.password-change-section label{display:block;margin-bottom:6px;font-weight:600;font-size:14px;color:#333}.password-change-section input{width:100%;max-width:400px;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.password-change-section input:focus{outline:none;border-color:#c00;box-shadow:0 0 0 3px #cc00001a}.form-actions{display:flex;gap:10px;margin-top:20px}.btn-primary{padding:10px 20px;background:#c00;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary:hover:not(:disabled){background:#a00}.btn-primary:disabled{background:#ccc;cursor:not-allowed}.btn-secondary{padding:10px 20px;background:#fff;color:#333;border:1px solid #ddd;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f5f5f5;border-color:#ccc}.alert{padding:12px 16px;border-radius:6px;margin-bottom:20px;font-size:14px}.alert-error{background:#fee;color:#c00;border:1px solid #fcc}.alert-success{background:#efe;color:#060;border:1px solid #cfc}.loading,.error{text-align:center;padding:40px;font-size:16px;color:#666}.error{color:#c00}@media(max-width:1024px){.settings-content{flex-direction:column}.settings-sidebar{flex-direction:row;flex-wrap:wrap;flex:1}.category-tab{flex:1;min-width:150px}}@media(max-width:768px){.settings-panel{padding:15px}.settings-header{flex-direction:column;align-items:flex-start;gap:15px}.settings-actions{width:100%;flex-direction:column}.settings-actions button{width:100%}.settings-main{padding:20px}.setting-input,.password-change-section input{max-width:100%}}.settings-page{min-height:100vh;background:#f5f5f5;padding:20px 0}.hospitals-page{padding:2rem}.page-header h1{font-size:2rem;font-weight:600;color:#1a202c;margin:0}.filters-section{display:flex;gap:1rem;margin-bottom:2rem}.search-input{flex:1;padding:.75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:1rem}.filter-select{padding:.75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:1rem;min-width:150px}.hospitals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.hospital-card{background:#1e222bcc;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;transition:box-shadow .2s}.hospital-card:hover{box-shadow:0 4px 6px #0000001a}.hospital-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:1rem}.hospital-header h3{font-size:1.25rem;color:#2d3748;margin:0}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.status-badge.active{background-color:#c6f6d5;color:#22543d}.status-badge.inactive{background-color:#fed7d7;color:#742a2a}.hospital-details{margin-bottom:1rem}.hospital-name-ar{font-size:1.1rem;color:#4a5568;margin-bottom:.5rem}.hospital-address{color:#718096;font-size:.9rem;margin-bottom:.5rem}.hospital-details p{color:#4a5568;font-size:.9rem;margin:.25rem 0}.hospital-actions{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.loading{text-align:center;padding:3rem;color:#718096}.empty-state{text-align:center;padding:3rem;background:#1e222bcc;border-radius:8px}.empty-state h3{color:#2d3748;margin-bottom:.5rem}.empty-state p{color:#718096}.error-message{background-color:#fed7d7;color:#742a2a;padding:1rem;border-radius:6px;margin-bottom:1rem}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem}.btn-primary{background-color:#e53e3e;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-primary:hover{background-color:#c53030}.btn-primary:disabled{background-color:#cbd5e0;cursor:not-allowed}.btn-secondary{background-color:#e2e8f0;color:#2d3748;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-secondary:hover{background-color:#cbd5e0}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{background-color:#fc8181;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-danger:hover{background-color:#f56565}.signature-pad-container{margin-bottom:1.5rem}.signature-label{display:block;font-weight:500;color:#374151;margin-bottom:.5rem;font-size:.875rem}.signature-label .required{color:#ef4444;margin-left:.25rem}.signature-canvas-wrapper{position:relative;border:2px solid #d1d5db;border-radius:.5rem;background:#fff;overflow:hidden}.signature-canvas{display:block;width:100%;height:200px;cursor:crosshair;touch-action:none}.signature-canvas.disabled{cursor:not-allowed;opacity:.6}.signature-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#9ca3af;font-size:1rem;pointer-events:none;-webkit-user-select:none;user-select:none}.signature-actions{display:flex;gap:.75rem;margin-top:.75rem;justify-content:flex-end}@media(max-width:640px){.signature-canvas{height:150px}.signature-actions{flex-direction:column}.signature-actions button{width:100%}}.discharge-wizard{width:95%;max-width:none;max-height:90vh;overflow-y:auto;background:#0e1117fa;border:2px solid rgba(23,227,143,.3);border-radius:16px;box-shadow:0 10px 40px #000000b3,0 0 30px #17e38f33}.progress-step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative;opacity:.4;transition:all .3s ease}.progress-step.active{opacity:1}.progress-step.complete .step-number{background:linear-gradient(135deg,#17e38f,#00d9ff);border-color:#17e38f;color:#0e1117;box-shadow:0 0 20px #17e38f80}.progress-step:not(:last-child):after{content:"";position:absolute;top:20px;left:50%;width:100%;height:2px;background:#ffffff1a;z-index:0}.progress-step.complete:not(:last-child):after{background:linear-gradient(90deg,#17e38f,#00d9ff);box-shadow:0 0 10px #17e38f80}.progress-step.active .step-number{border-color:#17e38f;color:#17e38f;background:#17e38f1a;box-shadow:0 0 20px #17e38f4d}.progress-step.active .step-label{color:#17e38f;font-weight:600}.wizard-content{padding:30px 40px;min-height:400px;max-height:calc(90vh - 300px);overflow-y:auto}.wizard-content::-webkit-scrollbar{width:8px}.wizard-content::-webkit-scrollbar-track{background:#1e222b66;border-radius:4px}.wizard-content::-webkit-scrollbar-thumb{background:#17e38f4d;border-radius:4px}.wizard-content::-webkit-scrollbar-thumb:hover{background:#17e38f80}.wizard-step h3{margin:0 0 10px;font-size:22px;color:#fff;font-weight:600}.form-group select,.form-textarea{width:100%;padding:12px 16px;background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:8px;color:#fff;font-size:14px;font-family:inherit;transition:all .3s ease}.form-group select option{color:#1f2937;background-color:#fff}.form-group select:focus,.form-textarea:focus{outline:none;border-color:#17e38f;box-shadow:0 0 0 3px #17e38f1a}.form-textarea{resize:vertical}.prisoner-info-card{background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:12px;padding:20px;margin-bottom:20px}.prisoner-info-card h4{margin:0 0 15px;color:#17e38f;font-size:16px;font-weight:600;border-bottom:1px solid rgba(23,227,143,.2);padding-bottom:10px}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.info-grid div{font-size:14px;color:#fff;line-height:1.6}.info-grid strong{color:#b0b8c4;font-weight:500;display:block;margin-bottom:4px}.consent-declaration{background:#17e38f0d;border:1px solid rgba(23,227,143,.2);border-radius:12px;padding:20px;margin-bottom:25px}.consent-declaration h4{font-size:16px;font-weight:600;color:#17e38f;margin-bottom:15px}.declaration-text{font-size:14px;line-height:1.6;color:#fff}.declaration-text ol{margin:10px 0 0 20px;padding:0}.declaration-text li{margin-bottom:8px;color:#b0b8c4}.review-section{background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:12px;padding:20px;margin-bottom:20px}.review-section h4{margin:0 0 15px;color:#17e38f;font-size:16px;font-weight:600;border-bottom:1px solid rgba(23,227,143,.2);padding-bottom:10px}.review-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.review-grid div{font-size:14px;color:#fff}.review-grid strong{color:#b0b8c4;font-weight:500;display:block;margin-bottom:4px}.review-grid .full-width{grid-column:1 / -1}.status-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.status-complete{padding:12px;background:#17e38f1a;color:#17e38f;border-radius:8px;font-size:14px;font-weight:500;border:1px solid rgba(23,227,143,.3)}.status-incomplete{padding:12px;background:#dc143c1a;color:#dc143c;border-radius:8px;font-size:14px;font-weight:500;border:1px solid rgba(220,20,60,.3)}.warning-box{background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:8px;padding:15px;margin-top:20px}.warning-box p{margin:0;font-size:14px;color:#ffc107}.wizard-actions{display:flex;justify-content:space-between;padding:20px 40px;background:#17e38f0d;border-top:1px solid rgba(23,227,143,.2)}.wizard-actions button{padding:12px 32px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.wizard-actions button[variant=primary],.wizard-actions button[variant=success]{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117}.wizard-actions button[variant=primary]:hover:not(:disabled),.wizard-actions button[variant=success]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 20px #17e38f66}.wizard-actions button[variant=secondary]{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.wizard-actions button[variant=secondary]:hover:not(:disabled){background:#ffffff26;border-color:#ffffff4d}.wizard-actions button:disabled{opacity:.5;cursor:not-allowed}.error-message{padding:12px 16px;background:#dc143c1a;border-left:3px solid #DC143C;border-radius:8px;color:#dc143c;font-size:14px;margin-top:15px}.empty-state p{font-size:16px;margin:0 0 10px}@media(max-width:768px){.discharge-wizard{max-width:95%;margin:20px auto}.wizard-progress{margin:20px;padding:15px}.wizard-content{padding:20px}.info-grid,.review-grid,.status-grid{grid-template-columns:1fr}.wizard-actions{flex-direction:column-reverse;gap:10px}.wizard-actions button{width:100%}}.discharge-wizard::-webkit-scrollbar{width:8px}.discharge-wizard::-webkit-scrollbar-track{background:#1e222b66;border-radius:4px}.discharge-wizard::-webkit-scrollbar-thumb{background:#17e38f4d;border-radius:4px}.discharge-wizard::-webkit-scrollbar-thumb:hover{background:#17e38f80}.search-hint{display:block;margin-top:8px;color:#b0b8c4;font-size:12px;line-height:1.5;padding:8px 12px;background:#17e38f0d;border-left:2px solid rgba(23,227,143,.3);border-radius:4px}.prisoner-card{display:flex;align-items:center;gap:15px;padding:15px;background:#1e222b99;border:2px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .3s ease;position:relative}.prisoner-card.selected{border-color:#17e38f;background:#17e38f1a;box-shadow:0 0 20px #17e38f33}.prisoner-photo{width:60px;height:60px;border-radius:8px;overflow:hidden;background:#17e38f1a;display:flex;align-items:center;justify-content:center}.selected-badge{width:32px;height:32px;border-radius:50%;background:#17e38f;color:#0e1117;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700}.match-comparison-modal{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.comparison-content{background:#0e1117fa;border:2px solid rgba(23,227,143,.3);border-radius:16px;padding:30px;max-width:800px;width:100%;box-shadow:0 10px 40px #000000b3}.comparison-content h3{margin:0 0 10px;color:#17e38f;font-size:24px;font-weight:600}.comparison-content p{color:#b0b8c4;margin-bottom:25px;font-size:14px}.comparison-options{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.comparison-option{padding:25px;background:#1e222b99;border:2px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .3s ease;text-align:center}.comparison-option:hover{border-color:#17e38f;background:#17e38f1a;transform:translateY(-5px);box-shadow:0 5px 20px #17e38f4d}.option-icon{font-size:48px;margin-bottom:15px}.option-title{font-size:18px;font-weight:600;color:#fff;margin-bottom:8px}.option-count{font-size:32px;font-weight:700;color:#17e38f;margin-bottom:8px}.option-desc{font-size:13px;color:#b0b8c4}.photo-modal{background:#0e1117fa;border:2px solid rgba(23,227,143,.3);border-radius:16px;padding:0;max-width:500px;width:100%;box-shadow:0 10px 40px #000000b3;overflow:hidden}.photo-modal-header{padding:20px 30px;background:linear-gradient(135deg,#17e38f1a,#00d9ff0d);border-bottom:1px solid rgba(23,227,143,.2);display:flex;justify-content:space-between;align-items:center}.photo-modal-header h3{margin:0;color:#17e38f;font-size:20px;font-weight:600}.photo-modal-body{padding:30px;text-align:center}.photo-modal-image{width:300px;height:300px;margin:0 auto 20px;border-radius:12px;overflow:hidden;border:3px solid rgba(23,227,143,.3);background:#1e222b99;display:flex;align-items:center;justify-content:center}.photo-modal-image img{width:100%;height:100%;object-fit:cover}.photo-modal-image .photo-placeholder{font-size:120px;color:#17e38f}.photo-modal-info{margin-bottom:0;text-align:left;background:#1e222b99;padding:20px;border-radius:12px;border:1px solid rgba(23,227,143,.2)}.photo-modal-info-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05)}.photo-modal-info-row:last-child{border-bottom:none}.photo-modal-info-label{color:#b0b8c4;font-size:14px}.photo-modal-info-value{color:#fff;font-weight:600;font-size:14px}.photo-modal-footer{padding:20px 30px;background:#17e38f0d;border-top:1px solid rgba(23,227,143,.2);display:flex;gap:15px;justify-content:center}.btn-secondary,.btn-success,.btn-primary{padding:12px 32px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.btn-success{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117}.btn-success:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 20px #17e38f66}.btn-primary:disabled,.btn-secondary:disabled,.btn-success:disabled{opacity:.5;cursor:not-allowed}.step-container{padding:0}.review-card{background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:12px;padding:20px;margin-bottom:20px}.review-card h4{margin:0 0 15px;color:#17e38f;font-size:16px;font-weight:600;border-bottom:1px solid rgba(23,227,143,.2);padding-bottom:10px}.review-item{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05)}.review-item:last-child{border-bottom:none}.review-item .label{color:#b0b8c4;font-size:14px}.review-item .value{color:#fff;font-weight:600;font-size:14px;text-align:right}.form-group input[type=date],.form-group input[type=number]{width:100%;padding:12px 16px;background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:8px;color:#fff;font-size:14px;font-family:inherit;transition:all .3s ease}.form-group input[type=date]:focus,.form-group input[type=number]:focus{outline:none;border-color:#17e38f;box-shadow:0 0 0 3px #17e38f1a}.edit-discharge-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.edit-discharge-modal{background:#1e222bfa;border:2px solid rgba(23,227,143,.3);border-radius:16px;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #000000b3,0 0 30px #17e38f33}.edit-discharge-modal-header{padding:24px;border-bottom:1px solid rgba(23,227,143,.2);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#1e222bfa;z-index:1}.edit-discharge-modal-header h2{margin:0;font-size:24px;color:#fff}.edit-discharge-modal-header .close-btn{background:none;border:none;color:#b0b8c4;font-size:32px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.edit-discharge-modal-header .close-btn:hover{background:#17e38f33;color:#fff}.warden-comments-banner{margin:20px 24px;background:linear-gradient(135deg,#ff9800,#ff5722);color:#fff;padding:16px;border-radius:8px}.warden-comments-banner h4{margin:0 0 8px;font-size:16px}.edit-discharge-form{padding:24px}.form-section{margin-bottom:24px}.form-section h3{font-size:18px;color:#17e38f;margin:0 0 16px;font-weight:600}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.form-textarea{width:100%;padding:12px;background:#0e1117cc;border:1px solid rgba(23,227,143,.3);border-radius:8px;color:#fff;font-size:14px;font-family:inherit;resize:vertical;min-height:80px}.edit-discharge-modal-footer{padding:24px;border-top:1px solid rgba(23,227,143,.2);display:flex;gap:12px;justify-content:flex-end;position:sticky;bottom:0;background:#1e222bfa}@media(max-width:768px){.edit-discharge-modal{max-width:100%;max-height:100vh;border-radius:0}.form-row{grid-template-columns:1fr}}.discharge-page{padding:40px;width:100%;background:transparent;min-height:100vh}.discharge-page h1{color:#fff!important}.discharge-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;padding:20px 0}.discharge-card{background:#1e222bcc;border:2px solid rgba(23,227,143,.3);border-radius:16px;padding:20px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #0000004d;position:relative}.discharge-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #17e38f66;border-color:#17e38f99}.discharge-status-badge{position:absolute;top:12px;right:12px;opacity:0;transition:opacity .3s ease}.discharge-card:hover .discharge-status-badge{opacity:1}.discharge-prisoner-info{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(23,227,143,.2)}.discharge-type-badge{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:8px 12px;background:#0e111799;border-radius:8px}.discharge-date{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:8px 12px;background:#0e111766;border-radius:6px}.discharge-approvals{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;padding:12px;background:#0e111799;border-radius:8px}.approval-item{display:flex;justify-content:space-between;align-items:center}.approval-label{font-size:12px;color:#b0b8c4}.approval-status{font-size:13px;font-weight:600}.discharge-footer{padding-top:12px;border-top:1px solid rgba(23,227,143,.2)}.download-certificate-btn{width:100%;margin-top:12px;padding:10px 16px;background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;border:none;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #17e38f4d;display:flex;align-items:center;justify-content:center;gap:8px}.download-certificate-btn:hover{box-shadow:0 4px 15px #17e38f80;transform:translateY(-2px)}.download-certificate-btn:active{transform:translateY(0)}@media(max-width:768px){.discharge-page{padding:20px}.page-header{flex-direction:column;align-items:stretch;gap:16px}.page-header button{width:100%}.status-filters{flex-direction:column}.discharge-cards-grid{grid-template-columns:1fr}}.tab-bar{background-color:#fff;border-bottom:2px solid #e0e0e0;position:sticky;top:0;z-index:100;box-shadow:0 2px 4px #0000000d}.tab-bar-container{display:flex;gap:4px;padding:0 24px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#cbd5e0 transparent;-webkit-overflow-scrolling:touch}.tab-bar-container::-webkit-scrollbar{height:4px}.tab-bar-container::-webkit-scrollbar-track{background:transparent}.tab-bar-container::-webkit-scrollbar-thumb{background-color:#cbd5e0;border-radius:2px}.tab-button{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:15px;font-weight:500;color:#666;transition:all .2s ease;white-space:nowrap;font-family:inherit;position:relative;min-height:56px;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.tab-button:hover{background-color:#f5f5f5;color:#333}.tab-button:focus{outline:none;background-color:#f5f5f5}.tab-button:focus-visible{outline:2px solid #1976d2;outline-offset:-2px}.tab-button-active{color:#1976d2;border-bottom-color:#1976d2;background-color:transparent}.tab-button-active:hover{background-color:#1976d20a}.tab-label{font-weight:500;line-height:1.2}.tab-count{font-size:14px;color:#999;font-weight:400;transition:all .2s ease;background-color:#f5f5f5;padding:2px 8px;border-radius:12px;min-width:24px;text-align:center}.tab-button-active .tab-count{color:#1976d2;font-weight:600;background-color:#1976d21a}.tab-count-active{color:#666}.tab-button-active .tab-count-active{color:#1976d2}@media(max-width:1024px){.tab-bar-container{padding:0 20px}.tab-button{padding:14px 18px;font-size:14px}}@media(max-width:768px){.tab-bar-container{padding:0 16px;gap:2px}.tab-button{padding:12px 14px;font-size:14px;flex-direction:column;gap:6px;align-items:center;min-width:85px;min-height:64px}.tab-label{font-size:13px;text-align:center}.tab-count{font-size:12px;padding:2px 6px;min-width:20px}}@media(max-width:480px){.tab-bar-container{padding:0 12px;gap:0}.tab-button{padding:10px;font-size:13px;min-width:75px;min-height:60px;gap:4px}.tab-label{font-size:12px}.tab-count{font-size:11px;padding:1px 5px;min-width:18px}}@media(max-width:360px){.tab-bar-container{padding:0 8px}.tab-button{padding:8px;min-width:70px;min-height:56px}.tab-label{font-size:11px}.tab-count{font-size:10px}}@media(prefers-contrast:high){.tab-button{border:1px solid transparent}.tab-button-active{border:1px solid #1976d2}.tab-button:focus-visible{outline-width:3px}}@media(prefers-reduced-motion:reduce){.tab-button,.tab-count{transition:none}}.pending-registration-tab{padding:20px}.prisoner-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:30px;padding:20px 0}.prisoner-id-card{background:#e8e8e8;border:3px solid #999;border-radius:15px;padding:20px;text-align:center;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #00000026;position:relative;width:250px;margin:0 auto}.prisoner-id-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000040;border-color:#666}.prisoner-photo-container{width:180px;height:180px;margin:0 auto 20px;border:3px solid #999;border-radius:15px;overflow:hidden;background:#f0f0f0}.prisoner-photo-container img{width:100%;height:100%;object-fit:cover}.photo-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#666,#444);color:#fff;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.5)}.prisoner-label{font-size:24px;font-weight:900;color:#333;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;line-height:1.2}.prisoner-id-number{font-size:36px;font-weight:900;color:#333;font-family:Arial Black,Arial,sans-serif;letter-spacing:2px;margin-bottom:15px}.status-badge{position:absolute;top:10px;right:10px;background:#ffc107;color:#333;padding:4px 8px;border-radius:8px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #0003}@media(max-width:1024px){.prisoner-cards-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px}.prisoner-id-card{width:100%;max-width:250px}}@media(max-width:768px){.pending-registration-tab{padding:16px}.prisoner-cards-grid{grid-template-columns:1fr;gap:20px;padding:16px 0}.prisoner-id-card{width:100%;max-width:300px;padding:18px}.prisoner-photo-container{width:160px;height:160px}.prisoner-label{font-size:22px}.prisoner-id-number{font-size:32px}.empty-state{padding:50px 20px}.empty-icon{font-size:56px}.empty-state h3{font-size:18px}}@media(max-width:480px){.pending-registration-tab{padding:12px}.prisoner-cards-grid{gap:16px;padding:12px 0}.prisoner-id-card{padding:16px;border-width:2px}.prisoner-photo-container{width:140px;height:140px;border-width:2px}.photo-placeholder{font-size:32px}.prisoner-label{font-size:20px}.prisoner-id-number{font-size:28px;letter-spacing:1px}.status-badge{font-size:9px;padding:3px 6px}.empty-state{padding:40px 16px}.empty-icon{font-size:48px}.empty-state h3{font-size:17px}.empty-state p{font-size:13px}}.prisoner-id-card:focus{outline:3px solid #1976d2;outline-offset:2px}.prisoner-id-card:focus:not(:focus-visible){outline:none}@media(prefers-contrast:high){.prisoner-id-card,.prisoner-photo-container{border-width:3px}.status-badge{border:2px solid currentColor}}@media(prefers-reduced-motion:reduce){.prisoner-id-card{transition:none}.prisoner-id-card:hover{transform:none}}.order-card-3d{width:280px;height:380px;perspective:1000px;cursor:pointer;animation:fadeInUp .4s ease-out}.order-card-inner{position:relative;width:100%;height:100%;background:#0e1117!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:2px solid #17E38F!important;border-radius:20px;padding:20px;display:flex;flex-direction:column;align-items:center;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 6px 12px #00000080,0 0 30px #17e38f4d}.order-card-3d:hover .order-card-inner{transform:translateY(-8px) scale(1.03);box-shadow:0 12px 24px #0009,0 0 40px #17e38f80,0 0 60px #17e38f33;background:#1e222b!important;border-color:#17e38f!important}.status-badge{position:absolute;top:15px;right:15px;padding:6px 12px;border-radius:12px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 6px #0000004d;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10}.prisoner-photo-container{width:130px;height:130px;border-radius:50%;overflow:hidden;border:3px solid #17E38F;box-shadow:0 4px 15px #00000080,0 0 20px #17e38f66;margin-top:10px;margin-bottom:15px;transition:all .3s ease;background:#0e1117}.order-card-3d:hover .prisoner-photo-container{border-color:#17e38f;box-shadow:0 0 30px #17e38f99,0 0 60px #17e38f4d}.prisoner-photo{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.order-card-3d:hover .prisoner-photo{transform:scale(1.1)}.image-skeleton{width:100%;height:100%;background:linear-gradient(90deg,#2a2a2a 25%,#3a3a3a,#2a2a2a 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.prisoner-info{flex:1;width:100%;display:flex;flex-direction:column;align-items:center;gap:6px}.prisoner-name{font-size:18px!important;font-weight:700;color:#fff!important;text-align:center;text-transform:uppercase;letter-spacing:1px;margin:0 0 8px;line-height:1.2;text-shadow:0 2px 8px rgba(0,0,0,.5);padding:0 10px;max-width:100%}.prisoner-number{font-family:Arial Black,Arial,sans-serif!important;font-size:13px!important;font-weight:900!important;color:#fff!important;margin:0 0 10px;letter-spacing:.5px;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0 5px;max-width:100%;line-height:1.4;text-align:center}.prisoner-number .label{font-size:11px;font-weight:700;color:#17e38f;text-transform:uppercase;letter-spacing:.5px;display:inline-block;margin-right:6px}.order-number-badge{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 15px;background:#17e38f1a;border:2px solid rgba(23,227,143,.3);border-radius:12px;margin-bottom:10px;width:90%;box-shadow:0 0 15px #17e38f33}.order-type-label{font-size:11px;font-weight:700;color:#17e38f;text-transform:uppercase;letter-spacing:.5px}.order-number{font-family:Courier New,monospace;font-size:14px;font-weight:700;color:#fff;letter-spacing:.5px}.order-detail{display:flex;align-items:center;gap:6px;font-size:12px;color:#94a3b8;margin-top:4px;width:100%;justify-content:center}.order-detail .icon{width:14px;height:14px;stroke-width:2;flex-shrink:0}.order-type-icon{position:absolute;bottom:15px;right:15px;width:32px;height:32px;background:#17e38f33;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#17e38f;transition:all .3s ease}.order-card-3d:hover .order-type-icon{background:#17e38f4d;transform:scale(1.1)}.order-type-icon svg{width:20px;height:20px}@media(max-width:768px){.order-card-3d{width:100%;max-width:280px;height:360px}.prisoner-photo-container{width:120px;height:120px}.prisoner-name{font-size:16px!important}}.order-card-3d:nth-child(1){animation-delay:0s}.order-card-3d:nth-child(2){animation-delay:.05s}.order-card-3d:nth-child(3){animation-delay:.1s}.order-card-3d:nth-child(4){animation-delay:.15s}.order-card-3d:nth-child(5){animation-delay:.2s}.order-card-3d:nth-child(6){animation-delay:.25s}.order-card-3d:nth-child(7){animation-delay:.3s}.order-card-3d:nth-child(8){animation-delay:.35s}.order-approval-modal{max-width:1400px!important;width:100%!important;max-height:90vh!important;overflow-y:auto!important;display:flex!important;flex-direction:column!important}.order-approval-modal .modal-body{overflow-y:auto!important;max-height:calc(90vh - 80px)!important;padding-right:10px!important}.order-approval-modal .modal-body::-webkit-scrollbar{width:12px!important}.order-approval-modal .modal-body::-webkit-scrollbar-track{background:#1e222b99!important;border-radius:10px!important}.order-approval-modal .modal-body::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#17e38f,#00d9ff)!important;border-radius:10px!important;border:2px solid rgba(30,34,43,.6)!important}.order-approval-modal .modal-body::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#00d9ff,#17e38f)!important}.order-number-display{display:inline-block;background:#17e38f26;border:2px solid #17E38F;color:#17e38f;padding:8px 16px;border-radius:8px;font-family:Courier New,monospace;font-size:16px;font-weight:700;letter-spacing:1px;margin-top:8px;box-shadow:0 0 15px #17e38f4d}.order-info-section{margin:0;background:linear-gradient(135deg,#1a1f2e,#0f1419);border-radius:0;padding:28px 32px;box-shadow:none;border-left:none;border-right:none;border-top:none;border-bottom:2px solid rgba(23,227,143,.3);width:100%;box-sizing:border-box}.order-info-section h3{margin:0 0 24px;color:#17e38f;font-size:20px;font-weight:800;padding-bottom:14px;border-bottom:3px solid #17E38F;display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:1px;text-shadow:0 0 10px rgba(23,227,143,.5)}.order-info-section h3:before{content:"";width:5px;height:24px;background:#17e38f;border-radius:3px;box-shadow:0 0 10px #17e38f99}.order-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.order-info-item{display:flex;flex-direction:column;gap:8px}.order-info-item label{font-size:12px;color:#17e38f;font-weight:700;text-transform:uppercase;letter-spacing:1px}.order-info-item .value{font-size:16px;color:#fff;font-weight:600;background:#17e38f1a;padding:12px 16px;border-radius:8px;border:2px solid rgba(23,227,143,.3);box-shadow:0 0 10px #17e38f1a}.movement-route{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;background:#17e38f0d;border-radius:12px;margin:20px 0}.route-location-label{font-size:12px;color:#17e38f;font-weight:700;text-transform:uppercase;margin-bottom:8px}.route-location-name{font-size:18px;color:#fff;font-weight:700}.route-arrow{font-size:32px;color:#17e38f;font-weight:700}.hospital-info-highlight{background:#e83e8c1a;border:2px solid rgba(232,62,140,.3);padding:20px;border-radius:12px;margin:20px 0}.hospital-info-highlight h4{color:#e83e8c;margin:0 0 15px;font-size:18px;font-weight:700}.hospital-info-highlight .value{border-color:#e83e8c4d;background:#e83e8c0d}.discharge-info-highlight{background:#00d9ff1a;border:2px solid rgba(0,217,255,.3);padding:20px;border-radius:12px;margin:20px 0}.discharge-info-highlight h4{color:#00d9ff;margin:0 0 15px;font-size:18px;font-weight:700}.discharge-info-highlight .value{border-color:#00d9ff4d;background:#00d9ff0d}@media(max-width:768px){.order-info-grid{grid-template-columns:1fr}.movement-route{flex-direction:column;gap:10px}.route-arrow{transform:rotate(90deg)}}.prisoner-header-number .label,.order-number-display .label{font-size:12px;font-weight:700;color:#17e38f;text-transform:uppercase;letter-spacing:.5px;margin-right:6px}.prisoner-header-number{font-size:15px;font-weight:700;color:#fff;margin-top:6px}.order-number-display .label{color:#17e38f;font-size:12px}.route-location-detail{font-size:12px;color:#94a3b8;margin-top:4px}.timeline-item{display:flex;gap:15px;padding:15px;background:#17e38f0d;border-left:3px solid #17E38F;border-radius:8px}.timeline-icon{width:32px;height:32px;background:#17e38f;color:#0e1117;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex-shrink:0}.timeline-content{flex:1}.timeline-title{font-size:16px;font-weight:700;color:#17e38f;margin-bottom:4px}.timeline-user{font-size:14px;color:#fff;margin-bottom:2px}.timeline-date{font-size:12px;color:#94a3b8;margin-bottom:8px}.timeline-notes{font-size:13px;color:#cbd5e1;font-style:italic;padding:8px;background:#0000004d;border-radius:4px;margin-top:8px}.pending-movement-tab{padding:20px}.stage-selector{display:flex;gap:12px;margin-bottom:25px;background:#1e222b99;padding:12px;border-radius:12px;border:1px solid rgba(23,227,143,.2)}.stage-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:15px 20px;background:#1e222b99;border:2px solid rgba(255,255,255,.1);border-radius:10px;color:#b0b8c4;cursor:pointer;transition:all .3s ease;font-size:14px;font-weight:500}.stage-btn:hover{border-color:#17e38f66;background:#1e222bcc;transform:translateY(-2px)}.stage-btn.active{border-color:#17e38f;background:#17e38f1a;color:#17e38f;box-shadow:0 0 20px #17e38f33}.stage-icon{font-size:24px}.stage-label{font-size:13px;font-weight:600}.view-header{margin-bottom:20px}.view-header h3{margin:0;font-size:20px;color:#17e38f;font-weight:600}.movement-list{display:flex;flex-direction:column;gap:16px}.movement-card{background:#1e222b99;border:2px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;transition:all .3s ease}.movement-card:hover{border-color:#17e38f66;background:#1e222bcc;transform:translate(5px);box-shadow:0 5px 20px #17e38f1a}.movement-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid rgba(23,227,143,.2)}.movement-prisoner-info{display:flex;align-items:center;gap:15px}.prisoner-photo-small{width:50px;height:50px;border-radius:8px;overflow:hidden;background:#17e38f1a;display:flex;align-items:center;justify-content:center;border:2px solid rgba(23,227,143,.3)}.photo-placeholder{font-size:24px;color:#17e38f}.prisoner-name{margin:0 0 4px;font-size:18px;color:#fff;font-weight:600}.prisoner-number{font-size:13px;color:#17e38f;font-weight:600;background:#17e38f1a;padding:3px 10px;border-radius:6px}.status-badge{padding:6px 16px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#17e38f33;color:#17e38f;border:1px solid rgba(23,227,143,.4)}.movement-route{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px;background:#17e38f0d;border-radius:10px;margin-bottom:15px;border:1px solid rgba(23,227,143,.2)}.route-point{flex:1;text-align:center}.route-label{font-size:11px;color:#b0b8c4;margin-bottom:6px;text-transform:uppercase;letter-spacing:1px;font-weight:600}.route-value{font-size:15px;font-weight:600;color:#fff}.route-arrow{font-size:24px;color:#17e38f;font-weight:700}.movement-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin-bottom:20px}.detail-row{display:flex;justify-content:space-between;padding:10px 12px;background:#1e222b66;border-radius:8px;border:1px solid rgba(255,255,255,.05)}.detail-label{color:#b0b8c4;font-size:13px;font-weight:500}.detail-value{color:#fff;font-size:13px;font-weight:600;text-align:right}.movement-actions{display:flex;gap:12px;justify-content:flex-end}.btn-approve,.btn-reject,.btn-confirm{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.btn-approve{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117}.btn-approve:hover{transform:translateY(-2px);box-shadow:0 5px 20px #17e38f66}.btn-confirm{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117}.btn-confirm:hover{transform:translateY(-2px);box-shadow:0 5px 20px #17e38f66}.btn-reject{background:#dc143c33;color:#dc143c;border:1px solid rgba(220,20,60,.4)}.btn-reject:hover{background:#dc143c4d;border-color:#dc143c;transform:translateY(-2px)}.loading{text-align:center;padding:60px 20px;color:#17e38f;font-size:16px}.error-message{padding:16px 20px;background:#dc143c1a;border-left:3px solid #DC143C;border-radius:8px;color:#dc143c;font-size:14px;margin-bottom:15px}.retry-button{padding:10px 24px;background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.retry-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #17e38f66}.empty-state{text-align:center;padding:80px 20px;background:#1e222b66;border-radius:12px;border:2px dashed rgba(23,227,143,.2)}.empty-icon{font-size:64px;margin-bottom:20px;color:#17e38f}.empty-state h3{margin:0 0 10px;font-size:22px;color:#fff;font-weight:600}.empty-state p{margin:0;font-size:15px;color:#b0b8c4}@media(max-width:768px){.stage-selector{flex-direction:column}.stage-btn{flex-direction:row;justify-content:center}.movement-route{flex-direction:column;gap:10px}.route-arrow{transform:rotate(90deg)}.movement-details{grid-template-columns:1fr}.movement-actions{flex-direction:column}.btn-approve,.btn-reject,.btn-confirm{width:100%}}.changes-requested-banner{background:linear-gradient(135deg,#fff3cd,#ffe69c);border:2px solid #ffc107;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 4px 12px #ffc10733}.changes-requested-banner .banner-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.changes-requested-banner .banner-icon{font-size:24px}.changes-requested-banner .banner-header strong{font-size:18px;color:#856404}.changes-requested-banner .banner-content p{margin:0 0 12px;color:#856404;font-size:14px}.changes-requested-banner .changes-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.changes-requested-banner .changes-list li{background:#fff;border:1px solid #ffc107;border-radius:8px;padding:12px 16px;cursor:pointer;transition:all .2s;display:flex;justify-content:space-between;align-items:center}.changes-requested-banner .changes-list li:hover{background:#fff8e1;border-color:#ff9800;transform:translate(4px);box-shadow:0 2px 8px #ff980033}.changes-requested-banner .movement-info{font-weight:600;color:#333}.changes-requested-banner .movement-route{font-size:13px;color:#666}.hospital-transfer-info{padding:20px;background:#17e38f0d;border-radius:12px;border:1px solid rgba(23,227,143,.2)}.transfer-route{display:flex;align-items:center;justify-content:space-between;gap:30px}.route-location{flex:1;text-align:center}.route-location-label{font-size:12px;color:#b0b8c4;margin-bottom:8px;text-transform:uppercase;letter-spacing:1px;font-weight:600}.route-location-name{font-size:18px;font-weight:600;color:#fff;margin-bottom:4px}.route-location-detail{font-size:13px;color:#b0b8c4;margin-top:4px}.route-arrow{font-size:32px;color:#17e38f;font-weight:700;flex-shrink:0}.medical-reason{background:#ffb8001a;padding:12px 16px;border-radius:8px;border-left:3px solid #FFB800;font-size:14px;line-height:1.6}.approval-timeline .timeline-item{position:relative;padding-left:50px;padding-bottom:30px}.approval-timeline .timeline-icon{position:absolute;left:0;top:0;width:32px;height:32px;background:#17e38f33;border:2px solid #17E38F;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;color:#17e38f}.approval-timeline .timeline-user{font-size:13px;color:#17e38f;margin-bottom:4px}@media(max-width:768px){.transfer-route{flex-direction:column;gap:15px}.route-arrow{transform:rotate(90deg)}.route-location-name{font-size:16px}}.pending-hospital-tab{padding:20px}.hospital-sub-tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid rgba(23,227,143,.2);padding-bottom:0}.hospital-sub-tab{display:flex;align-items:center;gap:8px;padding:12px 24px;background:transparent;border:none;border-bottom:3px solid transparent;color:#9ca3af;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease;position:relative;bottom:-2px}.hospital-sub-tab:hover{color:#fff;background:#17e38f1a}.hospital-sub-tab.active{color:#17e38f;border-bottom-color:#17e38f;background:#17e38f26;text-shadow:0 0 10px rgba(23,227,143,.5)}.sub-tab-label{font-weight:600}.sub-tab-badge{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;padding:2px 8px;border-radius:10px;font-size:12px;font-weight:700;min-width:20px;text-align:center;box-shadow:0 0 15px #17e38f66}.hospital-sub-tab.active .sub-tab-badge{background:linear-gradient(135deg,#00d9ff,#17e38f);box-shadow:0 0 20px #17e38f99}.hospital-sub-tab-content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.loading,.error-message{text-align:center;padding:40px;color:#b0b8c4;font-size:16px}.error-message{color:#ff4c4c}.empty-icon{font-size:64px;color:#17e38f;margin-bottom:20px;filter:drop-shadow(0 0 20px rgba(23,227,143,.5))}.empty-state h3{margin:0 0 10px;color:#fff;font-size:20px}.empty-state p{margin:0;color:#b0b8c4;font-size:14px}.hospital-section{margin-bottom:40px}.hospital-section:last-child{margin-bottom:0}.section-header{display:flex;align-items:center;gap:12px;margin-bottom:8px;padding-bottom:12px;border-bottom:2px solid rgba(23,227,143,.2)}.section-title{font-size:1.25rem;font-weight:600;color:#17e38f;margin:0;text-shadow:0 0 10px rgba(23,227,143,.5)}.section-count{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;padding:4px 12px;border-radius:12px;font-size:.875rem;font-weight:700;box-shadow:0 0 15px #17e38f66}.section-description{color:#b0b8c4;font-size:.9rem;margin-bottom:16px;margin-top:8px}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;padding:10px 0}.hospital-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px;padding:20px 0}.hospital-card{background:#1e222bcc;border:2px solid rgba(23,227,143,.2);border-radius:12px;padding:20px;box-shadow:0 4px 20px #00000080,0 0 20px #17e38f1a;transition:all .3s ease}.hospital-card:hover{box-shadow:0 6px 24px #0009,0 0 30px #17e38f33;border-color:#17e38f66;transform:translateY(-2px)}.hospital-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid rgba(23,227,143,.2)}.hospital-prisoner-info{display:flex;flex-direction:column;gap:5px}.prisoner-name{margin:0;font-size:20px;font-weight:600;color:#fff;text-shadow:0 0 10px rgba(23,227,143,.3)}.prisoner-number{font-size:14px;color:#17e38f;font-weight:500}.status-badge.status-initial{background:#ffc107;color:#333}.status-badge.status-final{background:#17a2b8;color:#fff}.hospital-card-final{border-left:4px solid #17a2b8;background:#17a2b81a;border-color:#17a2b84d}.hospital-details{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.detail-label{font-weight:600;color:#9ca3af;min-width:150px;font-size:14px}.detail-value{color:#fff;font-size:14px;flex:1}.hospital-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:15px;border-top:1px solid rgba(23,227,143,.2)}.btn-approve,.btn-reject,.btn-download{padding:10px 24px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-download{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;border:2px solid transparent}.btn-download:hover{background:linear-gradient(135deg,#00d9ff,#17e38f);transform:translateY(-1px);box-shadow:0 4px 12px #17e38f66;border-color:#17e38f80}@media(max-width:1024px){.pending-hospital-tab{padding:16px}.hospital-card{padding:18px}.hospital-sub-tab{padding:10px 20px;font-size:14px}}@media(max-width:768px){.pending-hospital-tab{padding:12px}.hospital-sub-tabs{gap:4px;margin-bottom:20px}.hospital-sub-tab{padding:10px 16px;font-size:13px}.sub-tab-badge{font-size:11px;padding:2px 6px}.hospital-list{gap:16px;padding:16px 0}.hospital-card{padding:16px}.hospital-header{flex-direction:column;gap:10px;margin-bottom:16px;padding-bottom:12px}.prisoner-name{font-size:18px}.status-badge{align-self:flex-start}.hospital-details{gap:10px;margin-bottom:16px}.detail-row{flex-direction:column;gap:4px}.detail-label{min-width:auto;font-size:13px}.detail-value{font-size:13px}.hospital-actions{flex-direction:column;gap:10px}.btn-approve,.btn-reject,.btn-download{width:100%;min-height:48px}.empty-state{padding:50px 20px}.empty-icon{font-size:56px}.empty-state h3{font-size:18px}}@media(max-width:480px){.pending-hospital-tab{padding:10px}.hospital-list{gap:14px;padding:12px 0}.hospital-card{padding:14px}.hospital-header{margin-bottom:14px;padding-bottom:10px}.prisoner-name{font-size:17px}.prisoner-number{font-size:13px}.status-badge{font-size:10px;padding:5px 10px}.hospital-details{gap:8px;margin-bottom:14px}.detail-label,.detail-value{font-size:12px}.btn-approve,.btn-reject,.btn-download{font-size:13px;padding:12px 20px}.empty-state{padding:40px 16px}.empty-icon{font-size:48px}.empty-state h3{font-size:17px}.empty-state p{font-size:13px}}.hospital-card:focus-within{outline:2px solid #1976d2;outline-offset:2px}.btn-approve:focus-visible,.btn-reject:focus-visible,.btn-download:focus-visible{outline:2px solid currentColor;outline-offset:2px}@media(prefers-contrast:high){.hospital-card{border-width:2px}.status-badge,.btn-approve,.btn-reject,.btn-download{border:2px solid currentColor}}@media(prefers-reduced-motion:reduce){.hospital-card,.btn-approve,.btn-reject{transition:none}.hospital-card:hover,.btn-approve:hover,.btn-reject:hover,.btn-download:hover{transform:none}}.redcross-confirmation-modal{background:#fff;border-radius:16px;max-width:700px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.redcross-confirmation-modal .modal-header{padding:2rem;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#dc143c,#b01030);border-radius:16px 16px 0 0}.redcross-confirmation-modal .modal-header h2{margin:0;font-size:1.5rem;font-weight:700;color:#fff;display:flex;align-items:center;gap:.5rem}.redcross-confirmation-modal .close-button{background:#fff3;border:none;width:40px;height:40px;border-radius:50%;font-size:1.5rem;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.redcross-confirmation-modal .close-button:hover{background:#ffffff4d;transform:rotate(90deg)}.redcross-confirmation-modal .modal-body{padding:2rem}.prisoner-info-section{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:#f9fafb;border-radius:12px;margin-bottom:2rem}.prisoner-photo{width:100px;height:100px;border-radius:12px;overflow:hidden;flex-shrink:0;box-shadow:0 4px 12px #0000001a}.prisoner-photo .no-photo{width:100%;height:100%;background:linear-gradient(135deg,#6b7280,#4b5563);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.875rem;font-weight:600}.prisoner-details h3{margin:0 0 .5rem;font-size:1.25rem;font-weight:700;color:#1f2937}.prisoner-number{margin:0;font-size:.95rem;color:#6b7280;font-weight:500}.transfer-info-section{margin-bottom:2rem}.transfer-info-section h3{font-size:1.1rem;font-weight:700;color:#1f2937;margin:0 0 1rem}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item.full-width{grid-column:1 / -1}.info-item label{font-size:.875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.info-item .value{font-size:1rem;color:#1f2937;font-weight:500}.confirmation-form{border-top:2px solid #e5e7eb;padding-top:2rem}.form-section h3{font-size:1.1rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.form-description{font-size:.95rem;color:#6b7280;margin:0 0 1.5rem;line-height:1.5}.file-upload-section{margin-bottom:1.5rem}.file-upload-label{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;border:2px dashed #d1d5db;border-radius:12px;background:#f9fafb;cursor:pointer;transition:all .3s}.file-upload-label:hover{border-color:#dc143c;background:#fef2f2}.file-upload-label svg{color:#dc143c}.file-upload-label span{font-size:1rem;color:#374151;font-weight:500;text-align:center}.file-input{display:none}.error-message{display:flex;align-items:center;gap:.5rem;padding:1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.95rem;margin-top:1rem}.error-message svg{flex-shrink:0}.modal-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:2px solid #e5e7eb}.cancel-button,.confirm-button{flex:1;padding:.875rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}.cancel-button{background:#fff;border:2px solid #d1d5db;color:#374151}.cancel-button:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.confirm-button{background:linear-gradient(135deg,#dc143c,#b01030);border:none;color:#fff}.confirm-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #dc143c4d}.confirm-button:disabled,.cancel-button:disabled{opacity:.5;cursor:not-allowed}.spinner{width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:768px){.redcross-confirmation-modal{width:95%;max-height:95vh}.redcross-confirmation-modal .modal-header,.redcross-confirmation-modal .modal-body{padding:1.5rem}.prisoner-info-section{flex-direction:column;text-align:center}.info-grid{grid-template-columns:1fr}.modal-actions{flex-direction:column}}.pending-discharge-tab{padding:20px}.loading,.error-message{text-align:center;padding:40px;color:#666;font-size:16px}.error-message{color:#c00}.retry-button{margin-top:20px;padding:10px 20px;background:#c00;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.retry-button:hover{background:#a00}.empty-state{text-align:center;padding:60px 20px;color:#666}.empty-icon{font-size:64px;color:#28a745;margin-bottom:20px}.empty-state h3{margin:0 0 10px;color:#333;font-size:20px}.empty-state p{margin:0;color:#666;font-size:14px}.section-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.section-title{font-size:20px;font-weight:600;color:#e5e7eb;margin:0}.section-count{background:#4a9eff33;color:#4a9eff;padding:4px 12px;border-radius:12px;font-size:14px;font-weight:600}.section-description{font-size:14px;color:#9ca3af;margin:0 0 16px}.discharge-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.discharge-prisoner-info{display:flex;flex-direction:column;gap:5px}.prisoner-name{margin:0;font-size:20px;font-weight:600;color:#333}.prisoner-number{font-size:14px;color:#666;font-weight:500}.header-badges{display:flex;flex-direction:column;gap:8px;align-items:flex-end}.discharge-type-badge{color:#fff;padding:6px 12px;border-radius:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #0000001a}.status-badge{background:#ffc107;color:#333;padding:6px 12px;border-radius:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #0000001a}.discharge-details{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.detail-row{display:flex;align-items:flex-start;gap:10px}.detail-label{font-weight:600;color:#555;min-width:180px;font-size:14px}.detail-value{color:#333;font-size:14px;flex:1}.discharge-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:15px;border-top:1px solid #f0f0f0}.btn-approve,.btn-reject{padding:10px 24px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-approve{background:#28a745;color:#fff}.btn-approve:hover{background:#218838;transform:translateY(-1px);box-shadow:0 2px 6px #28a7454d}.btn-reject{background:#dc3545;color:#fff}.btn-reject:hover{background:#c82333;transform:translateY(-1px);box-shadow:0 2px 6px #dc35454d}@media(max-width:1024px){.pending-discharge-tab{padding:16px}.discharge-card{padding:18px}}@media(max-width:768px){.pending-discharge-tab{padding:12px}.discharge-list{gap:16px;padding:16px 0}.discharge-card{padding:16px}.discharge-header{flex-direction:column;gap:10px;margin-bottom:16px;padding-bottom:12px}.prisoner-name{font-size:18px}.header-badges{align-items:flex-start;flex-direction:row;gap:8px;flex-wrap:wrap}.discharge-details{gap:10px;margin-bottom:16px}.detail-row{flex-direction:column;gap:4px}.detail-label{min-width:auto;font-size:13px}.detail-value{font-size:13px}.discharge-actions{flex-direction:column;gap:10px}.btn-approve,.btn-reject{width:100%;min-height:48px}.empty-state{padding:50px 20px}.empty-icon{font-size:56px}.empty-state h3{font-size:18px}}@media(max-width:480px){.pending-discharge-tab{padding:10px}.discharge-list{gap:14px;padding:12px 0}.discharge-card{padding:14px}.discharge-header{margin-bottom:14px;padding-bottom:10px}.prisoner-name{font-size:17px}.prisoner-number{font-size:13px}.discharge-type-badge,.status-badge{font-size:10px;padding:5px 10px}.discharge-details{gap:8px;margin-bottom:14px}.detail-label,.detail-value{font-size:12px}.btn-approve,.btn-reject{font-size:13px;padding:12px 20px}.empty-state{padding:40px 16px}.empty-icon{font-size:48px}.empty-state h3{font-size:17px}.empty-state p{font-size:13px}}.discharge-card:focus-within{outline:2px solid #1976d2;outline-offset:2px}.btn-approve:focus-visible,.btn-reject:focus-visible{outline:2px solid currentColor;outline-offset:2px}@media(prefers-contrast:high){.discharge-card{border-width:2px}.discharge-type-badge,.status-badge,.btn-approve,.btn-reject{border:2px solid currentColor}}@media(prefers-reduced-motion:reduce){.discharge-card,.btn-approve,.btn-reject{transition:none}.discharge-card:hover,.btn-approve:hover,.btn-reject:hover{transform:none}}.order-info-item .value.transfer-number{font-family:Courier New,monospace;font-weight:700;color:#17e38f;font-size:16px;letter-spacing:.5px}.order-info-item .value.handover-method{display:inline-block;padding:6px 12px;background:#8b5cf626;border:1px solid rgba(139,92,246,.4);border-radius:6px;color:#8b5cf6;font-weight:600;font-size:13px}.order-info-item .value.legal-notes{background:#3b82f61a;padding:12px 16px;border-radius:8px;border-left:3px solid #3b82f6;font-size:14px;line-height:1.6;font-style:italic}.order-info-item .value.complaint-nature{background:#ef44441a;padding:12px 16px;border-radius:8px;border-left:3px solid #ef4444;font-size:14px;line-height:1.6;font-weight:600}.order-info-item .value.complaint-narrative{background:#ffffff08;padding:16px;border-radius:8px;border:1px solid rgba(255,255,255,.1);font-size:14px;line-height:1.8;white-space:pre-wrap;max-height:200px;overflow-y:auto}.order-info-item.full-width{grid-column:1 / -1}.approval-timeline{display:flex;flex-direction:column;gap:20px}.approval-timeline .timeline-item{position:relative;padding-left:50px;padding-bottom:20px}.approval-timeline .timeline-item:last-child{padding-bottom:0}.approval-timeline .timeline-item:before{content:"";position:absolute;left:15px;top:30px;bottom:-10px;width:2px;background:#17e38f4d}.approval-timeline .timeline-item:last-child:before{display:none}.approval-timeline .timeline-icon{position:absolute;left:0;top:0;width:32px;height:32px;background:#17e38f33;border:2px solid #17E38F;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;color:#17e38f;font-weight:700}.approval-timeline .timeline-content{background:#1e222b99;padding:15px;border-radius:10px;border:1px solid rgba(255,255,255,.1)}.approval-timeline .timeline-title{font-size:15px;font-weight:600;color:#fff;margin-bottom:6px}.approval-timeline .timeline-user{font-size:13px;color:#17e38f;margin-bottom:4px;font-weight:600}.approval-timeline .timeline-date{font-size:12px;color:#b0b8c4}.approval-timeline .timeline-notes{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1);font-size:13px;color:#fffc;font-style:italic;line-height:1.5}.order-info-section h3{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700;color:#17e38f;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid rgba(23,227,143,.2)}@media(max-width:768px){.order-info-grid{grid-template-columns:1fr}.order-info-item .value.complaint-narrative{max-height:150px}.approval-timeline .timeline-item{padding-left:40px}.approval-timeline .timeline-icon{width:28px;height:28px;font-size:14px}}.judicial-handover-modal{background:linear-gradient(135deg,#1e1e28fa,#14141efa);border:1px solid rgba(255,255,255,.1);border-radius:16px;width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080}.handover-form{margin-top:24px;padding:20px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:12px}.form-help{margin-top:8px;font-size:12px;color:#ffffff80;font-style:italic;line-height:1.5}.handover-method{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#00d9ff33,#09c3);border:1px solid rgba(0,217,255,.3);border-radius:8px;font-weight:600;color:#00d9ff}.redcross-section{background:linear-gradient(135deg,#dc35451a,#b428371a);border-color:#dc35454d}.redcross-section h3{color:#dc3545;border-bottom-color:#dc35454d}.redcross-info{padding:16px;background:#dc35450d;border:1px solid rgba(220,53,69,.2);border-radius:8px}.redcross-info p{margin:0 0 12px;font-size:14px;color:#ffffffe6;line-height:1.6}.redcross-info p:last-child{margin-bottom:0}.redcross-confirmation{display:flex;align-items:center;gap:10px;padding:12px;background:#dc354533;border:1px solid rgba(220,53,69,.4);border-radius:8px;margin-top:12px}.redcross-confirmation .check-icon{width:24px;height:24px;color:#dc3545;flex-shrink:0}.redcross-confirmation span{font-size:14px;font-weight:600;color:#dc3545}@media(max-width:768px){.judicial-handover-modal{max-width:100%;max-height:100vh;border-radius:0}}.pending-judicial-transfers-tab{padding:20px}.sub-tab-selector{display:flex;gap:12px;margin-bottom:24px;padding:8px;background:#17e38f0d;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(23,227,143,.1)}.sub-tab-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:transparent;border:2px solid rgba(23,227,143,.2);border-radius:8px;color:#ffffffb3;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.sub-tab-btn:hover{background:#17e38f1a;border-color:#17e38f4d;color:#ffffffe6;transform:translateY(-2px)}.sub-tab-btn.active{background:linear-gradient(135deg,#17e38f,#0fa86f);border-color:#17e38f;color:#fff;box-shadow:0 4px 15px #17e38f4d}.sub-tab-icon{font-size:18px}.sub-tab-label{font-size:14px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:12px;border-bottom:2px solid rgba(23,227,143,.2)}.section-title{font-size:20px;font-weight:700;color:#fff;margin:0;display:flex;align-items:center;gap:10px}.section-count{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 14px;background:linear-gradient(135deg,#17e38f,#0fa86f);border-radius:18px;color:#fff;font-size:16px;font-weight:700;box-shadow:0 2px 8px #17e38f4d}.section-description{font-size:14px;color:#ffffffb3;margin:8px 0 20px;line-height:1.5}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-top:24px;justify-items:center}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-icon{font-size:64px;margin-bottom:20px;opacity:.5}.empty-state h3{font-size:24px;font-weight:600;color:#fff;margin:0 0 12px}.empty-state p{font-size:16px;color:#ffffffb3;margin:0}.loading{display:flex;align-items:center;justify-content:center;padding:60px 20px;font-size:16px;color:#ffffffb3}.error-message{padding:20px;background:#ff4c4c1a;border:1px solid rgba(255,76,76,.3);border-radius:8px;color:#ff4c4c;margin-bottom:16px}.retry-button{padding:10px 20px;background:linear-gradient(135deg,#00d9ff,#09c);border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.retry-button:hover{transform:translateY(-2px);box-shadow:0 4px 15px #00d9ff4d}@media(max-width:768px){.sub-tab-selector{flex-direction:column}.sub-tab-btn{width:100%}.cards-grid{grid-template-columns:1fr}}.pending-approvals-page{padding:40px;width:100%;min-height:calc(100vh - 100px);background:transparent}.pending-approvals-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.pending-approvals-page .page-header h1{font-size:28px;font-weight:700;color:#fff;margin:0 0 4px;line-height:1.3;text-shadow:0 0 15px rgba(23,227,143,.4)}.pending-approvals-page .page-header p{color:#b0b8c4;margin:0;font-size:14px;line-height:1.5}.pending-approvals-page .loading-container{display:flex;justify-content:center;align-items:center;min-height:400px;background:#1e222bcc;border-radius:12px;border:2px solid rgba(23,227,143,.2);box-shadow:0 6px 20px #00000080,0 0 30px #17e38f1a}.pending-approvals-page .loading-spinner{width:48px;height:48px;border:4px solid rgba(23,227,143,.2);border-top:4px solid #17E38F;border-radius:50%;animation:spin 1s linear infinite;box-shadow:0 0 20px #17e38f66}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pending-approvals-page .error-container{display:flex;justify-content:center;align-items:center;min-height:400px;background:#1e222bcc;border-radius:12px;border:2px solid rgba(255,76,76,.3);box-shadow:0 6px 20px #00000080,0 0 30px #ff4c4c1a}.pending-approvals-page .error-message{text-align:center;padding:40px;max-width:500px}.pending-approvals-page .error-message p{color:#ff4c4c;font-size:16px;margin-bottom:20px;line-height:1.5;font-weight:600}.pending-approvals-page .retry-button{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;border:none;padding:12px 28px;border-radius:8px;font-size:14px;font-weight:700;cursor:pointer;transition:all .3s ease;min-height:44px;box-shadow:0 0 20px #17e38f66}.pending-approvals-page .retry-button:hover{transform:translateY(-2px);box-shadow:0 0 30px #17e38f99}.pending-approvals-page .retry-button:active{transform:translateY(0)}.pending-approvals-page .retry-button:focus{outline:2px solid #007bff;outline-offset:2px}.pending-approvals-page .tab-content{background:#1e222bcc;border-radius:0 0 12px 12px;border:2px solid rgba(23,227,143,.2);border-top:none;min-height:400px;overflow:hidden;box-shadow:0 6px 20px #00000080,0 0 30px #17e38f1a}.pending-approvals-page .tab-panel{padding:24px;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pending-approvals-page .tab-panel p{color:#b0b8c4;font-size:14px;text-align:center;padding:40px 20px;line-height:1.6}.pending-approvals-page *:focus-visible{outline:2px solid #1976d2;outline-offset:2px}@media(max-width:1024px){.pending-approvals-page{max-width:100%;padding:20px}}@media(max-width:768px){.pending-approvals-page{padding:16px}.pending-approvals-page .page-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:20px}.pending-approvals-page .page-header h1{font-size:24px}.pending-approvals-page .tab-content{border-radius:0 0 6px 6px;min-height:300px}.pending-approvals-page .tab-panel{padding:16px}.pending-approvals-page .error-message{padding:30px 20px}.pending-approvals-page .error-message p{font-size:15px}.pending-approvals-page .loading-container,.pending-approvals-page .error-container{min-height:300px}}@media(max-width:480px){.pending-approvals-page{padding:12px}.pending-approvals-page .page-header{margin-bottom:16px}.pending-approvals-page .page-header h1{font-size:20px}.pending-approvals-page .page-header p{font-size:13px}.pending-approvals-page .tab-panel{padding:12px}.pending-approvals-page .tab-content{border-radius:0 0 4px 4px}.pending-approvals-page .retry-button{width:100%;padding:14px 20px}.pending-approvals-page .loading-spinner{width:40px;height:40px;border-width:3px}}@media print{.pending-approvals-page{padding:0}.pending-approvals-page .page-header{margin-bottom:20px}.pending-approvals-page .tab-content{border:none;box-shadow:none}}.hospital-wizard{max-width:900px;margin:0 auto}.hospital-wizard-header{margin-bottom:32px}.hospital-wizard-header h2{font-size:24px;font-weight:700;color:#e5e7eb;margin:0 0 24px}.hospital-wizard-steps{display:flex;justify-content:space-between;gap:16px}.hospital-wizard-step{display:flex;align-items:center;gap:12px;flex:1;padding:16px;background:#4a9eff0d;border:2px solid #3a3f4b;border-radius:12px;transition:all .3s ease}.hospital-wizard-step.active{background:#4a9eff26;border-color:#4a9eff}.hospital-wizard-step-number{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#3a3f4b;color:#9ca3af;border-radius:50%;font-weight:700;font-size:14px}.hospital-wizard-step.active .hospital-wizard-step-number{background:#4a9eff;color:#fff}.hospital-wizard-step-label{font-size:14px;font-weight:600;color:#9ca3af}.hospital-wizard-step.active .hospital-wizard-step-label{color:#e5e7eb}.hospital-wizard-error{padding:16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;margin-bottom:24px}.hospital-wizard-body{min-height:400px;margin-bottom:24px}.hospital-wizard-step-content h3{font-size:20px;font-weight:600;color:#e5e7eb;margin:0 0 24px}.hospital-wizard-search{display:flex;gap:12px;margin-bottom:24px}.hospital-wizard-input{flex:1;padding:12px 16px;background:#1a1d24;border:1px solid #3a3f4b;border-radius:8px;color:#e5e7eb;font-size:14px;transition:all .2s ease}.hospital-wizard-input:focus{outline:none;border-color:#4a9eff;box-shadow:0 0 0 3px #4a9eff1a}.hospital-wizard-textarea{width:100%;padding:12px 16px;background:#1a1d24;border:1px solid #3a3f4b;border-radius:8px;color:#e5e7eb;font-size:14px;font-family:inherit;resize:vertical;transition:all .2s ease}.hospital-wizard-textarea:focus{outline:none;border-color:#4a9eff;box-shadow:0 0 0 3px #4a9eff1a}.hospital-wizard-btn{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none}.hospital-wizard-btn:disabled{opacity:.5;cursor:not-allowed}.hospital-wizard-btn-primary{background:#4a9eff;color:#fff}.hospital-wizard-btn-primary:hover:not(:disabled){background:#3b82f6;transform:translateY(-1px);box-shadow:0 4px 12px #4a9eff4d}.hospital-wizard-btn-secondary{background:transparent;color:#9ca3af;border:1px solid #3a3f4b}.hospital-wizard-btn-secondary:hover{background:#4a9eff1a;color:#4a9eff;border-color:#4a9eff}.hospital-wizard-btn-success{background:#10b981;color:#fff}.hospital-wizard-btn-success:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.hospital-wizard-selected{padding:16px;background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:8px;color:#10b981;display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.selected-prisoner-actions{display:flex;gap:8px;align-items:center}.hospital-wizard-btn-view{padding:6px 12px;background:#3b82f6;border:1px solid #3b82f6;border-radius:6px;color:#fff;font-size:12px;cursor:pointer;transition:all .2s ease}.hospital-wizard-btn-view:hover{background:#2563eb;border-color:#2563eb}.hospital-wizard-btn-clear{padding:6px 12px;background:transparent;border:1px solid rgba(16,185,129,.3);border-radius:6px;color:#10b981;font-size:12px;cursor:pointer;transition:all .2s ease}.hospital-wizard-btn-clear:hover{background:#10b98133}.hospital-wizard-results{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.hospital-wizard-result-item{padding:16px;background:#1a1d24;border:1px solid #3a3f4b;border-radius:8px;cursor:pointer;transition:all .2s ease}.hospital-wizard-result-item:hover{border-color:#4a9eff;background:#4a9eff0d}.hospital-wizard-result-name{font-size:16px;font-weight:600;color:#e5e7eb;margin-bottom:4px}.hospital-wizard-result-id{font-size:13px;color:#9ca3af;margin-bottom:4px}.hospital-wizard-result-prison{font-size:12px;color:#6b7280}.hospital-wizard-no-hospitals{padding:40px;text-align:center;color:#fbbf24;background:#fbbf241a;border:2px dashed #fbbf24;border-radius:12px}.hospital-wizard-hospital-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.hospital-wizard-hospital-item{padding:20px;background:#1a1d24;border:2px solid #3a3f4b;border-radius:12px;cursor:pointer;transition:all .2s ease}.hospital-wizard-hospital-item:hover{border-color:#4a9eff;background:#4a9eff0d}.hospital-wizard-hospital-item.selected{border-color:#10b981;background:#10b9811a}.hospital-wizard-hospital-name{font-size:16px;font-weight:600;color:#fff!important;margin-bottom:8px}.hospital-wizard-hospital-location{font-size:13px;color:#d1d5db!important}.hospital-wizard-form-group{margin-bottom:24px}.hospital-wizard-label{display:block;font-size:14px;font-weight:600;color:#e5e7eb;margin-bottom:8px}.hospital-wizard-required{color:#ef4444}.hospital-wizard-footer{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid #3a3f4b}.hospital-wizard-footer-right{display:flex;gap:12px}.hospital-wizard-success{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.hospital-wizard-success-icon{width:80px;height:80px;background:#10b981;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:48px;margin-bottom:24px;animation:successPulse .5s ease}@keyframes successPulse{0%{transform:scale(0)}50%{transform:scale(1.1)}to{transform:scale(1)}}.hospital-wizard-success h2{font-size:24px;font-weight:700;color:#e5e7eb;margin:0 0 12px}.hospital-wizard-success p{font-size:16px;color:#9ca3af;margin:0}@media(max-width:768px){.hospital-wizard-steps{flex-direction:column}.hospital-wizard-step{padding:12px}.hospital-wizard-search{flex-direction:column}.hospital-wizard-hospital-list{grid-template-columns:1fr}.hospital-wizard-footer{flex-direction:column;gap:12px}.hospital-wizard-footer-right{width:100%;flex-direction:column}.hospital-wizard-btn{width:100%}}.hospital-wizard-search-mode{display:flex;gap:12px;margin-bottom:24px;padding:8px;background:#1a1d24;border-radius:12px;border:1px solid #3a3f4b}.hospital-wizard-mode-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:transparent;border:2px solid transparent;border-radius:8px;color:#9ca3af;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.hospital-wizard-mode-btn:hover{color:#e5e7eb;background:#4a9eff0d}.hospital-wizard-mode-btn.active{background:#4a9eff26;border-color:#4a9eff;color:#4a9eff}.mode-icon{font-size:18px}.hospital-wizard-fingerprint-search{display:flex;flex-direction:column;align-items:center;gap:20px;padding:32px;background:#1a1d24;border:2px dashed #3a3f4b;border-radius:12px;margin-bottom:24px}.fingerprint-search-info{text-align:center}.fingerprint-search-info p{margin:0 0 8px;color:#9ca3af;font-size:14px}.scanner-status{font-size:13px;color:#6b7280;font-style:italic}.scanner-ready{color:#10b981;font-weight:600}.scanner-capturing{color:#4a9eff;font-weight:600;animation:pulse 1.5s ease-in-out infinite}.scanner-error{color:#ef4444;font-weight:500}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.hospital-wizard-btn-fingerprint{display:flex;align-items:center;gap:12px;padding:16px 32px;background:linear-gradient(135deg,#4a9eff,#3b82f6);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #4a9eff4d}.hospital-wizard-btn-fingerprint:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #4a9eff66}.hospital-wizard-btn-fingerprint:disabled{opacity:.6;cursor:not-allowed;transform:none}.fingerprint-icon{font-size:24px;animation:fingerprint-pulse 2s ease-in-out infinite}@keyframes fingerprint-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.fingerprint-match-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;background:#10b98133;border-radius:12px;font-size:12px;font-weight:600;color:#10b981;margin-left:12px}.results-count{font-size:14px;color:#9ca3af;margin-bottom:12px;padding:8px 12px;background:#4a9eff0d;border-radius:6px;text-align:center}@media(max-width:768px){.hospital-wizard-search-mode{flex-direction:column}.hospital-wizard-mode-btn{width:100%}.hospital-wizard-fingerprint-search{padding:24px 16px}.hospital-wizard-btn-fingerprint{width:100%;justify-content:center}}.hospital-wizard-match-comparison{padding:24px;background:linear-gradient(135deg,#4a9eff0d,#8b5cf60d);border:2px solid #4a9eff;border-radius:16px;margin-bottom:24px;animation:slideIn .3s ease}.hospital-wizard-match-comparison h4{font-size:18px;font-weight:700;color:#e5e7eb;margin:0 0 8px;text-align:center}.comparison-subtitle{font-size:14px;color:#9ca3af;text-align:center;margin:0 0 24px}.match-methods-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.match-method-card{padding:24px;background:#1a1d24;border:2px solid #3a3f4b;border-radius:12px;transition:all .3s ease;display:flex;flex-direction:column}.match-method-card:hover{border-color:#4a9eff;transform:translateY(-2px);box-shadow:0 8px 24px #4a9eff26}.match-method-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.match-method-icon{font-size:32px}.match-method-header h5{font-size:16px;font-weight:700;color:#e5e7eb;margin:0}.match-method-description{font-size:13px;color:#9ca3af;margin:0 0 20px;line-height:1.5;flex-grow:1}.match-method-stats{display:flex;gap:16px;margin-bottom:20px;padding:16px;background:#4a9eff0d;border-radius:8px}.match-stat{display:flex;flex-direction:column;align-items:center;flex:1}.match-stat-value{font-size:24px;font-weight:700;color:#4a9eff;margin-bottom:4px}.match-stat-label{font-size:11px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.match-method-card .hospital-wizard-btn{width:100%;justify-content:center}@media(max-width:768px){.match-methods-grid{grid-template-columns:1fr}.match-method-stats{flex-direction:column;gap:12px}.match-stat{flex-direction:row;justify-content:space-between;width:100%}}.hospital-wizard-result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.hospital-wizard-match-score{display:inline-flex;align-items:center;justify-content:center;min-width:50px;padding:4px 12px;border-radius:12px;font-size:14px;font-weight:700;background:#4a9eff26;color:#4a9eff;border:1px solid rgba(74,158,255,.3)}.hospital-wizard-match-score.high{background:#10b98126;color:#10b981;border-color:#10b9814d}.hospital-wizard-match-score.medium{background:#fbbf2426;color:#fbbf24;border-color:#fbbf244d}.hospital-wizard-match-score.low{background:#ef444426;color:#ef4444;border-color:#ef44444d}.hospital-wizard-result-finger{font-size:12px;color:#6b7280;margin-top:4px;text-transform:capitalize}.hospital-wizard-result-confidence{display:inline-block;padding:2px 8px;border-radius:8px;font-size:11px;font-weight:600;margin-top:6px;text-transform:uppercase;letter-spacing:.5px}.hospital-wizard-result-confidence.confidence-high{background:#10b98126;color:#10b981}.hospital-wizard-result-confidence.confidence-medium{background:#fbbf2426;color:#fbbf24}.hospital-wizard-result-confidence.confidence-low{background:#ef444426;color:#ef4444}.results-method{font-size:12px;color:#9ca3af;font-weight:400}.match-method-label{font-size:11px;opacity:.8}.hospital-wizard-result-item{position:relative;transition:all .2s ease}.hospital-wizard-result-item:hover .hospital-wizard-match-score{transform:scale(1.05)}@media(max-width:768px){.hospital-wizard-result-header{flex-direction:column;align-items:flex-start;gap:8px}.hospital-wizard-match-score{align-self:flex-start}.selected-prisoner-info{margin-bottom:12px}}.photo-modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10001;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.photo-modal-content{background:#1a1d24;border-radius:16px;max-width:700px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease;border:1px solid #3a3f4b}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.photo-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #3a3f4b}.photo-modal-header h3{margin:0;font-size:20px;font-weight:700;color:#e5e7eb}.photo-modal-close{background:transparent;border:none;font-size:32px;color:#9ca3af;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s ease}.photo-modal-close:hover{background:#ef44441a;color:#ef4444}.photo-modal-body{padding:24px;display:grid;grid-template-columns:1fr 1fr;gap:24px}.photo-modal-image-section{display:flex;align-items:center;justify-content:center;background:#0f1117;border-radius:12px;padding:20px;border:2px solid #3a3f4b}.photo-modal-image{width:100%;max-width:280px;height:auto;border-radius:12px;box-shadow:0 8px 24px #0000004d;border:3px solid #4a9eff}.photo-modal-no-image{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:#6b7280}.photo-modal-no-image-icon{font-size:80px;margin-bottom:16px;opacity:.5}.photo-modal-no-image p{margin:0;font-size:14px}.photo-modal-info-section{display:flex;flex-direction:column;gap:16px}.photo-modal-info-item{display:flex;flex-direction:column;gap:6px}.photo-modal-info-item label{font-size:12px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.photo-modal-info-value{font-size:16px;font-weight:600;color:#e5e7eb}.photo-modal-match-score{display:inline-flex;align-items:center;justify-content:center;padding:6px 16px;border-radius:12px;font-size:18px;font-weight:700;width:fit-content}.photo-modal-match-score.high{background:#10b98133;color:#10b981;border:2px solid rgba(16,185,129,.4)}.photo-modal-match-score.medium{background:#fbbf2433;color:#fbbf24;border:2px solid rgba(251,191,36,.4)}.photo-modal-match-score.low{background:#ef444433;color:#ef4444;border:2px solid rgba(239,68,68,.4)}.photo-modal-confidence{display:inline-flex;align-items:center;padding:4px 12px;border-radius:8px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;width:fit-content}.photo-modal-confidence.confidence-high{background:#10b98133;color:#10b981}.photo-modal-confidence.confidence-medium{background:#fbbf2433;color:#fbbf24}.photo-modal-confidence.confidence-low{background:#ef444433;color:#ef4444}.photo-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:24px;border-top:1px solid #3a3f4b}.photo-modal-footer .hospital-wizard-btn{min-width:140px}@media(max-width:768px){.photo-modal-content{width:95%;max-height:95vh}.photo-modal-body{grid-template-columns:1fr;gap:20px}.photo-modal-image-section{order:-1}.photo-modal-image{max-width:200px}.photo-modal-footer{flex-direction:column}.photo-modal-footer .hospital-wizard-btn{width:100%}}@media(max-width:1024px)and (min-width:769px){.photo-modal-content{max-width:600px}.photo-modal-image{max-width:220px}}.hospital-wizard-validation-error{display:flex;gap:12px;padding:16px;background:#ef44441a;border:2px solid #ef4444;border-radius:8px;margin-bottom:20px;animation:slideIn .3s ease}.validation-error-icon{font-size:24px;flex-shrink:0}.validation-error-content{flex:1}.validation-error-content strong{display:block;color:#ef4444;font-size:16px;margin-bottom:4px}.validation-error-content p{color:#fca5a5;font-size:14px;line-height:1.5;margin:0}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:6px;font-weight:600;font-size:13px;white-space:nowrap;transition:all .2s ease}.status-badge-small{padding:4px 8px;font-size:11px}.status-badge-large{padding:8px 16px;font-size:14px}.status-pending{background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.status-approved{background:#3b82f626;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.status-rejected{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.status-at-hospital{background:#8b5cf626;color:#8b5cf6;border:1px solid rgba(139,92,246,.3)}.status-report-complete{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.3)}.status-discharged{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.status-returned{background:#6366f126;color:#6366f1;border:1px solid rgba(99,102,241,.3)}.status-completed{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.status-default{background:#9ca3af26;color:#9ca3af;border:1px solid rgba(156,163,175,.3)}.hospital-order-card{background:#252932;border:1px solid #3a3f4b;border-radius:12px;padding:20px;margin-bottom:16px;transition:all .3s ease;cursor:pointer}.hospital-order-card:hover{border-color:#4a9eff;box-shadow:0 4px 12px #4a9eff1a;transform:translateY(-2px)}.hospital-order-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #3a3f4b}.hospital-order-card-title{display:flex;align-items:center;gap:12px}.hospital-order-card-title h3{margin:0;font-size:18px;font-weight:600;color:#e5e7eb}.hospital-order-card-date{font-size:13px;color:#9ca3af}.hospital-order-card-body{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.hospital-order-info-row{display:flex;gap:16px}.hospital-order-info-item{display:flex;flex-direction:column;gap:4px;flex:1}.hospital-order-label{font-size:12px;color:#9ca3af;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.hospital-order-value{font-size:14px;color:#e5e7eb;font-weight:500}.hospital-order-reason{line-height:1.5;max-height:60px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.hospital-order-card-footer{display:flex;gap:12px;justify-content:flex-end;padding-top:12px;border-top:1px solid #3a3f4b}.hospital-order-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none}.hospital-order-btn-primary{background:#4a9eff;color:#fff}.hospital-order-btn-primary:hover{background:#3b82f6;transform:translateY(-1px);box-shadow:0 4px 12px #4a9eff4d}.hospital-order-btn-secondary{background:transparent;color:#9ca3af;border:1px solid #3a3f4b}.hospital-order-btn-secondary:hover{background:#4a9eff1a;color:#4a9eff;border-color:#4a9eff}@media(max-width:768px){.hospital-order-card{padding:16px}.hospital-order-card-header{flex-direction:column;gap:8px}.hospital-order-card-title{flex-direction:column;align-items:flex-start;gap:8px}.hospital-order-card-footer{flex-direction:column}.hospital-order-btn{width:100%}}.incoming-patients-tab{max-width:1200px;margin:0 auto}.incoming-patients-header{margin-bottom:24px}.incoming-patients-header h2{font-size:24px;font-weight:700;color:#e5e7eb;margin:0 0 8px}.incoming-patients-subtitle{font-size:14px;color:#9ca3af;margin:0}.incoming-patients-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#9ca3af}.incoming-patients-spinner{width:40px;height:40px;border:4px solid #3a3f4b;border-top-color:#4a9eff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.incoming-patients-error{padding:16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.incoming-patients-error-close{background:none;border:none;color:#ef4444;font-size:24px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.incoming-patients-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.incoming-patients-empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.incoming-patients-empty h3{font-size:20px;font-weight:600;color:#e5e7eb;margin:0 0 8px}.incoming-patients-empty p{font-size:14px;color:#9ca3af;margin:0}.incoming-patients-list{display:flex;flex-direction:column;gap:16px}.incoming-patient-item{background:#1a1d24;border:1px solid #3a3f4b;border-radius:12px;padding:20px}.incoming-patient-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:16px;padding-top:16px;border-top:1px solid #3a3f4b}.incoming-patient-btn{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none}.incoming-patient-btn:disabled{opacity:.5;cursor:not-allowed}.incoming-patient-btn-confirm{background:#10b981;color:#fff}.incoming-patient-btn-confirm:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}@media(max-width:768px){.incoming-patient-actions{flex-direction:column}.incoming-patient-btn{width:100%}}.incoming-patients-filters{display:flex;gap:10px;margin-top:15px}.filter-btn{padding:8px 16px;border:1px solid #ddd;background:#fff;color:#333;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.filter-btn:hover{background:#f5f5f5;border-color:#06c;color:#06c}.filter-btn.active{background:#06c;color:#fff;border-color:#06c}.incoming-patient-status-badge{display:inline-block;padding:6px 12px;background:#e8f5e9;color:#2e7d32;border-radius:4px;font-size:13px;font-weight:500}.pending-approvals-tab{max-width:1200px;margin:0 auto}.pending-approvals-header{margin-bottom:24px}.pending-approvals-header h2{font-size:24px;font-weight:700;color:#e5e7eb;margin:0 0 8px}.pending-approvals-subtitle{font-size:14px;color:#9ca3af;margin:0}.pending-approvals-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#9ca3af}.pending-approvals-spinner{width:40px;height:40px;border:4px solid #3a3f4b;border-top-color:#4a9eff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.pending-approvals-error{padding:16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.pending-approvals-error-close{background:none;border:none;color:#ef4444;font-size:24px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.pending-approvals-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.pending-approvals-empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.pending-approvals-empty h3{font-size:20px;font-weight:600;color:#e5e7eb;margin:0 0 8px}.pending-approvals-empty p{font-size:14px;color:#9ca3af;margin:0}.pending-approvals-list{display:flex;flex-direction:column;gap:16px}.pending-approval-item{background:#1a1d24;border:1px solid #3a3f4b;border-radius:12px;padding:20px}.pending-approval-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:16px;padding-top:16px;border-top:1px solid #3a3f4b}.pending-approval-btn{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none}.pending-approval-btn:disabled{opacity:.5;cursor:not-allowed}.pending-approval-btn-approve{background:#10b981;color:#fff}.pending-approval-btn-approve:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.pending-approval-btn-reject{background:#ef4444;color:#fff}.pending-approval-btn-reject:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.pending-approval-btn-secondary{background:transparent;color:#9ca3af;border:1px solid #3a3f4b}.pending-approval-btn-secondary:hover:not(:disabled){background:#4a9eff1a;color:#4a9eff;border-color:#4a9eff}.pending-approval-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.pending-approval-modal{background:#252932;border:1px solid #3a3f4b;border-radius:12px;padding:32px;max-width:500px;width:100%}.pending-approval-modal h3{font-size:20px;font-weight:700;color:#e5e7eb;margin:0 0 12px}.pending-approval-modal p{font-size:14px;color:#9ca3af;margin:0 0 20px}.pending-approval-textarea{width:100%;padding:12px 16px;background:#1a1d24;border:1px solid #3a3f4b;border-radius:8px;color:#e5e7eb;font-size:14px;font-family:inherit;resize:vertical;margin-bottom:20px;transition:all .2s ease}.pending-approval-textarea:focus{outline:none;border-color:#4a9eff;box-shadow:0 0 0 3px #4a9eff1a}.pending-approval-modal-actions{display:flex;gap:12px;justify-content:flex-end}@media(max-width:768px){.pending-approval-actions{flex-direction:column}.pending-approval-btn{width:100%}.pending-approval-modal-actions{flex-direction:column}}.edit-hospital-order-modal{max-width:900px;width:90%;max-height:90vh!important;background:#1a1a1a;border-radius:12px;display:flex;flex-direction:column;overflow-y:auto!important;overflow-x:hidden!important}.edit-hospital-order-modal::-webkit-scrollbar{width:10px}.edit-hospital-order-modal::-webkit-scrollbar-track{background:#17e38f1a;border-radius:10px}.edit-hospital-order-modal::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#17e38f,#00d9ff);border-radius:10px}.edit-hospital-order-modal::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#00d9ff,#17e38f)}.modal-content{position:relative}.modal-header{padding:24px;border-bottom:1px solid #333;display:flex;justify-content:space-between;align-items:center;background:#222}.modal-header h2{color:#17e38f;margin:0;font-size:24px}.close-btn{background:none;border:none;color:#888;font-size:32px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .3s ease}.close-btn:hover{color:#17e38f}.edit-hospital-order-modal .modal-header{flex-shrink:0}.edit-hospital-order-modal .modal-body{padding:24px;overflow:visible!important}.edit-hospital-order-modal .modal-footer{flex-shrink:0}.change-request-banner{background:linear-gradient(135deg,#ff9800,#f57c00);padding:16px 20px;border-radius:8px;color:#fff;margin-bottom:24px;border:2px solid #e65100}.change-request-banner strong{display:flex;align-items:center;gap:8px;font-size:16px;margin-bottom:8px}.change-request-banner p{margin:0;font-size:14px;line-height:1.5;padding-left:28px}.edit-hospital-order-form{display:flex;flex-direction:column;gap:24px}.form-section{background:#222;padding:20px;border-radius:8px;border:1px solid #333}.form-section h3{color:#17e38f;font-size:16px;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #333}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#888;font-size:13px;font-weight:600;text-transform:uppercase}.form-input,.form-select,.form-textarea{background:#1a1a1a;border:1px solid #333;border-radius:6px;padding:10px 12px;color:#fff;font-size:14px;font-family:inherit;transition:all .3s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#17e38f;box-shadow:0 0 0 3px #17e38f1a}.form-input.disabled{opacity:.6;cursor:not-allowed;background:#151515}.form-textarea{resize:vertical;min-height:80px}.form-select{cursor:pointer}.form-select option{background:#1a1a1a;color:#fff}.modal-footer{padding:20px 24px;border-top:1px solid #333;display:flex;gap:12px;justify-content:flex-end;background:#222}.btn{padding:10px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary{background:#333;color:#fff}.btn-secondary:hover{background:#444}.btn-primary{background:#17e38f;color:#000}.btn-primary:hover{background:#15c97d;transform:translateY(-2px);box-shadow:0 4px 12px #17e38f4d}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:disabled:hover{transform:none;box-shadow:none}@media(max-width:768px){.edit-hospital-order-modal{width:95%;max-height:95vh}.modal-header{padding:16px}.modal-header h2{font-size:20px}.modal-body{padding:16px}.form-grid{grid-template-columns:1fr}.modal-footer{padding:16px;flex-direction:column}.btn{width:100%}}.hospital-order-modal-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hospital-order-modal-content{background:#1a1d29;border-radius:12px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080;border:1px solid rgba(255,255,255,.1)}.hospital-order-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 28px;border-bottom:1px solid rgba(255,255,255,.1)}.hospital-order-modal-header h2{margin:0;font-size:24px;font-weight:600;color:#fff}.hospital-order-modal-subtitle{margin:4px 0 0;font-size:14px;color:#fff9}.hospital-order-modal-close{background:none;border:none;font-size:32px;color:#fff9;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.hospital-order-modal-close:hover{background:#ffffff1a;color:#fff}.hospital-order-modal-body{flex:1;overflow-y:auto;padding:24px 28px}.hospital-order-detail-section{margin-bottom:28px}.hospital-order-detail-section:last-child{margin-bottom:0}.hospital-order-detail-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#4a9eff;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid rgba(74,158,255,.3);padding-bottom:8px}.hospital-order-status-display{display:flex;align-items:center;gap:16px}.hospital-order-status-date{font-size:13px;color:#fff9}.hospital-order-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.hospital-order-detail-item{display:flex;flex-direction:column;gap:6px}.hospital-order-detail-label{font-size:12px;font-weight:600;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px}.hospital-order-detail-value{font-size:15px;color:#fff;font-weight:500}.hospital-order-detail-text{font-size:14px;color:#ffffffd9;line-height:1.6;margin:0;padding:12px;background:#ffffff0d;border-radius:6px;border-left:3px solid #4a9eff}.hospital-order-modal-footer{padding:20px 28px;border-top:1px solid rgba(255,255,255,.1);display:flex;gap:12px;justify-content:flex-end}.hospital-order-download-btn{background:linear-gradient(135deg,#4a9eff,#357abd);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:10px;transition:all .3s;box-shadow:0 4px 12px #4a9eff4d}.hospital-order-download-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #4a9eff66}.hospital-order-download-btn:disabled{opacity:.6;cursor:not-allowed}.hospital-order-download-icon{font-size:18px}.hospital-order-download-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:hospital-order-spin .8s linear infinite}@keyframes hospital-order-spin{to{transform:rotate(360deg)}}.hospital-order-close-btn{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);padding:12px 24px;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.hospital-order-close-btn:hover{background:#ffffff26;border-color:#ffffff4d}.hospital-order-modal-body::-webkit-scrollbar{width:8px}.hospital-order-modal-body::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.hospital-order-modal-body::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.hospital-order-modal-body::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@media(max-width:768px){.hospital-order-modal-content{max-width:100%;max-height:95vh}.hospital-order-detail-grid{grid-template-columns:1fr}.hospital-order-modal-footer{flex-direction:column-reverse}.hospital-order-download-btn,.hospital-order-close-btn{width:100%;justify-content:center}}.hospital-order-prisoner-info{display:flex;gap:20px;align-items:flex-start}.hospital-order-prisoner-photo{flex-shrink:0;width:120px;height:150px;border-radius:8px;overflow:hidden;border:2px solid rgba(255,255,255,.1);background:#ffffff0d}.hospital-order-prisoner-photo img{width:100%;height:100%;object-fit:cover}.hospital-order-prisoner-info .hospital-order-detail-grid{flex:1}.hospital-order-change-request-banner{background:linear-gradient(135deg,#ff9800,#f57c00);padding:16px 20px;border-radius:8px;color:#fff;margin-bottom:20px;border:2px solid #e65100}.hospital-order-change-request-banner .banner-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.hospital-order-change-request-banner .banner-icon{font-size:20px}.hospital-order-change-request-banner .banner-header strong{font-size:16px;font-weight:600}.hospital-order-change-request-banner .banner-text{margin:0 0 8px;font-size:14px;line-height:1.5;padding-left:28px}.hospital-order-change-request-banner .banner-meta{display:flex;gap:20px;font-size:12px;opacity:.9;padding-left:28px}.hospital-order-edit-btn,.hospital-order-resubmit-btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-right:10px}.hospital-order-edit-btn{background:#17e38f;color:#000}.hospital-order-edit-btn:hover:not(:disabled){background:#15c97d;transform:translateY(-2px);box-shadow:0 4px 12px #17e38f4d}.hospital-order-resubmit-btn{background:#4caf50;color:#fff}.hospital-order-resubmit-btn:hover:not(:disabled){background:#45a049;transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.hospital-order-edit-btn:disabled,.hospital-order-resubmit-btn:disabled{opacity:.5;cursor:not-allowed}.discharge-tab{max-width:1200px;margin:0 auto}.discharge-tab-header{margin-bottom:24px}.discharge-tab-header h2{font-size:24px;font-weight:700;color:#e5e7eb;margin:0 0 8px}.discharge-tab-subtitle{font-size:14px;color:#9ca3af;margin:0}.discharge-tab-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#9ca3af}.discharge-tab-spinner{width:40px;height:40px;border:4px solid #3a3f4b;border-top-color:#4a9eff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.discharge-tab-error{padding:16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.discharge-tab-error-close{background:none;border:none;color:#ef4444;font-size:24px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.discharge-tab-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.discharge-tab-empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.discharge-tab-empty h3{font-size:20px;font-weight:600;color:#e5e7eb;margin:0 0 8px}.discharge-tab-empty p{font-size:14px;color:#9ca3af;margin:0}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:24px}@media(max-width:768px){.cards-grid{grid-template-columns:1fr}}.discharge-tab-btn{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none}.discharge-tab-btn:disabled{opacity:.5;cursor:not-allowed}.discharge-tab-btn-primary{background:#4a9eff;color:#fff}.discharge-tab-btn-primary:hover:not(:disabled){background:#3b82f6;transform:translateY(-1px);box-shadow:0 4px 12px #4a9eff4d}.discharge-tab-btn-secondary{background:transparent;color:#9ca3af;border:1px solid #3a3f4b}.discharge-tab-btn-secondary:hover:not(:disabled){background:#4a9eff1a;color:#4a9eff;border-color:#4a9eff}.discharge-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.discharge-modal{background:#252932;border:1px solid #3a3f4b;border-radius:12px;padding:32px;max-width:600px;width:100%}.discharge-modal h3{font-size:20px;font-weight:700;color:#e5e7eb;margin:0 0 12px}.discharge-modal p{font-size:14px;color:#9ca3af;margin:0 0 20px}.discharge-modal-textarea{width:100%;padding:12px 16px;background:#1a1d24;border:1px solid #3a3f4b;border-radius:8px;color:#e5e7eb;font-size:14px;font-family:inherit;resize:vertical;margin-bottom:20px;transition:all .2s ease}.discharge-modal-textarea:focus{outline:none;border-color:#4a9eff;box-shadow:0 0 0 3px #4a9eff1a}.discharge-modal-actions{display:flex;gap:12px;justify-content:flex-end}@media(max-width:768px){.discharge-tab-actions{flex-direction:column}.discharge-tab-btn{width:100%}.discharge-modal-actions{flex-direction:column}}.discharge-tab-filters{display:flex;gap:10px;margin-top:15px}.discharge-tab-filters .filter-btn{padding:8px 16px;border:1px solid #ddd;background:#fff;color:#333;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.discharge-tab-filters .filter-btn:hover{background:#f5f5f5;border-color:#06c;color:#06c}.discharge-tab-filters .filter-btn.active{background:#06c;color:#fff;border-color:#06c}.discharge-status-badge{display:inline-block;padding:6px 12px;background:#e8f5e9;color:#2e7d32;border-radius:4px;font-size:13px;font-weight:500}.medical-report-form{max-width:1400px;margin:0 auto}.medical-report-header{margin-bottom:24px}.medical-report-header h2{font-size:24px;font-weight:700;color:#e5e7eb;margin:0 0 8px}.medical-report-subtitle{font-size:14px;color:#9ca3af;margin:0}.medical-report-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#9ca3af}.medical-report-spinner{width:40px;height:40px;border:4px solid #3a3f4b;border-top-color:#4a9eff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.medical-report-error{padding:16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.medical-report-success{padding:16px;background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:8px;color:#10b981;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.medical-report-error-close,.medical-report-success-close{background:none;border:none;font-size:24px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.medical-report-error-close{color:#ef4444}.medical-report-success-close{color:#10b981}.medical-report-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.medical-report-empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.medical-report-empty h3{font-size:20px;font-weight:600;color:#e5e7eb;margin:0 0 8px}.medical-report-empty p{font-size:14px;color:#9ca3af;margin:0}.medical-report-layout{display:grid;grid-template-columns:300px 1fr;gap:24px}.medical-report-sidebar{background:#1a1d24;border:1px solid #3a3f4b;border-radius:12px;padding:20px;height:fit-content}.medical-report-sidebar h3{font-size:16px;font-weight:600;color:#e5e7eb;margin:0 0 16px}.medical-report-patient-list{display:flex;flex-direction:column;gap:8px}.medical-report-patient-item{padding:12px;background:#252932;border:1px solid #3a3f4b;border-radius:8px;cursor:pointer;transition:all .2s ease}.medical-report-patient-item:hover{border-color:#4a9eff;background:#4a9eff0d}.medical-report-patient-item.active{border-color:#4a9eff;background:#4a9eff26}.medical-report-patient-name{font-size:14px;font-weight:600;color:#e5e7eb;margin-bottom:4px}.medical-report-patient-id{font-size:12px;color:#9ca3af;margin-bottom:4px}.medical-report-patient-order{font-size:11px;color:#6b7280}.medical-report-content{background:#1a1d24;border:1px solid #3a3f4b;border-radius:12px;padding:24px}.medical-report-patient-info{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #3a3f4b}.medical-report-patient-info h3{font-size:18px;font-weight:600;color:#e5e7eb;margin:0 0 16px}.medical-report-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.medical-report-info-item{display:flex;flex-direction:column;gap:4px}.medical-report-info-label{font-size:12px;color:#9ca3af;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.medical-report-info-value{font-size:14px;color:#e5e7eb;font-weight:500}.medical-report-fields{display:flex;flex-direction:column;gap:24px;margin-bottom:32px}.medical-report-field{display:flex;flex-direction:column;gap:8px}.medical-report-label{font-size:14px;font-weight:600;color:#e5e7eb}.medical-report-required{color:#ef4444}.medical-report-textarea{width:100%;padding:12px 16px;background:#252932;border:1px solid #3a3f4b;border-radius:8px;color:#e5e7eb;font-size:14px;font-family:inherit;resize:vertical;transition:all .2s ease}.medical-report-textarea:focus{outline:none;border-color:#4a9eff;box-shadow:0 0 0 3px #4a9eff1a}.medical-report-file-input{padding:12px;background:#252932;border:1px solid #3a3f4b;border-radius:8px;color:#e5e7eb;font-size:14px;cursor:pointer}.medical-report-file-input:disabled{opacity:.5;cursor:not-allowed}.medical-report-uploading{font-size:13px;color:#4a9eff;margin-top:8px}.medical-report-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:24px;border-top:1px solid #3a3f4b}.medical-report-btn{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none}.medical-report-btn:disabled{opacity:.5;cursor:not-allowed}.medical-report-btn-primary{background:#10b981;color:#fff}.medical-report-btn-primary:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.medical-report-btn-secondary{background:transparent;color:#9ca3af;border:1px solid #3a3f4b}.medical-report-btn-secondary:hover:not(:disabled){background:#4a9eff1a;color:#4a9eff;border-color:#4a9eff}@media(max-width:1024px){.medical-report-layout{grid-template-columns:1fr}.medical-report-sidebar{order:2}.medical-report-content{order:1}}@media(max-width:768px){.medical-report-info-grid{grid-template-columns:1fr}.medical-report-actions{flex-direction:column}.medical-report-btn{width:100%}}.medical-report-filters{display:flex;gap:10px;margin-top:15px}.medical-report-filters .filter-btn{padding:8px 16px;border:1px solid #ddd;background:#fff;color:#333;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.medical-report-filters .filter-btn:hover{background:#f5f5f5;border-color:#06c;color:#06c}.medical-report-filters .filter-btn.active{background:#06c;color:#fff;border-color:#06c}.return-confirmations-tab{max-width:1200px;margin:0 auto}.return-confirmations-header{margin-bottom:24px}.return-confirmations-header h2{font-size:24px;font-weight:700;color:#e5e7eb;margin:0 0 8px}.return-confirmations-subtitle{font-size:14px;color:#9ca3af;margin:0}.return-confirmations-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#9ca3af}.return-confirmations-spinner{width:40px;height:40px;border:4px solid #3a3f4b;border-top-color:#4a9eff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.return-confirmations-error{padding:16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.return-confirmations-error-close{background:none;border:none;color:#ef4444;font-size:24px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.return-confirmations-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.return-confirmations-empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.return-confirmations-empty h3{font-size:20px;font-weight:600;color:#e5e7eb;margin:0 0 8px}.return-confirmations-empty p{font-size:14px;color:#9ca3af;margin:0}.return-confirmations-list{display:flex;flex-direction:column;gap:16px}.return-confirmation-item{background:#1a1d24;border:1px solid #3a3f4b;border-radius:12px;padding:20px}.return-confirmation-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:16px;padding-top:16px;border-top:1px solid #3a3f4b}.return-confirmation-btn{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none}.return-confirmation-btn:disabled{opacity:.5;cursor:not-allowed}.return-confirmation-btn-confirm{background:#10b981;color:#fff}.return-confirmation-btn-confirm:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}@media(max-width:768px){.return-confirmation-actions{flex-direction:column}.return-confirmation-btn{width:100%}}.final-approvals-tab{max-width:1200px;margin:0 auto}.final-approvals-header{margin-bottom:24px}.final-approvals-header h2{font-size:24px;font-weight:700;color:#e5e7eb;margin:0 0 8px}.final-approvals-subtitle{font-size:14px;color:#9ca3af;margin:0}.final-approvals-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#9ca3af}.final-approvals-spinner{width:40px;height:40px;border:4px solid #3a3f4b;border-top-color:#4a9eff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.final-approvals-error{padding:16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.final-approvals-error-close{background:none;border:none;color:#ef4444;font-size:24px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.final-approvals-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.final-approvals-empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.final-approvals-empty h3{font-size:20px;font-weight:600;color:#e5e7eb;margin:0 0 8px}.final-approvals-empty p{font-size:14px;color:#9ca3af;margin:0}.final-approvals-list{display:flex;flex-direction:column;gap:16px}.final-approval-item{background:#1a1d24;border:1px solid #3a3f4b;border-radius:12px;padding:20px}.final-approval-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:16px;padding-top:16px;border-top:1px solid #3a3f4b}.final-approval-btn{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none}.final-approval-btn:disabled{opacity:.5;cursor:not-allowed}.final-approval-btn-approve{background:#10b981;color:#fff}.final-approval-btn-approve:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}@media(max-width:768px){.final-approval-actions{flex-direction:column}.final-approval-btn{width:100%}}.all-orders-tab{padding:20px}.all-orders-header{margin-bottom:20px}.all-orders-header h2{font-size:24px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.all-orders-subtitle{font-size:14px;color:var(--text-secondary)}.all-orders-filters{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding:16px;background:var(--surface-secondary);border-radius:8px}.all-orders-filters label{font-size:14px;font-weight:500;color:var(--text-primary)}.all-orders-status-select{padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--surface-primary);color:var(--text-primary);font-size:14px;cursor:pointer;min-width:200px}.all-orders-count{margin-left:auto;font-size:14px;font-weight:500;color:var(--text-secondary)}.all-orders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.all-orders-loading,.all-orders-error,.all-orders-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.all-orders-spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.all-orders-error-icon,.all-orders-empty-icon{font-size:48px;margin-bottom:16px}.all-orders-error h3,.all-orders-empty h3{font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.all-orders-error p,.all-orders-empty p{font-size:14px;color:var(--text-secondary);margin-bottom:16px}.all-orders-retry-btn{padding:10px 20px;background:var(--primary-color);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.all-orders-retry-btn:hover{background:var(--primary-hover)}.hospital-orders-page{padding:40px;width:100%;min-height:100vh;background:transparent}.hospital-orders-header{margin-bottom:32px;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px}.hospital-orders-header>div:first-child{flex:1}.hospital-orders-header h1{font-size:32px;font-weight:700;color:#e5e7eb;margin:0 0 8px}.hospital-orders-subtitle{font-size:16px;color:#9ca3af;margin:0}.hospital-orders-create-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#4a9eff;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.hospital-orders-create-btn:hover{background:#3a8eef;transform:translateY(-2px);box-shadow:0 8px 16px #4a9eff4d}.hospital-orders-create-icon{font-size:20px;font-weight:700}.hospital-orders-tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid #3a3f4b;padding-bottom:0}.hospital-orders-tab{padding:12px 24px;background:transparent;border:none;border-bottom:3px solid transparent;color:#9ca3af;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;position:relative;bottom:-2px}.hospital-orders-tab:hover{color:#e5e7eb;background:#4a9eff1a}.hospital-orders-tab.active{color:#4a9eff;border-bottom-color:#4a9eff}.hospital-orders-content{background:#252932;border:1px solid #3a3f4b;border-radius:12px;padding:24px;min-height:500px}.hospital-orders-list{display:grid;gap:16px}.hospital-orders-loading,.hospital-orders-no-access,.hospital-orders-error,.hospital-orders-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;text-align:center;color:#9ca3af}.hospital-orders-spinner{width:40px;height:40px;border:4px solid #3a3f4b;border-top-color:#4a9eff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.hospital-orders-no-access-icon,.hospital-orders-error-icon,.hospital-orders-empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.hospital-orders-no-access h3,.hospital-orders-error h3,.hospital-orders-empty h3{font-size:20px;font-weight:600;color:#e5e7eb;margin:0 0 8px}.hospital-orders-no-access p,.hospital-orders-error p,.hospital-orders-empty p{font-size:14px;color:#9ca3af;margin:0;max-width:500px}.hospital-orders-retry-btn{margin-top:16px;padding:10px 24px;background:#4a9eff;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.hospital-orders-retry-btn:hover{background:#3a8eef}.hospital-orders-wizard-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.hospital-orders-wizard-container{position:relative;background:#252932;border:1px solid #3a3f4b;border-radius:12px;max-width:900px;width:100%;max-height:90vh;z-index:10000;overflow-y:auto;box-shadow:0 20px 60px #00000080}.hospital-orders-wizard-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;background:#3a3f4b;border:none;font-size:24px;color:#9ca3af;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10}.hospital-orders-wizard-close:hover{background:#ef4444;color:#fff;transform:rotate(90deg)}@media(max-width:768px){.hospital-orders-page{padding:16px}.hospital-orders-header{flex-direction:column;align-items:stretch}.hospital-orders-header h1{font-size:24px}.hospital-orders-create-btn{width:100%;justify-content:center}.hospital-orders-content{padding:16px}.hospital-orders-wizard-overlay{padding:10px}}.judicial-transfer-wizard{width:95%;max-width:none;max-height:90vh;overflow-y:auto;background:#0e1117fa;border:2px solid rgba(23,227,143,.3);border-radius:16px;box-shadow:0 10px 40px #000000b3,0 0 30px #17e38f33}.wizard-header{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;background:linear-gradient(135deg,#17e38f1a,#00d9ff0d);border-bottom:1px solid rgba(23,227,143,.2)}.wizard-header h2{margin:0;font-size:24px;font-weight:700;color:#17e38f;display:flex;align-items:center;gap:12px}.header-icon{font-size:28px}.close-btn{background:none;border:none;color:#b0b8c4;font-size:32px;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .3s ease}.close-btn:hover{background:#ffffff1a;color:#17e38f}.wizard-progress{display:flex;justify-content:space-between;margin:30px 40px;padding:20px;background:#17e38f0d;border-radius:12px;position:relative}.wizard-step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative;opacity:.4;transition:all .3s ease}.wizard-step.active{opacity:1}.wizard-step.completed .step-number{background:linear-gradient(135deg,#17e38f,#00d9ff);border-color:#17e38f;color:#0e1117;box-shadow:0 0 20px #17e38f80}.wizard-step:not(:last-child):after{content:"";position:absolute;top:20px;left:50%;width:100%;height:2px;background:#ffffff1a;z-index:0}.wizard-step.completed:not(:last-child):after{background:linear-gradient(90deg,#17e38f,#00d9ff);box-shadow:0 0 10px #17e38f80}.step-number{width:40px;height:40px;border-radius:50%;background:#1e222bcc;border:2px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;margin-bottom:8px;z-index:1;color:#b0b8c4;transition:all .3s ease}.wizard-step.active .step-number{border-color:#17e38f;color:#17e38f;background:#17e38f1a;box-shadow:0 0 20px #17e38f4d}.step-label{font-size:13px;text-align:center;margin-top:5px;color:#b0b8c4;font-weight:500}.wizard-step.active .step-label{color:#17e38f;font-weight:600}.wizard-step-content{padding:30px 40px;min-height:400px;max-height:calc(90vh - 300px);overflow-y:auto}.wizard-step-content::-webkit-scrollbar{width:8px}.wizard-step-content::-webkit-scrollbar-track{background:#1e222b66;border-radius:4px}.wizard-step-content::-webkit-scrollbar-thumb{background:#17e38f4d;border-radius:4px}.wizard-step-content::-webkit-scrollbar-thumb:hover{background:#17e38f80}.step-container h3{margin:0 0 10px;font-size:22px;color:#fff;font-weight:600}.step-description{color:#b0b8c4;margin-bottom:25px;font-size:14px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#fff;font-weight:500;font-size:14px}.form-input,.form-textarea{width:100%;padding:12px 16px;background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:8px;color:#fff;font-size:14px;font-family:inherit;transition:all .3s ease}.form-input:focus,.form-textarea:focus{outline:none;border-color:#17e38f;box-shadow:0 0 0 3px #17e38f1a}.form-input::placeholder,.form-textarea::placeholder{color:#6b7280}.form-textarea{resize:vertical;min-height:100px}.field-error{display:block;color:#dc143c;font-size:12px;margin-top:5px}.info-box{background:#17e38f0d;border:1px solid rgba(23,227,143,.2);border-radius:8px;padding:12px 16px;margin-top:20px}.info-box p{margin:0;font-size:13px;color:#b0b8c4}.error-message{padding:12px 16px;background:#dc143c1a;border-left:3px solid #DC143C;border-radius:8px;color:#dc143c;font-size:14px;margin:20px 40px}.wizard-footer{display:flex;justify-content:space-between;padding:20px 40px;background:#17e38f0d;border-top:1px solid rgba(23,227,143,.2)}.wizard-footer-right{display:flex;gap:12px}.wizard-footer button{padding:12px 32px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.btn-primary{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 20px #17e38f66}.btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.btn-secondary:hover:not(:disabled){background:#ffffff26;border-color:#ffffff4d}.wizard-footer button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.judicial-transfer-wizard{max-width:95%;margin:20px auto}.wizard-progress{margin:20px;padding:15px}.wizard-step-content{padding:20px}.wizard-footer{flex-direction:column-reverse;gap:10px}.wizard-footer-right{flex-direction:column;width:100%}.wizard-footer button{width:100%}}.judicial-transfer-wizard::-webkit-scrollbar{width:8px}.judicial-transfer-wizard::-webkit-scrollbar-track{background:#1e222b66;border-radius:4px}.judicial-transfer-wizard::-webkit-scrollbar-thumb{background:#17e38f4d;border-radius:4px}.judicial-transfer-wizard::-webkit-scrollbar-thumb:hover{background:#17e38f80}.search-mode-tabs{display:flex;gap:10px;margin-bottom:20px;padding:4px;background:#1e222b99;border-radius:10px;border:1px solid rgba(23,227,143,.2)}.mode-tab{flex:1;padding:12px 20px;background:transparent;border:none;border-radius:8px;color:#b0b8c4;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.mode-tab:hover{background:#17e38f1a;color:#17e38f}.mode-tab.active{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;box-shadow:0 4px 15px #17e38f4d}.search-box{margin-bottom:20px;display:flex;gap:10px}.search-input{flex:1;padding:12px 16px;background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:8px;color:#fff;font-size:14px;transition:all .3s ease}.search-input:focus{outline:none;border-color:#17e38f;box-shadow:0 0 0 3px #17e38f1a}.search-input::placeholder{color:#6b7280}.search-btn{padding:12px 32px;background:linear-gradient(135deg,#17e38f,#00d9ff);border:none;border-radius:8px;color:#0e1117;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.search-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 20px #17e38f66}.search-btn:disabled{opacity:.5;cursor:not-allowed}.fingerprint-search-box{margin-bottom:20px;text-align:center}.fingerprint-search-btn{padding:16px 40px;background:linear-gradient(135deg,#17e38f,#00d9ff);border:none;border-radius:10px;color:#0e1117;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:12px;box-shadow:0 4px 15px #17e38f4d}.fingerprint-search-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #17e38f80}.fingerprint-search-btn:disabled{opacity:.6;cursor:not-allowed}.fingerprint-icon{font-size:24px}.spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(14,17,23,.3);border-top-color:#0e1117;border-radius:50%;animation:spin .8s linear infinite}.search-hint{display:block;margin-top:8px;color:#b0b8c4;font-size:12px}.selected-prisoner-card{display:flex;align-items:center;gap:15px;padding:20px;background:#17e38f1a;border:2px solid #17E38F;border-radius:12px;margin-bottom:20px}.selected-prisoner-photo{width:80px;height:80px;border-radius:8px;overflow:hidden;background:#17e38f1a;display:flex;align-items:center;justify-content:center;flex-shrink:0}.selected-prisoner-photo img{width:100%;height:100%;object-fit:cover}.photo-placeholder{font-size:40px;color:#17e38f}.selected-prisoner-info{flex:1}.clear-selection-btn{padding:8px 16px;background:#dc143c1a;border:1px solid rgba(220,20,60,.3);border-radius:6px;color:#dc143c;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease}.clear-selection-btn:hover{background:#dc143c33;border-color:#dc143c}.prisoner-list{max-height:400px;overflow-y:auto;display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.prisoner-card{display:flex;align-items:center;gap:15px;padding:15px;background:#1e222b99;border:2px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .3s ease}.prisoner-card:hover{border-color:#17e38f66;background:#1e222bcc;transform:translate(5px)}.prisoner-photo{width:60px;height:60px;border-radius:8px;overflow:hidden;background:#17e38f1a;display:flex;align-items:center;justify-content:center;flex-shrink:0}.prisoner-photo img{width:100%;height:100%;object-fit:cover}.prisoner-info{flex:1}.prisoner-number{font-size:14px;font-weight:700;color:#17e38f;margin-bottom:4px}.prisoner-name{font-size:16px;font-weight:600;color:#fff;margin-bottom:4px}.prisoner-meta{font-size:13px;color:#b0b8c4}.match-score{font-size:12px;color:#17e38f;margin-top:4px;font-weight:600}.empty-state{text-align:center;padding:60px 20px;color:#b0b8c4}.empty-state p{font-size:16px;margin:0}.radio-group{display:flex;flex-direction:column;gap:12px}.radio-label{display:flex;align-items:flex-start;padding:15px;background:#1e222b99;border:2px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .3s ease}.radio-label:hover{border-color:#17e38f66;background:#1e222bcc}.radio-label input[type=radio]{margin-top:.25rem;margin-right:12px;cursor:pointer;accent-color:#17E38F}.radio-label input[type=radio]:checked~div span{color:#17e38f;font-weight:600}.radio-label span{display:block;font-weight:600;color:#fff;margin-bottom:4px;font-size:15px}.radio-description{font-size:13px;color:#b0b8c4;margin:0;line-height:1.5}.form-select{width:100%;padding:12px 16px;background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:8px;color:#fff;font-size:14px;font-family:inherit;transition:all .3s ease;cursor:pointer}.form-select:focus{outline:none;border-color:#17e38f;box-shadow:0 0 0 3px #17e38f1a}.form-select option{background:#1a1d24;color:#fff}.search-mode-toggle{display:flex;gap:10px;margin-bottom:20px;padding:4px;background:#1e222b99;border-radius:10px;border:1px solid rgba(23,227,143,.2)}.mode-btn{flex:1;padding:12px 20px;background:transparent;border:none;border-radius:8px;color:#b0b8c4;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.mode-btn:hover{background:#17e38f1a;color:#17e38f}.mode-btn.active{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;box-shadow:0 4px 15px #17e38f4d}.handover-method-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .8rem;border-radius:20px;font-size:.85rem;font-weight:600;white-space:nowrap}.handover-icon{font-size:1rem}.handover-label{line-height:1}.handover-method-badge.red-cross{background:#ffe5e5;color:#c41e3a;border:1px solid #ffcccc}.handover-method-badge.institution{background:#e8f4f8;color:#2c5f7c;border:1px solid #d0e7f0}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.judicial-transfer-detail-modal{position:relative;width:95%;max-width:1400px;max-height:90vh;background:#0e1117fa;border:2px solid #17E38F;border-radius:16px;box-shadow:0 10px 40px #000000b3,0 0 30px #17e38f4d;animation:fadeIn .3s ease-out;overflow:hidden;display:flex;flex-direction:column}.modal-header-jt{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:linear-gradient(135deg,#17e38f1a,#00d9ff0d);border-bottom:1px solid rgba(23,227,143,.2)}.modal-header-jt h2{margin:0;font-size:1.5rem;font-weight:700;color:#17e38f}.close-btn-jt{background:none;border:none;color:#b0b8c4;font-size:2rem;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .3s ease}.close-btn-jt:hover{background:#ffffff1a;color:#17e38f}.prisoner-photo-section-jt{position:absolute;top:6rem;left:2rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;z-index:100;pointer-events:none}.photo-container-jt{width:80px;height:80px;border-radius:8px;overflow:hidden;border:2px solid #17E38F;box-shadow:0 4px 15px #17e38f66,0 0 20px #17e38f33;background:#0e1117}.prisoner-photo-jt{width:100%;height:100%;object-fit:cover}.photo-placeholder-jt{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#17e38f,#12b872);color:#fff;font-size:24px;font-weight:600;text-transform:uppercase}.photo-skeleton-jt{width:100%;height:100%;background:linear-gradient(90deg,#1a1a1a 25%,#2a2a2a,#1a1a1a 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.prisoner-basic-info-jt{display:flex;flex-direction:column;align-items:center;gap:.25rem;text-align:center}.prisoner-name-jt{font-size:.7rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px;max-width:100px;line-height:1.2}.prisoner-number-jt{padding:.2rem .4rem;background:#17e38f26;border:1px solid rgba(23,227,143,.4);border-radius:4px;color:#17e38f;font-family:Courier New,monospace;font-size:.65rem;font-weight:700;letter-spacing:.5px}.modal-body-jt{flex:1;overflow-y:auto;padding:1rem 2rem 2rem 14rem;display:flex;flex-direction:column;gap:1rem}.info-section-jt{background:#17e38f08;border:1px solid rgba(23,227,143,.15);border-radius:12px;padding:1.25rem;transition:all .3s ease;width:100%}.info-section-jt:hover{background:#17e38f0d;border-color:#17e38f4d}.section-header-jt{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid rgba(23,227,143,.2)}.section-icon-jt{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.section-icon-jt svg{width:20px;height:20px}.prisoner-icon-jt{background:#3b82f626;color:#3b82f6}.transfer-icon-jt{background:#17e38f26;color:#17e38f}.court-icon-jt{background:#a855f726;color:#a855f7}.complainant-icon-jt{background:#fbbf2426;color:#fbbf24}.complaint-icon-jt{background:#ef444426;color:#ef4444}.section-header-jt h3{margin:0;font-size:1rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px}.info-content-jt{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.info-row-jt{display:flex;flex-direction:column;gap:.25rem}.info-row-jt.full-width-jt{grid-column:1 / -1}.info-label-jt{font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.info-value-jt{font-size:.9rem;color:#fff;font-weight:500}.info-value-jt.highlight-jt{color:#17e38f;font-weight:700;font-family:Courier New,monospace;font-size:1rem}.info-text-block-jt{margin:0;padding:.75rem;background:#0000004d;border-left:3px solid #17E38F;border-radius:6px;color:#e2e8f0;line-height:1.6;font-size:.85rem}.info-text-block-jt.narrative-jt{min-height:80px;white-space:pre-wrap}.modal-footer-jt{padding:1rem 2rem;border-top:1px solid rgba(23,227,143,.2);display:flex;justify-content:flex-end;background:#17e38f08}.close-button-jt{padding:.75rem 2rem;background:#17e38f1a;border:2px solid #17E38F;border-radius:8px;color:#17e38f;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.close-button-jt:hover{background:#17e38f33;transform:translateY(-2px);box-shadow:0 4px 12px #17e38f4d}@media(max-width:1024px){.modal-body-jt{padding-left:2rem}.prisoner-photo-section-jt{position:static;margin:0 auto 1.5rem;pointer-events:auto}.info-content-jt{grid-template-columns:1fr}}@media(max-width:768px){.judicial-transfer-detail-modal{width:95%;max-height:95vh}.modal-header-jt{padding:1rem 1.5rem}.modal-header-jt h2{font-size:1.2rem}.modal-body-jt{padding:1.5rem}.modal-footer-jt{padding:1rem 1.5rem}}.edit-judicial-transfer-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.edit-judicial-transfer-modal{background:#1e222bfa;border:2px solid rgba(23,227,143,.3);border-radius:16px;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #000000b3,0 0 30px #17e38f33}.edit-judicial-transfer-modal-header{padding:24px;border-bottom:1px solid rgba(23,227,143,.2);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#1e222bfa;z-index:1}.edit-judicial-transfer-modal-header h2{margin:0;font-size:24px;color:#fff}.edit-judicial-transfer-modal-header .close-btn{background:none;border:none;color:#b0b8c4;font-size:32px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.edit-judicial-transfer-modal-header .close-btn:hover{background:#17e38f33;color:#fff}.warden-comments-banner{margin:20px 24px;background:linear-gradient(135deg,#ff9800,#ff5722);color:#fff;padding:16px;border-radius:8px;box-shadow:0 4px 12px #ff98004d}.warden-comments-banner h4{margin:0 0 8px;font-size:16px;font-weight:600}.warden-comments-banner p{margin:0;font-size:14px;line-height:1.5}.edit-judicial-transfer-form{padding:24px}.form-section{margin-bottom:32px}.form-section h3{font-size:18px;color:#17e38f;margin:0 0 16px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:16px}.form-field{margin-bottom:16px}.form-field label{display:block;font-size:14px;color:#b0b8c4;font-weight:600;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.readonly-value{padding:12px;background:#0e111799;border:1px solid rgba(23,227,143,.2);border-radius:8px;color:#fff;font-size:15px}.form-textarea{width:100%;padding:12px;background:#0e1117cc;border:1px solid rgba(23,227,143,.3);border-radius:8px;color:#fff;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:all .2s}.form-textarea:focus{outline:none;border-color:#17e38f99;box-shadow:0 0 20px #17e38f4d}.form-select{width:100%;padding:12px;background:#0e1117cc;border:1px solid rgba(23,227,143,.3);border-radius:8px;color:#fff;font-size:14px;font-family:inherit;cursor:pointer;transition:all .2s}.form-select:focus{outline:none;border-color:#17e38f99;box-shadow:0 0 20px #17e38f4d}.form-select option{background:#1e222b;color:#fff}.radio-group{display:flex;gap:24px;margin-top:8px}.radio-label{display:flex;align-items:center;gap:8px;cursor:pointer;color:#b0b8c4;font-size:14px;transition:color .2s}.radio-label:hover{color:#fff}.radio-label input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:#17E38F}.radio-label span{-webkit-user-select:none;user-select:none}.error-message{display:block;color:#ff5252;font-size:12px;margin-top:4px}.edit-judicial-transfer-modal-footer{padding:24px;border-top:1px solid rgba(23,227,143,.2);display:flex;gap:12px;justify-content:flex-end;position:sticky;bottom:0;background:#1e222bfa}.edit-judicial-transfer-modal::-webkit-scrollbar{width:8px}.edit-judicial-transfer-modal::-webkit-scrollbar-track{background:#0e111799;border-radius:4px}.edit-judicial-transfer-modal::-webkit-scrollbar-thumb{background:#17e38f4d;border-radius:4px}.edit-judicial-transfer-modal::-webkit-scrollbar-thumb:hover{background:#17e38f80}@media(max-width:768px){.edit-judicial-transfer-modal{max-width:100%;max-height:100vh;border-radius:0}.form-row{grid-template-columns:1fr}.radio-group{flex-direction:column;gap:12px}.edit-judicial-transfer-modal-footer{flex-direction:column}.edit-judicial-transfer-modal-footer button{width:100%}}.initiate-handover-modal{background:#fff;border-radius:12px;width:90%;max-width:950px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.initiate-handover-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e0e0e0}.initiate-handover-modal .modal-header h2{margin:0;font-size:24px;color:#1a1a1a;display:flex;align-items:center;gap:8px}.initiate-handover-modal .close-btn{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background-color .2s}.initiate-handover-modal .close-btn:hover{background-color:#f5f5f5}.initiate-handover-modal .close-btn svg{width:20px;height:20px;color:#666}.initiate-handover-modal .modal-body{padding:24px}.initiate-handover-modal .info-section{margin-bottom:24px;padding:16px;background:#f9f9f9;border-radius:8px}.initiate-handover-modal .info-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#333}.initiate-handover-modal .info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.initiate-handover-modal .info-item{display:flex;flex-direction:column;gap:4px}.initiate-handover-modal .info-item label{font-size:12px;font-weight:500;color:#666;text-transform:uppercase;letter-spacing:.5px}.initiate-handover-modal .info-item .value{font-size:14px;color:#1a1a1a;font-weight:500}.initiate-handover-modal .info-item .value.transfer-number{font-family:Courier New,monospace;color:#2196f3;font-weight:600}.initiate-handover-modal .workflow-info{margin:24px 0;padding:20px;border-radius:8px;display:flex;gap:16px;align-items:flex-start}.initiate-handover-modal .workflow-info.redcross{background:linear-gradient(135deg,#fff5f8,#ffe8f0);border:2px solid #E91E63}.initiate-handover-modal .workflow-info.institution{background:linear-gradient(135deg,#f5f9ff,#e8f2ff);border:2px solid #2196F3}.initiate-handover-modal .workflow-icon{font-size:32px;line-height:1}.initiate-handover-modal .workflow-text h4{margin:0 0 12px;font-size:16px;color:#1a1a1a}.initiate-handover-modal .workflow-text ol{margin:0;padding-left:20px}.initiate-handover-modal .workflow-text li{margin-bottom:8px;font-size:14px;color:#555;line-height:1.5}.initiate-handover-modal .form-group{margin-bottom:20px}.initiate-handover-modal .form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333;font-size:14px}.initiate-handover-modal .form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;transition:border-color .2s}.initiate-handover-modal .form-group textarea:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a}.initiate-handover-modal .form-group textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.initiate-handover-modal .form-help{margin:8px 0 0;font-size:12px;color:#666;line-height:1.4}.initiate-handover-modal .form-group input[type=text],.initiate-handover-modal .form-group input[type=file]{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .2s}.initiate-handover-modal .form-group input[type=text]:focus,.initiate-handover-modal .form-group input[type=file]:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.initiate-handover-modal .form-group input[type=file]{padding:10px;cursor:pointer}.initiate-handover-modal .form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.initiate-handover-modal .redcross-fields{margin-top:24px;padding:20px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px solid #10b981;border-radius:8px}.initiate-handover-modal .redcross-fields h4{margin:0 0 16px;font-size:16px;color:#059669;display:flex;align-items:center;gap:8px}.initiate-handover-modal .error-message{display:flex;align-items:center;gap:8px;padding:12px;background-color:#ffebee;border:1px solid #ef5350;border-radius:6px;color:#c62828;font-size:14px;margin-bottom:16px}.initiate-handover-modal .error-message svg{width:20px;height:20px;flex-shrink:0}.initiate-handover-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #e0e0e0}.initiate-handover-modal .btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.initiate-handover-modal .btn:disabled{opacity:.6;cursor:not-allowed}.initiate-handover-modal .btn-secondary{background-color:#f5f5f5;color:#666}.initiate-handover-modal .btn-secondary:hover:not(:disabled){background-color:#e0e0e0}.initiate-handover-modal .btn-primary{background:linear-gradient(135deg,#10b981,#059669)!important;color:#fff!important;box-shadow:0 2px 8px #10b9814d!important;border:none!important}.initiate-handover-modal .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857)!important;transform:translateY(-1px);box-shadow:0 4px 12px #10b98166!important}.initiate-handover-modal .spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@media(max-width:768px){.initiate-handover-modal{width:95%;max-height:95vh}.initiate-handover-modal .modal-header,.initiate-handover-modal .modal-body{padding:16px}.initiate-handover-modal .info-grid{grid-template-columns:1fr}.initiate-handover-modal .workflow-info{flex-direction:column;text-align:center}}.judicial-transfer-page{padding:40px;width:100%;background:transparent;min-height:100vh}.page-header button{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;white-space:nowrap!important;padding:12px 24px!important;background:linear-gradient(135deg,#17e38f,#00d9ff)!important;color:#0e1117!important;font-weight:700!important;border:none!important;border-radius:8px!important;cursor:pointer!important;transition:all .3s ease!important;box-shadow:0 0 20px #17e38f4d!important}.page-header button:hover{box-shadow:0 0 30px #17e38f80!important;transform:translateY(-2px)!important}.judicial-transfer-page h1{color:#fff!important}.status-filters{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.filter-btn{background:#0e1117cc;color:#fff;border:1px solid rgba(23,227,143,.3);padding:10px 20px;border-radius:20px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease}.filter-btn:hover{background:#17e38f1a;border-color:#17e38f80;transform:translateY(-2px)}.filter-btn.active{background:linear-gradient(135deg,#17e38f,#00d9ff);color:#0e1117;border-color:transparent;box-shadow:0 0 20px #17e38f4d}.transfer-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;padding:20px 0}.transfer-card{background:#1e222bcc;border:2px solid rgba(23,227,143,.3);border-radius:16px;padding:20px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #0000004d;position:relative}.transfer-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #17e38f66;border-color:#17e38f99}.transfer-status-badge{position:absolute;top:12px;right:12px;opacity:0;transition:opacity .3s ease}.transfer-card:hover .transfer-status-badge{opacity:1}.status-badge{padding:6px 12px;border-radius:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border:2px solid}.transfer-prisoner-info{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(23,227,143,.2)}.prisoner-photo-small{width:50px;height:50px;border-radius:8px;overflow:hidden;background:#0e1117cc;border:2px solid rgba(23,227,143,.3);flex-shrink:0}.prisoner-photo-small img{width:100%;height:100%;object-fit:cover}.photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#64748b}.prisoner-details{flex:1}.prisoner-name{font-weight:600;color:#fff;font-size:16px;margin-bottom:4px}.prisoner-number{font-size:13px;color:#b0b8c4;font-family:Courier New,monospace}.transfer-type-badge{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:8px 12px;background:#0e111799;border-radius:8px}.type-label{font-size:12px;color:#b0b8c4}.type-value{font-size:14px;font-weight:600;color:#fff}.transfer-date{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:8px 12px;background:#0e111766;border-radius:6px}.date-label{font-size:12px;color:#b0b8c4}.date-value{font-size:13px;font-weight:600;color:#fff;font-family:Courier New,monospace}.transfer-complainant{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:8px 12px;background:#0e111799;border-radius:8px}.complainant-label{font-size:12px;color:#b0b8c4}.complainant-value{font-size:13px;font-weight:600;color:#fff}.transfer-footer{padding-top:12px;border-top:1px solid rgba(23,227,143,.2)}.initiated-by{font-size:12px;color:#b0b8c4}.empty-state{text-align:center;padding:80px 20px;background:#1e222b99;border-radius:16px;border:2px dashed rgba(23,227,143,.3);box-shadow:0 0 20px #17e38f1a}.empty-state p{font-size:18px;color:#b0b8c4;margin-bottom:24px}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#1e222bfa;border:2px solid rgba(23,227,143,.3);border-radius:16px;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #000000b3,0 0 30px #17e38f33}.modal-header{padding:24px;border-bottom:1px solid rgba(23,227,143,.2);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#1e222bfa;z-index:1}.modal-header h2{margin:0;font-size:24px;color:#fff}.close-btn{background:none;border:none;color:#b0b8c4;font-size:32px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.close-btn:hover{background:#17e38f33;color:#fff}.modal-body{padding:24px}.detail-section{margin-bottom:24px}.detail-section:last-child{margin-bottom:0}.detail-section h3{font-size:18px;color:#17e38f;margin:0 0 16px;font-weight:600}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-item.full-width{grid-column:1 / -1}.detail-item .label{font-size:12px;color:#b0b8c4;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.detail-item .value{font-size:15px;color:#fff}.modal-footer{padding:24px;border-top:1px solid rgba(23,227,143,.2);display:flex;gap:12px;justify-content:flex-end;position:sticky;bottom:0;background:#1e222bfa}@media(max-width:768px){.judicial-transfer-page{padding:20px}.page-header{flex-direction:column;align-items:stretch;gap:16px}.page-header button{width:100%}.status-filters{flex-direction:column}.transfer-cards-grid{grid-template-columns:1fr}}.btn-download-pdf{width:100%;padding:10px;background:linear-gradient(135deg,#17e38f,#00d9ff)!important;color:#0e1117!important;font-weight:700!important;border:none!important;border-radius:8px!important;cursor:pointer!important;transition:all .3s ease!important;font-size:13px!important;margin-top:8px}.btn-download-pdf:hover{box-shadow:0 0 20px #17e38f80!important;transform:translateY(-2px)!important}.btn-initiate-handover{width:100%;padding:10px;background:linear-gradient(135deg,#3b82f6,#2563eb)!important;color:#fff!important;font-weight:700!important;border:none!important;border-radius:8px!important;cursor:pointer!important;transition:all .3s ease!important;font-size:13px!important;margin-top:8px}.btn-initiate-handover:hover{box-shadow:0 0 20px #3b82f680!important;transform:translateY(-2px)!important}.judicial-transfers-list-page{padding:2rem;max-width:1400px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h1{margin:0;font-size:1.8rem;color:#1a1a1a}.create-button{padding:.75rem 1.5rem;background:#3498db;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:600;transition:background .2s}.create-button:hover{background:#2980b9}.tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid #e0e0e0}.tab{padding:.75rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:1rem;color:#666;transition:all .2s}.tab:hover{color:#333}.tab.active{color:#3498db;border-bottom-color:#3498db;font-weight:600}.filters-section{background:#fff;padding:1.5rem;border-radius:8px;margin-bottom:2rem;box-shadow:0 2px 4px #0000001a}.search-input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;margin-bottom:1rem}.search-input:focus{outline:none;border-color:#3498db}.filter-controls{display:flex;gap:1rem;flex-wrap:wrap}.filter-select,.filter-input{padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem;min-width:150px}.filter-select:focus,.filter-input:focus{outline:none;border-color:#3498db}.clear-filters-button{padding:.5rem 1rem;background:#f0f0f0;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background .2s}.clear-filters-button:hover{background:#e0e0e0}.transfers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.transfer-card-wrapper{position:relative}.initiate-handover-btn{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);padding:.75rem 1.5rem;background:linear-gradient(135deg,#9c27b0,#7b1fa2);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:600;box-shadow:0 4px 12px #9c27b04d;transition:all .3s ease;z-index:10;white-space:nowrap}.initiate-handover-btn:hover{background:linear-gradient(135deg,#7b1fa2,#6a1b9a);box-shadow:0 6px 16px #9c27b066;transform:translate(-50%) translateY(-2px)}.initiate-handover-btn:active{transform:translate(-50%) translateY(0);box-shadow:0 2px 8px #9c27b04d}.loading-spinner{text-align:center;padding:3rem;font-size:1.1rem;color:#666}.no-results{text-align:center;padding:3rem;font-size:1.1rem;color:#999;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}@media(max-width:768px){.judicial-transfers-list-page{padding:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.create-button{width:100%}.transfers-grid{grid-template-columns:1fr}.filter-controls{flex-direction:column}.filter-select,.filter-input{width:100%}}.judicial-transfer-timeline{position:relative;padding-left:2rem}.judicial-transfer-timeline:before{content:"";position:absolute;left:1rem;top:0;bottom:0;width:2px;background:#e0e0e0}.timeline-event{position:relative;padding-bottom:1.5rem}.timeline-event:last-child{padding-bottom:0}.timeline-marker{position:absolute;left:-1.5rem;top:0;width:2rem;height:2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:1}.timeline-event.status-completed .timeline-marker{background:#d1e7dd;border:2px solid #0f5132}.timeline-event.status-current .timeline-marker{background:#cfe2ff;border:2px solid #084298;animation:pulse 2s infinite}.timeline-event.status-pending .timeline-marker{background:#f8f9fa;border:2px solid #dee2e6}.timeline-icon{font-size:1rem}.timeline-content{padding-left:1rem}.timeline-label{font-weight:600;color:#2c3e50;margin-bottom:.25rem}.timeline-date{font-size:.85rem;color:#666;margin-bottom:.15rem}.timeline-user{font-size:.8rem;color:#888;font-style:italic}.timeline-event.status-completed .timeline-label{color:#0f5132}.timeline-event.status-current .timeline-label{color:#084298;font-weight:700}.timeline-event.status-pending .timeline-label{color:#999}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}.judicial-transfer-detail-page{min-height:100vh;background:linear-gradient(135deg,#0a0e14,#1a1f2e);padding:2rem;animation:fadeIn .4s ease-out}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1.5rem}.loading-spinner{width:60px;height:60px;border:4px solid rgba(23,227,143,.1);border-top-color:#17e38f;border-radius:50%;animation:spin 1s linear infinite}.loading-container p{color:#94a3b8;font-size:1.1rem}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1.5rem;text-align:center}.error-icon{font-size:4rem}.error-container h2{color:#ef4444;margin:0;font-size:1.8rem}.error-message{color:#94a3b8;font-size:1.1rem;max-width:500px}.back-button-error{padding:.75rem 1.5rem;background:#17e38f1a;border:2px solid #17E38F;border-radius:12px;color:#17e38f;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.back-button-error:hover{background:#17e38f33;transform:translate(-5px)}.page-header-modern{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;padding:1.5rem;background:#0e1117cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(23,227,143,.2);border-radius:16px;box-shadow:0 4px 12px #0000004d}.back-button-modern{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#17e38f1a;border:2px solid #17E38F;border-radius:12px;color:#17e38f;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.back-button-modern svg{width:20px;height:20px;stroke-width:2.5}.back-button-modern:hover{background:#17e38f33;transform:translate(-5px)}.header-title{flex:1;text-align:center}.header-title h1{margin:0;font-size:1.8rem;color:#fff;font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.5)}.transfer-number-header{margin:.25rem 0 0;font-size:1rem;color:#17e38f;font-weight:600;font-family:Courier New,monospace}.header-status{min-width:150px;display:flex;justify-content:flex-end}.detail-card-3d{position:relative;background:#0e1117e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid #17E38F;border-radius:20px;padding:3rem 2rem 2rem;box-shadow:0 8px 24px #0006,0 0 40px #17e38f4d;animation:fadeIn .5s ease-out .1s both}.prisoner-photo-section{position:absolute;top:1.5rem;left:1.5rem;display:flex;flex-direction:column;align-items:center;gap:.75rem;z-index:10}.photo-container-3d{width:80px;height:80px;border-radius:8px;overflow:hidden;border:2px solid #17E38F;box-shadow:0 4px 15px #17e38f66,0 0 20px #17e38f33;flex-shrink:0;background:#0e1117}.prisoner-photo-3d{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.photo-container-3d:hover .prisoner-photo-3d{transform:scale(1.1)}.photo-skeleton{width:100%;height:100%;background:linear-gradient(90deg,#1a1a1a 25%,#2a2a2a,#1a1a1a 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.prisoner-basic-info{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center}.prisoner-name-title{margin:0;font-size:.75rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px;text-shadow:0 2px 8px rgba(0,0,0,.5);max-width:120px;line-height:1.2}.prisoner-number-badge{display:inline-block;margin:0;padding:.25rem .5rem;background:#17e38f26;border:1px solid rgba(23,227,143,.4);border-radius:6px;color:#17e38f;font-family:Courier New,monospace;font-size:.7rem;font-weight:700;letter-spacing:.5px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem;margin-top:1rem}.info-section{background:#17e38f08;border:2px solid rgba(23,227,143,.15);border-radius:16px;padding:1.5rem;transition:all .3s ease}.info-section:hover{background:#17e38f0d;border-color:#17e38f4d;box-shadow:0 4px 16px #17e38f33}.info-section.full-width{grid-column:1 / -1}.section-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid rgba(23,227,143,.2)}.section-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.section-icon svg{width:24px;height:24px}.prisoner-icon{background:#3b82f626;color:#3b82f6}.transfer-icon{background:#17e38f26;color:#17e38f}.court-icon{background:#a855f726;color:#a855f7}.complainant-icon{background:#fbbf2426;color:#fbbf24}.complaint-icon{background:#ef444426;color:#ef4444}.timeline-icon{background:#00d9ff26;color:#00d9ff}.documents-icon{background:#22c55e26;color:#22c55e}.section-header h3{margin:0;font-size:1.3rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px}.info-content{display:flex;flex-direction:column;gap:1rem}.info-row{display:flex;flex-direction:column;gap:.4rem}.info-row.full-width{grid-column:1 / -1}.info-label{font-size:.85rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:1rem;color:#fff;font-weight:500}.info-value.highlight{color:#17e38f;font-weight:700;font-family:Courier New,monospace;font-size:1.1rem}.info-text-block{margin:0;padding:1rem;background:#0000004d;border-left:4px solid #17E38F;border-radius:8px;color:#e2e8f0;line-height:1.7;font-size:.95rem}.info-text-block.narrative{min-height:100px;white-space:pre-wrap}.documents-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.document-button-modern{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:#17e38f1a;border:2px solid rgba(23,227,143,.3);border-radius:12px;color:#17e38f;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.document-button-modern svg{width:24px;height:24px;stroke-width:2}.document-button-modern:hover{background:#17e38f33;border-color:#17e38f;transform:translateY(-2px);box-shadow:0 4px 12px #17e38f4d}.no-documents-message{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;color:#64748b;text-align:center}.no-documents-message svg{width:48px;height:48px;stroke-width:1.5;opacity:.5}.no-documents-message p{margin:0;font-size:1rem;font-style:italic}@media(max-width:1200px){.info-grid{grid-template-columns:1fr}}@media(max-width:768px){.judicial-transfer-detail-page{padding:1rem}.page-header-modern{flex-direction:column;gap:1rem;text-align:center}.back-button-modern{align-self:flex-start}.header-status{justify-content:center}.detail-card-3d{padding:8rem 1.5rem 1.5rem}.prisoner-photo-section{position:static;margin-bottom:1.5rem}.prisoner-name-title{font-size:.85rem}.info-grid,.documents-grid{grid-template-columns:1fr}}.not-found-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.not-found-content{text-align:center;background:#1e222bfa;padding:60px 40px;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:100%}.error-code{font-size:120px;font-weight:900;color:#dc143c;line-height:1;margin-bottom:16px;text-shadow:2px 2px 4px rgba(0,0,0,.1)}.error-title{font-size:32px;font-weight:700;color:#1a202c;margin:0 0 16px}.error-message{font-size:16px;color:#718096;margin:0 0 32px;line-height:1.6}.back-home-button{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:#dc143c;color:#fff;text-decoration:none;border-radius:8px;font-size:16px;font-weight:600;transition:all .2s;box-shadow:0 4px 12px #dc143c4d}.back-home-button:hover{background:#b8112f;transform:translateY(-2px);box-shadow:0 6px 16px #dc143c66}.button-icon{font-size:20px}@media(max-width:768px){.not-found-content{padding:40px 24px}.error-code{font-size:80px}.error-title{font-size:24px}.error-message{font-size:14px}.back-home-button{padding:12px 24px;font-size:14px}}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#0e1117,#1e222b);color:#fff;min-height:100vh;overflow-x:hidden;margin:0;padding:0;width:100%}#root{width:100%;max-width:100vw;overflow-x:hidden;margin:0;padding:0}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:#ffffff0d}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#fff3}::selection{background:#17e38f4d;color:#fff}::-moz-selection{background:#17e38f4d;color:#fff}:focus-visible{outline:2px solid #17E38F;outline-offset:2px;box-shadow:0 0 10px #17e38f80}button{font-family:inherit;cursor:pointer;border:none;background:none}button:disabled{cursor:not-allowed;opacity:.5}input,textarea,select{font-family:inherit;font-size:inherit}input::placeholder,textarea::placeholder{color:#64748b}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.container{max-width:1400px;margin:0 auto;padding:0 20px}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.hidden{display:none!important}.visible{display:block!important}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mt-4{margin-top:32px}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.mb-4{margin-bottom:32px}.p-1{padding:8px}.p-2{padding:16px}.p-3{padding:24px}.p-4{padding:32px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:8px}.gap-2{gap:16px}.gap-3{gap:24px}.gap-4{gap:32px}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.text-xs{font-size:12px}.text-sm{font-size:14px}.text-base{font-size:16px}.text-lg{font-size:18px}.text-xl{font-size:20px}.text-2xl{font-size:24px}.text-3xl{font-size:30px}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-primary{color:#3b82f6}.text-success{color:#22c55e}.text-warning{color:#facc15}.text-error{color:#ef4444}.text-muted{color:#94a3b8}.bg-primary{background-color:#3b82f6}.bg-success{background-color:#22c55e}.bg-warning{background-color:#facc15}.bg-error{background-color:#ef4444}.rounded-sm{border-radius:8px}.rounded{border-radius:12px}.rounded-lg{border-radius:16px}.rounded-xl{border-radius:20px}.rounded-full{border-radius:9999px}.shadow{box-shadow:0 6px 12px #0000004d}.shadow-lg{box-shadow:0 12px 24px #0006}.shadow-xl{box-shadow:0 20px 40px #00000080}.spinner{width:40px;height:40px;border:4px solid rgba(59,130,246,.2);border-top-color:#3b82f6;border-radius:50%;animation:rotate 1s linear infinite}.toast{position:fixed;bottom:24px;right:24px;padding:16px 24px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:12px;color:#f1f5f9;font-size:14px;font-weight:500;box-shadow:0 8px 24px #0000004d;z-index:9999;animation:slideInRight .3s ease-out}.toast.success{border-left:4px solid #22c55e}.toast.error{border-left:4px solid #ef4444}.toast.warning{border-left:4px solid #facc15}.toast.info{border-left:4px solid #3b82f6}@media(max-width:768px){html{font-size:14px}.container{padding:0 16px}.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;text-align:center;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,#17e38f,#00d9ff)!important;color:#0e1117!important;box-shadow:0 0 20px #17e38f4d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 30px #17e38f80}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding:24px;background:#1e222b99;border:1px solid rgba(23,227,143,.2);border-radius:16px;box-shadow:0 0 20px #17e38f1a}.page-header h1{font-size:32px!important;font-weight:700!important;color:#fff!important;margin:0 0 4px!important;text-shadow:0 2px 8px rgba(0,0,0,.5)!important}.page-header p{color:#b0b8c4!important;margin:0!important;font-size:14px!important}@media print{body{background:#fff;color:#000}.no-print{display:none!important}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes glow{0%,to{box-shadow:0 0 20px #3b82f64d}50%{box-shadow:0 0 30px #3b82f680}}@keyframes glowSuccess{0%,to{box-shadow:0 0 20px #22c55e4d}50%{box-shadow:0 0 30px #22c55e80}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-fade-out{animation:fadeOut .3s ease-out}.animate-fade-in-up{animation:fadeInUp .4s ease-out}.animate-fade-in-down{animation:fadeInDown .4s ease-out}.animate-scale-in{animation:scaleIn .3s ease-out}.animate-scale-out{animation:scaleOut .3s ease-out}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-slide-in-left{animation:slideInLeft .4s ease-out}.animate-slide-in-right{animation:slideInRight .4s ease-out}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-glow-success{animation:glowSuccess 2s ease-in-out infinite}.animate-shimmer{animation:shimmer 2s linear infinite}.animate-bounce{animation:bounce 1s ease-in-out infinite}.animate-rotate{animation:rotate 1s linear infinite}.transition-all{transition:all .25s cubic-bezier(.4,0,.2,1)}.transition-fast{transition:all .15s cubic-bezier(.4,0,.2,1)}.transition-slow{transition:all .35s cubic-bezier(.4,0,.2,1)}.hover-lift{transition:transform .25s ease,box-shadow .25s ease}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0006}.hover-scale{transition:transform .25s ease}.hover-scale:hover{transform:scale(1.03)}.hover-glow{transition:box-shadow .25s ease}.hover-glow:hover{box-shadow:0 0 20px #3b82f666}.glass-effect{background:#ffffff1a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.glass-effect-strong{background:#ffffff26;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2)}.skeleton{background:linear-gradient(90deg,#ffffff0d,#ffffff1a,#ffffff0d);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}*{margin:0;padding:0;box-sizing:border-box}body{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}.app{padding:2rem}
