/* Tvåfaktor och roller · samma designspråk som portal.css (grafit och guld), enbart befintliga färgvariabler. */
.sec-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap}
.sec-head h2{margin:0}
.sec-setup{display:grid;gap:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));align-items:start}
.sec-qr{display:block;width:200px;height:200px;padding:12px;border-radius:var(--radius-row);border:2px solid var(--gold-mid);background:#fff;box-shadow:0 10px 26px var(--shadow)}
.sec-key{padding:var(--space-md) var(--space-lg);border:1px solid var(--rule);border-radius:var(--radius-row);background:linear-gradient(var(--g-well-top),var(--g-well-bottom));color:var(--gold-light);font-size:1rem;letter-spacing:.06em;word-break:break-word}
.sec-codes{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.sec-codes li{padding:var(--space-sm) var(--space-md);border:1px solid var(--rule);border-radius:var(--radius-control);background:linear-gradient(var(--g-well-top),var(--g-well-bottom));color:var(--gold-light);text-align:center;font-size:.95rem;letter-spacing:.04em}
.sec-role{margin-top:var(--space-md)}
.sec-links .link{background:none;border:0;box-shadow:none;padding:0;min-height:0;color:var(--gold);font:inherit;text-decoration:underline;cursor:pointer}
.sec-links .link:hover{color:var(--gold-light)}
.btn.is-off{opacity:.45;pointer-events:none}
@media (max-width:560px){.sec-qr{width:100%;max-width:220px;height:auto;aspect-ratio:1}}
