/* Password Generator Tool Specific Styles - Scoped to prevent header/footer conflicts */
    .password-generator-section {
        font-family: 'Poppins', sans-serif;
    }
    
    .password-generator-section * {
        box-sizing: border-box;
    }
    
    .pg-hero-section {
        background: linear-gradient(135deg, #241553 0%, #3d2a7c 50%, #241553 100%);
        padding: 60px 0;
        position: relative;
        overflow: hidden;
    }
    
    .pg-hero-section::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="2" fill="rgba(255,255,255,0.1)"/></svg>');
        background-size: 50px 50px;
        opacity: 0.5;
    }
    
    .pg-main-title {
        color: #ffffff;
        font-size: 2.8rem;
        font-weight: 700;
        text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
    }
    
    .pg-subtitle {
        color: #57baf6;
        font-size: 1.2rem;
        font-weight: 400;
    }
    
    .pg-tool-card {
        background: #ffffff;
        border-radius: 20px;
        box-shadow: 0 20px 60px rgba(36, 21, 83, 0.15);
        padding: 40px;
        margin-top: -80px;
        position: relative;
        z-index: 10;
    }
    
    .pg-password-display {
        background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
        border: 3px solid #241553;
        border-radius: 15px;
        padding: 25px;
        font-family: 'Courier New', monospace;
        font-size: 1.5rem;
        font-weight: 600;
        color: #241553;
        word-break: break-all;
        min-height: 80px;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
        transition: all 0.3s ease;
    }
    
    .pg-password-display:hover {
        border-color: #4fb649;
        box-shadow: 0 5px 20px rgba(79, 182, 73, 0.2);
    }
    
    .pg-strength-meter {
        height: 12px;
        border-radius: 6px;
        background: #e9ecef;
        overflow: hidden;
        margin-top: 15px;
    }
    
    .pg-strength-bar {
        height: 100%;
        border-radius: 6px;
        transition: all 0.5s ease;
    }
    
    .pg-strength-weak {
        width: 25%;
        background: linear-gradient(90deg, #dc3545, #e74c3c);
    }
    
    .pg-strength-fair {
        width: 50%;
        background: linear-gradient(90deg, #ffc107, #f39c12);
    }
    
    .pg-strength-good {
        width: 75%;
        background: linear-gradient(90deg, #57baf6, #3498db);
    }
    
    .pg-strength-strong {
        width: 100%;
        background: linear-gradient(90deg, #4fb649, #27ae60);
    }
    
    .pg-strength-text {
        font-weight: 600;
        margin-top: 8px;
        font-size: 0.95rem;
    }
    
    .pg-btn-generate {
        background: linear-gradient(135deg, #4fb649 0%, #3d9140 100%);
        border: none;
        color: white;
        padding: 15px 40px;
        font-size: 1.1rem;
        font-weight: 600;
        border-radius: 50px;
        transition: all 0.3s ease;
        box-shadow: 0 5px 20px rgba(79, 182, 73, 0.4);
    }
    
    .pg-btn-generate:hover {
        background: linear-gradient(135deg, #3d9140 0%, #2d7030 100%);
        transform: translateY(-3px);
        box-shadow: 0 8px 25px rgba(79, 182, 73, 0.5);
        color: white;
    }
    
    .pg-btn-copy {
        background: linear-gradient(135deg, #57baf6 0%, #3498db 100%);
        border: none;
        color: white;
        padding: 15px 40px;
        font-size: 1.1rem;
        font-weight: 600;
        border-radius: 50px;
        transition: all 0.3s ease;
        box-shadow: 0 5px 20px rgba(87, 186, 246, 0.4);
    }
    
    .pg-btn-copy:hover {
        background: linear-gradient(135deg, #3498db 0%, #2980b9 100%);
        transform: translateY(-3px);
        box-shadow: 0 8px 25px rgba(87, 186, 246, 0.5);
        color: white;
    }
    
    .pg-btn-refresh {
        background: linear-gradient(135deg, #241553 0%, #3d2a7c 100%);
        border: none;
        color: white;
        padding: 15px 30px;
        font-size: 1.1rem;
        font-weight: 600;
        border-radius: 50px;
        transition: all 0.3s ease;
        box-shadow: 0 5px 20px rgba(36, 21, 83, 0.4);
    }
    
    .pg-btn-refresh:hover {
        background: linear-gradient(135deg, #3d2a7c 0%, #241553 100%);
        transform: translateY(-3px);
        color: white;
    }
    
    .pg-option-card {
        background: #f8f9fa;
        border-radius: 15px;
        padding: 25px;
        margin-bottom: 20px;
        border: 2px solid transparent;
        transition: all 0.3s ease;
    }
    
    .pg-option-card:hover {
        border-color: #57baf6;
        box-shadow: 0 5px 20px rgba(87, 186, 246, 0.15);
    }
    
    .pg-range-slider {
        -webkit-appearance: none;
        width: 100%;
        height: 10px;
        border-radius: 5px;
        background: linear-gradient(90deg, #241553, #4fb649);
        outline: none;
    }
    
    .pg-range-slider::-webkit-slider-thumb {
        -webkit-appearance: none;
        width: 25px;
        height: 25px;
        border-radius: 50%;
        background: #4fb649;
        cursor: pointer;
        border: 3px solid #ffffff;
        box-shadow: 0 3px 10px rgba(0,0,0,0.2);
    }
    
    .pg-range-slider::-moz-range-thumb {
        width: 25px;
        height: 25px;
        border-radius: 50%;
        background: #4fb649;
        cursor: pointer;
        border: 3px solid #ffffff;
        box-shadow: 0 3px 10px rgba(0,0,0,0.2);
    }
    
    .pg-checkbox-custom {
        width: 22px;
        height: 22px;
        accent-color: #4fb649;
        cursor: pointer;
    }
    
    .pg-label {
        font-weight: 500;
        color: #241553;
        font-size: 1rem;
        cursor: pointer;
    }
    
    .pg-length-display {
        background: #241553;
        color: #ffffff;
        font-size: 1.5rem;
        font-weight: 700;
        padding: 10px 25px;
        border-radius: 10px;
        display: inline-block;
    }
    
    .pg-ad-space {
        background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
        border: 2px dashed #dee2e6;
        border-radius: 15px;
        min-height: 600px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #6c757d;
        font-weight: 500;
    }
    
    .pg-feature-box {
        background: #ffffff;
        border-radius: 15px;
        padding: 30px;
        text-align: center;
        box-shadow: 0 10px 30px rgba(36, 21, 83, 0.1);
        transition: all 0.3s ease;
        height: 100%;
        border: 2px solid transparent;
    }
    
    .pg-feature-box:hover {
        transform: translateY(-10px);
        border-color: #4fb649;
        box-shadow: 0 20px 40px rgba(79, 182, 73, 0.15);
    }
    
    .pg-feature-icon {
        width: 80px;
        height: 80px;
        background: linear-gradient(135deg, #241553 0%, #3d2a7c 100%);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 20px;
        font-size: 2rem;
        color: #ffffff;
    }
    
    .pg-feature-title {
        color: #241553;
        font-size: 1.2rem;
        font-weight: 600;
        margin-bottom: 10px;
    }
    
    .pg-feature-text {
        color: #6c757d;
        font-size: 0.95rem;
    }
    
    .pg-content-section {
        padding: 60px 0;
        background: #f8f9fa;
    }
    
    .pg-section-title {
        color: #241553;
        font-size: 2rem;
        font-weight: 700;
        margin-bottom: 20px;
    }
    
    .pg-content-text {
        color: #495057;
        font-size: 1.05rem;
        line-height: 1.8;
    }
    
    .pg-faq-section {
        padding: 60px 0;
        background: #ffffff;
    }
    
    .pg-accordion-button {
        background: #f8f9fa;
        color: #241553;
        font-weight: 600;
        font-size: 1.1rem;
        padding: 20px 25px;
        border: none;
    }
    
    .pg-accordion-button:not(.collapsed) {
        background: linear-gradient(135deg, #241553 0%, #3d2a7c 100%);
        color: #ffffff;
    }
    
    .pg-accordion-button:focus {
        box-shadow: none;
        border-color: #4fb649;
    }
    
    .pg-accordion-body {
        padding: 25px;
        font-size: 1rem;
        line-height: 1.8;
        color: #495057;
    }
    
    .pg-rating-section {
        background: linear-gradient(135deg, #241553 0%, #3d2a7c 100%);
        padding: 40px 0;
        color: #ffffff;
        text-align: center;
    }
    
    .pg-rating-stars {
        color: #ffc107;
        font-size: 2rem;
    }
    
    .pg-rating-text {
        font-size: 1.2rem;
        margin-top: 10px;
    }
    
    /* Toast/Popup Notification */
    .pg-toast-container {
        position: fixed;
        top: 20px;
        right: 20px;
        z-index: 9999;
    }
    
    .pg-toast {
        background: linear-gradient(135deg, #4fb649 0%, #3d9140 100%);
        color: #ffffff;
        padding: 20px 30px;
        border-radius: 15px;
        box-shadow: 0 10px 40px rgba(79, 182, 73, 0.4);
        display: none;
        animation: pg-slideIn 0.5s ease;
        font-weight: 600;
        font-size: 1rem;
    }
    
    .pg-toast.pg-toast-error {
        background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
        box-shadow: 0 10px 40px rgba(220, 53, 69, 0.4);
    }
    
    .pg-toast.pg-toast-show {
        display: flex;
        align-items: center;
        gap: 10px;
    }
    
    @keyframes pg-slideIn {
        from {
            transform: translateX(100%);
            opacity: 0;
        }
        to {
            transform: translateX(0);
            opacity: 1;
        }
    }
    
    .pg-related-tools {
        padding: 60px 0;
        background: #f8f9fa;
    }
    
    .pg-tool-link-card {
        background: #ffffff;
        border-radius: 15px;
        padding: 25px;
        text-align: center;
        box-shadow: 0 5px 20px rgba(36, 21, 83, 0.1);
        transition: all 0.3s ease;
        text-decoration: none;
        display: block;
        border: 2px solid transparent;
    }
    
    .pg-tool-link-card:hover {
        transform: translateY(-5px);
        border-color: #57baf6;
        box-shadow: 0 15px 35px rgba(87, 186, 246, 0.2);
    }
    
    .pg-tool-link-icon {
        font-size: 2.5rem;
        color: #241553;
        margin-bottom: 15px;
    }
    
    .pg-tool-link-title {
        color: #241553;
        font-weight: 600;
        font-size: 1.1rem;
        margin: 0;
    }
    
    /* Responsive Design */
    @media (max-width: 991px) {
        .pg-ad-space {
            min-height: 250px;
            margin-bottom: 30px;
        }
        
        .pg-main-title {
            font-size: 2rem;
        }
        
        .pg-tool-card {
            padding: 25px;
            margin-top: -50px;
        }
    }
    
    @media (max-width: 767px) {
        .pg-hero-section {
            padding: 40px 0;
        }
        
        .pg-main-title {
            font-size: 1.6rem;
        }
        
        .pg-password-display {
            font-size: 1rem;
            padding: 15px;
        }
        
        .pg-btn-generate,
        .pg-btn-copy,
        .pg-btn-refresh {
            padding: 12px 25px;
            font-size: 1rem;
            width: 100%;
            margin-bottom: 10px;
        }
    }
    
    /* Exclude characters section */
    .pg-exclude-input {
        border: 2px solid #dee2e6;
        border-radius: 10px;
        padding: 12px 15px;
        font-size: 1rem;
        transition: all 0.3s ease;
    }
    
    .pg-exclude-input:focus {
        border-color: #4fb649;
        box-shadow: 0 0 0 3px rgba(79, 182, 73, 0.2);
        outline: none;
    }
    
    /* History Section */
    .pg-history-section {
        background: #f8f9fa;
        border-radius: 15px;
        padding: 20px;
        max-height: 300px;
        overflow-y: auto;
    }
    
    .pg-history-item {
        background: #ffffff;
        border-radius: 10px;
        padding: 12px 15px;
        margin-bottom: 10px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        border: 1px solid #e9ecef;
        font-family: 'Courier New', monospace;
        font-size: 0.9rem;
    }
    
    .pg-history-copy-btn {
        background: #57baf6;
        border: none;
        color: white;
        padding: 5px 15px;
        border-radius: 5px;
        font-size: 0.85rem;
        cursor: pointer;
        transition: all 0.3s ease;
    }
    
    .pg-history-copy-btn:hover {
        background: #3498db;
    }