/* PSV Account — Kontoseite [psv_my_account]. Eingebunden nur auf Seiten mit dem Shortcode. */
.psv-account{max-width:640px}
.psv-account-section{background:#fff;border:1px solid #e0e6ed;border-radius:8px;padding:24px;margin-bottom:20px}
.psv-account-section h2{font-size:18px;font-weight:600;color:#08467F;margin:0 0 16px;padding:0 0 12px;border-bottom:2px solid #EBF2FA}
.psv-account-info{display:grid;grid-template-columns:140px 1fr;gap:8px 16px;font-size:14px}
.psv-account-info dt{font-weight:600;color:#5A6270}
.psv-account-info dd{margin:0;color:#1A1A2E}
.psv-account-form label{display:block;font-weight:500;font-size:14px;color:#1A1A2E;margin-bottom:4px}
.psv-account-form input[type=password]{width:100% !important;padding:8px 12px !important;border:1px solid #c3c4c7 !important;border-radius:4px !important;font-size:14px !important;margin-bottom:14px !important;box-sizing:border-box !important}
.psv-account-form input[type=password]:focus{border-color:#20588B;box-shadow:0 0 0 2px rgba(32,88,139,0.15);outline:none}
.psv-account-btn{display:inline-block;padding:8px 20px !important;background:#20588b;color:#fff !important;border:none;border-radius:4px;font-size:14px !important;font-weight:500;cursor:pointer;text-decoration:none;width:auto !important;min-height:0 !important}
.psv-account-btn:link,.psv-account-btn:visited,.psv-account-btn:active,.psv-account-btn:focus{color:#fff !important}
.psv-account-btn:hover{background:#174a75;color:#fff !important}
.psv-account-btn-outline{background:transparent;color:#08467F !important;border:1px solid #08467F !important}
.psv-account-btn-outline:link,.psv-account-btn-outline:visited,.psv-account-btn-outline:active,.psv-account-btn-outline:focus{color:#08467F !important}
.psv-account-btn-outline:hover{background:#EBF2FA;color:#08467F !important}
.psv-account-btn-danger{background:transparent;color:#8B2023 !important;border:1px solid #8B2023 !important}
.psv-account-btn-danger:link,.psv-account-btn-danger:visited,.psv-account-btn-danger:active,.psv-account-btn-danger:focus{color:#8B2023 !important}
.psv-account-btn-danger:hover{background:#FDECEA;color:#8B2023 !important}
.psv-account-msg{padding:10px 14px;border-radius:4px;margin-bottom:16px;font-size:14px;border-left:4px solid}
.psv-account-success{background:#f0faf0;border-color:#46b450;color:#2e7d32}
.psv-account-error{background:#fdf0f0;border-color:#dc3232;color:#8b2023}
.psv-account-status{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:20px;font-size:13px;font-weight:600}
.psv-account-status-on{background:#EAF5EA;color:#2E7D32}
.psv-account-status-off{background:#FDECEA;color:#8B2023}
.psv-account-kopf{display:flex;justify-content:flex-end;margin:0 0 12px}
.psv-account-confirm{margin-top:16px;padding:16px;background:#FDF6EC;border:1px solid #E0B65C;border-radius:6px}
.psv-account-confirm-lead{font-size:14px;color:#1A1A2E;margin:0 0 14px}
.psv-account-confirm label{display:block;font-weight:500;font-size:14px;color:#1A1A2E;margin:0 0 4px}
.psv-account-confirm-or{font-size:13px;color:#5A6270;margin:0 0 14px}
.psv-account-confirm-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
input.psv-account-confirm-code{width:170px !important;font-size:18px !important;letter-spacing:3px;text-align:center;padding:8px !important;border:1px solid #c3c4c7 !important;border-radius:4px !important;box-sizing:border-box !important;margin:0 0 6px}
input.psv-account-confirm-pw{width:100% !important;max-width:320px !important;padding:8px 12px !important;border:1px solid #c3c4c7 !important;border-radius:4px !important;font-size:14px !important;box-sizing:border-box !important;margin:0}
input.psv-account-code{width:120px !important;font-size:20px !important;letter-spacing:6px;text-align:center;padding:8px !important;border:1px solid #c3c4c7 !important;border-radius:4px !important;box-sizing:border-box !important}
.psv-account-section td.psv-account-col-actions,.psv-account-section th.psv-account-col-actions{width:1%;white-space:nowrap}
.psv-account-section td.psv-account-col-actions button.psv-account-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;min-width:30px;min-height:0;padding:0;margin:0;font-size:14px;font-weight:400;line-height:1;background:transparent;color:#8B2023;border:1px solid #8B2023;border-radius:4px;box-shadow:none;cursor:pointer;vertical-align:middle}
.psv-account-section td.psv-account-col-actions button.psv-account-icon-btn:hover{background:#FDECEA}
.psv-account-section td.psv-account-col-actions button.psv-account-icon-btn .dashicons{font-size:16px;width:16px;height:16px;line-height:16px;margin:0}
input.psv-account-pkname{flex:1;max-width:320px !important;width:100% !important;padding:8px 12px !important;border:1px solid #c3c4c7 !important;border-radius:4px !important;font-size:14px !important;box-sizing:border-box !important}
#psv-account-pw-section,#psv-account-2fa-section,#psv-account-passkey-section,#psv-account-backup-section{scroll-margin-top:80px}
.psv-account-field{margin:0 0 10px}
.psv-account-field-label{display:block;font-weight:500;font-size:14px;color:#1A1A2E;margin:0 0 4px}
.psv-account-pw-strength{font-size:13px;margin:-8px 0 14px;min-height:1em;color:#5A6270}
.psv-account-pw-strength.psv-account-pw-weak{color:#8B2023}
.psv-account-pw-strength.psv-account-pw-medium{color:#8a5a00}
.psv-account-pw-strength.psv-account-pw-strong{color:#2E7D32}
/* Bis 1.5.0 inline im Markup (Code-Review 13.10.2026). Container-Klasse vorn, damit Neves Element-Regeln (.entry-content h3, th, pre) nicht gewinnen. */
.psv-account .psv-account-section-info{position:relative}
.psv-account a.psv-account-btn.psv-account-logout{position:absolute;top:20px;right:20px;font-size:13px !important;padding:6px 14px !important}
.psv-account .psv-account-status-line{margin:0}
.psv-account .psv-account-hint{font-size:14px;color:#5A6270;margin:0 0 16px}
.psv-account .psv-account-status-line + .psv-account-hint{margin-top:12px}
.psv-account .psv-account-2fa-setup{margin-top:20px;padding-top:20px;border-top:1px solid #e0e6ed}
.psv-account h3.psv-account-h3{font-size:16px;font-weight:600;color:#1A1A2E;margin:0 0 12px}
.psv-account .psv-account-step{font-size:14px;margin:0 0 16px}
.psv-account .psv-account-step.psv-account-step-tight{margin-bottom:8px}
.psv-account .psv-account-qr{text-align:center;margin-bottom:16px;padding:16px;background:#f9f9f9;border-radius:8px}
.psv-account .psv-account-qr-wait{color:#888}
.psv-account .psv-account-keyline{font-size:13px;color:#5A6270;margin:0 0 16px;text-align:center}
.psv-account code.psv-account-key{font-size:15px;letter-spacing:2px;user-select:all;background:#f0f0f0;padding:4px 10px;border-radius:4px}
.psv-account .psv-account-btn.psv-account-mb8{margin-bottom:8px}
.psv-account table.psv-account-table{width:100%;border-collapse:collapse;font-size:14px;margin:0 0 16px}
.psv-account table.psv-account-table thead tr{border-bottom:2px solid #EBF2FA}
.psv-account table.psv-account-table tbody tr{border-bottom:1px solid #e0e6ed}
.psv-account table.psv-account-table th{text-align:left;padding:8px 10px;font-weight:600;color:#5A6270;background:transparent}
.psv-account table.psv-account-table td{padding:8px 10px}
.psv-account .psv-account-row{display:flex;align-items:center;gap:10px;margin-top:12px}
.psv-account .psv-account-row.psv-account-row-wrap{flex-wrap:wrap}
.psv-account .psv-account-msgbox{margin-top:10px}
.psv-account .psv-account-codes{margin-top:20px;padding:20px;background:#f9f9f9;border-radius:8px;border:1px solid #e0e6ed}
.psv-account .psv-account-codes-warn{font-size:14px;font-weight:600;color:#8B2023;margin:0 0 12px}
.psv-account pre.psv-account-codes-list{font-family:monospace;font-size:16px;line-height:2;letter-spacing:2px;background:#fff;padding:16px;border-radius:4px;border:1px solid #e0e6ed;user-select:all}
.psv-account .psv-account-codes-done{margin-top:16px;padding-top:16px;border-top:1px solid #e0e6ed}
.psv-account .psv-account-confirm-what{font-size:14px;font-weight:600;color:#1A1A2E;margin:0 0 8px}
.psv-account .psv-account-inline-ask{display:inline-flex;align-items:center;gap:6px;font-size:13px}
.psv-account .psv-account-inline-ask .psv-account-btn{padding:4px 10px !important;font-size:13px !important}
