/* Kebab trigger: 36px visual zone, 44px hit area via the inset pseudo. */
.kebab{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;min-width:36px;
  border:none;background:none;color:var(--muted);border-radius:var(--r-1);cursor:pointer;position:relative;flex:none;
  transition:background var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}
.kebab::after{content:"";position:absolute;inset:-4px}
.kebab:hover{background:var(--card2);color:var(--txt)}
.kebab:focus-visible{outline:2px solid var(--ring);outline-offset:2px}

/* Popover menu */
.menu{position:fixed;z-index:var(--z-menu);min-width:180px;max-width:240px;background:var(--card);
  border:1px solid var(--line);border-radius:var(--r-2);box-shadow:var(--shadow);padding:6px;
  display:flex;flex-direction:column;animation:menu-in var(--dur-2) var(--ease)}
@keyframes menu-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.menu-item{display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;border:none;background:none;
  color:var(--txt);font:inherit;font-size:var(--fs-sm);text-align:left;border-radius:var(--r-1);cursor:pointer;width:100%}
.menu-item:hover:not(:disabled){background:var(--card2)}
.menu-item:focus-visible{background:var(--card2);outline:none}
.menu-item:disabled{color:var(--faint);cursor:default}
.menu-item.destructive{color:var(--red)}
.menu-item.destructive:hover:not(:disabled){background:var(--red-bg)}
.menu-sep{height:1px;background:var(--line);margin:6px 4px}
@media (prefers-reduced-motion:reduce){.menu{animation:none}}
