.nfc-admin-page{background:var(--bg)}
.nfc-page{max-width:1440px;margin:auto;padding:32px 36px 48px;min-width:0}
.nfc-page h1,.nfc-page h2,.nfc-page h3{letter-spacing:0}
.nfc-page h1{font-size:26px;line-height:1.3;margin:5px 0 0}
.nfc-page h2{font-size:18px;line-height:1.4;margin:0}
.nfc-eyebrow{display:block;font-size:11px;font-weight:700;color:var(--muted);letter-spacing:0}
.nfc-heading,.nfc-heading-actions,.nfc-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.nfc-heading{margin-bottom:28px}.nfc-heading-actions{flex-shrink:0}
.nfc-device-link{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap}
.nfc-device-link span{margin-left:6px;color:var(--primary)}
.nfc-icon-button{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--border);border-radius:6px;background:var(--bg-elev);color:var(--text);cursor:pointer;flex-shrink:0}
.nfc-icon-button:hover{border-color:var(--primary);color:var(--primary)}
.nfc-page button:focus-visible,.nfc-page input:focus-visible,.nfc-page select:focus-visible,.nfc-page textarea:focus-visible,.nfc-page summary:focus-visible,.nfc-table:focus-visible{outline:2px solid var(--primary);outline-offset:3px}
.nfc-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:30px}
.nfc-overview>div{padding:20px 20px 20px 0;min-width:0}
.nfc-overview>div+div{padding-left:24px;border-left:1px solid var(--border)}
.nfc-overview span{display:block;color:var(--text);font-size:13px;font-weight:600}
.nfc-overview strong{display:block;font-size:28px;font-weight:700;line-height:1.4;margin:5px 0 1px;font-variant-numeric:tabular-nums}
.nfc-overview small{font-size:12px;color:var(--muted)}
.nfc-overview>div:nth-child(2) strong{color:var(--primary-700)}
.nfc-overview>div:nth-child(3) strong{color:#987300}
.nfc-workspace{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.85fr);gap:32px;margin-bottom:34px}
.nfc-enrollment-area,.nfc-recent-area{min-width:0}
.nfc-recent-area{padding-left:28px;border-left:1px solid var(--border)}
.nfc-section-heading{margin-bottom:20px;flex-wrap:wrap}
.nfc-access-badge{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);color:var(--muted);padding:3px 7px;border-radius:4px;font-size:11px;font-weight:600}
.nfc-search-label,.nfc-form label{font-size:12px;font-weight:600;color:var(--muted)}
.nfc-search-field{position:relative;display:flex;align-items:center;margin-top:7px}
.nfc-search-field svg{position:absolute;left:13px;color:var(--muted);pointer-events:none}
.nfc-page #nfcSearch{padding-left:40px}
.nfc-page input,.nfc-page select,.nfc-page textarea{box-sizing:border-box;width:100%;min-width:0;padding:11px 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg-elev);color:var(--text);font:inherit;font-size:14px;line-height:1.5}
.nfc-page input::placeholder{color:var(--muted)}
.nfc-page input:hover,.nfc-page select:hover{border-color:#b5c5ba}
.nfc-form,.nfc-advanced-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.nfc-form{margin-top:18px}
.nfc-form label{display:grid;gap:7px;align-content:start}
.nfc-form .wide{grid-column:1/-1}
.nfc-form textarea,.nfc-page dialog textarea{min-height:88px;resize:vertical}
.nfc-page #nfcVerifiedId{background:var(--surface)}
.nfc-page #nfcIdentity{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0;padding:10px 12px;background:var(--surface);border-left:3px solid var(--primary);font-size:13px;overflow-wrap:anywhere}
.nfc-page #nfcIdentity:empty{display:none}
.nfc-page #nfcIdentity strong{font-weight:600}.nfc-identity-id{color:var(--muted)}
.nfc-page details>summary{cursor:pointer;list-style:none;font-weight:600;display:flex;align-items:center;gap:8px;min-width:0}
.nfc-page details>summary::-webkit-details-marker{display:none}
.nfc-page details>summary:before{content:'\203A';display:inline-block;font-size:20px;line-height:1;color:var(--muted);transition:transform .15s}
.nfc-page details[open]>summary:before{transform:rotate(90deg)}
.nfc-page #nfcAdvanced{border-top:1px solid var(--border)}
.nfc-page #nfcAdvanced>summary{padding:14px 0 0;font-size:12px;color:var(--muted)}
.nfc-advanced-fields{padding-top:16px}
.nfc-page #nfcSelection{margin:0;font-size:13px;color:var(--muted);overflow-wrap:anywhere}
.nfc-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.nfc-page .btn{font-size:13px;min-height:38px;padding:8px 14px;border-radius:6px;box-shadow:none;font-weight:600}
.nfc-page .btn-ghost{background:transparent;border:1px solid var(--border);color:var(--text)}
.nfc-page .btn-ghost:hover{background:var(--surface);border-color:#b5c5ba}
.nfc-form-actions{padding-top:2px}
.nfc-page #nfcMessage{font-size:13px;color:var(--muted);margin:14px 0 0;min-height:20px;overflow-wrap:anywhere}
.nfc-page #nfcMessage[data-tone=error]{color:var(--danger)}
.nfc-progress{border-left:3px solid var(--primary);padding:14px 16px;margin-top:20px;background:var(--primary-50)}
.nfc-progress strong{display:block;font-size:18px;margin:5px 0;overflow-wrap:anywhere}
.nfc-progress p{font-size:13px;overflow-wrap:anywhere;margin:0 0 12px;color:var(--muted)}
.nfc-count{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:24px;padding:2px 7px;background:var(--surface);border:1px solid var(--border);border-radius:4px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.nfc-recent-area>details>summary,.nfc-registry>summary{font-size:16px;padding:0 0 18px}
.nfc-history-item{padding:16px 0;border-top:1px solid var(--border);min-width:0}
.nfc-history-heading{display:flex;align-items:flex-start;gap:8px;justify-content:space-between;margin-bottom:9px}
.nfc-history-heading strong{font-size:13px;overflow-wrap:anywhere}
.nfc-history-meta{display:grid;grid-template-columns:82px minmax(0,1fr);gap:5px 10px;font-size:12px;margin:0 0 12px}
.nfc-history-meta dt{color:var(--muted)}.nfc-history-meta dd{margin:0;overflow-wrap:anywhere;color:var(--text)}
.nfc-state{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border-radius:4px;background:var(--surface);font-size:11px;font-weight:600;color:var(--muted);white-space:nowrap;border:1px solid var(--border)}
.nfc-state[data-tone=good]{background:var(--primary-50);border-color:#c5e6d0;color:var(--primary-700)}
.nfc-state[data-tone=warning]{background:#fff9e5;border-color:#ebdfaf;color:#836500}
.nfc-state[data-tone=danger]{background:#fff1f2;border-color:#fecdd3;color:#be123c}
.nfc-registry{border-top:1px solid var(--border);padding-top:24px}
.nfc-table{max-width:100%;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}
.nfc-table table{width:100%;min-width:780px;border-collapse:collapse;font-size:13px}
.nfc-table th{text-align:left;font-size:11px;font-weight:600;color:var(--muted);background:var(--surface);padding:12px 14px;white-space:nowrap}
.nfc-table td{text-align:left;vertical-align:middle;border-bottom:1px solid var(--border);padding:14px;line-height:1.5}
.nfc-table td:first-child{min-width:180px}.nfc-table td:last-child{min-width:200px}
.nfc-table td strong{display:block;font-weight:600;font-size:13px}.nfc-table td small{display:block;font-size:12px;color:var(--muted);overflow-wrap:anywhere;margin-top:3px}
.nfc-table td code{font-size:12px;color:var(--muted);white-space:nowrap}
.nfc-table .btn{font-size:12px;padding:5px 9px;min-height:30px}
.nfc-empty{font-size:13px;color:var(--muted);padding:24px 0}
.nfc-warning{padding:12px 14px;background:#fff9e5;color:#836500;border-left:3px solid #d4b847;border-radius:4px;font-size:13px}
.nfc-page [role=status]{overflow-wrap:anywhere}
.nfc-page dialog{box-sizing:border-box;width:min(600px,calc(100% - 32px));max-height:85vh;overflow:auto;background:var(--bg-elev);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:24px}
.nfc-page dialog::backdrop{background:#0007}
.nfc-page dialog label{display:grid;gap:8px;margin:18px 0}
.nfc-page dialog h2{margin-bottom:16px}
.nfc-page dialog .nfc-history-item p{font-size:13px;color:var(--muted);overflow-wrap:anywhere}
.nfc-page [hidden]{display:none!important}
@media(max-width:1150px){.nfc-page{padding:28px 24px}.nfc-workspace{grid-template-columns:minmax(0,1fr)}.nfc-recent-area{border-left:0;border-top:1px solid var(--border);padding:24px 0 0}.nfc-overview>div+div{padding-left:16px}}
@media(max-width:600px){.nfc-page{padding:22px 16px 36px}.nfc-heading{align-items:flex-start;margin-bottom:22px;gap:12px}.nfc-page h1{font-size:23px;max-width:230px}.nfc-heading-actions{gap:10px}.nfc-device-link{display:none}.nfc-overview{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:24px}.nfc-overview>div{padding:14px 12px!important}.nfc-overview>div:nth-child(odd){padding-left:0!important;border-left:0}.nfc-overview>div:nth-child(n+3){border-top:1px solid var(--border)}.nfc-overview strong{font-size:25px}.nfc-overview small{font-size:11px}.nfc-form,.nfc-advanced-fields{grid-template-columns:minmax(0,1fr)}.nfc-workspace{gap:24px}.nfc-section-heading{gap:10px}.nfc-page h2{font-size:17px}.nfc-form-actions{display:grid;grid-template-columns:minmax(0,1fr) auto}.nfc-form-actions .btn{padding:10px 12px}.nfc-page dialog{padding:20px}}
@media(prefers-color-scheme:dark){.nfc-state[data-tone=warning],.nfc-warning{background:#282614;color:#ecda8d;border-color:#5e5223}.nfc-state[data-tone=danger]{background:#351b24;color:#fda4af;border-color:#642737}.nfc-overview>div:nth-child(3) strong{color:#dac775}}
[data-theme=dark] .nfc-state[data-tone=warning],[data-theme=dark] .nfc-warning{background:#282614;color:#ecda8d;border-color:#5e5223}
[data-theme=dark] .nfc-state[data-tone=danger]{background:#351b24;color:#fda4af;border-color:#642737}
@media(max-width:600px){.nfc-overview>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:62px;padding:10px 12px!important}.nfc-overview span{font-size:12px}.nfc-overview strong{margin:0;font-size:24px}.nfc-overview small{display:none}}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .nfc-state[data-tone=good]{color:#86efac;border-color:#27633e}:root:not([data-theme=light]) .nfc-overview>div:nth-child(2) strong{color:#86efac}}
[data-theme=dark] .nfc-state[data-tone=good]{color:#86efac;border-color:#27633e}
[data-theme=dark] .nfc-overview>div:nth-child(2) strong{color:#86efac}
[data-theme=dark] .nfc-overview>div:nth-child(3) strong{color:#dac775}
@media(prefers-reduced-motion:reduce){.nfc-page details>summary:before{transition:none}}
