.access-heading{display:flex;justify-content:space-between;gap:16px;align-items:center}.access-heading h2{margin-bottom:0}.access-device .actions{flex-wrap:wrap}.access-device{padding:20px}.access-empty{padding:28px}.access-warning{background:var(--warn-bg);padding:14px;border-radius:10px;font-size:14px}#access-form{display:grid;gap:16px}#access-form label{display:grid;gap:7px}#access-form input,#access-form select,#access-link-value{width:100%;box-sizing:border-box;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:inherit;font:inherit}#access-form .access-check{display:flex;align-items:flex-start;font-size:14px}#access-form .access-check input{width:auto;margin-top:3px}#access-error{color:var(--warn)}#access-link-value{margin-bottom:18px}@media(max-width:600px){.access-heading{align-items:flex-start;flex-direction:column}.access-heading>button{width:100%}}

#access-qr{display:block;margin:16px auto;background:white;max-width:100%;height:auto}#access-qr[hidden]{display:none}#access-form small{color:var(--muted);font-size:12px}#access-form textarea{font:inherit;padding:10px;max-width:100%}#access-dialog{max-height:90vh;overflow:auto}

@media(min-width:640px){#access-form{grid-template-columns:1fr 1fr}#access-form>p,#access-form>details,#access-form>.row,#access-form>label.access-check:last-of-type{grid-column:1/-1}}

.auth-feedback { padding: 12px 14px; border: 1px solid currentColor; border-radius: 8px; line-height: 1.5; overflow-wrap: anywhere; }
.auth-feedback[data-state="error"] { color: #ff9292; }
.auth-feedback[data-state="success"] { color: #69dca0; }
.auth-feedback[data-state="pending"] { color: #9dc9ff; }
.auth-feedback[hidden] { display: none; }
form[aria-busy="true"] button[type="submit"] { cursor: progress; }

.client-update{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:12px 0}#access-message{white-space:pre-line}#access-qr{max-width:100%;height:auto;background:white}dialog.wide{box-sizing:border-box;max-height:calc(100dvh - 24px);overflow:auto}#access-error:not(:empty){padding:12px;border:1px solid currentColor;border-radius:8px}#access-form textarea{max-width:100%;box-sizing:border-box}@media(max-width:600px){dialog .row{flex-wrap:wrap}dialog .row button{flex:1;min-width:110px}}

@media(max-width:600px){.top-actions{flex-wrap:wrap;width:100%;margin-left:0}.top-actions button{flex:1 1 auto}.client-update{padding:0 12px}.access-device h3{overflow-wrap:anywhere}}
