.shell-update { border: 0; border-radius: 12px; padding: 7px 10px; background: #9a6654; color: white; font: 600 11px inherit; }
.outbox-count:not([hidden]) { display: inline-grid; min-width: 18px; min-height: 18px; place-items: center; margin-left: 4px; border-radius: 10px; background: #cf7654; color: white; font-size: 10px; }
.pwa-drawer { position: fixed; inset: 0; z-index: 24; overflow: auto; padding: max(20px, env(safe-area-inset-top)) 20px max(20px, env(safe-area-inset-bottom)); background: #f7f5f0; }
.pwa-drawer > header { display: flex; align-items: start; justify-content: space-between; gap: 16px; }
.outbox-list,.device-list { display: grid; gap: 10px; margin: 18px 0; }
.outbox-item,.device-item { padding: 12px; border: 1px solid rgba(69,64,56,.12); border-radius: 14px; background: rgba(255,255,255,.65); }
.outbox-item small,.device-item small { display: block; margin: 4px 0; color: #77736b; }
.outbox-item button,.device-item button,.notification-card button { padding: 8px 12px; border: 0; border-radius: 12px; background: #e9e6df; color: #514d46; }
.notification-card { margin-top: 24px; padding: 14px; border-radius: 16px; background: rgba(255,255,255,.65); }
.notification-card p { color: #77736b; font-size: 12px; line-height: 1.6; }
.device-claim-output { display: block; margin-top: .75rem; font: 700 1.05rem/1.5 ui-monospace, SFMono-Regular, Consolas, monospace; letter-spacing: .08em; overflow-wrap: anywhere; }
#public-claim { display: grid; gap: .55rem; margin-top: .75rem; }
#public-claim input { min-height: 44px; border: 1px solid rgba(69,64,56,.2); border-radius: 10px; padding: .65rem .75rem; font: inherit; }
@media (display-mode: standalone) { .eyebrow { letter-spacing: .18em; } }
@media (max-width:520px) { button,select { min-height: 44px; } .topbar { padding-top: max(27px, env(safe-area-inset-top)); } }
