/* Logowanie dwuetapowe administratora */
.two-factor-card{width:min(900px,100%);margin:28px auto;background:#fff;border:1px solid var(--line);border-radius:16px;padding:clamp(24px,5vw,48px);box-shadow:var(--shadow)}
.two-factor-card>p{color:var(--muted);max-width:760px}.two-factor-setup{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:clamp(24px,5vw,52px);align-items:start;margin-top:30px}.two-factor-qr{width:100%;aspect-ratio:1;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;display:grid;place-items:center}.two-factor-qr svg{display:block;width:100%;height:100%}.two-factor-setup details{margin:14px 0 30px;padding:14px 16px;border:1px solid var(--line);border-radius:9px;background:#f8fbf9}.two-factor-setup summary{cursor:pointer;font-weight:800}.totp-secret{display:block;margin:12px 0;padding:12px;background:#eaf1ed;color:var(--green-dark);font-size:1rem;font-weight:800;letter-spacing:.08em;overflow-wrap:anywhere}.two-factor-form{display:grid;gap:15px}
.two-factor-form input,.two-factor-login input,.security-card input{width:100%;border:1px solid #cbd8d0;background:#fff;border-radius:8px;padding:11px 12px;color:var(--ink)}.two-factor-login{margin-top:36px}.recovery-card{max-width:700px}.recovery-code-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:26px 0;padding:0;list-style:none}.recovery-code-list li{padding:12px;text-align:center;background:#f1f5f2;border:1px solid var(--line);border-radius:8px}.recovery-code-list code{font-size:1.05rem;font-weight:850;letter-spacing:.07em;color:var(--ink)}.recovery-actions{display:flex;gap:12px;flex-wrap:wrap}
.security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.security-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px}.security-card>p{color:var(--muted)}.security-card form{display:grid;gap:14px;margin-top:24px}.recovery-count{float:right;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#e8f3ec;color:var(--green);font-size:1.25rem;font-weight:900}
.check-row{display:flex!important;align-items:center;gap:9px;color:var(--ink);font-weight:700}.check-row input{width:auto!important;margin:0}
.contact-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:end;margin:0 0 20px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 24px rgba(5,43,93,.05)}.contact-filters label{display:grid;gap:7px;font-size:.78rem;font-weight:850;color:var(--muted)}.contact-filters label:first-of-type{grid-column:span 2}.contact-filters input,.contact-filters select{width:100%;min-width:0;border:1px solid #cbd8e5;border-radius:8px;padding:11px 12px;background:#fff;color:var(--ink)}.contact-filters button,.contact-filters .button{min-height:44px;white-space:nowrap}
@media(max-width:1000px){.contact-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-filters label:first-of-type{grid-column:1/-1}}@media(max-width:600px){.contact-filters{grid-template-columns:1fr;padding:16px}.contact-filters label:first-of-type{grid-column:auto}}
@media(max-width:700px){.two-factor-setup,.security-grid{grid-template-columns:1fr}.two-factor-qr{max-width:290px;margin:auto}.recovery-code-list{grid-template-columns:1fr}}
@media print{body{background:#fff}.topbar,footer,.cookie-banner,.recovery-actions{display:none!important}.shell{width:100%;padding:0}.two-factor-card{box-shadow:none;border:0;margin:0;padding:20px}.recovery-code-list{grid-template-columns:repeat(2,1fr)}}
