/* Password Generator Tool - Theme-friendly (no forced colors) */
.btpg-wrap *, .btpg-wrap *::before, .btpg-wrap *::after { box-sizing:border-box; }
.btpg-settings{ display:grid; gap:1rem; margin:0 0 1.25rem 0; }
.btpg-input-group{ display:grid; gap:.25rem; }
.btpg-label{ font-size:.95rem; }
.btpg-card{ display:grid; gap:1rem; border:1px solid var(--wp--preset--color--border, #e5e7eb); border-radius:.75rem; padding:1rem; margin-bottom:1.25rem; }
.btpg-section-title{ font-weight:600; }
.btpg-grid{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:.75rem; }
.btpg-check{ display:flex; align-items:center; gap:.5rem; }
.btpg-note{ font-size:.8rem; opacity:.8; margin-left:.25rem; }
.btpg-btn{ display:inline-flex; align-items:center; justify-content:center; gap:.5rem; }
.btpg-btn--full{ width:100%; }
.btpg-message{ margin-top:.75rem; padding:.6rem .75rem; border-radius:.5rem; text-align:center; font-size:.9rem; }
.btpg-msg--success{ background:#d1fae5; }
.btpg-msg--error{ background:#fee2e2; }
.btpg-msg--info{ background:#dbeafe; }
.btpg-output{ margin-top:1.25rem; }
.btpg-output-title{ font-weight:600; margin-bottom:.75rem; }
.btpg-list{ display:grid; gap:.6rem; max-height:24rem; overflow:auto; padding:.25rem; }
.btpg-placeholder{ opacity:.75; text-align:center; padding:.75rem 0; }
.btpg-item{ display:flex; align-items:center; justify-content:space-between; gap:.75rem; border:1px solid var(--wp--preset--color--border, #e5e7eb); border-radius:.5rem; padding:.8rem 1rem; }
.btpg-text{ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; word-break:break-all; font-size:1.05rem; flex:1; }
.btpg-item .btpg-copy{ display:inline-flex; align-items:center; justify-content:center; gap:.5rem; }
@media (max-width:480px){ .btpg-grid{ grid-template-columns:1fr; } }