// Check-in Page Dialog Styles @import 'variables'; .blur-dialog :deep(.v-overlay__scrim) { backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); } .dialog-card { overflow: hidden; animation: popIn 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); } @keyframes popIn { 0% { opacity: 0; transform: scale(0.8) translateY(20px); } 100% { opacity: 1; transform: scale(1) translateY(0); } } .dialog-header { position: relative; overflow: hidden; } .dialog-header::before { content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: radial-gradient(circle, rgba(255,255,255,0.2) 0%, transparent 70%); animation: rotate 10s linear infinite; } @keyframes rotate { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .icon-wrapper { display: inline-block; animation: bounceIn 0.6s ease-out 0.2s both; } @keyframes bounceIn { 0% { opacity: 0; transform: scale(0.3); } 50% { transform: scale(1.05); } 70% { transform: scale(0.9); } 100% { opacity: 1; transform: scale(1); } } .dialog-icon { filter: drop-shadow(0 4px 12px rgba(0,0,0,0.3)); } .success-header { background: linear-gradient(135deg, $success-color 0%, $success-dark 100%); } .warning-header { background: linear-gradient(135deg, $warning-color 0%, $warning-dark 100%); } .error-header { background: linear-gradient(135deg, $error-color 0%, $error-dark 100%); } .icon-bg-error { background: linear-gradient(135deg, $error-color 0%, $error-dark 100%); } .dialog-button { text-transform: none; letter-spacing: 0.5px; font-weight: 600; transition: all $transition-base; } .dialog-button:hover { transform: translateY(-2px); } /* Patient Info Card Styling */ .patient-info-card { background: rgba(250, 250, 250, 0.8) !important; border-color: $border-grey !important; } .patient-info-label { color: $text-grey !important; font-weight: 500; opacity: 0.9; } .patient-info-value { color: $text-grey-dark !important; font-weight: 500 !important; opacity: 0.85; } .patient-info-icon { opacity: 0.7; } /* Decorative Circles */ .decorative-circles { position: absolute; top: 0; left: 0; right: 0; bottom: 0; pointer-events: none; overflow: hidden; } .circle { position: absolute; border-radius: 50%; background: rgba(255, 255, 255, 0.1); animation: float 6s ease-in-out infinite; } .circle-1 { width: 100px; height: 100px; top: -50px; left: -50px; animation-delay: 0s; } .circle-2 { width: 150px; height: 150px; top: 50%; right: -75px; animation-delay: 2s; } .circle-3 { width: 80px; height: 80px; bottom: -40px; left: 20%; animation-delay: 4s; } @keyframes float { 0%, 100% { transform: translate(0, 0) scale(1); opacity: 0.3; } 50% { transform: translate(20px, -20px) scale(1.1); opacity: 0.5; } } /* Message Container */ .message-container { text-align: center; } .message-icon { display: flex; justify-content: center; align-items: center; } /* Status Badge */ .status-badge { display: inline-flex; } /* Instruction Box */ .instruction-box { background: rgba(255, 255, 255, 0.9); border: 1px solid rgba(0, 0, 0, 0.1); } .instruction-success { background: rgba(76, 175, 80, 0.1); border-color: rgba(76, 175, 80, 0.3); } .instruction-warning { background: rgba(255, 152, 0, 0.1); border-color: rgba(255, 152, 0, 0.3); } /* Icon Background */ .icon-bg { width: 120px; height: 120px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, $primary-color 0%, $primary-dark 100%); box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2); position: relative; z-index: 1; } .icon-bg-success { background: linear-gradient(135deg, $success-color 0%, $success-dark 100%); } .icon-bg-warning { background: linear-gradient(135deg, $warning-color 0%, $warning-dark 100%); } .icon-bg-error { background: linear-gradient(135deg, $error-color 0%, $error-dark 100%); }