/* ========================================================================
   NO-TRUST SUITE — PASSWORD GENERATOR MODULE
   THEME: PASSWORD STRENGTH DASHBOARD (PREMIUM NEON)
   ROOT: .nt-premium-module.nt-premium-password-generator
   ------------------------------------------------------------------------
   DEBUG: PGEN-001 — File loaded
   ======================================================================== */


/* ========================================================================
   MODULE WRAPPER
   ======================================================================== */

.nt-premium-module.nt-premium-password-generator {
    background: #0b0b14 !important; /* DEBUG: PGEN-002 — Force black/navy background */
    padding: 22px;
    border-radius: 12px;
    border: 1px solid rgba(57,255,20,0.25);
    box-shadow: 0 0 22px rgba(0,0,0,0.65);
    color: #e5e5e5;
    font-family: "Inter", "Segoe UI", sans-serif;
}


/* ========================================================================
   HEADER (Unified across all modules)
   ======================================================================== */

.nt-premium-password-generator .nt-premium-title {
    margin-bottom: 22px;
}

.nt-premium-password-generator .nt-premium-title-row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.nt-premium-password-generator .nt-premium-logo {
    width: 28px;
    height: 28px;
    filter: drop-shadow(0 0 6px rgba(57,255,20,0.7));
}

.nt-premium-password-generator .nt-premium-title-text {
    font-size: 20px;
    font-weight: 600;
    color: #39ff14;
    text-shadow: 0 0 8px rgba(57,255,20,0.6);
}

.nt-premium-password-generator .nt-premium-subtitle {
    margin-top: 6px;
    font-size: 13px;
    color: #9aa4ad;
}

.nt-premium-password-generator .nt-premium-underline {
    margin-top: 14px;
    height: 2px;
    width: 100%;
    background: linear-gradient(90deg, #39ff14, transparent);
    opacity: 0.7;
}


/* ========================================================================
   GRID LAYOUT (Matches Password Strength Dashboard)
   ======================================================================== */

.nt-premium-password-generator .nt-premium-layout {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 20px;
}

@media (max-width: 960px) {
    .nt-premium-password-generator .nt-premium-layout {
        grid-template-columns: 1fr;
    }
}


/* ========================================================================
   CARD SYSTEM (Matches Password Strength Dashboard)
   ======================================================================== */

.nt-premium-password-generator .nt-card {
    background: #11131a;
    border-radius: 10px;
    border: 1px solid rgba(57,255,20,0.35);
    box-shadow: 0 0 18px rgba(57,255,20,0.25);
    padding: 16px 18px;
}

.nt-premium-password-generator .nt-card-title {
    margin: 0 0 12px;
    font-size: 15px;
    color: #e5e5e5;
}


/* ========================================================================
   FORM FIELDS
   ======================================================================== */

.nt-premium-password-generator .nt-field {
    margin-bottom: 14px;
}

.nt-premium-password-generator .nt-field label {
    display: block;
    margin-bottom: 6px;
    font-size: 13px;
    color: #c7d0d5;
}

.nt-premium-password-generator input[type="text"],
.nt-premium-password-generator input[type="number"],
.nt-premium-password-generator select {
    width: 100%;
    padding: 8px 10px;
    border-radius: 6px;
    border: 1px solid #333;
    background: #050509;
    color: #e5e5e5;
    font-size: 13px;
}

.nt-premium-password-generator input:focus,
.nt-premium-password-generator select:focus {
    outline: none;
    border-color: #39ff14;
    box-shadow: 0 0 0 1px rgba(57,255,20,0.4);
}

.nt-premium-password-generator .nt-field-inline {
    display: flex;
    align-items: center;
    gap: 8px;
}


/* ========================================================================
   BUTTONS
   ======================================================================== */

.nt-premium-password-generator button,
.nt-premium-password-generator .button {
    background: #39ff14;
    color: #000;
    padding: 8px 14px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    border: none;
    transition: background .2s, box-shadow .2s;
}

.nt-premium-password-generator button:hover,
.nt-premium-password-generator .button:hover {
    background: #2be010;
    box-shadow: 0 0 10px rgba(57,255,20,0.6);
}


/* ========================================================================
   OUTPUT AREA
   ======================================================================== */

.nt-premium-password-generator .nt-output-row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.nt-premium-password-generator .nt-output-field {
    flex: 1;
}

.nt-premium-password-generator .nt-meta-row {
    margin-top: 8px;
    font-size: 12px;
    color: #9aa4ad;
}

.nt-premium-password-generator .nt-meta-value {
    font-family: Menlo, Consolas, monospace;
    color: #39ff14;
}


/* ========================================================================
   LISTS
   ======================================================================== */

.nt-premium-password-generator .nt-list {
    margin: 0;
    padding-left: 18px;
    font-size: 12px;
    color: #c7d0d5;
}

.nt-premium-password-generator .nt-list li {
    margin-bottom: 5px;
}


/* ========================================================================
   DEBUG FOOTER
   ======================================================================== */

 /* DEBUG: PGEN-999 — End of password-generator.css */

.nt-premium-password-generator .nt-pwd-education {
    margin-top: 14px;
    border: 1px solid #008f12;
    box-shadow: 0 0 18px rgba(0, 143, 18, .18);
}

.nt-premium-password-generator .nt-pwd-education .nt-policy-section-head h2 {
    color: #d8c36a !important;
}

.nt-premium-password-generator .nt-pwd-education-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
}

.nt-premium-password-generator .nt-pwd-education-grid details {
    overflow: hidden;
    border: 1px solid rgba(57, 255, 20, .18);
    border-radius: 8px;
    background: rgba(2, 8, 14, .72);
}

.nt-premium-password-generator .nt-pwd-education-grid summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 10px 12px;
    color: #d8c36a;
    cursor: pointer;
    font-weight: 800;
    letter-spacing: 0;
    list-style: none;
}

.nt-premium-password-generator .nt-pwd-education-grid summary::-webkit-details-marker {
    display: none;
}

.nt-premium-password-generator .nt-pwd-education-grid summary::after {
    content: "\25BE";
    color: #87bceb;
    flex: 0 0 auto;
    font-size: 10px;
}

.nt-premium-password-generator .nt-pwd-education-grid details[open] summary::after {
    content: "\25B4";
}

.nt-premium-password-generator .nt-pwd-education-grid p {
    margin: 0;
    padding: 0 12px 12px;
    color: #9bb0c9;
    line-height: 1.55;
}

@media (max-width: 1100px) {
    .nt-premium-password-generator .nt-pwd-education-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .nt-premium-password-generator .nt-pwd-education-grid {
        grid-template-columns: 1fr;
    }
}
