.admin-tabs a.active{border-color:var(--primary);color:var(--primary);background:var(--soft);font-weight:750}.device-summary,.diagnostic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.device-summary article,.diagnostic-item,.device-actions,.device-history,.visitor-pass-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.device-summary article,.diagnostic-item{padding:17px}.device-summary small,.diagnostic-item small{display:block;color:var(--muted);font-size:12px;font-weight:700}.device-summary strong,.diagnostic-item strong{display:block;margin-top:7px;font-size:24px}.diagnostic-item.success{border-left:4px solid var(--primary)}.diagnostic-item.warning{border-left:4px solid #c78a15}.diagnostic-item.error{border-left:4px solid var(--danger)}.device-filter{margin-bottom:16px}.device-add label{min-width:170px;flex:1}.device-list{display:grid;gap:10px}.device-row{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;display:grid;grid-template-columns:1.4fr 1fr .7fr auto;gap:18px;align-items:center;box-shadow:var(--shadow)}.device-row strong,.device-row small{display:block}.device-row small{color:var(--muted);font-size:12px;margin-top:6px}.device-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.04em;background:#edf1f0;color:#526461}.device-status.online,.device-status.issued,.device-status.granted{background:#dff4ea;color:#176b4d}.device-status.offline,.device-status.disabled,.device-status.revoked,.device-status.denied{background:#f7e5e3;color:#9f3731}.device-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:16px;margin-bottom:24px}.device-config{display:grid;grid-template-columns:1fr 1fr;align-items:start}.device-config h2{grid-column:1/-1;margin:0;font-size:18px}.device-config .full-width{grid-column:1/-1}.device-config textarea{width:100%;resize:vertical;border:1px solid #cbd9d6;border-radius:8px;padding:10px 12px;color:var(--ink)}.device-actions{padding:20px;display:grid;align-content:start;gap:14px}.device-actions h2{font-size:18px;margin:0}.device-actions p{font-size:13px;line-height:1.65;color:var(--muted);margin:0}.device-actions form{margin:0}.device-actions button{width:100%}.device-history{margin-top:16px;overflow:hidden}.section-title{padding:18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.section-title h2{margin:5px 0 0;font-size:19px}.section-title>span{color:var(--muted);font-size:12px;font-weight:700}.history-table>div{display:grid;grid-template-columns:140px 1fr 1.25fr;gap:16px;padding:13px 18px;border-bottom:1px solid var(--line);align-items:center;font-size:13px}.history-table .history-head{background:#f8faf9;color:var(--muted);font-size:11px;font-weight:800}.history-table .empty-state{margin:18px;border:0}.visitor-pass-card{max-width:580px;margin:8vh auto;padding:32px;text-align:center}.visitor-pass-card h1{margin:8px 0 10px;font-size:32px}.visitor-pass-card p{color:var(--muted);line-height:1.65}.visitor-pass-card dl{text-align:left;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:24px 0;padding:8px 0}.visitor-pass-card dl div{padding:11px 0}.visitor-pass-card dt{font-size:11px;font-weight:800;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.visitor-pass-card dd{margin:5px 0 0;font-weight:700}.visitor-pass-card.unavailable{border-top:4px solid var(--danger)}.visitor-pass-card.active{border-top:4px solid var(--primary)}.visitor-pass-card.scheduled{border-top:4px solid #c78a15}.visitor-qr{width:min(280px,100%);height:auto;image-rendering:pixelated}@media(max-width:820px){.device-summary,.diagnostic-grid,.device-detail-grid{grid-template-columns:1fr}.device-row{grid-template-columns:1fr 1fr}.device-row>div:last-child{grid-column:1/-1}.device-config{grid-template-columns:1fr}.device-config h2,.device-config .full-width{grid-column:auto}.history-table>div{grid-template-columns:1fr;gap:5px}.history-table .history-head{display:none}}@media(max-width:480px){.device-row{grid-template-columns:1fr}.device-add label{min-width:100%}}
