.input-wrapper { position: relative; }
        .input-wrapper input { width: 100%; padding: 12px 15px; border: 2px solid var(--border-color); border-radius: var(--radius); font-size: 1rem; outline: none; transition: border-color 0.2s; background: #fff; color: var(--text-main); }
        .input-wrapper input:focus { border-color: var(--primary-color); }

        .strength-meter { height: 8px; width: 100%; background: #e2e8f0; border-radius: 4px; margin-top: 10px; overflow: hidden; display: flex; }
        .strength-bar { height: 100%; width: 0%; transition: width 0.3s ease, background-color 0.3s ease; }

        .strength-text { font-weight: 600; font-size: 0.95rem; margin-top: 8px; display: block; }

        .requirements-list { margin-top: 20px; background: #f1f2f6; padding: 15px; border-radius: var(--radius); font-size: 0.9rem; }
        .requirements-list ul { list-style: none; display: flex; flex-direction: column; gap: 8px; }
        .requirements-list li { display: flex; align-items: center; gap: 8px; color: var(--text-muted); transition: color 0.2s; }
        .requirements-list li.valid { color: #27ae60; font-weight: 600; }