.presence-badge{display:inline-flex;align-items:center;gap:7px;min-width:152px;white-space:nowrap;padding:7px 10px;border:1px solid var(--line);border-radius:999px;font-size:11px;color:var(--muted);line-height:1.4;box-sizing:border-box}.presence-badge strong{min-width:3ch;text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}.presence-dot{width:6px;height:6px;flex:none;background:var(--muted);border-radius:50%}.presence-online .presence-dot{background:#45b989}.focus-session [data-presence]{visibility:hidden}@media(max-width:650px){.presence-badge{font-size:10px;min-width:139px;padding:6px 8px}.header-right .local-badge{display:none}.header-right{gap:8px}}@media print{[data-presence]{display:none}}

.notification-button{width:36px;height:36px;min-width:36px;display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--ink);cursor:pointer;padding:0}.notification-button:hover{background:var(--soft)}.notification-dialog{box-sizing:border-box;width:calc(100% - 32px);max-width:480px;max-height:calc(100dvh - 32px);overflow:auto;padding:25px;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--ink)}.notification-dialog::backdrop{background:#0009}.notification-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.notification-head h2{margin:0 0 20px;font-size:22px}.notification-head button{align-self:flex-start;background:none;border:0;color:var(--ink);font-size:25px;cursor:pointer}.notification-dialog p{font-size:14px;line-height:1.7}.notification-status{min-height:48px;color:var(--muted)}.notification-actions button{border:0;border-radius:8px;background:#b31e2d;color:white;padding:12px 18px;font:inherit;font-size:14px;cursor:pointer}.notification-actions button:disabled{opacity:.55;cursor:default}.notification-dialog .notification-note{font-size:11px;color:var(--muted);margin-top:20px}.notification-note a{color:inherit}@media(max-width:650px){.topbar{height:auto;min-height:58px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px;gap:10px}.header-right{margin-left:auto}.header-right #theme-toggle span{display:none}.header-right #theme-toggle{width:36px;min-width:36px;padding:8px;justify-content:center}.info-header>div{flex-wrap:wrap;justify-content:flex-end}.info-header .notification-button{padding:0}}
