 :root {--glass-bg: rgba(255, 255, 255, 0.1);--glass-border: rgba(255, 255, 255, 0.2);--glass-shadow: rgba(0, 0, 0, 0.1);--rainbow-red: #FF6B6B;--rainbow-orange: #FFA726;--rainbow-yellow: #FFEB3B;--rainbow-green: #66BB6A;--rainbow-blue: #42A5F5;--rainbow-purple: #9725ac;--rainbow-pink: #EC407A;--shadow-soft: 0 10px 30px rgba(0, 0, 0, 0.1);--shadow-medium: 0 15px 40px rgba(0, 0, 0, 0.15);--shadow-strong: 0 20px 50px rgba(0, 0, 0, 0.2);--animation-fast: 0.3s;--animation-medium: 0.5s;--animation-slow: 0.8s;--border-radius-sm: 20px;--border-radius-md: 30px;--border-radius-lg: 40px;}.modal.fade .modal-dialog {transform: scale(0.8) translateY(-50px);opacity: 0;transition: all var(--animation-medium) cubic-bezier(0.34, 1.56, 0.64, 1);}.modal.show .modal-dialog {transform: scale(1) translateY(0);opacity: 1;}.modal.fade-in .modal-content {animation: modalSlideIn var(--animation-medium) cubic-bezier(0.34, 1.56, 0.64, 1) forwards;}@keyframes modalSlideIn {from {opacity: 0;transform: translateY(-30px) scale(0.95);}to {opacity: 1;transform: translateY(0) scale(1);}}.modal-dialog {width: 100%;max-width: 800px;margin: 1.75rem auto;height: auto;position: relative;}.modal-content {background: var(--glass-bg);backdrop-filter: blur(20px);border: 1px solid var(--glass-border);border-radius: var(--border-radius-md);box-shadow: var(--shadow-strong);color: white;overflow: hidden;max-height: 90vh;display: flex;flex-direction: column;pointer-events: auto;position: relative;}.modal-content::before {content: '';position: absolute;top: 0;left: 0;right: 0;height: 3px;background: linear-gradient(90deg, var(--rainbow-red), var(--rainbow-orange), var(--rainbow-yellow), var(--rainbow-green), var(--rainbow-blue), var(--rainbow-purple), var(--rainbow-pink) );background-size: 200% 100%;animation: gradientShift 3s ease-in-out infinite;z-index: 1;}@keyframes gradientShift {0%, 100% {background-position: 0% 50%;}50% {background-position: 100% 50%;}}.modal-header {display: flex;justify-content: space-between;align-items: center;padding: 1.5rem 2rem;border-bottom: 1px solid var(--glass-border);flex: 0 0 auto;background: linear-gradient(135deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05));position: relative;z-index: 2;}.modal-header::before {content: '';position: absolute;top: 0;left: 0;right: 0;bottom: 0;background: linear-gradient(135deg, rgba(255, 107, 107, 0.1), rgba(66, 165, 245, 0.1) );opacity: 0;transition: opacity var(--animation-fast) ease;z-index: -1;}.modal-header:hover::before {opacity: 1;}.modal-title {margin-bottom: 0;line-height: 1.4;flex-grow: 1;font-size: 1.5rem;font-weight: 700;color: white;text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);overflow: hidden;text-overflow: ellipsis;white-space: nowrap;display: flex;align-items: center;gap: 0.75rem;}.modal-title i {font-size: 1.2em;opacity: 0.9;transition: all var(--animation-fast) ease;}.modal-title:hover i {transform: scale(1.1);opacity: 1;}.modal-nav-buttons {display: flex;align-items: center;gap: 0.75rem;flex: 0 0 auto;}.btn-close, .btn-close-white {background: transparent;border: none;width: 44px;height: 44px;border-radius: 50%;display: flex;align-items: center;justify-content: center;color: white;opacity: 0.8;transition: all var(--animation-fast) ease;position: relative;overflow: hidden;}.btn-close::before, .btn-close-white::before {content: '';position: absolute;top: 0;left: 0;right: 0;bottom: 0;background: linear-gradient(135deg, var(--rainbow-red), var(--rainbow-pink));border-radius: 50%;opacity: 0;transform: scale(0);transition: all var(--animation-fast) ease;}.btn-close:hover::before, .btn-close-white:hover::before {opacity: 1;transform: scale(1);}.btn-close:hover, .btn-close-white:hover {opacity: 1;transform: scale(1.1);box-shadow: var(--shadow-soft);}.modal-body {padding: 2rem;overflow-y: auto;flex: 1 1 auto;max-height: 60vh;position: relative;background: linear-gradient(135deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02) );}.modal-body::-webkit-scrollbar {width: 8px;}.modal-body::-webkit-scrollbar-track {background: rgba(255, 255, 255, 0.1);border-radius: 10px;}.modal-body::-webkit-scrollbar-thumb {background: linear-gradient(135deg, var(--rainbow-blue), var(--rainbow-purple));border-radius: 10px;transition: all var(--animation-fast) ease;}.modal-body::-webkit-scrollbar-thumb:hover {background: linear-gradient(135deg, var(--rainbow-purple), var(--rainbow-pink));transform: scaleY(1.1);}.modal-footer {display: flex;justify-content: flex-end;align-items: center;gap: 1rem;padding: 1.5rem 2rem;border-top: 1px solid var(--glass-border);background: linear-gradient(135deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05));flex: 0 0 auto;}.modal-footer .btn-playful, .modal-body .btn-playful {padding: 0.75rem 1.5rem;border-radius: var(--border-radius-sm);font-weight: 600;text-transform: none;border: none;color: white;text-decoration: none;display: inline-flex;align-items: center;gap: 0.5rem;transition: all var(--animation-fast) ease;position: relative;overflow: hidden;box-shadow: var(--shadow-soft);}.modal-footer .btn-playful::before, .modal-body .btn-playful::before {content: '';position: absolute;top: 0;left: -100%;width: 100%;height: 100%;background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);transition: left var(--animation-medium) ease;}.modal-footer .btn-playful:hover::before, .modal-body .btn-playful:hover::before {left: 100%;}.modal-footer .btn-playful:hover, .modal-body .btn-playful:hover {transform: translateY(-2px) scale(1.05);box-shadow: var(--shadow-medium);}#modal-loading-indicator {position: fixed;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0, 0, 0, 0.7);backdrop-filter: blur(10px);display: flex;justify-content: center;align-items: center;z-index: 2000;opacity: 0;visibility: hidden;transition: all var(--animation-fast) ease;}#modal-loading-indicator.active {opacity: 1;visibility: visible;}#modal-loading-indicator .spinner-border {width: 4rem;height: 4rem;border-width: 0.4rem;border-color: var(--rainbow-blue);border-right-color: transparent;animation: spin 1s linear infinite, colorCycle 3s ease-in-out infinite;}@keyframes spin {0% {transform: rotate(0deg);}100% {transform: rotate(360deg);}}@keyframes colorCycle {0%, 100% {border-color: var(--rainbow-blue);}16.66% {border-color: var(--rainbow-purple);}33.33% {border-color: var(--rainbow-pink);}50% {border-color: var(--rainbow-red);}66.66% {border-color: var(--rainbow-orange);}83.33% {border-color: var(--rainbow-yellow);}}.modal-backdrop {z-index: 1040 !important;background: rgba(0, 0, 0, 0.6);backdrop-filter: blur(5px);transition: all var(--animation-fast) ease;}.modal-backdrop.fade {opacity: 0;}.modal-backdrop.show {opacity: 1;}.modal {position: fixed;top: 0;left: 0;z-index: 1050 !important;width: 100%;height: 100%;overflow-x: hidden;overflow-y: auto;outline: 0;pointer-events: none;}.modal.show {pointer-events: auto;}.modal-content {pointer-events: auto;}.modal-backdrop + .modal-backdrop {display: none !important;}.modal-body .form-control, .modal-body .form-select {background: rgba(255, 255, 255, 0.1);border: 1px solid rgba(255, 255, 255, 0.2);border-radius: var(--border-radius-sm);color: white;padding: 0.75rem 1rem;transition: all var(--animation-fast) ease;}.modal-body .form-control:focus, .modal-body .form-select:focus {background: rgba(255, 255, 255, 0.15);border-color: var(--rainbow-blue);box-shadow: 0 0 0 0.2rem rgba(66, 165, 245, 0.25);color: white;}.modal-body .form-control::placeholder {color: rgba(255, 255, 255, 0.6);}.modal-body .form-label {color: white;font-weight: 600;margin-bottom: 0.5rem;}.modal-body .card {background: rgba(255, 255, 255, 0.1);border: 1px solid rgba(255, 255, 255, 0.2);border-radius: var(--border-radius-sm);color: white;transition: all var(--animation-fast) ease;}.modal-body .card:hover {background: rgba(255, 255, 255, 0.15);transform: translateY(-2px);box-shadow: var(--shadow-soft);}.modal-body .card-header {background: rgba(255, 255, 255, 0.1);border-bottom: 1px solid rgba(255, 255, 255, 0.2);color: white;font-weight: 600;}.modal-body .card-body {color: white;}.modal-body .admin-badge, .modal-body .badge-playful {padding: 0.5rem 1rem;border-radius: var(--border-radius-sm);font-weight: 600;font-size: 0.875rem;color: white;display: inline-flex;align-items: center;gap: 0.25rem;transition: all var(--animation-fast) ease;}.modal-body .admin-badge-primary {background: linear-gradient(135deg, var(--rainbow-blue), var(--rainbow-purple));}.modal-body .admin-badge-secondary {background: linear-gradient(135deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.1));}.modal-body .admin-badge-success {background: linear-gradient(135deg, var(--rainbow-green), var(--rainbow-blue));}.modal-body .admin-badge-warning {background: linear-gradient(135deg, var(--rainbow-orange), var(--rainbow-yellow));}.modal-body .admin-badge-danger {background: linear-gradient(135deg, var(--rainbow-red), var(--rainbow-pink));}.modal-body .admin-badge-info {background: linear-gradient(135deg, var(--rainbow-blue), var(--rainbow-green));}.rtl-mode .modal-header {flex-direction: row-reverse;}.rtl-mode .modal-nav-buttons {flex-direction: row-reverse;}.rtl-mode .modal-footer {flex-direction: row-reverse;}@media (max-width: 992px) {.modal-dialog {max-width: 90%;margin: 1rem auto;}.modal-content {border-radius: var(--border-radius-sm);}}@media (max-width: 768px) {.modal-dialog {max-width: 95%;margin: 0.75rem auto;height: auto;}.modal-content {max-height: 95vh;border-radius: 15px;}.modal-header {padding: 1rem 1.5rem;}.modal-body {padding: 1.5rem;max-height: 65vh;}.modal-footer {padding: 1rem 1.5rem;}.modal-title {font-size: 1.25rem;}.modal-nav-buttons .btn {padding: 0.5rem 0.75rem;font-size: 0.875rem;}.btn-close, .btn-close-white {width: 40px;height: 40px;}}@media (max-width: 576px) {.modal-dialog {margin: 0.5rem;max-width: calc(100% - 1rem);}.modal-content {border-radius: 12px;max-height: 90vh;}.modal-header {padding: 0.75rem 1rem;}.modal-body {padding: 1rem;max-height: 60vh;}.modal-footer {padding: 0.75rem 1rem;gap: 0.5rem;}.modal-title {font-size: 1.1rem;max-width: 70%;}.btn-close, .btn-close-white {width: 36px;height: 36px;}.modal-footer {flex-direction: column;align-items: stretch;}.modal-footer .btn-playful {width: 100%;justify-content: center;}}@media (max-height: 600px) and (orientation: landscape) {.modal-dialog {margin: 0.5rem auto;}.modal-content {max-height: 85vh;}.modal-body {max-height: 50vh;}}@media (prefers-contrast: high) {.modal-content {border: 2px solid white;}.modal-header, .modal-footer {border-color: white;}.btn-close, .btn-close-white {border: 1px solid white;}}.toast .btn-close, .toast .btn-close-white {background: none !important;width: 24px;height: 24px;border-radius: 50%;opacity: 0.8;transition: all var(--animation-fast) ease;position: relative;overflow: visible;font-size: 16px;color: white;}.toast .btn-close::after {content: '×';font-size: 20px;font-weight: bold;color: white;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);line-height: 1;}.toast .btn-close:hover, .toast .btn-close-white:hover {opacity: 1;transform: scale(1.1);background: rgba(255, 255, 255, 0.1) !important;}.toast .btn-close::before, .toast .btn-close-white::before {display: none;}