.ui-card{border-radius:var(--radius-lg);padding:var(--space-5)}.ui-card-default{background:var(--clr-surface);border:1px solid var(--clr-border);box-shadow:var(--shadow-sm)}.ui-card-quiet{background:var(--clr-surface-2);border:1px solid transparent}.ui-card-interactive{cursor:pointer;transition:box-shadow var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out),transform .12s var(--ease-out)}.ui-card-interactive:hover{box-shadow:var(--shadow-md);border-color:var(--clr-border-accent)}.ui-card-interactive:active{transform:scale(.995)}.ui-badge{gap:var(--space-1);border-radius:var(--radius-full);font-weight:600;line-height:1;white-space:nowrap;border:1px solid transparent}.ui-badge,.ui-badge-icon{display:inline-flex;align-items:center}.ui-badge-sm{height:20px;padding:0 var(--space-2);font-size:var(--text-xs)}.ui-badge-md{height:26px;padding:0 var(--space-3);font-size:var(--text-sm)}.ui-badge-accent{background:var(--clr-accent-muted);color:var(--app-text-accent)}.ui-badge-success{background:var(--clr-success-muted);color:var(--clr-success)}.ui-badge-warning{background:var(--clr-warning-muted);color:var(--clr-warning)}.ui-badge-danger{background:var(--clr-danger-muted);color:var(--clr-danger)}.ui-badge-info{background:var(--clr-info-muted);color:var(--clr-info)}.ui-badge-teal{background:var(--clr-teal-muted);color:var(--clr-teal)}.ui-badge-purple{background:var(--clr-purple-muted);color:var(--clr-purple)}.ui-badge-muted{background:var(--clr-surface-3);color:var(--app-text-muted)}.ui-modal-overlay{position:fixed;inset:0;background:var(--clr-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:1000;animation:ui-modal-fade-in var(--duration-base) var(--ease-out)}@keyframes ui-modal-fade-in{0%{opacity:0}to{opacity:1}}.ui-modal-panel{position:relative;background:var(--clr-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-height:min(94vh,920px);display:flex;flex-direction:column;overflow:hidden;outline:none}.ui-modal-sm{max-width:400px}.ui-modal-md{max-width:560px}.ui-modal-lg{max-width:760px}.ui-modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--clr-border);flex-shrink:0}.ui-modal-title{font-size:var(--text-lg);font-weight:700;color:var(--app-text-primary);margin:0}.ui-modal-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--app-text-faint);cursor:pointer;flex-shrink:0;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.ui-modal-close svg{width:18px;height:18px}.ui-modal-close:hover:not(:disabled){background:var(--clr-surface-2);color:var(--app-text-primary)}.ui-modal-close:focus-visible{outline:2px solid var(--clr-accent-light);outline-offset:2px}.ui-modal-close:disabled{cursor:not-allowed;opacity:.4}.ui-modal-body{padding:var(--space-6);overflow-y:auto;color:var(--app-text-primary)}.ui-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--clr-border);flex-shrink:0}.ui-modal-busy{position:absolute;inset:0;z-index:2;background:var(--clr-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:ui-modal-fade-in var(--duration-base) var(--ease-out)}.ui-modal-busy-card{background:var(--clr-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-6);max-width:280px;width:100%;text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.ui-modal-busy-spinner{width:32px;height:32px;border-radius:50%;border:3px solid var(--clr-accent-muted);border-top-color:var(--clr-accent);animation:ui-modal-spin .7s linear infinite}@keyframes ui-modal-spin{to{transform:rotate(1turn)}}.ui-modal-busy-message{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-sm);color:var(--app-text-primary)}@media (max-width:480px){.ui-modal-body,.ui-modal-footer,.ui-modal-header{padding:var(--space-4)}}.ui-user-header{display:inline-flex;align-items:center;gap:var(--space-3);text-decoration:none;color:inherit;min-width:0}.ui-user-header.notif-row-actor-header{display:flex;width:100%}.ui-user-header-avatar-only{gap:0}.ui-user-header-avatar{flex-shrink:0;border-radius:50%;overflow:hidden;background:var(--clr-accent-muted);display:flex;align-items:center;justify-content:center}.ui-user-header-avatar img{width:100%;height:100%;object-fit:cover;display:block}.ui-user-header-initials{font-weight:700;color:var(--app-text-accent)}.ui-user-header-text{display:flex;flex-direction:column;min-width:0;gap:0}.ui-user-header-name-row{display:flex;align-items:center;gap:var(--space-1);min-width:0;line-height:1.15}.ui-user-header-name{font-weight:600;color:var(--app-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.15}.ui-user-header-badge{display:inline-flex;align-items:center;flex-shrink:0}.ui-user-header-subtitle{color:var(--app-text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.2}.ui-user-header-subtitle:has(>span){white-space:normal;text-overflow:unset;display:flex;flex-direction:column;gap:0}.ui-user-header-subtitle>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--app-text-faint);line-height:1.2}.ui-user-header-sm .ui-user-header-avatar{width:28px;height:28px;font-size:var(--text-xs)}.ui-user-header-sm .ui-user-header-name{font-size:var(--text-sm)}.ui-user-header-sm .ui-user-header-subtitle,.ui-user-header-sm .ui-user-header-subtitle>span{font-size:var(--text-xs)}.ui-user-header-md .ui-user-header-avatar{width:40px;height:40px;font-size:var(--text-sm)}.ui-user-header-md .ui-user-header-name{font-size:var(--text-base)}.ui-user-header-md .ui-user-header-subtitle,.ui-user-header-md .ui-user-header-subtitle>span{font-size:var(--text-sm)}.ui-user-header-lg .ui-user-header-avatar{width:56px;height:56px;font-size:var(--text-lg)}.ui-user-header-lg .ui-user-header-name{font-size:var(--text-lg)}.ui-user-header-lg .ui-user-header-subtitle,.ui-user-header-lg .ui-user-header-subtitle>span{font-size:var(--text-sm)}.ui-empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-2);padding:var(--space-8) var(--space-5);color:var(--app-text-faint)}.ui-empty-state-icon{color:var(--app-text-disabled);margin-bottom:var(--space-2)}.ui-empty-state-title{font-size:var(--text-base);font-weight:600;color:var(--app-text-secondary);margin:0}.ui-empty-state-description{font-size:var(--text-sm);color:var(--app-text-faint);max-width:360px;margin:0}.ui-empty-state-action{margin-top:var(--space-3)}