/* styles.css - Стили для системы лицензирования */

.fade-in {
    animation: fadeIn 0.5s ease-in;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.step-active {
    background: linear-gradient(135deg, #3B82F6 0%, #1D4ED8 100%);
    color: white;
}

.step-completed {
    background: linear-gradient(135deg, #10B981 0%, #059669 100%);
    color: white;
}

.step-inactive {
    background: #F3F4F6;
    color: #6B7280;
}

.product-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.plan-card {
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    overflow: visible !important;
}

.plan-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.plan-card.selected {
    background: linear-gradient(135deg, #EBF8FF 0%, #DBEAFE 100%);
    border: 2px solid #3B82F6;
    transform: scale(1.02);
}

/* Стили для популярного тарифа */
.plan-card.popular {
    background: linear-gradient(135deg, #FDF2F8 0%, #FCE7F3 100%);
    border: 2px solid #EC4899;
}

/* Анимация для бейджей */
.plan-card .absolute {
    animation: badgePulse 2s infinite;
}

@keyframes badgePulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.05); }
}

/* Стили для контейнера тарифов */
.pricing-table-container {
    margin: 2rem 0;
}

.license-card {
    transition: all 0.3s ease;
}

.license-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
}

.license-card.selected {
    background: linear-gradient(135deg, #EBF8FF 0%, #DBEAFE 100%);
    border: 2px solid #3B82F6;
}

.license-status-active {
    background-color: #D1FAE5;
    color: #065F46;
    border: 1px solid #A7F3D0;
}

.license-status-expired {
    background-color: #FEE2E2;
    color: #991B1B;
    border: 1px solid #FECACA;
}

.license-status-blocked {
    background-color: #F3F4F6;
    color: #374151;
    border: 1px solid #D1D5DB;
}

.error-message {
    background-color: #fee2e2;
    border: 1px solid #fecaca;
    color: #dc2626;
    padding: 1rem;
    border-radius: 0.5rem;
    margin: 1rem 0;
}

.success-message {
    background-color: #d1fae5;
    border: 1px solid #a7f3d0;
    color: #065f46;
    padding: 1rem;
    border-radius: 0.5rem;
    margin: 1rem 0;
}

.loading-spinner {
    border: 4px solid #f3f4f6;
    border-top: 4px solid #3b82f6;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin 1s linear infinite;
    margin: 0 auto;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.zenno-id-input {
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
    font-size: 0.875rem;
}

.payment-summary-card {
    background: linear-gradient(135deg, #F0F9FF 0%, #E0F2FE 100%);
    border: 1px solid #BAE6FD;
}

.payment-details-section {
    background: #FAFAFA;
    border: 1px solid #E5E7EB;
    border-radius: 0.75rem;
    padding: 1.5rem;
}

.payment-timer-warning {
    background: linear-gradient(135deg, #FEF3C7 0%, #FDE68A 100%);
    border: 1px solid #F59E0B;
    color: #92400E;
}

.payment-timer-danger {
    background: linear-gradient(135deg, #FEE2E2 0%, #FECACA 100%);
    border: 1px solid #EF4444;
    color: #991B1B;
}

.hidden {
    display: none !important;
}

/* Стили для QR кода */
.qr-container {
    background: white;
    border: 2px solid #E5E7EB;
    border-radius: 1rem;
    padding: 1rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

/* Анимация для кнопок */
.btn-copy:hover {
    transform: scale(1.05);
}

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
    .product-card {
        margin-bottom: 1rem;
    }
    
    .plan-card {
        margin-bottom: 0.75rem;
    }
    
    .license-card {
        margin-bottom: 1rem;
    }
    
    .payment-details-section {
        padding: 1rem;
    }
}

.plan-card.border-blue-400 { border-color: #60a5fa !important; }
.plan-card.border-purple-400 { border-color: #a78bfa !important; }
.plan-card .inline-block { margin-bottom: 0.5rem; }
.border-yellow-400 { border-color: #f59e42 !important; }
.border-yellow-300 { border-color: #fde68a !important; }
.bg-yellow-100 { background-color: #fef9c3 !important; }
.bg-yellow-50 { background-color: #fefce8 !important; }