/* Password Generator — gap widgets (reuses blog.css + tools.css tokens) */
.pw-out-wrap{display:flex;gap:.6rem;align-items:stretch;margin-bottom:1rem}
#pwOut{flex:1;font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:1.25rem;
  color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);
  padding:.8rem 1rem;box-sizing:border-box;letter-spacing:.5px}
#pwOut:focus{outline:none;border-color:var(--orange)}
.pw-iconbtn{flex:0 0 auto;width:54px;display:grid;place-items:center;border:1px solid var(--border);
  background:var(--surface);border-radius:var(--radius-sm);cursor:pointer;font-size:1.3rem;transition:.15s}
.pw-iconbtn:hover{border-color:var(--orange)}
.pw-meter{height:8px;border-radius:999px;background:var(--border);overflow:hidden;margin:.2rem 0 .3rem}
#pwBar{height:100%;width:0;border-radius:999px;transition:width .25s,background .25s}
#pwStrength{font-size:.85rem;font-weight:600;color:var(--text-soft)}
.pw-controls{display:grid;gap:1rem;margin-top:1.3rem}
.pw-range{display:flex;align-items:center;gap:1rem}
.pw-range label{font-weight:600;color:var(--text-soft);min-width:9.5rem}
.pw-range input[type=range]{flex:1;accent-color:var(--orange)}
.pw-range .val{font-weight:700;color:var(--text);min-width:2.5rem;text-align:right;font-variant-numeric:tabular-nums}
.pw-toggles{display:flex;flex-wrap:wrap;gap:.7rem 1.4rem}
.pw-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
