*{box-sizing:border-box}html{font-family:system-ui,Segoe UI,Tahoma,sans-serif;font-size:16px}body{margin:0;background:var(--color-background);color:var(--color-text);line-height:1.5}a{color:var(--color-primary-dark)}button,input,select,textarea{font:inherit}button{padding-block:.35rem;padding-inline:.8rem;border:1px solid var(--color-primary-dark);border-radius:6px;background:var(--color-surface);color:var(--color-text);cursor:pointer;-webkit-margin-end:.4rem;margin-inline-end:.4rem}button.primary{background:var(--color-primary);color:var(--color-text-on-primary);border-color:var(--color-primary)}button:disabled{opacity:.6;cursor:default}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}input,select,textarea{padding-block:.35rem;padding-inline:.5rem;border:1px solid var(--color-text);border-radius:6px;background:var(--color-background);color:var(--color-text)}.sr-only{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.shell-header{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;padding-block:.6rem;padding-inline:1rem;background:var(--color-primary)}.shell-header,.shell-header a{color:var(--color-text-on-primary)}.brand{display:flex;align-items:center;gap:.5rem;text-decoration:none;font-weight:600}.logo{block-size:2rem;inline-size:auto}.menu ul{display:flex;gap:1rem;list-style:none;margin:0;padding:0}.menu a[aria-current=page]{text-decoration:underline}.user{display:flex;gap:.75rem;-webkit-margin-start:auto;margin-inline-start:auto}.language,.user{align-items:center}.language{display:inline-flex;gap:.4rem}.screen{padding-block:1rem;max-inline-size:80rem}.screen,.sign-in{padding-inline:1rem}.sign-in{max-inline-size:30rem;margin-inline:auto;padding-block:2rem}.sign-in-brand{display:flex;align-items:center;gap:.6rem;-webkit-margin-after:1.5rem;margin-block-end:1.5rem}.sign-in-brand .language{-webkit-margin-start:auto;margin-inline-start:auto}.card{background:var(--color-surface);padding:1.25rem;border-radius:10px}.qr{display:block;margin-block:.5rem}.secret{font-size:1.1rem}.codes,.secret{font-family:ui-monospace,Consolas,monospace}.codes{column-count:2}.field{display:flex;flex-direction:column;gap:.25rem;-webkit-margin-after:.9rem;margin-block-end:.9rem}.required{font-weight:400}.help{margin:0;font-size:.9rem}.field-error{color:var(--color-error);margin:0}.error-summary{border:2px solid var(--color-error);padding:.75rem;-webkit-margin-after:1rem;margin-block-end:1rem;border-radius:6px}.error-summary p{margin-block:0 .25rem;font-weight:600}.actions{justify-content:flex-end;-webkit-margin-before:1rem;margin-block-start:1rem}.actions,.check{display:flex;gap:.5rem}.check{align-items:center}fieldset{border:1px solid var(--color-text);border-radius:6px;margin-block:0 .9rem}.details{display:grid;grid-template-columns:max-content 1fr;grid-gap:.25rem 1rem;gap:.25rem 1rem}.details dd{margin:0}.dialog-backdrop{position:fixed;inset:0;display:grid;place-items:center;background:color-mix(in srgb,var(--color-text) 40%,transparent)}.dialog{background:var(--color-background);padding:1.25rem;border-radius:10px;inline-size:min(36rem,92vw);max-block-size:90vh;overflow:auto}.list-tools{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;-webkit-margin-after:.75rem;margin-block-end:.75rem}.list-tools label{display:flex;flex-direction:column;gap:.2rem}.list-tools .dates{display:flex;gap:.5rem}.export{position:relative}.export a{display:block;padding-block:.25rem}table{inline-size:100%;border-collapse:collapse}td,th{text-align:start;padding-block:.4rem;padding-inline:.5rem;-webkit-border-after:1px solid var(--color-surface);border-block-end:1px solid var(--color-surface);vertical-align:top}th button.sort{border:none;background:none;padding:0;font-weight:600}.placeholder .bar{display:block;block-size:.8rem;background:var(--color-surface);border-radius:4px}.json{font-family:ui-monospace,Consolas,monospace;font-size:.85rem;word-break:break-all}.row-actions{white-space:nowrap}.pager{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;-webkit-margin-before:.75rem;margin-block-start:.75rem}.pager label{display:inline-flex;gap:.4rem;align-items:center}[dir=rtl] .arrow{display:inline-block;transform:scaleX(-1)}.list-empty,.list-error{padding-block:1rem}