.topbar-controls { display:flex; align-items:center; gap:20px; min-width:0; }
.account-menu { position:relative; min-width:0; border:0; background:transparent; padding:0; margin:0; }
.account-menu summary { list-style:none; cursor:pointer; padding:7px; border-radius:8px; display:flex; flex-direction:column; max-width:180px; overflow-wrap:anywhere; }
.account-menu summary::-webkit-details-marker { display:none; }
.account-menu summary:hover { background:var(--accent-soft); }
.account-menu-body { position:absolute; right:0; top:100%; z-index:30; display:grid; gap:8px; width:190px; padding:12px; background:var(--card); border:1px solid var(--line); border-radius:var(--radius); box-shadow:0 8px 25px #0002; }
.access-dialog { width:min(480px,calc(100% - 32px)); max-height:calc(100dvh - 40px); overflow:auto; border:1px solid var(--line); border-radius:var(--radius); color:var(--text); background:var(--card); padding:26px; }
.access-dialog::backdrop { background:#10252a88; backdrop-filter:blur(3px); }
.access-dialog .check { display:flex; gap:8px; align-items:center; color:var(--text); }
.form-error { color:var(--danger); font-size:13px; margin-top:12px; overflow-wrap:anywhere; }
.form-error:empty { display:none; }
.recipient-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:18px; }
.recipient-card { min-width:0; padding:18px; border:1px solid var(--line); border-radius:var(--radius-sm); }
.recipient-card h3 { margin:0; }
.recipient-card .actions { margin-top:12px; }
.recipient-link { margin-top:14px; }
.recipient-link input { font-size:12px; }
input[readonly] { background:var(--bg); color:var(--muted); }
.admin-table { width:100%; border-collapse:collapse; }
.admin-table .actions { margin:0; }
.admin-table .btn { padding:7px 10px; }
.account-state { display:flex; flex-wrap:wrap; gap:5px; margin-top:6px; }
@media(max-width:1000px) { .topbar-controls { gap:8px; } .global-profile select { max-width:190px; } }
@media(max-width:720px) { .topbar-controls { width:100%; justify-content:space-between; gap:8px; } .global-profile { gap:5px; } .global-profile .avatar,.global-profile .hint { display:none; } .global-profile select { max-width:180px; } .account-menu summary { max-width:145px; font-size:12px; } .recipient-grid { grid-template-columns:1fr; } .access-dialog { padding:20px; } .sidebar .tab[data-tab=admin] { display:none; } .sidebar.expanded .tab[data-tab=admin] { display:flex; } }
