.password-generator{max-width:800px;margin:0 auto}.password-controls{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg)}.control-section{margin-bottom:var(--space-xl)}.control-section:last-child{margin-bottom:0}.control-section h4{margin:0 0 var(--space-md) 0;color:var(--text-primary);font-family:var(--font-display)}.toggle-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-md)}.toggle-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border)}.toggle-item label{font-weight:500;color:var(--text-primary);cursor:pointer;user-select:none}.password-buttons{display:flex;gap:var(--space-md);flex-wrap:wrap}.password-result{display:flex;flex-direction:column;gap:var(--space-md)}.password-display{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border);word-break:break-all}.password-text{font-family:var(--font-mono);font-size:1.125rem;color:var(--text-primary);flex:1}.password-strength{display:flex;flex-direction:column;gap:var(--space-sm)}.strength-label{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.strength-text{font-weight:600;font-family:var(--font-mono)}.strength-bar{height:6px;background:var(--border);border-radius:3px;overflow:hidden}.strength-fill{height:100%;transition:all var(--transition-normal);border-radius:3px}.password-list{display:flex;flex-direction:column;gap:var(--space-sm)}.password-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border);word-break:break-all}@media(max-width:768px){.toggle-group{grid-template-columns:1fr}.password-buttons{flex-direction:column}.password-display,.password-item{flex-direction:column;align-items:stretch;gap:var(--space-sm)}.password-text{text-align:center}}
