/* Newsletter Plugin Integration Styles */

/* Main Newsletter Form Container */
.newsletter-integration {
    width: 100%;
}

/* Newsletter Form Styling */
.newsletter-integration .tnp-form {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Email Input Field */
.newsletter-integration .tnp-email {
    width: 100%;
}

.newsletter-integration .tnp-email input[type="email"] {
    width: 100%;
    background: rgba(255, 255, 255, 0.2) !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    color: white !important;
    font-size: 16px !important;
    transition: all 0.3s ease !important;
    backdrop-filter: blur(10px);
}

.newsletter-integration .tnp-email input[type="email"]::placeholder {
    color: rgba(255, 255, 255, 0.7) !important;
}

.newsletter-integration .tnp-email input[type="email"]:focus {
    outline: none !important;
    box-shadow: 0 0 0 2px #213854 !important;
    background: rgba(255, 255, 255, 0.25) !important;
}

/* Submit Button */
.newsletter-integration .tnp-submit {
    width: 100%;
}

.newsletter-integration .tnp-submit input[type="submit"] {
    width: 100% !important;
    background: linear-gradient(135deg, #213854 0%, #365776 100%) !important;
    color: white !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
}

.newsletter-integration .tnp-submit input[type="submit"]:hover {
    background: linear-gradient(135deg, #365776 0%, #4D88B5 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(33, 56, 84, 0.3) !important;
}

.newsletter-integration .tnp-submit input[type="submit"]:active {
    transform: translateY(0) !important;
}

/* Privacy Notice */
.newsletter-integration .tnp-privacy {
    text-align: center !important;
    margin-top: 8px !important;
}

.newsletter-integration .tnp-privacy a {
    color: rgba(255, 255, 255, 0.6) !important;
    text-decoration: none !important;
    font-size: 12px !important;
    transition: color 0.3s ease !important;
}

.newsletter-integration .tnp-privacy a:hover {
    color: rgba(255, 255, 255, 0.8) !important;
}

/* Error Messages */
.newsletter-integration .tnp-field-error {
    color: #ff6b6b !important;
    font-size: 14px !important;
    margin-top: 4px !important;
    text-align: center !important;
}

.newsletter-integration .tnp-field-error input {
    border-color: #ff6b6b !important;
    box-shadow: 0 0 0 2px rgba(255, 107, 107, 0.2) !important;
}

/* Success Messages */
.newsletter-integration .tnp-field-ok {
    color: #51cf66 !important;
    font-size: 14px !important;
    margin-top: 4px !important;
    text-align: center !important;
}

/* Loading State */
.newsletter-integration .tnp-submit input[type="submit"]:disabled {
    opacity: 0.7 !important;
    cursor: not-allowed !important;
    transform: none !important;
}

/* Additional Fields (if any) */
.newsletter-integration .tnp-field {
    margin-bottom: 12px !important;
}

.newsletter-integration .tnp-field input,
.newsletter-integration .tnp-field select,
.newsletter-integration .tnp-field textarea {
    width: 100% !important;
    background: rgba(255, 255, 255, 0.2) !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    color: white !important;
    font-size: 16px !important;
    transition: all 0.3s ease !important;
    backdrop-filter: blur(10px);
}

.newsletter-integration .tnp-field input:focus,
.newsletter-integration .tnp-field select:focus,
.newsletter-integration .tnp-field textarea:focus {
    outline: none !important;
    box-shadow: 0 0 0 2px #213854 !important;
    background: rgba(255, 255, 255, 0.25) !important;
}

/* Checkbox Styling */
.newsletter-integration .tnp-field-checkbox {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-top: 8px !important;
}

.newsletter-integration .tnp-field-checkbox input[type="checkbox"] {
    width: auto !important;
    margin: 0 !important;
    accent-color: #213854 !important;
}

.newsletter-integration .tnp-field-checkbox label {
    color: rgba(255, 255, 255, 0.8) !important;
    font-size: 14px !important;
    cursor: pointer !important;
}

/* Responsive Design */
@media (max-width: 768px) {
    .newsletter-integration .tnp-form {
        gap: 10px;
    }
    
    .newsletter-integration .tnp-email input[type="email"],
    .newsletter-integration .tnp-submit input[type="submit"] {
        padding: 10px 14px !important;
        font-size: 14px !important;
    }
}

/* Dark Mode Compatibility */
@media (prefers-color-scheme: dark) {
    .newsletter-integration .tnp-email input[type="email"],
    .newsletter-integration .tnp-field input,
    .newsletter-integration .tnp-field select,
    .newsletter-integration .tnp-field textarea {
        background: rgba(255, 255, 255, 0.15) !important;
    }
    
    .newsletter-integration .tnp-email input[type="email"]:focus,
    .newsletter-integration .tnp-field input:focus,
    .newsletter-integration .tnp-field select:focus,
    .newsletter-integration .tnp-field textarea:focus {
        background: rgba(255, 255, 255, 0.2) !important;
    }
}

/* Animation for Form Elements */
.newsletter-integration .tnp-form {
    animation: fadeInUp 0.5s ease-out;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Custom Newsletter Form Override */
.newsletter-integration form {
    margin: 0 !important;
    padding: 0 !important;
}

.newsletter-integration form > * {
    margin: 0 !important;
}

/* Newsletter Plugin Specific Overrides */
.newsletter-integration .tnp-form-minimal {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.newsletter-integration .tnp-form-minimal .tnp-email {
    order: 1;
}

.newsletter-integration .tnp-form-minimal .tnp-submit {
    order: 2;
}

.newsletter-integration .tnp-form-minimal .tnp-privacy {
    order: 3;
}

/* Newsletter Plugin Button Icon */
.newsletter-integration .tnp-submit input[type="submit"]::after {
    content: "→";
    margin-left: 8px;
    font-size: 14px;
    transition: transform 0.3s ease;
}

.newsletter-integration .tnp-submit input[type="submit"]:hover::after {
    transform: translateX(2px);
} 